DE2430464A1 - Einrichtung zur fehlergesicherten datenuebertragung - Google Patents
Einrichtung zur fehlergesicherten datenuebertragungInfo
- Publication number
- DE2430464A1 DE2430464A1 DE2430464A DE2430464A DE2430464A1 DE 2430464 A1 DE2430464 A1 DE 2430464A1 DE 2430464 A DE2430464 A DE 2430464A DE 2430464 A DE2430464 A DE 2430464A DE 2430464 A1 DE2430464 A1 DE 2430464A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- bits
- error
- ecc
- arrangement
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims description 9
- 208000011580 syndromic disease Diseases 0.000 claims description 66
- 238000012545 processing Methods 0.000 claims description 35
- 238000012937 correction Methods 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 13
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 239000011159 matrix material Substances 0.000 description 12
- 238000012546 transfer Methods 0.000 description 11
- 239000000872 buffer Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000011664 signaling Effects 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
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Die Erfindung betrifft eine Einrichtung zur fehlergesicherten Übertragung von Daten nach dem Oberbegriff des Anspruchs 1. Sie
bezieht sich auf die Übertragung von Daten zwischen der Datensammelleitung und dem Datenspeicher einer elektronischen Datenverarbeitungsanlage.
Die fehlergesicherte Übertragung von Daten mit Hilfe von die .
Daten begleitenden Fehlerprüf- und Korrekturbits (ECC-Bits) ist an sich bekannt (vgl. US-PS 3 648 239). In dieser Patentschrift
werden die Unterschiede zwischen der Fehlererkennung binärer Daten
mit Hilfe von Paritätsbits und einer solchen mit Hilfe von
nach dem Hamming-Code codierten Daten beschrieben, die Fehlerprüf-
und Korrekturbits (ECC) für die Korrektur von Einzelfehlern und das Erkennen von Doppelfehlern binärer Daten (SEC/DEC)
liefern. Außerdem wird der auch in dem Ausführungsbeispiel der
vorliegenden Erfindung verwendete Code sowie die Verbindung verschiedener Datenbits zur Erzeugung von nach der Byteparität
codierten Daten oder ECC-Bits sowie der Erzeugung von Syndrombits,
die Fehler aus dem Speicher bezeichnen, beschrieben. Durch die Syndrombits bezeichnete Einzelfehler können korrigiert werden,
so daß dann Daten in der richtigen Form auf die Datensammelleitung
geleitet werden können. Durch Syndrombits erkannte Mehrfachfehler werden dem Datenverarbeitungssystem angezeigt.
409883/1045
Wenn Daten in den Datenspeicher eingespeichert werden, werden die nach Byteparität codierten Daten daraufhin untersucht, ob die
zu speichernden Daten Fehler enthalten. Wenn ein Paritätsfehler erkannt wird, erhält das Datenverarbeitungssystem Signale zur
Unterbrechung, damit die verschiedenen Korrekturverfahren oder mindestens eine Fehleranzeige vorgenommen werden können. Die
weitere Verarbeitung durch das Datenverarbeitungssystem wird angehalten .
Mit zunehmender Größe und Komplexität von Datenverarbeitungssystemen,
wurden verschiedene Techniken zur Multiprograminierung oder Multiverarbeitung entwickelt. Andere Systeme wiederum haben
Hochgeschwindigkeits-Puffereinrichtungen zwischen dem Datenspeicher und dem Datenverarbeitungssystem. Diese Hochgeschwindigkeits-Puffereinrichtungen
arbeiten auf eine solche Weise, daß Daten von dem Hochgeschwindigkeitspuffer zu dem Datenspeicher zu Zeiten übertragen
werden können, die vollständig ohne bezug zur Verarbeitung der augenblicklich vom System verarbeiteten Daten stehen. Eine
andere Form der Arbeitsweise, die in einem elektronischen Datenverarbeitungssystem
stattfinden kann, ist eine solche, bei der die Datenübertragung von einem Eingabegerät zu dem Datenspeicher
unabhängig von der Verarbeitung ist, die augenblicklich in der Zentraleinheit stattfindet. D.h., daß eine Folge von Programmschritten
aufrufen kann, die unabhängig von der weiteren Verarbeitung der Zentraleinheit eingeleitet und durchgeführt werden
kann.
Bei all diesen Verbesserungen der Datenverarbeitungssysteme kann man sich jedoch vorstellen, daß in den Datenspeicher übertragene
Daten nie wieder benutzt werden, d.h., die ausgeführten Programme können aufgefordert werden, bestimmte Zwischendatenergebnisse
unter der Annahme zu erzeugen, daß diese hinterher benutzt werden. Nach weiterer Verarbeitung wird jedoch festgestellt, daß die erzeugten
Zwischendaten nicht weiter benötigt werden. Wenn also ein einziger Paritätsfehler das Datenverarbeitungssystem während
einer Speicheroperation unterbrechen kann, wird der Gesamtwirkungs-
po 972 042 409883/104 5
grad des Datenverarbeitungssystemes wesentlich reduziert und es
ist durchaus vorstellbar, daß die fehlerhaften Daten nicht wieder benutzt werden.
Weitere unerwünschte Situationen bei der Erkennung von Einzelparitätsfehler wären Speicheroperationen, betreffend die Tatsache,
daß die von einer Datensammelleitung in den Datenspeicher übertragenen Daten ohne Zusammenhang zur gegenwärtig von der
Zentraleinheit des Datenverarbeitungssystems ausgeführten Programmfolge
komplettiert werden können. Wenn der Paritätsfehler erkannt wird und das Verarbeitungssystem unterbrochen wird, muß
jedes Fehleraufzeichnungs- oder Fehlerverarbe'itungsprogramm im
Datenverarbeitungssystem erst einmal eine schwierige Bestimmung des Programmes vornehmen, das für die Erzeugung der fehlerhaften
Daten verantwortlich war.
Die Aufgabe der Erfindung besteht daher in der Schaffung einer
Datenübertragungseinrichtung zwischen einer Datensammelleitung und einem Datenspeicher, die die genannten Nachteile der bekannten
Einrichtung vermeidet.
Die Aufgabe der Erfindung wird gelöst durch die im Anspruch 1
angegebenen Merkmale. Vorteilhafte Ausgestaltungen und Weiterbildungen
des Erfindungsgegenstandes sind den Unteransprüchen zu entnehmen.
Mit Hilfe der vorstehend gekennzeichneten Einrichtung wird in vorteilhafter Weise die Erkennung eines Paritätsfehlers verhindert,
wenn Daten in dem Speicher von Vielfachverarbeitungssystemen oder Systemen mit Pufferspeicher zwischen dem Hauptspeicher und
dem Prozessor gespeichert werden, da Fehler nicht mit Hilfe eines geeigneten Programms identifiziert werden können. Weiterhin wird
eine Verbesserung der Verarbeitungsgeschwindigkeit erreicht, da die im Speicher gespeicherten Daten, die beispielsweise einen Paritätsfehler
aufweisen, möglicherweise nie wieder für eine weitere Verwendung aus dem Speicher ausgelesen werden.
po 972 042 409883/ 104b
-A-
Ein Äusführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt
und wird anschließend näher beschrieben.
Es zeigen:
Fig. 1 in einem Blockdiagramm ein die vorliegende
Erfindung enthaltendes Datenverarbeitungssystern,
Fig. 2 in einem Blockdiagramm die Anwendung der vor
liegenden Erfindung bei der Datenübertragung von einer Datensammelleitung in einen Datenspeicher
,
Fig. 3 in einem Blockdiagramm die Anwendung der vor
liegenden Erfindung bei der Datenübertragung von einem Datenspeicher auf eine Datensammelleitung.
Fig. 4 die zur Erzeugung der ECC-Bits während einer
Speicheropation und der Syndrombits während einer Leseoperation angewandte Codierung,
Fig. 5 einen Baum „aus Antivalenzgliedern zur Bestimmung
des Ungerade/Gerade-Zustandes binärer Einsen für 19 Eingangsbits,
Fig. 6 die Logik eines Baumes aus Antivalenzgliedern
zur Bestimmung des Ungerade/Gerade-Zustandes binärer Einsen für 9 Eingangsbits,
Fig. 7 in einem Blockdiagramm die Verbindung der in
den Fign. 5 und 6 gezeigten Bäume aus Antivalenzschaltgliedern während einer Datenspeicheroperation,
po 972 O42 409883/ 104 5
Fig. 8 in einem Blockdiagramm die Verbindung der in den
Fign. 5 und 6 gezeigten Bäume aus Antivalenzschaltgliedern
während einer Leseoperation,
Fig. 9 die zur Erkennung mehrfacher oder einzelner Byteparitätsfehler
in von der Datensammelleitung in einen Datenspeicher zu übertragenden Daten benötigte
Logik und
Fig. 10 die Logik, die auf von einem Datenspeicher übertragene
Daten und ECC-Bits mit der Erzeugung von Fehlerbedingungen bezeichnende Syndrombits reagiert.
Die allgemeine Umgebung der vorliegenden Erfindung ist in Fig. 1 gezeigt. Hauptteile zahlreicher Datenverarbeitungssysteme sind
wiedergegeben und umfassen-eine Zentraleinheit (20), die auf
Instruktionen und Daten zur Ausführung von Programmen reagiert. Die vorliegende Erfindung findet ihre wichtige Anwendung in Datenverarbeitungssystemen,
die über einen Hochgeschwindigkeitspuffer 21 verfügen, der die zuletzt von der Zentraleinheit 20 benutzten Daten enthält. Eine Speichersteuerung 22 steuert die
übertragung von Daten zwischen dem Hochgeschwindigkeitspuffer 21
und einem Hauptdatenspeicher 23. Die Speichersteuerung 22 steuert auch die Datenübertragung zwischen dem Hauptspeicher 23 und den
Ein-/Ausgabegeräten (E/A-Geräten) 24. Die Verbindung des Hochgeschwindigkeitspuffers
21 mit den E/A-Geräten 24 über die Speichersteuerung 22 zum Hauptspeicher 23 erfolgt über die Datensammelleitung
25. Die Datensammelleitung 25 kann entweder eine aus mehreren Leitungen bestehende Sammelleiitung zwischen der Speichersteuerung
22 und dem Hauptspeicher 23 sein und Daten in beiden Richtungen
übertragen oder sie kann aus separaten Sammelleitungen mit mehreren
Leitern bestehen, von denen eine für die Übertragung zum Hauptspeicher 23 und die andere für die übertragung vom Hauptspeicher
23 benutzt wird. Jedenfalls laufen die zum oder vom Hauptspeicher 23 übertragenen Daten durch eine Datenübertragungsschal-
po 972 042 409883/1045
tung 26, die die Fehlererkennung und -korrektur nach dem Ausführungsbeispiel
der Erfindung durchführt.
Die Grundfunktion der Fehlererkennungs-y/Korrektur-Datenübertragungsschaltung
26 ist in der erwähnten US-PS 3 648 239 gezeigt. Grundsätzlich empfängt sie Daten auf der Sammelleitung 25, die
aus 64 binären Datenbits und 8 Paritätsbits bestehen, d. h., die 64 Datenbits bestehen aus 8 jeweils 8 Bit großen Bytes und zu
< jedem Byte gehört ein Paritätsbit, welches den üngeraden/Geraden-Zustand
der Anzahl binärer Einerbits im Datenbyte wiedergibt. Die Datenübertragungsschaltung empfängt die Datenbits und die codierten
Byteparitäten und bestimmt die Genauigkeit der Daten, die im Hauptspeicher 23 zu speichern sind.· Die Datenübertragungsschaltung
26 benutzt außerdem die 64 Datenbits und die 8 Paritätsbits zur Erzeugung von nach dem Hamming-Code codierten ECC-Bits für die
Einzelfehlerkorrektur und die Doppe!fehlererkennung in im Hauptspeicher
23 zu speichernden Daten. Die 64 Datenbits und die 8 Byteparitätsbits werden daher in 64 Datenbits und 8 ECC-Bits zur
Speicherung umgewandelt. Während einer Leseoperation, in der Daten aus dem Hauptspeicher 23 an die Zentraleinheit 20 übertragen
werden, werden die vorher erzeugten ECC-Bits in Kombination mit den 64 Datenbits zur Erzeugung von Syndrombits nach der erwähnten
US-PS für die Korrektur von Einzelfehlern und die Erkennung von Doppelfehlern benutzt. Weiterhin werden nach der oben erwähnten
US-PS die 64 Datenbits und die 8 ECC-Bits so kombiniert, daß nach Byteparität codierte Daten für die Präsentation an die
Sammelleitung 25 erzeugt werden.
Die Fign. 2 und 3 zeigen die Hauptfunktionseinheiten der Datenübertragungsschaltung,
wie sie bei einer Speicheroperation und bei einer Leseoperation benutzt werden. Diese beiden Fign. enthalten
einen Hauptteil, der in der oben erwähnten US-PS 3 648 239 gezeigten Logik.
In Fig. 2 sind Daten von einer Zentraleinheit an einen Datenspeicher
zu übertragen. Die Datensammelleitung, dargestellt als
po 972 042 4 0 9 8 8 3 / 1 0 U B
Kabel 27, gibt 82 binäre Bits an ein (Prozessoreingangs-)Register
(PIR) 28. Diese 72 Bits bestehen aus 64 Datenbits in 8 Bytes zu je 8 Bit und 8 Paritätsbits zur Fehlererkennung, von denen zu
jedem Byte eines gehört. In einer Verbindungsmatrix 29 enthaltene Antworteinrichtungen und EO-Bäume 30 aus Antivalenzgliedern
untersuchen die Datenbits und die Paritätsbits im Register 28 nach
einem im Zusammenhang mit Fig. 4 genauer beschriebenen Codierschema zur Erzeugung von ECC-Bitsf die in die 64 Datenbits im Datenspeicher
eingeschlossen werden und der Erkennung von Paritätsfehlern dienen. Jeder durch die Datenantworteinrichtung erkannte Paritätsfehler
wird auf eine Sammelleitung 31 an einen ersten Fehlerdetektor
32 gegeben. Der Fehlerdetektor 32 signalisiert auf einer Leitung
33 die Existenz mehrerer Paritätsfehler, wodurch das Datenverarbeitungssystem
direkt die gegenwärtige Verarbeitung zur Behandlung der Fehlerbedingung aussetzt. Der Fehlerdetektor 32 liefert auch
ein Signal auf einer Leitung 34,zur Anzeige eines Einzelparitätsfehlers.
Wenn durch den Fehlerdetektor 32 keine Fehlerbedingungen angezeigt
werden, werden die auf das Kabel 35 geleiteten ECC-Bits durch die
zugehörigen Antivalenzschaltungen 36 an ein (Speicherausgabe-)Register
(MOR) 37 zur Kombination mit den 64 Datenbits geleitet, die auf dem Kabel 38 an das Register 37 gegeben wurden. Die 72 binären
Bits, bestehend aus 64 Datenbits und 8 ECC-Bits, werden dann auf einem Kabel 39 in den Datenspeicher übertragen. Der EO-Kasten 36
besteht aus 8 Antivalenzschaltungen, von denen jeweils ein Eingang zu. einem bestimmten der 8 ECC-Bits auf dem Kabel 35 gehört. Der
andere Eingang aller 8 Antivalenzglieder ist mit der Leitung 34 verbunden. Ein Signal auf der Leitung 34 an dem zweiten Eingang
invertiert also den binären Zustand der an die Antivalenzschaltungen
(EO) 36 gegebenen ECC-Bits. Wenn also ein ECC-Bit eine binäre Eins ist und ein Signal auf der Leitung 34 erzeugt wird, ist die
Ausgabe der Antivalenzschaltung eine binäre Null. Wenn andererseits
das an die Antivalenzschaltung gegebene ECC-Bit eine binäre Null
ist und ein Signal auf der Leitung 34 erzeugt wird, ist die Ausgabe der Antivalenzschaltung eine binäre Eins. Wenn kein Signal auf der
PO972 042 409883/1045
Leitung 34 liegt, geben alle Antivalenzschaltglieder ein Ausgabesignal
ab, das mit dem Eingabesignal identisch ist. Durch Betreiben der Antivalenzschaltungen (EO) 36 und Erzeugen des Signales
auf der Leitung 34 modifiziert der Fehlerdetektor 32 die durch die Datenantworteinrichtungen 29 und 30 erzeugten ECC-Bits durch
Invertierung ihres binären Zustandes. Durch die Modifizierung sollen die ECC-Bits an dieser Stelle in einen Zustand gesetzt werden,
der bei Kombination der Originaldatenbits auf dem Kabel 38 mit diesen Bits eine ungültige Kombination von Syndrombits nach
dem verwendeten Schema entsprechend der zitierten US-Patentschrift 3 648 239 erzeugt. Das ungültige Muster von Syndrombits besteht
insbesondere aus 7 Syndrombits mit einer binären Eins.
In den übrigen Figuren sind gleiche Bauteile mit derselben Nummer bezeichnet.
Während einer Leseoperation werden gemäß Darstellung in Fig. 3 die binären Daten und die vorher erzeugten ECC-Bits an die Verbindungsmatrix
29 und somit an die EO-Bäume 30 über ein Kabel und den Ausgang des Speichers angelegt. Die Daten werden zuerst
in ein (Speichereingabe-)Register (MIR) 41 eingegeben. Die Verbindungsmatrix
29 und die EO-Bäume 30 untersuchen die vom Speicher empfangenen binären Daten zusammen mit den ECC-Bits zur Erzeugung
von Syndrombits auf dem Kabel 31 und der Byteparitätsbits auf dem Kabel 35, die auf die Datensammelleitung zur Abgabe
an das Datenverarbeitungssystem zu übertragen sind.
Wenn das Speichern und das anschließende Auslesen binärer Daten ohne Fehler erfolgt, sind die auf das Kabel 31 gegebenen Syndrombits
alle binär 0. Diese Tatsache oder die Existenz von Fehlerbedingungen werden durch den Syndromdecoder 42 erkannt. Wenn
Fehlerbedingungen aufgetreten sind, zeigt der Syndromdecoder die Existenz von Mehrfachfehlern durch Signale auf einer Leitung
43 an, die an das Datenverarbeitungssystem zur unmittelbaren Unterbrechung der Verarbeitung geleitet werden.
po 972 042 409883/KK5
Wenn durch ein Signal auf der Leitung 34 die Bedingung für einen Einzelparitätsfehler während der in Fig. 2 gezeigten Speicheroperation
angezeigt wurde, liefert das nachfolgende Lesen der Daten aus dem Speicher mit den modifizierten ECC-Bits ein Muster
von Syndrombits auf das Kabel 31, das dem Syndromdecoder 42
zugeführt und in decodierter Form durch Signale auf der Leitung 44 als "Sieben-Syndrom-Fehler"-Situation angezeigt wird. Das
Signal auf der Leitung 44.invertiert an den Antivalenzschaltungen
(EO) 36 alle erzeugten Byteparitätsbits auf dem Kabel 35 zur Kombination
mit dem binären Datenbit auf einem Kabel 45.
Ein Kabel 46 führt darstellungsgemäß vom Syndromdecoder 42
zu den Antivalenzschaltgliedern (EO) 47. Wenn bei einer Leseoperation
ein Einzelfehler erkannt wird, wird ein Syndrombitmuster auf dem Kabel 31 erzeugt, welches ein fehlerhaftes Datenbit oder ein
fehlerhaftes ECC-Bit bezeichnet. Die Decodierung der Syndrombits durch den Syndromdecoder 42 erregt eine Leitung des Kabels 46
zur Abgabe des Signales an die Antivalenzglieder 47. Die zu den fehlerhaften binären Bits gehörende erregte Einzelleitung des
Kabels 46 invertiert an den Antivalenzgliedern 47 das fehlerhafte
Datenbit auf der Sammelleitung 45 oder das erzeugte Paritätsbit
auf dem Kabel 35. Die Ausgabe der Antivalenzschaltungen 47 wird daher korrigiert und an ein (Prozessorausgangs-)Register (POR)
48 zur Abgabe an das Datenverarbeitungssystem auf der Sammelleitung 49 gegeben.
Wenn durch das oben erwähnte Signal auf der Leitung 44 ein
Siebener-Syndromfehler angezeigt wird, erzeugt die Antivalenzschaltung
(EO) 36 wieder die fehlerhafte Byteparität zur Kombination mit den Daten auf dem Kabel 45 durch die Antivalenzschaltglieder
(EO) 47 für die Datensammelleitung 49. Wenn diese Daten vom Datenverarbeitungssystem von der Sammelleitung 49
empfangen werden, erkennen die Paritätsprüfschaltungen des Datenverarbeitungssystemes den Paritätsfehler und lösen Korrekturschritte
aus. Da der Paritätsfehler jetzt als-Ergebnis eines Versuches erkannt wird, die Daten durch ein bestimmtes
po 972 042 4098837104 5
Programm zu verarbeiten, läßt sich das Programm leicht bestimmen, welches den Fehler erzeugt.
Die Matrix der Fig. 4 ist der oben erwähnten US-Patentschrift 3 648 239 entnommen und zeigt, wie ECC-Bits oder Syndrombits
nach dem Gedanken dieser Erfindung erzeugt werden. Die Grundphilosophie
der Matrix, die die Verwendung gemeinsamer Maschinenteile für die Erzeugung von ECC-Bits und Byteparitätsbits gestattet,
ist auf die Tatsache gerichtet, daß alle Datenbits eines bestimmten Datenbytes in die Erzeugung eines zugehörigen
eindeutigen ECC-Bit oder Syndrombit eintreten. Alle Datenbits
des Byte 1 werden z.B. für die Erzeugung des Syndrombit Sl oder des ECC-Bit Cl benutzt. In gleicher Weise werden z.B. alle
Datenbits des Byte 3 für die Erzeugung des Syndrombit S7 oder des ECC-Bit C8 benutzt. Wenn ECC-Bits erzeugt werden, kann man
daher ein bestimmtes ECC-Bit erzeugen, indem man nur die Byte— parität des jeweiligen Byte untersucht, für das alle Datenbits
zusammen mit einzelnen bestimmten Datenbits von allen anderen Datenbytes
gemäß Bestimmung durch die in Fig. 2 und 3 gezeigte Verbindungsmatrix
29 untersucht werden müssen.'
Die Antivalenzbäume 30 in den Fign. 2^ und 3 sollen das richtige
ECC-Bit während der Speicheroperation und die richtigen Byteparitätsbits während einer Leseoperation erzeugen. Das ECC-Bit
C8 wird z.B. nur mit der Byteparität des Datenbyte 2 in Kombination mit den Datenbits 17, 19, 21 und 24 des Byte 3 und den
Bits 25, 26, 28 und 32 des Datenbyte 4 usw. erzeugt. Gleichzeitig mit der Erzeugung von ECC-Bits führt ein anderer Satz
von Antivalenzschaltgliedern eine Byteparitätsprüfung für das
Byte 2 durch, unter Verwendung der 8 Datenbits des Byte 2 und des zugehörigen Paritätsbits. Die Byteparität für das Byte 2r
die an das Datenverarbeitungssystem auf der Datensammelleitung zu leiten ist, kann erzeugt werden durch Untersuchung des Prüfbits
C8 und aller zum ECC-Bit C8 gehörender Datenbits mit Ausnahme der batenbits des Byte 2. Während einer Leseoperation wird außerdem
die Kombination der 18 Datenbits und des Prüfbits C8 dann kombi-
po 972 042 4 0 9 8 8 3 / 1 0 A 5
niert mit dem Datenbit des aus dem Speicher gelesenen Bytes 2,
um festzustellen, ob ein Syndrombit zur Bezeichnung einer Fehlersituation
erzeugt wwerden soll oder nicht.
Die Fign. 5, 6, 7 und 8 zeigen im einzelnen und in Blockform die in den Fign. 2 und 3 dargestellten Antivalenzbäume 30. Ein erster,
in.Fig. 5 gezeigter Antivalenzbaum empfängt 18 Datenbits entsprechend
der in Fig. 4 gezeigten Matrix und ein weiteres Bit auf der
Leitung 15, welches entweder ein Paritätsbit oder ein Prüfbit ist. Der Antivalenzbaum mit 19 Eingängen arbeitet während einer Speicher-
oder einer Leseoperation. Der Ausgang 51 des Antivalenzbaumes steht auf binär Null oder binär Eins, abhängig davon, ob
die Eingänge zum Antivalenzbaum eine ungerade oder gerade Anzahl von Einsen haben. Fig. 6 zeigt einen Antivalenzbaum mit 9 Eingängen,
der die 8 Datenbits eines bestimmten Datenbytes zusammen mit einem Signal auf der Leitung 52 empfängt, das entweder ein Prüfbit
oder ein Paritätsbit ist, abhängig davon, ob eine Leseoperation oder eine Speicheroperation abläuft. Wieder wird ein Ausgangssignal
53 entsprechend der geraden oder ungeraden Zahl binärer Einsen in den Eingangsdaten erzeugt.
In Fig. 7 ist eine Spexcheroperation für die Erzeugung eines
bestimmten ECC-Prüfbits und die Erkennung eines Paritätsfehlers in einem bestimmten, vom Datenverarbeitungssystem auf der Datensammelleitung
empfangenen Datenbyte gezeigt. Der Antivalenzbaum
54 mit 19 Eingängen empfängt als Eingangssignale das Paritätsbit auf der Leitung 55 desjenigen Datenbytes, in dem alle 8 Datenbits
des Byte an der Erzeugung des Prüfbits teilnehmen sowie die übrigen 18 Datenbits nach der in Fig. 4 gezeigten Matrix. Der
Antivalenzbaum 56 mit 9 Eingängen empfängt als EingangsSignaIe
die 8 Datenbits des zur Erzeugung des zugehörigen Prüfbit auf der Leitung 58 benutzten Dytenbyte und das Paritätsbit auf der
Leitung 55 zur Lieferung eines Signales an die Leitung 57, welches
das Vorhandensein eines Paritätsfehlers in dem speziellen Datenbyte anzeigt. Das Signal auf der Leitung 57, die eine Leitung
des Kabels 31 ist, wird in den Fehlerdetektor 32 geleitet. Das
PO 972 042 40 9883/1065
Prüfbitsignal auf der Leitung 58, die eine Leitung des Kabels 35
ist, wird mit den Daten auf dem Kabel 38 zu einer Eingabe für den Speicher kombiniert, die 64 Datenbits und das aus 8 ECC-Bits bestehende
ECC-Byte umfaßt.
Fig. 8 zeigt die Arbeitsweise der Antivalenzbäume während einer
Leseoperation. Der Antivalenzbaum 59 mit 19 Eingängen empfängt 18 Datenbits von der Verbindungsmatrix 29 in Fig. 3 und das
zugehörige Prüfbit auf einer Leitung 60. Die Ausgabe des Antivalenzbaumes 59 sollte das richtige Paritätsbit für die 8 binären
Bits des zu dem Prüfbit auf Leitung 60 gehörenden Datenbyte sein. Die Ausgabe erfolgt auf einer Leitung 61 des Kabels 35 in Fig. 3
und stellt das Paritätsbit des jeweiligen Datenbyte dar. Der Antivalenzbaum 62 mit 9 Eingängen empfängt die 8 Bits des zu dem
Prüfbit auf einer Leitung 60 gehörenden Datenbyte und benutzt das erzeugte Paritätsbit auf der Leitung 61 zur Erkennung einer
Fehlerbedingung in den aus dem Speicher gelesenen Daten, um durch ein Signal auf der Leitung 63, welches ein Syndrombit ist, die
Fehlersituation zu bezeichnen. Wenn während einer Speicheroperation oder einer nachfolgenden Leseoperation keine Fehlerbedingungen
auftreten, sollte die ein Syndrombit darstellende Ausgabe auf der Leitung 63 eine binäre Null sein.
In Fig. 9 sind Einzelheiten des in Fig. 2 dargestellten Fehlerdetektors
32 gezeigt. Die auf der Leitung 57 der Fig. 7 für alle 8 Datenbytes erzeugten Paritätsprüfbits werden als Eingänge zu
einer Reihe von UND-Gliedern 64 bis 72 empfangen. In den in den Zeichnungen dargestellten Einzelheiten wird eine positive Logik
verwendet, d.h., eine binäre Eins wird durch einen positiven Wert dargestellt. Ein UND-Glied 64 erzeugt eine Ausgabe binär Eins,
wenn alle Eingänge binär Eins sind. Nach der in Fig. 7 gezeigten Logik des Antivalenzbaumes 56 mit 9 Eingängen sind alle Paritätsprüfsummen
auf den in Fig. 9 gezeigten Signalleitungen binär Eins, wenn in den empfangenen Datenbits keine Fehler sind. Die Ausgangssignale
der UND-Glieder 64 bis 71 werden an ein ODER-Glied 73 geleitet, dessen Ausgabe wiederum an einen Inverter 74 und
P0 972O42 «09883/1045
an ein weiteres UND-Glied 75 geleitet wird. Ein Inverter 76 empfängt als Eingang die Ausgabe des UND-Gliedes 72. Durch Anwendung der oben beschriebenen positiven Logik empfängt das UND-Glied
72 positive Eingangssignale an allen Eingängen, wenn keine
Paritätsfehler vorliegen, und gibt ein Ausgabesignal binär Eins
ab, welches durch den Inverter 76 invertiert wird und das UND-Glied
75 abschaltet. Weiterhin empfangen alle UND-Glieder 64 bis 71 an allen ihren Eingängen binäre Einsen, geben eine Ausgabe an
das ODER-Glied 73, die durch den Inverter 74 invertiert, eine
binäre Null auf die Leitung 33 gibt.
Wenn ein einzelner Paritätsfehler auftritt, empfängt das UND-Glied
72 keine binäre Eins auf allen Eingängen und erzeugt eine Ausgabe binär Null; die zu einer binären Eins durch den Inverter
76, als Eingangssignal auf der Leitung 77 zum UND-Glied 75 invertiert
wird. Wenn ein einzelner Paritätsprüffehler vorliegt, führt
eine der die Paritätsprüfsumme des fehlerhaften Datenbyte darstellenden
Signalleitungen außerdem eine binäre Null. Wenn z.B. auf der Leitung 78 eine binäre Null liegt, auf allen übrigen
Leitungen aber eine binäre Eins, liefert das UND-Glied 71 eine
Ausgabe binär Eins. Dadurch gibt das ODER-Glied. 73 eine Ausgabe binär Eins als Eingang auf der Leitung 79 an das UND-Glied 75
und liefert somit ein Ausgangssignal auf die Leitung 34, welches einen Paritätseinzelfehler bezeichnet.
Wenn zwei oder mehr Paritätsfehler vorliegen, sind mindestens
zwei Eingänge zu den UND-Gliedern 64 bis 71 binär Null und daher kann keines dieser UND-Gliedern auf allen Eingängen eine binäre
Eins empfangen. Somit wird vom ODER-Glied 73 als Ausgabe eine binäre Null erzeugt, die durch den Inverter 74 zu einem, einen
Mehrfachfehler anzeigenden Signal auf der Leitung 33 invertiert
wird.
Nach dem Ausführungsbeispiel der vorliegenden Erfindung bezeichnet
ein Signal binär Eins auf der Leitung 34 der Fig.-9 einen Einzelparitätsfehler und modifiziert die während der in Fig. 2 gezeigten
Speicheroperation erzeugten ECC-Bits. Durch die Modifikation der
Po 972 042 409803/1045
ECC-Bits auf dem Kabel 35 an den Antxvalenzgliedern 36 wird ein
Muster von ECC-Bits zur Speicherung mit den Daten erzeugt, welches hinterher während einer Leseoperation zur Wiedererzeugung des
Einzelparitätsfehlers erkannt werden kann.
Aus der Untersuchung der Matrix in Fig. 4 läßt sich die Modifikation
der ECC-Bits ableiten, die erfolgen muß. Ein bestimmtes, für die Erzeugung von ECC-Bits verwendetes Datenbit beeinflußt höchstens
fünf der erzeugten ECC-Bits. So wird z.B. das Datenbit 16 zur Erzeugung der ECC-Bits Cl, C2, C3, C4 und C8 benutzt. Wenn
die Datenbits aus dem Speicher zusammen mit den vorher erzeugten ECC-Bits gelesen werden, liefert daher bei einem fehlerhaften Datenbit
16 die Kombination der übrigen Bits und der vorher erzeugten ECC-Bits, Syndrombits, in denen die Syndrombits Sl, S2, S3, S4
und S8 auf binär Eins stehen. Durch Decodierung dieser binären Eins der Syndrombits kann die Identität des fehlerhaften Datenbit
bestimmt und sein binärer Zustand zu richtigen Daten invertiert werden.
Aus der Matrix der Fig. 4 läßt sich weiter entnehmen, daß bei zwei fehlerhaften Datenbits in einer nachfolgenden Leseoperation
der Daten die Kombination von Datenbits und vorher erzeugten ECC-Bits eine gerade Zahl von Syndrombits mit binär Eins liefert,
d.h., auf binär Eins stehen 2, 4, 6 oder 8 Syndrombits. In normalen Fehlersituationen ist daher das Muster der erzeugten Syn-
drombits entweder ungerade oder gerade und zeigt somit einen Einzelfehler oder einen Doppelfehler an. Eine Kombination von
Syndrombits, die niemals erzeugt wird, gleichgültig ob es sich um einen Einzelfehler oder einen Doppelfehler handelt, 7 Einsen
d;h., man braucht mindestens drei Fehler, um ein Muster von Syndrombits zu erzeugen, das 7 binäre Einsen enthält.
Durch Verwendung des Signales auf der Leitung 34 an den Antivalenzgliedern
36 als ein Eingang zu allen Antivalenzgliedern in verbindung mit den vorher erzeugen ECC-Bits auf dem Kabel 35,
dargestellt in Flg. 2, werden alle ECC-Bits, die mit den Daten-
po 972 042 409883/1045
bits auf dem Kabel 38 im Register 37 enthalten sein sollen, zur Abgabe an den Speicher auf dem Kabel 39 invertiert. Beim
nachfolgenden Ausschließen gemäß der in Fig. 3 gezeigten Logik erzeugt die Kombination der Datenbits und der vorher modifizierten
ECC-Bits in den Äntivalenzbäumen 230, 7 Syndrombits auf dem
Kabel 31 mit einem Wert von binär Eins für die Abgabe an den Syndromdecodierers 42. Diese Situation wird als Siebener-Syndromfehler
erkannt und durch ein Signal auf der Leitung 44 angezeigt. Die Verwendung dieses Signales wird später im einzelnen
beschrieben; jedenfalls werden alle erzeugten Paritätsbits auf dem Kabel 35 in den Antivalenzgliedern 36 invertiert und somit
der ursprüngliche Paritätsfehler wiedererzeugt. Durch Invertierung
aller erzeugten ECC-Bits bei Erkennen eines einzelnen Paritätsfehlers während einer Speicheroperation wird die Fähigkeit
der ECC-Bits zur Erkennung einer weiteren Fehlersituation
während der nachfolgenden Leseoperation nicht beeinflußt. Das
bedeutet, daß ein Einzelparitätsfehler in den ursprünglich zu speichernden Daten erkannt wurde, wenn jedoch bei einer nachfolgenden
Leseoperation ein weiters Datenbit fehlerhaft wird, wird eine gerade Zahl von Syndrombits erzeugt und somit werden
durch ein Signal auf der Leitung 43 in-Fig. 3 mehrere Fehler
(Mehrfachfehler) angezeigt.
Einzelheiten des in Fig. 3 gezeigten Syndromdecoders 42 werden in Verbindung mit Fig. 10 gezeigt. Bei vertikaler Anordnung
zeigen die Fign. 1OA, 1OB und IOC die 'Hauptteile des
Syndromdecoders. Fig. IOC stellt die zu einem bestimmten
8-Bit großen Byte gehörende Logik dar und wird für alle übrigen Datenbytes dupliziert. Fig. IOC zeigt insbesondere das
Funktionieren der Korrektureinrichtung für die ECC-Codierung.
Nach Darstellung in Fig. 1OA werden die auf binär Eins stehenden Syndrombits auf dem Kabel 31 der Fig. 3 von Analogik empfangen
und an dieselbe angelegt, um mehrere Fehler auf der Signalleitung 43 anzuzeigen und ein Einzelfehlersignal auf einer Leitung
80 zu erzeugen, welches die Datenkorrektur nach Möglichkeit auslöst. Ein ODER-Glied 81 liefert einen Ausgang mit binär
po 972 042 40-9883/1045
Eins, wenn mindestens eines der Syndrombits auf binär Eins
steht und diese Ausgabe wird dann an das UND-Glied 82 geleitet. Die Ausgabe des Antivalenzgliedes 83, die an einen Inverter
84 angelegt wird, bestimmt die gerade oder ungerade Zahl von Syndrombits, die auf binär Eins stehen, und somit die
Existenz eines Einzelfehlers oder mehrerer Fehler. Die Ausgabe eines ODER-Glieder 85 liefert eine zweite Eingabe zum UND-Glied
82 zur Anzeige einer Mehrfachfehlerbedingung, d.h., wenn
mindestens ein Syndrombit auf binär Eins steht, liefert das ODER-Glied 81 ein Eingabesignal an das UND-Glied 82. Wenn eine
gerade Zahl von binären Einsen in den Syndrombits vorhanden ist, erzeugt das Antivalenzglied 83 kein Ausgangssignal und der
Inverter 84 daher ein Signal binär Eins über das ODER-Glied 85 für den anderen Eingang des UND-Gliedes 82 und bezeichnet so
durch ein Signal auf der Leitung 43 eine Mehrfachfehlerbedingung .
In Fig. 1OB wird jedes der Syndrombits auf dem Kabel 31 an einen Inverter angelegt und liefert dadurch Komplementärsignale
für den Rest der Fig. 10, d.h., wenn ein Syndrombit eine binäre Eins ist und z.B. an den Inverter 86 angelegt wird, erscheint
die Ausgabe des Inverters 68 als binäre Null. Wenn andererseits das an den Inverter 86 angelegte Syndrombit eine binäre Null ist,
erscheint die Ausgabe des Inverters 86 als positive binäre Eins. Die Reihe der UND-Glieder 87 bis 94 in Fig. 1OB, die ihre Ausgaben
an das ODER-Glied 95 liefern, erzeugen das Signal "Siebener-Syndrom-Fehler"
auf der Leitung 44, die der Leitung 44 in Fig. entspricht. Durch dieses Signal werden alle auf dem Kabel 35 erzeugten
Byteparitätsbits am Antivalenzglied 36 invertiert und dadurch der ursprüngliche Einzelbyteparitätsfehler wieder erzeugt.
Es handelt sich um denselben Einzelbyteparitätsfehler, der das Muster von ECC-Bits erzeugte, die schließlich die Sieben-Syndrombits
erzeugten. Außerdem wird mit diesem Signal das Mehrfachfehlersignal 43 am UND-Glied 82 durch einen Inverter 113 gesperrt.
Nur wenn genau 7 Syndrombits vorhanden sind, gibt eines der UND-Glieder 87 bis 94 ein Ausgangssignal an das ODER-Glied
PO 972 042 409883/104 5
Das UND-Glied 87 erzeugt z.B. einen binären Einerausgang nur, wenn die zum Inverter 86 gehörenden Syndrombits binär Null sind
und alle anderen Syndrombits binär Eins.
Fig. IOC zeigt die Logik, die auf Syndrombits auf dem Kabel 31
für ein bestimmtes Datenbyte anspricht. In der normalen Funktion der ECC-codierten Daten decodieren die UND-Glieder 96 bis 103 das
Muster binärer Einersyndrombits in denjenigen Fällen, in denen
ein Einzelbitdatenfehler in diesem speziellen Datenbyte zu korrigieren ist. Abhängig vom Muster binärer Einsen der Syndrombits
wird eines der UND-Glieder 96 bis 103 eingeschaltet und liefert
einen binären Einerausgang auf das Kabel 46, für das durch das
Muster der Syndrombits bezeichnete Datenbit. Die bezeichnete Bitposition wird in den Antivalenzschaltungen 47 der Fig. 3 invertiert.
Wenn nur ein Syndrombit auf binär Eins steht, erkennt ein UND-Glied,
wie z.B. das UND-Glied 104 diese Tatsache. In Verbindung mit der Darstellung in Fig. IOC heißt das, wenn das äußerste linke
Syndrombit auf der Leitung 105 das einzige ist, welches auf binär Eins steht und alle übrige Syndrombits auf binär Null stehen
und das UND-Glied 104 eine Anzeige dafür gibt, daß das zum Byte der Fig. IOC gehörende ECC-Bit fehlerhaft war.
Das ODER-Glied 106 liefert einen Ausgang binär Eins an ein Kabel
107, sobald eines der UND-Glieder 104 oder 96 bis 103 ein Ausgangssignal
abgibt. Das Signal vom Ausgang des ODER-Gliedes 106 an das Kabel 107 wird zusammen mit der vergleichbaren Schaltung für alle
übrigen Datenbytes an ein ODER-Glied 108 in Fig. 1OA angelegt. Die
Ausgabe des ODER-Gliedes 108 signalisiert die Existenz eines Einzelfehlers
im normalen Lauf der Fehlererkennungs- und -korrekturmöglichkeit
der ECC-Bits. Die Ausgabe des ODER-Gliedes 108 wird durch einen Inverter 109 invertiert und durch ein ODER-Glied 85
als binärer Nulleingang an das UND-Glied 82 geleitet, um den Ausgang eines Mehrfachfehlerslgnales zu negieren.
Die übrige Schaltung der Fig. IOC, nämlich das ODER-Glied 10, der
Inverter 111 und das UND-Glied 112 dienen zur Signalisierung sol-PO
972 ο« «09883/1045
eher Situationen, in denen das erzeugte Byteparitätsbit für das
jeweils zur Logik der Fig. IOC gehörende Byte invertiert werden
sollte« Die Ausgabe des ODER-Gliedes 110 auf binär Eins wird an das Kabel 46 der Fig. 3 zu dem zum Byte gehörigen Paritätsbit
geleitet und an die Antivalenzschaltungen 47 weitergegeben, um
das betroffene Paritätsbit zu invertieren.
Aus Fig. 8 ist zu sehen, warum das ODER-Glied 110 eine Ausgabe binär Eins erzeugt. Das UND-Glied 104 liefert eine Eingabe
binär Eins an das ODER-Glied 110, sobald das zu diesem Byte gehörende Prüfbit auf der Leitung 60 der Fig. 8 fehlerhaft ist. In
dieser Situation wäre das auf der Leitung 61 erzeugte Paritätsbit fehlerhaft und das Syndrombit auf Leitung 63 auf binär Eins,
welches dann an die Leitung 105 in Fig. IOC angelegt wird. In dieser Situation muß das für das in Fig. IOC gezeigte Byte erzeugte
Paritätsbit invertiert werden, damit es die richtige Parität des am Eingang des Antivalenzbaumes 62 in Fig. 8 vorgesehenen
Datenbyte widergibt. Der andere Eingang zum ODER-Glied 110 kommt vom UND-Glied 112. Das UND-Glied 112 liefert einen Eingang
binär Eins an das ODER-Glied 110, der anzeigt, daß das zu diesem Byte gehörende Paritätsbit invertiert werden sollte, um die
Tatsache wiederzugeben, daß eines der 18 Datenbits, die an den Antivalenzbaum 59 der Fig. 8 mit 19 Eingängen angelegt werden,
fehlerhaft ist und durch die zu einem anderen Datenbyte gehörende Logik korrigiert wird. Das bedeutet: das Syndrombit 105 für
diesen Byte wurde entsprechend der Matrix der Fig. 4 gesetzt, ein Einzelfehler wurde angezeigt und somit korrigiert gemäß Anzeige
auf der Leitung 80 und keines der UND-Glieder 96 bis 103 oder das UND-Glied 104 liefert ein Ausgangssignal, wie es durch
einen positiven Ausgang binär Eins durch den Inverter 111 angezeigt wird. Das UND-Glied .112 zeigt daher an, daß aufgrund eines
Fehlers in einem der Datenbits eines anderen Byte das erzeugte Paritätsbit auf der Leitung 61 der Fig. 8, das zu diesem speziellen
Datenbyte gehört, fehlerhaft ist und daher invertiert werden muß.
ρ 972 042 409883/1045
Claims (7)
- PATENTANSPRÜCHEίίΤ) Einrichtung zur fehlergesicherten übertragung von Daten zwischen einer Datensainmelleitung und einem Datenspeicher einer Datenverarbeitungsanlage, dadurch gekennzeichnet, daß sie in einem Fehlerprüf- und -korrekturcode (ECC) codierte Daten vom Datenspeicher während einer Leseoperation für die Erzeugung byteparitätscodierter Daten -.," zur Abgabe an die Datensammelleitung empfängt, daß sie ferner byteparitätscodierte Daten von der Sammelleitung während einer Speicheroperation für die Erzeugung ECC-codierter Daten zur Abgabe an den Datenspeicher empfängt, daß sie weiter eine erste Anordnung aufweist, die während einer Speicheroperation auf Daten mit der Erzeugung von ECC-Bits zur Abgabe an den Speicher, zusammen mit den Datenbits und mit der Erzeugung von ByteparitätsfehlerSignalen von der Datensammelleitung anspricht und daß sie während einer Leseoperation auf Daten mit der Erzeugung von Byteparitätsbits zur Abgabe an die Sammelleitung, zusammen mit den Datenbits und mit der Erzeugung von Syndrombitsignalen anspricht, welche letztere Fehierbedingungen vom Datenspeicher anzeigen, daß ferner eine zweite Anordnung vorgesehen ist, die auf Daten während einer Speicheroperation mit der Erzeugung eines zweiten Signals anspricht, das eine Fehlerbedingung in den von der Datensainmelleitung empfangenen Daten anzeigt und daß sie schließlich eine dritte Anordnung besitzt, die mit der zweiten verbunden • ist und die von den genannten Anordnungen erzeugten ECC-Bits für eine Einbeziehung in die zu speichernden Datenbits modifiziert.
- 2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die im Anspruch 1 genannte zweite Anordnung einen einzelnen Byteparitätsfehler anzeigt.
- 3. Einrichtung nach Anspruch 1 und/oder 2, dadurch gekennzeich- .PO 972 042 Ζ 409.883/104 5net, daß die im Anspruch 1 genannte dritte Anordnung eine Anordnung enthält, die die erzeugten ECC-Bits zu einer ungültigen Kombination zwangsweise umformt.
- 4. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der verwendete ECC-Code so aufgebaut ist, daß irgendein Einzel- oder Doppelbitfehler in den ECC-codierten Daten kein besonderes Muster von Syn~ drombitsignalen erzeugen kann und daß die im Anspruch 3 genannte Anordnung eine Anordnung für die Modifizierung erzeugter ECC-Bits enthält, um ein besonderes Muster von Syndrombitsignalen zu erzeugen.
- 5. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 4,. dadurch gekennzeichnet, daß Antivalenzglieder, von denen jeweils eines jedem der erzeugten ECC-Bits zugeordnet ist, wobei ein Eingang des genannten Antivalenzgliedes mit den auf die Daten ansprechenden Anordnungen verbunden ist, um das zugeordnete ECC-Bit zu empfangen und der zweite Eingang aller Antivalenzglieder mit der genannten zweiten Anordnung verbunden ist.
- 6. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß ferner eine vierte Anordnung vorgesehen ist, die mit den Anordnungen verbunden ist, die auf die Daten während einer Leseoperation mit der Erzeugung eines zweiten Signals anspricht, das die Feststellung eines bestimmten Musters der Syndrombitsignale anzeigt und weiterhin eine fünfte Anordnung vorgesehen ist, die mit der vierten für die Modifizierung der Byteparitätsbits verbunden ist, die von den auf die Daten ansprechenden Anordnungen erzeugt werden und in die Datenbits einbezogen werden.
- 7. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die fünfte Anordnung eine Anordnung zur Invertierung aller erzeugten Byteparitätsbitspo 972 042 409883/1045aufweist, wodurch der ursprünglich festgestellte Byteparitätsfehler während der Speicheroperation wieder erzeugt wird.042 409883/1045Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US00373708A US3836957A (en) | 1973-06-26 | 1973-06-26 | Data storage system with deferred error detection |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2430464A1 true DE2430464A1 (de) | 1975-01-16 |
Family
ID=23473531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2430464A Pending DE2430464A1 (de) | 1973-06-26 | 1974-06-25 | Einrichtung zur fehlergesicherten datenuebertragung |
Country Status (5)
Country | Link |
---|---|
US (1) | US3836957A (de) |
JP (1) | JPS5338581B2 (de) |
DE (1) | DE2430464A1 (de) |
FR (1) | FR2235426B1 (de) |
GB (1) | GB1425671A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2532915A1 (de) * | 1975-07-23 | 1977-02-10 | Siemens Ag | Schaltungsanordnung zur fehlersicherung bei einer uebertragung von daten |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3949208A (en) * | 1974-12-31 | 1976-04-06 | International Business Machines Corporation | Apparatus for detecting and correcting errors in an encoded memory word |
US4005405A (en) * | 1975-05-07 | 1977-01-25 | Data General Corporation | Error detection and correction in data processing systems |
US3958220A (en) * | 1975-05-30 | 1976-05-18 | International Business Machines Corporation | Enhanced error correction |
US4077565A (en) * | 1976-09-29 | 1978-03-07 | Honeywell Information Systems Inc. | Error detection and correction locator circuits |
US4072853A (en) * | 1976-09-29 | 1978-02-07 | Honeywell Information Systems Inc. | Apparatus and method for storing parity encoded data from a plurality of input/output sources |
GB1573329A (en) * | 1976-09-29 | 1980-08-20 | Honeywell Inf Systems | Method and apparatu for detecting errors in parity encoded data |
US4171765A (en) * | 1977-08-29 | 1979-10-23 | Data General Corporation | Error detection system |
GB2023895B (en) * | 1978-06-21 | 1982-10-13 | Data General Corp | Error detection circuit |
US4201337A (en) * | 1978-09-01 | 1980-05-06 | Ncr Corporation | Data processing system having error detection and correction circuits |
JPS5555412A (en) * | 1978-10-17 | 1980-04-23 | Victor Co Of Japan Ltd | Signal recording and reproducing device |
US4388684A (en) * | 1981-03-27 | 1983-06-14 | Honeywell Information Systems Inc. | Apparatus for deferring error detection of multibyte parity encoded data received from a plurality of input/output data sources |
US4466099A (en) * | 1981-12-20 | 1984-08-14 | International Business Machines Corp. | Information system using error syndrome for special control |
WO1983002344A1 (en) * | 1981-12-30 | 1983-07-07 | Meltzer, David | Information system using error syndrome for special control |
NL8303765A (nl) * | 1983-11-02 | 1985-06-03 | Philips Nv | Dataverwerkend systeem waarbij in het geheugen onbetrouwbare woorden zijn vervangen door een onbetrouwbaarheidsindicator. |
JPS61134988A (ja) * | 1984-12-04 | 1986-06-23 | Toshiba Corp | 半導体メモリにおける誤り検出訂正機能制御系 |
US4726021A (en) * | 1985-04-17 | 1988-02-16 | Hitachi, Ltd. | Semiconductor memory having error correcting means |
US4852100A (en) * | 1986-10-17 | 1989-07-25 | Amdahl Corporation | Error detection and correction scheme for main storage unit |
US4817095A (en) * | 1987-05-15 | 1989-03-28 | Digital Equipment Corporation | Byte write error code method and apparatus |
DE68928449T2 (de) * | 1988-08-05 | 1998-03-26 | Canon Kk | Informationsübertragungssystem mit Aufzeichnungs/Wiedergabeeinrichtung |
US5220569A (en) * | 1990-07-09 | 1993-06-15 | Seagate Technology, Inc. | Disk array with error type indication and selection of error correction method |
US5285456A (en) * | 1991-05-15 | 1994-02-08 | International Business Machines Corporation | System and method for improving the integrity of control information |
JPH05225798A (ja) * | 1991-08-14 | 1993-09-03 | Internatl Business Mach Corp <Ibm> | メモリシステム |
US5539754A (en) * | 1992-10-05 | 1996-07-23 | Hewlett-Packard Company | Method and circuitry for generating syndrome bits within an error correction and detection circuit |
JPH0651709U (ja) * | 1992-12-11 | 1994-07-15 | 光子 甲斐 | こたつカバー及びこたつクロス |
DE69526279T2 (de) * | 1994-02-22 | 2002-10-02 | Siemens Ag | Flexible Fehlerkorrekturcode/Paritätsbit-Architektur |
GB0322424D0 (en) * | 2003-09-24 | 2003-10-29 | Ibm | Error detection in redundant array of storage units |
US7721178B2 (en) * | 2006-06-01 | 2010-05-18 | International Business Machines Corporation | Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code |
US20070283207A1 (en) * | 2006-06-01 | 2007-12-06 | International Business Machines Corporation | Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with bus timing improvements |
US20070283223A1 (en) * | 2006-06-01 | 2007-12-06 | International Business Machines Corporation | Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with all checkbits transferred last |
US20070283208A1 (en) * | 2006-06-01 | 2007-12-06 | International Business Machines Corporation | Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with bus diagnostic features |
JP4946249B2 (ja) * | 2006-08-07 | 2012-06-06 | 富士通セミコンダクター株式会社 | Eccのコード長が変更可能な半導体メモリ装置 |
EP2400682B1 (de) * | 2010-06-23 | 2013-04-17 | Robert Bosch GmbH | Verfahren und Vorrichtung zum Verändern eine Prüfsumme und zum Erkennen der veränderten Prüfsumme |
US9391638B1 (en) * | 2011-11-10 | 2016-07-12 | Marvell Israel (M.I.S.L) Ltd. | Error indications in error correction code (ECC) protected memory systems |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3697949A (en) * | 1970-12-31 | 1972-10-10 | Ibm | Error correction system for use with a rotational single-error correction, double-error detection hamming code |
-
1973
- 1973-06-26 US US00373708A patent/US3836957A/en not_active Expired - Lifetime
-
1974
- 1974-04-26 FR FR7415159A patent/FR2235426B1/fr not_active Expired
- 1974-05-10 GB GB2065974A patent/GB1425671A/en not_active Expired
- 1974-05-17 JP JP5463174A patent/JPS5338581B2/ja not_active Expired
- 1974-06-25 DE DE2430464A patent/DE2430464A1/de active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2532915A1 (de) * | 1975-07-23 | 1977-02-10 | Siemens Ag | Schaltungsanordnung zur fehlersicherung bei einer uebertragung von daten |
Also Published As
Publication number | Publication date |
---|---|
FR2235426A1 (de) | 1975-01-24 |
GB1425671A (en) | 1976-02-18 |
JPS5023943A (de) | 1975-03-14 |
FR2235426B1 (de) | 1976-06-25 |
JPS5338581B2 (de) | 1978-10-16 |
US3836957A (en) | 1974-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2430464A1 (de) | Einrichtung zur fehlergesicherten datenuebertragung | |
DE2132565C3 (de) | Umsetzer | |
DE3125048C2 (de) | ||
DE2554945C2 (de) | Verfahren und Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in gespeicherten Datenwörtern | |
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE60001370T2 (de) | Verfahren und vorrichtung zur erkennung von doppelbitfehlern und korrektur von fehlern durch bauelementfehler verursacht | |
DE3111447C2 (de) | ||
DE2942998A1 (de) | Fehler-korrektur- und -erkennungs- anordnung | |
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE1901228B2 (de) | Datenverarbeitungsanlage mit einrichtungen zur wiederholung von operationen beim auftreten eines fehlers | |
DE2357168C2 (de) | Schaltungsanordnung für einen Speichermodul | |
DE2659031A1 (de) | Fehlerkorrektur- und -steuersystem | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE69317766T2 (de) | Fehlerkorrekturgerät für digitale Daten zur Korrektur von Einfachfehlern (sec), von Doppelfehlern (ded) und Vielfacheinzelbytefehlern (sbd) und zur Korrektur von Einzelbytefehlern ungerader Anzahl (odd sbc) | |
DE2450468A1 (de) | Fehlerkorrekturanordnung fuer einen speicher | |
DE60215687T2 (de) | Fehlerkorrektion von multibit-baueinheiten mit unbeschränkter erkennung von doppelfehlern | |
DE1250163B (de) | Einrichtung zur Paritätsprüfung von Speicherworten | |
DE2513262C3 (de) | Digitale Codeumwandlungsanordnung | |
DE69508034T2 (de) | Fehlererkennungs-System und -Verfahren für gespiegelten Speicher zwischen doppelten Plattenspeichersteuerungen | |
DE2336020B2 (de) | Adressen-berechnungsschaltung fuer paritaetsfehler-korrekturprogramme | |
DE2047868A1 (de) | Schaltung zur Korrektur von Einzel fehlern in den Wortern eines zyklischen (n, k) Codes | |
DE2655653C2 (de) | Anordnung zur Feststellung der richtigen Zuordnung von Adresse und Speicherwort in einem wortorganisierten Datenspeicher | |
DE2908373C2 (de) | ||
DE19635240A1 (de) | Speichersystem | |
DE2133323C3 (de) | Fehlererkennungs- und Korrekturschaltung für binäre Datensignale |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OHJ | Non-payment of the annual fee |