DE102022102412A1 - Fault detection for an electronic processing circuit with an arithmetic logic unit - Google Patents

Fault detection for an electronic processing circuit with an arithmetic logic unit Download PDF

Info

Publication number
DE102022102412A1
DE102022102412A1 DE102022102412.1A DE102022102412A DE102022102412A1 DE 102022102412 A1 DE102022102412 A1 DE 102022102412A1 DE 102022102412 A DE102022102412 A DE 102022102412A DE 102022102412 A1 DE102022102412 A1 DE 102022102412A1
Authority
DE
Germany
Prior art keywords
processing circuit
electronic processing
alu
watchdog
predefined
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
Application number
DE102022102412.1A
Other languages
German (de)
Inventor
Mauricio Gruenwaldt
Jaromir Svejda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Valeo Schalter und Sensoren GmbH
Original Assignee
Valeo Schalter und Sensoren GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Valeo Schalter und Sensoren GmbH filed Critical Valeo Schalter und Sensoren GmbH
Priority to DE102022102412.1A priority Critical patent/DE102022102412A1/en
Priority to PCT/EP2023/052130 priority patent/WO2023148119A1/en
Publication of DE102022102412A1 publication Critical patent/DE102022102412A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2226Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test ALU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/83Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Ein elektronischer Verarbeitungsschaltkreis (1) weist eine arithmetisch-logischen Einheit, ALU, (7) auf, die dazu eingerichtet ist, eine vordefinierte ALU-Operation auszuführen, und ein Watchdog-Modul (8), welches dazu eingerichtet ist, einen Wert aus einem Speicherort (12) des elektronischen Verarbeitungsschaltkreises (1) auszulesen und eine vordefinierte Sicherheitsmaßnahme zu initiieren, wenn der ausgelesene Wert von einem vordefinierten Zielwert abweicht. Der elektronische Verarbeitungsschaltkreis (1) weist zumindest ein Softwaremodul auf, welches dazu eingerichtet ist, eine Ausgabe der ALU-Operation durch Ausführung einer vordefinierten Transformation in eine transformierte Ausgabe zu transformieren, wobei die transformierte Ausgabe mit dem Zielwert übereinstimmt, wenn die Ausgabe der ALU-Operation einem vordefinierten erwarteten Ergebnis der ALU-Operation entspricht, und die transformierte Ausgabe in den Speicherort (12) zu schreiben.An electronic processing circuit (1) has an arithmetic logic unit, ALU, (7) which is set up to perform a predefined ALU operation, and a watchdog module (8) which is set up to read a value from a Read location (12) of the electronic processing circuit (1) and to initiate a predefined security measure if the read value deviates from a predefined target value. The electronic processing circuit (1) has at least one software module which is set up to transform an output of the ALU operation into a transformed output by performing a predefined transformation, the transformed output agreeing with the target value if the output of the ALU operation corresponds to a predefined expected result of the ALU operation and write the transformed output to memory location (12).

Description

Die vorliegende Erfindung ist auf einen elektronischen Verarbeitungsschaltkreis gerichtet, der eine arithmetisch-logische Einheit, ALU, die dazu eingerichtet ist, eine vordefinierte ALU-Operation auszuführen, und ein Watchdog-Modul aufweist, das dazu eingerichtet ist, einen Wert aus einem Speicherort des elektronischen Verarbeitungsschaltkreises auszulesen und eine vordefinierte Sicherheitsmaßnahme zu initiieren, wenn der ausgelesene Wert von einem vordefinierten Zielwert abweicht. Die Erfindung ist des Weiteren auf ein entsprechendes Störungsdetektionsverfahren für einen elektronischen Verarbeitungsschaltkreis mit einer arithmetisch-logischen Einheit und auf ein Computerprogrammprodukt gerichtet.The present invention is directed to an electronic processing circuit comprising an arithmetic logic unit, ALU, configured to perform a predefined ALU operation, and a watchdog module configured to read a value from a memory location of the electronic Read processing circuit and to initiate a predefined safety measure if the read value deviates from a predefined target value. The invention is also directed to a corresponding fault detection method for an electronic processing circuit with an arithmetic-logic unit and to a computer program product.

ALUs können in unterschiedlichen elektronischen Verarbeitungsschaltkreisen, insbesondere in Mikrocontrollern, zum Beispiel aber nicht notwendigerweise als Teil einer zentralen Verarbeitungseinheit, CPU (englisch: „central processing unit“), benutzt werden. Während der Lebensdauer eines elektronischen Verarbeitungsschaltkreises kann die ALU Störungen unterliegen, insbesondere aufgrund von zufälligen Hardware-Störungen. Treten derartige Störungen auf, so kann es sein, dass der ordnungsgemäße Betrieb des elektronischen Verarbeitungsschaltkreises nicht mehr gewährleistet ist. Insbesondere ist es für sicherheitsrelevante Anwendungen, beispielsweise zum Steuern von Sensorsystemen in einem Fahrzeug, wünschenswert, derartige Störungen der ALU auf zuverlässige Weise detektieren zu können.ALUs can be used in various electronic processing circuits, particularly in microcontrollers, for example but not necessarily as part of a central processing unit, CPU. During the lifetime of an electronic processing circuit, the ALU can be subject to failures, particularly due to random hardware failures. If such disturbances occur, the correct operation of the electronic processing circuitry can no longer be guaranteed. In particular, for safety-relevant applications, for example for controlling sensor systems in a vehicle, it is desirable to be able to reliably detect such faults in the ALU.

Bekannte Herangehensweisen zur ALU-Störungsdetektion schließen ein Bereitstellen redundanter Hardware, insbesondere redundanter ALUs, oder ein Bereitstellen spezifischer Überwachungs-Hardware ein. Diese Herangehensweisen erhöhen die Komplexität des elektronischen Verarbeitungsschaltkreises und somit den Aufwand für Entwicklung und Herstellung des elektronischen Verarbeitungsschaltkreises, was wiederum die Bauteilkosten erhöht. Des Weiteren kann zusätzliche Hardware den erforderlichen Bauraum auf einem Schaltungsträger des elektronischen Verarbeitungsschaltkreises vergrößern.Known approaches to ALU failure detection include providing redundant hardware, particularly redundant ALUs, or providing specific monitoring hardware. These approaches increase the complexity of the electronic processing circuitry and thus the expense of designing and manufacturing the electronic processing circuitry, which in turn increases component costs. Furthermore, additional hardware can increase the space required on a circuit carrier of the electronic processing circuit.

Es ist bei eingebetteten Schaltungen, wie etwa Mikrocontroller, bekannt, einen Watchdog bereitzustellen, der als Hardware-Watchdog oder als Software-Watchdog implementiert ist, und manchmal auch als Watchdog-Zeitgeber bezeichnet wird. Während des regulären Betriebs des elektronischen Verarbeitungsschaltkreises startet dieser den Watchdog regelmäßig neu oder aktualisiert ihn, um zu verhindern, dass sein Zeitgeber abläuft. Im Störungsfall kann die Aktualisierung des Watchdogs nicht mehr ordnungsgemäß oder rechtzeitig erfolgen, was dazu führt, dass der Watchdog abläuft. In diesem Fall kann der Watchdog den elektronischen Verarbeitungsschaltkreis zum Beispiel automatisch zurücksetzen.It is known in embedded circuits such as microcontrollers to provide a watchdog, implemented as a hardware watchdog or as a software watchdog, sometimes referred to as a watchdog timer. During the regular operation of the electronic processing circuit, it periodically restarts or updates the watchdog to prevent its timer from running out. In the event of a fault, the watchdog can no longer be updated properly or in a timely manner, which means that the watchdog expires. In this case, the watchdog can, for example, automatically reset the electronic processing circuit.

Bekannte Watchdogs sind jedoch nicht dazu in der Lage, Störungen einer ALU zu detektieren, falls die ALU die erwarteten ALU-Operationen durchführt, aber ein falsches Ergebnis liefert, beispielsweise aufgrund von internen Hardware-Störungen der ALU.However, known watchdogs are not capable of detecting failures of an ALU if the ALU performs the expected ALU operations but delivers an incorrect result, for example due to internal hardware failures of the ALU.

Eine Aufgabe der vorliegenden Erfindung ist es, ein verbessertes Konzept zur Störungsdetektion eines elektronischen Verarbeitungsschaltkreises, der eine ALU und einen Watchdog enthält, bereitzustellen, welches es ermöglicht, Störungen der ALU zu detektieren, ohne zusätzliche Hardware-Komponenten zu erfordern.An object of the present invention is to provide an improved concept for fault detection of an electronic processing circuit containing an ALU and a watchdog, which makes it possible to detect faults in the ALU without requiring additional hardware components.

Diese Aufgabe wird durch den jeweiligen Gegenstand der unabhängigen Ansprüche gelöst. Weitere Ausführungen und bevorzugte Ausführungsbeispiele sind Gegenstand der abhängigen Ansprüche.This object is solved by the respective subject matter of the independent claims. Further designs and preferred embodiments are the subject matter of the dependent claims.

Die Erfindung beruht auf dem Gedanken, eine Transformation bereitzustellen, die eine Ausgabe der ALU in einen Zielwert transformiert, vorausgesetzt die ALU führt eine vordefinierte ALU-Operation erwartungsgemäß aus, oder mit anderen Worten vorausgesetzt die ALU arbeitet erwartungsgemäß. Falls die ALU nicht erwartungsgemäß arbeitet, kann die Transformation einen anderen Wert ergeben. Die Ausgabe der Transformation wird in einen Speicherort geschrieben, der von dem Watchdog ausgelesen wird. Der Zielwert entspricht dem korrekten Wert zum Aktualisieren des Watchdog, oder, mit anderen Worten, der Watchdog initiiert eine Sicherheitsmaßnahme, falls der ausgelesene Wert von dem Zielwert abweicht.The invention is based on the idea of providing a transformation that transforms an output of the ALU into a target value provided the ALU performs a predefined ALU operation as expected, or in other words provided the ALU works as expected. If the ALU does not perform as expected, the transformation may yield a different value. The output of the transform is written to a memory location read by the watchdog. The target value corresponds to the correct value for updating the watchdog, or in other words the watchdog initiates a safety measure if the value read deviates from the target value.

Gemäß einem Aspekt der Erfindung wird ein elektronischer Verarbeitungsschaltkreis bereitgestellt. Der elektronische Verarbeitungsschaltkreis weist eine arithmetisch-logische Einheit, ALU (englisch: „arithmetic logical unit“) auf, die dazu eingerichtet ist, eine vordefinierte ALU-Operation auszuführen. Der elektronische Verarbeitungsschaltkreis weist des Weiteren ein Watchdog-Modul auf, welches dazu eingerichtet ist, einen Wert aus einem vordefinierten Speicherort des elektronischen Verarbeitungsschaltkreises auszulesen und eine vordefinierte Sicherheitsmaßnahme zu initiieren, wenn der ausgelesene Wert von einem vordefinierten Zielwert abweicht. Der elektronische Verarbeitungsschaltkreis weist zumindest ein Softwaremodul auf, welches dazu eingerichtet ist, eine Ausgabe der ALU-Operation durch Ausführung einer vordefinierten Transformation in eine transformierte Ausgabe zu transformieren. Dabei ist die Transformation derart konstruiert oder vordefiniert, dass die transformierte Ausgabe mit dem Zielwert übereinstimmt, wenn, insbesondere genau dann, wenn die Ausgabe der ALU-Operation einem vordefinierten erwarteten Ergebnis der ALU-Operation entspricht. Das zumindest eine Software-Modul ist dazu eingerichtet, die transformierte Ausgabe in einen Speicherort zu schreiben.According to one aspect of the invention, an electronic processing circuit is provided. The electronic processing circuitry includes an arithmetic logical unit, ALU, configured to perform a predefined ALU operation. The electronic processing circuit also has a watchdog module, which is set up to read a value from a predefined storage location of the electronic processing circuit and to initiate a predefined safety measure if the value read deviates from a predefined target value. The electronic processing circuit has at least one software module which is set up to output the ALU operation by executing a predefined th transformation into a transformed output. In this case, the transformation is constructed or predefined in such a way that the transformed output corresponds to the target value if, in particular if and only if the output of the ALU operation corresponds to a predefined expected result of the ALU operation. The at least one software module is configured to write the transformed output to a storage location.

Insbesondere kann das Watchdog-Modul den Wert in zyklischer Weise aus dem Speicherort auslesen. Wenn die transformierte Ausgabe in den Speicherort geschrieben wird, liest folglich der Watchdog die transformierte Ausgabe im nächsten Auslesezyklus aus dem Speicherort aus. Wenn dann die ausgelesene transformierte Ausgabe gleich dem Zielwert ist, initiiert das Watchdog-Modul die Sicherheitsmaßnahme nicht, sondern kann vielmehr einen Watchdog-Zeitgeber aktualisieren. Wenn andererseits die ausgelesene transformierte Ausgabe von dem Zielwert abweicht, initiiert das Watchdog-Modul die Sicherheitsmaßnahme, erzeugt zum Beispiel ein Zurücksetzungs- oder Neustartsignal, welches den elektronischen Verarbeitungsschaltkreis dazu veranlasst, sich selbst neu zu starten. Es können jedoch auch andere oder zusätzliche Sicherheitsmaßnahmen initiiert werden, indem zum Beispiel externe elektronische Vorrichtungen entsprechend informiert werden.In particular, the watchdog module can read the value from the storage location in a cyclic manner. Consequently, when the transformed output is written to the memory location, the watchdog reads the transformed output from the memory location in the next read cycle. Then, when the transformed output read is equal to the target value, the watchdog module does not initiate the safety measure, but rather may update a watchdog timer. On the other hand, if the read out transformed output deviates from the target value, the watchdog module initiates the safety measure, e.g. generates a reset or restart signal, which causes the electronic processing circuitry to restart itself. However, other or additional security measures can also be initiated, for example by informing external electronic devices accordingly.

Erfindungsgemäß wird der Watchdog auf neuartige Weise benutzt, indem die korrekte Ausgabe der ALU-Operation überprüft wird, was nicht Teil des Standardbetriebs eines Watchdogs ist. Zusätzlich kann der Watchdog auch auf allgemein bekannte Weise arbeiten und somit die Sicherheitsmaßnahme initiieren, falls der ausgelesene Wert nicht mit dem Zielwert übereinstimmt oder andere vordefinierte Bedingungen zum Aktualisieren des Watchdog-Zeitgebers nicht erfüllt werden.According to the invention, the watchdog is used in a novel way by checking the correct output of the ALU operation, which is not part of the standard operation of a watchdog. In addition, the watchdog can also operate in a well-known manner, thus initiating the safety measure if the read value does not match the target value or other predefined conditions for updating the watchdog timer are not met.

Zum Beispiel können die beschriebenen erfindungsgemäßen Schritte, nämlich Transformieren der Ausgabe der ALU-Operation und Schreiben der transformierten Ausgabe in den Speicherort, mit einer Rate ausgeführt werden, die kleiner ist als eine entsprechende Zyklusfrequenz des Watchdog-Zyklus. Sie können zum Beispiel einmal pro störungstolerantem Zeitintervall, FTTI (englisch: „fault tolerant time interval“) ausgeführt werden.For example, the inventive steps described, namely transforming the output of the ALU operation and writing the transformed output to the memory location, may be performed at a rate less than a corresponding cycle frequency of the watchdog cycle. For example, they can be executed once per fault tolerant time interval, FTTI.

Wenn die transformierte Ausgabe in den Speicherort geschrieben wird, kann der Vorgang des Schreibens in den Speicherort gemäß der normalen Watchdog-Operation unterbrochen werden oder derart zeitlich abgestimmt sein, dass der Watchdog tatsächlich die transformierte Ausgabe ausliest, die als ein Ergebnis der Transformation der ALU-Ausgabe geschrieben ist.When the transformed output is written to the memory location, the operation of writing to the memory location may be interrupted according to normal watchdog operation or timed such that the watchdog actually reads the transformed output generated as a result of transforming the ALU output is written.

Durch derartige Benutzung des Watchdogs kann der korrekte Betrieb der ALU, insbesondere zyklisch, überwacht werden, wobei eine Zyklusperiode durch eine Watchdog-Zeitgeber-Aktualisierungsperiode gegeben ist, ohne dass zusätzliche Hardware-Komponenten erforderlich sind, da der Watchdog für seinen normalen Zweck ohnehin vorgesehen ist. Des Weiteren ist keine komplexe Software-Entwicklung notwendig, um den neuartigen Gebrauch des Watchdog in der beschriebenen Weise auszuführen.By using the watchdog in this way, the correct operation of the ALU can be monitored, in particular cyclically, where a cycle period is given by a watchdog timer update period, without the need for additional hardware components, since the watchdog is intended for its normal purpose anyway . Furthermore, no complex software development is necessary to carry out the novel use of the watchdog in the manner described.

Die ALU ist ein Hardware-Schaltkreis, gewöhnlich ein digitaler Schaltkreis, wobei aber auch analoge oder hybride Schaltkreise möglich sind, der dazu ausgestaltet ist, arithmetische und/oder bitweise Operationen mit ganzzahligen Binärzahlen durchzuführen. Derartige Operationen werden hier und im Folgenden als ALU-Operationen bezeichnet. Mit anderen Worten kann die vordefinierte ALU-Operation, die zum Erzeugen der Ausgabe und Transformieren der Ausgabe, die in den Speicherort geschrieben ist, benutzt wird, eine reguläre ALU-Operation sein, die für den regulären Betrieb des elektronischen Verarbeitungsschaltkreises erforderlich ist.The ALU is a hardware circuit, usually digital but analog or hybrid circuits are possible, configured to perform arithmetic and/or bitwise operations on binary integers. Such operations are referred to here and below as ALU operations. In other words, the predefined ALU operation used to generate the output and transform the output written to the memory location may be a regular ALU operation required for the regular operation of the electronic processing circuitry.

Insbesondere kann die Transformation in Software als ein Teil des zumindest einen Softwaremoduls kodiert sein. Zum Beispiel kann für jede einer Vielzahl von relevanten ALU-Operationen, eine jeweilige Transformation konstruiert und vordefiniert sein oder mit anderen Worten in dem zumindest einen Softwaremodul kodiert sein. Die beschriebenen Schritte des Erzeugens der Ausgabe der ALU-Operationen, ihres Transformierens und des Schreibens der transformierten Ausgabe in den Speicherort können analog für alle der Vielzahl der ALU-Operationen ausgeführt werden. Zum Beispiel können die entsprechenden Schritte derart ausgeführt werden, dass der Watchdog die unterschiedlichen transformierten Ausgaben bei verschiedenen Watchdog-Zyklen ausliest.In particular, the transformation can be encoded in software as part of the at least one software module. For example, for each of a plurality of relevant ALU operations, a respective transformation may be constructed and predefined, or in other words coded in the at least one software module. The described steps of generating the output of the ALU operations, transforming them, and writing the transformed output to the memory location can be performed analogously for all of the plurality of ALU operations. For example, the corresponding steps can be performed such that the watchdog reads the different transformed outputs at different watchdog cycles.

Unter einem Software-Modul kann ein Teil von Softwarecode verstanden werden, der funktional in einer Einheit verbunden und kombiniert ist. Ein Softwaremodul kann mehrere Verarbeitungsschritte und/oder Datenstrukturen aufweisen oder implementieren.A software module can be understood as a piece of software code that is functionally connected and combined into one unit. A software module may have or implement multiple processing steps and/or data structures.

Der Speicherort ist insbesondere ein Speicherort des Watchdog-Moduls, zum Beispiel ein Eingangsregister des Watchdog-Moduls. Das Eingangsregister kann in dem Sinne vordefiniert sein, dass das Watchdog-Modul nur dann aktualisiert wird, wenn der Zielwert aus dem korrekten Eingangsregister ausgelesen wird.The storage location is in particular a storage location of the watchdog module, for example an input register of the watchdog module. The input register can be predefined in the sense that the watchdog module is only updated when when the target value is read from the correct input register.

Vorzugsweise wird das Watchdog-Modul als ein Hardware-Watchdog ausgeführt, derart dass die Hardware des Watchdog-Moduls vollständig von der ALU, insbesondere von der ALU und von allen weiteren Hardware-Komponenten des elektronischen Verarbeitungsschaltkreises, separiert ist.The watchdog module is preferably implemented as a hardware watchdog such that the hardware of the watchdog module is completely separated from the ALU, in particular from the ALU and from all other hardware components of the electronic processing circuit.

Das Watchdog-Modul kann als ein Zeitablauf-Watchdog oder als ein Fenster-Watchdog ausgestaltet sein.The watchdog module can be designed as a timeout watchdog or as a window watchdog.

Gemäß einigen Ausführungen weist der elektronische Verarbeitungsschaltkreis zumindest eine Hardwareeinheit auf, insbesondere zusätzlich zu der ALU, und das zumindest eine Softwaremodul ist dazu eingerichtet, im Fall eines störungsfreien Betriebs der zumindest einen Hardwareeinheit den vordefinierten Zielwert in den Speicherort zu schreiben.According to some implementations, the electronic processing circuit has at least one hardware unit, in particular in addition to the ALU, and the at least one software module is configured to write the predefined target value to the memory location in the event of trouble-free operation of the at least one hardware unit.

Insbesondere kann das zumindest eine Softwaremodul dazu in der Lage sein zu bestimmen, ob der störungsfreie Betrieb der zumindest einen Hardwareeinheit gegeben ist und, wenn dies der Fall ist, insbesondere genau dann, wenn dies der Fall ist, den Zielwert zu schreiben. Das entspricht einem normalen Watchdog-Betrieb, der zum Beispiel dazu benutzt werden kann, eine zyklische Aktualisierung nach dem Prinzip eines Zeitablauf-Watchdogs oder eines Fenster-Watchdogs, zusätzlich zu der erfindungsgemäßen neuartigen Benutzung des Watchdog-Moduls, durchzuführen.In particular, the at least one software module can be able to determine whether the at least one hardware unit is operating correctly and, if this is the case, in particular exactly when this is the case, to write the target value. This corresponds to normal watchdog operation, which can be used, for example, to carry out a cyclic update according to the principle of a timeout watchdog or a window watchdog, in addition to the novel use of the watchdog module according to the invention.

Die zumindest eine Hardware-Einheit kann zum Beispiel eine Steuereinheit, CU (englisch: „control unit“), und/oder eine Ausführungseinheit, EU (englisch: „execution unit“), des elektronischen Verarbeitungsschaltkreis, zum Beispiel einer CPU des elektronischen Verarbeitungsschaltkreises, und/oder weitere Hardware-Komponenten aufweisen.The at least one hardware unit can be, for example, a control unit, CU, and/or an execution unit, EU, of the electronic processing circuit, for example a CPU of the electronic processing circuit, and/or other hardware components.

Gemäß einigen Ausführungen ist das Watchdog-Modul dazu eingerichtet, die Sicherheitsmaßnahme zu initiieren, wenn ein Watchdog-Zeitgeber des Watchdog-Moduls abläuft, insbesondere falls und wenn der Watchdog-Zeitgeber abläuft. Das Watchdog-Modul ist dazu eingerichtet, den Watchdog-Zeitgeber nur dann zurückzusetzen, wenn der ausgelesene Wert dem Zielwert entspricht, oder mit anderen Worten nur dann, wenn der ausgelesene Wert gleich dem Zielwert ist.According to some implementations, the watchdog module is configured to initiate the security measure when a watchdog timer of the watchdog module expires, particularly if and when the watchdog timer expires. The watchdog module is configured to reset the watchdog timer only when the value read equals the target value, or in other words only when the value read equals the target value.

Das Übereinstimmen des ausgelesenen Werts mit dem Zielwert ist eine notwendige Bedingung für das Watchdog-Modul, den Watchdog-Zeitgeber zurückzusetzen. Es kann jedoch auch sein, dass dies keine ausreichende Bedingung ist. In manchen Ausführungen kann es zum Beispiel sein, dass zusätzliche Voraussetzungen erfüllt sein müssen, um das Watchdog-Modul dazu zu veranlassen, den Watchdog-Zeitgeber zurückzusetzen. Zu den zusätzlichen Voraussetzungen kann es zum Beispiel gehören, dass der Speicherort ein korrekt vordefinierter Speicherort ist und/oder innerhalb eines bestimmten vordefinierten Zeitfensters geschrieben worden ist.Matching the read value with the target value is a necessary condition for the watchdog module to reset the watchdog timer. However, it may also be the case that this is not a sufficient condition. For example, in some implementations, additional conditions may need to be met to cause the watchdog module to reset the watchdog timer. The additional requirements may include, for example, that the memory location is a correctly predefined memory location and/or was written within a certain predefined time window.

Gemäß einigen Ausführungen ist das Watchdog-Modul dazu eingerichtet, ein Zurücksetzungssignal zum Zurücksetzen des elektronischen Verarbeitungsschaltkreises zu erzeugen und/oder ein Informationssignal für eine externe elektronische Komponente zu erzeugen, um die Sicherheitsmaßnahme zu initiieren.According to some implementations, the watchdog module is configured to generate a reset signal for resetting the electronic processing circuitry and/or to generate an information signal for an external electronic component to initiate the security measure.

Mit anderen Worten beinhaltet das Initiieren der Sicherheitsmaßnahme ein Erzeugen des Zurücksetzungssignals und/oder ein Erzeugen des Informationssignals.In other words, initiating the security measure includes generating the reset signal and/or generating the information signal.

Das Zurücksetzungssignal kann den elektronischen Verarbeitungsschaltkreis unmittelbar zum Zurücksetzen veranlassen oder das zumindest eine Softwaremodul oder eine andere spezifische Komponente des elektronischen Verarbeitungsschaltkreises kann das Zurücksetzen des elektronischen Verarbeitungsschaltkreises abhängig von dem Zurücksetzungssignal initiieren.The reset signal may cause the electronic processing circuitry to reset immediately, or the at least one software module or other specific component of the electronic processing circuitry may initiate resetting of the electronic processing circuitry in response to the reset signal.

Die externe elektronische Komponente ist zu dem elektronischen Verarbeitungsschaltkreis extern oder mit anderen Worten nicht Teil des elektronischen Verarbeitungsschaltkreises. Die externe elektronische Komponente kann zum Beispiel dazu eingerichtet sein, den elektronischen Verarbeitungsschaltkreis abhängig von dem Informationssignal zurückzusetzen, und/oder kann dazu eingerichtet sein, weitere Sicherheitsmaßnahmen zu initiieren, zum Beispiel um einen sicheren Zustand des elektronischen Verarbeitungsschaltkreises oder eines Geräts oder einer Maschine zu erreichen, die den elektronischen Verarbeitungsschaltkreis aufweist, wie etwa ein Kraftfahrzeug oder eine elektronische Steuereinheit, ECU (englisch: „electronic control unit“), des Kraftfahrzeugs.The external electronic component is external to the electronic processing circuitry, or in other words not part of the electronic processing circuitry. The external electronic component can be set up, for example, to reset the electronic processing circuitry depending on the information signal and/or can be set up to initiate further security measures, for example to achieve a safe state of the electronic processing circuitry or a device or a machine , which has the electronic processing circuit, such as a motor vehicle or an electronic control unit, ECU (English: "electronic control unit"), of the motor vehicle.

Mit anderen Worten kann der elektronische Verarbeitungsschaltkreis zum Beispiel in Reaktion auf die Feststellung zurückgesetzt werden, dass der ausgelesene transformierte Wert von dem Zielwert abweicht. Falls die Ursache für diese Abweichung ein vorübergehender Fehler ist, kann er beispielsweise durch das Zurücksetzen behoben werden. Andernfalls kann der elektronische Verarbeitungsschaltkreis zum Beispiel wiederholt zurückgesetzt und somit vom Aussenden fehlerhafter Informationen an die anderen Komponenten abgehalten werden. Auf diese Weise kann ein sicherer Zustand des elektronischen Verarbeitungsschaltkreises realisiert werden.In other words, the electronic processing circuitry can be reset, for example, in response to determining that the transformed value read differs from the target value. If the cause of this discrepancy is a transient error, it can be fixed, for example, by resetting. Otherwise, the electronic processing circuitry may be repeatedly reset, for example, preventing erroneous information from being sent to the other components the. In this way, a safe state of the electronic processing circuit can be realized.

Gemäß einigen Ausführungen ist das zumindest eine Softwaremodul dazu eingerichtet, eine oder mehrere Exklusiv-Oder-Operationen, die auch als XOR-Operationen bezeichnet werden, und/oder eine oder mehrere logische Verschiebeoperationen und/oder eine oder mehrere Permutationsoperationen, auf die Ausgabe der ALU-Operation anzuwenden, um die Transformation auszuführen.According to some implementations, the at least one software module is configured to perform one or more exclusive OR operations, also referred to as XOR operations, and/or one or more logical shift operations and/or one or more permutation operations, on the output of the ALU -Apply operation to perform the transformation.

Mit anderen Worten kann die vordefinierte Transformation eine vordefinierte Sequenz von Operationen einschließlich von XOR-Operationen, logischen Verschiebeoperationen und/oder Permutationsoperationen aufweisen oder aus diesen bestehen.In other words, the predefined transformation may include or consist of a predefined sequence of operations including XOR operations, logical shift operations, and/or permutation operations.

Der genaue Inhalt und die Reihenfolge der Sequenz von Operationen werden zum Beispiel während einer Entwicklungsphase des elektronischen Verarbeitungsschaltkreises für jede der relevanten ALU-Operationen bestimmt und werden in dem zumindest einen Softwaremodul implementiert.The exact content and the order of the sequence of operations are determined, for example during a development phase of the electronic processing circuitry, for each of the relevant ALU operations and are implemented in the at least one software module.

Auf diese Weise kann es erreicht werden, dass alle relevanten ALU-Operationen einer entsprechenden Transformation zugewiesen werden und die verschiedenen Transformationen im Fall eines korrekten Betriebs der ALU für die jeweilige ALU-Operation stets denselben Zielwert ausgeben.In this way it can be achieved that all relevant ALU operations are assigned to a corresponding transformation and the various transformations always output the same target value for the respective ALU operation in the case of correct operation of the ALU.

Gemäß einigen Ausführungen entspricht der Speicherort einem vordefinierten Eingangsregister, zum Beispiel einem Zeitgeber-Eingangsregister, des Watchdog-Moduls.According to some implementations, the memory location corresponds to a predefined input register, for example a timer input register, of the watchdog module.

Das zumindest eine Softwaremodul ist zum Beispiel dazu eingerichtet, eine Länge der Ausgabe der ALU-Operation an eine Länge des Eingangsregisters anzupassen, um die Transformation auszuführen.The at least one software module is set up, for example, to adapt a length of the output of the ALU operation to a length of the input register in order to carry out the transformation.

Die Länge der Ausgabe und des Eingangsregisters können insbesondere als jeweilige Bit-Längen betrachtet werden. Zum Beispiel kann die Transformation einen oder mehrere spezifische Schritte zum Anpassen der Länge beinhalten und/oder die logischen Operationen, insbesondere XOR-Operationen und/oder die logischen Verschiebeoperationen und/oder die Permutationsoperationen, können die Längenanpassung zumindest teilweise veranlassen.In particular, the length of the output and input registers can be viewed as respective bit lengths. For example, the transformation may include one or more specific length adjustment steps and/or the logical operations, in particular XOR operations and/or the logical shift operations and/or the permutation operations, may at least partially cause the length adjustment.

Auf diese Weise kann die Störungsdetektion in dem elektronischen Verarbeitungsschaltkreis auch in dem Fall erreicht werden, dass die ursprüngliche Länge der Ausgabe der ALU-Operation von der Länge des Eingangsregisters abweicht, welches dazu benutzt wird, den Watchdog-Zeitgeber zu aktualisieren.In this way, failure detection in the electronic processing circuitry can be achieved even in the event that the original length of the output of the ALU operation differs from the length of the input register used to update the watchdog timer.

Gemäß einigen Ausführungen weicht die transformierte Ausgabe von dem Zielwert ab, wenn die Ausgabe der ALU-Operation von dem erwarteten Ergebnis der ALU-Operation abweicht, weicht insbesondere von dem Zielwert genau dann ab, wenn die Ausgabe der ALU-Operation von dem erwarteten Ergebnis der ALU-Operation abweicht. Auf diese Weise können falsch positive Detektionen vermieden werden.According to some implementations, the transformed output differs from the target value when the output of the ALU operation differs from the expected result of the ALU operation, specifically differs from the target value precisely when the output of the ALU operation differs from the expected result of the ALU operation differs. In this way, false positive detections can be avoided.

Bei bevorzugten Ausführungen ist der elektronische Verarbeitungsschaltkreis als ein Mikrocontroller ausgestaltet.In preferred embodiments, the electronic processing circuitry is implemented as a microcontroller.

Mikrocontroller haben gewöhnlich Watchdog-Module als Standardkomponenten integriert. Die Erfindung ist somit besonders vorteilhaft für Mikrocontroller. Es können jedoch auch andere elektronische Verarbeitungsschaltkreise, Mikroprozessoren oder andere Einchipsysteme, SoC (englisch: „system on a chip“) in beschriebener Weise von der Erfindung profitieren.Microcontrollers usually have built-in watchdog modules as standard components. The invention is thus particularly advantageous for microcontrollers. However, other electronic processing circuits, microprocessors or other single-chip systems, SoC (English: “system on a chip”) can also benefit from the invention in the manner described.

Gemäß einigen Ausführungen weist der elektronische Verarbeitungsschaltkreis eine CPU auf und die CPU weist die ALU auf.According to some implementations, the electronic processing circuitry includes a CPU and the CPU includes the ALU.

Gemäß einem weiteren Aspekt der Erfindung wird eine elektronische Steuereinheit, ECU, für ein Fahrzeug bereitgestellt, wobei die ECU einen erfindungsgemäßen elektronischen Verarbeitungsschaltkreis aufweist.According to a further aspect of the invention there is provided an electronic control unit, ECU, for a vehicle, the ECU comprising an electronic processing circuit according to the invention.

Die ECU kann zum Beispiel eine ECU zum Steuern eines Sensors des Fahrzeugs sein, zum Beispiel eines Regen- und/oder Lichtsensors, oder eine Kamera oder einen Ultraschallsensor oder einen Radarsensor des Fahrzeugs.The ECU can for example be an ECU for controlling a sensor of the vehicle, for example a rain and/or light sensor, or a camera or an ultrasonic sensor or a radar sensor of the vehicle.

Gemäß einem weiteren Aspekt der Erfindung wird ein Störungsdetektionsverfahren für einen elektronischen Verarbeitungsschaltkreis bereitgestellt, der eine arithmetisch-logische Einheit, ALU, aufweist. Eine vordefinierte ALU-Operation wird von der ALU ausgeführt und eine Ausgabe der ALU-Operation wird in eine transformierte Ausgabe transformiert, indem eine vordefinierte Transformation ausgeführt wird, insbesondere von zumindest einem Softwaremodul des elektronischen Verarbeitungsschaltkreises. Dabei stimmt die transformierte Ausgabe mit dem vordefinierten Zielwert überein, wenn die Ausgabe der ALU-Operation einem vordefinierten erwarteten Ergebnis der ALU-Operation entspricht. Die transformierte Ausgabe wird in einen Speicherort des elektronischen Verarbeitungsschaltkreises, insbesondere eines Watchdog-Moduls des elektronischen Verarbeitungsschaltkreises, geschrieben, zum Beispiel mittels des zumindest einen Softwaremoduls. Die transformierte Ausgabe wird aus dem Speicherort ausgelesen nachdem sie von dem Watchdog-Modul in den Speicherort geschrieben worden ist. Eine vordefinierte Sicherheitsmaßnahme wird von dem Watchdog-Modul initiiert, wenn die ausgelesene transformierte Ausgabe von dem Zielwert abweicht.According to another aspect of the invention, there is provided a fault detection method for an electronic processing circuit having an arithmetic logic unit, ALU. A predefined ALU operation is performed by the ALU and an output of the ALU operation is transformed into a transformed output by performing a predefined transformation, in particular by at least one software module of the electronic processing circuit. The transformed output matches the predefined target value if the output of the ALU operation matches a predefined expected result of the ALU operation. The transformed output is stored in a memory location of the electronic processing circuit, in particular a watchdog module of the electronic processing circuit, written, for example by means of the at least one software module. The transformed output is read from the memory location after being written to the memory location by the watchdog module. A predefined safety measure is initiated by the watchdog module if the transformed output read deviates from the target value.

Weitere Ausführungen des erfindungsgemäßen Störungsdetektionsverfahrens ergeben sich unmittelbar aus den verschiedenen Ausführungsformen des erfindungsgemäßen elektronischen Verarbeitungsschaltkreises und umgekehrt. Insbesondere lassen sich einzelne Merkmale und entsprechende Erklärungen, die verschiedene Ausführungen des erfindungsgemäßen elektronischen Verarbeitungsschaltkreises betreffen, analog auf entsprechende Ausführungen des erfindungsgemäßen Störungsdetektionsverfahrens übertragen. Insbesondere ist der erfindungsgemäße elektronische Verarbeitungsschaltkreis dazu ausgestaltet oder programmiert, das erfindungsgemäße Störungsdetektionsverfahren auszuführen. Insbesondere führt der elektronische Verarbeitungsschaltkreis das erfindungsgemäße Störungsdetektionsverfahren aus.Further embodiments of the fault detection method according to the invention result directly from the various embodiments of the electronic processing circuit according to the invention and vice versa. In particular, individual features and corresponding explanations relating to different versions of the electronic processing circuit according to the invention can be transferred analogously to corresponding versions of the fault detection method according to the invention. In particular, the electronic processing circuit according to the invention is designed or programmed to carry out the fault detection method according to the invention. In particular, the electronic processing circuit carries out the fault detection method according to the invention.

Gemäß einem weiteren Aspekt der Erfindung wird ein Computerprogramm, welches Befehle beinhaltet, bereitgestellt. Wenn die Befehle von einem erfindungsgemäßen elektronischen Verarbeitungsschaltkreis, insbesondere von dem zumindest einen Softwaremodul des elektronischen Verarbeitungsschaltkreises, ausgeführt werden, veranlassen die Befehle den elektronischen Verarbeitungsschaltkreis dazu, ein erfindungsgemäßes Störungsdetektionsverfahren auszuführen.According to another aspect of the invention, a computer program including instructions is provided. If the commands are executed by an electronic processing circuit according to the invention, in particular by the at least one software module of the electronic processing circuit, the commands cause the electronic processing circuit to execute a fault detection method according to the invention.

Gemäß einem weiteren Aspekt der Erfindung wird ein computerlesbares Speichergerät bereitgestellt, das ein erfindungsgemäßes Computerprogramm speichert.According to a further aspect of the invention, there is provided a computer-readable storage device storing a computer program according to the invention.

Das Computerprogramm und das computerlesbare Speichergerät können als jeweilige Computerprogrammprodukte, die die Befehle beinhalten, betrachtet werden.The computer program and the computer-readable storage device can be viewed as respective computer program products that include the instructions.

Unter einem elektronischen Verarbeitungsschaltkreis kann insbesondere eine Datenverarbeitungsvorrichtung verstanden werden und er kann somit Daten zur Durchführung von Rechenoperationen verarbeiten. Darunter fallen auch Operationen, um indizierte Zugriffe auf eine Datenstruktur, beispielsweise eine Umsetzungstabelle, LUT (englisch: „look-up table“), durchzuführen.An electronic processing circuit can be understood in particular as a data processing device and it can therefore process data for carrying out arithmetic operations. This also includes operations to perform indexed accesses to a data structure, for example a look-up table (LUT).

Der elektronische Verarbeitungsschaltkreis kann insbesondere einen oder mehrere Mikrocontroller und/oder einen oder mehrere integrierte Schaltkreise, beispielsweise eine oder mehrere anwendungsspezifische integrierte Schaltungen, ASIC (englisch: „application-specific integrated circuit“), eines oder mehrere feldprogrammierbare Gate Arrays, FPGA, und/oder eines oder mehrere Einchipsysteme, SoC (englisch: „system on a chip“), enthalten oder diese können als solche implementiert sein. Der elektronische Verarbeitungsschaltkreis kann auch einen oder mehrere Mikroprozessoren, eine oder mehrere zentrale Prozessoreinheiten, CPU (englisch: „central processing unit“), eine oder mehrere Grafikprozessoreinheiten, GPU (englisch: „graphics processing unit“) und/oder einen oder mehrere Signalprozessoren, insbesondere einen oder mehrere digitale Signalprozessoren, DSP, enthalten.The electronic processing circuit can in particular include one or more microcontrollers and/or one or more integrated circuits, for example one or more application-specific integrated circuits, ASIC, one or more field-programmable gate arrays, FPGA, and/or or one or more single-chip systems, SoC (English: "system on a chip"), included or they can be implemented as such. The electronic processing circuit may also include one or more microprocessors, one or more central processing units (CPU), one or more graphics processing units (GPU) and/or one or more signal processors, in particular one or more digital signal processors, DSP, included.

Bei verschiedenen Ausführungsformen enthält der elektronische Verarbeitungsschaltkreis eine oder mehrere Hardware- und/oder Softwareschnittstellen und/oder eine oder mehrere Speichereinheiten. Eine Speichereinheit kann als flüchtiger Datenspeicher, beispielsweise als dynamischer Speicher mit wahlfreiem Zugriff, DRAM (englisch: „dynamic random access memory“) oder statischer Speicher mit wahlfreiem Zugriff, SRAM (englisch: „static random access memory“), oder als nicht-flüchtiger Datenspeicher, beispielsweise als Festwertspeicher, ROM (englisch: „read-only memory“), als programmierbarer Festwertspeicher, PROM (englisch: „programmable read-only memory“), als löschbarer Festwertspeicher, EPROM (englisch: „erasable read-only memory“), als elektrisch löschbarer Festwertspeicher, EEPROM (englisch: „electrically erasable read-only memory“), als Flash-Speicher oder Flash-EEPROM, als ferroelektrischer Speicher mit wahlfreiem Zugriff, FRAM (englisch: „ferroelectric random access memory“), als magnetoresistiver Speicher mit wahlfreiem Zugriff, MRAM (englisch: „magnetoresistive random access memory“) oder als Phasenänderungsspeicher mit wahlfreiem Zugriff, PCRAM (englisch: „phase-change random access memory“), ausgestaltet sein.In various embodiments, the electronic processing circuitry includes one or more hardware and/or software interfaces and/or one or more memory devices. A memory device can be configured as volatile data storage, such as dynamic random access memory (DRAM), or static random access memory (SRAM), or non-volatile Data memory, for example as a read-only memory, ROM, as a programmable read-only memory, PROM, as an erasable read-only memory, EPROM (erasable read-only memory) ), as electrically erasable read-only memory, EEPROM (English: "electrically erasable read-only memory"), as flash memory or flash EEPROM, as ferroelectric memory with random access, FRAM (English: "ferroelectric random access memory"), as magnetoresistive memory with random access, MRAM (English: "magnetoresistive random access memory") or as phase change memory with random access, PCRAM (English: "phase-change random access memory"), be configured.

Ist es in der vorliegenden Offenbarung erwähnt, dass eine Komponente des erfindungsgemäßen elektronischen Verarbeitungsschaltkreises, insbesondere das Softwaremodul, die ALU, die zumindest eine Hardwareeinheit, das Watchdog-Modul oder die CPU dazu angepasst, eingerichtet oder ausgestaltet et cetera ist, eine bestimmte Funktion durchzuführen oder zu realisieren, eine bestimmte Wirkung zu erzielen oder einem bestimmten Zweck zu dienen, kann dies derart verstanden werden, dass die Komponente über seine prinzipielle oder theoretische Benutzbarkeit oder Eignung für diese Funktion, Wirkung oder diesen Zweck hinaus konkret und tatsächlich dazu imstande ist, die Funktion auszuführen oder zu realisieren, die Wirkung zu erzielen oder dem Zweck zu dienen durch eine entsprechende Anpassung, Programmierung, physische Ausgestaltung und so weiter.Is it mentioned in the present disclosure that a component of the electronic processing circuit according to the invention, in particular the software module, the ALU, the at least one hardware unit, the watchdog module or the CPU is adapted, set up or designed et cetera to perform a specific function or to achieve a specific effect or to serve a specific purpose, this can be understood in such a way that the component is concretely and actually capable of performing the function beyond its basic or theoretical usability or suitability for this function, effect or purpose to perform or realize the effect too achieve or serve the purpose through appropriate adaptation, programming, physical design, and so on.

Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Die oben in der Beschreibung erwähnten Merkmale und Merkmalskombinationen sowie die unten in der Figurenbeschreibung erwähnten und/oder in den Figuren gezeigten Merkmale und Merkmalskombinationen können von der Erfindung nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen umfasst sein. Insbesondere können Ausführungsformen und Merkmalskombinationen, die nicht alle Merkmale eines ursprünglich formulierten Anspruchs aufweisen, auch von der Erfindung umfasst sein. Darüber hinaus können Ausführungsformen und Merkmalskombinationen, die über die in den Rückbezügen der Ansprüche dargelegten Merkmalskombinationen hinausgehen oder von diesen abweichen, von der Erfindung umfasst sein.Further features of the invention result from the claims, the figures and the description of the figures. The features and combinations of features mentioned above in the description and the features and combinations of features mentioned below in the description of the figures and/or shown in the figures can be included in the invention not only in the combination specified in each case, but also in other combinations. In particular, embodiments and combinations of features that do not have all the features of an originally formulated claim can also be covered by the invention. In addition, embodiments and combinations of features that go beyond or deviate from the combinations of features set out in the back references of the claims can be encompassed by the invention.

Im Folgenden wird die Erfindung im Einzelnen anhand spezifischer beispielhafter Ausführungen und jeweiliger schematischer Zeichnungen erklärt. In den Zeichnungen können identische oder funktionsgleiche Elemente mit denselben Bezugszeichen bezeichnet sein. Die Beschreibung identischer oder funktionsgleicher Elemente wird nicht notwendigerweise hinsichtlich unterschiedlicher Zeichnungen wiederholt.In the following, the invention is explained in detail using specific exemplary embodiments and respective schematic drawings. In the drawings, identical or functionally equivalent elements may be denoted by the same reference numerals. The description of identical or functionally equivalent elements is not necessarily repeated with respect to different drawings.

In den Figuren zeigen

  • 1 schematisch ein Kraftfahrzeug, welches eine beispielhafte Ausführung einer erfindungsgemäßen ECU aufweist;
  • 2 ein schematisches Blockdiagramm einer beispielhaften Ausführung eines erfindungsgemäßen elektronischen Verarbeitungsschaltkreises; und
  • 3 ein Flussdiagramm, welches eine beispielhafte Ausführung eines erfindungsgemäßen Störungsdetektionsverfahrens veranschaulicht.
Show in the figures
  • 1 schematically a motor vehicle which has an exemplary embodiment of an ECU according to the invention;
  • 2 12 is a schematic block diagram of an exemplary embodiment of an electronic processing circuit according to the invention; and
  • 3 FIG. 12 is a flowchart that illustrates an exemplary embodiment of a fault detection method according to the invention.

In 1 ist ein Kraftfahrzeug 4 gezeigt, welches eine ECU 2 gemäß einer beispielhaften Ausführung der Erfindung aufweist und zum Beispiel einen Regen-/Lichtsensor 3 oder einen anderen Sensor, der mit der ECU 2 verbunden ist und/oder von dieser gesteuert wird. Die ECU 2 weist eine beispielhafte Ausführung eines erfindungsgemäßen elektronischen Verarbeitungsschaltkreises 1 auf. Alternativ kann der Regen-/Lichtsensor 3 den elektronischen Verarbeitungsschaltkreis 1 aufweisen.In 1 a motor vehicle 4 is shown having an ECU 2 according to an exemplary embodiment of the invention and for example a rain/light sensor 3 or other sensor connected to the ECU 2 and/or controlled by it. The ECU 2 has an exemplary embodiment of an electronic processing circuit 1 according to the invention. Alternatively, the rain/light sensor 3 may include the electronic processing circuit 1.

2 zeigt ein schematisches Blockdiagramm eines elektronischen Verarbeitungsschaltkreises 1 gemäß einer beispielhaften Ausführung der Erfindung, wobei der elektronische Verarbeitungsschaltkreis 1 zum Beispiel in der ECU 2 von 1 benutzt werden kann. 2 1 shows a schematic block diagram of an electronic processing circuit 1 according to an exemplary embodiment of the invention, the electronic processing circuit 1 being, for example, in the ECU 2 of FIG 1 can be used.

Der elektronische Verarbeitungsschaltkreis 1 weist eine arithmetisch-logische Einheit, ALU, 7 auf, die dazu eingerichtet ist, eine ALU-Operation auszuführen. Der elektronische Verarbeitungsschaltkreis 1 weist des Weiteren ein Watchdog-Modul 8, zum Beispiel einen Hardware-Watchdog, auf, der dazu eingerichtet ist, einen Wert aus einem Eingangsregister 12 des elektronischen Verarbeitungsschaltkreises 1, insbesondere des Watchdog-Moduls 8, auszulesen. Das Watchdog-Modul 8 kann bestimmen, ob der ausgelesene Wert von einem vordefinierten Zielwert abweicht, und ein Zurücksetzungssignal erzeugen, welches eine Zurücksetzung des elektronischen Verarbeitungsschaltkreises 1 veranlasst, wenn der ausgelesene Wert von dem vordefinierten Zielwert abweicht. Andernfalls kann das Watchdog-Modul 8 einen Watchdog-Zeitgeber des Watchdog-Moduls 8 derart aktualisieren, dass das Zurücksetzungssignal in diesem Fall nicht erzeugt wird.The electronic processing circuit 1 comprises an arithmetic logic unit, ALU, 7 arranged to perform an ALU operation. The electronic processing circuit 1 also has a watchdog module 8, for example a hardware watchdog, which is set up to read a value from an input register 12 of the electronic processing circuit 1, in particular the watchdog module 8. The watchdog module 8 can determine whether the value read deviates from a predefined target value and generate a reset signal which causes a reset of the electronic processing circuit 1 if the value read deviates from the predefined target value. Otherwise, the watchdog module 8 can update a watchdog timer of the watchdog module 8 in such a way that the reset signal is not generated in this case.

Alternativ oder zusätzlich zum Erzeugen des Zurücksetzungssignals kann das Watchdog-Modul 8 eine oder mehrere weitere Sicherheitsmaßnahmen initiieren, falls der ausgelesene Wert von dem vordefinierten Zielwert abweicht.As an alternative or in addition to generating the reset signal, the watchdog module 8 can initiate one or more further security measures if the value read deviates from the predefined target value.

Zum Beispiel kann das Watchdog-Modul 8 das Eingangsregister 12 in zyklischer Weise gemäß einem Watchdog-Zyklus auslesen, der durch einen Taktgenerator des Watchdog-Moduls 8 definiert ist. Insbesondere kann das Watchdog-Modul 8 zusätzlich zu der erfindungsgemäßen Benutzung des Watchdog-Moduls 8 auch eine normale Überwachung des elektronischen Verarbeitungsschaltkreises 1, wie für Watchdogs im Allgemeinen bekannt, ausführen.For example, the watchdog module 8 can read the input register 12 in a cyclic manner according to a watchdog cycle defined by a clock generator of the watchdog module 8 . In particular, in addition to the use of the watchdog module 8 according to the invention, the watchdog module 8 can also carry out normal monitoring of the electronic processing circuit 1, as is known for watchdogs in general.

Der elektronische Verarbeitungsschaltkreis 1 weist zumindest ein Softwaremodul auf, welches zum Beispiel auf einem nicht-flüchtigen Speicher 9 des elektronischen Verarbeitungsschaltkreises 1 gespeichert sein kann. Der elektronische Verarbeitungsschaltkreis 1 kann auch weitere Hardware-Module aufweisen, zu denen zum Beispiel ein flüchtiger Speicher 10, eine Steuereinheit 6, eine Ausführungseinheit (nicht gezeigt) et cetera gehören können.The electronic processing circuit 1 has at least one software module, which can be stored, for example, on a non-volatile memory 9 of the electronic processing circuit 1 . The electronic processing circuitry 1 may also include other hardware modules, which may include, for example, a volatile memory 10, a control unit 6, an execution unit (not shown), et cetera.

Der elektronische Verarbeitungsschaltkreis 1, der in manchen Ausführungen als ein Mikrocontroller ausgeführt sein kann, kann auch eine zentrale Verarbeitungseinheit, CPU, 5 aufweisen, die die ALU 7 und gegebenenfalls die Steuereinheit 6 aufweisen kann. Der elektronische Verarbeitungsschaltkreis 1 kann auch ein Bus-System 11 aufweisen, welches die CPU 5 und das Watchdog-Modul 8 zum Beispiel mit dem nicht-flüchtigen Speicher 9, dem flüchtigen Speicher 10 und/oder weiteren Hardware-Komponenten verbindet.The electronic processing circuit 1, which in some embodiments can be embodied as a microcontroller, can also have a central processing unit, CPU, 5, which can have the ALU 7 and optionally the control unit 6. The electronic processing circuit 1 can also have a bus system 11 which the CPU 5 and the watchdog module 8, for example, with the non-volatile memory 9, the volatile memory 10 and / or other hardware components.

Der elektronische Verarbeitungsschaltkreis 1 ist insbesondere dazu ausgestaltet und eingerichtet, ein erfindungsgemäßes Störungsdetektionsverfahren auszuführen. Zu diesem Zweck kann das zumindest eine Softwaremodul eine vordefinierte Transformation auf die Ausgabe einer spezifischen ALU-Operation anwenden, die dieser spezifischen Transformation zugeordnet ist, um eine transformierte Ausgabe zu erzeugen. Die Transformation ist derart ausgestaltet, dass sie ein vordefiniertes erwartetes Ergebnis der ALU-Operation in den Zielwert transformiert, was das Watchdog-Modul 8 dazu veranlasst, den Watchdog-Zeitgeber zu aktualisieren. Das zumindest eine Software-Modul schreibt auch die transformierte Ausgabe in das Eingangsregister 12. Im Falle einer Störung der ALU 7, die ein falsches Ergebnis der ALU-Operation verursacht, weicht folglich der in das Eingangsregister 12 geschriebene Wert von dem Zielwert ab, was das Watchdog-Modul 8 dazu veranlasst, das Zurücksetzungssignal zu erzeugen oder die Sicherheitsmaßnahme im nächsten Auslesezyklus zu initiieren.The electronic processing circuit 1 is designed and set up in particular to carry out a fault detection method according to the invention. To this end, the at least one software module can apply a predefined transformation to the output of a specific ALU operation associated with that specific transformation to produce a transformed output. The transformation is designed to transform a predefined expected result of the ALU operation into the target value, causing the watchdog module 8 to update the watchdog timer. The at least one software module also writes the transformed output into the input register 12. Consequently, in the event of a failure of the ALU 7 causing an incorrect result of the ALU operation, the value written into the input register 12 deviates from the target value, which is the Causes watchdog module 8 to generate the reset signal or to initiate the safety measure in the next readout cycle.

3 zeigt ein Flussdiagramm, welches eine beispielhafte Ausführung eines erfindungsgemäßen Störungsdetektionsverfahrens veranschaulicht. Dabei werden die Schritte S1 bis S7 vor einer Standardverwendung des elektronischen Verarbeitungsschaltkreises 1, zum Beispiel während der Entwicklung und/oder Herstellung des elektronischen Verarbeitungsschaltkreises 1, ausgeführt. Die Schritte S8 bis S11 werden dann online, das heißt nach der Entwicklung und Herstellung während des Standardbetriebs des elektronischen Verarbeitungsschaltkreises 1, ausgeführt. 3 FIG. 12 shows a flow chart illustrating an exemplary embodiment of a fault detection method according to the invention. Here, the steps S1 to S7 are carried out before a standard use of the electronic processing circuit 1, for example during the development and/or manufacture of the electronic processing circuit 1. Steps S8 to S11 are then carried out on-line, i.e. after development and manufacture during the standard operation of the electronic processing circuit 1.

In Schritt S1 werden die Zielanwendung und der Zieltyp des elektronischen Verarbeitungsschaltkreises 1 bereitgestellt. In Schritt S2 wird ein entsprechender Satz von relevanten ALU-Operationen der ALU 7 bestimmt, insbesondere um die Zielanwendung durch einen Zieltyp des elektronischen Verarbeitungsschaltkreises 1 zu erreichen. In Schritt S3 wird geprüft, ob alle relevanten ALU-Operationen definiert worden sind, und, falls nicht, wird Schritt S2 wiederholt beziehungsweise abgeschlossen. Andernfalls wird für jede der ALU-Operationen eine jeweilige Transformation, die das erwartete Ergebnis der jeweiligen ALU-Operation in den Zielwert transformiert, in Schritt S4 bestimmt. In Schritt S5 wird geprüft, ob alle erforderlichen Transformationen definiert worden sind. Ist dies nicht der Fall, so wird Schritt S4 wiederholt beziehungsweise abgeschlossen. Andernfalls werden in Schritt S6 die Transformationen und die ALU-Operationen in Software des zumindest einen Softwaremoduls implementiert. In Schritt S7 wird geprüft, ob die Kodierung abgeschlossen ist. Ist dies nicht der Fall, so wird Schritt S6 wiederholt beziehungsweise abgeschlossen.In step S1, the target application and the target type of the electronic processing circuit 1 are provided. In step S2, a corresponding set of relevant ALU operations of the ALU 7, in particular to achieve the target application by a target type of the electronic processing circuit 1, is determined. In step S3 it is checked whether all relevant ALU operations have been defined and, if not, step S2 is repeated or completed. Otherwise, for each of the ALU operations, a respective transformation that transforms the expected result of the respective ALU operation into the target value is determined in step S4. In step S5 it is checked whether all required transformations have been defined. If this is not the case, step S4 is repeated or completed. Otherwise, in step S6, the transformations and the ALU operations are implemented in software of the at least one software module. In step S7 it is checked whether the coding is complete. If this is not the case, step S6 is repeated or completed.

In Schritt S8 wird eine der definierten ALU-Operationen wie beschrieben ausgeführt und ihre Ausgabe wird gemäß der zugeordneten Transformation transformiert und die transformierte Ausgabe wird in das Eingangsregister 12 geschrieben. In Schritt S9 liest das Watchdog-Modul 8 das Eingangsregister 12 und bestimmt, ob die transformierte Ausgabe mit dem Zielwert übereinstimmt. Ist dies der Fall, so wird keine Zurücksetzungs- oder Sicherheitsmaßnahme von dem Watchdog-Modul 8 in Schritt S10 ausgelöst und Schritt S8 kann wieder ausgeführt werden, zum Beispiel für eine weitere ALU-Operation. Wenn andererseits die transformierte Ausgabe von dem Zielwert abweicht, kann das Watchdog-Modul 8 das Zurücksetzungssignal erzeugen oder die Sicherheitsmaßnahme wie beschrieben in Schritt S11 initiieren.In step S8 one of the defined ALU operations is executed as described and its output is transformed according to the associated transformation and the transformed output is written into the input register 12. In step S9, the watchdog module 8 reads the input register 12 and determines whether the transformed output matches the target value. If this is the case, no reset or safety measure is triggered by the watchdog module 8 in step S10 and step S8 can be carried out again, for example for another ALU operation. On the other hand, if the transformed output deviates from the target value, the watchdog module 8 can generate the reset signal or initiate the safety measure as described in step S11.

Wie beschrieben kann die Erfindung dazu benutzt werden, eine zuverlässige und kostengünstige Möglichkeit zur Störungsdetektion in ALUs basierend auf einem Watchdog-Modul auszuführen.As described, the invention can be used to implement a reliable and cost-effective way of detecting faults in ALUs based on a watchdog module.

Die Erfindung überwindet die Nachteile von bestehenden Lösungen zur Störungsdetektion von ALUs, wie etwa das Erfordernis von Hardware-Redundanz, spezieller Hardware und/oder spezieller Software. Zu den Vorteilen des erfinderischen Ansatzes zählen ein im Vergleich zu anderen Lösungen reduzierter Verbrauch an Rechenzeit und die Nutzung bereits vorhandener Hardware.The invention overcomes the disadvantages of existing solutions for fault detection of ALUs, such as the need for hardware redundancy, special hardware and/or special software. The advantages of the inventive approach include a reduced consumption of computing time compared to other solutions and the use of existing hardware.

Die meisten eingebetteten Verarbeitungsschaltkreise, wie etwa Mikrocontroller, verfügen über interne Watchdogs, zum Beispiel Fenster-Watchdogs mit einem entsprechenden Watchdog-Zeitgeber. In verschiedenen Ausführungen nutzt die Erfindung dies zum Testen der ALU aus. Zu diesem Zweck detektiert die Software Störungen mit Unterstützung des internen Watchdogs.Most embedded processing circuits, such as microcontrollers, have internal watchdogs, such as window watchdogs with a corresponding watchdog timer. In various implementations, the invention uses this to test the ALU. For this purpose, the software detects faults with the support of the internal watchdog.

Claims (15)

Elektronischer Verarbeitungsschaltkreis (1) mit einer arithmetisch-logischen Einheit, ALU, (7), die dazu eingerichtet ist, eine vordefinierte ALU-Operation auszuführen, und einem Watchdog-Modul (8), welches dazu eingerichtet ist, einen Wert aus einem Speicherort (12) des elektronischen Verarbeitungsschaltkreises (1) auszulesen und eine vordefinierte Sicherheitsmaßnahme zu initiieren, wenn der ausgelesene Wert von einem vordefinierten Zielwert abweicht, dadurch gekennzeichnet, dass - der elektronische Verarbeitungsschaltkreis (1) zumindest ein Softwaremodul aufweist, welches dazu eingerichtet ist, eine Ausgabe der ALU-Operation durch Ausführung einer vordefinierten Transformation in eine transformierte Ausgabe zu transformieren, wobei die transformierte Ausgabe mit dem Zielwert übereinstimmt, wenn die Ausgabe der ALU-Operation einem vordefinierten erwarteten Ergebnis der ALU-Operation entspricht; und - das zumindest eine Softwaremodul dazu eingerichtet ist, die transformierte Ausgabe in den Speicherort (12) zu schreiben.Electronic processing circuit (1) with an arithmetic logic unit, ALU, (7) set up to perform a predefined ALU operation, and a watchdog module (8) set up to read a value from a memory location ( 12) of the electronic processing circuit (1) and to initiate a predefined safety measure if the read value deviates from a predefined target value, characterized in that - the electronic processing circuit (1) comprises at least one software module configured to transform an output of the ALU operation into a transformed output by performing a predefined transformation, wherein the transformed output matches the target value if the output of the ALU operation matches a predefined expected result of the ALU -operation corresponds; and - the at least one software module is set up to write the transformed output to the storage location (12). Elektronischer Verarbeitungsschaltkreis (1) nach Anspruch 1, dadurch gekennzeichnet, dass der elektronische Verarbeitungsschaltkreis (1) zumindest eine Hardware-Einheit (5, 6, 9, 10) aufweist und das zumindest eine Softwaremodul dazu eingerichtet ist, im Falle eines störungsfreien Betriebs der zumindest einen Hardware-Einheit (5, 6, 9, 10), den vordefinierten Zielwert in den Speicherort (12) zu schreiben.Electronic processing circuit (1) according to claim 1 , characterized in that the electronic processing circuit (1) has at least one hardware unit (5, 6, 9, 10) and the at least one software module is set up to, in the event of trouble-free operation of the at least one hardware unit (5, 6 , 9, 10) to write the predefined target value into memory location (12). Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass - das Watchdog-Modul (8) dazu eingerichtet ist, die Sicherheitsmaßnahme zu initiieren, wenn ein Watchdog-Zeitgeber des Watchdog-Moduls (8) abläuft; und - das Watchdog-Modul (8) dazu eingerichtet ist, den Watchdog-Zeitgeber nur dann zurückzusetzen, wenn der ausgelesene Wert mit dem Zielwert übereinstimmt.Electronic processing circuit (1) according to any one of the preceding claims, characterized in that - the watchdog module (8) is arranged to initiate the security measure when a watchdog timer of the watchdog module (8) expires; and - the watchdog module (8) is set up to reset the watchdog timer only if the read value matches the target value. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Watchdog-Modul (8) dazu eingerichtet ist, ein Zurücksetzungssignal zum Zurücksetzen des elektronischen Verarbeitungsschaltkreises (1) zu erzeugen und/oder ein Informationssignal für eine externe elektronische Komponente zu erzeugen, um die Sicherheitsmaßnahme zu initiieren.Electronic processing circuit (1) according to one of the preceding claims, characterized in that the watchdog module (8) is set up to generate a reset signal for resetting the electronic processing circuit (1) and/or to generate an information signal for an external electronic component to initiate the security measure. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das zumindest eine Softwaremodul dazu eingerichtet ist, eine oder mehrere Exklusiv-Oder-Operationen und/oder eine oder mehrere logische Verschiebeoperationen und/oder eine oder mehrere Permutationsoperationen auf die Ausgabe der ALU-Operation anzuwenden, um die Transformation auszuführen.Electronic processing circuit (1) according to one of the preceding claims, characterized in that the at least one software module is set up to perform one or more exclusive OR operations and/or one or more logical shift operations and/or one or more permutation operations on the output of the Apply ALU operation to perform the transformation. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Speicherort (12) einem Eingangsregister des Watchdog-Moduls (8) entspricht.Electronic processing circuit (1) according to one of the preceding claims, characterized in that the memory location (12) corresponds to an input register of the watchdog module (8). Elektronischer Verarbeitungsschaltkreis (1) nach Anspruch 6, dadurch gekennzeichnet, dass das zumindest eine Softwaremodul dazu eingerichtet ist, eine Länge der Ausgabe der ALU-Operation an eine Länge des Eingangsregisters anzupassen, um die Transformation auszuführen.Electronic processing circuit (1) according to claim 6 , characterized in that the at least one software module is set up to adapt a length of the output of the ALU operation to a length of the input register in order to carry out the transformation. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die transformierte Ausgabe von dem Zielwert abweicht, wenn die Ausgabe der ALU-Operation von dem erwarteten Ergebnis der ALU-Operation abweicht.Electronic processing circuit (1) according to any one of the preceding claims, characterized in that the transformed output differs from the target value when the output of the ALU operation differs from the expected result of the ALU operation. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Watchdog-Modul (8) als Hardware-Watchdog ausgestaltet ist.Electronic processing circuit (1) according to one of the preceding claims, characterized in that the watchdog module (8) is designed as a hardware watchdog. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Watchdog-Modul (8) als ein Zeitablauf-Watchdog oder als ein Fenster-Watchdog ausgestaltet ist.Electronic processing circuit (1) according to one of the preceding claims, characterized in that the watchdog module (8) is designed as a timing watchdog or as a window watchdog. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der elektronische Verarbeitungsschaltkreis (1) ein Mikrocontroller ist.Electronic processing circuit (1) according to any one of the preceding claims, characterized in that the electronic processing circuit (1) is a microcontroller. Elektronischer Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der elektronische Verarbeitungsschaltkreis (1) eine zentrale Verarbeitungseinheit, CPU, (5) aufweist und die CPU (5) die ALU (7) enthält.Electronic processing circuit (1) according to any one of the preceding claims, characterized in that the electronic processing circuit (1) comprises a central processing unit, CPU, (5) and the CPU (5) contains the ALU (7). Elektronische Steuereinheit, ECU, (2) für ein Fahrzeug (4), wobei die ECU (2) einen elektronischen Verarbeitungsschaltkreis (1) nach einem der vorhergehenden Ansprüche aufweist.An electronic control unit, ECU, (2) for a vehicle (4), the ECU (2) comprising an electronic processing circuit (1) according to any one of the preceding claims. Störungsdetektionsverfahren für einen elektronischen Verarbeitungsschaltkreis (1) mit einer arithmetisch-logischen Einheit, ALU, (7), wobei eine vordefinierte ALU-Operation von der ALU (7) ausgeführt wird, dadurch gekennzeichnet, dass - eine Ausgabe der ALU-Operation in eine transformierte Ausgabe transformiert wird, indem eine vordefinierte Transformation ausgeführt wird, wobei die transformierte Ausgabe mit einem vordefinierten Zielwert übereinstimmt, wenn die Ausgabe der ALU-Operation einem vordefinierten erwarteten Ergebnis der ALU-Operation entspricht; und - die transformierte Ausgabe in einen Speicherort (12) des elektronischen Verarbeitungsschaltkreises (1) geschrieben wird; - die transformierte Ausgabe von einem Watchdog-Modul (8) aus dem Speicherort (12) ausgelesen wird; und - eine vordefinierte Sicherheitsmaßnahme von dem Watchdog-Modul (8) initiiert wird, wenn die ausgelesene transformierte Ausgabe von dem Zielwert abweicht.Fault detection method for an electronic processing circuit (1) with an arithmetic logic unit, ALU, (7), wherein a predefined ALU operation is executed by the ALU (7), characterized in that - an output of the ALU operation into a transformed output is transformed by performing a predefined transformation, wherein the transformed output matches a predefined target value if the output of the ALU operation matches a predefined expected result of the ALU operation; and - the transformed output is written into a memory location (12) of the electronic processing circuit (1); - reading out the transformed output from the storage location (12) by a watchdog module (8); and - a predefined safety measure is initiated by the watchdog module (8) if the transformed output read out deviates from the target value. Computerprogrammprodukt, welches Befehle beinhaltet, die, wenn sie von einem elektronischen Verarbeitungsschaltkreis (1) nach einem der Ansprüche 1 bis 12 ausgeführt werden, den elektronischen Verarbeitungsschaltkreis (1) dazu veranlassen, ein Störungsdetektionsverfahren nach Anspruch 14 auszuführen.Computer program product containing instructions which, when executed by an electronic processing circuit (1) according to any one of Claims 1 until 12 are carried out, cause the electronic processing circuit (1) to carry out a fault detection procedure Claim 14 to execute.
DE102022102412.1A 2022-02-02 2022-02-02 Fault detection for an electronic processing circuit with an arithmetic logic unit Pending DE102022102412A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102022102412.1A DE102022102412A1 (en) 2022-02-02 2022-02-02 Fault detection for an electronic processing circuit with an arithmetic logic unit
PCT/EP2023/052130 WO2023148119A1 (en) 2022-02-02 2023-01-30 Fault detection for an electronic processing circuit comprising an arithmetic logical unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022102412.1A DE102022102412A1 (en) 2022-02-02 2022-02-02 Fault detection for an electronic processing circuit with an arithmetic logic unit

Publications (1)

Publication Number Publication Date
DE102022102412A1 true DE102022102412A1 (en) 2023-08-03

Family

ID=85150767

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022102412.1A Pending DE102022102412A1 (en) 2022-02-02 2022-02-02 Fault detection for an electronic processing circuit with an arithmetic logic unit

Country Status (2)

Country Link
DE (1) DE102022102412A1 (en)
WO (1) WO2023148119A1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6816345B2 (en) * 2015-04-24 2021-01-20 富士電機株式会社 Drive control device
JP6524989B2 (en) * 2016-11-15 2019-06-05 トヨタ自動車株式会社 Operation guarantee method of arithmetic unit

Also Published As

Publication number Publication date
WO2023148119A1 (en) 2023-08-10

Similar Documents

Publication Publication Date Title
DE102010031282B4 (en) Method of monitoring a data store
WO2007057271A1 (en) Apparatus and method for eliminating errors in a system having at least two execution units with registers
WO2007017386A1 (en) Method and device for controlling a computer system with at least two execution units and a comparison unit
WO2006015945A2 (en) Method, operating system, and computing device for processing a computer program
DE102015210651B4 (en) Circuit and method for testing an error correction capability
EP0104635A2 (en) Digital computer test method and configuration
EP1955164A1 (en) Program-controlled unit and method for the operation thereof
DE102008024193A1 (en) Data or signals processing method for brake booster in motor vehicle, involves applying set of functional units to data or signals, programming and/or configuring of one of functional units and programming and/or configuring of matrix
EP1913478B1 (en) Microprocessor system for controlling and/or regulating at least partly security-critical processes
EP1359485B1 (en) Control and monitoring system
DE102022102412A1 (en) Fault detection for an electronic processing circuit with an arithmetic logic unit
DE102005060714B4 (en) Data processing device, memory card, method of operating a data processing device and method of manufacturing a data processing device
DE102011007467A1 (en) Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components
DE102006036384A1 (en) Microprocessor system for controlling or regulating at least partially safety-critical processes
DE102010063773A1 (en) Field device used in monitoring operation of plant, has semi permanent electronic memory whose memory areas are stored with data by different storage methods according to configuration of memory areas
EP1924914B1 (en) Data processing system and a method for the operation thereof
WO2007071590A1 (en) Method for recognizing a power outage in a data memory and recovering the data memory
DE102017208522A1 (en) Arithmetic unit and operating method for this
DE102004051991A1 (en) Method, operating system and computing device for executing a computer program
DE10148157B4 (en) Program controlled unit
DE102018219700B4 (en) Control device
DE102004059392B4 (en) Method for reassignment of a command memory, subsystem for carrying out such a method, and microcontroller
DE102009031310B4 (en) Memory system, sense amplifier, use and method for error detection using parity bits of a block code
DE10128996B4 (en) Method and device for monitoring memory cells of a volatile data memory
EP2461253B1 (en) Micro-process module, in particular chip card microprocessor module

Legal Events

Date Code Title Description
R163 Identified publications notified