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
Links
- 230000015654 memory Effects 0.000 claims description 53
- 239000000872 buffer Substances 0.000 claims description 47
- 238000012937 correction Methods 0.000 claims description 24
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000001514 detection method Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 9
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 6
- LMDZBCPBFSXMTL-UHFFFAOYSA-N 1-ethyl-3-(3-dimethylaminopropyl)carbodiimide Chemical compound CCN=C=NCCCN(C)C LMDZBCPBFSXMTL-UHFFFAOYSA-N 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006735 deficit Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
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/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding 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.
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)
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)
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 |
-
1978
- 1978-08-04 US US05/930,966 patent/US4225959A/en not_active Expired - Lifetime
-
1979
- 1979-04-12 DE DE19792915113 patent/DE2915113A1/de active Granted
- 1979-05-03 CA CA000326834A patent/CA1149068A/en not_active Expired
- 1979-06-14 JP JP7515679A patent/JPS5525194A/ja active Granted
- 1979-07-20 AU AU49117/79A patent/AU520932B2/en not_active Ceased
- 1979-07-30 FR FR7919605A patent/FR2432736A1/fr active Granted
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 |