Method and apparatus for simulating a controller
By creating a timing model through abstract modeling, the problem of information forwarding accuracy in highly automated driving systems is solved, improving the accuracy of system design and implementation, and supporting early identification of bottlenecks and verification of functional requirements.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ROBERT BOSCH GMBH
- Filing Date
- 2020-09-16
- Publication Date
- 2026-05-19
AI Technical Summary
Existing technologies struggle to effectively simulate the timing of information forwarding, especially in highly automated driving systems, making time control and coordination difficult and affecting the accuracy of system design and implementation.
By creating a time series model through abstract modeling, and using functions to describe the input-output relationship and activation conditions, the system can achieve automated simulation of information forwarding, support the single-source principle, and improve the accuracy and efficiency of the simulation.
It achieves high-quality timing simulation of information forwarding, improves the accuracy of system design and implementation, identifies potential bottlenecks early, and supports the verification of functional and non-functional requirements.
Smart Images

Figure CN112528350B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a method for simulating a controller. The invention also relates to a corresponding device, a corresponding computer program, and a corresponding storage medium. Background Technology
[0002] The term highly automated driving (HAD) generally refers to a developmental stage between assisted driving (where the driver is assisted in driving tasks by numerous (often separate) driver assistance systems) and autonomous driving (where the vehicle operates completely independently and without driver intervention). In highly automated driving, the vehicle possesses a degree of its own intelligence, which plans ahead and is capable of undertaking driving tasks, at least most of the time. The driver and electronic control units (ECUs) jointly drive the vehicle, with the human driver deciding at any given time the extent to which they intervene in the vehicle's driving behavior.
[0003] WO2018146000A1 discloses a controller for a motor vehicle, which is configured to run multiple applications and middleware and includes shared memory that can be used by these applications and middleware. The middleware is configured to perform inter-process communication between these applications via this memory.
[0004] DE102018207172A1 describes a method for simulating a cyber-physical system (CPS) under real-world operating conditions, wherein measurement data and internal states of the system's software components under operating conditions are stored and the simulator is parameterized using this measurement data and states. Summary of the Invention
[0005] The present invention provides a method for simulating a controller, a corresponding device, a corresponding computer program, and a corresponding storage medium, as described in the independent claims.
[0006] In this context, the solution according to the present invention is based on the understanding that a large number of driver assistance systems for highly automated driving are currently in the development stage. It can be anticipated that the complexity of the corresponding software exceeds that of any conventional vehicle technology (automobile) application by several orders of magnitude.
[0007] The proposed solution is also based on the insight that systems for highly automated driving are technically expensive. This also applies to future robotic systems, which require high computing power and large memory, and have significantly increased safety requirements. Considering these functional safety requirements further increases system complexity.
[0008] The method described subsequently takes into account the fact that modern automotive systems are often designed as applications or components that communicate directly. Data is provided to other applications as soon as it becomes available. Here, for technical reasons, the precise timing relationships between applications often cannot be accurately predetermined, for example, because the number of independent computing cores lags far behind the number of executable applications running on them. Therefore, the exact time of transmission of specific data is sometimes difficult to determine. The timeliness of data received by a given application is correspondingly unpredictable and largely depends on runtime conditions.
[0009] Therefore, it is desirable to conduct model-based simulations of time control and coordination (timing) early in the R&D process, so as to identify time bottlenecks during the design phase and check whether non-functional requirements can be met. This approach also allows for regular coordination between design and implementation during R&D. Commercially available tools for these tasks include Vector Informatik LLC's TA Tool Suite or INCHRON LLC's chronSIM.
[0010] Simulating the forwarding of information is a particularly significant problem in controllers that comprise numerous software components. Timing simulations are typically not based on equivalent functional models. Consequently, according to existing techniques, they usually require manual implementation or significant simplification of assumptions.
[0011] It is precisely because of the option to model activation conditions for highly automated driving functions that this approach has limitations and high costs.
[0012] In this context, the solution according to the present invention offers the advantage of enabling the automatic creation of timing models through abstract modeling of information forwarding and significantly improving the quality of timing simulations. It also supports the Single-Source-Prinzip principle.
[0013] Advantageous extensions and improvements to the basic ideas described in the independent claims are possible through measures mentioned in the dependent claims. Attached Figure Description
[0014] Embodiments of the present invention are shown in the accompanying drawings and further described below. Wherein:
[0015] Figure 1 A flowchart of the method according to the first embodiment is shown.
[0016] Figure 2 A brief diagram of the components of the controller to be simulated is shown.
[0017] Figure 3 A workstation computer according to the second embodiment is illustrated schematically. Detailed Implementation
[0018] Figure 1 The diagram illustrates the basic process of the method (10) according to the present invention.
[0019] Now, the application of this method should be based on Figure 2 The software component (20) of the controller described herein is used for explanation. The relationship between the inputs (21) and outputs (22) of the software component (20) is modeled using a domain-specific description language (process 11-). Figure 1 To this end, the function “Input-output-relation()” is used, which allows information such as sequence numbers and timestamps to be forwarded from the input (21) to the output (22). In the current example, for example, “Input-output-relation(disparity, Stereo image (seq())” describes how the software component (20) obtains the sequence number at the output “disparity” from the input “Stereo image”.
[0020] Correspondingly, the expression “Input-output-relation(disparity, Stereo image(timestamp)” details how the software component (20) obtains the timestamp at the output “disparity” from the input “Stereo image”.
[0021] Preferably, “Input-output-relation(disparity, activation_timestamp)” models the following situation: software component (20) derives the timestamp at the output “disparity” from the time point of its own activation.
[0022] These relationships can then be compared and used in activation conditions, simulations, and preferably in implementation schemes.
[0023] Additionally, preferably, the function "output-expectation()" is used, which specifies how many samples to generate at the output of the software component (20) based on the activation of the software component (20) and the input (21) of the software component (20). This allows for the generation of the desired number of samples at the output of the software component (20) in the subsequent timing simulation (process 12-). Figure 1 In ), the statistical input distribution can be mapped to the output distribution of the software component (20).
[0024] Furthermore, this "productivity metric" is important in order to simulate the statistical distribution of activation of the relevant components modeled by activation conditions. The latter is also necessary because the sampled values generated at the output (22) under the activation conditions of these relevant components exert an influence as stimuli.
[0025] Finally, “output-expectation(disparity, Stereo image, 1)” models the following: software component (20), when activated, produces a value at output “disparity” for each sample value at input “Stereo image”. Correspondingly, “output-expectation(disparity, 1)” models the following: software component (20) produces a sample value at output “disparity” for each activation.
[0026] This method (10) can be implemented, for example, in software or hardware or a hybrid of software and hardware, in a workstation (30), such as... Figure 3 As illustrated in the diagram.
Claims
1. A method for simulating a controller (10). Includes the following steps: - For at least one software component (20) of the controller, the relationship between the input (21) and the output (22) of the software component (20) is modeled (11) by means of a formal language, wherein a function is used, the function specifying that the function output is provided as a timestamp or sequence number, at which the output (22) is to occur in response to the input (21), wherein the function is represented in the formal language by a function name, the function name containing a bracket and a plurality of function parameters within the bracket, wherein the plurality of function parameters within the bracket include the following parameters: (a) the input (21), (b) the output (22), and (c) the timestamp or sequence number; and - By executing the function, the operating behavior of the controller is simulated according to the relationship (12).
2. The method (10) according to claim 1. Its features The following characteristics: - The relationship includes the forwarding of information from the input (21) to the output (22).
3. The method (10) according to claim 1. Its features The following characteristics: - The language is a domain-specific descriptive language.
4. The method (10) according to any one of claims 1 to 3. Its features The following characteristics: - For the software component (20), an expectation regarding the productivity of the output (22) is also modeled (11); and - The simulation (12) is also implemented based on the expectation.
5. The method (10) according to claim 4. Its features The following characteristics: - The expectation of the productivity is explained based on the activity at the input (21).
6. A computer program product comprising a computer program configured to perform the method (10) according to any one of claims 1 to 5.
7. A machine-readable storage medium having a computer program stored thereon, the computer program being configured to perform the method (10) according to any one of claims 1 to 5.
8. An apparatus (30) configured to implement the method (10) according to any one of claims 1 to 5.