DE3037150C2 - Sichere Datenverarbeitungseinrichtung - Google Patents

Sichere Datenverarbeitungseinrichtung

Info

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
Application number
DE19803037150
Other languages
English (en)
Other versions
DE3037150A1 (de
Inventor
Hasso 1000 Berlin Krüger
Alfred Ing.(Grad.) Lotz
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.)
Licentia Patent Verwaltungs GmbH
Original Assignee
Licentia Patent Verwaltungs GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Licentia Patent Verwaltungs GmbH filed Critical Licentia Patent Verwaltungs GmbH
Priority to DE19803037150 priority Critical patent/DE3037150C2/de
Publication of DE3037150A1 publication Critical patent/DE3037150A1/de
Application granted granted Critical
Publication of DE3037150C2 publication Critical patent/DE3037150C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error 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/184Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • G06F11/167Error detection by comparing the memory output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1683Temporal synchronisation or re-synchronisation of redundant processing components at instruction level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1487Generic software techniques for error detection or fault masking using N-version programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1691Temporal 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)

Patentansprüche:
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.
DE19803037150 1980-09-27 1980-09-27 Sichere Datenverarbeitungseinrichtung Expired DE3037150C2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (5)

* Cited by examiner, † Cited by third party
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) &#34;verfahren und vorrichtung zur umwandlung von digitalen zeichencodes, die von einem datenverarbeitungssystem empfangen oder geliefert werden&#34;
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