Automated Code Generation for ADAS ECU Embedded Software
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for generating behavior specifications for autonomous road vehicles, such as those used in ADAS and AD systems, face challenges with high implementation errors and slow implementation speeds, particularly in translating driving specifications into executable code for embedded computers, and lack concrete methods for generating hard-real time source-code.
Innovation Solution
A computer-implemented method that automatically generates embedded source code for AD/ADAS road vehicle ECUs by providing a driving specification, checking syntax and consistency, and generating source code using techniques like constraint-satisfaction and automated planning, reducing the representational gap between safety requirements and deployed software.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If automated code generation is implemented for AD/ADAS road vehicles, then implementation errors are reduced and implementation speed is increased, but the complexity of generating hard-real time source code from behavior specifications increases
Solution Approach 1:
The patent introduces an intermediary automated code generation system that bridges the gap between high-level behavior specifications and low-level embedded source code. This intermediary layer includes formal language translators, constraint satisfaction problem solvers, and template-based code generators that automatically transform specifications into C/C++ code for ECUs, eliminating manual coding errors while managing complexity through structured intermediate representations
Solution Approach 2:
The system transforms the problem parameters by changing from manual code writing to automated generation using formal languages and mathematical models. By parameterizing the code generation process through configurable templates, constraints, and formal specifications, the system achieves high reliability while keeping the complexity manageable through systematic parameter management rather than ad-hoc coding
2Productivity
If manual code translation from driving specifications is performed, then implementation flexibility is maintained, but implementation speed is slow and implementation errors increase
Solution Approach 1:
The automated code generation system performs self-service by automatically translating driving specifications into executable embedded code without requiring manual intervention. The system includes built-in verification mechanisms, constraint checking, and consistency validation that autonomously detect and correct errors, thereby increasing both implementation speed and reliability simultaneously through self-validated automated transformation
Solution Approach 2:
The patent replaces the mechanical process of manual code translation with an automated computational system. Instead of manual typing and debugging, the system uses formal language parsers, automated theorem provers, and code synthesis algorithms to generate verified code, substituting human cognitive processes with machine-based automated reasoning and generation mechanisms that are both faster and more reliable
3Ease of operation
If behavior is represented as a look-up table mapping states to actions, then decision making is simplified, but the representational gap between safety requirements and deployed software increases
Solution Approach 1:
The patent adds another dimension to the traditional look-up table approach by incorporating formal logical representations and mathematical models alongside the state-action mappings. This multi-dimensional representation includes both the operational look-up tables for fast decision-making and formal specifications for safety verification, bridging the representational gap by maintaining both simplified operational views and rigorous safety models in parallel
Data Source
AI summary
A computer-implemented method and a system for the automatic generation of an embedded source code for the electronic control unit of an Autonomous Driving/Advanced Driving Support System (AD/ADAS) road vehicle where the AD/ADAS road vehicle has system requirements and where situation/states leading to the inconsistences in the system requirements are displayed.
