DE102021208681A1 - Control unit for a motor vehicle and method for updating a control unit - Google Patents
Control unit for a motor vehicle and method for updating a control unit Download PDFInfo
- Publication number
- DE102021208681A1 DE102021208681A1 DE102021208681.0A DE102021208681A DE102021208681A1 DE 102021208681 A1 DE102021208681 A1 DE 102021208681A1 DE 102021208681 A DE102021208681 A DE 102021208681A DE 102021208681 A1 DE102021208681 A1 DE 102021208681A1
- Authority
- DE
- Germany
- Prior art keywords
- program
- programs
- subprograms
- control unit
- processor
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/445—Program loading or initiating
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
Abstract
Die Erfindung betrifft ein Steuergerät (100) für ein Kraftfahrzeug umfassend einen Prozessor (10) und einen Speicher (20). Ein Programm umfasst eine Vielzahl von Teilprogrammen (Q1, ..., Qn; S1, ..., Sm). Die Vielzahl der Teilprogramme sind jeweils in einem voneinander unabhängigen Erstellungsprozess erzeugt und diese so erzeugten Teilprogramme (Q1, ..., Qn; S1, ..., Sm) auf jeweils getrennte Speicherpartitionen (MQ1, ..., MQn; MS1, ..., MSm) des Speichers (20) zum Ausführen durch den Prozessor (10) gespeichert, so dass die Teilprogramme (Q1, ..., Qn; S1, ..., Sm) unabhängig voneinander aktualisierbar sind.
Die Erfindung betrifft ferner ein Verfahren zum Aktualisieren eines Steuergeräts (100) für ein Kraftfahrzeug und ein Verfahren zum Bereitstellen eines Steuergeräts (100) für ein Kraftfahrzeug.
The invention relates to a control unit (100) for a motor vehicle, comprising a processor (10) and a memory (20). A program includes a large number of sub-programs (Q1, ..., Qn; S1, ..., Sm). The large number of subprograms are each generated in a creation process that is independent of one another, and these subprograms (Q1, ..., Qn; S1, ..., Sm) generated in this way are stored on separate memory partitions (MQ1, ..., MQn; MS1, . .., MSm) of the memory (20) for execution by the processor (10), so that the part programs (Q1, ..., Qn; S1, ..., Sm) can be updated independently of one another.
The invention also relates to a method for updating a control unit (100) for a motor vehicle and a method for providing a control unit (100) for a motor vehicle.
Description
Die Erfindung betrifft ein Steuergerät, insbesondere ein sicherheitsrelevantes Steuergerät, für Kraftfahrzeuge, ein Kraftfahrzeug mit einem solchen Steuergerät sowie ein Verfahren zum Aktualisieren eines Steuergeräts. Ferner betrifft die Erfindung ein Verfahren zum Bereitstellen eines Steuergeräts für ein Kraftfahrzeug.The invention relates to a control device, in particular a safety-related control device, for motor vehicles, a motor vehicle with such a control device, and a method for updating a control device. Furthermore, the invention relates to a method for providing a control unit for a motor vehicle.
Funktionale Sicherheit spielt bei Kraftfahrzeugen eine wesentliche Rolle, um einen sicheren Betrieb des Kraftfahrzeugs zu gewährleisten. Dazu wurden Standards wie beispielsweise die ISO 26262 für elektrische Komponenten und Steuergeräte eines Kraftfahrzeugs entwickelt, um mittels besonderer Sicherheitsmaßnahmen Fehlfunktionen zu vermeiden. Dabei erfolgt eine projektbezogene Risikobewertung und auf Basis dieser Risikobewertung eine Einstufung in eine bestimmte Sicherheitsanforderungsstufe, beispielsweise nach aufsteigendem Risiko ASIL A, B, C, D und andernfalls QM, falls im letzteren Fall das Risiko als gering eingestuft wird und so das elektrische System ohne besondere Maßnahmen auskommt. Diese Einstufungen sind fallbezogen und müssen für jedes Projekt einzeln bewertet werden. Die Anforderungen hinsichtlich funktionaler Sicherheit können dabei sowohl an Hardwarekomponenten als auch an Softwarekomponenten gestellt werden.Functional safety plays an important role in motor vehicles in order to ensure safe operation of the motor vehicle. For this purpose, standards such as ISO 26262 for electrical components and control units of a motor vehicle were developed in order to avoid malfunctions by means of special safety measures. A project-related risk assessment is carried out and, on the basis of this risk assessment, a classification into a specific safety requirement level, for example according to increasing risk ASIL A, B, C, D and otherwise QM, if in the latter case the risk is classified as low and the electrical system without any special measures. These ratings are case-based and must be assessed for each project individually. The requirements with regard to functional safety can be placed on both hardware components and software components.
In Antriebskonzepten bei Steuergeräten von Kraftfahrzeugen sind Programme für die Funktionsebene und für die funktionale Sicherheitsebene in einem gemeinsamen File zusammengefasst. Das hat jedoch zur Folge, dass bei einem Update, das heißt bei einer Aktualisierung, der Funktionsanteile aufgrund der nicht gewährleisteten Querwirkungsfreiheit auch der Überwachungsanteil als geändert betrachtet werden muss, auch wenn keine Änderung im jeweiligen Anteil durch das Update geplant ist. Dadurch müssen jedoch aufwendige Freigabetests zum Nachweis der funktionalen Sicherheit in diesen Teilen des Programms wiederholt werden. Das löst enorme Kosten und Projektverzögerungen aus, da der Freigabeaufwand und Programmieraufwand deutlich ansteigt. Insbesondere ergeben sich dadurch Nachteile beim Over-the-Air-Update von Kraftfahrzeugen.In drive concepts for control devices in motor vehicles, programs for the functional level and for the functional safety level are combined in a common file. However, this has the consequence that in the case of an update, i.e. an update, of the functional parts due to the freedom from interference that cannot be guaranteed, the monitoring part must also be regarded as changed, even if no change in the respective part is planned by the update. However, this means that complex release tests to prove functional safety have to be repeated in these parts of the program. This triggers enormous costs and project delays, since the release effort and programming effort increases significantly. In particular, this results in disadvantages in the over-the-air update of motor vehicles.
In der
In der
In der
Der Erfindung liegt nun die Aufgabe zugrunde, ein Steuergerät für ein Kraftfahrzeug bereitzustellen, welches bei geringerem Freigabeaufwand und geringeren Kosten selektiv aktualisierbar ist. Ferner besteht eine Aufgabe darin, das Aktualisieren von Programmen der funktionalen Sicherheit und das Over-the-Air-Update zu erleichtern.The invention is now based on the object of providing a control unit for a motor vehicle which can be selectively updated with less release effort and lower costs. It is also an object to facilitate functional safety program updating and over-the-air updating.
In bevorzugter Ausgestaltung der Erfindung ist ein Steuergerät, insbesondere ein sicherheitsrelevantes Steuergerät, für ein Kraftfahrzeug bereitgestellt, umfassend: einen Prozessor eingerichtet zum Ausführen eines Programms und einen Speicher. Das Programm ist zum Betrieb einer Fahrzeugkomponente ausgebildet und umfasst eine Vielzahl von Teilprogrammen. Das Steuergerät ist dadurch gekennzeichnet, dass die Teilprogramme jeweils in einem voneinander unabhängigen Erstellungsprozess erzeugt sind und diese so erzeugten Teilprogramme auf jeweils unterschiedlichen Speicherpartitionen zum Ausführen gespeichert sind.In a preferred embodiment of the invention, a control device, in particular a safety-related control device, is provided for a motor vehicle, comprising: a processor set up to run a program and a memory. The program is designed to operate a vehicle component and includes a large number of sub-programs. The control device is characterized in that the subprograms are each generated in a mutually independent creation process and these subprograms generated in this way are stored on different memory partitions for execution.
Der Erstellungsprozess ist mit anderen Worten ein Buildprozess. Der Erstellungsprozess umfasst das Kompilieren eines Quellcodes in ein Programm, welches maschinen-lesbare Codes beziehungsweise Instruktionen aufweist und von dem Prozessor ausgeführt werden kann. Ferner kann der Erstellungsprozess das Verlinken zu Bibliotheken umfassen. In other words, the build process is a build process. The creation process includes compiling a source code into a program which has machine-readable codes or instructions and can be executed by the processor. The creation process may also include linking to libraries.
Speicherpartitionen sind mit anderen Worten getrennte beziehungsweise unabhängige Speicherbereiche eines Speichers. Durch den unabhängigen Erstellungsprozess ergibt sich, dass die Teilprogramme binär unabhängig, das heißt eigenständig voneinander ausführbar sind. Ferner können die Programme beziehungsweise Teilprogramme ein Prozess oder Thread sein, der auf dem Prozessor des Steuergeräts läuft, bei welchen Programmanweisungen ausgeführt und mit anderen Systemkomponenten interagieren, um die verschiedenen Funktionalitäten zu beschreiben. Die Teilprogramme beziehungsweise deren Instruktionen können in einem Speicher gespeichert sein, der in dem Steuergerät implementiert ist. Hierbei kann eine gewöhnliche Speichervorrichtung verwendet werden, wie beispielsweise ein Direktzugriffsspeicher, RAM. Die Teilprogrammanweisungen können auch auf anderen nichtflüchtigen computerlesbaren Medien gespeichert werden. Eine Fahrzeugkomponente kann dabei eine Fahrzeughardware oder aber auch eine Fahrzeugfunktion sein, wobei der Betrieb beispielsweise das Steuern, Auswerten, Regeln und Überwachen umfasst. Zusätzliche Anwendungen sind weiter unten ausgeführt.In other words, memory partitions are separate or independent memory areas of a memory. The result of the independent creation process is that the subprograms are binary independent, ie can be executed independently of one another. Furthermore, the programs or sub-programs can be a process or thread that runs on the processor of the control unit, in which program instructions are executed and interact with other system components in order to implement the various functionalities to describe actions. The subprograms or their instructions can be stored in a memory that is implemented in the control unit. Here, an ordinary memory device can be used, such as random access memory, RAM. The part program instructions may also be stored on other non-transitory computer-readable media. A vehicle component can be vehicle hardware or else a vehicle function, with operation including, for example, controlling, evaluating, regulating and monitoring. Additional applications are detailed below.
Durch den getrennten beziehungsweise unabhängigen Erstellungsprozess sind die Teilprogramme binär unabhängig voneinander, was eine unmittelbare Folge des separaten Erstellungs- beziehungsweise Buildprozesses ist. Im Vergleich zum Stand der Technik wird somit nicht ein gesamtes Programm kompiliert, sondern Teilprogramme werden getrennt und einzeln kompiliert. Als technische Folge ergibt sich, dass die Teilprogramme unabhängig voneinander aktualisiert beziehungsweise upgedated werden können. Ferner kann die Entwicklungsgeschwindigkeit durch die separaten Erstellungsprozesse erhöht werden. Insbesondere kann der Aufwand für Freigabetests von sicherheitsrelevanten Teilprogrammen verringert werden, da bestehende Freigabetests der nicht-aktualisierten Teilprogramme als unmittelbare Folge der binären Unabhängigkeit beibehalten werden können. Ferner kann durch die getrennten Speicherpartitionen freedom of interference, das heißt Rückwirkungsfreiheit, erreicht werden, da ein Teilprogramm keine Speicherzellen von anderen Speicherpartitionen direkt beschreiben kann. Der Zugriff auf diese Speicherpartitionen kann von dem Prozessor gesteuert werden. Insbesondere ein Over-the-Air-Update wird bei einem solchen Steuergerät vereinfacht und Entwicklungsprozesse können beschleunigt werden.Due to the separate or independent creation process, the subprograms are binary independent of one another, which is a direct consequence of the separate creation or build process. In comparison to the prior art, an entire program is not compiled, but sub-programs are compiled separately and individually. The technical consequence is that the subprograms can be updated or updated independently of one another. Furthermore, the development speed can be increased by the separate creation processes. In particular, the outlay for release tests of safety-relevant subprograms can be reduced since existing release tests of the non-updated subprograms can be retained as a direct consequence of the binary independence. Furthermore, freedom of interference, ie freedom from reactions, can be achieved through the separate memory partitions, since a program part cannot directly write to memory cells from other memory partitions. Access to these memory partitions can be controlled by the processor. In particular, an over-the-air update is simplified with such a control device and development processes can be accelerated.
Bevorzugt weisen wenigstens zwei der Teilprogramme eine voneinander unterschiedliche Sicherheitsanforderungsstufe auf. Dadurch ist es mit dem Steuergerät ermöglicht, dass weniger sicherheitskritische oder sicherheitsunkritische Teilprogramme aktualisiert werden können, ohne dass sicherheitsrelevante Teilprogramme verändert werden, was eine Folge der binären Unabhängigkeit ist. Die Freigaben für die sicherheitsrelevanten Teilprogramme können beibehalten werden, wenn weniger kritische oder sicherheitsunkritische Teilprogramme aktualisiert werden, wodurch ein Freigabeaufwand verringert wird. Ein Freigabetest ist dabei ein Test, ob eine geforderte Sicherheitsanforderungsstufe erfüllt ist. Sicherheitsunkritisch bedeutet, dass das Teilprogramm weniger oder keine zusätzlichen Sicherungsmechanismen benötigt. Bevorzugt weisen entsprechende Teilprogramme eine höhere Sicherheitsanforderungsstufe als andere Teilprogramme auf. Beispielsweise kann ein erstes Teilprogramm eine ASIL-Sicherheitsanforderungsstufe aufweisen, zum Beispiel ASIL A, B, C oder D, während ein zweites Teilprogramm lediglich einer Sicherheitsanforderungsstufe QM entspricht. Die Sicherheitsanforderungsstufen können gemäß ISO 26262 für sicherheitsrelevante elektrische/elektronische Systeme in Kraftfahrzeugen vergeben werden, wobei dies nur ein Beispiel ist.At least two of the subprograms preferably have a different security requirement level from one another. This makes it possible with the control unit that less safety-critical or safety-uncritical sub-programs can be updated without safety-relevant sub-programs being changed, which is a consequence of the binary independence. The releases for the safety-relevant sub-programs can be retained if less critical or safety-uncritical sub-programs are updated, thereby reducing the release effort. A release test is a test as to whether a required security requirement level is met. Non-safety-critical means that the program part requires fewer or no additional safety mechanisms. Corresponding sub-programs preferably have a higher security requirement level than other sub-programs. For example, a first part program can have an ASIL safety requirement level, for example ASIL A, B, C or D, while a second part program only corresponds to a safety requirement level QM. The safety requirement levels can be assigned according to ISO 26262 for safety-related electrical/electronic systems in motor vehicles, this being just one example.
Bevorzugt können die Teilprogramme durch ein Schnittstellenmodul verbunden sein. Die Verbindung kann dabei beim Erstellungsprozess generiert werden. Das Schnittstellenmodul stellt eine Kommunikationsebene dar. Dadurch können die unabhängig kompilierten Teilprogramme in Laufzeit miteinander über Schnittstellen kommunizieren, das heißt Daten beziehungsweise Werte zu definierten Zeitpunkten im Ablauf übergeben. Das Schnittstellenmodul erzeugt somit definierte Ein- und Ausgänge in den getrennt erzeugten und somit binär unabhängigen Teilprogrammen. In bevorzugter Ausführungsform ist das Schnittstellenmodul ein Manifest-Wrapper. Der Manifest-Wrapper kann auch nach extern kommunizieren.The partial programs can preferably be linked by an interface module. The connection can be generated during the creation process. The interface module represents a communication level. This means that the independently compiled sub-programs can communicate with one another at runtime via interfaces, ie transfer data or values at defined times in the process. The interface module thus generates defined inputs and outputs in the separately generated and therefore binary independent subprograms. In a preferred embodiment, the interface module is a manifest wrapper. The manifest wrapper can also communicate externally.
Bevorzugt ist der Prozessor dazu eingerichtet, Folgendes zu tun: Erhalten einer Aktualisierung; Bestimmen, in Antwort auf den Erhalt der Aktualisierung, zumindest eines zu aktualisierenden Teilprogramms aus der Vielzahl der Teilprogramme und Aktualisieren des bestimmten Teilprogramms, ohne die nicht-bestimmten Teilprogramme zu verändern. Das Aktualisieren kann in einem vollständigen Ersetzen des ausgewählten Teilprogramms bestehen. Alternativ kann zumindest ein Teil des Teilprogramms aktualisiert werden. Der Vorteil ist hierbei, dass selektiv Teilprogramme aktualisiert werden können, ohne dass andere Teilprogramme verändert werden. Eine Aktualisierung kann auch als Aktualisierungsdaten bezeichnet werden.Preferably, the processor is configured to: receive an update; determining, in response to receiving the update, at least one partial program to be updated from among the plurality of partial programs and updating the determined partial program without changing the non-determined partial programs. Updating can consist of a complete replacement of the selected part program. Alternatively, at least part of the part program can be updated. The advantage here is that part programs can be updated selectively without changing other part programs. An update can also be referred to as update data.
Die erhaltene Aktualisierung kann einen Identifikator umfassen und der Prozessor kann dazu eingerichtet sein, auf Basis des erhaltenen Identifikators wenigstens ein Teilprogramm aus der Vielzahl der Teilprogramme zu bestimmen. Der Identifikator stellt mit anderen Worten eine Kennung dar. Mit dieser Kennung können dazu passende Teilprogramme bestimmt werden und dann nur dieses oder diese Teilprogramme in Folge aktualisiert werden. Die Bestimmung kann beispielsweise durch Abgleich mit vorgespeicherten Paaren aus Identifikator und dem zugehörigen Teilprogramm erfolgen, mit welchen dann der empfangene Identifikator verglichen wird zur Bestimmung des zugehörigen zu aktualisierenden Teilprogramms.The update received may include an identifier, and the processor may be configured to determine at least one subprogram from the plurality of subprograms based on the received identifier. In other words, the identifier represents an identifier. With this identifier, matching subprograms can be determined and then only this or these subprograms can be updated in succession. The determination can be made, for example, by comparison with pre-stored pairs of identifier and the associated part program, with which the received identifier is then compared to determine the associated part program to be updated.
Der Prozessor kann dazu eingerichtet sein, Freigabetests von nicht-bestimmten Teilprogrammen beizubehalten. Solche Freigabetests zur Prüfung der Erfüllung der funktionalen Sicherheit können sehr aufwendig und zeitintensiv sein. Somit kann der Freigabeaufwand stark reduziert werden, da Freigabetests für sicherheitskritische Teilprogramme sehr aufwendig sind, jedoch durch die binäre Unabhängigkeit nicht für die nicht-ausgewählten Teilprogramme wiederholt werden müssen.The processor may be configured to maintain release tests of unspecified subprograms. Such release tests to check compliance with functional safety can be very complex and time-consuming. The release effort can thus be greatly reduced, since release tests for safety-critical sub-programs are very complex, but do not have to be repeated for the non-selected sub-programs due to the binary independence.
Der Prozessor ist bevorzugt eingerichtet, die Vielzahl der Teilprogramme gemäß eines vorgegebenen Plans auszuführen. Mittels der Schnittstellenmodule kann somit ein gemeinsames Programm, welches sich aus den Teilprogrammen zusammensetzt, ausgeführt werden. Der Plan legt dabei eine bestimmte Ausführreihenfolge fest. Zudem kann die Übergabe von Werten an die Teilprogramme über die Schnittstellenmodule vorgegeben werden.The processor is preferably set up to execute the multiplicity of subprograms according to a predetermined plan. A common program, which is composed of the subprograms, can thus be executed by means of the interface modules. The plan defines a certain order of execution. In addition, the transfer of values to the program units via the interface modules can be specified.
Die Teilprogramme sind bevorzugt von der Hardware-Peripherie des Steuergeräts getrennt. Mit anderen Worten sind die Teilprogramme hart getrennt von der Hardware-Peripherie, letztere beispielsweise umfassend Eingabe- und Ausgabeeinheiten oder zum Beispiel ASICs. Dadurch können Interferenzen vermieden und die Performanz der Teilprogramme verbessert werden.The subprograms are preferably separated from the hardware peripherals of the control unit. In other words, the part programs are strictly separated from the hardware peripherals, the latter comprising input and output units or, for example, ASICs. This avoids interference and improves the performance of the subprograms.
Wenigstens ein erstes Teilprogramm kann bevorzugt zur Überwachung der Fahrzeugkomponente und ein zweites Teilprogramm zur Steuerung, Diagnose und/oder Auswertung der Fahrzeugkomponente ausgebildet sein. Als Fahrzeugkomponenten kommen verschiedene, im Folgenden beschriebene Komponenten in Betracht. Bevorzugt sind die Teilprogramme zur Auswertung einer Hardware des Kraftfahrzeugs, zur Ansteuerung einer Hardware des Kraftfahrzeugs oder zum Bereitstellen einer Funktion zum Betrieb des Kraftfahrzeugs ausgebildet. Die Teilprogramme dienen somit dem Betrieb des Kraftfahrzeugs. Die Teilprogramme enthalten somit Funktionen zum Betrieb des Kraftfahrzeugs, das heißt zur Überwachung, Steuerung beziehungsweise Regelung, Auswertung von bestimmten Hardwareeinrichtungen oder Fahrerfunktionen des Kraftfahrzeugs.At least one first sub-program can preferably be designed to monitor the vehicle component and a second sub-program to control, diagnose and/or evaluate the vehicle component. Various components described below come into consideration as vehicle components. The subprograms are preferably designed to evaluate hardware in the motor vehicle, to control hardware in the motor vehicle or to provide a function for operating the motor vehicle. The sub-programs are thus used to operate the motor vehicle. The subprograms thus contain functions for operating the motor vehicle, ie for monitoring, controlling or regulating, evaluating certain hardware devices or driver functions of the motor vehicle.
Die angesteuerte Hardware kann eine Kühlmittelpumpe, ein Kühlerrollo, einen Kühlerlüfter, ein Hauptrelais, eine E-Maschine, einen DC-DC-Wandler oder eine Hochvoltbatterie umfassen. Die ausgewertete Hardware kann ein CAN, eine Hardwareklemme, ein Multifunktionslenkrad, ein elektrischer Bremskraftverstärker, ein Kühlmitteltemperatursensor, ein Fahrpedal oder ein Wählhebel sein. Eine Funktion des Kraftfahrzeugs kann eine Fahrerwunsch-Erfassung, eine Fahrerwunsch-Formung, eine Rekuperation, eine Momentaufteilung auf verschiedene Maschinen, eine Antriebsstrangaktivierung, ein elektrisches Thermomanagement oder eine Fahrprogrammauswahl sein.The controlled hardware can include a coolant pump, a radiator blind, a radiator fan, a main relay, an electric machine, a DC-DC converter or a high-voltage battery. The evaluated hardware can be a CAN, a hardware terminal, a multifunction steering wheel, an electric brake booster, a coolant temperature sensor, an accelerator pedal or a selector lever. A function of the motor vehicle can be driver request detection, driver request formation, recuperation, torque distribution to different machines, drive train activation, electrical thermal management or driving program selection.
Die Teilprogramme können bevorzugt jeweils eine Tuningschutz-Kennzeichnung aufweisen. Dadurch können die Teilprogramme vor unerwünschter Manipulation geschützt werden. Eine Tuningschutzeinrichtung kann dazu bereitgestellt sein, zum Beispiel als Teil des Prozessors oder auch separat, welche die Unveränderlichkeit überprüfen beziehungsweise überwachen kann. Als Mittel zur Kennzeichnung kann zum Beispiel eine Checksumme oder ein Hash verwendet werden.The subprograms can preferably each have a tuning protection identifier. This allows the program units to be protected from undesired manipulation. A tuning protection device can be provided for this purpose, for example as part of the processor or also separately, which can check or monitor the immutability. A checksum or a hash, for example, can be used as a means of identification.
Ein weiterer Aspekt der Erfindung betrifft ein Verfahren zum Aktualisieren eines Steuergeräts für ein Kraftfahrzeug gemäß eines der oben ausgeführten Ausführungsformen. Das Verfahren umfasst die Schritte des Erhaltens einer Aktualisierung, das Auswählen beziehungsweise Bestimmen, in Antwort auf die erhaltene Aktualisierung, eines (oder mehrerer) zu aktualisierender Teilprogramme und dann das Aktualisieren des ausgewählten beziehungsweise bestimmten Teilprogramms, ohne die nicht-ausgewählten beziehungsweise nicht-bestimmten Teilprogramme zu verändern. Dadurch wird ein selektives Aktualisierungsverfahren offenbart, welches erlaubt, gezielte Teilprogramme zu aktualisieren, ohne dass die anderen Teilprogramme verändert werden müssen. Dies gelingt durch die binäre Trennung der Teilprogramme als Folge des unabhängigen Erstellungsprozesses. Der Aufwand zum Aktualisieren wird deutlich reduziert. Das Aktualisieren kann den kompletten Austausch eines Teilprogramms oder eines Teils davon umfassen. Das Verfahren kann als ein Over-the-Air-Update durchgeführt werden, das heißt, die Aktualisierung kann über eine Kommunikationsschnittstelle, zum Beispiel eine Funkschnittstelle des Steuergeräts oder des Kraftfahrzeugs, empfangen werden.A further aspect of the invention relates to a method for updating a control unit for a motor vehicle according to one of the specific embodiments explained above. The method comprises the steps of obtaining an update, selecting or determining, in response to the update received, one (or more) partial programs to be updated and then updating the selected or determined partial program, excluding the non-selected or non-determined partial programs to change. As a result, a selective updating method is disclosed which allows targeted sub-programs to be updated without the other sub-programs having to be changed. This is achieved through the binary separation of the subprograms as a result of the independent creation process. The effort for updating is significantly reduced. Updating can involve the complete replacement of a sub-program or a part thereof. The method can be carried out as an over-the-air update, that is to say the update can be received via a communication interface, for example a radio interface of the control device or of the motor vehicle.
Ferner umfasst das Verfahren das Beibehalten von Freigabetests des nicht-ausgewählten Teilprogramms. Freigabetests sind Tests, welche überprüfen, ob die geforderte Sicherheitsanforderungsstufe erfüllt ist. Solche Freigabetests können sehr aufwendig und zeitintensiv sein. Somit kann der Freigabeaufwand stark reduziert werden, da Freigabetests für sicherheitskritische Funktionen sehr aufwendig sind, jedoch durch die binäre Unabhängigkeit nicht für die nicht-ausgewählten Teilprogramme wiederholt werden müssen.Furthermore, the method includes maintaining release tests of the non-selected partial program. Release tests are tests that check whether the required security requirement level is met. Such release tests can be very complex and time-consuming. The release effort can thus be greatly reduced, since release tests for safety-critical functions are very expensive, but do not have to be repeated for the non-selected subprograms due to the binary independence.
Ferner umfasst das Verfahren das Übertragen einer Änderungsinformation über das Aktualisieren eines Teilprogramms an eine Tuningschutzeinrichtung. Dadurch kann die Aktualisierung von der Tuningschutzeinrichtung als erlaubte Änderung akzeptiert werden.The method also includes the transmission of change information about the updating of a part program to a tuning protection device. This allows the tuning protection device to accept the update as a permitted change.
Ein weiterer Aspekt der Erfindung betrifft ein Verfahren zum Bereitstellen eines Steuergeräts für ein Kraftfahrzeug, welches einen Prozessor eingerichtet zum Ausführen eines Programms zum Betrieb einer Fahrzeugkomponente des Kraftfahrzeugs, welches eine Vielzahl von Teilprogrammen umfasst, und einen Speicher umfasst, umfassend die Schritte: Erstellen einer Vielzahl von Teilprogrammen in einem voneinander unabhängigen Erstellungsprozess. In einem weiteren Schritt erfolgt das Speichern dieser so erzeugten Teilprogramme in jeweils unterschiedlichen Speicherpartitionen zum Ausführen durch den Prozessor. Die Vorteile dazu sind bereits oben beschrieben und es wird auf den obigen Abschnitt verwiesen.A further aspect of the invention relates to a method for providing a control unit for a motor vehicle, which has a processor set up for executing a program for operating a vehicle component of the motor vehicle, which includes a large number of subprograms, and a memory, comprising the steps of: creating a large number of subprograms in a mutually independent creation process. In a further step, these subprograms generated in this way are stored in respectively different memory partitions for execution by the processor. The advantages of this have already been described above and reference is made to the section above.
Bevorzugt umfasst das Verfahren das Verbinden der Teilprogramme durch ein Schnittstellenmodul während des Erstellens der jeweiligen Teilprogramme. Das Schnittstellenmodul umfasst dabei definierte Schnittstellen, über welche die Teilprogramme verbunden werden. Dadurch wird eine definierte Kommunikationsebene zwischen den Teilprogrammen erzeugt. So können zum Beispiele Werte und Daten über das Schnittstellenmodul ausgetauscht werden. Dadurch kann ein robuster Programmablauf für die Teilprogramme erfolgen.The method preferably includes the connection of the part programs by an interface module during the creation of the respective part programs. The interface module includes defined interfaces via which the subprograms are connected. This creates a defined communication level between the part programs. For example, values and data can be exchanged via the interface module. This allows a robust program sequence for the subprograms to take place.
Ein weiterer Aspekt der Erfindung ist ein Kraftahrzeug, welches ein Steuergerät nach einem der oberen Ausführungen umfasst. Die oben genannten Vorteile gelten auch für das Kraftfahrzeug, wobei insbesondere ein verbessertes Over-the-Air-Update erfolgt, da selektiv Teilprogramme des Steuergeräts aktualisiert werden können.A further aspect of the invention is a motor vehicle which includes a control device according to one of the above statements. The advantages mentioned above also apply to the motor vehicle, with an improved over-the-air update taking place in particular, since sub-programs of the control unit can be updated selectively.
Weitere bevorzugte Ausgestaltungen der Erfindung ergeben sich aus den übrigen, in den Unteransprüchen genannten Merkmalen.Further preferred configurations of the invention result from the remaining features mentioned in the dependent claims.
Die verschiedenen in dieser Anmeldung genannten Ausführungsformen der Erfindung sind, sofern im Einzelfall nicht anders ausgeführt, mit Vorteil miteinander kombinierbar.Unless stated otherwise in the individual case, the various embodiments of the invention mentioned in this application can advantageously be combined with one another.
Die Erfindung wird nachfolgend in Ausführungsbeispielen anhand der zugehörigen Zeichnungen erläutert. Es zeigen:
-
1 ein Steuergerät für ein Kraftfahrzeug gemäß einer Ausführungsform der Erfindung, -
2 ein Verfahren zum Aktualisieren eines Steuergeräts gemäß einer Ausführungsform der Erfindung und -
3 ein Verfahren zum Bereitstellen eines Steuergeräts für ein Kraftfahrzeug gemäß einer Ausführungsform der Erfindung.
-
1 a control unit for a motor vehicle according to an embodiment of the invention, -
2 a method for updating a control device according to an embodiment of the invention and -
3 a method for providing a control device for a motor vehicle according to an embodiment of the invention.
Das Programm umfasst, wie in der
Die Vielzahl der Teilprogramme Q1, ..., Qn; S1, ..., Sm ist jeweils in einem separaten beziehungsweise in einem voneinander unabhängigen Erstellungsprozess beziehungsweise Buildprozess erzeugt. Das bedeutet, dass die Teilprogramme Q1, ..., Qn; S1, ..., Sm nicht durch eine Gesamtkompilierung erzeugt sind, sondern getrennt und einzeln kompiliert/erstellt sind. Dadurch sind die Teilprogramme Q1, ..., Qn; S1, ..., Sm binär unabhängig voneinander. Dadurch wird erzielt, dass die Teilprogramme unabhängig voneinander aktualisiert beziehungsweise upgedated werden können.The large number of subprograms Q1, ..., Qn; S1, . . . , Sm is generated in each case in a separate or in a mutually independent creation process or build process. This means that the subprograms Q1, ..., Qn; S1, ..., Sm are not created by an overall compilation, but are compiled/created separately and individually. As a result, the subprograms Q1, ..., Qn; S1, ..., Sm binary independent of each other. The result of this is that the subprograms can be updated or updated independently of one another.
Die so erzeugten Teilprogramme Q1, ..., Qn; S1, ..., Sm werden dann auf jeweils getrennte Speicherpartitionen MQ1, ..., MQn; MS1, ..., MSm des Speichers 20 gespeichert beziehungsweise liegen dann dort vor. Der Prozessor 10 kann diese Teilprogramme Q1, ..., Qn; S1, ..., Sm entsprechend ausführen, wobei durch die separaten Speicherpartitionen MQ1, ..., MQn; MS1, ..., MSm eine Querwirkungsfreiheit bei Ablauf erzielt wird.The part programs Q1, ..., Qn; S1, ..., Sm are then mapped to separate memory partitions MQ1, ..., MQn; MS1, ..., MSm of the
Mindestens eines der Teilprogramme S1, ..., Sm weist eine sicherheitsrelevante Funktion des Kraftfahrzeugs auf. In dem vorliegenden Beispiel sind das die Teilprogramme S1 und das Teilprogramm Sm, wobei m ≥ 2 und auch weitere Teilprogramme zwischen 1 und m sich befinden können, welche hier nicht gezeigt sind. Die Sicherheitsrelevanz lässt sich durch eine Sicherheitsanforderungsstufe beschreiben. Dem Teilprogramm S1 ist beispielhaft eine Sicherheitsanforderungsstufe ASIL C zugewiesen und dem Teilprogramm Sm ist rein beispielhaft eine Sicherheitsanforderungsstufe ASIL A zugewiesen. Die Teilprogramme Q1 und Q2 enthalten beispielsweise eine weniger sicherheitskritische beziehungsweise eine sicherheitsunkritische Funktion. Diesen ist beispielsweise eine geringe Sicherheitsanforderungsstufe von QM zugewiesen. Die Art der Sicherheitsanforderungsstufe ist jedoch nur ein Beispiel und es können auch andere Sicherheitsklassifikationen verwendet werden. Die Teilprogramme S1, ..., Sm können beispielsweise zur Überwachung der Fahrzeugkomponente ausgebildet sein, insbesondere der nachfolgenden Funktionen. Die Teilprogramme Q1, ..., Qn können beispielsweise zur Steuerung, Diagnose und/oder Auswertung der Fahrzeugkomponente ausgebildet sein.At least one of the subprograms S1, ..., Sm has a safety-related function of the motor vehicle. In the present example, these are the subprograms S1 and the subprogram Sm, where m≧2 and there can also be other subprograms between 1 and m, which are not shown here. The security relevance can be described by a security requirement level. A safety requirement level ASIL C is assigned to the sub-program S1 by way of example, and a safety requirement level ASIL A is assigned to the sub-program Sm purely by way of example. The subprograms Q1 and Q2 contain, for example, a less safety-critical or a safety-uncritical function. For example, a low safety requirement level of QM is assigned to these. However, the type of security integrity level is only an example and other security classifications can also be used. The sub-programs S1, . . . , Sm can be designed, for example, to monitor the vehicle component, in particular the subsequent functions. The subprograms Q1, . . . , Qn can be designed, for example, to control, diagnose and/or evaluate the vehicle component.
Die Teilprogramme Q1, ..., Qn; S1, ..., Sm können dabei so auf die Speicherpartitionen MQ1, ..., MQn; MS1, ..., MSm des Speichers 20 verteilt werden, dass Sicherheitsanforderungsstufen der Speicherpartition mit der Sicherheitsanforderungsstufe des Teilprogramms übereinstimmen. Beispielsweise kann das Teilprogramm Q1 auf einer Speicherpartition mit Sicherheitsanforderungsstufe QM gespeichert sein. Das Teilprogramm S1 kann auf einer Speicherpartition der Sicherheitsanforderungsstufe ASIL C gespeichert sein. The subprograms Q1, ..., Qn; S1, ..., Sm can thus access the memory partitions MQ1, ..., MQn; MS1, ..., MSm of the
Nicht alle Speicherpartitionen MQ1, ..., MQn; MS1, ..., MSm des Speichers 20 müssen belegt sein, was von der Anzahl der Speicherpartitionen und der Anzahl der Teilprogramme abhängt. Beispielsweise sind die Speicherpartitionen MQn und MS2 leer.Not all memory partitions MQ1, ..., MQn; MS1, ..., MSm of
Die Vielzahl der Teilprogramme Q1, ..., Qn; S1, ..., Sm sind durch ein Schnittstellenmodul 30 verbunden. Das Schnittstellenmodul 30 kann dabei definierte Schnittstellen aufweisen, um die getrennt voneinander erzeugten Teilprogramme miteinander zu verbinden. Obwohl die Teilprogramme isoliert auf ihren Speicherpartitionen sitzen, können somit Teilprogramme miteinander Werte austauschen. Solche Werte können über das Schnittstellenmodul 30 zwischen den binär getrennten Teilprogrammen Q1, ..., Qn; S1, ..., Sm über Schnittstellenmodule 30 ausgetauscht werden. Das Schnittstellenmodul 30 ist dabei insbesondere durch einen Wrapper oder auch einen Manifest-Wrapper ausgebildet, welcher, wie in der
Die binäre Trennung der Teilprogramme Q1, ..., Qn; S1, ..., Sm wie oben beschrieben hat den Vorteil, dass die Teilprogramme Q1, ..., Qn; S1, ..., Sm selektiv aktualisiert werden können. Dazu kann der Prozessor 10 eine Aktualisierung erhalten, beispielsweise über ein Kommunikationsmodul, welches hier nicht gezeigt und als Funkschnittstelle ausgebildet sein kann. Insbesondere kann somit auch ein Over-the-Air-Update beschrieben werden, bei welchem das Update über die Funkschnittstelle des Fahrzeugs oder des Steuergeräts erhalten wird. Der Prozessor 10 wählt beziehungsweise bestimmt dann ein zu aktualisierendes Teilprogramm in Antwort auf den Erhalt der Aktualisierung. Die Identifikation eines zu aktualisierenden Teilprogramms kann zum Beispiel durch zusätzliche Informationen, gespeicherte und/oder übertragene Information, erhalten werden.The binary separation of the subprograms Q1, ..., Qn; S1, ..., Sm as described above has the advantage that the part programs Q1, ..., Qn; S1, ..., Sm can be updated selectively. For this purpose, the
Bevorzugt kann die erhaltene Aktualisierung einen Identifikator umfassen, so dass der Prozessor 10 auf Basis des erhaltenen Identifikators ein oder mehrere Teilprogramme aus der Vielzahl der Teilprogramme bestimmen kann. Mit einer solchen Kennung können die zu dieser Kennung passenden Teilprogramme bestimmt werden und dann nur dieses oder diese Teilprogramme in Folge aktualisiert werden. Die Bestimmung kann beispielsweise durch Abgleich mit vorgespeicherten Paaren aus Identifikator und zugehörigem Teilprogramm erfolgen, mit welchen dann der empfangene Identifikator verglichen wird zur Bestimmung des zugehörigen zu aktualisierenden Teilprogramms.The update received can preferably include an identifier, so that the
Der Prozessor 10 kann dann ferner das Aktualisieren des ausgewählten beziehungsweise bestimmten Teilprogramms ausführen, ohne die nicht-bestimmten Teilprogramme zu verändern beziehungsweise zu aktualisieren. Dadurch kann ein anstehendes Update zielgerichtet beziehungsweise selektiv verwendet werden, um eines der binär getrennten Teilprogramme zu aktualisieren. Das Aktualisieren kann insbesondere ein vollständiges Ersetzen oder eine punktuelle Veränderung des Teilprogramms beinhalten. Vor Ausführung der Aktualisierung kann ferner eine Prüfung der Kompatibilität der Aktualisierung mit den anderen Teilprogrammen durchgeführt werden, um basierend auf dem Resultat das Aktualisieren durchzuführen oder zu verhindern. Der Prozessor 10 kann ferner dazu eingerichtet ist, Freigabetests von nicht-bestimmten Teilprogrammen beizubehalten. Dadurch kann der Freigabeaufwand stark reduziert werden, da Freigabetests für sicherheitskritische Funktionen sehr aufwendig sind, jedoch durch die binäre Unabhängigkeit nicht für die nicht-ausgewählten Teilprogramme wiederholt werden müssen.The
Die Teilprogramme Q1, ..., Qn; S1, ..., Sm sind bevorzugt von der Hardware-Peripherie des Steuergeräts 100 getrennt. Dadurch ist eine direkte Verbindung der Teilprogramme Q1, ..., Qn; S1, ..., Sm zur Hardware-Peripherie verhindert, einschließlich zum Beispiel von ASICs oder Ein- und Ausgabeeinheiten. Die Verbindung der Teilprogramme zur Hardware-Peripherie kann über ein Betriebssystem, OS, erfolgen. Eine Folge ist, dass kritische Interferenzen verhindert und die Performanz der Teilprogramme sichergestellt wird.The subprograms Q1, ..., Qn; S1, ..., Sm are preferably separated from the hardware peripherals of
In einem weiteren Schritt erfolgt das Aktualisieren S130 des ausgewählten Teilprogramms, ohne die nicht-ausgewählten Teilprogramme zu verändern. Dies kann deswegen erfolgen, da die Teilprogramme unabhängig voneinander erstellt beziehungsweise kompiliert wurden. Das Verfahren umfasst ferner das Beibehalten von Freigabetests von nicht-ausgewählten Teilprogrammen. Dadurch kann der Aufwand für Freigabetests, was eine aufwendige Berechnung erfordert, von sicherheitsrelevanten Teilprogrammen verringert werden, da bestehende Freigabetests der nicht-aktualisierten Teilprogramme als unmittelbare Folge der binären Unabhängigkeit beibehalten werden können.In a further step, the selected part program is updated S130 without changing the non-selected part programs. This can be done because the subprograms were created or compiled independently of one another. The method further includes maintaining release tests of unselected partial programs. As a result, the outlay for release tests, which requires complex calculations, can be reduced for safety-relevant subprograms, since existing release tests for the non-updated subprograms can be retained as a direct consequence of the binary independence.
Ferner kann das Verfahren das Übertragen einer Änderungsinformation über das Aktualisieren eines Teilprogramms an eine Tuningschutzeinrichtung umfassen. Dadurch kann die Aktualisierung von der Tuningschutzeinrichtung als erlaubte Änderung akzeptiert werden.Furthermore, the method can include the transmission of change information about the updating of a part program to a tuning protection device. This allows the tuning protection device to accept the update as a permitted change.
In der
In einem weiteren Schritt S220 umfasst das Verfahren das Speichern dieser so erzeugten Teilprogramme in jeweils getrennten Speicherpartitionen MQ1, ... MQn; MS1, ..., MSm des Speichers 20 zum Ausführen durch den Prozessor 10. Dabei können wenigstens zwei Teilprogramme Q1, ..., Qn; S1, ..., Sm eine voneinander unterschiedliche Sicherheitsanforderungsstufe aufweisen. In einem weiteren Schritt erfolgt das Verbinden der Teilprogramme Q1, ..., Qn; S1, ..., Sm durch ein Schnittstellenmodul 30 während des Erstellens der Vielzahl der Teilprogramme Q1, ..., Qn; S1, ..., Sm. Dadurch können die unabhängig kompilierten Teilprogramme in Laufzeit miteinander über Schnittstellen kommunizieren, das heißt Daten beziehungsweise Werte zu definierten Zeitpunkten im Ablauf übergeben.In a further step S220, the method includes storing these part programs generated in this way in separate memory partitions MQ1, . . . MQn; MS1, ..., MSm of the
BezugszeichenlisteReference List
- 100100
- Steuergerät control unit
- 1010
- Prozessorprocessor
- 2020
- SpeicherStorage
- 3030
- Schnittstellenmodul / Wrapper Interface module / wrapper
- MQ1, ..., MQnMQ1, ..., MQn
- Speicherpartition/SpeicherbereichStorage partition/storage area
- MS1, ..., MSnMS1, ..., MSn
- Speicherpartition/SpeicherbereichStorage partition/storage area
- Q1, ..., QnQ1, ..., Qn
- Teilprogrammesubprograms
- S1, ..., SmS1, ..., Sm
- Teilprogramme subprograms
- S110S110
- Erhalten einer AktualisierungGet an update
- S120S120
- Bestimmen/Auswählen eines TeilprogrammsDetermine/select a part program
- S130S130
- Aktualisieren des Teilprogramms Updating the part program
- S210S210
- Erzeugen von TeilprogrammenCreation of part programs
- S220S220
- Speichern von TeilprogrammenSaving part programs
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN 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 cited by the applicant was generated automatically and is included solely 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 102013226872 A1 [0004]DE 102013226872 A1 [0004]
- DE 102014212018 A1 [0005]DE 102014212018 A1 [0005]
- US 20190258812 A1 [0006]US20190258812A1 [0006]
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208681.0A DE102021208681A1 (en) | 2021-08-10 | 2021-08-10 | Control unit for a motor vehicle and method for updating a control unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021208681.0A DE102021208681A1 (en) | 2021-08-10 | 2021-08-10 | Control unit for a motor vehicle and method for updating a control unit |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102021208681A1 true DE102021208681A1 (en) | 2023-02-16 |
Family
ID=85040123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102021208681.0A Pending DE102021208681A1 (en) | 2021-08-10 | 2021-08-10 | Control unit for a motor vehicle and method for updating a control unit |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102021208681A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013226872A1 (en) | 2013-10-15 | 2015-04-16 | Continental Automotive Gmbh | Method for operating a control unit of a motor vehicle and control unit for a motor vehicle |
DE102014212018A1 (en) | 2014-06-23 | 2015-12-24 | Continental Teves Ag & Co. Ohg | Method and circuit for preventing memory protection infringements |
US20190258812A1 (en) | 2018-02-20 | 2019-08-22 | Sensata Technologies, Inc. | Memory security for automotive functional safety compliance with independent downstream processes |
-
2021
- 2021-08-10 DE DE102021208681.0A patent/DE102021208681A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102013226872A1 (en) | 2013-10-15 | 2015-04-16 | Continental Automotive Gmbh | Method for operating a control unit of a motor vehicle and control unit for a motor vehicle |
DE102014212018A1 (en) | 2014-06-23 | 2015-12-24 | Continental Teves Ag & Co. Ohg | Method and circuit for preventing memory protection infringements |
US20190258812A1 (en) | 2018-02-20 | 2019-08-22 | Sensata Technologies, Inc. | Memory security for automotive functional safety compliance with independent downstream processes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102019109672A1 (en) | CANCELLATION AFTER PARTIAL FAILURE IN MULTIPLE ELECTRONIC CONTROL UNITS BY OVER THE AIR UPDATE | |
DE102012009482B4 (en) | Functionally expandable vehicle control unit and method for supplementing the functionality of a vehicle control unit | |
DE112017005979T5 (en) | Parallel Process Device and Parallel Process Program | |
EP3709166A1 (en) | Method and system for secure signal manipulation for testing integrated security functionalities | |
DE102012209789B4 (en) | ON-VEHICLE ELECTRICAL CONTROL DEVICE | |
DE102018206720A1 (en) | Method for performing a software update in a control unit of a motor vehicle and a correspondingly configured motor vehicle | |
DE102016204970A1 (en) | Parallelization compilation method, parallelization complicator and vehicle device | |
DE102021208681A1 (en) | Control unit for a motor vehicle and method for updating a control unit | |
DE102018110018A1 (en) | A method for providing an integrated process for the ECU development and simulation device for the ECU development | |
EP3529723A1 (en) | Apparatuses, methods and computer programs for a vehicle and a central office | |
WO2005022382A2 (en) | Method for the installation of a program component | |
DE102022113922A1 (en) | OTA MASTER, SYSTEM, PROCEDURE, NON-TRANSITORY STORAGE MEDIUM AND VEHICLE | |
DE102022208218A1 (en) | Device for performing an OTA update for a vehicle and method thereof | |
DE102007023048A1 (en) | Intelligent system for determining optimal partition size in a bespoke environment | |
DE102018123563B4 (en) | Method for inter-core communication in a multi-core processor | |
DE102019202870A1 (en) | Parallelization method, parallelization tool and multi-core microcomputer | |
DE102016219449A1 (en) | Parallelization method, parallelization tool and vehicle-mounted device | |
DE102020111051A1 (en) | ARRANGEMENT, SOFTWARE PROGRAM AND COMPUTER-IMPLEMENTED METHOD FOR EXECUTING A RELOADABLE PROGRAM ON AN EMBEDDED SYSTEM OF A VEHICLE | |
DE102019202228A1 (en) | Parallelization method, parallelization tool, multi-core microcomputer and in-vehicle device | |
EP3991037B1 (en) | Controller for a vehicle, system, method, and motor vehicle comprising such a controller | |
DE102010042574A1 (en) | Method for operating microcontroller of automobile, involves interrupting specific functions by mechanism such that functions are executed without interference from execution of other functions | |
DE102022112550A1 (en) | Method for adapting a functionality of a software application to the hardware equipment of a motor vehicle that is available for executing the functionality, as well as a computer-readable storage medium and computer system | |
DE102020118479A1 (en) | Method for enabling automatic evaluation of a current software security status and data processing device | |
DE102022107393A1 (en) | CENTER, DISTRIBUTION CONTROL METHOD AND NON-TRANSITORY STORAGE MEDIUM | |
WO2023073095A1 (en) | Method for non-reactive validation of a function application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified |