Schaltungsanordnung für sicherheitskritische Regelungssysteme
Die Erfindung bezieht sich auf eine für sicherheits¬ kritische Regelungssysteme vorgesehene Schaltungsan¬ ordnung, mit der durch Datenverarbeitung, die zumindest teilweise redundant ausgelegt ist, Eingangssignale ausge¬ wertet und Regelsignale erzeugt werden, wobei zur Er¬ mittlung von Fehlern Ergebnisse der redundanten Datenver¬ arbeitung verglichen und bei Nicht-Übereinstimmung Signale zur Fehlererkennung bzw. Abschaltung oder Sperrung des Regelungssystems gewonnen werden.
Ein Beispiel einer solchen Schaltungsanordnung, die zur Steuerung und Überwachung einer blockiergeschützten Fahr¬ zeugbremsanlage dient, ist aus der Patentschrift DE 32 34 637 C2 bekannt. Nach dieser Schrift werden die Eingangs¬ daten zwei identisch programmierten Mikrocomputern parallel zugeführt und dort synchron verarbeitet. Die Aus¬ gangssignale (und Zwischensignale) der beiden Mikrocom¬ puter werden auf Übereinstimmung überprüft. Wenn die Signale voneinander abweichen, wird ein Abschaltsignal ausgegeben. Bei dieser bekannten Schaltung dient einer der beiden Mikrocomputer zur Erzeugung der Bremsdrucksteuer¬ steuersignale, der andere lediglich zur Bildung der Prüf- signale. Nach diesem Konzept ist eigens zum Zweck der Erkennung eines Datenverarbeitungsfehlers
ein zweiter Mikrocomputer, der in seinem Aufbau und seiner Programmierung mit dem ersten Mikrocomputer identisch ist, vorgesehen.
Nach einer anderen bekannten, in der Offenlegungsschrift DE 41 37 124 AI beschriebenen Schaltungsanordnung werden die Eingangsdaten ebenfalls zwei Mikrocomputern zugeführt, von denen jedoch nur einer die vollständige, aufwendige Signalverarbeitung ausführt. Der zweite Microcomputer dient vornehmlich zur Überwachung, weshalb die Eingangs¬ signale nach Aufbereitung und Bildung von zeitlichen Ab¬ leitungen mit Hilfe vereinfachter Regelalgorithmen und vereinfachter Regelphilosophie weiter verarbeitet werden. Die vereinfachte Verarbeitung reicht zur Erzeugung von Signalen aus, die durch Vergleich mit den in dem auf¬ wendigeren Mikrocomputer verarbeiteten Signale Rück¬ schlüsse auf den ordnungsgemäßen Betrieb zulassen. Durch diese Verwendung eines Prüf-Mikrocomputers geringerer Leistungsfähigkeit läßt sich zwar der Herstellungsaufwand im Vergleich zu einem System mit zwei Mikrocomputern gleicher Leistung reduzieren, doch ist immer noch der für die Fehlererkennung erforderliche Aufwand erheblich.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Schaltungsanordnung der eingangs genannten Art zu ent¬ wickeln, die sich gegenüber den vorgenannten bekannten Schaltungen durch verringerten Herstellungsaufwand aus¬ zeichnet und die dennoch mit hoher Sicherheit Fehler in der Datenverarbeitung erkennt und signalisiert.
Es hat sich gezeigt, daß diese Aufgabe durch eine Schaltungsanordnung gelöst werden kann, deren Besonderheit
darin besteht, zur Datenverarbeitung ein Mikroprozessor¬ system vorgesehen ist, das zwei oder mehrere Zentralein¬ heiten (CPU's) enthält, in denen die Eingangsdaten parallel verarbeitet werden, daß Ausgangsdaten einer CPU, nämlich zumindest die Rechenergebnisse (Datenverarbeitungs-Ergebnisse) bzw. "Daten" oder diese Daten, die Adressen und/oder die Ab¬ laufSteuerungsdaten, mit den entsprechenden Ausgangsdaten der zweiten bzw. anderen CPU's verglichen werden und bei Nicht-Übereinstimmung ein Fehlererkennungssignal erzeugt wird, daß den Schreib-/Lesespeichern des Mikroprozessorsystems jeweils ein Generator zur Erzeugung einer Prüfinformation zugeordnet und die Schreib-/Lesespeicher sowie die Fest¬ wertspeicher durch Speicherplätze für die Prüfinformation erweitert sind, und daß bei jedem schreibenden oder lesenden Zugriff zu den Speichern der Inhalt des Speicherplatzes mit der zuge¬ hörigen Prü Information verglichen bzw. korreliert und ein Fehlererkennungssignal erzeugt wird, wenn Übereinstimmung oder "Plausibilität" nicht gegeben ist.
Erfindungsgemäß wird die geforderte hohe Sicherheit der Erkennung von Datenverarbeitungsfehlern trotz Verzicht auf einen zweiten, die EingangsSignale redundant verarbeiten¬ den Mikrocomputer erreicht. Es genügt ein einziger Mikro¬ computer, der sich von herkömmlichen Schaltkreisen dieser Art im wesentlichen nur durch redundante Verarbeitung der Eingangsdaten mit Hilfe zweier CPU's und durch relativ geringfügige Erweiterung der Speicher durch Speicherplätze für PrüfInformationen, durch zusätzliche, z.B. aus einigen Exklusiv-ODER-Gattern bestehende Generatoren zur Erzeugung der Prüf- oder Redundanzinformation und durch einige zusätzliche Vergleicher unterscheidet.
Die Erweiterung der Speicher durch Plätze für die Prüf- bzw. Redundanzinformationen beschränkt sich - je nach geforderter Redundanz - auf einige Prozent, z.B. 5 bis 20%, des für den Speicher erforderlichen Platzes. Die Verwendung von zwei vollständigen CPU's fällt im Vergleich zu dem Aufwand für das gesamte Mikroprozessorsystem nur wenig ins Gewicht. Der Herstellungsaufwand für das er¬ findungsgemäße Mikroprozessorsystem, das vorzugsweise auf einem Chip untergebracht wird, ist folglich nur wenig höher als für ein vergleichbares Chip bekannter Art. Die Beschränkung auf nur ein Mikroprozessorsystem im Vergleich zu entsprechenden Schaltungen bekannter Art, die zwei Prozessoren besitzen, führt also zu erheblichen Ein¬ sparungen.
Einige vorteilhafte Ausführungsarten der erfindungsgemäßen Schaltungsanordnung sind in den Unteransprüchen be¬ schrieben.
Ein Ausführungsbeispiel der Erfindung besteht darin, daß die Prüfinformation in Form von Redundanzinformation vor¬ liegt. Zweckmäßig ist es, zur Bildung der Prüf- bzw. Redundanzinformation die gerade oder ungerade Parität der Bits der einzelnen Daten zu ermitteln. Es kann jedoch auch die Quersumme der gespeicherten oder übertragenen Daten oder einer Redundanzinformation auf Basis eines vorge¬ gebenen Polynoms gebildet werden.
Nach einer weiteren vorteilhaften Ausführungsart der Er¬ findung werden zur Erzeugung der Prüf- bzw. Redundanzin¬ formation die gespeicherten und/oder die
übertragenen Daten durch ein Paritätsbit erweitert. Der zusätzliche Speicherplatzbedarf für dieses Prüfbit fällt kaum ins Gewicht.
Das Fehlererkennungssignal führt nach einem weiteren Aus¬ führungsbeispiel der Erfindung zur Abschaltung oder zur Sperrung des Mikroprozessorsystems. Bei Verwendung der erfindungsgemäßen Schaltungsanordnung zur Blockierschutz¬ regelung wird durch Abschaltung des Mikroprozessorsystems die Regelung beendet und die konventionelle Bremsen¬ funktion, d.h. die Bremsenfunktion ohne Regelung, sicher¬ gestellt.
Eine Weiterbildung der erfindungsgemäßen Schaltungsan¬ ordnung besteht darin, daß zur Erhöhung der Redundanz nicht nur die CPU's, sondern noch weitere ausgewählte Komponenten des Mikroprozessorsystems, wie Speicher, Eingabe-Ausgabe-Einheiten usw. , zweifach in diesem 1-Chip-Mikroprozessorsystem vorhanden sind.
Ein sicherheitskritisches Regelungssystem, für das sich die erfindungsgemäße Schaltungsanordnung besonders eignet, ist eine Kraftfahrzeug-Bremsanlage mit Blockierschutz- und/oder -Antriebsschlupfregelung. In diesem Fall werden die Sensorsignale, die das Drehverhalten der Räder und/oder das Fahrverhalten des Fahrzeugs wiedergeben, mit dieser Schaltungsanordnung verarbeitet und zur Erzeugung von Bremsdruck-Steuersignalen ausgewertet.
Weitere Merkmale, Vorteile und Anwendungsmöglichkeiten der Erfindung gehen aus der folgenden Beschreibung spezieller Ausführungsbeispiele anhand der beigefügten Abbildungen hervor.
Es zeigen in Prinzipdarstellung als Blockschaltbild und in Teildarstellung
Fig. 1 das Zusammenwirken der Zentraleinheiten (CPU's), der zugehörigen Vergleicher und der Abschaltfunktion eines Mikroprozessorsystems nach der Erfindung,
Fig. 2 in gleicher Darstellungsweise wie Fig. 1 einen Festwertspeicher (ROM) und die zugehörigen Prüf-Komponenten,
Fig. 3 in gleicher Darstellungsweise wie Fig. 2 einen Schreib-/Lesespeicher und die zugehörigen Prüf-Komponenten,
Fig. 4 in gleicher Darstellungsweise den Anschluß von Eingabe- oder Ausgabeeinheiten und
Fig. 5 in gleicher Darstellungsweise wie die vorangegangenen Figuren die Zusammenschaltung der wesentlichen Komponenten eines Mikroprozessorsystems nach der Erfindung.
Fig. 1 veranschaulicht, daß das erfindungsgemäße Mikroprozessorsystem zwei Zentraleinheiten 1,2, CPU's genannt, aufweist, denen über Bus-Systeme, nämlich einen Datenbus Memory DATA IN, einen Steuerbus CONTROL DATA IN und einen Adreßbus ADDRESS IN die Eingangssignale bzw. Eingangsdaten parallel zugeführt werden. Die CPU 1 wird als "aktiv" bezeichnet, weil ihre Ausgangsdaten über die Bus-Systeme D OUT,C OUT,A OUT zur Weiterverarbeitung weitergeleitet werden. Die CPU 2 ist dagegen "passiv", weil sie lediglich zu Prüfzwecken vorhanden ist. Da beide CPU's 1,2 in dem vorliegenden Beispiel identisch aufgebaut und programmiert sind, lassen sich durch Vergleich der Ausgangsdaten beider Einheiten 1,2 Datenverarbeitungs- fehler erkennen. Die Ausgangsdaten der beiden CPU's werden daher mit Hilfe von Vergleichern 3,4,5 auf Übereinstimmung verglichen; dem Datenbus, dem Steuerbus und dem Adreßbus sind jeweils ein eigener Vergleicher 3 bzw. 4 und 5 zugeordnet. Stimmen die Daten nicht überein, wird dies als Datenverarbeitungsfehler bewertet und über ein Gatter 6 ein Abschalt- oder Sperrsignal ausgegeben.
In Bezug auf die Datenverarbeitung in den CPU's 1,2 ist also bei dem erfindungsgemäßen Mikroprozessorsystem 100%ige Redundanz gegeben. Die Prüfung und Überwachung der Speicher beruht auf einem anderen Prinzip. Wie Fig. 2 zeigt, ist einem Festwertspeicher (ROM) 7 ein weiterer Speicher 8 für Redundanzinformationen zugeordnet. In der Praxis wird der Festwertspeicher 7 zur Aufnahme dieser Redundanzinformationen um die entsprechenden Speicherplätze erweitert.
Die aus dem Speicher 7 ausgelesenen Daten werden einem Prüf- oder Redundanz-Generator 9 zugeführt, der Logik¬ schaltungen zur Erzeugung der Prüf-Informationen enthält. Die mit Hilfe des Generators 9 gewonnenen Prüfin¬ formationen müssen mit den im Speicher 8 enthaltenen Informationen übereinstimmen. Trifft dies nicht zu, wird von einem Vergleicher 10 ein Abschalt- oder Sperrsignal erzeugt.
Liegt die Prüfinformation in Form eines Paritätsbits vor, besteht der Generator 9 zur Bildung dieser Prüf- bzw. Redundanzinformation z.B. aus der erforderlichen Anzahl von Exklusiv-ODER-Gattern zur Feststellung der Parität. Auf diese Weise kann jeder Einfach-Fehler erkannt werden; natürlich lassen sich durch Prüf-Informationen auf Basis von zwei oder mehreren Bits auch gleichzeitige Mehrfach¬ fehler erkennen. Die Bildung von Redundanz-Information auf Basis von Polynomen und bestimmten Algorithmen kann eben¬ falls zweckmäßig sein.
Für das Lesen von Informationen aus einem Schreib-/Lese- speicher (RAM) gelten die Erläuterungen anhand der Fig. 2 analog. Auch dieser Schreib-/Lesespeicher wird erfindungs¬ gemäß durch einige Speicherplätze für die Redundanz-In¬ formationen erweitert.
Bei einem schreibenden Zugriff zu einem Schreib-/Lese- speicher 11, siehe Fig. 3, wird mit einem Generator 12, der dem Generator 9 nach Fig. 2 entspricht, eine Prüfin¬ formation erzeugt und in einem Zusatzspeicher 13 - oder
zusätzlichen Speicherplätzen im zugehörigen Schreib-/Lese- speicher - abgelegt. Beim lesenden Zugriff auf diese In¬ formation wird dann wiederum die Übereinstimmung oder "Plausibilität" überprüft.
Wie Fig. 4 zu entnehmen ist, werden die über eine Eingabeeinheit 14 dem erfindungsgemäßen
Mikropozessorsystem zugeführten Daten analog der bereits erläuterten Behandlunsgweise überprüft. Es werden in einem Generator 15 Prüf- bzw. Redundanzinformationen gebildet. Bei Übertragung oder Weiterverarbeitung der Daten erfolgt dann jeweils die Überprüfung in der beschriebenen Weise.
Die Eingabeeinheit 14 erhält die zu verarbeitenden Eingangssignale über doppelt ausgelegte Wege - symbolisiert durch die beiden Eingangspfeile El, E2 in Fig. 4 - aus der zugehörigen Quelle. Die Prüfredundanz kommt erst nach Erfassung der Signale durch das erfindungsgemäße Mikroprozessorsystem zum Tragen.
Grundsätzlich wird die Anzahl der durch die Redundanz¬ generatoren generierten Informationen durch die jeweiligen Forderungen nach Erkennung von Einfach- oder Mehrfach¬ fehlern festgelegt. Ist für einen -Anwendungsfall die Er¬ kennung von Einfachfehlern ausreichend, wird der Redun¬ danzgenerator (9,15) am einfachsten durch eine Kette von Exklusiv-ODER-Gattern verwirklicht. Sollen auch Doppel¬ fehler erkennbar sein, so werden mehrere Redundanzbits, z.B. durch Bilden der Quersumme bzw. Addieren aller Bits eines Wortes, gebildet. Die "Größe" der PrüfInformationen läßt sich somit in Abhängigkeit von der geforderten Sicherheit gegen gleichzeitig auftretende Fehler variieren.
Die anhand der Fig. 1 beschriebenen Vergleicher 3,4,5 lassen sich z.B. durch Komparatorschaltungen realisieren, die "bit"-weise alle Informationen vergleichen. Eine mögliche Ausführungsform ist der bit-weise Vergleich durch die vorgenannten Exklusiv-ODER-Gatter, deren Ausgänge durch ein weiteres ODER-Gatter zusammengefaßt werden.
Der Vergleicher 10 nach Fig. 2 vergleicht die aus dem Speicher 7 aus- gelesene Information, die durch die in dem Redundanz- generator 9 erzeugte Redundanzinformation erweitert ist, mit der Prüf-Information aus dem Speicher 8. Diese Über- prüfung geschieht wiederum z.B. mit Hilfe der zuvor ge- nannten Exklusiv-ODER-Gatter.
Die Sicherheit der Fehlererkennung mit Hilfe der er¬ findungsgemäßen Schaltungsanordnung läßt sich bei Bedarf noch durch folgende Maßnahmen erhöhen: Die Vergleicher und/oder Abschaltpfade können mehrfach ausgelegt werden. Ein "schlafender" Fehler innerhalb eines Vergleichers oder eines Abschaltpfades kann dann eine Systemabschaltung im Fehlerfalle nicht mehr verhindern.
Grundsätzlich ist es auch möglich, einen Vergleicher außerhalb des eigentlichen Mikroprozessorchips anzuordnen. Da ein externer Vergleicher zyklisch Werte aus dem Chip erhält, kann der Vergleicher durch eine zweite Taktver¬ sorgung das Zeitverhalten der CPU's überprüfen und im Fehlerfall eine Abschaltung des Regelungssystems hervor¬ rufen. Als Überprüfungskriterien dienen sowohl der Dateninhalt der empfangenen Informationen als auch das zeitliche Verhalten der Signale.
Zur Reduzierung der Übertragungsbandbreite zwischen Vergleicher und den CPU's kann eine zusätzliche Logik verwendet werden, die bestimmte Informationen auswählt und jedes n-te-Resultat zum externen Vergleicher weiterleitet. Durch ein derartiges Auswahlsystem kann die Anzahl der überprüften Stichproben auf ein noch geringeres, noch ausreichendes Maß reduziert werden.
Des weiteren ist es grundsätzlich möglich, lediglich die empfangene Prüf- bzw. Redundanzinformation und die zum Vergleich berechnete Information durch einen externen Schaltkreis zu überprüfen. Die Anzahl der zu dem externen Schaltkreis zu übermittelnden Signale läßt sich auf diese Weise reduzieren.
Fig. 5 dient zur Veranschaulichung des Zusammenwirkens der einzelnen bereits beschriebenen oder diskutierten Komponenten eines Mikroprozessorsystems nach der Erfindung. Soweit Übereinstimmung mit den Ausführungsbeispielen nach den Fig. 1 bis 4 besteht, wurden gleiche Bezugszeichen in Fig. 5 verwendet.
Die Ausgangsdaten der Zentraleinheiten 1,2 sind in Fig. 5 mit DO (Data OUT), die Adreßdaten mit AO (Adress OUT) und die AblaufSteuerungsdaten mit CO (Control OUT) bezeichnet. "R" deutet auf die zugehörige Prüf- bzw.
Redundanzinformation hin. Die Eingangsdaten sind mit "I" (DI,AI,CI) bezeichnet.
Abweichend von dem Ausführungsbeispiel nach Fig. 1 werden die Ausgänge der Zentraleinheiten oder CPU's (1,2) über
Redundanzgeneratoren 16,17,18 bzw. 16',17',18', die der übertragenen Information eine Prüfinformation, z.B. ein Prüfbit hinzufügen, zu den Vergleichern 3,4,5, weitergeleitet. Wie in Fig. 5 angedeutet ist, sind jeweils zwei Vergleicher 3,3'; 4,4'; 5,5' parallelgeschaltet. Jeder Vergleicher ist in der Lage, ein Fehlererkennungs¬ oder -Abschaltsignal (Switch OFF) abzugeben. Zur Überprüfung der Eingangsdaten DI + R ("R" symbolisiert die Prüf- bzw. Redundanzinformation) ist eine weitere Schaltungskomponente 19,19' vorhanden, die ebenfalls ein Abschaltsignal SW OFF erzeugt, wenn die Information und das zugehörige PrüfSignal nicht plausibel sind.
Abweichend von Fig. 1 sind der besseren Übersicht wegen in Fig. 5 die Signaleingänge der Zentraleinheit 1,2 für die Adreß- und Steuerdaten nicht dargestellt, sondern lediglich der Dateneingang DI bzw. DI + R.
Die Anschaltung des Schreib-/Lesespeichers RAM 11 mit dem zugehörigen Speicher 13 für die Prüf- bzw. Redundanzin¬ formation sowie des Festwertspeichers (ROM) 7 und des zugehörigen PrüfSpeichers 8 wurden bereits anhand der Fig. 2 und 3 erläutert; es besteht kein Unterschied gegenüber dem Ausführungsbeispiel nach Fig. 5. Die Eingabeeinheit 14 mit dem zugehörigen Redundanzgenerator 15 wurden ebenfalls bereits anhand der Fig. 4 erläutert. Wiederum werden zwei in die Eingangssignale E1,E2 parallel zugeführt.
Zur Überprüfung der Ablaufsteuerungsdaten (Controldaten) und der Adreßdaten sind die Schaltungskomponenten 20,20' und 21,21' vorgesehen, die ebenfalls jeweils zweifach
vorhanden sind. Wird in diesen Schaltungskomponenten eine Nicht-Übereinstimmung oder fehlende Plausibilität zwischen den Daten und den zugehörigen PrüfInformationen festgestellt, wird wiederum ein Abschaltsignal SW OFF erzeugt. Die zugehörigen Redundanzgeneratoren sind mit 22,22' und 23,23' beziffert.