DE102008004205A1 - Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen - Google Patents

Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen Download PDF

Info

Publication number
DE102008004205A1
DE102008004205A1 DE200810004205 DE102008004205A DE102008004205A1 DE 102008004205 A1 DE102008004205 A1 DE 102008004205A1 DE 200810004205 DE200810004205 DE 200810004205 DE 102008004205 A DE102008004205 A DE 102008004205A DE 102008004205 A1 DE102008004205 A1 DE 102008004205A1
Authority
DE
Germany
Prior art keywords
unit
arithmetic
units
monitoring unit
self
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.)
Withdrawn
Application number
DE200810004205
Other languages
English (en)
Inventor
Christine Rossa
Markus Ferch
Joern Schneider
Rainer Gmehlich
Jens Gramm
Yorck Collani
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE200810004205 priority Critical patent/DE102008004205A1/de
Priority to FR0950149A priority patent/FR2926377A1/fr
Publication of DE102008004205A1 publication Critical patent/DE102008004205A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1687Temporal synchronisation or re-synchronisation of redundant processing components at event level, e.g. by interrupt or result of polling
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/029Adapting to failures or work around with other constraints, e.g. circumvention by avoiding use of failed parts
    • B60W2050/0292Fail-safe or redundant systems, e.g. limp-home or backup systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24196Plausibility check in channels for correct sequence or result
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Hardware Redundancy (AREA)

Abstract

Die Erfindung betrifft eine Schaltungsanordnung zur Fehlerbehandlung in Echtzeitsystemen, bestehend aus einem Prozessorsystem (8) mit mindestens zwei redundant arbeitenden, eigenfehlerdiagnosefähigen Recheneinheiten (1, 2), deren Ausgangssignale von einer Vergleichseinheit (3) überwacht werden, wobei die Recheneinheiten (1, 2) mit einer Datenleitung (4) verbunden sind sowie ein Verfahren zur Fehlerbehandlung in Echtzeitsystemen. Bei einer Schaltungsanordnung zur Behandlung von Fehlern in Echtzeitsystemen, mit welcher eine Vielzahl von möglichen, innerhalb elektronischer Echtzeitsysteme auftretenden Hardware- oder Softwarefehler behandelt werden können, ohne dass die Verfügbarkeit des Systems eingeschränkt wird, führt die Vergleichseinheit (3) an eine Überwachungseinheit (11), wobei die Überwachungseinheit über je eine Signalleitung (15, 16) mit jeder Recheneinheit (1, 2) verbunden ist und jede die Eigenfehlerdiagnose durchführende Recheneinheit (1, 2) ein Ergebnis der Eigenfehlerdiagnose an die Überwachungseinheit (11) meldet und die Überwachungseinheit (11) in Abhängigkeit von diesen Ergebnissen die Signalleitungen (15, 16) aktiviert.

Description

  • Die Erfindung betrifft eine Schaltungsanordnung zur Fehlerbehandlung in Echtzeitsystemen, bestehend aus einem Prozessorsystem mit mindestens zwei redundant arbeitenden, eigenfehlerdiagnosefähigen Recheneinheiten, deren Ausgangssignale von einer Vergleichseinheit überwacht werden, wobei die Recheneinheiten mit einer Datenleitung verbunden sind sowie ein Verfahren zur Fehlerbehandlung in Echtzeitsystemen.
  • Komplexe Halbleiterbausteine wie Mikrocontroller werden bei nahezu gleichem Platzbedarf immer leistungsfähiger. Allerdings werden Sie dadurch immer anfälliger für sogenannte transiente Fehler. Transiente Fehler treten unverhofft durch die Einwirkung von elektromagnetischer Strahlung aber auch durch kosmische oder radioaktive Strahlungseinflüsse auf und sind daher nicht vorhersehbar.
  • Insbesondere beim Einsatz in Echtzeitsystemen, wie es beispielsweise Steuergeräte für Kraftfahrzeuge darstellen, werden hohe Anforderungen hinsichtlich Sicherheit und Zuverlässigkeit gestellt. Um die Systemsicherheit beim Auftreten von transienten Fehlern in Komponenten wie in Speichern (RAM, ROM bzw. Flash) oder im Rechnerkern auf das entsprechende Maß einzustellen, werden an verschiedenen Stellen im Steuergerät Überwachungen implementiert.
  • Um Fehler in Speicherbausteinen wie RAM oder Flash im Betrieb tolerieren zu können, werden beispielsweise Error Correcting Codes (ECC) eingesetzt.
  • Ein bekanntes und häufig eingesetztes Prinzip, um Fehler im Prozessor im Betrieb tolerieren zu können, ist die redundante Auslegung von Prozessorsystemen.
  • Ein solches System ist aus der US-5 748 873 A1 bekannt, bei welchem im Normalbetrieb ein Programm auf beiden Rechnern gleichzeitig gerechnet wird, was auch als „Duplex-Modus" bezeichnet wird. Es findet ein Vergleich der Ausgangssignale der Prozessoren statt. Wird eine Ungleichheit festgestellt, speichert einer der Prozessoren seinen Zustand und stellt den Grund für die Ungleichheit fest. Im Falle von transienten Fehlern wird die Programmabarbeitung im „Duplex-Modus" fortgesetzt, indem die Prozessoren den gespeicherten Zustand restaurieren und wieder synchronisiert werden.
  • Im Falle eines permanenten Fehlers in einem der Prozessoren wird dieser Prozessor abgeschaltet und das System setzt den Prozess auf dem fehlerfrei arbeitenden Prozessor fort.
  • Der Erfindung liegt die Aufgabe zu Grunde, eine Schaltungsanordnung und ein Verfahren zur Behandlung von Fehlern in Echtzeitsystemen anzugeben, mit welcher eine Vielzahl von möglichen, innerhalb von elektronischen Echtzeitsystemen auftretenden Hardware- und Softwarefehlern behandeln werden können, ohne dass die Verfügbarkeit des Systems eingeschränkt wird.
  • Der Vorteil der Erfindung besteht darin, dass die einfach konstruierte Hardwareschaltung extern an ein Mehrprozessorsystem oder ein Mehr-Core-System angeschlossen werden kann. Dabei wird ein Weiterbetrieb des Systems in solchen Situationen ermöglicht, in denen die Eigenfehlerdiagnose der Prozessoren unzuverlässig ist.
  • Darüber hinaus ist ein Weiterbetrieb auch in Situationen mit transienten Fehlern möglich, in denen die Eigenfehlerdiagnose der Prozessoren nicht identifizieren kann, in welchem Prozessor der Fehler aufgetreten ist.
  • Die einfache Überwachungsschaltung unterscheidet zwischen transienten und permanenten Fehlern, wobei der Systembetrieb immer fortgeführt werden kann. Eine Abschaltung des Gesamtsystems erfolgt lediglich bei der Feststellung von permanenten Fehlern in allen Recheneinheiten.
  • Erfindungsgemäß führt die Vergleichseinheit an eine Überwachungseinheit, wobei die Überwachungseinheit über je eine Signalleitung mit jeder Recheneinheit verbunden ist und jede die Eigenfehlerdiagnose durchführende Recheneinheit ein Ergebnis der Eigenfehlerdiagnose an die Überwachungseinheit meldet und die Überwachungseinheit in Abhängigkeit von diesem Ergebnis die Signalleitungen aktiviert.
  • Die Schnittstelle der Überwachungseinheit zum Restsystem ist dabei auf ein Minimum beschränkt und äußerst schlank gehalten.
  • Vorteilhafterweise ist die Vergleichseinheit über eine Fehlersignalleitung mit der Überwachungseinheit verbunden, welche bei Erhalt eines Fehlersignals einen Timer startet, wobei die Recheneinheiten während einer vom Timer vorgegebenen Zeitdauer die Eigenfehlerdiagnose ausführen und die Ergebnisse der Eigenfehlerdiagnose über die Datenleitung an die Überwachungseinheit leiten.
  • Die Verwendung eines Timers begrenzt die Zeit, in welcher die Eigenfehlerdiagnosemöglichkeit durchgeführt werden kann. Wenn in der vom Timer vorgegebenen Zeit kein Ergebnis vorliegt, wird auf einen Fehler in der Eigenfehlerdiagnose geschlossen.
  • Durch Anbindung der Überwachungseinheit an die Datenleitung, welche in jedem Echtzeitsystem vorhanden ist, kann zur Kommunikation zwischen Recheneinheit und Überwachungseinheit auf zusätzliche Datenleitungen zwischen den Recheneinheiten und der Überwachungseinheit verzichtet werden. Als Datenleitung wird üblicherweise ein Systembus oder eine „Crossbar" verwendet.
  • Um permanente Fehler genau feststellen zu können, weist die Überwachungseinheit einen durch einen Maximalwert begrenzten Fehlerzähler auf. Der Fehlerzähler zählt jede Fehlermeldung. Ist der Maximalwert durch die ständige Wiederholung des Fehlersignals erreicht, wird davon ausgegangen, dass ein permanenter Fehler vorliegt.
  • Ist eine Recheneinheit defekt, so soll die andere noch verbleibende Recheneinheit darüber in Kenntnis gesetzt werden, dass sie allein weiterarbeitet. Zu diesem Zweck ist die Überwachungseinheit über eine Informationsleitung mit der Vergleichseinheit und den beiden Recheneinheiten verbunden. Alternativ dazu ist es aber auch möglich, dass die Überwachungseinheit über die Informationsleitung nur mit der Vergleichseinheit verbunden ist, von welcher je eine Informationsverteilungsleitung an jede Recheinheit führt. Die Recheneinheiten werden hier von der Vergleichseinheit darüber informiert, welche Recheneinheit weiter arbeitet.
  • Ist die Signalleitung eine Schaltleitung, ist auf ein Signal der Überwachungseinheit über die Schaltleitung die Recheneinheit abschaltbar. Hier wird mit einfachen konstruktiven Mitteln die Überwachungseinheit an die Recheneinheit angeschlossen, um das gewünschte Ergebnis zu erzielen.
  • Soll bei einer sequentiellen Abarbeitung der Eigenfehlerdiagnosen durch die Recheneinheiten nur eine Recheneinheit arbeiten, die andere aber nicht abgeschaltet werden, so ist die Signalleitung eine Halteleitung, wobei ein Signal der Überwachungseinheit über diese Halteleitung die Recheneinheit anhält.
  • In einer anderen Weiterbildung der Erfindung, bei welcher innerhalb von elektronischen Echtzeitsystemen auftretende Hardware- und Softwarefehler behandelt werden können, ohne dass die Verfügbarkeit des Systems eingeschränkt wird, wird bei Feststellung eines Fehlers in den Ausgangssignalen der Recheneinheiten ein Fehlersignal ausgelöst, durch welches eine Laufzeit eines Timers und die Eigenfehlerdiagnosen der Recheneinheiten gestartet werden, wobei infolge der Ergebnisse der Eigenfehlerdiagnosen der Recheneinheiten Signale zur Fehlerbehandlung ausgelöst werden.
  • Bei dieser Vorgehensweise ist es unwichtig, ob es sich um Hardware- oder Softwarefehler handelt. Eine detaillierte Spezifizierung der einzelnen Fehler ist bei der vorgeschlagenen Fehlerbehandlung nicht notwendig.
  • Um den Zustand der Recheneinheiten vor der Fehlerbehandlung zu dokumentieren, werden die beiden Recheneinheiten zur Eigenfehlerdiagnose entkoppelt, wobei jede Recheneinheit vor der Eigenfehlerdiagnose ihren Zustand abspeichert.
  • Bleiben die Ergebnisse der Eigenfehlerdiagnose innerhalb der Laufzeit des Timers aus, werden beide Recheneinheiten abgeschaltet. In diesem Fall wird davon ausgegangen, dass beide Recheneinheiten fehlerbehaftet sind oder die Eigendiagnose fehlerbehaftet ist.
  • Treffen die Ergebnisse der Eigenfehlerdiagnosen der beiden Recheneinheiten innerhalb der Laufzeit des Timers ein, werden diese plausibilisiert.
  • Bei der Plausibilisierung werden verschiedene Fälle unterschieden. Bei Sendung eines korrekten Ergebnisses der Eigenfehlerdiagnosen sowohl durch die erste als auch durch die zweite Recheneinheit setzen beide Recheneinheiten ihren Betriebsablauf fort. Bei diesem Fall wird davon ausgegangen, dass beide Recheneinheiten fehlerfrei arbeiten.
  • Vor der Fortsetzung des Betriebsablaufes werden die Recheneinheiten synchronisiert, was für eine redundante Arbeitsweise notwendig ist.
  • In einer besonders einfachen Vorgehensweise startet die Synchronisierung dann, wenn in einem vorgegebenen Zeitraum ein Abschalt- oder Haltesignal ausbleibt.
  • In einer Weiterbildung der Erfindung setzt bei Übersendung eines korrekten Ergebnisses der Eigenfehlerdiagnose durch die erste Recheneinheit und eines unkorrekten Ergebnisses oder keines Ergebnisses durch die zweite Recheneinheit die erste Recheneinheit den Betriebsablauf fort, während die zweite Recheneinheit abgeschaltet wird. Somit wird sichergestellt, dass das System weiterarbeitet.
  • Bei Übermittlung von unkorrekten Ergebnissen der Eigenfehlerdiagnose sowohl durch die erste als auch durch die zweite Recheneinheit werden beide Recheneinheiten abgeschaltet, da hier davon ausgegangen werden muss, dass beide Recheneinheiten defekt oder die Eigenfehlerdiagnosen unkorrekt ausgeführt sind.
  • In einer Ausgestaltung wird nachdem durch die Vergleichseinheit ein Fehler erkannt wurde und die Eigenfehlerdiagnosen beider Recheneinheiten keinen Fehlererkannt haben, ein Fehlerzähler erhöht.
  • Bei Erreichen eines Maximalwertes des Fehlerzählers werden beide Recheneinheiten durch die Überwachungseinheit abgeschaltet, da nun vom Vorliegen eines permanenten Fehlers ausgegangen wird.
  • Bei Unterschreitung des Maximalwertes des Fehlerzählers setzen beide Recheneinheiten ihren Betriebsablauf fort, da angenommen wird, das nur ein einmaliger transienter Fehler aufgetreten ist, der durch elektromagnetische Störungen oder kosmische bzw. radioaktive Strahlung verursacht wurde.
  • Die Erfindung lässt zahlreiche Ausführungsformen zu. Eine davon soll anhand der in der Zeichnung dargestellten Figuren näher erläutert werden.
  • Es zeigt:
  • 1: Zwei-Prozessor-Einheit
  • 2: erstes Ausführungsbeispiel der erfindungsgemäßen Schaltungsanordnung
  • 3: zweites Ausführungsbeispiel der erfindungsgemäßen Schaltungsanordnung
  • 4: erstes Ausführungsbeispiel des erfindungsgemäßen Verfahrens
  • 5: zweites Ausführungsbeispiel des erfindungsgemäßen Verfahrens
  • 6: Arbeitsweise des Fehlerzählers
  • 7: Programmablauf des Verfahrens bei einem Steuergerät eines Kraftfahrzeuges.
  • 1 zeigt zwei Recheneinheiten 1 und 2, die beide mit einer Vergleichseinheit 3 und einem Datenbus 4 verbunden sind. Im vorliegenden Beispiel verbindet der Datenbus die Recheneinheiten 1 und 2, einen Hauptspeicher 5, einen Flashspeicher 6 und die Peripherie 7 miteinander. Die Prozessoren 1 und 2 und die Vergleichseinheit 3 sind in einer 2-Prozessor-Einheit 8 zusammengefasst.
  • In einem Modus, dem sogenannten "Lockstep"-Modus, rechnen die beiden Recheneinheiten 1 und 2 redundant. Ihre Ausgangssignale werden an die Vergleichseinheit 3 weitergeleitet, die diese Ausgangssignale einem Vergleich unterzieht. Im Normalbetrieb erhalten beide Recheneinheiten 1 und 2 die benötigten Daten und Anweisungen vom Prozessor 1 über den Datenbus 4.
  • Jede Recheneinheit 1 und 2 besitzt eine Eigenfehlerdiagnosemöglichkeit. Die Recheneinheit 1 weist die Eigenfehlerdiagnosemöglichkeit 9 und die Recheneinheit 2 die Eigenfehlerdiagnosemöglichkeit 10 auf. Die Eigenfehlerdiagnosemöglichkeiten 9 und 10 liefern nach Abschluss der Eigenfehlerdiagnose eine Signatur, die aussagt, ob die Recheneinheit 1 bzw. die Recheneinheit 2 korrekt arbeitet oder einen Fehler aufweist.
  • Die beschriebene 2-Prozessor-Einheit 8 ist, wie aus 2 ersichtlich, an eine Überwachungseinheit 11 angeschlossen. Diese Überwachungseinheit 11 enthält einen Timer 12 und einen Fehlerzähler 13. Der Timer 12 und der Fehlerzähler 13 können auch als externe Einheiten außerhalb der Überwachungseinheit 11 angeordnet sein. Bei den weiteren Betrachtungen wird angenommen, dass der Timer 12 und der Fehlerzähler 13 Bestandteile der Überwachungseinheit 11 sind.
  • Die Überwachungseinheit 11 ist ebenfalls mit dem Datenbus 4 verbunden.
  • Eine Fehleranzeigeleitung 14 verbindet die Vergleichseinheit 3 der 2-Prozessor-Einheit 8 mit der Überwachungseinrichtung 11. Eine direkte Verbindung besteht zwischen der Überwachungseinheit 11 und den Recheneinheiten 1 und 2 der 2-Prozessor-Einheit 8. Dabei ist Recheneinheit 1 über die Leitung 15 und Recheneinheit 2 über die Leitung 16 mit der Überwachungseinheit 11 verbunden. Über diese Leitungen 15 und 16 werden im Bedarfsfall zwei verschiedene Signale von der Überwachungseinheit 11 an die Recheneinheiten 1 und 2 gesendet. Diese Signale können entweder Abschaltsignale oder Haltesignale sein. In einer anderen Ausführungsform können über die Leitungen 15 und 16 sowohl Abschalt- als auch Haltesignale gesendet werden.
  • Es besteht auch die Möglichkeit, dass jedes Abschalt- und Haltesignal über eine eigene Leitung von der Überwachungseinheit 11 an die Recheneinheit 1 oder 2 übermittelt werden.
  • In 2 besteht eine weitere Verbindung über eine Leitung 17, die direkt von der Überwachungseinheit 11 an die Recheneinheiten 1 und 2 und die Vergleichseinheit 3 führt. Mittels dieser Leitung 17 werden die Recheneinheiten 1 und 2 sowie die Vergleichseinheit 3 von der Überwachungseinheit darüber informiert, dass nur eine Recheneinheit 1 oder 2 arbeitet. Es wird ein sogenanntes „Single-Mode"-Signal von der Überwachungseinheit 11 ausgesandt.
  • Eine andere Möglichkeit zur Information der Recheneinheiten 1 und 2 und der Vergleichseinheit 3, dass nur eine Recheneinheit arbeitet, ist in 3 dargestellt. Dabei wird eine Leitung 18 von der Überwachungseinheit 11 an die Vergleichseinheit 3 geleitet. Die Vergleicheinheit 3 wiederum ist über die Leitung 18a mit der Recheneinheit 1 und über die Leitung 18b mit der Recheneinheit 2 verbunden, über welche sie die „Single-Mode"-Signale von der Überwachungseinheit 11 an die Recheneinheiten 1 und 2 weiterleitet.
  • Die Überwachungseinheit 11 wird durch ein Fehlersignal aktiviert, welches die Vergleichseinheit 3 über die Leitung 14 ausgibt, wenn sie bei dem Vergleich der Ausgangssignale der beiden Recheneinheiten 1 und 2 festgestellt hat, dass diese Ausgangssignale nicht übereinstimmen. Ist die Überwachungseinheit 11 aktiviert, startet sie den Timer 12. Dabei wartet die Überwachungseinheit 11 auf die Ergebnisse der Eigenfehlerdiagnose von den Recheneinheiten 1 und 2, welche diese über den Datenbus 4 senden.
  • Ausgehend von den Ergebnissen der Eigenfehlerdiagnose der Recheneinheiten 1 und 2 kann die Überwachungseinheit 11 folgende Aktivitäten koordinieren. Beim Auslösen eines Signals über die Leitung 15 bzw. die Leitung 16 wird die jeweilig zugehörige Recheneinheit 1 oder 2 abgeschaltet. Bei Abschaltung nur einer Recheneinheit 1 wird das „Single-Mode"-Signal über Leitung 17 oder 18 ausgelöst, um die noch arbeitende Recheneinheit 2 davon in Kenntnis zu setzen, dass sie allein weiterarbeitet. Ist dieser Zustand erreicht, kann die Vergleichseinheit 3 deaktiviert werden.
  • Eine Systemabschaltung wird durch Abschalten beider Recheneinheiten 1 und 2 über die Leitungen 15 und 16 erreicht.
  • 4 und 5 illustrieren beispielhaft den Ablauf der Fehlerbehandlung mit Hilfe der Überwachungseinheit 11. In jeweils einer eigenen, aus mehreren Blöcken bestehenden Spalte sind, von oben nach unten zeitlich geordnet, die Phasen im Betrieb der beiden Recheneinheiten 1 und 2 und der Überwachungseinheit 11 dargestellt. Die horizontalen Pfeile stellen Signale dar, die zu einem entsprechenden Zeitpunkt gesendet werden.
  • In 4 arbeiten zunächst die Recheneinheit 1 im Block 20 und die Recheneinheit 2 im Block 30 im Normalbetrieb. Bei Erhalt eines Fehlersignals 40 von der Vergleichseinheit 3 startet die Überwachungseinheit 11 im Block 50 den internen Timer 12. Mit der Laufzeit des Timers 12 starten die Recheneinheiten 1 und 2 ihre Eigenfehlerdiagnose. Die Recheneinheit 1 führt ihre Eigenfehlerdiagnose im Block 21 durch, während die Recheneinheit 2 die Eigenfehlerdiagnose im Block 31 abarbeitet. Im Block 51 erwartet die Überwachungseinheit 11 die Ergebnisse der Eigenfehlerdiagnosen, welche ihr über den Datenbus 4 übersandt werden. Die Recheneinheit 1 meldet mit dem Signal 41 innerhalb der vorgegebenen Laufzeit des Timers 12 nach Durchführung ihrer Eigenfehlerdiagnose ein korrektes Ergebnis an die Überwachungseinheit 11 und versucht im Block 22 eine Synchronisation mit der Recheneinheit 2 einzuleiten. Die Recheneinheit 2 sendet nach Durchführung ihrer Eigenfehlerdiagnose mit dem Signal 42 ein falsches Ergebnis.
  • Die Überwachungseinheit 11 reagiert im Block 52, wenn sie zwar zu verschiedenen Zeitpunkten aber innerhalb der Laufzeit des Timers ein Signal von beiden Recheneinheiten 1 und 2 erhalten hat.
  • Im Block 53 wertet die Überwachungseinheit die Ergebnisse der beiden Recheneinheiten 1 und 2 aus und stellt fest, dass die Recheneinheit 1 ein korrektes Ergebnis und die Recheneinheit 2 ein fehlerhaftes Ergebnis gemeldet hat. Infolgedessen schaltet die Überwachungseinheit 11 mit dem Signal 43 die Recheneinheit 2 ab. Der Synchronisationsversuch, welchen die Recheneinheit 2 im Block 32 mit der Recheneinheit 1 starten wollte, wird ebenfalls durch das Signal 43 abgebrochen.
  • Die Recheneinheit 1 erhält von der Überwachungseinheit 11 mit dem Signal 44 die Information, dass die Recheneinheit 2 nicht mehr im Betrieb ist. Der Versuch der Synchronisation mit der Recheneinheit 2, welchen die Recheneinheit 1 im Block 22 gestartet hat, wird abgebrochen und die Recheneinheit 1 arbeitet im Block 23 allein weiter.
  • Eine vergleichbare Vorgehensweise würde erfolgen, wenn die Recheneinheit 2 anstelle des fehlerhaften Ergebnisses gar kein Signal 42 gesendet hätte. Die Überwachungseinheit 11 wartet im Block 51 die Laufzeit des Timers 12 ab. Erhält sie in dieser Zeit kein Signal 42 der Recheneinheit 2, so geht sie davon aus, dass die Recheneinheit 2 defekt ist oder die Eigenfehlerdiagnose nicht korrekt arbeitet. Auch in diesen Fall würde die Überwachungseinheit 11 an die Recheneinheit 2 das Abschaltsignal 43 senden. Über das Signal 44 wird auch in diesem Fall die Recheneinheit 1 darüber informiert, dass das System im eingeschränkten Betrieb ohne Recheneinheit 2 fortfährt.
  • In einem anderen Beispiel, welches in 5 dargestellt ist, arbeiten die Recheneinheiten 1 und 2 zunächst wieder beide im Normalbetrieb. Recheneinheit 1 tut dies im Block 24 und Recheneinheit 2 im Block 33. Nach Erhalt des Fehlersignals 40 von der Vergleichseinheit 3 startet die Überwachungseinheit 11 wieder den Timer 12 (Block 50) und wartet auf die Ergebnisse der Eigenfehlerdiagnose von Recheneinheit 1 und Recheneinheit 2 im Block 51 während der Laufzeit des Timers 12. Beide Recheneinheiten 1 und 2 starten gleichzeitig ihre Eigenfehlerdiagnose, Recheneinheit 1 im Block 25 und die Recheneinheit 2 im Block 34. Nach Abschluss seiner Eigenfehlerdiagnose sendet Recheneinheit 1 mit dem Signal 41 ihr korrektes Ergebnis an die Vergleichseinheit 11. Auch die Recheneinheit 2 meldet nach Durchführung ihrer Eigenfehlerdiagnose im Block 34 mit dem Signal 45 ein korrektes Ergebnis an die Überwachungseinheit 11. Beide Signale treffen zwar zu unterschiedlichen Zeitpunkten, aber innerhalb der Laufzeit des Timers bei der Überwachungseinheit 11 ein.
  • Im Block 52 stellt die Überwachungseinheit 11 fest, dass sie von beiden Recheneinheiten 1 und 2 ein Ergebnis erhalten hat. Die Auswertung im Block 53 ergibt, dass beide Ergebnisse korrekt sind. Infolge dessen sendet die Überwachungseinheit 11 kein weiteres Signal. Die Recheneinheit 1 startet im Block 26 die Synchronisation mit der Recheneinheit 2, während die Recheneinheit 2 im Block 35 ebenfalls den Synchronisationsversuch mit der Recheneinheit 1 startet. Da von der Überwachungseinheit 11 kein weiteres Signal gesendet wird, ist die Synchronisation erfolgreich. Anschließend arbeitet Recheneinheit 1 im Block 27 wieder im Normalbetrieb, genauso wie Recheneinheit 2 im Block 36 wieder im Normalbetrieb arbeitet.
  • Jede Fehlermeldung der Vergleichseinheit 3 wird im internen Fehlerzähler 13 registriert, was im Zusammenhang mit 6 erläutert werden soll.
  • Der Fehlerzähler 13 ist notwendig, da die Eigenfehlerdiagnosen in der Regel keine hundertprozentige Erkennungsquote bei permanenten Fehlern hat. Zwar liefert die Vergleichseinheit 3 ein Fehlersignal, die sich anschließenden Eigenfehlerdiagnosen erkennen den Fehler aber nicht. Dies hat zur Folge, dass beide Recheneinheiten 1 und 2 ein korrektes Ergebnis an die Überwachungseinheit 11 melden. Die Überwachungseinheit 11 würde fälschlicherweise davon ausgehen, dass ein transienter Fehler vorliegt und beide Recheneinheiten 1 und 2 wieder in den Normalbetrieb versetzen („Lockstep"-Modus). Da aber ein permanenter Fehler vorliegt, würde die Vergleichseinheit 3 sofort wieder einen Fehler melden, was zu einem Kreislauf führen würde.
  • Der interne Fehlerzähler 13 der Überwachungseinheit 11 ist aktiv, wenn die Recheneinheiten 1 und 2 im Normalbetrieb arbeiten und korrekte Ergebnisse der Eigenfehlerdiagnosen innerhalb der Laufzeit des Timers gemeldet wurden (Block 60). Im Block 61 wird abgefragt, ob die Vergleichseinheit 3 eine Fehlermeldung ausgegeben hat. Wurde diese Fehlermeldung ausgegeben, wird im Block 62 abgefragt, ob der Zählerstand n des Fehlerzählers einen definierten maximalen Wert M erreicht hat. Ist dies der Fall, wird im Block 63 das System abgeschaltet, da ein permanenter Fehler erkannt wurde. Ist der Zählerstand n kleiner als der maximale Wert M, wird im Block 64 der Zählerstand n um 1 erhöht und anschließend zum Normalbetrieb im Block 60 zurückgekehrt.
  • Hat die Prüfung im Block 61 ergeben, dass die Vergleichseinheit keinen Fehler gemeldet hat, wird im Block 65 abgefragt, ob der Zählerstand n größer Null ist. Ist dies gegeben und ist im Normalbetrieb eine Zeit t1, in welcher kein Fehler gemeldet wurde, größer als eine Maximalzeit tMax, wird der Zählerstand n um 1 erniedrigt und die Zeit t1 auf Null gesetzt (Block 66). Anschließend wird wieder zum Fehlerzählernormalbetrieb im Block 60 zurückgekehrt.
  • Wurde im Block 65 festgestellt, dass der Zählerstand n gleich Null ist und die Zeit t1 kleiner als tMax wird sofort zum Normalbetrieb des Fehlerzählers in den Block 60 zurückgekehrt.
  • An Hand von 7 soll die Funktionsweise des vorgestellten Verfahrens am Beispiel einer Master-Checker-Architektur erläutert werden. Im Block 701 arbeiten die Recheneinheiten 1 und 2 im Normalbetrieb, so dass keine Systemstörungen auftreten. d. h. Recheneinheit 1 ist der „Master"-Prozessor, während Recheneinheit 2 als „Checker"-Prozessor arbeitet. Dabei kommuniziert nur die Recheneinheit 1 mit dem Datenbus 4. Recheneinheit 2 erhält alle erforderlichen Daten von der Recheneinheit 1.
  • Im Block 702 erkennt die Vergleichseinheit 3 durch Vergleich der von beiden Recheneinheiten 1 und 2 während des Normalbetriebes gelieferten Ausgangssignale, dass diese nicht übereinstimmen und meldet an die Überwachungseinheit 11 einen Fehler, indem sie über die Fehlerleitung 14 ein „Compare_Error"-Signal sendet. Die Überwachungseinheit 11 startet nun im Block 703 ihren Timer 12 für einen vorgegebenen Zeitraum T und erwartet in diesem Zeitraum die Ergebnisse der Eigenfehlerdiagnose beider Recheneinheiten 1 und 2. Hier wird die Möglichkeit vorgesehen, dass die Recheneinheiten 1 und 2 zur Eigenfehlerdiagnose getrennt werden, andere Ausführungen sind in Abhängigkeit von einer geeigneten Eigenfehlerdiagnose möglich.
  • Somit kann nun auch die Recheneinheit 2 Daten über den Datenbus empfangen (Block 704). Es wird ein Interrupt-Request gesendet. Beide Recheneinheiten 1 und 2 arbeiten nun unabhängig voneinander und erhalten ab sofort ihre Befehle über getrennte Busverbindungen. Sie können dadurch unterschiedliche Befehlssequenzen ausführen.
  • Im Block 705 führt der Prozessor 1 infolge des Interrupt-Requestes ein Interrupt aus und startet eine Interrupt-Serviceroutine. Gleichzeitig kann sein Zustand im Hauptspeicher 5 gespeichert werden.
  • Danach führt die Recheneinheit 1 im Block 706 ihre Eigenfehlerdiagnose durch. Das Ergebnis dieser Eigenfehlerdiagnose sendet die Recheneinheit 1 im Block 707 an die Überwachungseinheit 11, welche im Block 703 auf dieses Ergebnis wartet.
  • Parallel zur Recheneinheit 1 führt die Recheneinheit 2 eine vergleichbare Vorgehensweise durch. Im Block 708 wird ein Interrupt ausgeführt und ebenfalls eine Interrupt-Serviceroutine gestartet. Darüber hinaus wird der aktuelle Zustand der Recheneinheit 2 im Hauptspeicher abgespeichert. Daraufhin wird im Block 709 die Eigenfehlerdiagnose ausgeführt, wobei die Recheneinheit 2 das Ergebnis der Eigenfehlerdiagnose an die Überwachungseinheit 11 sendet (Block 710), welche im Block 703 auf das Ergebnis wartet.
  • Im Block 711 versuchen die Recheneinheit 1 und die Recheneinheit 2 sich zu synchronisieren. Ist dies erfolgreich geschehen, wird wieder zum Normalbetrieb des Systems im Block 701 zurückgekehrt.
  • Nachdem die Überwachungseinheit 11 im Block 703 die Ergebnisse der Eigenfehlerdiagnose der Recheneinheiten 1 und 2 erhalten hat, werden die von den beiden Recheneinheiten 1 und 2 gelieferten Ergebnisse ausgewertet. Im Block 712 wird geprüft, ob die Recheneinheit 1 in der vorgegebenen, durch den Timer bestimmten Zeit T ein korrektes Ergebnis geliefert hat. Ist dies der Fall, wird im Block 713 festgestellt, ob die Recheneinheit 2 in der vorgegebenen Zeit T ein korrektes Ergebnis geliefert hat. Liegt auch hier ein zufrieden stellendes Ergebnis vor, setzen beide Recheneinheiten 1 und 2 im Block 714 ihren Betrieb fort. Eine Synchronisation der beiden Recheneinheiten 1 und 2 im Block 711 wird nun durchgeführt.
  • Wird im Block 713 festgestellt, dass die Recheneinheit 2 in der vorgegebenen Zeit T kein korrektes Ergebnis geliefert hat, so wird die Recheneinheit 2 im Block 715 abgeschaltet. D. h. die Überwachungseinheit 11 sendet zur Abschaltung an die Recheneinheit 2 über die Leitung 16 ein Abschaltsignal und an die Recheneinheit 1 ein „Single-Mode"-Signal über die Leitung 17, mit welchem die Recheneinheit 1 darüber informiert wird, dass sie nun allein weiterarbeitet. Im Block 716 setzt die Recheneinheit 1 ihren Betrieb allein fort.
  • Wurde im Block 712 festgestellt, dass die Recheneinheit 1 innerhalb der vorgegebenen Zeit T kein korrektes Ergebnis an die Überwachungseinheit 11 geliefert hat, wird im Block 717 abgefragt, ob die Recheneinheit 2 ein korrektes Ergebnis in der gewünschten Zeit T geliefert hat. Ist dies der Fall, wird die Recheneinheit 1 abgeschaltet (Block 718), indem die Überwachungseinheit 11 über die Leitung 15 ein Abschaltsignal an die Recheneinheit 1 sendet. An die Recheneinheit 2 wird über die Leitung 17 das „Single-Mode"-Signal gesendet. Die Recheneinheit 2 setzt im Block 719 seinen Betrieb allein fort.
  • Ist im Block 717 festgestellt worden, dass auch die Recheneinheit 2 kein korrektes Ergebnis in der vorgegebenen Zeit T geliefert hat, wird im Block 720 das gesamte System abgeschaltet, indem die Überwachungseinheit 11 ein Abschaltsignal über die Leitung 15 an die Recheneinheit 1 und ein Abschaltsignal über Leitung 16 an die Recheneinheit 2 sendet.
  • Bei einer alternativen Ausführungsform wird die Eigenfehlerdiagnose beider Recheneinheiten 1 und 2 nicht gleichzeitig, sondern sequentiell nacheinander ausgeführt. In diesem Fall muss die Überwachungseinheit die Recheneinheiten 1 und 2 entsprechend anhalten können. Über ein Haltesignal, welches die Überwachungseineinheit 11 über die Leitung 16 an die Recheneinheit 2 sendet, wird dieser angehalten. Die Recheneinheit 1 startet ihre Eigenfehlerdiagnose. Nachdem die Recheneinheit 1 das Ergebnis ihrer Eigenfehlerdiagnose in Form einer Signatur an die Überwachungseinheit 11 gemeldet hat, wird über ein entsprechendes Haltesignal, welches über die Leitung 15 von der Überwachungseinheit 11 der Recheneinheit 1 zugeführt wird, diese angehalten und die Recheneinheit 2 arbeitet weiter.
  • Jetzt führt die Recheneinheit 2 ihre Eigenfehlerdiagnose aus und übermittelt ihr Ergebnis ebenfalls in Form einer Signatur an die Überwachungseinheit 11.
  • Nachdem beide Recheneinheiten 1 und 2 ein korrektes Ergebnis gemeldet haben, wird das Haltesignal deaktiviert und beide Recheneinheiten 1 und 2 können im Normalbetrieb weiterarbeiten.
  • Im Falle, dass eine Recheneinheit eine falsches Ergebnis oder innerhalb der festgelegten Zeit kein Ergebnis geliefert hat, wird die entsprechende Recheneinheit dauerhaft angehalten oder abgeschaltet.
  • Die Eigenfehlerdiagnose kann in Hardware oder durch Software realisiert sein. Ist die Eigenfehlerdiagnose in Hardware (Eigenfehlerdiagnosemöglichkeit 9 bzw. 10) realisiert, dann wird die Programmabarbeitung während der Eigenfehlerdiagnose der Recheneinheit angehalten. Dabei ist die Eigenfehlerdiagnose in einem „Built-In Self Test" (BIST) realisiert.
  • Besteht die Eigenfehlerdiagnose aus Software, wird die Programmabarbeitung während der Eigenfehlerdiagnose nicht abgeschaltet. Findet die Eigenfehlerdiagnose in Software statt, besteht die Möglichkeit, dass der fehlerhafte Prozessor bei der Eigenfehlerdiagnose die Eigenfehlerdiagnose des anderen Prozessors durch fehlerhafte Speicher- und Peripheriezugriffe stört. Um dies zu verhindern, kann die Eigenfehlerdiagnosemöglichkeit 9, 10 aus um eine spezielle Hardware-Schaltung erweiterte Memory-Protection-Unit bestehen. Die spezielle Hardware-Schaltung sorgt dafür, dass eine vorab definierte Konfiguration der Memory-Protection-Unit durch die Überwachungseinheit 11 aktiv gesetzt wird, sobald das Fehlersignal der Vergleichseinheit auftritt. Diese Konfiguration unterbindet einen zustandsverändernden Zugriff einer Recheneinheit auf einen oder mehrere Speicherbereiche der jeweils anderen Recheneinheit. Sowohl für sequentielle als auch für parallele Eigenfehlerdiagnosen wird garantiert, dass Berechnungen auf einer potentiell fehlerbehafteten Recheneinheit nicht zur Verfälschung von im Speicher abgelegten Ergebnissen der Eigenfehlerdiagnose der anderen Recheneinheit bzw. nicht zu Verfälschungen von im Speicher abgelegten sonstigen Daten des Systems führen können.
  • Das Verfahren wurde nur für 2 Recheneinheiten beschrieben. Es lässt sich aber auch ohne Probleme auf Systeme mit mehr als zwei Recheneinheiten genauso erweitern wie auf Prozessorsysteme mit mehreren Rechnerkernen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • - US 5748873 A1 [0006]

Claims (19)

  1. Schaltungsanordnung zur Fehlerbehandlung in Echtzeitsystemen, bestehend aus einem Rechnersystem mit mindestens zwei redundant arbeitenden, eigenfehlerdiagnosefähigen Recheneinheiten, deren Ausgangssignale von einer Vergleichseinheit überwachbar sind, wobei die Recheneinheiten mit einer Datenleitung verbunden sind, dadurch gekennzeichnet, dass die Vergleichseinheit (3) an eine Überwachungseinheit (11) führt, wobei die Überwachungseinheit (11) über je eine Signalleitung (15, 16) mit jeder Recheneinheit (1, 2) verbunden ist und jede die Eigenfehlerdiagnose durchführende Recheneinheit (1, 2) ein Ergebnis der Eigenfehlerdiagnose an die Überwachungseinheit (11) meldet und die Überwachungseinheit (11) in Abhängigkeit von diesen Ergebnissen die Signalleitungen (15, 16) aktiviert.
  2. Schaltungsanordnung nach Anspruch 1 dadurch gekennzeichnet, dass die Vergleichseinheit (3) über eine Fehlersignalleitung (14) mit der Überwachungseinheit (11) verbunden ist, welche bei Erhalt eines Fehlersignals einen Timer (12) startet und die Recheneinheiten (1, 2) während einer vom Timer (12) vorgegebenen Zeitdauer die Eigenfehlerdiagnose ausführen und die Ergebnisse der Eigenfehlerdiagnose über die Datenleitung (4) an die Überwachungseinheit (11) leiten.
  3. Schaltungsanordnung nach Anspruch 1 oder 2 dadurch gekennzeichnet, dass die Überwachungseinheit (11) einen durch einen Maximalwert begrenzten Fehlerzähler (13) aufweist.
  4. Schaltungsanordnung nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet, dass die Überwachungseinheit (11) über eine Informationsleitung (17) mit der Vergleichseinheit (3) und den beiden Recheneinheiten (1, 2) verbunden ist.
  5. Schaltungsanordnung nach einem der vorhergehenden Ansprüche 1 bis 3 dadurch gekennzeichnet, dass die Überwachungseinheit (11) über die Informationsleitung (18) mit der Vergleichseinheit (3) verbunden ist, von welcher je eine Informationsverteilungsleitung (18a, 18b) an jede Recheneinheit (1, 2) führt.
  6. Schaltungsanordnung nach Anspruch 1 dadurch gekennzeichnet, dass die Signalleitung (15, 16) eine Schaltleitung ist, wobei auf ein Signal der Überwachungseinheit (11) über die Schaltleitung die Recheneinheit (1, 2) abschaltbar ist.
  7. Schaltungsanordnung nach Anspruch 1 dadurch gekennzeichnet, dass die Signalleitung (15, 16) eine Halteleitung ist, wobei ein Signal der Überwachungseinheit (11) über die Haltleitung die Recheneinheit (1, 2) anhält.
  8. Verfahren zur Behandlung von Fehlern in einem Echtzeitsystem mit mindestens zwei Recheneinheiten, wobei die beiden Recheneinheiten redundant arbeiten und ihre Ausgangssignale einem Vergleich unterliegen, wobei jede Recheneinheit eine Eigenfehlerdiagnose durchführen kann dadurch gekennzeichnet, dass das bei Feststellung eines Fehlers in den Ausgangssignalen der Recheneinheiten ein Fehlersignal ausgelöst wird, durch welches eine Laufzeit eines Timers und die Eigenfehlerdiagnosen der Recheneinheiten gestartet werden, wobei infolge der Ergebnisse der Eigenfehlerdiagnosen der Recheneinheiten Signale zur Fehlerbehandlung ausgelöst werden.
  9. Verfahren nach Anspruch 8 dadurch gekennzeichnet, dass zur Eigenfehlerdiagnose die beiden Recheneinheiten entkoppelt werden, wobei jede Recheneinheit vor der Eigenfehlerdiagnose ihren Zustand abspeichert.
  10. Verfahren nach Anspruch 8 oder 9 dadurch gekennzeichnet, dass bei Ausbleiben der Ergebnisse der Eigenfehlerdiagnosen innerhalb der Laufzeit des Timers beide Recheneinheiten abgeschaltet werden.
  11. Verfahren nach Anspruch 8 oder 9 dadurch gekennzeichnet, dass bei Eintreffen der Ergebnisse der Eigenfehlerdiagnosen innerhalb der Laufzeit des Timers diese plausibilisiert werden.
  12. Verfahren nach Anspruch 11 dadurch gekennzeichnet, dass bei Sendung eines korrekten Ergebnisses der Eigenfehlerdiagnose sowohl durch die erste als auch die zweite Recheneinheit beide Recheneinheiten ihren Betriebsablauf fortsetzen.
  13. Verfahren nach Anspruch 12 dadurch gekennzeichnet, dass die beiden Recheneinheiten vor Fortsetzung des Betriebsablaufes synchronisiert werden.
  14. Verfahren nach Anspruch 13 dadurch gekennzeichnet, dass die Synchronisation der beiden Recheneinheiten startet, wenn in einem vorgegebenen Zeitraum ein Abschalt- oder Haltesignal ausbleibt.
  15. Verfahren nach Anspruch 11 dadurch gekennzeichnet, dass bei Übersendung eines korrekten Ergebnisses der Eigenfehlerdiagnose durch eine erste Recheneinheit und eines unkorrekten Ergebnisses oder keine Ergebnisses durch eine zweite Recheneinheit, die erste Recheneinheit ihren Betriebsablauf fortsetzt, während die zweite Recheneinheit abgeschaltet wird.
  16. Verfahren nach Anspruch 11 dadurch gekennzeichnet, dass bei Übermittlung von unkorrekten Ergebnissen der Eigenfehlerdiagnose sowohl durch die erste als auch durch die zweite Recheneinheit, beide Recheneinheiten abgeschaltet werden.
  17. Verfahren nach Anspruch 12 dadurch gekennzeichnet, dass bei Übermittlung von korrekten Ergebnissen durch beide Recheneinheiten ein durch einen Maximalwert begrenzter Zählerstand eines Fehlerzählers erhöht wird.
  18. Verfahren nach Anspruch 17 dadurch gekennzeichnet, dass bei Erreichen des Maximalwertes des Zählerstandes beide Recheneinheiten abgeschaltet werden.
  19. Verfahren nach Anspruch 17 dadurch gekennzeichnet, dass bei Unterschreitung des Maximalwertes des Zählerstandes beide Recheneinheiten ihren Betriebsablauf fortsetzen.
DE200810004205 2008-01-14 2008-01-14 Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen Withdrawn DE102008004205A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE200810004205 DE102008004205A1 (de) 2008-01-14 2008-01-14 Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen
FR0950149A FR2926377A1 (fr) 2008-01-14 2009-01-13 Circuit et procede de traitement d'erreurs dans des systemes fonctionnant en temps reel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200810004205 DE102008004205A1 (de) 2008-01-14 2008-01-14 Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen

Publications (1)

Publication Number Publication Date
DE102008004205A1 true DE102008004205A1 (de) 2009-07-16

Family

ID=40758477

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200810004205 Withdrawn DE102008004205A1 (de) 2008-01-14 2008-01-14 Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen

Country Status (2)

Country Link
DE (1) DE102008004205A1 (de)
FR (1) FR2926377A1 (de)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2557502A4 (de) * 2011-06-29 2016-05-11 Nsk Ltd Fahrzeuginterne vorrichtung zur elektronischen steuerung
WO2016087175A1 (de) * 2014-12-01 2016-06-09 Continental Teves Ag & Co. Ohg Rechensystem für ein kraftfahrzeugsystem
WO2017021507A1 (de) * 2015-08-06 2017-02-09 Continental Automotive Gmbh Verfahren zum betreiben einer steuervorrichtung und diagnosesystem
DE102017209720A1 (de) * 2017-06-08 2019-01-10 Volkswagen Aktiengesellschaft Vorrichtung und Verfahren zum pilotierten Fahren eines Kraftfahrzeugs
CN110045316A (zh) * 2019-04-10 2019-07-23 中国电力科学研究院有限公司 一种减小万用表固有误差影响的直流电压互感器的误差校验方法及系统
CN112241138A (zh) * 2019-07-17 2021-01-19 中车株洲电力机车研究所有限公司 逻辑控制装置以及列车控制系统
EP3652037A4 (de) * 2017-07-13 2021-06-23 Eaton Intelligent Power Limited Elektromechanische steuerung
WO2022263416A1 (de) * 2021-06-16 2022-12-22 Robert Bosch Gmbh Steuerungssystem für mindestens ein empfangendes gerät in sicherheitskritischen anwendungen
DE102022207018A1 (de) 2022-07-08 2024-01-11 Volkswagen Aktiengesellschaft Verfahren zum Fehlermanagement, Computerprogrammprodukt sowie Fahrzeug

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748873A (en) 1992-09-17 1998-05-05 Hitachi,Ltd. Fault recovering system provided in highly reliable computer system having duplicated processors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748873A (en) 1992-09-17 1998-05-05 Hitachi,Ltd. Fault recovering system provided in highly reliable computer system having duplicated processors

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2557502A4 (de) * 2011-06-29 2016-05-11 Nsk Ltd Fahrzeuginterne vorrichtung zur elektronischen steuerung
WO2016087175A1 (de) * 2014-12-01 2016-06-09 Continental Teves Ag & Co. Ohg Rechensystem für ein kraftfahrzeugsystem
WO2017021507A1 (de) * 2015-08-06 2017-02-09 Continental Automotive Gmbh Verfahren zum betreiben einer steuervorrichtung und diagnosesystem
CN107921966A (zh) * 2015-08-06 2018-04-17 大陆汽车有限公司 用于运行控制装置的方法以及诊断系统
CN107921966B (zh) * 2015-08-06 2021-03-09 大陆汽车有限公司 用于运行控制装置的方法以及诊断系统
DE102017209720A1 (de) * 2017-06-08 2019-01-10 Volkswagen Aktiengesellschaft Vorrichtung und Verfahren zum pilotierten Fahren eines Kraftfahrzeugs
EP3652037A4 (de) * 2017-07-13 2021-06-23 Eaton Intelligent Power Limited Elektromechanische steuerung
US11535266B2 (en) 2017-07-13 2022-12-27 Danfoss Power Solutions Ii Technology A/S Electromechanical controller for vehicles having a main processing module and a safety processing module
CN110045316B (zh) * 2019-04-10 2022-07-01 中国电力科学研究院有限公司 一种减小固有误差影响的互感器误差校验方法及系统
CN110045316A (zh) * 2019-04-10 2019-07-23 中国电力科学研究院有限公司 一种减小万用表固有误差影响的直流电压互感器的误差校验方法及系统
CN112241138A (zh) * 2019-07-17 2021-01-19 中车株洲电力机车研究所有限公司 逻辑控制装置以及列车控制系统
WO2022263416A1 (de) * 2021-06-16 2022-12-22 Robert Bosch Gmbh Steuerungssystem für mindestens ein empfangendes gerät in sicherheitskritischen anwendungen
DE102022207018A1 (de) 2022-07-08 2024-01-11 Volkswagen Aktiengesellschaft Verfahren zum Fehlermanagement, Computerprogrammprodukt sowie Fahrzeug

Also Published As

Publication number Publication date
FR2926377A1 (fr) 2009-07-17

Similar Documents

Publication Publication Date Title
EP1917592B1 (de) Rechnersystems mit wenigstens zwei ausführungseinheiten und einer vergleichseinheit sowie verfahren zu dessen steuerung
DE102008004205A1 (de) Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen
EP2641176B1 (de) Mikroprozessorsystem mit fehlertoleranter architektur
EP2550599B1 (de) Kontrollrechnersystem, verfahren zur steuerung eines kontrollrechnersystems, sowie verwendung eines kontrollrechnersystems
DE102014002473B4 (de) System und verfahren zur erhöhung der lockstep-kern-verfügbarkeit
WO2007057271A1 (de) Vorrichtung und verfahren zum beheben von fehlern bei einem wenigstens zwei ausführungseinheiten mit registern aufweisenden system
DE2319753B2 (de) Anordnung zur Datenverarbeitung mittels in Mikroprogrammierung betriebener Prozessoren
EP1810145A1 (de) Verfahren und vorrichtung zur synchronisierung in einem mehrprozessorsystem
EP2513796B1 (de) Verfahren zum betreiben einer recheneinheit
DE60002908T2 (de) Vorrichtung und verfahren zur verbesserten fehlerortung und diagnose in rechnern
DE102015003194A1 (de) Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
DE112010005400T5 (de) System für gegenseitige Überwachung von Mikrocomputern und ein Verfahren für gegenseitige Überwachung von Mikrocomputern
DE68922440T2 (de) Gerät und Verfahren zur gleichzeitigen Einreichung von Fehlerunterbrechung und Fehlerdaten zu einem Unterstützungsprozessor.
EP1810139B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE102008004206A1 (de) Anordnung und Verfahren zur Fehlererkennung und -behandlung in einem Steuergerät in einem Kraftfahrzeug
DE102004037713A1 (de) Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms
EP1618476A2 (de) Programmgesteuerte einheit und verfahren
DE102013021231A1 (de) Verfahren zum Betrieb eines Assistenzsystems eines Fahrzeugs und Fahrzeugsteuergerät
EP1812853A2 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
EP1915687A1 (de) Verfahren und vorrichtung zur steuerung eines rechnersystems mit wenigstens zwei ausführungseinheiten
DE102009001048A1 (de) Vorrichtung und Verfahren zur Prüfung der Arbeitsweise eines Rechnersystems
EP1224547B1 (de) Integrierter elektronischer baustein mit duplizierter kernlogik und hardware-fehlereinspeisung für prüfzwecke
DE112017000868B4 (de) Elektronische Steuervorrichtung
DE102013113404B4 (de) Controllereinheit zum Betreiben zumindest eines Leistungsaktors
EP1751634B1 (de) Verfahren zur überwachung eines verbundes von steuergeräten

Legal Events

Date Code Title Description
R005 Application deemed withdrawn due to failure to request examination
R005 Application deemed withdrawn due to failure to request examination

Effective date: 20150115