[go: up one dir, main page]

DE3854044T2 - System zur Doppelrechner-Übereinstimmungsüberprüfung. - Google Patents

System zur Doppelrechner-Übereinstimmungsüberprüfung.

Info

Publication number
DE3854044T2
DE3854044T2 DE3854044T DE3854044T DE3854044T2 DE 3854044 T2 DE3854044 T2 DE 3854044T2 DE 3854044 T DE3854044 T DE 3854044T DE 3854044 T DE3854044 T DE 3854044T DE 3854044 T2 DE3854044 T2 DE 3854044T2
Authority
DE
Germany
Prior art keywords
computer
check
control
data
counter
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.)
Expired - Lifetime
Application number
DE3854044T
Other languages
English (en)
Other versions
DE3854044D1 (de
Inventor
Malcolm Brearley
David Charles Hurst
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.)
ZF International UK Ltd
Original Assignee
Lucas Industries Ltd
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 Lucas Industries Ltd filed Critical Lucas Industries Ltd
Publication of DE3854044D1 publication Critical patent/DE3854044D1/de
Application granted granted Critical
Publication of DE3854044T2 publication Critical patent/DE3854044T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1654Error detection by comparing the output of redundant processing systems where the output of only one of the redundant processing components can drive the attached hardware, e.g. memory or I/O
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T8/00Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force
    • B60T8/32Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration
    • B60T8/88Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration with failure responsive means, i.e. means for detecting and indicating faulty operation of the speed responsive control means
    • B60T8/885Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration with failure responsive means, i.e. means for detecting and indicating faulty operation of the speed responsive control means using electrical circuitry
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0763Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2270/00Further aspects of brake control systems not otherwise provided for
    • B60T2270/40Failsafe aspects of brake control systems
    • B60T2270/413Plausibility monitoring, cross check, redundancy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Hardware Redundancy (AREA)
  • Regulating Braking Force (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Multi Processors (AREA)

Description

  • Diese Erfindung bezieht sich auf ein Zweifach- Computer-Querprüfungssystem zur Verwendung in einem Steuersystem mit hoher Integrität.
  • Die Erfindung ist zum Beispiel auf ein Antiblockier- Bremssteuersystem für Fahrzeuge anwendbar, in welchem ein Computer dazu verwendet wird, von Radgeschwindigkeits- Meßumformern empfangene Daten zu verarbeiten und das Freigeben der Bremse eines bestimmten Rades zu steuern, wenn die Verzögerung dieses Rades zu stark ist.
  • In einem derartigen System ist es klarerweise wichtig, sicherzustellen, daß ein Computerfehler nicht einen Zustand verursacht, in dem eine Bremse gelöst wird, wenn kein Rutschzustand vorliegt. Es wurde bereits vorgeschlagen, zwei identische Computer in das System einzuschließen, die beide dieselben Eingangssignale empfangen und, bei korrektem Betrieb, beide dieselben Steuer-Ausgangssignale erzeugen. Zwischen den beiden Computern werden Verbindungen bereitgestellt, um zu ermöglichen, daß jeder die Steuer- Ausgangssignale des anderen überwacht. Zum Vergleich der Ausgangssignale wird eine redundante Verarbeitung verwendet und falls Abweichungen zwischen diesen Steuer-Ausgangssignalen entstehen, wird der Antiblockiervorgang verhindert, so daß das Bremssystem als normales System ohne Antiblockiervorgang arbeitet.
  • Dieser frühere Vorschlag besitzt einige Nachteile. Erstens ist es nötig, den relativ teuren Hochleistungscomputer zu verdoppeln. Zweitens ist ein große Anzahl von Verbindungen zwischen den Computern erforderlich, falls das System wie üblich einige unabhängige Kanäle enthält. Dies kann bedeuten, daß teurere Computer verwendet werden müssen. Drittens gibt es allgemein gesprochen nur Steuer- Ausgaben von den Computern, wenn eine tatsächlich Rutschsituation entsteht und die tatsächliche komplette Querüberprüfung tritt daher nur selten auf. Viertens wird die Verwendung identischer Computer mit identischen Programmen einen Programmfehler nicht aufdecken, wenn dieser in einer Routine vorhanden ist, die nur unter besonderen Umständen ausgeführt wird, und es ist bei Verwendung identischer Bauteile vom selben Wafer, die an einer gemeinsamen Versorgung betrieben werden, möglich, daß eine Störung der Versorgung entsprechende Computerfehler erzeugen kann, die unentdeckt bleiben, außer wenn sie massive Fehler darstellen.
  • Aus unserem früheren EP-A-096 510 ist eine Computeranordnung bekannt, die verschiedene erste und zweite Computer enthält, die auf gemeinsame Eingangssignale auf jeweiligen Eingangsleitungen reagieren und jeweils mit unterschiedlichen Programmen zur wechselseitigen Erzeugung nominal identischer erster und zweiter Ausgangssignale ausgestattet sind. Der erste Computer erzeugt auch Grenzwerte für das zweite Ausgangssignal und der zweite Computer erzeugt Grenzwerte für das erste Ausgangssignal, wobei jeder Grenzwert gleichzeitig mit den entsprechenden Ausgangssignalen erzeugt wird. Unannehmbare Unterschiede zwischen den Ausgangssignalen und ihren jeweiligen Grenzwerten bewirken, daß die Steuerung des Systems auf einen dritten Computer übergeht. Somit werden im Steuersystem von EP-A-096 510 abgeleitete Eingangssignale wechselseitig in zwei getrennte verschiedene Prozessoren eingespeist, auf denen verschiedene Software läuft, wobei beide die erforderliche volle Steuerfunktion ausführen können. Jeder Prozessor empfängt dieselben Eingangssignale und führt mit unterschiedlicher Software dieselben Operationen aus; um normalerweise dasselbe Ausgabeergebnis zu erzeugen, wird das Verfahren der "parallelen Verarbeitung" verwendet. Das System stützt sich auf einen zyklischen Vergleich des Ergebnisses des jeweils anderen mit erstens dem eigenen Ergebnis, und zweitens einem getrennt abgeleiteten Grenzwert, wobei die Ableitung der Ergebnisse und Schaltungswerte durch deutlich verschiedene Programme erreicht wird. Der Datenaustausch erfolgt auf zwei verschiedenen Leitungen.
  • Die erste Leitung trägt ein erstes Ergebnissignal und ein zweites Grenzsignal. Die zweite Leitung trägt ein zweites Ergebnissignal und ein erstes Grenzsignal. Alle diese Ergebnisse und Grenzsignale werden auf der Grundlage der Eingangssignale berechnet und stehen in einem direkten Zusammenhang mit den erforderlichen Ausgaben, wobei die Ergebnissignale die Steuerwerte sind und die Grenzsignale Werte sind, welche die bei den eingespeisten Eingangssignalen erlaubten maximalen oder minimalen Ergebnisse oder Grenzwerte repräsentieren. Deshalb sind alle Signale abhängig von der Eingabe. Um mögliche Unregelmäßigkeiten zu detektieren, werden zwei Sätze von je drei Vergleichen verwendet, wobei ein Satz zyklisch durch jeden Prozessor ausgeführt wird. Die drei Vergleiche sind:
  • (a) Ist das erste/zweite Ergebnis innerhalb der ersten/zweiten Grenze; (b) liegen die ersten und zweiten Grenzen in einem vorherbestimmten Abstand voneinander; und (c) liegen die ersten und zweiten Ergebnisse in einem vorherbestimmten Abstand voneinander. Alle drei Vergleiche sind Vergleiche von abgeleiteten, mit Eingaben zusammenhängenden Signalen und variieren mit einer Veränderung der Eingangswerte.
  • Es ist ein Ziel der vorliegenden Erfindung, ein Zweifach-Computer-Querprüfungssystem bereitzustellen, welches diese Nachteile überwindet.
  • Gemäß der Erfindung wird ein Zweifach-Computer- Querprüfungssystem bereitgestellt, das einen Steuercomputer, eine Steuerdatenzuführeinrichtung zum Bereitstellen von Steuerdaten für den Steuercomputer, wobei der Steuercomputer die Steuerdaten verarbeitet und Steuer-Ausgangssignale erzeugt, einen Überwachungscomputer, um den Betrieb des Steuercomputers zu überprüfen, wobei der Steuercomputer und der Überwachungscomputer so eingerichtet sind, daß sie zyklisch Überprüfungsdaten miteinander austauschen, wobei die Überprüfungsdaten unabhängig von den Steuerdaten sind, jeder Computer eine vorbestimmte Berechnung mit den durch ihn vom anderen Computer empfangenen Daten ausführt und jeder Computer überprüft, ob die vom anderen Computer empfangenen Daten eine vorherbestimmte Beziehung zu den im vorhergehenden Zyklus an den anderen Computer gesendeten Überprüfungsdaten haben, und eine Abschalteinrichtung umfaßt, die von beiden Computern angesteuert wird, um das Steuerungssystem in dem Fall abzuschalten, daß wenigstens einer der Überprüfungsvorgänge eine Abweichung erbringt.
  • Bei einer derartigen Anordnung kann der Überwachungscomputer weniger teuer und weniger leistungsfähig als der Steuercomputer sein. Er kann zum Beispiel mit niedrigerer Taktfrequenz laufen.
  • Einer der beiden Computer läuft vorzugsweise als Hauptcomputer, der den Zeitablauf des Austauschs der Überprüfungsdaten steuert. Es ist vorzuziehen, daß der Steuercomputer der Hauptcomputer ist, so daß der Austausch der Überprüfungsdaten zeitlich so gelegt werden kann, daß er mit präzisen Punkten in dessen Steuerungsbetriebszyklus zusammenfällt. Ein Fehler beim Empfang von Überprüfungsdaten am präzisen Punkt, wenn er erwartet wird, wird als ein Fehler gedeutet, der die Betätigung der Abschalteinrichtung bewirkt.
  • Die Überprüfungsdaten können aus einem einzelnen Byte bestehen, welches zwischen den beiden Computern entweder seriell oder parallel übertragen werden kann. In diesem Fall kann die von jedem Computer ausgeführte vorherbestimmte Berechnung die Addition einer Primzahl zum Wert des Bytes in jedem Zyklus beinhalten. Eine derartige Addition wird vorzugsweise in einer Reihe von getrennten Stufen während des Betriebszyklus des fraglichen Computers ausgeführt. Weitere "Berechnungsvorgänge" können zum Beispiel die Umkehr der Reihenfolge der einzelnen Bits des Steuerdatenbytes beinhalten. Die von den beiden Computern verwendeten Algorithmen sind vorzugsweise verschieden, obwohl das Endergebnis jedes Algorithmus dasselbe ist.
  • Die Abschalteinrichtung kann so eingerichtet sein, daß die bei der ersten Gelegenheit arbeitet, bei der eine Abweichung der Überprüfungsdaten gefunden wird. Falls das Steuersystem jedoch in einer verrauschten Umgebung, wie beispielsweise in einem Bremssteuersystem in einem Motorfahrzeug verwendet werden soll ist es vorzuziehen, jeden Computer so einzurichten, daß eine Zählung der in einer Perioden auftretenden Abweichungen unterhalten wird, und die Abschalteinrichtung nur betrieben wird, wenn ein derartiger Zählerstand eine voreingestellte Schwelle erreicht. Somit kann jeder Computer zum Beispiel zwei Zähler (in seiner Software) besitzen, von denen einer die Anzahl der korrekten Überprüfungszyklen zählt und der andere die Anzahl der Überprüfungszyklen zählt, in denen eine Abweichung auftritt, wobei der andere Zähler (falls er nicht bereits auf Null steht) jedesmal dekrementiert wird, wenn durch den erstgenannten Zähler eine vorherbestimmte Anzahl von Zählungen ausgeführt worden ist.
  • Die Erfindung wird mit Bezug auf die beigefügten Zeichnungen im folgenden nur beispielhaft weiter beschrieben, es zeigen:
  • Figur 1 ein Blockdiagramm eines Antiblockier-Bremssystems, welches ein Beispiel eines Zweifach-Computer- Querprüfungssystems gemäß der Erfindung enthält;
  • Figur 2 ein Zeitablaufsdiagramm, welches ein Beispiel des Zeitablaufs des Austauschs der Überprüfungsdaten zeigt;
  • Figur 3 eine Tabelle, welche ein Beispiel des Datenüberprüfungsalgorithmus für die beiden Computer darstellt; und
  • Figur 4 eine Tabelle, welche ein Beispiel für den Haupt-Steuerzyklus eines der beiden Computer darstellt.
  • Zunächst mit Bezug auf Figur 1 enthält das gezeigte System einen Haupt-Steuermikrocomputer 10, der von vier Radgeschwindigkeitssensoren S&sub1; bis S&sub4; Steuer-Eingangsdaten empfängt und gemäß den Eingangsdaten vier Magnetspulen SOL&sub1; bis SOL&sub4; sowie ein Pumpenrelais 11 steuert. Der Hauptcomputer erfüllt somit die Aufgabe der Datenerfassung von den Radgeschwindigkeitssensoren und des Treffens der Steuerentscheidungen, welche durch Magnetspulen-Treibersignale zu den Bremsen übertragen werden. Zusätzlich besitzt der Hauptcomputer ein Pumpenmotor-Treibersignal, welches ein Relais 11 zum Sicherstellen der Energiequelle für das Wiederanwenden der Bremsen mit Energie versorgt, ein Treibersignal für das Abschaltrelais 14, welches normalerweise mit Energie versorgt wird, um so die Batterieversorgung B+ mit den Magnetspulen und der Relaisspule für den Pumpenmotor zu verbinden, und ein Lampen-Treibersignal, um eine Fehlerwarnlampe 15 leuchten zu lassen, falls irgend ein Fehler detektiert wird. Dieses letztere Signal wird über ein ODER-Gatter G1, wo es mit einem entsprechenden Signal vom Überwachungscomputer so kombiniert wird, daß jedes aktive der beiden Signale die Lampe 13 anschaltet, zur Treiberstufe geführt.
  • Allgemein ausgedrückt arbeitet das System auf bekannte Weise, so daß, falls festgestellt wird, daß irgendein Rad während eines Bremsvorgangs zu rasch abbremst, die entsprechende Magnetspule unter mit Energie versorgt wird und ein Ventil betätigt, welches die Bremse des fraglichen Rads vom Hauptbremszylinder abschneidet und erlaubt, daß Bremsflüssigkeit in ein Reservoir abgelassen wird, von dem sie durch die vom Relais 11 gesteuerte Pumpe wieder zurückgeführt wird, um die Bremse wieder anzuziehen.
  • Zur Überwachung des Betriebs des Steuercomputers ist auch ein Überwachungsmikrocomputer 12 enthalten. Dieser Überwachungscomputer besitzt seinen eigenen Takt, der mit einer niedrigeren Geschwindigkeit laufen kann als der des Steuercomputers. Er ist vorzugsweise ein billigeres, weniger leistungsfähiges Gerät als der Steuercomputer, mit weniger RAM und weniger ROM und kann ein komplett anderer Typ als der Steuercomputer 10 sein.
  • Dieser Überwachungscomputer 12 kann mit dem Steuercomputer über nur drei Leitungen verbunden sein, d.h. S&sub0;, S&sub1; und SM. Die Leitung S&sub0; verbindet einen seriellen Ausgang des Überwachungscomputers 12 mit einem seriellen Eingang des Steuercomputers. Die Leitung S&sub1; verbindet einen seriellen Ausgang des Steuercomputers mit einem seriellen Eingang des Überwachungscomputers und die Leitung SM verbindet einen Synchronisierungsausgang des Steuercomputers mit einem entsprechenden Eingang des Überwachungscomputers. Die serielle Ausgabe vom Überwachungscomputer kann von einem erzeugten seriellen Anschluß im Überwachungscomputer übernommen werden, falls ein sehr preiswertes Bauteil verwendet wird, das keine serielle I/O-Einrichtung besitzt. (Wie offensichtlich sein wird, können zwei Computer, beide mit dezidiertem I/O, leichter verbunden werden, oder es könnte paralleler Datenaustausch eingesetzt werden, falls sehr schnelle Übertragungen erforderlich wären und höhere Kosten auftreten würden). Die Leitungen S&sub1; und SM sind auch mit einem Gatter G&sub3; verbunden, um einem Diagnoseausgang serielle Daten zu liefern.
  • Unter allen normalen Betriebsbedingungen gibt es eine vorhersehbare Folge von Datenfluß zwischen den beiden Computern, resultierender Verarbeitung dieser Überprüfungsdaten in beiden Computern und regelmäßiger Synchronisierung des vom Steuercomputer unabhängig getakteten Überwachungscomputers. Zusätzlich liefern beide Computer über ein UND- Gatter G2 Treibersignale an die Abschaltrelais-Treiberstufe, um die Erregung des Relais FS und dadurch das Anliegen von Leistung an die Magnetspulen und das Pumpenrelais PM aufrechtzuerhalten. Von jedem Computer werden weitere Ausgaben an das ODER-Gatter G1 in der Lampentreiber-Eingangsschaltung geliefert, aber diese Signale sind inaktiv, bis durch einen der Computer ein Fehlerzustand detektiert wird.
  • Der Haupt- und der Überwachungscomputer besitzen separate Taktquarze, wobei der Hauptcomputer als das Haupt- Zeitgeberelement verwendet wird, auf das die Steuergenauigkeit bezogen ist. Dieser Hauptzeitablaufszyklus wird typischerweise auf 8 ms oder 16 ms gesetzt und in jedem Zyklus werden auf der Grundlage der im vorhergehenden Zyklus erfaßten Daten Entscheidungen getroffen, wobei die Ausgangssignale an die Magnetventile erzeugt werden, sobald der Steueralgorithmus beendet ist. In manchen Systemen kann der serielle Ausgang des Hauptcomputers auch dazu verwendet werden, zu Diagnosezwecken in jeder Zyklusperiode ein Datenbyte auszugeben. Falls dies der Fall ist, kann der Zyklus durch eine vom Hauptmikrocomputer erzeugte Haupt- Zeitablaufswellenform in zwei Hälften aufgespaltet werden. Dies ist in Fig. 2 gezeigt, wo die Wellenform SM vom Hauptcomputer die UART-Verbindung als Diagnoseausgang auswählt, wenn sie "low" ist und beim Übergang von "low" auf "high" die zeitliche Resynchronisierung des Überwachungscomputers bewirkt. Wenn SM "high" ist, wird die serielle Ausgabe zur Task für die Querprüfungs-Interkommunikation zwischen den beiden Computern geleitet, die mit einer anderen Datenübertragungsrate (Baudrate) als die Diagnosekommunikation stattfinden kann.
  • Die in Fig. 2 gezeigten typischen Zeitablaufswellenformen basieren auf einem 8 ms Zyklus, der bei einer synchronisierenden Flanke beginnt, wenn die Leitung SM von 0 auf 1 wechselt. Bei dieser Flanke wird die Zeitsteuerung des Überwachungscomputers neu gestartet und es wird für kurze Zeit ein Fenster geöffnet, in dem ein Byte vom Hauptcomputer erwartet wird. Dieses Byte wird die Antwort auf die vom Überwachungsrechner während einer eingestellten Zeitspanne im vorhergehenden Zyklus ausgesendete Anregung sein. Der korrekte Empfang dieses Bytes CHECKR führt dazu, daß im Überwacher die interne Überprüfung stattfindet, wenn CHECKR mit der berechneten Antwort vom Überwachungscomputer verglichen wird. Eine Übereinstimmung erzeugt die bereits berechnete nächste Anregung zur Übertragung an den Hauptcomputer zu einer gegebenen Zeit nach der ansteigenden Flanke der Wellenform SM, welche die Synchronisierung durchgeführt hat. Der Hauptcomputer hat typischerweise etwa 7 ms Zeit, diese Anregungsdaten zu verarbeiten und das Erwiderungsbyte CHECKR für die Übertragung unmittelbar nach der nächsten Synchronisierungsstufe bereitzumachen.
  • Wiederum mit Bezug auf Fig. 2 zeigt die obere Skizze 2a das Signal auf der Leitung SM, welches wie gezeigt abwechselnd für 4 ms "high" und für 4 ms "low" ist. Die ansteigenden Flanken dieser Wellenform lösen die Übertragung serieller Daten zum Überwachungscomputer aus, während der niedrige Gatterpegel von SM die Übertragung serieller Daten zum Diagnoseausgang auslöst. Die Skizze 2b zeigt die Datenübertragungszeiträume für den Steuercomputer 10 auf der Leitung S&sub1;, während die Skizze 2c die Übertragungszeiträume für den Überwachungscomputer 12 auf der Leitung S&sub0; zeigt.
  • Wie oben erklärt arbeitet der Steuercomputer 10 in diesem Datenübertragungsschema als Hauptcomputer, wobei jeder neue Zyklus mit der Übertragung von Überprüfungsdaten vom Steuercomputer 10 zum Überwachungscomputer startet. Nach einer festen Zeitspanne, während der der Überwachungscomputer das vom Steuercomputer empfangene Überprüfungsdatenergebnis testet, überträgt der Überwachungscomputer das nächste Byte Überprüfungsdaten an den Steuercomputer.
  • Die Überprüfungsseguenz verläuft folgendermaßen:
  • (a) Vom Hauptcomputer wird als Reaktion auf ein im vorhergehenden Zyklus vom Überwachungscomputer empfangenes Anregungsbyte zu einem bestimmten Zeitpunkt in jedem 8 ms Zyklus ein Überprüfungs-Erwiderungsbyte gesendet.
  • (b) Der Empfang dieses Bytes im Überwachungscomputer bewirkt eine Überprüfung des Datenwerts und falls dieser korrekt ist, wird ein neue Anregungsbyte ausgegeben und seriell zum Hauptcomputer übertragen, um die nächste Anregung zu bilden. Es wird wieder ein Zeitfenster erzeugt, während dem diese Anregung vom Hauptcomputer angenommen werden kann.
  • (c) Die vom Überwachungscomputer erzeugten Anregungsdaten werden verarbeitet, damit der Hauptcomputer das Erwiderungsbyte erzeugen kann.
  • (d) Der Überwachungskomputer berechnet ebenfalls das Erwiderungsbyte, so daß er den von der Antwort des Hauptcomputers zu erwartenden Datenwert kennt und ihn bei Empfang auf Übereinstimmung überprüfen kann.
  • (e) Der Überwachungscomputer ist so programmiert, daß er das nächste Anregungsbyte aus dem vorhergehenden Überprüfungs-Erwiderungsbyte berechnet, so daß ein bekannter Verlauf erzeugt werden kann.
  • (f) Der Hauptcomputer ist so programmiert, daß er ebenfalls durch einfache Verarbeitung der vorhergehenden Anregungsdaten das nächste Anregungsbyte berechnet, das vom Überwachungscomputer geliefert werden sollte. Die erste Überprüfung der vom Hauptcomputer empfangenen Anregung muß Übereinstimmung mit der intern berechneten erwarteten Anregung zeigen, oder die erforderliche Verarbeitung im Hauptcomputer wird nicht unternommen und das Rückgabebyte im nächsten Zyklus wird übergangen.
  • In dieser Computer-Querprüfungskombination müssen sowohl der Überwachungscomputer als auch der Hauptcomputer ein spezifiziertes Ausgangssignal erzeugen, um ein Abschalten des Systems zu verhindern. Falls einer der Computer somit ein Eingabe-Überprüfungsbyte empf ängt, welches von dem (durch interne Berechnung) erwarteten abweicht, wird das lokale Haltesignal, das den Betrieb aufrechterhält, zurückgenommen. Diese Haltesignalkombination erhält typischerweise die Erregung des Abschaltrelais 14, so daß das Zurücknehmen eines der Haltesignale dieses Relais 14 freigibt und alle Steuerausgänge der Steuereinheit sperrt. Dieses Relais kann in manchen Systemen natürlich als Festkörperschalter ausgeführt sein und das Freigabesignal kann dazu verwendet werden, die Auswahl einiger geeigneter Standardeinstellungen zu bewirken, falls der Prozeß eine wichtige Funktion des Fahrzeugs ist, die nicht komplett ungesteuert sein kann. Die aktuelle Praxis in Antiblockier- Bremssystemen ist jedoch, die Ausgangssignale an die Magnetspulen abzuschalten und dadurch zum normalen Bremsen zurückzukehren und von einem der Computer, wo der Fehler detektiert wurde, ein Signal auszugeben, welches die Fehlerwarnlampe 13 zum Leuchten bringt.
  • Der gewählte Prozeß, dem jede Überprüfungsanregung unterworfen wird, bevor das Erwiderungsbyte erzeugt wird, kann komplex sein und ist natürlich je nach Wahl des Systemdesigners offen gegenüber großen Variationen. Es muß nicht immer derselbe Prozeß sein, da, abhängig vom Wert des Anregungsbytes, einer aus einer vorher eingerichteten Auswahl von vorher in beiden Computern programmierten Prozessen ausgewählt werden könnte. Fig. 3 zeigt zum Zweck einer einfachen Darstellung eine Art und Weise, auf welche die beiden Computer die Überprüfungsdaten verwenden, um den Betrieb des jeweils anderen zu überprüfen. Zu Beginn des ersten Arbeitszyklus des Systems besitzt der Überwacher ein Überprüfungsdatenbyte von 0000 0000 und überträgt dieses zu geeigneter Zeit an den Haupt-Steuercomputer. Die Überprüfungsdaten werden Bit für Bit mit dem höchstwertigen Bit zuerst übertragen und dieses Bit wird in dem vom Steuercomputer empfangenen Byte das niedrigstwertige Bit. Die erste vom Steuercomputer mit dem Überprüfungsdatenbyte ausgeführte Operation ist, die Reihenfolge von dessen Bits umzukehren (das ist zu diesem Zeitpunkt unwichtig, da alle Bits Null sind, aber in späteren Zyklen ist es wichtig). Zu dem im Steuercomputer gehaltenen Byte wird nun eine Primzahl wie beispielsweise 19 addiert, so daß ein Wert von 0001 0011 erzeugt wird. Dann wird die Reihenfolge der Bits in diesem Byte wieder umgekehrt und das Byte wird zu geeigneter Zeit an den Überwachungscomputer übertragen. Der Wert des empfangenen Bytes (welches mit umgekehrter Reihenfolge seiner Bits gespeichert wird) wird mit einem Wert verglichen, der durch Addieren von 19 zum ursprünglichen Wert des im vorhergehenden Zyklus gesendeten Bytes erzeugt wird. Falls der Vergleich ergibt, daß die Werte dieselben sind, wird der nächste zu übertragende Wert durch Addieren von 4 zum empfangenen Byte (d.h. 0001 0111) erzeugt und zum Steuercomputer übertragen, wo das Byte wiederum mit umgekehrter Bitreihenfolge empfangen wird. Bei Empfang durch den Steuercomputer werden die Bits in umgekehrter Reihenfolge neu geschrieben und das sich ergebende Byte wird mit dem Wert des letzten in umgekehrter Reihenfolge empfangenen Bytes plus 23 verglichen. Falls dieser Vergleich korrekt ist, wird wieder 19 addiert, die Reihenfolge der Bits umgekehrt und das resultierende Byte übertragen und so weiter. Das Umkehren der Bits ist eine Extra-Task, welche beim Überprüfen des Steuercomputers nützlich ist, sie ist aber kein wesentlicher Teil des Tests der Datenübertragung.
  • Es sollte betont werden, daß die für das obige Beispiel ausgewählte Zahl 19 in keinster Weise von Bedeutung ist. Was jedoch von Bedeutung ist, ist der Verlauf von einem Überprüfungs-Anregungswert zum nächsten. Dieser ist auf 23 gesetzt, obwohl irgendeine Primzahl genügen würde, so daß bei 256-maligem Datenaustausch sowohl für die Anregung als auch für die Erwiderung jede mögliche Kombination von Bits in einem 8 Bit breiten Byte verwendet wird. Somit wird während einer Zeitspanne von 2 Sekunden die Testverarbeitung ausreichend oft wiederholt, um eine volle Überprüfung der Fähigkeiten aller parallelen Teile der Hauptelemente der Verarbeitungsschaltkreise jedes Computers auszuführen.
  • Der Hauptcomputerprozeß im oben dargestellten Beispiel ist aus der Tabelle von Fig. 3 ersichtlich und umfaßt typischerweise die folgenden Schritte:
  • (1) Empfangen eines Anregungsdatenbytes zu einem präzisen Zeitpunkt im Zyklus.
  • (2) Umkehren der Reihenfolge aller Bits dieses Bytes, das in umgekehrter Reihenfolge übertragen wird.
  • (3) Diesen Wert gegen den gespeicherten erwarteten Wert testen und durch Addieren von 23 den nächsten erwarteten Wert berechnen und speichern.
  • (4) Falls die korrekte Anregung empfangen wurde, mit einem beliebigen vom Systemdesigner ausgewählten Mehrschritt-Verfahren die Konstante 19 addieren.
  • (5) Umkehren der Reihenfolge aller Bits des Ergebnisses.
  • (6) Übertragen des Ergebnisses an den Überwacher unmittelbar nach der synchronisierenden Flanke.
  • Die Haupt-Task in dieser Routine, die Addition von 19 zum Anregungsbyte kann offensichtlich in einem einzelnen Schritt oder viel nützlicher durch einen komplexen Mehrschritt-Prozeß ausgeführt werden, der so lang und kompliziert ist, wie es in Anbetracht der Haupt-Steuertask und der dem Hauptcomputer auferlegten Zeit- und Kapazitätsbeschränkungen praktikabel ist. Diese Addition von 19 wird typischerweise in eine ausreichende Anzahl von Schritten aufgespaltet, so daß diese in der Haupt-Steuertask des Computers so verteilt werden können, daß die Befehle und Einrichtungen des Computers wie Indexregisteradressierung, Stapeloperationen und bedingte Sprünge getestet werden. Wenn das Steuerprogramm des Hauptcomputers mit einem bekannten Zyklus arbeitet, werden die Schritte zur Durchführung der Addition von 19 in den normalen Steuerroutinen verteilt, so daß jedes Überspringen einer Routine das Fehlen eines wichtigen Schritts im Additionsprozeß bedeutet, wodurch ein unkorrektes Ergebnis erzeugt wird, welches einen Fehler anzeigt und bewirkt, daß der Überwachungscomputer das Abschaltsignal gibt.
  • Fig. 4 zeigt ein Beispiel für ein typisches Antiblockier-Steuerprogramm, in welchem die Verarbeitung der vom Steuercomputer 10 empfangenen Überprüfungsdaten nicht unmittelbar bei Empfang durchgeführt wird, sondern über den gesamten Zyklus des Hauptcomputers 10 verteilt ist. Somit können die erste Umkehr der Bitreihenfolge, der Vergleich mit dem letzten empfangenen Datenbyte, die Addition und die zweite Umkehr der Bitreihenfolge in einzelne Stufen aufgeteilt werden, die zwischen den verschiedenen vom Steuercomputer ausgeführten Steuertasks eingefügt werden. Besonders die Task für die Addition von 19 kann wie oben erläutert aufgespaltet und zu einer Operation mit beträchtlicher Komplexität gemacht werden, die das Addieren oder Subtrahieren verschiedener Werte zu einer Vielzahl von verschiedenen Punkten im Zyklus umfaßt. Andere mögliche Operationen können das Bewegen des Bytes zwischen unterschiedlichen Registern, Stapeloperationen und bedingte Sprünge einschließen. Diese Routinen können in verschiedene Unterroutinen des Haupt-Steuerprogramms eingebettet werden, so daß, falls irgendeine Unterroutine aus irgendeinem Grund verfehlt wird, bei der Addition von 19 ein wesentlicher Schritt übergangen wird und in der Addition ein Fehler auftritt.
  • Aus Fig. 1 ist wiederum ersichtlich, daß die Gatter G&sub1; und G&sub2; desweiteren Eingänge für weitere Ausgänge der beiden Computer 10 und 12 besitzen. Diese Gatter steuern jeweils eine Lampe 13 und ein Magnetspulen-Trennrelais 14. Falls einer der beiden Computer ein GO Signal zurücknimmt, das anzeigt, daß entweder ein erwartetes Byte Überprüfungsdaten nicht empfangen wurde oder daß das Ergebnis des diesbezüglichen Vergleichs nicht zufriedenstellend war, wird die Lampe angeschaltet und die Stromversorgung der Magnetspulen wird abgetrennt. Das GO Signal kann jedesmal zurückgenommen werden, wenn ein einzelner Fehler auftritt. Die Software jedes Computers kann alternativ zwei Zähler enthalten, von denen einer jedesmal erhöht wird, wenn ein inkorrekter Vergleich erfolgt und der andere unter der Voraussetzung, daß der zuerst erwähnte Zähler nicht auf Null steht, jedesmal erhöht wird, wenn ein guter Vergleich erfolgt. Diese Anordnung dekrementiert den Zählerstand des ersten Zählers nach einer voreingestellten Anzahl von korrekten Vergleichen, außer der Zählerstand des anderen Zählers ist bereits Null. Wenn die vom ersten Zähler gehaltene Zählung einen Schwellenwert erreicht, wird das GO Signal zurückgenommen. Die voreingestellte Anzahl und der Schwellenwert werden durch den Konstrukteur gewählt, um einen an den gesteuerten Prozeß und die elektrische Umgebung angepaßten Rausch-Toleranzpegel bereitzustellen.
  • Das oben beschriebene System fordert beide Computer auf, sich fortlaufend durch wiederholte Sequenzen von Überprüfungsdaten zu arbeiten und ist durch eine Organisation gekennzeichnet, die erfordert, daß jeder einzelne Fehler oder Vergleich, resultierend aus der Berechnung oder der Übertragung, das Abschalten bewirkt. Für manche Systeme, die in einer sehr verrauschten Umgebung arbeiten müssen, z.B. wo den Stromversorgungen beträchtliche Überspannungen überlagert sind, kann ein Bereich von Bedingungen vorhanden sein, unter denen die Übertragungen von Überprüfungsdaten beeinflußt werden, was einen Fehler und daraus folgendes Abschalten dessen bewirkt, was ansonsten ein perfekt funktionierendes System ist. Unter diesen Umständen ist es wünschenswert, daß ein definierter Pegel der Fehlertoleranz in das Betriebsschema der Computerkombination eingebaut ist. Um dies zu erreichen, muß das Überprüfungsschema so modifiziert werden, daß ein einzelner Fehler registriert wird, aber nicht das Abschalten des Systems bewirkt und daß der Verlauf der Anregungsdaten wiederhergestellt werden und die Folge an einem geeigneten Punkt neu begonnen werden kann, wenn der Verlauf wegen eines Übertragungsfehlers verloren geht. Dies kann als Ganzes durch eine Variation der Software zu dem oben beschriebenen Schema erreicht werden, indem sie so eingerichtet wird, daß der Hauptcomputer die nächsten erwarteten Anregungsdaten dadurch berechnet, daß er immer 23 zum vorher empfangenen Anregungsbyte addiert, auch wenn dieses inkorrekt war, und der Überwachungscomputer immer das erwartete Ergebnis dadurch berechnet, daß er 19 zu den im vorhergehenden Zyklus ausgegebenen Anregungsdaten addiert. Wenn weiterhin keine Übereinstimmung zwischen dem erwarteten Ergebnis und dem empfangenen Ergebnis erhalten wird, wird die nächste Anregung entweder als 4+ das empfangene Ergebnis oder als 4+ das berechnete Ergebnis ausgegeben, aber weder der Überwachungscomputer noch der Hauptcomputer bewirken eine unmittelbare Abschaltung. Jeder Computer, der Daten empfängt, die inkorrekt erscheinen, geht in einen Fehler- Wartezustand indem er intern an einer Stelle für vermutete Fehler einen von Null verschiedenen Zählerstand registriert. Wenn sich dieser Fehler wiederholt, wird der Vermutungszähler erhöht, bis in einem der Computer ein Zählerstand von n1 registriert wird und an diesem Punkt ein lokales Abschalten erzeugt wird, da vermutet wird, daß ein nichtbehebbarer Überprüfungsfehler detektiert wurde. Beim Auftreten eines vorübergehenden Fehlers, z.B. bei einer Übertragungsstörung, wird der Fehlervermutungszähler von Null aus erhöht, aber sich nicht wiederholende Fehler bewirken, daß die Folge der Datenaustauschvorgänge bei einem typischen Zählerstand von 1 oder 2 zufriedenstellend wieder aufgenommen wird. Unter diesen zwischenzeitlichen Nicht-Null Bedingungen im Verdachtszähler wird ein zweiter Zähler gestartet, um die Austauschzyklen zu zählen, in denen kein Fehler aufgezeichnet wird, und sollte dieser Zähler den Stand n2 erreichen, wird dieser Zählerstand zurück auf Null gesetzt und der Verdachtszähler wird verringert. Sich fortsetzende korrekte Datenaustauschvorgänge verringern den Verdachtszähler schließlich auf Null, wo bis zu einem Zeitpunkt, an dem ein weiterer fehlerhafter Datenaustausch detektiert wird, jegliches Zählen beendet wird. Durch geeignete Wahl der Werte für n1 und n2 kann der Toleranzpegel auf eine Einstellung gesetzt werden, die für den Prozeß und die elektrische Umgebung geeignet ist.
  • Es wird erkannt werden, daß die oben beschriebenen Systeme deshalb für preiswerte Antiblockiereinrichtungen besonders geeignet sein können, weil die beiden Computer nicht identisch sein müssen und deshalb nicht denselben Fehlerzuständen unterliegen, und auch in der Lage sind, gegenseitig fortlaufend ihren Betrieb zu überprüfen, um so kritisch jeglichen schweren Fehler in ihrer Verarbeitungsfunktion oder ihrem Betriebszyklus zu detektieren. Im Vergleich zu bekannten Systemen kann eine wesentliche Kosteneinsparung erreicht werden, da anstelle von zwei teuren Hauptcomputern eine Kombination aus einem Hauptcomputer und einem preiswerteren Überwachungscomputer verwendet wird, aber die Querprüfungsfunktion ist kontinuierlich und hängt nicht davon ab, daß das Auftreten von Rutsch-Eingangssignalen eine volle Querprüfung im Betrieb zugänglich macht.

Claims (13)

1. Ein Zweifach-Computer-Querprüfungs-System mit einem Steuercomputer (10), einer Steuerdatenzuführeinrichtung (S&sub1;-S&sub4;) zum Bereitstellen von Steuerdaten für den Steuercomputer (10), wobei der Steuercomputer (10) die Steuerdaten verarbeitet und Steuer-Ausgangssignale erzeugt, sowie einem Überwachungscomputer (12), um den Betrieb des Steuercomputers zu überprüfen, dadurch gekennzeichnet, daß der Steuercomputer (10) und der Überwachungscomputer (12) so eingerichtet sind, daß sie Überprüfungsdaten zyklisch miteinander austauschen, wobei jeder Computer (10, 12) eine vorbestimmte Berechnung mit den durch ihn von dem anderen Computer empfangenen Daten ausführt und jeder Computer überprüft, ob die von dem anderen Computer empfangenen Überprüfungsdaten eine vorbestimmte Beziehung zu den an den anderen Computer in dem vorhergehenden Zyklus gesendeten Überprüfungsdaten haben, und eine Abschalteinrichtung (14), die von beiden Computern (10, 12) angesteuert wird, um das Steuerungssystem in dem Fall abzuschalten, daß wenigstens einer der Überprüfungsvorgänge eine Abweichung erbringt.
2. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 1, bei dem der Überwachungscomputer (12) weniger leistungsfähig als der Steuercomputer (10) ist.
3. Eine Zweifach-Computer-Querprüfungs-System nach Anspruch 1 oder 2, bei dem einer der beiden Computer (10, 12) als ein Hauptcomputer arbeitet, der den Zeitablauf des Überprüfungsdatenaustausches steuert, um den Betrieb des anderen Computers und die Übertragung jedes Elementes der Überprüfungsdaten so zu synchronisieren, daß er mit genau vorbestimmten Stellen in dem Betriebszyklus des als Hauptcomputer betriebenen Computers zusammenzufällt.
4. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 1 oder 2, bei dem beide Computer gezwungen sind, die jeweiligen Übertragungen des anderen an genau vorbestimmten Stellen in einem Haupt(-computer-)betriebszyklus zu empfangen, wobei das Ausfallen eines derartigen Empfangs als ein Betriebsfehler gewertet wird, der die Betätigung der Abschalteinrichtung bewirkt.
5. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 1 oder 2, bei dem der Steuercomputer (10) als ein Hauptcomputer arbeitet, der den Zeitablauf des Überprüfungsdatenaustausches so steuert, daß dieser mit genauen Stellen in dessen Überprüfungsbetriebszyklus zusammenfällt, wobei das Ausfallen des Überprüfungsdatenempfangs an der genauen Stelle, wenn er erwartet wird, als ein Fehler gewertet wird, der einen Betrieb der Abschalteinrichtung hervorruft.
6. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 5, bei dem der als Hauptrechner arbeitende Hauptcomputer (10) einen Haupt(-computer-)zeitablaufzyklus an den anderen Computer (12) durch eine Synchronisiereinrichtung (SYNC) in jedem Zyklus des Überprüfungsbetriebes übermittelt, wobei der Zeitablauf aller Datenaustauschvorgänge in Beziehung zu dem aktiven Übergang dieser Synchronisiereinrichtung (SYNC) ausgeführt werden.
7. Ein Zweifach-Computer-Querprüfungs-System nach einem der Ansprüche 1 bis 6, bei dem die Überprüfungsdaten aus einem einzigen Byte bestehen, das entweder seriell oder parallel zwischen den beiden Computern (10, 12) übertragen wird, wobei die vorbestimmte durch jeden Computer ausgeführte Berechnung die Addition einer Primzahl zu dem Wert des Byte in jedem Zyklus umfaßt.
8. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 7, bei dem die vorbestimmte Berechnung nicht als eine einzelne Routine ausgeführt wird, sondern als eine Vielzahl von Unterroutinen, die über die Überprüfungsablaufsequenz verteilt sind.
9. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 8, bei dem der vorbestimmte Berechnungsablauf, nachdem er in eine Vielzahl von Stufen unterteilt worden ist, weiter verkompliziert ist, um eine Vielzahl von den Merkmalen und Einrichtungen zu benutzen, die in dem jeweiligen Computer vorhanden sind, wodurch der Betrieb dieses Computers noch vollständiger überprüft wird.
10. Ein Zweifach-Computer-Querprüfungs-System nach einem der Ansprüche 1 bis 9, in dem die Abschalteinrichtung dazu eingerichtet ist, bei der ersten Gelegenheit zu wirken, bei der eine Überprüfungsbyte-Abweichung gefunden worden ist.
11. Ein Zweifach-Computer-Querprüfungs-System nach einem der Ansprüche 1 bis 9, bei dem eine Fehlertoleranzschwelle eingeführt ist, indem für jeden Computer ein Zähler von in einem zeitraum auftretenden Abweichungen unterhalten wird, und bei dem die Abschalteinrichtung nur dann betätigt wird, wenn dieser Zähler eine vorbestimmte Schwelle erreicht.
12. Ein Zweifach-Computer-Querprüfungs-System nach Anspruch 11, bei dem jeder Computer zwei Zähler in seiner Software aufweist, von denen einer die Anzahl der korrekten Überprüfungszyklen zählt und der andere die Anzahl der Überprüfungszyklen zählt, in denen eine Abweichung auftritt, wobei der andere Zähler (falls er nicht bereits auf Null steht) jedesmal dekrementiert wird, wenn eine vorbestimmte Anzahl von Zählungen durch den erstgenannten Zähler ausgeführt worden ist.
13. Ein Zweifach-Computer-Querprüfungs-System nach einem der Ansprüche 1 bis 9, in dem eine Fehlertoleranzschwelle dadurch eingeführt ist, daß der Steuercomputer (10) dazu eingerichtet ist, jedes neu empfangene Anregungsbyte mit dem vorhergehenden ähnlichen Byte zu vergleichen, und falls die vorprogrammierte Differenz nicht erkannt wird, eine Abschaltung nicht unmittelbar bewirkt, sondern solange verzögert wird, bis ein erster Zähler, der von Null aus bei jedem Vergleichsfehler inkrementiert wird, einen voreingestellten ersten Zählwert erreicht, und indem bei zwischenliegenden Nicht-Null-Werten dieses ersten Zählers ein zweiter Zähler bei jedem richtigen Vergleich so inkrementiert wird, daß bei Erreichen einer vorbestimmten zweiten Schwelle dieser zweite Zähler zurückgesetzt und der erste Zähler verringert wird, wobei dieser Vorgang solange wiederholt wird, bis entweder der erste Zähler erneut auf Null verringert worden ist, oder der erste voreingestellte Zählwert erreicht worden ist und eine Abschaltung auftritt, und indem der Überwachungscomputer (12), der jedes empfangene Erwiderungsbyte mit seiner intern errechneten Erwiderung vergleicht, in ähnlicher Weise mit ersten und zweiten Zählern ausgestattet ist, die in einer genau vergleichbaren Weise wie die des Steuercomputers (10) betrieben werden.
DE3854044T 1987-12-22 1988-12-12 System zur Doppelrechner-Übereinstimmungsüberprüfung. Expired - Lifetime DE3854044T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB878729901A GB8729901D0 (en) 1987-12-22 1987-12-22 Dual computer cross-checking system

Publications (2)

Publication Number Publication Date
DE3854044D1 DE3854044D1 (de) 1995-07-27
DE3854044T2 true DE3854044T2 (de) 1995-10-26

Family

ID=10628886

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3854044T Expired - Lifetime DE3854044T2 (de) 1987-12-22 1988-12-12 System zur Doppelrechner-Übereinstimmungsüberprüfung.

Country Status (5)

Country Link
US (1) US5016249A (de)
EP (1) EP0322141B1 (de)
JP (1) JP2901258B2 (de)
DE (1) DE3854044T2 (de)
GB (1) GB8729901D0 (de)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2241123B (en) * 1990-02-16 1993-09-29 Teves Gmbh Alfred Circuit arrangement for an anti-lock-controlled vehicle brake system
JP2698685B2 (ja) * 1990-03-27 1998-01-19 株式会社東芝 計算機システム遠隔操作装置
DE4022671A1 (de) * 1990-07-17 1992-01-23 Wabco Westinghouse Fahrzeug Elektronisches bremssystem fuer stassenfahrzeuge
GB9101227D0 (en) * 1991-01-19 1991-02-27 Lucas Ind Plc Method of and apparatus for arbitrating between a plurality of controllers,and control system
US6247144B1 (en) * 1991-01-31 2001-06-12 Compaq Computer Corporation Method and apparatus for comparing real time operation of object code compatible processors
US5274554A (en) * 1991-02-01 1993-12-28 The Boeing Company Multiple-voting fault detection system for flight critical actuation control systems
DE4114999C2 (de) * 1991-05-08 2001-04-26 Bosch Gmbh Robert System zur Steuerung eines Kraftfahrzeuges
US5458404A (en) * 1991-11-12 1995-10-17 Itt Automotive Europe Gmbh Redundant wheel sensor signal processing in both controller and monitoring circuits
GB9206344D0 (en) * 1992-03-24 1992-05-06 Lucas Ind Plc Improved braking in electronic braking systems
US5416908A (en) * 1992-04-28 1995-05-16 Allen-Bradley Company, Inc. Interface between industrial controller components using common memory
JPH064353A (ja) * 1992-06-17 1994-01-14 Sumitomo Electric Ind Ltd 複数のマイクロコンピュータの相互監視回路
JP3535531B2 (ja) * 1992-09-30 2004-06-07 本田技研工業株式会社 走行状態制御装置
US5434997A (en) * 1992-10-02 1995-07-18 Compaq Computer Corp. Method and apparatus for testing and debugging a tightly coupled mirrored processing system
US5471631A (en) * 1992-10-19 1995-11-28 International Business Machines Corporation Using time stamps to correlate data processing event times in connected data processing units
EP0596410B1 (de) * 1992-11-04 1999-07-28 Digital Equipment Corporation Erkennung von Befehlssynchronisationsfehlern
JP3343143B2 (ja) * 1992-12-02 2002-11-11 日本電気株式会社 故障診断方法
FR2704329B1 (fr) * 1993-04-21 1995-07-13 Csee Transport Système de sécurité à microprocesseur, applicable notamment au domaine des transports ferroviaires.
US5504859A (en) * 1993-11-09 1996-04-02 International Business Machines Corporation Data processor with enhanced error recovery
US5648759A (en) * 1994-02-02 1997-07-15 National Semiconductor Corporation Failsafe voltage regulator with warning signal driver
US5490072A (en) * 1994-07-18 1996-02-06 Kelsey-Hayes Company Method and system for detecting the proper functioning of an ABS control unit utilizing dual programmed microprocessors
DE19735956C1 (de) * 1997-08-19 1998-09-10 Siemens Ag Verfahren zum Überwachen eines Ermittlungsverfahrens
DE19743463A1 (de) 1997-10-01 1999-04-08 Itt Mfg Enterprises Inc Verfahren zur Fehlerkennung von Mikroprozessoren in Steuergeräten eines Kfz.
DE19749068B4 (de) * 1997-11-06 2005-03-10 Bosch Gmbh Robert Verfahren und Vorrichtung zur Überwachung eines Rechnersystems bestehend aus wenigstens zwei Prozessoren
DE19902031A1 (de) 1999-01-20 2000-07-27 Bosch Gmbh Robert Steuergerät zur Steuerung sicherheitskritischer Anwendungen
FR2790857B1 (fr) 1999-03-12 2001-09-07 Siemens Automotive Sa Systeme de securite pour vehicule automobile
US6772367B1 (en) * 1999-10-13 2004-08-03 Board Of Regents, The University Of Texas System Software fault tolerance of concurrent programs using controlled re-execution
DE10006206A1 (de) 2000-02-11 2001-08-30 Daimler Chrysler Ag Elektronisches Steuersystem
JP3636031B2 (ja) 2000-04-28 2005-04-06 株式会社デンソー 電子制御装置内のマイクロコンピュータ監視方法
US7017073B2 (en) * 2001-02-28 2006-03-21 International Business Machines Corporation Method and apparatus for fault-tolerance via dual thread crosschecking
US6760653B2 (en) 2001-05-15 2004-07-06 Trw Inc. Electric power assisted steering system having a single integrated circuit with two processors
ITSV20020018A1 (it) * 2002-05-03 2003-11-03 Alstom Transp Spa Dispositivo di elaborazione o comando operante in sicurezza intrinseca
US20050240806A1 (en) * 2004-03-30 2005-10-27 Hewlett-Packard Development Company, L.P. Diagnostic memory dump method in a redundant processor
US7426656B2 (en) * 2004-03-30 2008-09-16 Hewlett-Packard Development Company, L.P. Method and system executing user programs on non-deterministic processors
US20060020852A1 (en) * 2004-03-30 2006-01-26 Bernick David L Method and system of servicing asynchronous interrupts in multiple processors executing a user program
DE102005037222A1 (de) * 2004-10-25 2007-02-15 Robert Bosch Gmbh Verfahren und Vorrichtung zur Auswertung eines Signals eines Rechnersystems mit wenigstens zwei Ausführungseinheiten
EP1672505A3 (de) * 2004-12-20 2012-07-04 BWI Company Limited S.A. Fail-Silent-Knotenarchitektur
US8095549B2 (en) * 2005-10-05 2012-01-10 Intel Corporation Searching for strings in messages
DE102007029116A1 (de) * 2007-06-25 2009-01-02 Continental Automotive Gmbh Verfahren zum Betreiben eines Mikrocontrollers und einer Ausführungseinheit sowie ein Mikrocontroller und eine Ausführungseinheit
JP4408921B2 (ja) * 2007-08-22 2010-02-03 株式会社デンソー 電子機器
US8352795B2 (en) * 2009-02-11 2013-01-08 Honeywell International Inc. High integrity processor monitor
JP5662181B2 (ja) * 2011-02-01 2015-01-28 株式会社ケーヒン 移動体の電子制御装置
JP2014106145A (ja) * 2012-11-28 2014-06-09 Denso Corp 電池監視装置
US11151002B2 (en) * 2019-04-05 2021-10-19 International Business Machines Corporation Computing with unreliable processor cores
JP2020192883A (ja) * 2019-05-28 2020-12-03 日立オートモティブシステムズ株式会社 制動機構の電子制御システム
EP4127843A4 (de) 2020-03-31 2024-03-20 Stealth Technologies Pty Ltd Autonome fahrzeug-/robotersteuerung
JP2022106310A (ja) * 2021-01-07 2022-07-20 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング 液圧制御ユニット
TWI785952B (zh) * 2021-12-30 2022-12-01 新唐科技股份有限公司 密碼加速器以及加解密運算的差分故障分析方法
TWI827237B (zh) * 2022-09-06 2023-12-21 新唐科技股份有限公司 密碼加速器以及加解密運算防篡改方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3618015A (en) * 1970-06-30 1971-11-02 Gte Automatic Electric Lab Inc Apparatus for discriminating between errors and faults
US3810119A (en) * 1971-05-04 1974-05-07 Us Navy Processor synchronization scheme
FR2182259A5 (de) * 1972-04-24 1973-12-07 Cii
DE3003291C2 (de) * 1980-01-30 1983-02-24 Siemens AG, 1000 Berlin und 8000 München Zweikanalige Datenverarbeitungsanordnung für Eisenbahnsicherungszwecke
GB2105492B (en) * 1981-09-05 1985-03-06 Lucas Ind Plc A duplicated computer control system
EP0096510B1 (de) * 1982-06-03 1988-07-27 LUCAS INDUSTRIES public limited company Steuerungssystem in erster Linie reagierend auf Signale von Digitalrechnern
JPS5913447A (ja) * 1982-07-14 1984-01-24 Hitachi Ltd 分散処理システムの処理方法
JPS5958560A (ja) * 1982-09-28 1984-04-04 Japanese National Railways<Jnr> デ−タ処理装置の診断方式
US4566101A (en) * 1983-02-28 1986-01-21 United Technologies Corporation Oscillatory failure monitor
DE3518105A1 (de) * 1985-05-21 1986-11-27 Alfred Teves Gmbh, 6000 Frankfurt Verfahren und schaltungsanordnung zur unterdrueckung von kurzzeitigen stoerungen
JPS61290566A (ja) * 1985-06-19 1986-12-20 Hitachi Ltd マルチネツトワ−クシステム故障診断方法
DE3621106C2 (de) * 1986-06-24 1995-03-23 Vdo Schindling Verfahren zur ON-LINE-Verarbeitung gleicher Eingabegrößen mittels zweier Prozessoren
US4792955A (en) * 1986-08-21 1988-12-20 Intel Corporation Apparatus for on-line checking and reconfiguration of integrated circuit chips
US4843608A (en) * 1987-04-16 1989-06-27 Tandem Computers Incorporated Cross-coupled checking circuit

Also Published As

Publication number Publication date
US5016249A (en) 1991-05-14
DE3854044D1 (de) 1995-07-27
JPH02138642A (ja) 1990-05-28
JP2901258B2 (ja) 1999-06-07
EP0322141A3 (de) 1991-03-13
EP0322141B1 (de) 1995-06-21
EP0322141A2 (de) 1989-06-28
GB8729901D0 (en) 1988-02-03

Similar Documents

Publication Publication Date Title
DE3854044T2 (de) System zur Doppelrechner-Übereinstimmungsüberprüfung.
DE3518105C2 (de)
DE69226181T2 (de) Dialysegerät mit sicherheitssteuerung
EP0744676B1 (de) Verfahren und Einrichtung zum sicheren Betrieb einer numerischen Steuerung auf Werkzeugmaschinen oder Robotern
DE69427875T2 (de) Verfahren und vorrichtung zur inbetriebnahme eines datenbuswählers zur auswahl der steuersignale einer redundanten asynchronen digitalen prozessoreinheit aus einer vielzahl davon
EP0610316B1 (de) Verfahren und vorrichtung zur fehlerbehandlung in elektronischen steuergeräten
EP1040028B1 (de) Verfahren zur fehlererkennung von mikroprozessoren in steuergeräten eines kfz
DE19539519A1 (de) Antriebssteuerbefehlseinheit, Synchronsteuersystem für eine Vielzahl von Antriebssteuerbefehlseinheiten, und Synchronsteuerverfahren für die Einheiten
DE2258917B2 (de) Regelvorrichtung mit mindestens zwei parallelen signalkanaelen
DE602004013244T2 (de) Hochgeschwindigkeitssynchronisation in einer doppelrechnerbasierten Sicherheitssteuerung
DE3816254A1 (de) Steuereinheit zur lenkung der hinterraeder eines strassenfahrzeuges
DE3024370C2 (de) Redundantes Steuersystem
DE3687172T2 (de) Multiplexuebertragungssystem.
DE19811864B4 (de) Redundante Steuervorrichtung und Fehlerbehebungsverfahren dafür
EP0799143B1 (de) Verfahren und schaltungsanordnung zur überwachung der funktion einer programmgesteuerten schaltung
DE4431901A1 (de) Vorrichtung zur Störerfassung in einem Antischlupf-Bremssteuersystem für Kraftfahrzeuge
DE3685761T2 (de) Multiplexuebertragungssystem.
DE4212440A1 (de) Verfahren zum feststellen von uebertragungsfehlern bei einem katastrophenverhuetungsueberwachungssystem
DE2929472A1 (de) Fehlerdiagnosevorrichtung eines steuersystems
DE2701159B2 (de) Schaltungsanordnung zum periodischen Überprüfen der Funktionsfähigkeit von Teilen einer blockiergeschützten druckmittelbetätigten Fahrzeugbremsanlage
DE2918543A1 (de) Vorrichtung zur diagnose von stoerungen in einer steuerschaltung fuer elektromagnetische betaetiger
DE60214965T2 (de) Verfahren zur Synchronisation von Daten bei geregelten redundanten Systemen
DE3639609A1 (de) Einrichtung zur ueberpruefung von datenuebertragungsfehlern, insbesondere bei elektronischen registrierkassen
EP3338189A2 (de) Verfahren zum betrieb eines mehrkernprozessors
WO1988005570A1 (fr) Procede et dispositif de surveillance d&#39;organes de commande terminaux commandes par un ordinateur

Legal Events

Date Code Title Description
8364 No opposition during term of opposition