DE2915113C2 - - Google Patents

Info

Publication number
DE2915113C2
DE2915113C2 DE2915113A DE2915113A DE2915113C2 DE 2915113 C2 DE2915113 C2 DE 2915113C2 DE 2915113 A DE2915113 A DE 2915113A DE 2915113 A DE2915113 A DE 2915113A DE 2915113 C2 DE2915113 C2 DE 2915113C2
Authority
DE
Germany
Prior art keywords
data
data bus
memory
transmission device
error
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
DE2915113A
Other languages
English (en)
Other versions
DE2915113A1 (de
Inventor
Robert E. Scottsdale Ariz. Us Suelflow
Edward M. Phoenix Ariz. Us Drobny
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.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Bull Inc
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 Honeywell Bull Inc filed Critical Honeywell Bull Inc
Publication of DE2915113A1 publication Critical patent/DE2915113A1/de
Application granted granted Critical
Publication of DE2915113C2 publication Critical patent/DE2915113C2/de
Granted 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)

Description

Die Erfindung betrifft eine Datenbus-Übertragungsvorrichtung in einer Datenverarbeitungsanlage zur fehlergesicherten Über­ tragung von Befehls-Datenworten aus einem Speicher in ein Be­ fehlsregister.
In Datenverarbeitungssystemen, in denen verschiedene Subsy­ steme miteinander kommunizieren und untereinander Daten aus­ tauschen, kann es durch das Vorhandensein von Störungen vor­ kommen, daß die von einem Subsystem abgegebenen Daten von einem anderen Subsystem fehlerhaft empfangen werden.
Zur Überprüfung einer korrekten Datenübertragung ist es be­ kannt, Paritätsprüfungen durchzuführen. Damit lassen sich Fehler feststellen, wenn in einem Wort ein Bit fehlerhaft ist. Einfache Paritätsprüfungen versagen aber, wenn zwei oder mehr Bits fehlerhaft sind. Um auch solche Fehler in den Griff zu bekommen, wurden zyklische Codes entwickelt, mit denen sich Vielfachfehler entdecken lassen. Eine gute Dar­ stellung der bekannten Fehlerkorrektur-Techniken findet man beispielsweise bei Hamming, "Error Detecting and Error Correct­ ing Codes", Bell Systems Technical Journal, Bd. 29, 1950, S. 147-160.
Auf der Grundlage der von Hamming u. a entwickelten Fehlerer­ kennungs- und Fehlerkorrekturcodes sind entsprechende Fehler­ erkennungs- und -korrekturschaltungen (sog. "EDAC"-Schaltun­ gen) entwickelt worden. So ist beispielsweise eine Schal­ tungsanordnung bekanntgeworden (vgl. IBM-TDB Vol. 15, No. 3, August 1972, Seiten 852-854), bei der aus einem Speicher aus­ gelesene Datenworte, die der CPU zugeführt werden, über zu­ sätzliche Datenwege einer Fehlerkorrektur mittels einer EDAC- Schaltung unterzogen werden. Die bei diesem Stand der Technik offenbarten Datenwege sind immer zielgerichtet von Block zu Block; eine interaktive Datenbusstruktur ist nicht offenbart. Damit ergibt sich, insbesondere bei mikroprogrammierten Be­ fehlsabläufen, eine Beeinträchtigung der Geschwindigkeit in der Operationsabfolge beim Warten auf die Ergebnisse der Fehleruntersuchung.
Die Aufgabe der Erfindung besteht darin, eine Übertragungs­ struktur mit einfachen Schaltmitteln ohne komplexe Hardware zu schaffen, so daß bei der fehlergesicherten Übertragung von Befehls-Datenworten aus einem Speicher in ein Befehls­ register, insbesondere bei mikroprogrammierten Befehlsab­ läufen, eine Beeinträchtigung der Geschwindigkeit in der Operationsabfolge beim Warten auf die Ergebnisse der Fehler­ untersuchung weitestgehend vermieden wird.
Die Aufgabe wird gelöst durch zwei interaktive Busanordnungen, mit einem ersten Datenbus zur Übertragung der Befehls-Daten­ worte aus dem Speicher in das Befehlsregister und in einen ersten Durchschaltpuffer, von wo die Daten in ein Fehlerer­ mittlungs-Zwischenregister durchschaltbar sind, wobei diese Durchschaltung über den zweiten Datenbus erfolgt, mit einer an das Fehlerermittlungs-Zwischenregister angeschlossenen Fehlerermittlungs- und -korrekturschaltung, in der die ge­ nannten Befehls-Datenworte auf Fehler untersucht und - wenn möglich - fehlerkorrigierte Befehls-Datenworte generiert werden, die einem zweiten Durchschaltpuffer zugeführt werden, von wo aus sie über den zweiten Datenbus einem dritten Durch­ schaltpuffer zugeführt werden, von wo die fehlerkorrigierten Befehls-Datenworte über den ersten Datenbus in das Befehls­ register durchschaltbar sind.
Eine bevorzugte Ausführungsform der Erfindung wird nachfolgend anhand der Zeichnungen beschrieben. Es zeigt
Fig. 1 ein Blockdiagramm eines Datenverarbeitungssystems;
Fig. 2 ein Funktionsdiagramm eines Teils der zentralen Ver­ arbeitungseinheit;
Fig. 3 ein Blockdiagramm des erfinderischen Teils der Ausführungseinheit, und
Fig. 4 und 5 in Einzelheiten gehende Schaltungsdiagramme des Blockdiagramms von Fig. 3.
Fig. 1 ist ein Blockdiagramm einer Datenver­ arbeitungsanlage 10, in welche die Schaltungsanordnung nach der Erfindung eingebaut ist. Die Datenverarbeitungsanlage 10 weist zwei SIU's 12 a und 12 b auf. Jede SUI (System Interface Unit) weist 11 Anschlußstellen A bis L sowie vier zusätzliche Anschlußstellen für Speicher auf, eine Anschlußstelle für den lokalen Speicher 0 (LM 0), eine für den lokalen Speicher 1 (LM 1), sowie zwei An­ schlußstellen für die Hauptspeicher 0 und 1, in denen die Steuerungs­ einrichtungen (MMC 0 und MMC 1) für die Hauptspeicher angeordnet sind. An manche Paare von Anschlußstellen wie G und H sowie E und F kann ein Paar von Ein-Ausgabeprozessoren (IOP) 14 a, 14 b, 14 c und 14 d angeschlossen werden. Bis zu vier zentrale Verar­ beitungseinheiten (CPU) 16 a, 16 b, 16 c und 16 d, zwei für jede SIU können an beliebige zwei der Anschlußstellen, z. B. an B und D angeschlossen werden. Lokale Speicher (LM 0) und (LM 1) 18 a-d sind mit den Lokalspeicheranschlüssen LM 0 und LM 1 20 a-d jeder SIU 12 und die Hauptspeicher (MM 0) und (MM 1) 22 a-d sind mit den Hauptspeicher-Steuerungs­ einrichtungen (MMC 0) und MMC 1) 24 a-d der SIU's 12 a und 12 b verbunden. Jeder der Hauptspeicher 22 a-d weist weiterhin zwei Anschlußstellen auf, die über Kreuz mit den Steuerungseinrichtungen 24 a-d verbunden sind, um eine Kommunikation zwischen Geräten und Speichern, die mit den entsprechenden SIU's 12 a/b verbunden sind, zuzulassen.
Jede der Steuerungseinrichtungen MMC 0 24 a, 24 c, MMC 1 24 b, 24 d der Hauptspeicher der SIU's 12 a, 12 b besitzt neben der Fähig­ keit, Daten in einen Hauptspeicher MM 0 22 a, 22 c, oder MM 1 22 b, 22 d einzuschreiben und Daten aus MM 0 oder MM 1 herauszulesen, darüber hinaus gewisse Kommunikationssteuerungsfunktionen.
Kommunikationen zwischen den SIU's können sich abspielen von einer Steuerungseinrichtung eines Hauptspeichers wie z. B. MMC 0 24 a der SIU 12 a in die Hauptspeicher-Steuerungseinrichtung MMC 1 24 d der SIU 12 b. Die Hauptspeicher-Steuerungseinrichtung MMC 1 24 d überträgt ihrerseits die Nachricht zu der Steuerungseinrichtung MMC 0 24 c der SIU 12 b. MMC 0 24 c sendet dann die Nachricht an die Anschlußstelle der SIU 12 b, an die ein Prozessor wie z. B. IOP 14 c oder CPU 16 c angeschlossen ist, nämlich der Prozessor, an den die Nachricht sich richtet.
Im Verlauf der Durchführung eines Anwendungsprogramms kann eine CPU, wie z. B 16 a, einen Punkt erreichen, an dem eine Operation notwendig wird, entweder von einem peripheren Gerät dort gespeicherte Daten hereinzubringen oder aus einem Speicher Informationen herauszulesen, die zu einem peripheren Gerät übertragen werden sollen. Wenn die Notwendigkeit für eine Eingabe/Ausgabe-Operation vorkommt, oder allgemeiner, wenn ein Prozessor mit einem anderen Prozessor oder mit sich selbst in Verbindung treten will, verursacht das Betriebs­ system des Datenverarbeitungssystems 10 die Übertragung einer Instruktion zu einer CPU wie z. B. 16 a. Der Inhalt des Operationsfeldes des Instruktionswortes be­ zeichnet eine spezielle Art der Verbindung, die durchge­ führt werden soll. Das Betriebssystem versieht die CPU 16 a außerdem mit einem Datenwort, innerhalb dessen ein bestimmtes Feld den Prozessor benennt, an den die Daten abgeschickt werden sollen.
Fig. 2 ist ein Blockdiagramm der Hardware-Elemente einer CPU 16, die nur so weit beschrieben werden, wie es zum Verständnis der Erfindung notwendig ist.
Instruktionen werden über einen Instruktionspuffer ZIP 26 von einer Hauptspeicher-Steuerungseinrichtung wie z. B. MMC 0 24 a empfangen und durch den Schalter 28 des Instruktionspuffers ZIP nach RBIR 30 zur Speicherung übertragen. Das in dem Steuerspeicher der Steuereinheit CCS 32 enthaltene Steuerwort umfaßt 32 Bits. Ein 13 Bit weites Feld, bestehend aus den Bitstellen 0 bis 12, stellt die Adresse der Start­ stelle des Mikroprogramms dar, das von dem Operationscode des Instruktionswortes im Instruktionsregister RBIR 30 ange­ geben ist, oder die Adresse der ersten Mikroinstruktion des Mikropgrogramms. Wenn der Opeartionscode einer Instruktion von RBIR 30 an CCS 32 angelegt wird, wobei das Steuerwort der Steuereinheit an der dem OP Code entsprechenden Adresse gespeichert ist, werden die Inhalte der Bitstellen 0 bis 12 an den Steuerspeicher der Ausführungseinheit ECS 34 durch den Schalter CCS-ADR 36 angelegt. Der Empfang der Adresse der Mikroinstruktion durch ECS 34 verursacht, daß die unter dieser Adresse gespeicherte Mikroinstruktion in den Ausführungs­ puffer 38 übertragen wird, in dem ausgewählte Felder der Mikroinstruktion durch den Decodierer 40 decodiert werden, um die nötigen Steuerungssignale oder Informationen für die verschiedenen Subsysteme oder Komponenten einer CPU, z. B. 16 a, vorzusehen.
Wenn die erste Mikroinstruktion in den Ausführungspuffer 38 geladen wurde, wird während der nächsten Taktperiode die Mikroinstruktion in der Decodiereinrichtung 40 decodiert, um die nötigen Steuerungssignale zu erzeugen, damit ein hier nicht dargestellter Zwischenspeicher adressiert und ein Teil seines Inhaltes übertragen, gespeichert, und bearbeitet wird.
Die nächste oder zweite Mikroinstruktion, die als Ergebnis der Adresse der im Mikroinstruktionsregister UIC 42 gespeicherten ersten Mikroinstruktion erzeugt wird, und mit Hilfe des Addierers 44 um Eins erhöht und durch den Schalter (UIC +1) 46 angelegt wird, bewirkt die Übertragung der zweiten Mikroinstruktion in den Ausführungspuffer 38.
Fig. 3 ist ein Funktionsblockdiagramm eines Teils des Aus­ führungssteuerspeichers 34 in Fig. 2. Zwei getrennte, aber unterein­ ander verbundene Tristate-Datenbusse werden verwendet. Der erste, als Speicherdatenbus bezeichnete Bus, ist ver­ bunden zwischen dem Ausgang der Tristate-Schaltung 50, dem Eingang der Tristate-Schaltung 54, dem Ausgang des Speichers 52 und dem Eingang des Ausführungspuffers 38 (siehe Fig. 2). Der zweite als Rückseitenbus bezeichnete Bus ist verbunden zwischen dem Ausgang der Tristate-Schaltungen 56, 62 und 54 und zwischen den Eingängen der Datenre­ gister 60, der UND-Funktion und der Tristate-Schaltung 50. Während jeder der Busse als eine einzelne Leitung gezeichnet ist, besteht doch jeder der Busse aus einer Vielzahl von Leitungen zur Bewältigung der parallelen Übertragung einer Vielzahl von Datenbits.
Die hier verwendete Fehlerentdeckungs- und korrektureinrichtung führt die Erkennung und Korrek­ tur außerhalb des Zyklus durch. Um dies zu erreichen, wird angenommen, daß vom Speicher 52 in den Ausführungspuffer 38 übertragene Daten für jeden laufenden Zyklus korrekt sind und sie werden in den Ausführungspuffer 38 durch den Systemtaktgeber einge­ pulst. Während des folgenden Zyklus werden die gleichen Daten auf das Auftreten von Fehlern in dem Schaltkreis 58 zur Fehlerentdeckung und -korrektur überprüft. Wenn ein korrigierter Fehler entdeckt wird, wird ein Signal in einen anderen Teil der CPU abgeschickt, und korrigierte Daten werden auf den Bus geschickt, um während des folgen­ den Taktes in den Ausführungspuffer gepulst zu werden. Un­ korrigierbare Fehler verursachen einen Abbruch der Operation.
Zwei kritische Zeitwege sind in diesem Schema betroffen. Erstens ist es nötig, Daten aus dem Speicher 52 in den Ausführungspuffer 38 vor dem Systemtakt zu bringen. Der zweite kritische Punkt liegt darin, vor dem folgenden Takt ein Fehlersignal zu erzeugen und die korrigierten Daten dem Ausführungspuffer zugänglich zu machen.
Der Ausgang des Speichers 52 ist mit dem Ausführungspuffer 38 verbunden. Der gleiche Ausgang ist auch mit dem Eingang eines Tristate-Puffers 54 verbunden zur Übertragung der Daten in den Fehlerentdeckungs- und -korrekturschaltkreis 58 über das Datenregister 60. Während dieser Zeit ist der Tristate-Puffer 54 einge­ schaltet mit Hilfe eines Lesesignals, das in einem anderen Teil der CPU erzeugt wird. Gleichzeitig sind die Tristate- Puffer 50, 56 und 62 ausgeschaltet und stellen für ihre jeweiligen Busse eine hohe Impedanz dar. Das bedeutet, der Tristate-Puffer 62 ist ausgeschaltet durch das Fehlen eines Schreibsignals an seinem Eingang. In gleicher Weise verhindert das Fehlen eines Schreibsignals an einem zweiten Eingang der logischen UND-Funktion 66, daß für den Fehlerentdeckungs- und -korrekturschaltkreis vorgesehene Daten wieder in den Speicher 52 über die logische UND- Funktion 66 gelangen. In ähnlicher Weise werden die Tristate- Puffer 50 und 56 durch das Fehlen eines Signals ausgeschaltet, das korrekte Daten anzeigt und das in dem Schaltkreis 58 zur Fehlerentdeckung und -korrektur erzeugt wird. Daher können Daten von dem Tristate-Puffer 54 in den Schaltkreis zur Fehlerentdeckung und -korrektur ohne Störungen übertragen werden.
Während eines Korrekturzyklus übertragen die gleichen beiden, in zwei Richtungen betreibbaren Busse Daten von dem Tristate- Puffer 56 in den Ausführungspuffer über den Tristate-Puffer 50. Während dieser Zeit sind der Puffer 62 und die logische UND-Funktion 66 ausgeschaltet durch das Fehlen des Schreibsignals, während der Tristate- Puffer 54 und der Speicher 52 durch das Fehlen eines Lesesignals ausgeschaltet sind. Die Puffer 50 und 56 sind eingeschaltet mit Hilfe eines korrigierten Daten anzeigenden Signals und übertragen Daten aus dem Schaltkreis 58 zur Fehlerentdeckung und -korrektur in den Ausführungspuffer. Es ist hier anzumerken, da der Speicherdatenbus, der die Puffer 50, 54 und den Speicher 52 mit der Ausführungseinheit verbindet, die Notwendigkeit für einen herkömmlichen Daten­ schalter beseitigt, der eine zusätzliche Verzögerung in dem Datenweg zu dem Rest der CPU sowohl für Speicherdaten als auch für korrigierte Daten darstellen würde.
Während der Schreibzyklen werden Daten vom Puffer 64 in den Speicher 52 über den Puffer 62 und die logische UND- Schaltung 66 übertragen. Während dieser Operation sind die Tristate-Puffer 50, 54 und 56, wie oben beschrieben, aus­ geschaltet. Die Anordnung der Fig. 3 ist in weiteren Schaltungsein­ zelheiten in den Fig. 4 und 5 dargestellt. Während die An­ ordnung der Fig. 4 und 5 für eine Behandlung von 8 Bits ausgelegt ist, sollte es klar sein, daß dies nur ein Beispiel ist, und daß die Anordnung auch für eine viel größere Anzahl von Daten­ bits entworfen werden kann.
Die Eingabedatenpuffer 64 der Fig. 3 sind hier als UND- Gatter 70 bis 77 gezeichnet. Der Tristate-Puffer 62 der Fig. 3 ist als eine Vielzahl von Tristate-Gattern 80 bis 87 in Fig. 4 gezeichnet. Für jede Datenleitung ist ein Tristate-Gatter erforderlich. Wie oben beschrieben, läßt eine Tristate-Schaltung in eingeschaltetem Zustand an ihrem Eingang anliegende Daten zu deren Bestimmungsort durch. Das heißt, wenn das Schreibsignal, das an jeder der Tristate-Schaltungen 80 bis 87 anliegt, aktiviert ist, gelangen die über die UND-Gatter 70 bis 77 an die Tristate-Schaltungen 80 bis 87 angelegten Daten durch diese Tristate-Schaltungen hindurch auf die Daten­ busleitungen B 0 bis B 7. Wenn das Schreibsignal nicht aktiviert ist, erscheinen die Tristate-Schaltungen 80 bis 87 als hohe Impedanz.
Während eines Schreibzyklus werden Daten, die in den Speicher geschrieben werden sollen, an den einen Eingang jedes der UND-Gatter 70 bis 77 angelegt. Diese Daten passieren die UND-Gatter 70 bis 77, wenn ein Einschaltesignals, das mit dem zweiten Eingang jedes der UND-Gatter 70 bis 77 verbunden ist, aktiviert wird. Was in Fig. 3 als eine einzelne UND- Funktion gezeigt war, ist nun in Fig. 5 als eine Vielzahl von UND-Gattern 90 bis 97 gezeichnet, deren jeweils einer Eingang mit den Datenbusleitungen B 0 bis B 7 und deren jeweils zweiter Eingang mit einem das Schreiben ermöglichenden Signal verbunden ist. Wenn das Schreibsignal aktiviert ist, gelangen die Daten auf den Datenbusleitungen B 0 bis B 7 durch die UND- Gatter 90 bis 97 in den Speicher 52, wo sie mit Hilfe der Schreibsteuerung 51 gespeichert werden.
Während eines Lesezyklus ist das Schreibsignal ausgeschaltet und verhindert, daß Daten durch die Tristate-Puffer 80 bis 87 und die UND-Gatter 90 bis 97 hindurchgelangen. Wenn am Speicher 52 ein Lesesteuersignal 53 und eine Adresse anliegen, gibt der Speicher die unter dieser Adresse abgespeicherten Daten aus. Diese Daten wandern zwei Wege entlang. Der erste führt in den Rest der CPU, wie durch die Leitungen 100 bis 107 angezeigt. Gleichzeitig werden die Daten aus dem Speicher 52 an die Tristate-Schaltungen 110 bis 117 angelegt. Jede der Tristate-Schaltungen 110 bis 117 hat an ihrem einen Eingang ein Lesesignal an­ liegen, das, wenn es aktiviert ist, Daten durch die Tristate- Schaltungen, hindurchtreten läßt. Wenn das Lesesignal nicht aktiviert ist, erscheinen die Tristate-Schaltungen 110 bis 117 als hohe Impedanz.
Angenommen, das Lesesignal ist eingeschaltet (aktiviert) und das Schreib­ signal ausgeschaltet (nichtaktiviert), so gelangen Daten aus dem Speicher 52 durch die Tristate-Schaltungen 110 bis 117 und werden den Eingängen der Datenregister 60 (siehe Fig. 4) über die Datenbusleitungen B 0 bis B 7 zugeführt. Die Daten in dem Daten­ register 60 werden, wie oben beschrieben, an den Schaltkreis 58 zur Fehlerentdeckung und -korrektur angelegt, in dem bestimmt wird, ob in den Daten ein Fehler vorliegt, und ob dieser Fehler korrigierbar ist oder nicht. Zwei Signale werden von dem Schaltkreis zur Fehlerentdeckung und -korrektur in einen ande­ ren Teil der CPU abgesandt. Diese Signale sind als Fehler- Signal und als Fehler-Korrektur-Signal bezeichnet. Dadurch wird an­ gezeigt, daß - obwohl ein Fehler vorliegt - dieser Fehler korrigier­ bar ist.
Wenn der Fehler korrgierbar ist, wird das gleiche korrekte Daten anzeigende Signal an die Tristate-Schaltungen 120 bis 127 angelegt. Die korrigierten Daten werden ebenso an die Tristate-Schaltungen 120 bis 127 angelegt und gelangen durch sie über die Busleitungen B 0 bis B 7 zu den Eingängen der Tristate-Schaltungen 130 bis 137. Während dieser Periode ist das Schreibsignal ausgeschaltet und verhindert so, daß Daten durch die UND-Gatter 90 bis 97 zurück in den Speicher 52 gelangen.
Das gleiche oben beschriebene korrekte Daten anzeigende Signal wird an die Tristate-Schaltungen 130 bis 137 angelegt, um den Durchgang der Daten auf den Busleitungen B 0 bis B 7 in die CPU über die Leitungen 100 bis 107 zu ermöglichen. Während dieser Zeit ist das Lesesignal ausgeschaltet, um zu verhindern, daß korrigierte Daten durch die Tristate- Schaltungen 110 bis 117 hindurchgelangen.
Die oben beschriebene Anordnung erlaubt daher, daß drei elektrische Funktionen auf einer, als Rückseitenbus be­ zeichneten Leitung durchgeführt werden. Diese Funktionen be­ stehen darin, Speicherdaten in den Schaltkreis zur Fehlerent­ deckung und -korrektur zu übertragen, korrigierte Daten aus diesem Schaltkreis in die Datenausgabeschaltkreise und Eingabe­ daten in den Speicher zu übertragen.
Der Speicherdatenbus erlaubt die Übertragung von Daten sowohl in die CPU als auch in den Schaltkreis zur Fehlerent­ deckung und -korrektur. Darüber hinaus sieht der Speicherdaten­ bus Möglichkeiten zur Übertragung von korrigierten Daten von dem Schaltkreis zur Fehlerentdeckung und -korrektur in die CPU vor. Beide Busse minimieren die Notwendigkeit für irgendwelche zusätzlichen Gatter oder Schalter und stellen daher die schnellstmöglichen Datenwege zur Verfügung, sobald kritische Zeitabläufe auftreten.

Claims (10)

1. Datenbus-Übertragungsvorrichtung in einer Daten­ verarbeitungsanlage zur fehlergesicherten Übertragung von Befehls-Datenworten aus einem Speicher (52) in ein Befehlsregister (38), gekennzeichnet durch zwei interaktive Busanordnungen, mit einem er­ sten Datenbus zur Übertragung der Befehls-Datenworte aus dem Speicher (52) in das Befehlsregister (38) und in einen ersten Durchschaltpuffer (54), von wo die Da­ ten in ein Fehlerermittlungs-Zwischenregister (60) durch­ schaltbar sind, wobei diese Durchschaltung über den zwei­ ten Datenbus erfolgt, mit einer an das Fehlerermittlungs- Zwischenregister (60) angeschlossenen Fehlerermittlungs- und -korrekturschaltung (58), in der die genannten Be­ fehls-Datenworte auf Fehler untersucht und - wenn möglich - fehlerkorrigierte Befehls-Datenworte generiert werden, die einem zweiten Durchschaltpuffer (56) zugeführt werden, von wo aus sie über den zweiten Datenbus einem dritten Durchschaltpuffer (50) zugeführt werden, von wo die feh­ lerkorrigierten Befehls-Datenworte über den ersten Daten­ bus in das Befehlsregister (38) durchschaltbar sind.
2. Datenbus-Übertragungsvorrichtung nach Anspruch 1, gekennzeichnet durch mit dem Speicher (52) und dem zwei­ ten Datenbus verbundene Schreibeeinrichtungen (62, 66) zum Einspeichern von Daten in den Speicher (52).
3. Datenbus-Übertragungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Schreibeinrichtungen (62, 66) eine erste Vielzahl von Zwischenregisterstufen (70-77) umfassen zur Aufnahme von im Speicher (52) abzuspeichern­ den Daten, daß sie weiterhin eine Vielzahl von Dateneinschreib- Durchschaltpuffern (80-87) umfassen, von denen jeweils ein Eingang mit dem Ausgang einer entsprechenden ersten Zwischen­ registerstufe (70-77) verbunden ist, die in den Spei­ cher (52) einzuschreibenden Daten auf den zweiten Datenbus durchzuschalten, und daß sie eine zweite Vielzahl von Zwi­ schenregisterstufen (90-97) umfassen, deren Eingänge mit dem zweiten Datenbus und deren Ausgänge mit dem Speicher (52) verbunden sind.
4. Datenbus-Übertragungsvorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die einzelnen Stufen der Daten­ einschreib-Durchschaltpuffer (80-87) aus Tristate- Gattern bestehen, die in eingeschaltetem Zustand die zwi­ schengespeicherten Binärsignale Null oder Eins durchschalten und im ausgeschalteten Zustand an ihren Ausgängen einen hohen Impedanzwert aufweisen und keine Binärsignale durch­ schalten.
5. Datenbus-Übertragungsvorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Tristate- Gatter (80-87) durch ein vom Zentralprozessor erzeugtes Schreibsignal, das ihren zweiten Eingängen zugeführt wird, aktiviert und durch das Fehlen eines solchen Schreibsignals inaktiviert sind.
6. Datenbus-Übertragungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die einzelnen Stufen des ersten Durchschaltpuffers (54; 110-117) jeweils aus einem Tristate-Gatter bestehen, das in eingeschaltetem Zustand die zwischengespeicherten Binärsignale Null oder Eins aus dem Speicher (52) auf den zweiten Datenbus durch­ schaltet und in ausgeschaltetem Zustand an seinem Ausgang einen hohen Impedanzwert aufweist und keine Binärsignale durchschaltet.
7. Datenbus-Übertragungsvorrichtung nach Anspruch 6, dadurch gekennzeichnet, daß die einzelnen Stufen des Durchschaltpuffers (110-117) durch ein vom Zentral­ prozessor erzeugtes Lesesignal, das ihren zweiten Eingängen zugeführt wird, aktiviert und durch das Fehlen eines solchen Lesesignals inaktiviert sind.
8. Datenbus-Übertragungsvorrichtung nach Anspruch 1 oder Anspruch 6, dadurch gekennzeichnet, daß die ersten Eingänge der einzelnen Stufen des ersten Durchschalt­ puffers (54; 110-117) an den ersten Datenbus und die Aus­ gänge an den zweiten Datenbus angeschlossen sind.
9. Datenbus-Übertragungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die einzelnen Stufen des zweiten Durchschaltpuffers (56; 120-127) mit ihren Ein­ gängen an die Ausgänge der Fehlerermittlungs- und -korrek­ turschaltung (58) und mit ihren Ausgängen an den zweiten Datenbus angeschlossen sind zum Zwecke des Durchschaltens der fehlerkorrigierten Datenworte aus der Fehlerermitt­ lungs- und -korrekturschaltung (58) auf den zweiten Daten­ bus, und daß die einzelnen Stufen des dritten Durchschalt­ puffers (50; 130-137) mit ihren Eingängen an den zweiten Datenbus und mit ihren Ausgängen an den ersten Datenbus angeschlossen sind zum Zwecke des Durchschaltens der fehler­ korrigierten Datenworte vom zweiten auf den ersten Datenbus.
10. Datenbus-Übertragungsvorrichtung nach Anspruch 9, dadurch gekennzeichnet, daß die einzelnen Stufen der zweiten und dritten Durchschaltpuffer (120-127; 130-137) aus Tristate-Gattern bestehen, die in ein­ geschaltetem Zustand die zwischengespeicherten Binär­ signale Null oder Eins, welche die fehlerkorrigierten Befehls-Datenworte darstellen, durchschalten und im ausge­ schalteten Zustand an ihren Ausgängen einen hohen Impedanz­ wert aufweisen und keine Binärsignale durchschalten, wobei der Einschalt- bzw. Ausschaltzustand durch ein in der Fehlerermittlungs- und -korrekturschaltung (58) erzeugtes Sendesignal für korrigierte Daten gesteuert wird, das den zweiten Eingängen der zweiten und dritten Durchschaltpufferstufen (120-127; 130-137) zugeführt wird.
DE19792915113 1978-08-04 1979-04-12 Busvorrichtung fuer ein datenverarbeitendes system Granted DE2915113A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/930,966 US4225959A (en) 1978-08-04 1978-08-04 Tri-state bussing system

Publications (2)

Publication Number Publication Date
DE2915113A1 DE2915113A1 (de) 1980-02-14
DE2915113C2 true DE2915113C2 (de) 1989-01-05

Family

ID=25460029

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792915113 Granted DE2915113A1 (de) 1978-08-04 1979-04-12 Busvorrichtung fuer ein datenverarbeitendes system

Country Status (6)

Country Link
US (1) US4225959A (de)
JP (1) JPS5525194A (de)
AU (1) AU520932B2 (de)
CA (1) CA1149068A (de)
DE (1) DE2915113A1 (de)
FR (1) FR2432736A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4336611A (en) * 1979-12-03 1982-06-22 Honeywell Information Systems Inc. Error correction apparatus and method
FR2528613B1 (fr) * 1982-06-09 1991-09-20 Hitachi Ltd Memoire a semi-conducteurs
US4663728A (en) * 1984-06-20 1987-05-05 Weatherford James R Read/modify/write circuit for computer memory operation
US4962474A (en) * 1987-11-17 1990-10-09 International Business Machines Corporation LSSD edge detection logic for asynchronous data interface
US5373514A (en) * 1990-09-20 1994-12-13 Synopsys, Inc. Three-state bus structure and method for generating test vectors while avoiding contention and/or floating outputs on the three-state bus
JPH04162300A (ja) * 1990-10-26 1992-06-05 Nec Corp 半導体メモリ
JP2020198044A (ja) * 2019-06-05 2020-12-10 富士通株式会社 並列処理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573728A (en) * 1969-01-09 1971-04-06 Ibm Memory with error correction for partial store operation
US3693153A (en) * 1971-07-09 1972-09-19 Bell Telephone Labor Inc Parity check apparatus and method for minicomputers
US3809884A (en) * 1972-11-15 1974-05-07 Honeywell Inf Systems Apparatus and method for a variable memory cycle in a data processing unit
US4037091A (en) * 1976-04-05 1977-07-19 Bell Telephone Laboratories, Incorporated Error correction circuit utilizing multiple parity bits
US4058851A (en) * 1976-10-18 1977-11-15 Sperry Rand Corporation Conditional bypass of error correction for dual memory access time selection

Also Published As

Publication number Publication date
JPS6235144B2 (de) 1987-07-30
US4225959A (en) 1980-09-30
JPS5525194A (en) 1980-02-22
DE2915113A1 (de) 1980-02-14
FR2432736A1 (fr) 1980-02-29
CA1149068A (en) 1983-06-28
FR2432736B1 (de) 1983-07-29
AU4911779A (en) 1980-02-07
AU520932B2 (en) 1982-03-04

Similar Documents

Publication Publication Date Title
DE2619159C2 (de) Fehlererkennungs- und Korrektureinrichtung
DE3786862T2 (de) Fehlertolerante Rechnerarchitektur.
DE3382592T2 (de) Zweifachbusstruktur fuer die rechnerverbindung.
DE3650651T2 (de) Fehlertolerantes Datenverarbeitungssystem
DE3781873T2 (de) Rekonfigurierbare rechenanordnung.
DE1279980C2 (de) Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem
DE68924119T2 (de) Verfahren und Vorrichtung zum Wiederanlauf nach einem Fehler in einem digitalen Rechnersystem.
DE3587145T2 (de) Puffersystem mit erkennung von lese- oder schreibschaltungsfehlern.
DE3111447C2 (de)
DE2357168C2 (de) Schaltungsanordnung für einen Speichermodul
DE2751106C2 (de)
DE2741886A1 (de) Datenuebertragungseinrichtung
DE2145709C3 (de) Datenverarbeitungsanlage, in welcher Verzweigungsbefehle eine Unterbrechung laufender Programme zur Folge haben können
EP0048767A1 (de) Prioritätsstufengesteuerte Unterbrechungseinrichtung
DE4423949A1 (de) E/A-Hilfssystem und Exklusiv-Steuerverfahren, Datenspeicherverfahren und Speicherinitialisierungsverfahren in einem E/A-Hilfssystem
DE2328058A1 (de) Digitale datenverarbeitungsanordnung
DE1901036A1 (de) Anordnung fuer die wiederholte Ausfuehrung fehlerhaft ausgefuehrter Funktionen
EP0282877B1 (de) Verfahren und Einrichtung zur Steuerung der Fehlerkorrektur innerhalb einer Datenübertragungssteuerung bei von bewegten peripheren Speichern, insbesondere Plattenspeichern, eines Datenverarbeitungssystems gelesenen Daten
DE2915113C2 (de)
EP0219917A2 (de) Vermittlungsanlage mit Fehlerkorrektur
EP0325318B1 (de) Vermittlungsanlage
DE3780306T2 (de) Adapterbusschalter zur verbesserung der verfuegbarkeit einer steuereinheit.
DE69029164T2 (de) Vorrichtung und Verfahren zum Ersetzen der Parität
DE2641700C2 (de)
DE69332327T2 (de) Überwachung von zirkulierenden Zeigern

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee