DE102018221251A1 - Device for simulating a control device - Google Patents
Device for simulating a control device Download PDFInfo
- Publication number
- DE102018221251A1 DE102018221251A1 DE102018221251.1A DE102018221251A DE102018221251A1 DE 102018221251 A1 DE102018221251 A1 DE 102018221251A1 DE 102018221251 A DE102018221251 A DE 102018221251A DE 102018221251 A1 DE102018221251 A1 DE 102018221251A1
- Authority
- DE
- Germany
- Prior art keywords
- hardware
- driver
- control device
- following features
- hardware module
- 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
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
Vorrichtung (10) zum Simulieren eines Steuergerätes, gekennzeichnet durch folgende Merkmale:- eine in einen Befehlssatz der Vorrichtung (10) übersetzte Basissoftware (11) des Steuergerätes,- eine in einem Direktzugriffsspeicher der Vorrichtung (10) angelegte Speicherstruktur (12) eines Hardwaremodules des Steuergerätes und- einen dem Hardwaremodul funktional nachgebildeten Treiber (13).Device (10) for simulating a control device, characterized by the following features: - basic software (11) of the control device translated into a command set of the device (10), - a memory structure (12) of a hardware module of the device, which is created in a direct access memory of the device (10) Control unit and a driver (13) functionally simulated to the hardware module.
Description
Die vorliegende Erfindung betrifft eine Vorrichtung, insbesondere einen Mikrocomputer, zum Simulieren eines Steuergerätes.The present invention relates to a device, in particular a microcomputer, for simulating a control device.
Stand der TechnikState of the art
Fahrzeugelektronische Steuergeräte (electronic control unit, electronic control module, ECU, ECM) nach dem Stand der Technik werden nur selten von Automobilherstellern selbst, sondern zumeist in deren Auftrag von Automobilzulieferern entwickelt und hergestellt.State-of-the-art vehicle electronic control units (electronic control unit, electronic control module, ECU, ECM) are only rarely developed and manufactured by automobile manufacturers themselves, but mostly on their behalf by automotive suppliers.
Um die Interoperabilität gattungsmäßiger Steuergeräte in den verschiedenen Varianten verschiedener Fahrzeugmodelle sicherzustellen, schreibt der Automobilhersteller mitunter eine bestimmte Softwareausstattung vor, auf welche die Entwicklung auszurichten ist. Ziel dieser einheitlichen Softwareausstattung ist eine reibungslose Vernetzung und Integration aller Steuergeräte im Kraftfahrzeug zu einem Gesamtsystem.In order to ensure the interoperability of generic control devices in the different variants of different vehicle models, the automobile manufacturer sometimes prescribes a certain software configuration on which the development should be geared. The goal of this uniform software configuration is the smooth networking and integration of all control units in the motor vehicle to form an overall system.
Diese Grund-Softwareausstattung wird branchenintern als „Standard-Core“ des betreffenden Herstellers bezeichnet.This basic software configuration is referred to within the industry as the "standard core" of the manufacturer concerned.
Offenbarung der ErfindungDisclosure of the invention
Die Erfindung stellt eine Vorrichtung, insbesondere einen Mikrocomputer, zum Simulieren eines Steuergerätes, eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.The invention provides a device, in particular a microcomputer, for simulating a control device, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.
Der erfindungsgemäße Ansatz trägt dem häufig geäußerten Wunsch Rechnung, den typischerweise in ANSI C programmierten (unveränderten) Code eines Steuergerätes statt für einen Microcontroller für einen x86-PC zu übersetzen und zu Absicherungs- und Weiterentwicklungszwecken in einer Simulationsumgebung auszuführen. Das Verhalten während Initialisierung, Betrieb und Abschalten soll hierbei identisch zum Verhalten im realen Steuergerät sein. Ferner sind Simulationsumgebungen unterschiedlicher Hersteller zu unterstützen. Weiterhin sollte es möglich sein, einfach Code zu ändern und die Änderung zu testen. Wünschenswert ist schließlich die Möglichkeit, neue Funktionen einzufügen und die Änderungen zu testen. In diesem Zuge sind Anpassungen des Steuergeräte-Codes, damit dieser auf dem PC ausgeführt werden kann, tunlichst zu vermeiden.The approach according to the invention takes into account the frequently expressed desire to translate the (unchanged) code of a control unit typically programmed in ANSI C instead of for a microcontroller for an x86 PC and to execute it in a simulation environment for security and further development purposes. The behavior during initialization, operation and shutdown should be identical to the behavior in the real control unit. Simulation environments from different manufacturers must also be supported. It should also be possible to simply change code and test the change. Finally, it is desirable to be able to add new functions and test the changes. In this context, adjustments to the control unit code so that it can be executed on the PC should be avoided as far as possible.
Ein Vorzug der hier vorgestellten Lösung liegt dementsprechend darin, dass die ursprüngliche Software (SW), abgesehen von etwaigem Assemblercode, beibehalten werden kann. Es kann zudem beispielsweise simuliert werden, wie sich die SW verhält, falls die Simulationsumgebung auf einen neuen Rechner umgestellt wird, der eine aktualisierte Version eines bestimmten Hardwaremoduls aufweist. Alle für die Simulation relevanten Bits des Hardwaremoduls sind hierbei typischerweise in der betreffenden Controller-Spezifikation beschrieben; nicht beschriebene Bits dürfen durch den MCAL ohnehin nicht verwendet werden.Accordingly, one advantage of the solution presented here is that the original software (SW), apart from any assembly code, can be retained. It can also be simulated, for example, how the software behaves if the simulation environment is converted to a new computer that has an updated version of a specific hardware module. All bits of the hardware module relevant for the simulation are typically described in the relevant controller specification; Bits that are not described may not be used by the MCAL anyway.
Im Rahmen einer bevorzugten Ausführungsform der Erfindung ist somit nur das Hardwareverhalten der relevanten Module nachzubilden. Insbesondere eine Interpretation von Assembler-Instruktionen ist grundsätzlich nicht erforderlich, da der sie ausführende Hauptprozessor (central processing unit, CPU) des Steuergerätes nicht simuliert wird.In the context of a preferred embodiment of the invention, only the hardware behavior of the relevant modules has to be simulated. In particular, an interpretation of assembler instructions is fundamentally not necessary, since the main processor (central processing unit, CPU) of the control unit that executes them is not simulated.
Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich. So kann vorgesehen sein, dass einzelne Hardwaremodule des zu simulierenden Steuergerätes durch Treiber nachgebildet werden, die jeweils eine virtuelle Mikrocontrollerabstraktionsschicht (microcontroller abstraction layer, MCAL) darstellen. Abhängigkeiten zu SW-Versionen des originalen MCAL werden auf diesem Wege vermieden. Änderungen am virtuellen MCAL sind in aller Regel nur beim Wechsel des Controllers erforderlich.The measures listed in the dependent claims allow advantageous developments and improvements of the basic idea specified in the independent claim. It can be provided that individual hardware modules of the control device to be simulated are simulated by drivers, each of which represents a virtual microcontroller abstraction layer (MCAL). Dependencies on software versions of the original MCAL are avoided in this way. Changes to the virtual MCAL are usually only necessary when changing the controller.
Gemäß einem weiteren Aspekt kann vorgesehen sein, dass der jeweilige Treiber dazu eingerichtet ist, Funktionsfehler des Steuergerätes zu simulieren. Auf diese Weise können durch den virtuellen MCAL Fehler induziert werden, die in der Realität nicht vorkommen bzw. nicht gezielt stimuliert werden können. Die Simulation kann auch zur MCAL- Treiber-Entwicklung selbst verwendet werden. According to a further aspect, it can be provided that the respective driver is set up to simulate functional errors of the control device. In this way, errors can be induced by the virtual MCAL that do not occur in reality or cannot be stimulated in a targeted manner. The simulation can also be used for MCAL driver development itself.
Gemäß einem weiteren Aspekt kann vorgesehen sein, dass der Treiber dazu eingerichtet ist, Zugriffe auf ungenutzte Adressen der im Direktzugriffsspeicher (random-access memory, RAM) der Vorrichtung angelegten Speicherstruktur des Hardwaremodules zu erkennen. Greift die SW auf neue (bisher nicht benutzte) Bits zu, so vermag eine entsprechende Ausgestaltung der Erfindung diesen Umstand somit zu erkennen, sodass die fehlende Funktionalität implementiert werden kann.According to a further aspect, it can be provided that the driver is set up to recognize accesses to unused addresses of the memory structure of the hardware module created in the random access memory (RAM) of the device. If the SW accesses new (previously unused) bits, a corresponding embodiment of the invention can thus recognize this fact, so that the missing functionality can be implemented.
FigurenlisteFigure list
Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
-
1 schematisch eine Vorrichtung gemäß einer ersten Ausführungsform der Erfindung. -
2 schematisch eine Vorrichtung gemäß einer zweiten Ausführungsform der Erfindung.
-
1 schematically a device according to a first embodiment of the invention. -
2nd schematically a device according to a second embodiment of the invention.
Ausführungsformen der ErfindungEmbodiments of the invention
Wie die Abbildung belegt, werden entsprechende Funktionen der Basissoftware (
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents listed by the applicant has been generated automatically and is only included for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturPatent literature cited
- DE 102008040721 A1 [0005]DE 102008040721 A1 [0005]
Claims (10)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018221251.1A DE102018221251A1 (en) | 2018-12-07 | 2018-12-07 | Device for simulating a control device |
CN201911242957.6A CN111290290A (en) | 2018-12-07 | 2019-12-06 | Device for simulating a controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018221251.1A DE102018221251A1 (en) | 2018-12-07 | 2018-12-07 | Device for simulating a control device |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102018221251A1 true DE102018221251A1 (en) | 2020-06-10 |
Family
ID=70776878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102018221251.1A Pending DE102018221251A1 (en) | 2018-12-07 | 2018-12-07 | Device for simulating a control device |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111290290A (en) |
DE (1) | DE102018221251A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076345A (en) * | 2023-10-12 | 2023-11-17 | 北京紫光芯能科技有限公司 | Analog-to-digital conversion processing method, system and related equipment based on MCAL |
Citations (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 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7496495B2 (en) * | 2005-05-12 | 2009-02-24 | Microsoft Corporation | Virtual operating system device communication relying on memory access violations |
US7904914B2 (en) * | 2008-09-30 | 2011-03-08 | 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 |
CN102253884B (en) * | 2011-05-12 | 2016-05-11 | 中兴通讯股份有限公司 | The method of simulating operating environment of single-plate software and device |
DE102012217328A1 (en) * | 2012-09-25 | 2014-03-27 | Robert Bosch Gmbh | Method for simulating a control device |
EP2851815A1 (en) * | 2013-09-18 | 2015-03-25 | dSPACE digital signal processing and control engineering GmbH | Test device for testing a virtual control device in real time |
US10782668B2 (en) * | 2017-03-16 | 2020-09-22 | Siemens Aktiengesellschaft | Development of control applications in augmented reality environment |
US10409632B2 (en) * | 2017-03-31 | 2019-09-10 | The Boeing Company | Emulation of hardware components based on interrupt design |
CN108241304A (en) * | 2018-01-31 | 2018-07-03 | 广东赛诺梵信息技术有限公司 | A kind of network-type industrial control unit (ICU) of software definition |
-
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 (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 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076345A (en) * | 2023-10-12 | 2023-11-17 | 北京紫光芯能科技有限公司 | Analog-to-digital conversion processing method, system and related equipment based on MCAL |
CN117076345B (en) * | 2023-10-12 | 2024-02-27 | 北京紫光芯能科技有限公司 | Analog-to-digital conversion processing method, system and related equipment based on MCAL |
Also Published As
Publication number | Publication date |
---|---|
CN111290290A (en) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102005026040B4 (en) | Parameterization of a simulation working model | |
EP2009525B1 (en) | Test device and method for testing at least one electronic control system | |
DE112012007250T5 (en) | Vehicle internal device and program | |
DE102017211433B4 (en) | Procedure for performing a function test of a control unit in a hardware-in-the-loop test, HIL test, and HIL test bench and control unit | |
EP3285165A1 (en) | Modification and simulation of the operating software of a technical system | |
EP0674784A1 (en) | Process for testing at least one class of an object-oriented program on a computer. | |
EP3001313A1 (en) | Methods for simulating an application program of an electronic control device on a computer | |
EP2698678B1 (en) | Configuration technique for a control device with applications that communicate with each other | |
EP3832517A1 (en) | Computer-implemented method for integrating at least one signal value in a virtual control device | |
DE102018221251A1 (en) | Device for simulating a control device | |
DE102019132476A1 (en) | Module with a serializer unit and improved compatibility with deserializer units of different series | |
DE10352172A1 (en) | Method and device for adapting functions for controlling operating procedures | |
EP2759939B1 (en) | Method for manipulating a memory operation of a control device program on a virtual or real storage device | |
WO2006035038A2 (en) | Method for testing control device software for a control device | |
DE102016115314A1 (en) | Modifying and simulating the operating software of a technical system | |
DE102008040721A1 (en) | Emulation system and method for a no longer available microcontroller | |
DE102012217328A1 (en) | Method for simulating a control device | |
DE102020213809A1 (en) | Method for operating a control device when testing software in the control device and method for operating a test computer when testing software in a control device | |
DE10228610A1 (en) | Method for testing of a control program running on a computer unit, especially an engine control unit, whereby a dynamic link is created between a bypass function and the control program so that computer data can be accessed | |
DE102016203283A1 (en) | Method for operating a microprocessor | |
DE102010056232A1 (en) | Method for automatic writing of diagnosis data in control device of motor car, involves reading diagnosis data from collecting units by using cross references, and writing read diagnosis data in control devices | |
DE102017208986A1 (en) | Method for testing a planned software update for a vehicle | |
DE102022112141A1 (en) | Method for creating a simplified virtual control device | |
DE102019217058A1 (en) | Method and device for providing application software | |
DE102009054137A1 (en) | Method for testing application utilized to develop functionalities of e.g. dynamic traction control of motor vehicle, involves considering characteristics of software components to simulate expected temporal characteristics of application |