DE102022212057A1 - Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier - Google Patents
Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier Download PDFInfo
- Publication number
- DE102022212057A1 DE102022212057A1 DE102022212057.4A DE102022212057A DE102022212057A1 DE 102022212057 A1 DE102022212057 A1 DE 102022212057A1 DE 102022212057 A DE102022212057 A DE 102022212057A DE 102022212057 A1 DE102022212057 A1 DE 102022212057A1
- Authority
- DE
- Germany
- Prior art keywords
- functional
- electronic component
- path
- computer
- analysis
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000012545 processing Methods 0.000 title claims description 16
- 238000004590 computer program Methods 0.000 title claims description 15
- 238000004458 analytical method Methods 0.000 claims abstract description 40
- 230000006870 function Effects 0.000 claims description 24
- 238000011161 development Methods 0.000 description 12
- 230000018109 developmental process Effects 0.000 description 12
- 238000012360 testing method Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000007547 defect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000002775 capsule Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000010921 in-depth analysis Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012916 structural analysis Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zur Analyse von funktionalen Pfaden (A-F; D-E) für ein eingebettetes System (10), welches mindestens einen Funktionsblock (12) aufweist, welcher eine Software-Komponente (14) und eine Elektronik-Komponente (16) aufweist.Es ist vorgesehen, dass eine Hardware-Modell-Beschreibung des Funktionsblocks (12) in einer Hardware-Beschreibungssprache unter Verwendung eines erzeugten Software-Komponenten-Modells der Software-Komponente (14) und eines erzeugten Elektronik-Komponenten-Modells der Elektronik-Komponente (16) erzeugt wird. Die Hardware-Modell-Beschreibung erlaubt eine vollumfängliche Pfadanalyse inklusive einer Timinganalyse eines Software- und Elektronik-Komponenten (14, 16) umfassenden Funktionsblocks (12).The invention relates to a method for analyzing functional paths (A-F; D-E) for an embedded system (10) which has at least one functional block (12) which has a software component (14) and an electronic component (16). It is provided that a hardware model description of the functional block (12) is generated in a hardware description language using a generated software component model of the software component (14) and a generated electronic component model of the electronic component (16). The hardware model description allows a comprehensive path analysis including a timing analysis of a functional block (12) comprising software and electronic components (14, 16).
Description
Die Erfindung betrifft ein Verfahren zur Analyse von funktionalen Pfaden, insbesondere von funktionalen Sicherheitspfaden, für ein eingebettetes System, eine Vorrichtung zur Datenverarbeitung, ein Computerprogramm und einen computerlesbaren Datenträger. Vorzugsweise umfasst das eingebettete System ein Steuergerät eines Kraftfahrzeugs, bevorzugt eines selbstlenkenden Kraftfahrzeugs.The invention relates to a method for analyzing functional paths, in particular functional safety paths, for an embedded system, a data processing device, a computer program and a computer-readable data carrier. The embedded system preferably comprises a control unit of a motor vehicle, preferably a self-driving motor vehicle.
Eingebettete Systeme bestehen typischerweise aus Hardware und Software, welche in ein komplexes technisches System eingebettet sind, so zum Beispiel Steuergeräte in Kraftfahrzeugen. Derartige eingebettete Systeme können in dem technischen System verschiedene Steuerungs-, Regelungs- und Datenverarbeitungsaufgaben übernehmen.Embedded systems typically consist of hardware and software that are embedded in a complex technical system, such as control units in motor vehicles. Such embedded systems can perform various control, regulation and data processing tasks in the technical system.
Steuergeräte in modernen Kraftfahrzeugen wachsen überproportional in der Komplexität. Im Gegensatz zu konventionellen Fahrzeugen, bei welchen der Fahrer des Fahrzeugs auf einen Ausfall einer Komponente reagieren kann, um Schlimmeres zu verhindern, besteht eine derartige Möglichkeit beim autonomen Fahren nicht. So sind insbesondere im Umfeld der autonomen Fahrzeuge zunehmend mehr Sicherheitsrelevanz und tiefgreifende Softwarestrukturen in der Absicherung, der Sicherheit gemäß ASIL-Level (Automotive Safety Integrity Level) im Sinne der funktionalen Sicherheitsentwicklung nach ISO 26262-2018, erforderlich.Control units in modern motor vehicles are growing disproportionately in complexity. In contrast to conventional vehicles, where the driver of the vehicle can react to a component failure to prevent something worse from happening, this is not possible with autonomous driving. In the area of autonomous vehicles in particular, increasing safety relevance and in-depth software structures are required to ensure safety in accordance with ASIL level (Automotive Safety Integrity Level) in the sense of functional safety development according to ISO 26262-2018.
Die ISO 26262 („Road vehicles - Functional safety“) ist eine ISO-Norm für sicherheitsrelevante elektronische Systeme und deren Software in Kraftfahrzeugen. Rein mechanische Systeme oder auf mechanische Systeme zurückführende Probleme sind von der ISO 26262 nicht umfasst. Die ISO 26262 definiert ein Vorgehensmodell zusammen mit geforderten Aktivitäten und Arbeitsprodukten („work products“) sowie anzuwendenden Methoden in Entwicklung und Produktion. In der Entwicklung einer Fahrzeugkomponente werden daher schon heute mehrere zehntausend Anforderungen und Architekturelemente definiert, die erfüllt werden müssen.ISO 26262 ("Road vehicles - Functional safety") is an ISO standard for safety-relevant electronic systems and their software in motor vehicles. Purely mechanical systems or problems that can be traced back to mechanical systems are not covered by ISO 26262. ISO 26262 defines a process model together with required activities and work products as well as methods to be used in development and production. In the development of a vehicle component, tens of thousands of requirements and architecture elements are therefore already defined that must be met.
Bei der Entwicklung findet üblicherweise das sogenannte „V-Modell“ Anwendung. Das V-Modell ist ein lineares Vorgehensmodell im Projektmanagement, das ein Projekt in fest definierte Phasen untergliedert. Es werden Testphasen ergänzt, die den jeweiligen Entwicklungsphasen gegenübergestellt sind. Somit werden in der Entwicklung nicht nur Systemarchitektur oder Komponentenspezifikationen erstellt, sondern auch die dazugehörenden Tests. Dies stellt sicher, dass sowohl die einzelnen Komponenten als auch das Gesamtsystem getestet sind und wie gewünscht funktionieren.The so-called "V-model" is usually used in development. The V-model is a linear process model in project management that divides a project into clearly defined phases. Test phases are added that are compared to the respective development phases. This means that not only system architecture or component specifications are created in development, but also the associated tests. This ensures that both the individual components and the overall system are tested and function as desired.
Mit der heutigen Technik werden entsprechend viele Tests gemacht, um die Sicherheit des Produktes oder der Komponente zu überprüfen. Dabei ist ein Test aber immer nur ein statischer Auszug über die Zeit im Suchraum. Die Durchführung eines vollständigen Tests ist in den meisten Fällen unmöglich oder schlichtweg nicht wirtschaftlich, da nicht unendlich viel Zeit und unendlich viele Testkapazitäten vorhanden sind, um einen vollständigen Test durchzuführen.With today's technology, a large number of tests are carried out to check the safety of the product or component. However, a test is always only a static extract over time in the search space. In most cases, carrying out a complete test is impossible or simply not economical, as there is not an infinite amount of time and an infinite amount of testing capacity to carry out a complete test.
So beschreibt das Dokument
Es hat sich jedoch herausgestellt, dass selbst bei größter Sorgfalt das Auftreten von Fehlern in der Entwicklung und Absicherung von Produkten und Komponenten nicht ausgeschlossen ist. Zudem bedingt der Umstand, dass ein vollständiger Test nicht möglich ist, ein unerwünschtes Restrisiko.However, it has been shown that even with the greatest care, the occurrence of errors in the development and validation of products and components cannot be ruled out. In addition, the fact that a complete test is not possible creates an undesirable residual risk.
Der Erfindung liegt nun die Aufgabe zugrunde, ein Verfahren zu entwickeln, welches ein Fehlerrisiko in der Entwicklung und Absicherung von Produkten und Komponenten reduziert.The invention is based on the object of developing a method which reduces the risk of errors in the development and validation of products and components.
Die erfindungsgemäße Aufgabe wird gelöst durch ein Verfahren zur Analyse von funktionalen Pfaden für ein eingebettetes System, eine Vorrichtung zur Datenverarbeitung, ein Computerprogramm und einen computerlesbaren Datenträger gemäß den unabhängigen Patentansprüchen. Bevorzugte Weiterbildungen sind Gegenstand der jeweils rückbezogenen Unteransprüche.The object according to the invention is achieved by a method for analyzing functional paths for an embedded system, a device for data processing, a computer program and a computer-readable data carrier according to the independent patent claims. Preferred developments are the subject of the respective dependent claims.
Ein erster Aspekt betrifft ein Verfahren zur Analyse von funktionalen Pfaden, insbesondere von funktionalen Sicherheitspfaden, für ein eingebettetes System. Das eingebettete System weist mindestens einen Funktionsblock auf, welcher mindestens eine Software-Komponente und mindestens eine Elektronik-Komponente umfasst. Das eingebettete System übernimmt bevorzugt Steuerungs-, Regelungs- und/oder Datenverarbeitungsaufgaben von sicherheitsrelevanten Komponenten und/oder Produkten.A first aspect relates to a method for analyzing functional paths, in particular functional safety paths, for an embedded system. The embedded system has at least one functional block, which comprises at least one software component and at least one electronic component. The embedded system preferably takes over control, regulation and/or data processing tasks of safety-relevant components and/or products.
In einem Verfahrensschritt wird ein Software-Komponenten-Modell von der Software-Komponente basierend auf einer kombinatorischen Logik und einem logischen Speicherelement erzeugt. Basierend auf einer weiteren kombinatorischen Logik und einem weiteren logischen Speicherelement wird ein Elektronik-Komponenten-Modell von der Elektronik-Komponente erzeugt. Ferner werden Ausführungszeiten von der Software-Komponente und der Elektronik-Komponente erhalten. In einem weiteren Schritt wird basierend auf dem Software-Komponenten-Modell, dem Elektronik-Komponenten-Modell und den erhaltenen Ausführungszeiten eine Hardware-Modell-Beschreibung des Funktionsblocks in einer Hardware-Beschreibungssprache erzeugt. Unter Verwendung der erzeugten Hardware-Modell-Beschreibung des Funktionsblocks wird eine Pfadanalyse, vorzugweise eine Sicherheitspfadanalyse, durchgeführt.In a process step, a software component model is created from the software component based on a combinatorial logic and a logical storage element. Based on further combinatorial logic and a further logical storage element, an electronic component model is generated from the electronic component. Furthermore, execution times are obtained from the software component and the electronic component. In a further step, a hardware model description of the functional block is generated in a hardware description language based on the software component model, the electronic component model and the obtained execution times. Using the generated hardware model description of the functional block, a path analysis, preferably a safety path analysis, is carried out.
Das erfindungsgemäße Verfahren eröffnet eine Möglichkeit, mittels Pfadanalyse über die Konstruktion des Produktes oder der Komponente eine Aussage auf die Vollständigkeit und Korrektheit der in dem Funktionsblock vorhandenen Pfade, insbesondere der sicherheitsrelevanten Pfade (safety paths), gegenüber einer vorgegebenen Spezifikation zu treffen. Die vorgegebene Spezifikation ist beispielsweise in der linken Seite des eingangs genannten V-Modells enthalten und umfasst bevorzugt die in der ISO 26262 genannten sicherheitsrelevanten Anforderungen und Architekturelemente der funktionalen Sicherheitsentwicklung.The method according to the invention opens up the possibility of using path analysis to make a statement about the completeness and correctness of the paths present in the functional block, in particular the safety-relevant paths, compared to a given specification via the design of the product or component. The given specification is contained, for example, in the left-hand side of the V-model mentioned at the beginning and preferably includes the safety-relevant requirements and architectural elements of functional safety development mentioned in ISO 26262.
Dadurch, dass sowohl die Software- als auch die Elektronik-Komponente in der Hardware-Modell-Beschreibung des Funktionsblocks abgebildet werden und in einer Hardware-Beschreibungssprache vorliegen, kann die Gesamt-Software inklusive Elektronik einer vollständigen Pfadanalyse mittels an sich bekannter Werkzeuge und Methodiken, die für das Umfeld einer Hardware-Beschreibungssprache programmiert sind, unterzogen werden. Somit kann mindestens ein im Funktionsblock enthaltener funktionaler Pfad ausgegeben und überprüft werden. Bevorzugt werden eine Vielzahl oder alle der im Funktionsblock enthaltene funktionale Pfade ausgegeben und/oder geprüft. Dies erlaubt es, einen in mathematischer Hinsicht vollständigen Gegenbeweis (gemäß rechter Seite des V-Modells) zu erbringen. Somit kann mitunter das im Stand der Technik auftretende Restrisiko der endlichen Testreihen ausgeräumt werden. Die aus der Pfadanalyse gewonnenen Erkenntnisse können zur Überarbeitung der linken Seite des V-Modells (Anforderungen und Architekturelemente) einfließen, um die Sicherheit des Produktes oder der Komponente zu erhöhen und zu verbessern. Die bekannten modellbasierten Entwicklungen, wie zum Beispiel Werkzeuge von Mathworks Matlab/Simulink®, dSpace Toolkette® oder Ansys SCADE®, bieten diese Möglichkeiten nicht. Die bekannten Lösungen fokussieren sich lediglich auf die Modellierung von funktionalen Inhalten und kommen über die Komplexitätsklasse bezüglich der Analyse einer einzelnen dedizierten Software-Komponente nicht hinaus. Mit anderen Worten ermöglicht das erfindungsgemäße Verfahren eine tiefergehende Analyse von funktionalen Sicherheitspfaden in den Produkten und Komponenten, um auf Vollständigkeit hinzuweisen. Damit lässt sich die Vertrautheit (Confidence in Anlehnung der ISO 26262) erhöhen. Ferner ist das Verfahren in der Lage, mehrere sicherheitsrelevante Auslöser und Reaktionen zu analysieren und Mehrfachfehler aufzudecken. Somit lassen sich Fehlerverdeckungen oder auch Fehlerprioritäten prüfen.Because both the software and the electronic components are mapped in the hardware model description of the functional block and are available in a hardware description language, the entire software, including electronics, can be subjected to a complete path analysis using known tools and methodologies that are programmed for the environment of a hardware description language. This means that at least one functional path contained in the functional block can be output and checked. Preferably, a large number or all of the functional paths contained in the functional block are output and/or checked. This makes it possible to provide a mathematically complete counter-proof (according to the right-hand side of the V-model). This can sometimes eliminate the residual risk of the finite test series that occurs in the state of the art. The findings from the path analysis can be used to revise the left-hand side of the V-model (requirements and architecture elements) in order to increase and improve the safety of the product or component. The known model-based developments, such as tools from Mathworks Matlab/Simulink®, dSpace Toolkette® or Ansys SCADE®, do not offer these options. The known solutions focus only on the modeling of functional content and do not go beyond the complexity class with regard to the analysis of a single dedicated software component. In other words, the method according to the invention enables a more in-depth analysis of functional safety paths in the products and components in order to indicate completeness. This increases familiarity (confidence based on ISO 26262). The method is also able to analyze several safety-relevant triggers and reactions and to uncover multiple errors. This makes it possible to check error concealment or error priorities.
Ein Funktionsblock stellt bevorzugt eine Kapsel für Daten und Algorithmen dar, der eine oder mehrere Funktionalitäten des eingebetteten Systems bereitstellen kann. Die Algorithmen wandeln dabei die Eingangssignale in Abhängigkeit der internen Daten in Ausgangssignale um. Die Elektronik-Komponente umfasst bevorzugt ein elektronisches System zur Vorverarbeitung der Eingangssignale und ein elektronisches System zur Regelung und Ausgabe der Ausgangssignale, beispielsweise eines Ansteuerungssignals für einen Aktuator. Die Software-Komponente umfasst bevorzugt einen oder mehrere Algorithmen zur Umwandlung der Eingangssignale in die Ausgangssignale. Die Software-Komponente weist bevorzugt einen oder mehrere Befehle oder eine Abfolge von Befehlen auf, wobei ein Befehl eine einzelne Anweisung eines Programms sein kann, wie ein Speicherzugriff, eine Berechnung (Addition, Multiplikation, et cetera), eine Zuweisung, ein Vergleich zwischen zwei Werten oder dergleichen, die von einem eingebetteten System ausgeführt werden kann.A functional block preferably represents a capsule for data and algorithms that can provide one or more functionalities of the embedded system. The algorithms convert the input signals into output signals depending on the internal data. The electronic component preferably comprises an electronic system for preprocessing the input signals and an electronic system for controlling and outputting the output signals, for example a control signal for an actuator. The software component preferably comprises one or more algorithms for converting the input signals into the output signals. The software component preferably has one or more commands or a sequence of commands, where a command can be a single instruction of a program, such as a memory access, a calculation (addition, multiplication, etc.), an assignment, a comparison between two values or the like that can be carried out by an embedded system.
Das eingebettete System ist nicht auf einen Funktionsblock beschränkt. Bevorzugt umfasst das eingebettete System eine Vielzahl von Funktionsblöcken. Diese sind ebenfalls bevorzugt zu einem sogenannten Composite-Funktion-Block zusammengebaut, um komplexere Anforderungen zu realisieren. Bevorzugt wird eine Hardware-Modell-Beschreibung in einer Hardware-Beschreibungssprache für jeden Funktionsblock analog erzeugt. Ferner kann der Funktionsblock oder die Vielzahl von Funktionsblöcken auch eine Vielzahl von Software-Komponenten und/oder Elektronik-Komponenten aufweisen, um komplexere Anforderungen zu realisieren. Die Software-Komponente und/oder die Elektronik-Komponente können einen oder mehrere Eingangswerte und einen oder mehrere Ausgangswerte haben. Bevorzugt wird hierbei für jede Software- und/oder Elektronik-Komponente ein entsprechendes Software- und/oder Elektronik-Komponenten-Modell erzeugt und für das Erzeugen der Hardware-Modell-Beschreibung herangezogen.The embedded system is not limited to one function block. Preferably, the embedded system comprises a plurality of function blocks. These are also preferably assembled into a so-called composite function block in order to implement more complex requirements. Preferably, a hardware model description is generated analogously in a hardware description language for each function block. Furthermore, the function block or the plurality of function blocks can also have a plurality of software components and/or electronic components in order to implement more complex requirements. The software component and/or the electronic component can have one or more input values and one or more output values. Preferably, a corresponding software and/or electronic component model is generated for each software and/or electronic component and used to generate the hardware model description.
Das Software-Komponenten-Modell und/oder Elektronik-Komponenten-Modell stellen bevorzugt eine Abbildung oder Modellierung der Software-Komponente und/oder der Elektronik-Komponente in einer Hardware-Beschreibungssprache dar. Die Abbildung oder Modellierung der Software-Komponente gibt die Logik der Abfolge von Befehlen der Software-Komponente basierend auf einer kombinatorischen Logik und einem logischen Speicherelement wieder. Die Abbildung oder Modellierung der Elektronik-Komponente gibt die Prozesse der Vorverarbeitung der Eingangssignale (beispielsweise Filtern) und der Verarbeitung und Ausgabe der Ausgangssignale (beispielsweise Regelungssignale) der Elektronik-Komponente basierend auf einer weiteren kombinatorischen Logik und einem weiteren logischen Speicherelement wieder. Das Software-Komponenten-Modell und das Elektronik-Komponenten-Modell können grundsätzlich von einem Computer gelesen und bearbeitet werden.The software component model and/or electronic component model preferably represent a mapping or modeling of the software component and/or the electronic component in a hardware description language. The mapping or modeling of the software component represents the logic of the sequence of commands of the software component based on a combinatorial logic and a logical storage element. The mapping or modeling of the electronic component represents the processes of preprocessing the input signals (for example filtering) and processing and outputting the output signals (for example control signals) of the electronic component based on another combinatorial logic and another logical storage element. The software component model and the electronic component model can in principle be read and edited by a computer.
Eine kombinatorische Logik ist bevorzugt eine Menge an logischen Verknüpfungen (AND, OR, NOT, NAND, NOR, XOR, et cetera) zwischen Eingangswerten, die an einer Eingangskomponente der kombinatorischen Logik erhalten werden, und Ausgangswerten, die an einer Ausgangskomponente bereitgestellt werden. Die Eingangswerte entsprechen beispielsweise den an die Software-Komponente übergebenen Werten, wenn diese auf dem eingebetteten System ausgeführt wird, und die Ausgangswerte den durch die Software-Komponente berechneten Werten.A combinatorial logic is preferably a set of logical operations (AND, OR, NOT, NAND, NOR, XOR, etc.) between input values obtained at an input component of the combinatorial logic and output values provided at an output component. The input values correspond, for example, to the values passed to the software component when it is executed on the embedded system, and the output values correspond to the values calculated by the software component.
Ein logisches Speicherelement ist bevorzugt ein Latch, ein Flipflop oder dergleichen. Dadurch kann ein Speichern der Ausgangswerte modelliert werden, um eine Übergabe von Werten oder einen Datenaustausch zwischen den Elektronik- und/oder Software-Komponenten wiederzugeben.A logical storage element is preferably a latch, a flip-flop or the like. This makes it possible to model the storage of the output values in order to reflect a transfer of values or a data exchange between the electronic and/or software components.
In bevorzugter Ausgestaltung ist vorgesehen, dass die Pfadanalyse unter Verwendung eines Werkzeugs für Timing- und Pfadanalysen durchgeführt wird. Beispiele für entsprechende Werkzeuge sind Synopsys Primetime® oder Design Compiler®. Durch die Verwendung bereits bekannter Werkzeuge kann die Pfadanalyse einfach durchgeführt werden. Derartige Werkzeuge sind beispielsweise dazu eingerichtet, Pfade und Laufzeiten zu analysieren, beispielsweise inhaltliche Strukturanalysen durchzuführen, um einen Vergleich mit einer Spezifikation zu ermöglichen.In a preferred embodiment, the path analysis is carried out using a tool for timing and path analysis. Examples of such tools are Synopsys Primetime® or Design Compiler®. The path analysis can be carried out easily by using already known tools. Such tools are designed, for example, to analyze paths and runtimes, for example to carry out content-related structural analyses in order to enable a comparison with a specification.
In weiterer bevorzugter Ausgestaltung ist vorgesehen, dass bei der Durchführung der Pfadanalyse mittels einer inhaltlichen Strukturanalyse und einer vorgegebenen Spezifikation überprüft wird, ob ein in dem vorhandenen Funktionsblock enthaltener funktionaler Pfad eine der vorgegebenen Spezifikationen erfüllt. Vorzugsweise wird überprüft, ob eine Vielzahl oder alle in dem vorhandenen Funktionsblock enthaltenen funktionalen Pfade sämtliche der vorgegebenen Spezifikationen erfüllen. Wird eine vorgegebene Spezifikation (zum Beispiel gemäß ISO 26262) nicht erfüllt, das heißt, ist in dem Funktionsblock kein der vorgegebenen Spezifikation entsprechender funktionaler Pfad enthalten, so besteht eine Designlücke oder ein Fehler in dem Produkt oder in der Komponente. Bevorzugt wird in diesem Fall eine Fehlermeldung ausgegeben, insbesondere mit der Mitteilung, dass der vorgegebene funktionale Pfad nicht existent ist. Dies dient der Überprüfung, ob die vorgesehenen Sicherheitsanforderungen, wie es beispielsweise die ISO 26262 verlangt, erfüllt sind oder nicht.In a further preferred embodiment, when carrying out the path analysis, a content structure analysis and a predefined specification are used to check whether a functional path contained in the existing functional block meets one of the predefined specifications. Preferably, a check is carried out to see whether a large number or all of the functional paths contained in the existing functional block meet all of the predefined specifications. If a predefined specification (for example according to ISO 26262) is not met, i.e. if the functional block does not contain a functional path corresponding to the predefined specification, there is a design gap or an error in the product or component. In this case, an error message is preferably issued, in particular with the message that the predefined functional path does not exist. This serves to check whether the intended safety requirements, as required by ISO 26262, for example, are met or not.
In weiterer bevorzugter Ausgestaltung ist vorgesehen, dass bei der Durchführung der Pfadanalyse mittels einer inhaltlichen Strukturanalyse und einer vorgegebenen Spezifikation überprüft wird, ob der Funktionsblock eine Anzahl von funktionalen Pfaden pro vorgegebener Spezifikation von zwei oder mehr umfasst. Wird eine entsprechende Anzahl von zwei oder mehr gefunden, wird vorzugsweise eine Fehlermeldung ausgegeben, insbesondere mit der Mitteilung, dass eine Anzahl von funktionalen Pfaden pro vorgegebener Spezifikation von zwei oder mehr existent ist. Üblicherweise wird bei der Entwicklung von Produkten oder Komponenten ein funktionaler Pfad pro vorgegebener Spezifikation konstruiert. Sind mehr als ein funktionaler Pfad pro vorgegebener Spezifikation in dem Funktionsblock vorhanden, so gibt es funktionale Pfade, die nicht der Spezifikation entsprechen. Dies stellt ein sogenanntes Overengineering-Beispiel dar. Overengineering stellt einen signifikanten Kostentreiber in der Entwicklung dar und erhöht zudem unnötig die Komplexität eines Produktes oder einer Komponente. Ferner ist die Gefahr von Sicherheitslücken (funktionsrelevante Sicherheit als auch Cyber-Security) gesteigert.In a further preferred embodiment, when carrying out the path analysis, a content structure analysis and a given specification are used to check whether the function block includes a number of functional paths per given specification of two or more. If a corresponding number of two or more is found, an error message is preferably issued, in particular with the message that a number of functional paths per given specification of two or more exists. Usually, when developing products or components, one functional path is constructed per given specification. If there is more than one functional path per given specification in the function block, there are functional paths that do not correspond to the specification. This is a so-called overengineering example. Overengineering represents a significant cost driver in development and also unnecessarily increases the complexity of a product or component. Furthermore, the risk of security gaps (functional security as well as cyber security) is increased.
In weiterer bevorzugter Ausgestaltung ist vorgesehen, dass bei der Durchführung der Pfadanalyse mittels einer inhaltlichen Strukturanalyse und einer vorgegebenen Spezifikation überprüft wird, ob alle der in der vorgegebenen Spezifikation vorgesehenen funktionalen Pfade in dem Funktionsblock vorhanden sind. Dies dient, wie bereits ausgeführt, der Überprüfung, ob die vorgesehenen Sicherheitsanforderungen, wie es beispielsweise die ISO 26262 verlangt, erfüllt sind oder nicht.In a further preferred embodiment, when carrying out the path analysis, a content-related structural analysis and a given specification are used to check whether all of the functional paths provided for in the given specification are present in the function block. As already explained, this serves to check whether the intended safety requirements, as required by ISO 26262, for example, are met or not.
In weiterer bevorzugter Ausgestaltung ist vorgesehen, dass bei der Durchführung der Pfadanalyse mittels einer Timinganalyse überprüft wird, ob eine der Ausführungszeiten eine vorgegebene Spezifikationszeit über- oder unterschreitet. Im Falle der Überschreitung der Spezifikationszeit wird bevorzugt eine Fehlermeldung ausgegeben, insbesondere mit der Mitteilung, dass die betreffende Ausführungszeit überschritten wurde. Im Falle der Unterschreitung der Spezifikationszeit wird bevorzugt eine In-Ordnung-Meldung ausgegeben, insbesondere mit der Mitteilung, dass die betreffende Ausführungszeit nicht überschritten wurde. Damit lässt sich überprüfen, ob Reaktionen innerhalb von vorgegebenen Zeiten erfolgen. Ist dies nicht der Fall, kann dies zu einer sicherheitsrelevanten Fehlfunktion oder zu einem zu späten Handeln des Systems führen. Insofern dient die Timinganalyse der Überprüfung, ob die vorgesehenen Sicherheitsanforderungen, wie es beispielsweise die ISO 26262 verlangt, erfüllt sind oder nicht. Eine Ausführungszeit einer Software- und/oder Elektronik-Komponente ist bevorzugt eine Zeitdauer, die die Software- und/oder Elektronik-Komponente auf einem eingebetteten System benötigt, um alle Befehle abgearbeitet zu haben und einen Ausgangswert bereitzustellen.In a further preferred embodiment, when carrying out the path analysis, a timing analysis is used to check whether one of the execution times exceeds or falls short of a given specification time. If the specification time is exceeded, before an error message is preferably issued, in particular with the message that the relevant execution time has been exceeded. If the specification time is not met, an OK message is preferably issued, in particular with the message that the relevant execution time has not been exceeded. This can be used to check whether reactions occur within specified times. If this is not the case, this can lead to a safety-relevant malfunction or to the system reacting too late. In this respect, timing analysis is used to check whether the specified safety requirements, as required by ISO 26262, for example, are met or not. The execution time of a software and/or electronic component is preferably a period of time that the software and/or electronic component on an embedded system needs to process all commands and provide an output value.
In weiterer bevorzugter Ausgestaltung ist vorgesehen, dass als Eingangs- und/oder Ausgangswerte des Funktionsblocks Sensorwerte und/oder Businformationen verwendet werden. Beispiele für Bussysteme sind Can, CanFD, Flexray, Lin oder Ethernet. Folglich ist das Verfahren auf eine Vielzahl von unterschiedlichen eingebetteten Systemen anwendbar. Ferner umfasst das eingebettete System einen oder eine Vielzahl von Aktuatoren, welche durch das Ausgangssignal des Funktionsblocks angesteuert werden können.In a further preferred embodiment, sensor values and/or bus information are used as input and/or output values of the function block. Examples of bus systems are Can, CanFD, Flexray, Lin or Ethernet. Consequently, the method can be applied to a large number of different embedded systems. Furthermore, the embedded system comprises one or a large number of actuators which can be controlled by the output signal of the function block.
Das oben genannte eingebettete System, zum Beispiel ein Steuergerät für ein Kraftfahrzeug, ist bevorzugt durch elektrische oder elektronische Bauteile oder Komponenten (Hardware) oder durch Firmware (ASIC) implementiert. Das eingebettete System kann ein FPGA (Field Programmable Gate Array), ein DSP (digitaler Signalprozessor) oder dergleichen aufweisen. Zusätzlich oder alternativ wird die Funktionalität des Steuergeräts beim Ausführen eines geeigneten Programms (Software) verwirklicht. Ebenfalls bevorzugt ist das eingebettete System durch eine Kombination von Hardware, Firmware und/oder Software verwirklicht. Beispielsweise sind einzelne Komponenten des eingebetteten Systems zum Bereitstellen einzelner Funktionalitäten als separat integrierter Schaltkreis ausgebildet oder auf einem gemeinsamen integrierten Schaltkreis angeordnet.The above-mentioned embedded system, for example a control unit for a motor vehicle, is preferably implemented by electrical or electronic parts or components (hardware) or by firmware (ASIC). The embedded system can have an FPGA (Field Programmable Gate Array), a DSP (digital signal processor) or the like. Additionally or alternatively, the functionality of the control unit is implemented when executing a suitable program (software). The embedded system is also preferably implemented by a combination of hardware, firmware and/or software. For example, individual components of the embedded system are designed as a separate integrated circuit to provide individual functionalities or are arranged on a common integrated circuit.
Die einzelnen Komponenten des eingebetteten Systems sind ferner bevorzugt als ein oder mehrere Prozesse ausgebildet, die auf einem oder mehreren Prozessoren in einem oder mehreren elektronischen Rechengeräten laufen und beim Ausführen von einem oder mehreren Computerprogrammen erzeugt werden. Die Rechengeräte sind dabei bevorzugt dazu ausgebildet, mit anderen Komponenten, beispielsweise einem Kommunikationssystem, zusammenzuarbeiten, um die hierin beschriebenen Funktionalitäten zu verwirklichen. Die Anweisungen der Computerprogramme sind dabei bevorzugt in einem Speicher abgelegt, wie beispielsweise einem RAM-Element. Die Computerprogramme können jedoch auch in einem nicht-flüchtigen Speichermedium, wie beispielsweise einer CD-ROM, einem Flash-Speicher oder dergleichen, abgelegt sein.The individual components of the embedded system are also preferably designed as one or more processes that run on one or more processors in one or more electronic computing devices and are generated when executing one or more computer programs. The computing devices are preferably designed to work together with other components, for example a communications system, in order to implement the functionalities described herein. The instructions of the computer programs are preferably stored in a memory, such as a RAM element. However, the computer programs can also be stored in a non-volatile storage medium, such as a CD-ROM, a flash memory or the like.
Dem Fachmann ist ferner ersichtlich, dass die Funktionalitäten von mehreren Recheneinheiten (Datenverarbeitungsgeräten) kombiniert oder in einem einzigen Gerät kombiniert sein können oder dass die Funktionalität von einem bestimmten Datenverarbeitungsgerät auf eine Vielzahl von Geräten verteilt vorliegen kann, um die Funktionalität des eingebetteten Systems zu verwirklichen.It will also be apparent to those skilled in the art that the functionalities of multiple computing units (data processing devices) may be combined or combined in a single device, or that the functionality of a particular data processing device may be distributed across a plurality of devices to implement the functionality of the embedded system.
Ein weiterer Aspekt betrifft eine Vorrichtung zur Datenverarbeitung, umfassend Mittel zur Ausführung der Schritte des erfindungsgemäßen Verfahrens, insbesondere eines Verfahrens zur Analyse von funktionalen Pfaden für ein eingebettetes System. Die Vorrichtung zur Datenverarbeitung ist bevorzugt ein Computer, ein Server, ein Rechnerverbund, beispielsweise ein Computercluster oder eine Cloud, oder dergleichen. Das Mittel ist bevorzugt ein Prozessor, ein Speicherelement, ein elektronischer Schaltkreis oder eine elektronische Komponente, die typischerweise eingesetzt wird, um die hierin beschriebenen Funktion auszuführen.A further aspect relates to a device for data processing, comprising means for carrying out the steps of the method according to the invention, in particular a method for analyzing functional paths for an embedded system. The device for data processing is preferably a computer, a server, a computer network, for example a computer cluster or a cloud, or the like. The means is preferably a processor, a memory element, an electronic circuit or an electronic component that is typically used to carry out the function described herein.
Ein weiterer Aspekt betrifft ein Computerprogramm, umfassend Befehle, die bei der Ausführung des Programms durch einen Computer, wie beispielsweise ein eingebettetes System, zum Beispiel ein Steuergerät für ein Kraftfahrzeug, dieses veranlassen, das erfindungsgemäße Verfahren, insbesondere ein Verfahren zur Analyse von funktionalen Pfaden für ein eingebettetes System, durchzuführen. Das Programm wird bevorzugt auf einem Computer, einem Server, einem Rechnerverbund und/oder in einer Cloud ausgeführt. Der obengenannte Computer kann daher allgemein als Vorrichtung zur Datenverarbeitung aufgefasst werden. In manchen Ausführungsbeispielen, insbesondere bei denen das Computerprogramm auf einem Rechnerverbund ausgeführt wird, werden Schritte des hierin beschriebenen Verfahrens bevorzugt parallel ausgeführt. Dann wird eine höhere Komplexitätsanalyse durch parallele Berechnungen erreicht.A further aspect relates to a computer program comprising instructions which, when the program is executed by a computer, such as an embedded system, for example a control unit for a motor vehicle, cause the computer to carry out the method according to the invention, in particular a method for analyzing functional paths for an embedded system. The program is preferably executed on a computer, a server, a computer network and/or in a cloud. The above-mentioned computer can therefore generally be understood as a device for data processing. In some embodiments, in particular in which the computer program is executed on a computer network, steps of the method described herein are preferably executed in parallel. A higher complexity analysis is then achieved through parallel calculations.
Ein weiterer Aspekt betrifft einen computerlesbaren Datenträger, auf dem das erfindungsgemäße Computerprogramm gespeichert ist. Ein computerlesbarer Datenträger ist bevorzugt ein Halbleiterspeicher, eine magnetische Festplatte, ein optischer Speicher (wie eine DVD et cetera) oder dergleichen.A further aspect relates to a computer-readable data carrier on which the computer program according to the invention is stored. A computer-readable data carrier is preferably a semiconductor memory, a magnetic hard disk, a optical storage (like a DVD etc.) or the like.
Weitere bevorzugte Ausgestaltungen der Erfindung ergeben sich aus den übrigen, in den Unteransprüchen genannten Merkmalen.Further preferred embodiments of the invention emerge from the remaining features mentioned in the subclaims.
Die verschiedenen in dieser Anmeldung genannten Ausführungsformen der Erfindung sind, sofern im Einzelfall nicht anders ausgeführt, mit Vorteil miteinander kombinierbar.The various embodiments of the invention mentioned in this application can be advantageously combined with one another, unless stated otherwise in individual cases.
Die Erfindung wird nachfolgend in Ausführungsbeispielen anhand der zugehörigen Zeichnungen erläutert. Es zeigen:
-
1 eine schematische Darstellung eines eingebetteten Systems; -
2 eine schematische Darstellung des Verfahrens gemäß einer Durchführungsform und -
3 eine schematische Darstellung einer Vorrichtung gemäß einer Ausführungsform.
-
1 a schematic representation of an embedded system; -
2 a schematic representation of the method according to one embodiment and -
3 a schematic representation of a device according to an embodiment.
Das eingebettete System 10 umfasst einen Funktionsblock 12, der wiederum drei Software-Komponenten 14 und zwei Elektronik-Komponenten 16 aufweist. Der Funktionsblock 12 empfängt als Eingangssignal Sensorwerte von einem Sensor 18 des Kraftfahrzeugs. Die Sensorwerte werden in der ersten Elektronik-Komponente 16 vorverarbeitet, beispielsweise gefiltert. Unter Verwendung der Software-Komponenten 14 werden die Sensorwerte ausgewertet, beispielsweise umgewandelt, und ein entsprechendes durch die zweite Elektronik-Komponente 16 erzeugtes Ansteuerungssignal als Ausgangssignal des Funktionsblocks 12 an einen Aktuator 20 ausgegeben. Die zweite Elektronik-Komponente 16 ist eine Leistungselektronik zur Regelung des Aktuators 20. Der Aktuator 20 ist beispielsweise ein elektrischer Motor, der eine Bremse des Kraftfahrzeugs, eine Lenkung des Kraftfahrzeugs oder dergleichen gemäß dem Ausgangssignal des Funktionsblocks 12 betätigt.The embedded
Wie in
Der erste funktionale Pfad A-F führt über eine erste und zweite Software-Komponente 14 zu der zweiten Elektronik-Komponente 16 und von dort zum Aktuator 20. Der Pfad A-F entspricht beispielsweise einer regulären Steuerung des Aktuators 20 durch das Steuergerät in Abhängigkeit der erfassten Sensorwerte durch den Sensor 18. Die erste Software-Komponente 14 empfängt die vorverarbeiteten Sensorwerte von der ersten Elektronik-Komponente 16 (Pfad A). Die empfangenen Sensorwerte werden dann von der ersten Software-Komponente 14 ausgewertet und das Ergebnis der Auswertung an die zweite Software-Komponente 14 übergeben (Pfad B). Die zweite Software-Komponente 14 ermittelt eine zu initiierende Reaktion auf das Ergebnis der Auswertung und übergibt die Informationen über die gewünschte Reaktion an die zweite Elektronik-Komponente 16 (Pfad C). Die zweite Elektronik-Komponente 16 erstellt und übermittelt ein Ansteuerungssignal, welches den Aktuator 20 derart regelt, dass die gewünschte Reaktion umgesetzt wird, an den Aktuator 20 (Pfad F).The first functional path A-F leads via a first and
Der zweite funktionale Pfad D-F führt über eine dritte Software-Komponente 14 zu der zweiten Elektronik-Komponente 16 und von dort zum Aktuator 20. Der Pfad D-F entspricht beispielsweise einem funktionalen Sicherheitspfad, welcher bei Vorliegen von vorgegebenen Situationen, die beispielsweise anhand der Sensorwerte des Sensor 18 erkennbar sind, eine gegenwärtige Ansteuerung des Aktuators 20 verhindern soll. Die dritte Software-Komponente 14 empfängt hierzu die vorverarbeiteten Sensorwerte von der ersten Elektronik-Komponente 16 (Pfad D) und ermittelt, ob ein gegenwärtiger Sensorwertgradient einen Schwellenwert überschreitet. Ist dies der Fall, so übergibt die dritte Software-Komponente 14 ein Signal zur Deaktivierung der zweiten Elektronik-Komponente 16 an diese (Pfad E). Durch dieses Signal wird dann eine Ansteuerung des Aktuators 20 über Pfad F verhindert.The second functional path D-F leads via a
Gemäß einem ersten Verfahrensschritt 50 wird ein Software-Komponenten-Modell von den Software-Komponenten 14 basierend auf einer kombinatorischen Logik und einem logischen Speicherelement erzeugt.According to a
In einem zweiten Verfahrensschritt 52 wird ein Elektronik-Komponenten-Modell von den Elektronik-Komponenten 16 basierend auf einer weiteren kombinatorischen Logik und einem weiteren logischen Speicherelement erzeugt.In a
Gemäß einem dritten Verfahrensschritt 54 werden Ausführungszeiten von den Software-Komponenten 14 und den Elektronik-Komponenten 16 erhalten.According to a
In einem vierten Verfahrensschritt 56 erfolgt ein Erzeugen einer Hardware-Modell-Beschreibung des Funktionsblocks 12 in einer Hardware-Beschreibungssprache basierend auf den Software-Komponenten-Modellen, den Elektronik-Komponenten-Modellen und den erhaltenen Ausführungszeiten.In a
Folglich wird eine Pfadanalyse unter Verwendung der erzeugten Hardware-Modell-Beschreibung des Funktionsblocks 12 durchgeführt (Verfahrensschritt 58).Consequently, a path analysis is performed using the generated hardware model description of the functional block 12 (method step 58).
Da die Hardware-Modell-Beschreibung des Funktionsblocks 12 in einer Hardware-Beschreibungssprache vorliegt, kann unter Verwendung von an sich bekannten Werkzeugen für Timing- und Pfadanalysen, wie Synopsys Primetime® oder Design Compiler®, eine Pfadanalyse über die Gesamtsoftware inklusive der Elektronik durchgeführt werden. Anhand der Pfadanalyse wird beispielsweise überprüft, ob es einen sicherheitsrelevanten Pfad von der ersten Elektronik-Komponente 16 zu dem Aktuator 20 gibt, der den Pfad F auf Null setzt, also keine Aktuator-Aktivität, was beispielsweise einem Sicherheitszustand im Fehlerfall entspricht. Das Werkzeug für Timing- und Pfadanalysen würde im Beispiel der
Ferner lässt sich mittels der Pfadanalyse auch ermitteln, ob der Funktionsblock 12 sämtliche funktionalen Sicherheitspfade aufweist, die gemäß Spezifikation enthalten sein sollen. Stünde in der Spezifikation, dass in dem in
Da in der Hardware-Modell-Beschreibung ferner die Ausführungszeiten der Software- und Elektronik-Komponenten 14, 16 enthalten sind, kann unter Verwendung des Werkzeugs ferner überprüft werden, ob die Reaktion des Aktuators 20 innerhalb einer vorgegebenen Spezifikationszeit nach Eingang der Sensorwerte erfolgt. Beispielsweise könnte eine Reaktionszeit von 20 ms durch die Spezifikation vorgegeben sein, wenn ein gegenwärtiger Sensorwertgradient den oben beschriebenen Schwellenwert übersteigt. Somit lässt sich mittels des Werkzeugs ebenfalls verifizieren, ob die in der Spezifikation geforderten Spezifikationszeiten eingehalten werden.Since the hardware model description also contains the execution times of the software and
BezugszeichenlisteList of reference symbols
- 1010
- eingebettetes Systemembedded system
- 1212
- FunktionsblockFunction block
- 1414
- Software-KomponenteSoftware component
- 1616
- Elektronik-KomponenteElectronic component
- 1818
- Sensorsensor
- 2020
- AktuatorActuator
- 5050
- erster Verfahrensschrittfirst procedural step
- 5252
- zweiter Verfahrensschrittsecond process step
- 5454
- dritter Verfahrensschrittthird procedural step
- 5656
- vierter Verfahrensschrittfourth procedural step
- 5858
- fünfter Verfahrensschrittfifth procedural step
- 100100
- Vorrichtung zur DatenverarbeitungDevice for data processing
- 102102
- Computerprogrammcomputer program
- 104104
- computerlesbarer Datenträger computer-readable data carrier
- A - FA - F
- PfadePaths
ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED 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 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 accepts no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- US 20190324422 A1 [0007]US 20190324422 A1 [0007]
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022212057.4A DE102022212057A1 (en) | 2022-11-14 | 2022-11-14 | Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102022212057.4A DE102022212057A1 (en) | 2022-11-14 | 2022-11-14 | Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102022212057A1 true DE102022212057A1 (en) | 2024-05-16 |
Family
ID=91023673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102022212057.4A Pending DE102022212057A1 (en) | 2022-11-14 | 2022-11-14 | Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102022212057A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190324422A1 (en) | 2019-06-29 | 2019-10-24 | Intel Corporation | Functional safety controls based on soft error information |
-
2022
- 2022-11-14 DE DE102022212057.4A patent/DE102022212057A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190324422A1 (en) | 2019-06-29 | 2019-10-24 | Intel Corporation | Functional safety controls based on soft error information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2685382B1 (en) | Method and device for producing and testing a control device program | |
EP3709166B1 (en) | Method and system for secure signal manipulation for testing integrated security functionalities | |
EP3451202B1 (en) | Method for generating a model of a technical system which can be run on a test device and a test device | |
DE102019124018A1 (en) | Method for optimizing tests of control systems for automated vehicle dynamics systems | |
WO2021058223A1 (en) | Method for applying automated driving functions efficiently and in a simulated manner | |
EP3983897B1 (en) | Method for ensuring and maintaining the function of a complete safety-critical system | |
WO2018206146A2 (en) | Method for the computer-aided, automated verification of requirements | |
EP2902905B1 (en) | Method for checking the processing of software | |
DE102022212057A1 (en) | Method for analyzing functional paths for an embedded system, data processing device, computer program and computer-readable data carrier | |
DE102022212058A1 (en) | Method for checking functional paths for an embedded system, data processing device, computer program and computer-readable data carrier | |
DE10328059A1 (en) | Method and device for monitoring a distributed system | |
DE102017214610B4 (en) | Method for checking at least one vehicle function and testing device | |
EP3173928B1 (en) | Method and device for checking a component error tree | |
DE102020102996A1 (en) | Process for an integrated design for the modeling, simulation and testing of a real-time architecture within a model-based system and software development | |
EP3933593A1 (en) | Method and computer program for testing a technical system | |
WO2007065585A1 (en) | Diagnostic method and diagnostic device for the function-oriented diagnosis of a system comprising interconnected components | |
DE102013226872A1 (en) | Method for operating a control unit of a motor vehicle and control unit for a motor vehicle | |
DE102011011224A1 (en) | Control unit system | |
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 | |
DE10312557B4 (en) | Method for checking the functional safety of electronic systems of a vehicle | |
DE102010014720A1 (en) | Method for verifying code of target program used for software for automotive electronics for engine, involves comparing output test variables corresponding to each program section of target program and program code | |
DE102016120934A1 (en) | Optimized generation of total netlist and bitstream | |
DE102022208087A1 (en) | Method for checking processing of user data | |
DE102020118479A1 (en) | Method for enabling automatic evaluation of a current software security status and data processing device | |
WO2024175581A1 (en) | Method and device for visualising debug data of a complex data processing network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication |