DE3037150C2 - Sichere Datenverarbeitungseinrichtung - Google Patents
Sichere DatenverarbeitungseinrichtungInfo
- Publication number
- DE3037150C2 DE3037150C2 DE19803037150 DE3037150A DE3037150C2 DE 3037150 C2 DE3037150 C2 DE 3037150C2 DE 19803037150 DE19803037150 DE 19803037150 DE 3037150 A DE3037150 A DE 3037150A DE 3037150 C2 DE3037150 C2 DE 3037150C2
- Authority
- DE
- Germany
- Prior art keywords
- program
- data processing
- secure data
- processing device
- processors
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/183—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
- G06F11/184—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
- G06F11/167—Error detection by comparing the memory output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1675—Temporal synchronisation or re-synchronisation of redundant processing components
- G06F11/1683—Temporal synchronisation or re-synchronisation of redundant processing components at instruction level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1487—Generic software techniques for error detection or fault masking using N-version programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1675—Temporal synchronisation or re-synchronisation of redundant processing components
- G06F11/1691—Temporal synchronisation or re-synchronisation of redundant processing components using a quantum
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Description
Die Erfindung bezieht sich auf eine sichere Datenverarbeitungseinrichtung,
wie sie im Oberbegriff des Anspruches 1 näher definiert ist.
Eine derartige Datenverarbeitungseinrichtung ist z. B. durch die DE-AS 27 25 922 bekanntgeworden.
Dabei wird mit einem 3-Rechner-System gearbeitet, wobei die einzelnen Ergebnisse parallel miteinander
verglichen und bei entsprechender Obereinstimmung ausgegeben werden. Zur Vermeidung von gleichzeitigen,
gleichartigen Fehlern durch Störimpulse ist eine Zeitverzögerung für den Verarbeitungsbeginn zwischen
den einzelnen Rechnern vorgesehen, wodurch zu einem Zeitpunkt in den Rechnern jeweils unterschiedliche
Programmabschnitte bearbeitet werden. Diese würden verschiedene Fehler verursachen können, die dann
erkennbar wären. Das beschriebene System ar-w>eitet mit
ίο gleicher Software, doch ist auch unterschiedliche
Software einsetzbar. Die Ergebnisse der Prozessoren werden zu verschiedenen Zeiten der Vergleicherbaugruppe
zugeführt, was Wartezeiten bedeutet. Solche Wartezeiten sind unerwünscht, weil sie die Verarbeitungsgeschwindigkeit
nachteilig mindern.
Andere Mehrrechnersysteme für den Einsatz bei hoch
zuverlässigen bzw. sicheren Rechnerkonfigurationen sind z. B. aus der Veröffentlichung »Proceedings of the
Annual Symposium on Computer Architecture« der University of Florida 9. bis 11. IZ 1973 bekanntgeworden.
Hierbei werden Architekturen angesprochen, die nach Erkennung von Fehlern durch Doppelrechnersysteme
in Zeitredundanz eine neue Programmversion aktivieren und danach durch Mehrheitsbestimmung eine
Folgetätigkeit veranlassen. Systemen mit gleicher Hardware und unterschiedlicher Software wird hierbei
Vorrang gegeben, da durch den abweichenden Programmaufbau die Programme zeitlich versetzt laufen
und bei Störimpulsen auf das System verschiedene Fehler erzeugt werden, die im Vergleicher erkannt
werden. Mit diesem Verfahren sind auch Programmierfehler erkennbar, da man davon ausgehen kann, daß die
verschiedenen Programmierer nicht identische Fehler machen. Die unterschiedliche Software hat aber den
Nachteil, daß zu vergleichende Ereignisse erst zu stark differierenden Zeiten zur Verfügung stehen können und
dadurch entsprechend lange Wartezeiten in Kauf genommen werden müssen. Auch bei unterschiedlichen
(diversitären) Systemen kann die Bearbeitungsreihenfolge erheblich verschieden sein, was zu größeren
Wartezeiten und auch Synchronisationsschwierigkeiten führen kann.
Aufgabe der Erfindung ist, die Wartezeiten wesentlich zu mindern und damit die Verarbeitungsgeschwindigkeit
der Datenverarbeitungseinrichtung zu erhöhen. Dabei soll die Einrichtung diversitär in Hard- als auch in
Software aufgebaut und betrieben werden können.
Diese Aufgabe wird für eine Einrichtung der eingangs genannten Art gemäß den kennzeichnenden Merkmalen
des Anspruches 1 gelöst.
Der besondere Vorteil der Datenverarbeitungseinrichtung nach der Erfindung besteht darin, daß die
Rechnerleistung höher ist und die Synchronisierung vereinfacht wird.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind den Unteransprüchen entnehmbar.
Anhand eines schematischen Ausführungsbeispieles wird im folgenden die Erfindung näher erläutert.
In der Figur ist das Blockschaltbild einer Datenverarbeitungseinrichtung
mit drei Kanälen dargestellt. Beim Ausführungsbeispiel sind die drei Kanäle 1, II und III in
ihrer Struktur vollkommen gleich aufgebaut, können aber hardware-mäßig verschieden sein. Die Informationen
werden über eine Eingabeschaltung DE, die aus sicheren Bausteinen besteht, eingegeben. Sie werden
über BUS I1 BUS II bzw. BUS III Mikroprozessoren MPI1 MPII bzw. MPIII zugeleitet. Jeder Mikroprozessor
besitzt einen Zwischenspeicher ZS I, ZSW, bzw.
ZSIIl, der Bestandteil des Arbeitsspeichers ist Die Zwischenspeicher stehen mit einer Vergleicherbaugruppe
MS/VB mit Majoritätsschaltung in Verbindung, die
aus sicheren Bausteinen besteht Die Vergleicherbaugruppe MS/VB ist an die Datenausgabeschaltung DA
angeschlossen. Die Datenausgabeschaltung DA ist ebenfalls aus sicheren Bausteinen aufgebaut Sicher
heißt in diesem Falle signaltechnisch sicher.
Bedingt durch die Diversität auf der Hard- und Softwareseite wird erwartet, daß auch zufällige in
gleicher Art in jedem Kanal auftretende gleichzeitige Fehler erkannt werden.
Zu diesem Zweck werden bei einem d.-eikanaligen
Aufbau die Mikroprozessoren, die mit eigenen Taktgeneratoren arbeiten, von ihrem Takt her nicht is
zwangssynchronisiert Die Synchronisation der Kanäle wird von einer nicht dargestellten Koordinierungseinheit
gesteuert Sie hat die Aufgabe, die Programmabläufe der Prozessoren zu koordinieren und die digitalen
Ausgaben zu steuern, damit an dem Vergleicher zur bestimmten Zeit identische Informationen anstehen und
ausgegeben werden.
Hierbei wird das Anwenderprogramm in Einzelsegmente aufgeteilt Nach jedem kurzen Programmabschnitt
findet ein Vergleich statt Innerhalb dieser Abschnitte laufen die Mikroprozessoren frei. Nachdem
ein Mikroprozessor einen Abschnitt abgearbeitet hat, teilt er dies der Koordinierungseinheit mit und wartet
auf eine externe Freigabe.
Hat auch der zweite Mikroprozessor — es werden hier der Einfachheit halber nur zwei Kanäle betrachtet
— diesen Programmabschnitt innerhalb einer vorgegebenen Zeitspanne abgearbeitet erteilt die Koordinierungseinheit
beiden Mikroprozessoren die Freigabe zur Bearbeitung des nächsten Programmschrittes, sofern
das Vergleichsergebnis nicht eine Wiederholung des Programmschrittes oder eine Stillsetzung der Anlage
bestimmt
Damit nicht die beiden Rechner an jeder Stelle aufeinander warten müssen, an der ein Vergleich
stattfinden soll, werden Teile der Arbeitsspeicher der Mikroprozessoren als Zwischenspeicher, hier ZSI bzw.
ZSII, verwendet, in die die anfallenden Zwischenergebnisse
bis zum Vergleich einheitlich abgespeichert werden.
Die Mikroprozessoren geben somit nach der Erfindung ihre Zwischenergebnisse in die Zwischenspeicher
ein und arbeiten dann sofort die nachfolgenden Programmschritte des Programmabschnittes ab, ohne
erst das Ergebnis von Einzelvergleichen abzuwarten. Erst zum Zeitpunkt des Prgrammabschnittsendes
werden die bis dahin eingegangenen Zwischenergebnisse, die dann in jedem Zwischenspeicher ZSI bzw. ZSII
in gleicher Weise geordnet vorliegen,, kontinuierlich
verglichen.
Die Zwischenspeicher können mehrstufig ausgebaut sein, damit eine Beschleunigung im Vergleich der
aufeinanderfolgenden Zwischenergebnisse erzielt werden kann, um die Fehleroffenbarungszeit zu reduzieren.
Die Synchronisation der Kanäle wird von der nicht dargestellten Koordinierungseinheit in Abhängigkeit
von der Ve<-gleicherbaugruppe gesteuert.
Zwar können durch den unterschiedlichen (diversitären)
Aufbau der Datenverarbeitungseinrichtung Laufunterschiede in den Mikroprozessoren entstehen, aber
dadurch, daß die gesamten Zwischenergebnisse in Zwischenspeichern abgelegt werden, ist ein quasi-kontinuierlicher
Datenvergleich möglich.
Falls ein Mikroprozessor falsche Ergebnisse liefert, so wird dies durch den Vergleich festgestellt und ein
weiteres Arbeiten des Mikroprozessoren beeinflußt.
Ein kontrollierter Wiederanlauf der Datenverarbeitungseinrichtung ist möglich.
Hierzu 1 Blatt Zeichnungen
Claims (6)
1. Sichere Datenverarbeitungseinrichtung mit in mindestens zwei Kanälen korrespondierende Informationen
verarbeitenden Schalxwerken, die programmunabhängig gesteuert werden, wobei jedem
Kanal ein unabhängig arbeitender Prozessor mit eigener Taktsteuerung und jedem Prozessor ein
Zwischenspeicher zugeordnet ist, der eingehende Teilergebnisse von Programmabschnitten von den
einzelnen Prozessoren zwischengespeichert, in einer mit den Zwischenspeichern verbundenen Vergleicherbaugruppe
zu definierten Zeitpunkten die gespeicherten Zwischenergebnisse verglichen und aus dem Vergleichsergebnis Folgeoperationen abgeleitet
werden, dadurch gekennzeichnet, daß als Zwischenspeicher. Teile der jeweiligen
Arbeitsspeicher der Prozessoren vorgesehen sind, in welche mehrere, zu verschiedenen Zeiten eingehende,
von den jeweiligen Prozessoren gelieferte, nach
der zeitlichen Reihenfolge ihres Eintreffens geordnete Zwischenergebnisse der Programmabschnitte
bis zum Ende des jeweiligen Programmabschnittes einheitlich festgelegt abgespeichert werden, während
die Prozessoren inzwischen weitere nachfolgende Programmschritte des jeweiligen Programmabschnittes
bearbeiten, und daß die bis zum Programmabschnittsende eingegangenen Zwischenergebnisse,
die dann in jedem Zwischenspeicher in gleicher Weise geordnet vorliegen, ab dem Zeitpunkt
des Erreichens des Programmabschnittsendes kontinuierlich verglichen werden.
2. Sichere Datenverarbewungseinrichtung nach
Anspruch 1, dadurch gekennzeichnet, daß Dateneingabe- und -ausgabeschaltungvti sowie die Vergleicherbaugruppe
sichere Bausteine sind.
3. Sichere Datenverarbeitungseinrichtung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet,
daß die Zwischenspeicher mehrstufig mit entsprechender Vergleicherzuordnung zur Verkürzung der
Fehleroffenbarungszeit aufgebaut sind.
4. Sichere Datenverarbeitungseinrichtung nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet,
daß die Größe der Zwischenspeicher zur Optimierung der Fehleroffenbarungszeit vorgebbar ist.
5. Sichere Datenverarbeitungseinrichtung nach den Ansprüchen 1 bis 4, dadurch gekennzeichnet,
daß eine Koordinierungseinheit nach dem Eintreffen der Vergleichsergebnisse entweder die Abarbeitung
der nächsten Programmschritte oder die Wiederholung eines Programmschrittes oder die Stillsetzung
veranlaßt.
6. Sichere Datenverarbeitungseinrichtung nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß bei einer mehr als zweikanaligen Ausführung die Vergleicherbaugruppe mit einer
Majoritätsschaltung gekoppelt ist.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19803037150 DE3037150C2 (de) | 1980-09-27 | 1980-09-27 | Sichere Datenverarbeitungseinrichtung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19803037150 DE3037150C2 (de) | 1980-09-27 | 1980-09-27 | Sichere Datenverarbeitungseinrichtung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3037150A1 DE3037150A1 (de) | 1982-04-15 |
DE3037150C2 true DE3037150C2 (de) | 1984-03-15 |
Family
ID=6113378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19803037150 Expired DE3037150C2 (de) | 1980-09-27 | 1980-09-27 | Sichere Datenverarbeitungseinrichtung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE3037150C2 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3639055A1 (de) * | 1986-11-14 | 1988-05-19 | Bosch Gmbh Robert | Verfahren zur betriebsueberwachung und fehlerkorrektur von rechnern eines mehrrechnersystems und mehrrechnersystem |
DE3642851A1 (de) * | 1986-12-16 | 1988-06-30 | Bbc Brown Boveri & Cie | Fehlertolerantes rechensystem und verfahren zum erkennen, lokalisieren und eliminieren von fehlerhaften einheiten in einem solchen system |
DE3918962A1 (de) * | 1989-06-09 | 1990-12-13 | Siemens Ag | Mehrrechnersystem |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3210299A1 (de) * | 1982-03-20 | 1983-09-29 | Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt | Verfahren und vorrichtung zur eingabe von informationen in zwei datenverarbeitungsanlagen |
US4995040A (en) * | 1989-02-03 | 1991-02-19 | Rockwell International Corporation | Apparatus for management, comparison, and correction of redundant digital data |
DE3923432C2 (de) * | 1989-07-15 | 1997-07-17 | Bodenseewerk Geraetetech | Einrichtung zur Erzeugung von Meßsignalen mit einer Mehrzahl von Sensoren |
DE19735956C1 (de) * | 1997-08-19 | 1998-09-10 | Siemens Ag | Verfahren zum Überwachen eines Ermittlungsverfahrens |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2725922C2 (de) * | 1977-06-08 | 1984-08-23 | Standard Elektrik Lorenz Ag, 7000 Stuttgart | Mehrrechnersystem zur Steuerung von trassengebundenen Verkehrsmitteln |
-
1980
- 1980-09-27 DE DE19803037150 patent/DE3037150C2/de not_active Expired
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3639055A1 (de) * | 1986-11-14 | 1988-05-19 | Bosch Gmbh Robert | Verfahren zur betriebsueberwachung und fehlerkorrektur von rechnern eines mehrrechnersystems und mehrrechnersystem |
DE3639055C2 (de) * | 1986-11-14 | 1998-02-05 | Bosch Gmbh Robert | Verfahren zur Betriebsüberwachung und Fehlerkorrektur von Rechnern eines Mehrrechnersystems und Mehrrechnersystem |
DE3642851A1 (de) * | 1986-12-16 | 1988-06-30 | Bbc Brown Boveri & Cie | Fehlertolerantes rechensystem und verfahren zum erkennen, lokalisieren und eliminieren von fehlerhaften einheiten in einem solchen system |
DE3918962A1 (de) * | 1989-06-09 | 1990-12-13 | Siemens Ag | Mehrrechnersystem |
DE3918962C2 (de) * | 1989-06-09 | 1998-01-22 | Siemens Ag | System mit mehreren asynchron arbeitenden Rechnern |
Also Published As
Publication number | Publication date |
---|---|
DE3037150A1 (de) | 1982-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1524103C3 (de) | Datenverarbeitungsgerät | |
DE3300263C2 (de) | ||
DE3850986T2 (de) | Verfahren zur Reservekapazitätsverwendung für Fehlererkennung in einem Multiprozessorsystem. | |
DE2413401C3 (de) | Einrichtung zum Synchronisieren der Programmabschnitte dreier, nach demselben Programm parallel arbeitender Rechner | |
EP0048767A1 (de) | Prioritätsstufengesteuerte Unterbrechungseinrichtung | |
DE1474062B2 (de) | Datenverarbeitungsanlage mit einer anzahl von pufferspeichern | |
DE2443579B2 (de) | Asynchroner Arbiter | |
DE2003150C3 (de) | Prioritätsschaltung | |
DE102009054637A1 (de) | Verfahren zum Betreiben einer Recheneinheit | |
DE3037150C2 (de) | Sichere Datenverarbeitungseinrichtung | |
DE3727017A1 (de) | Synchronisiervorrichtung fuer prozessoren | |
DE1549478B1 (de) | Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden | |
EP0282877B1 (de) | Verfahren und Einrichtung zur Steuerung der Fehlerkorrektur innerhalb einer Datenübertragungssteuerung bei von bewegten peripheren Speichern, insbesondere Plattenspeichern, eines Datenverarbeitungssystems gelesenen Daten | |
EP0657044B1 (de) | Verfahren zum betrieb eines rechnersystems mit mindestens einem mikroprozessor und mindestens einem coprozessor | |
DE1474576A1 (de) | Fehlerkontrolliereinrichtung | |
EP0026734A1 (de) | Sichere Datenverarbeitungseinrichtung | |
DE2733921B2 (de) | Schaltungsanordnung für eine indirekt gesteuerte Vermittlungsanlage, insbesondere Fernsprechvermittlungs anlage | |
DE2813079C3 (de) | Mehrrechnersystem hoher Sicherheit | |
DE1267887B (de) | Fehlererkennungseinrichtung zur UEberwachung von Programmverzweigungen in datenverarbeitenden Maschinen | |
DE2725922C2 (de) | Mehrrechnersystem zur Steuerung von trassengebundenen Verkehrsmitteln | |
DE3113189A1 (de) | "verfahren und vorrichtung zur umwandlung von digitalen zeichencodes, die von einem datenverarbeitungssystem empfangen oder geliefert werden" | |
DE3036923C2 (de) | Mit Eingabeeinrichtungen wahlweise bestückbare Station für Signalübertragungseinrichtungen | |
DE1925917A1 (de) | Binaere Impulsfrequenz-Multiplizierschaltung | |
DE4104114A1 (de) | Redundantes datenverarbeitungssystem | |
EP0586847B1 (de) | Verfahren zur Unterbrechungssteuerung von Prozessen in Kommunikationssystemen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8120 | Willingness to grant licences paragraph 23 | ||
8125 | Change of the main classification |
Ipc: G06F 11/00 |
|
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8331 | Complete revocation |