CN111290290A - Device for simulating a controller - Google Patents
Device for simulating a controller Download PDFInfo
- Publication number
- CN111290290A CN111290290A CN201911242957.6A CN201911242957A CN111290290A CN 111290290 A CN111290290 A CN 111290290A CN 201911242957 A CN201911242957 A CN 201911242957A CN 111290290 A CN111290290 A CN 111290290A
- Authority
- CN
- China
- Prior art keywords
- hardware
- following features
- controller
- driver
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000006870 function Effects 0.000 claims description 7
- 238000004088 simulation Methods 0.000 claims description 7
- 238000000034 method Methods 0.000 claims description 2
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
Abstract
The invention relates to a device (10) for an analog controller, characterized by the following features: -basic software (11) of the controller converted into an instruction set of the device (10), -a memory structure (12) of a hardware module of the controller applied in a random access memory of the device (10), and-a driver (13) functionally emulating the hardware module.
Description
Technical Field
The invention relates to a device for simulating a controller, in particular a microcomputer.
Background
Electronic control units (ECUs, ECMs) for vehicles according to the prior art are only rarely developed and manufactured by the vehicle manufacturer itself, but are mostly entrusted with it by the vehicle supplier.
In order to ensure the interoperability of controllers of the type mentioned in different variants of different vehicle models, the vehicle manufacturers sometimes specify a specific software configuration to which the development should be directed. The goal of this unified software configuration is to network all the controllers in the motor vehicle in a friction-free manner and to integrate them into a total system.
This basic software implementation is known in the industry as the "standard core" of the relevant manufacturer.
DE102008040721a1 discloses an emulation system for a no longer providable microcontroller, which has a providable microcontroller and emulation software which can be run on the microcontroller and has an interpreter, wherein the emulation software forms a software layer between the hardware of the providable microcontroller and the operating software of the no longer providable microcontroller and is adapted in such a way that the hardware of the providable microcontroller appears together with the additional emulation software as the hardware of the no longer providable microcontroller and the interpreter is adapted for mapping the address information, the code information and the data information of the operating software of the no longer providable microcontroller onto functionally identical address information, code information and data information of the no longer providable microcontroller.
Disclosure of Invention
The invention provides a device for an analog controller, in particular a microcomputer, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.
The solution according to the invention takes into account the frequently expressed desire, namely: the (unaltered) code, typically programmed with ANSI C, to convert the controller for x86-PC instead of a microcontroller and executed in a simulated environment for insurance and further development purposes. The characteristics during initialization, operation and shutdown should be identical to those in the actual control unit. Furthermore, simulated environments of different manufacturers should be supported. Furthermore, it should be possible to easily change the code and test for changes. Finally, a possible solution for inserting new functions and testing the changes is desirable. In this process, it is desirable to avoid the adjustment of the controller code as much as possible in order to enable it to be executed on the PC.
Accordingly, the solution described here has the advantage that the original Software (SW) can be retained in addition to the possible assembly code. Furthermore, if the simulation environment is switched to a new computer with an updated version of a specific hardware module, it is possible to simulate how SW behaves, for example. All bits of the hardware module that are important for the simulation are typically described here in the relevant controller specification; bits not described are inherently unused by MCAL.
It is therefore within the scope of a preferred embodiment of the invention to imitate only the hardware characteristics of the relevant modules. In particular, the interpretation of the assembler instruction is not necessary in principle, since the Central Processing Unit (CPU) of the controller is not emulated, which executes the assembler instruction.
Advantageous developments and improvements of the basic concept described in the independent claims can be achieved by the measures cited in the dependent claims. It can therefore be provided that the hardware modules of the controller to be simulated are emulated by drivers which each represent a virtual microcontroller abstraction layer (MCAL). In this way, correlation with the SW version of the original MCAL is avoided. Changes to the virtual MCAL are typically only required when a controller is replaced.
According to another aspect, it can be provided that the respective driver is set up to simulate a functional error of the controller. In this way, errors which do not occur in practice or which cannot be triggered in a targeted manner can be triggered by the virtual MCAL. The simulation can also be used for MCAL-driver-development itself.
According to another aspect, it can be provided that the driver is set up to recognize an access to an unused address of a memory structure of the hardware module, which is applied in a random-access memory (RAM) of the device. A corresponding embodiment of the invention therefore makes it possible to recognize this situation if SW accesses a new (as yet unused) bit, so that the missing function can be implemented.
Drawings
Embodiments of the invention are illustrated in the drawings and are explained in detail in the following description. Wherein:
fig. 1 schematically shows a device according to a first embodiment of the invention.
Fig. 2 schematically shows a device according to a second embodiment of the invention.
Detailed Description
Fig. 1 shows the basic software components of a device (10) according to the invention for simulating a controller, which device is based here on a PC with an x86 microprocessor. The access of the underlying software (11) of the controller to its hardware, which is shown in the present exemplary embodiment by means of a timer module (GTM) of the type described, is carried out in the real controller by means of a memory structure (12) which is mapped to the addresses of the respective modules. The corresponding write access (15) can be performed in the programming language C, for example, by means of the instruction "gtm.register 2 ═ 0 xACAFE;", while the read access (16) can be performed by means of the instruction "Var 1 ═ gtm.register3&0 xFF;".
As shown, unlike the conventional method, the corresponding functions of the base software (11) are not replaced, in order to be able to simulate the latter by means of the device (10). More precisely, in the simulation, a coherent memory structure (12) is created, but now in the RAM of the PC. This memory structure (12) is filled by a driver (13) functionally emulating the timer module in such a way that, for example, the basic software (11) converted by the PC is displayed, the analog-to-digital converter (ADC) of the timer module having finished the delegated conversion.
Fig. 2 shows the function of the driver (13), which can be regarded as a "virtual" microcontroller abstraction layer (20) in terms of the MCAL defined by AUTOSAR of the real controller. The task of this involves-similar to the conventional solution-converting the internal values into the resolution and format of the predefined interface variables and supplying them to the simulation environment or path model (21). According to the invention, these tasks are augmented with a simulation of the above-described functionality of the original hardware module.
Claims (10)
1. A device (10) for simulating a controller,
the method is characterized in that:
-basic software (11) of the controller converted into an instruction set of a device (10),
-a memory structure (12) of a hardware module of the controller, applied in a random access memory of a device (10), and
-functionally emulating a driver (13) of the hardware module.
2. The device (10) according to claim 1,
it is characterized by the following features:
-the memory structure (12) comprises hardware registers (14) of the hardware modules and
-said basic software (11) implementing write access (15) and read access (16) to said hardware registers (14).
3. The device (10) according to claim 2,
it is characterized by the following features:
-said basic software (11) comprises an application programming interface (17), driver software (18) and hardware access functions (19), and
-said hardware access function (19) comprises a write access (15) and a read access (16).
4. The device (10) according to claim 3,
it is characterized by the following features:
-the driver (13) is a microcontroller abstraction layer (20) and
-the microcontroller abstraction layer (20) is set up to provide, as interface variables (22), for a simulation environment or path model (21), values of the hardware registers (14) that are important for the hardware access functions (19).
5. The device (10) according to any one of claims 1 to 4,
it is characterized by the following features:
-the device (10) comprises a microprocessor, and
the instruction set corresponds to the x86 architecture.
6. The device (10) according to any one of claims 1 to 5,
it is characterized by the following features:
-the hardware module comprises an analog-to-digital converter.
7. The device (10) according to any one of claims 1 to 6,
it is characterized by the following features:
-the hardware module is a timer module.
8. The device (10) according to any one of claims 1 to 7,
it is characterized by the following features:
-the driver (13) is set up to simulate a functional error of the controller.
9. The device (10) according to any one of claims 1 to 8,
it is characterized by the following features:
-the driver (13) is set up for identifying accesses (15, 16) to unused addresses of the memory structure (12).
10. The device (10) according to any one of claims 1 to 8,
it is characterized by the following features:
-the driver (13) is set up to emulate a flash drive of the controller.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018221251.1A DE102018221251A1 (en) | 2018-12-07 | 2018-12-07 | Device for simulating a control device |
DE102018221251.1 | 2018-12-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111290290A true CN111290290A (en) | 2020-06-16 |
Family
ID=70776878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911242957.6A Pending CN111290290A (en) | 2018-12-07 | 2019-12-06 | Device for simulating a controller |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111290290A (en) |
DE (1) | DE102018221251A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076345B (en) * | 2023-10-12 | 2024-02-27 | 北京紫光芯能科技有限公司 | Analog-to-digital conversion processing method, system and related equipment based on MCAL |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060259292A1 (en) * | 2005-05-12 | 2006-11-16 | Microsoft Corporation | Virtual operating system device communication relying on memory access violations |
US20100083276A1 (en) * | 2008-09-30 | 2010-04-01 | Microsoft Corporation | On-the-fly replacement of physical hardware with emulation |
US20100280817A1 (en) * | 2009-04-30 | 2010-11-04 | Spansion Llc | Direct pointer access and xip redirector for emulation of memory-mapped devices |
CN102253884A (en) * | 2011-05-12 | 2011-11-23 | 中兴通讯股份有限公司 | Method and device for simulating operating environment of single-plate software |
US20140088946A1 (en) * | 2012-09-25 | 2014-03-27 | Robert Bosch Gmbh | Method for simulating a control device |
CN104460646A (en) * | 2013-09-18 | 2015-03-25 | 帝斯贝思数字信号处理和控制工程有限公司 | Testing Device For Real-Time Testing Of A Virtual Control Unit |
CN108241304A (en) * | 2018-01-31 | 2018-07-03 | 广东赛诺梵信息技术有限公司 | A kind of network-type industrial control unit (ICU) of software definition |
CN108628595A (en) * | 2017-03-16 | 2018-10-09 | 西门子股份公司 | The exploitation of control application program under augmented reality environment |
CN108694070A (en) * | 2017-03-31 | 2018-10-23 | 波音公司 | The emulation of hardware component |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102008040721A1 (en) | 2008-07-25 | 2010-01-28 | Robert Bosch Gmbh | Emulation system and method for a no longer available microcontroller |
-
2018
- 2018-12-07 DE DE102018221251.1A patent/DE102018221251A1/en active Pending
-
2019
- 2019-12-06 CN CN201911242957.6A patent/CN111290290A/en active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060259292A1 (en) * | 2005-05-12 | 2006-11-16 | Microsoft Corporation | Virtual operating system device communication relying on memory access violations |
US20100083276A1 (en) * | 2008-09-30 | 2010-04-01 | Microsoft Corporation | On-the-fly replacement of physical hardware with emulation |
CN102165431A (en) * | 2008-09-30 | 2011-08-24 | 微软公司 | On-the-fly replacement of physical hardware with emulation |
US20100280817A1 (en) * | 2009-04-30 | 2010-11-04 | Spansion Llc | Direct pointer access and xip redirector for emulation of memory-mapped devices |
CN102253884A (en) * | 2011-05-12 | 2011-11-23 | 中兴通讯股份有限公司 | Method and device for simulating operating environment of single-plate software |
US20140088946A1 (en) * | 2012-09-25 | 2014-03-27 | Robert Bosch Gmbh | Method for simulating a control device |
CN104460646A (en) * | 2013-09-18 | 2015-03-25 | 帝斯贝思数字信号处理和控制工程有限公司 | Testing Device For Real-Time Testing Of A Virtual Control Unit |
CN108628595A (en) * | 2017-03-16 | 2018-10-09 | 西门子股份公司 | The exploitation of control application program under augmented reality environment |
CN108694070A (en) * | 2017-03-31 | 2018-10-23 | 波音公司 | The emulation of hardware component |
CN108241304A (en) * | 2018-01-31 | 2018-07-03 | 广东赛诺梵信息技术有限公司 | A kind of network-type industrial control unit (ICU) of software definition |
Non-Patent Citations (1)
Title |
---|
严迎建, 刘明业: "基于ISS和硬件模拟器的协同模拟关键技术研究", 计算机辅助设计与图形学学报, no. 04, 20 April 2004 (2004-04-20) * |
Also Published As
Publication number | Publication date |
---|---|
DE102018221251A1 (en) | 2020-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10423571B2 (en) | Method for configuring a real or virtual electronic control unit | |
US10481931B2 (en) | Modifying and simulating the operating software of a technical system | |
US20080319728A1 (en) | System for testing at least one electronic control unit and method | |
US20180137022A1 (en) | Arithmetic operation device and virtual development environment apparatus | |
US7647583B2 (en) | Method and apparatus for emulating a hardware/software system using a computer | |
US11232045B2 (en) | Computer-implemented method for integrating at least one signal value into a virtual control unit | |
US20130103379A1 (en) | Apparatus and method for verifying interoperability between application software and autosar service | |
US10909285B2 (en) | Method for creating a model compatible with a simulation device | |
US11237832B2 (en) | Module with a serialization unit and improved compatibility with deserialization units of different series | |
JP2021518015A (en) | Application data delivery method, control device calibration method, control device and evaluation device for at least one application that can be executed in the vehicle control device. | |
US7072820B1 (en) | Accessing state information in a hardware/software co-simulation | |
CN115407745A (en) | Parallel simulation test method based on HIL test system and related equipment | |
CN116737117A (en) | Model development method based on Autosar architecture | |
CN113868174B (en) | Verification platform building method and device and storage medium | |
JP4520466B2 (en) | Method and apparatus for adapting a function for controlling a drive sequence | |
CN111290290A (en) | Device for simulating a controller | |
US20070300054A1 (en) | Universal BSP tool for porting on embedded systems and an application thereof | |
Junghanns et al. | Building virtual ECUs quickly and economically | |
US9417853B1 (en) | Method for generating a code for an electronic control unit | |
US20140088946A1 (en) | Method for simulating a control device | |
US11620144B2 (en) | Qualifying a device driver for a device | |
Warschofsky | Autosar software architecture | |
KR102158687B1 (en) | Method and apparatus for designing VFB of AUTOSAR using a FBF (Function Block Feature) | |
US20240103855A1 (en) | Method and system for testing at least one electronic control device as a virtual control device on a simulator, and corresponding simulator | |
Otterbach et al. | System verification throughout the development cycle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |