DE2131848B2 - Verfahren und Vorrichtung zur Fehlererkennung und -korrektur - Google Patents
Verfahren und Vorrichtung zur Fehlererkennung und -korrekturInfo
- Publication number
- DE2131848B2 DE2131848B2 DE19712131848 DE2131848A DE2131848B2 DE 2131848 B2 DE2131848 B2 DE 2131848B2 DE 19712131848 DE19712131848 DE 19712131848 DE 2131848 A DE2131848 A DE 2131848A DE 2131848 B2 DE2131848 B2 DE 2131848B2
- Authority
- DE
- Germany
- Prior art keywords
- bits
- circuit
- bit
- data
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/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/1012—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 codes or arrangements adapted for a specific type of error
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
W) Die Erfindung betrifft ein Verfahren gemäß Oberbegriff
des Anspruchs 1 und eine Vorrichtung zur Durchführung des Verfahrens.
Die in modernen programmgesteuerten Datenverarbeitungsanlagen eingesetzten Halbleiterspeicher weisen
zwar die erforderlichen kurzen Zugriffszeiten auf, sie sind jedoch nicht so betriebssicher wie die langsamer
arbeitenden Magnetkernspeicher. Deshalb muß dafür gesorgt werden, daß Einzelfehler von einer Fehlerer-
kennungs- und -korrekturschaltung automatisch korrigiert werden und das Vorliegen nicht zu korrigierender
Mehrfachfehler angezeigt wird. Dazu werden die zu speichernden Informationswörter durch einen fehlerkorrigierenden
Code ergänzt Das Ergänzen geschieht in der Weise, daß aus den zu speichernden Datenbits
nach bestimmten Regeln Redundanzbits abgeleitet werden, die mit den Datenbits gespeichert werden. Beim
Auslesen eines so gegen Fehler gesicherten Wortes werden die Redundanzbits erneut aus den Datenbits
abgeleitet und mit den ausgelesenen Redundanzbits erneut aus den Dateiibits abgeleitet und mit den
ausgelesenen Redundanzbits verglichen.
Die bei dem Vergleich erhaltenen Signale, die als Syndrome bezeichnet werden, werden zur Lokalisierung
des fehlerhaften Bits von einer Decodierschaltung ausgewertet, die die Korrektur des fehlerhaften Bits
durch Invertieren in einer Datenbit-Modifizierschaltung bewirkt
Eine Einrichtung in der oben angegebenen Art ist in der US-PS 35 73 728 beschrieben, weiche sich insbesondere
mit dem Speichern und Auslesen von Teilwörtern befaßt Die Erzeugung eines eine eventuelle Datenkorrektur
freigebenden Signals sowie die Auswertung einer geraden oder ungeraden Anzahl Syndrombits werden in
dieser Patentschrift nicht behandelt Ohne das genannte Freigabesignal werden jedoch unter Umständen Pseudokorrekturen
von in Wirklichkeit mit den vorhandenen Mitteln unkorrigierbaren Fehlern durchgeführt.
In der Zeitschrift »IBM Journal«, Juli 1970, Seiten 395 bis 401, beschreibt Hsiao einen für die Einzelfehlerkorrektur
und Doppelfehlererkennung günstigen Code. Die für diesen Code charakteristische Matrix, welche
die Zuordnung der PrüfbSts zu den zu ihrer Erzeugung
verwendeten Datenbits angibt, hat die Eigenschaft, daß jede Datenbitspalte eine ungerade Anzahl von Einsen
enthält Außerdem wurde getrachtet, die Anzahl der Einsen in jeder Zeile deir Matrix so gering wie möglich
zu halten. Eine weitere Eigenschaft dieses Codes besteht darin, daß getrachtet wurde, die Anzahl der Einsen in
jeder Zeile der Matrix möglichst gleich zu machen, wobei die Durchschnittsanzahl der Einsen in jeder Zeile
der Matrix möglichst gleich sein soll der Gesamtanzahl von Positionen in einer Zeile der Matrix geteilt durch
die Anzahl Zeilen der Matrix.
Die geringe Anzahl von Einsen in jeder Zeile der Matrix bringt wohl einen Geschwindigkeitsvorteil mit
sich, hat jedoch andererseits den Nachteil, daß dem Code eine innere Symmetrie fehlt, was die Verwendung
von möglichst vielen, gleichartig aufgebauten Einrichtungen erschwert.
In dem genannten Artikel sind keine Einrichtungen zur Feststellung einer geraden oder ungeraden Anzahl
Syndrombits beschrieben. Wie der nachfolgend anhand der F i g. 1 und 2 beschriebene Stand der Technik jedoch
zeigt, ist es notwendig, zur Vermeidung von Scheinkorrekturen von an sich unkorrigierbaren Fehlern zu
wissen, wie hoch die Anzahl der Syndrombits ist, d. h. also, in wie vielen Fällen die gespeicherten Prüfbits mit
den beim Auslesen der Datenwörter nochmals erzeugten Prüfbits nicht übereinstimmen.
Die Datenkorrektur kann nur erfolgen (freigegeben werden), wenn eine ungerade Anzahl von Syndrombits
festgestellt wird.
Nachfolgend zeigt Fig. 1 das Blockschaltbild einer herkömmlichen Schaltung zur Korrektur von Einzelfehlern
und zur Erkennung von Doppelfehlern in aus einem Speicher ausgelesenen Datenwörtern und F i g. 2 die
Codelabelle für einen der FehlerJcorrekturschaltung
nach F i g. 1 zugrunde liegendem Code.
In den Blockschaltbildern der F i g. 1 und 3 (Ausführungsbeispiel der Erfindung) sind mehrere Verbindungs-
-, leitungen zwischen zwei Schaltungsteilen nur durch eine Verbindungsleitung mit einem Schrägstrich dargestellt
Die tatsächliche Anzahl von Leitungsverbindungen geht aus der Index-Tabelle der Blockschaltbilder hervor. Sind
zwei Schaltungsteile nur durch eine einzelne Leitung
ίο verbunden, entfällt bei deren Darstellung im Blockschaltbild
der Schrägstrich.
In den Blockschaltbildern ist der Aufbau der einzelnen als Rechtecke dargestellten Schaltungsteile
unter den sie kennzeichnenden Abkürzungsbuchstaben
ι5 in Klammern angegeben. Die Bedeutung der Symbole
ist neben der zu jedem Blockschaltbild gehörenden Index-Tabelle angegeben. Die Hochzahl neben einer
Klammer gibt die Stufenzahl des Schaltungsteils an.
Die folgenden Ausführungen beziehen sich auf die
in Korrektur von Einzelfehlern und die Erkennung von
Doppelfehlern in Informationswörtern, die beispielsweise aus 72 Bits bestehen. 64 davon sind Datenbits, die
restlichen 8 Redundanzbits, die die Fehlerkorrektur ermöglichen.
r> Die in Fig. 1 dargestellte herkömmliche Schaltung zur Korrektur von Einzelfehlern und zur Erkennung von
Doppelfehlern in aus einem Speicher ausgelesenen Informationswörtern weist acht Redundanzbit-Generatoren
RBG1 auf, die aus je 26 Exklusiv-ODER-Gliedern
κι bestehen, die in fünf Stufen angeordnet sind und aus den
26 ihnen zugeleiteten Datenbits 8 Redundanzbits Gy erzeugen.
Wie die Codetabelle nach F i g. 2 zeigt, ist die Zuordnung der in F i g. 1 angegebenen Redundanzbits
j-> Cj bzw. Gj zu den Datenbits Di dabei in bekannter
Weise so vorgenommen worden, daß jedes Datenbit Di nur einer ungeraden Anzahl von Redundanzbits Cj bzw.
Cjzugeordnet ist und daß jedem Redundanzbit Cjbzw.
Gj möglichst eine gleich große Anzahl von Datenbits zugeordnet ist. Die 8 Ausgänge Gy der Redundanzbit-Generatoren
RBG1 sind mit einer aus 8 Exklusiv-ODER-Gliedern
bestehenden Redundanzbit-Vergleichsschaltung RBV2 verbunden, in der die durch die
Redundanzbit-Generatoren RBG1 aus den aus dem
4--> Speicher ausgelesenen Datenbits erzeugten Redundanzbits
Gy mit den aus dem Speicher entnommenen Redundanzbits Q'verglichen werden.
Die acht erhaltenen Ausgangssignale, die als Syndrome Sj bezeichnet werden, besitzen bei Gleichheit eines
■5o ausgelesenen Redundanzbits Cj mit dem aus den ausgelesenen Datenbits abgeleiteten Redundanzbit Gj
den Binärwert »Null«, bei Ungleichheit, die auf einen Fehler hinweist, den Binärwert »Eins«. Unter der
Annahme, daß die Wahrscheinlichkeit für das Auftreten
•55 einer ungeraden Fehleranzahl größer als 1 vernachlässigbar
gering ist, läßt sich aus der Anzahl Ns der Syndrome, die den Binärwert »Eins« besitzen, auf die
Art des Fehlers schließen. So bedeutet
bo Ns = O Fehlerfreiheit
Ns = 1 Fehler in einem Redundanzbit, Korrektur
der Datenbits ist nicht erforderlich Ns = 2, 4,6gerade Anzahl von Fehlern (Doppelfehler.
Vierfachfehler, Sechsfachfehler ...) in den hi Daten- und/oder Redundanzbits; der Fehler
ist nicht korrigierbar
Ns = 3 korrigierbarer Einzelfehler unter den Datenbits
Ns = 5 entweder korrigierbarer Einzelfehler unter
den Datenbits oder nicht korrigierbarer Dreifachfehler
Ns = 7 nicht korrigierbarer Mehrfachfehler; Auftreten ist unwahrscheinlich
Die Fehlerkorrekturschaltung hat normalerweise noch folgende Aufgaben zu erfüllen:
1) Das Vorliegen von Fehlern zu erkennen (Ns > 0).
2) Im Fall eines Einzelfehlers (Ns = ungerade und
gröber als Eins) die Korrektur eines Datenbits vorzunehmen.
3) Bei einem Doppelfehler (Ns = gerade) Alarm für
einen Stop der Datenverarbeitungsanlage auszulösen und das ausgelesene Wort nicht zu verändern.
4) Die Paritätsbits für die in gleich große Bitgruppen, die als Bytes bezeichnet werden, unterteilten Bits
eines korrigierten oder nicht korrigierbaren Informationswortes zu erzeugen, da die Datenverarbeitungsanlage
normalerweise auch die Paritätsbits der Bytes benötigt.
Zur Erfüllung der genannten Aufgaben sind die acht Ausgänge Sj der Redundanzbit-Vergleichsschaltung
RBV2 mit einer aus 64 UND-Gliedern bestehenden Fehlerbit-Lokalisierungsschaltung FBL 3, mit einer aus
Exklusiv-ODER-Gliedem aufgebauten Prüfschaltung UGP4 zur Feststellung, ob die Anzahl Ns der den
Binärwert 1 besitzenden Syndrome gerade oder ungerade ist, und mit einer aus einem ODER-Glied
bestehenden weiteren Prüfschaltung FKF5, die anzeigt, ob Fehler oder keine Fehler vorliegen, verbunden. Der
Ausgang der Prüfschaltung FKF5 ist mit einer aus einem UND-Glied mit nachgeschaltetem Inverter
bestehenden Fehlerklassifizierschaltung FKS6 verbunden, an deren zweiten Eingang der erste Ausgang der
Prüfschaltung UGP4 angeschlossen ist. Die Fehlerklassifizierschaltung FKS6 besitzt zwei Ausgänge, an deren
erstem ein Signal erscheint, wenn ein korrigierbarer Fehler vorliegt (ungerade Anzahl der Syndrome mit
dem Binärwert »1«), während der zweite Ausgang ein Signal liefert, wenn ein unkorrigierbarer Fehler vorliegt.
(Von Null verschieden große Anzahl von Syndromen mit dem Binärwert »1«.) Der zweite Ausgang der
Prüfschaltung UGPA ist mit den Steuereingängen der die Fehlerbit-Lokalisierungsschaltung FBL3 bildenden
64 UND-Glieder verbunden und erlaubt so nur bei korrigierbaren Fehlern eine Fehlerbit-Lokalisation. Die
64 Ausgänge der Fehlerbit-Lokialisierungsschaltung FBL3 führen an die ersten Eingänge einer aus 63
Exklusiv-ODER-Gliedem bestehenden Datenbit-Modifizierschaltung DBM 7, deren zweiten Eingängen die
ausgelesenen 64 Datenbits Di zugeleitet werden. Bei den am Ausgang der Datenbit-Modifizierschaltung
DBM 7 erscheinenden Datenbits Di' handelt es sich im Fehlerfall um die korrigierten Datenbits. Bei Fehlerfreiheit
sind die Datenbits Di' mit den ausgelesenen Datenbits Di identisch. An die Datenbit-Modifizierschaltung
DMB 7 ist ein aus Exklusiv-ODER-Gliedem aufgebauter Paritätsgenerator BPGS angeschlossen,
der zu jedem eine Gruppe von 8 Datenbits D/'bildenden
Byte ftt'das zugehörige Paritätsbit Pk liefert
In F i g. 2 ist die Code-Tabelle für einen die Korrektur
von Einzelfehlern und die Erkennung von Doppelfehlern ermöglichenden Code wiedergegeben, der beispielsweise
der herkömmlichen Schaltung nach F i g. 1 zugrunde liegen kann.
Wie F i g. 1 zeigt, können die Daten vom Speicher ai
die Verarbeitungseinheit erst weitergeleitet werder wenn sie die Fehlererkennungs- und Fehlerkorrektur
Einrichtung durchlaufen haben. Dabei kann die Notwen digkeit und Möglichkeit einer Dehlerkorrektur ers
dann entschieden werden, wenn das von der Einrichtunj UGP aus den Syndrombits erzeugte Freigabesigna
vorliegt.
Die zur Erzeugung des Freigabesignals benötigte Zei geht also direkt in die effektive Zugriffszeit de
Speichers ein.
Der im Anspruch 1 gekennzeichneten Lösung lieg die Aufgabe zugrunde, das zur Datenkorrektur nötigi
Freigabesignal rascher zu erzeugen.
Das erfindungsgemäße Verfahren, die Paritätsbits au den unkorrigierten Datenbits zu erzeugen und Paritäts
funktionen, Prüfbitfunktionen sowie Fehlerentschei dungsfunktionen abzuleiten, hat den Vorteil, dal
weniger logische Stufen bis zur Erzeugung de Freigabesignals durchlaufen werden und somit eil
Zeitvorteil gegenüber der bekannten Einrichtunj resultiert. Außerdem bietet die Verwendung de:
angegebenen symmetrischen Codes die Möglichkeit, di< Fehlererkennungs- und Korrektur-Einrichtung in grö
ßerem Maße aus gleichen Bauteilen aufzubauen als e: bisher der Fall war.
Die frühzeitige Erzeugung der Paritätsbits aus de: unkorrigierten Datenbits hat außerdem den Vorteil, dal
die Paritätsbits nicht mehr, wie bisher, aus der korrigierten Datenbits erzeugt werden, sondern bereit!
zugleich mit den Datenbits am Ausgang der Einrichtun{ zur Verfügung stehen. Ebenso wie ein Datenbit mu£
höchstens auch ein Paritätsbit im Fehlerfall modifizier werden, wodurch jedoch die gleichzeitige Verfügbarkei
von Daten und Paritätsbits nicht beeinträchtigt wird.
Eine vorteilhafte Weiterbildung der Erfindung ist in
Anspruch 2 gekennzeichnet und beruht auf dei Verwendung der Fehlerentscheidungsfunktionen unc
der Syndrombits zur Erzeugung von Signalen, di« dasjenige Byte anzeigen, in dem ein Einzelfehlei
korrigiert werden soll. Damit findet die Eigenschaft de: beiden Fehlerentscheidungsfaktoren, daß sie jeweih
einen Fehler in der einen oder anderen Hälfte de; Informationswortes anzeigen, eine vorteilhafte Verwen
dung. Mit nur acht UND-Gliedern kann eines von ach Bytes angezeigt werden, wobei auch hierfür der ober
besprochene Zeitvorteil gilt
Im folgenden wird ein Ausführungsbeispiel dei Erfindung anhand der Zeichnungen näher erläutert Vor
diesen zeigt
Fig.3 das Blockschaltbild der erfindungsgemäßer
Schaltung zur schnelleren Durchführung der Korrektui von Einzelfehlern und der Erkennung von Doppelfehlern,
F i g. 4 die Code-Tabelle für den der Schaltung nach
F i g. 1 zugrunde liegenden Fehlerkorrektur-Code,
F i g. 5 einen Vergleich der Verzögerungen, die be: der herkömmlichen Schaltung und der Schaltung nach
der Erfindung bis zur Beendigung der Fehlerkorrektui
entstehen,
Fig.6 eine Code-Tabelle eines weiteren, für das Durchführen des erfindungsgemäßen Verfahren geeigneten
Codes.
In Fig.4 ist die der Erfindung zugrunde liegende Code-Tabelle dargestellt, aus deren Zeilen die Zuordnung
der Datenbits Di zu den einzelnen Redundanzbit! Cj bzw. Gj (F i g. 3) ersichtlich ist während aus der
Spalten der Code-Tabelle hervorgeht welche dei
Redundanzbits Cj bzw. Gj einem Datenbit Di zugeordnet sind. Die Code-Tabelle ist, wie auch die
Code-Tabelle der F i g. 2 so dargestellt worden, daß sie eine innere Symmetrie aufweist, so daß ihre Implementierung
einen Aufbau aus zwei gleichen Teilen erlaubt.
Die Tabelle zeigt folgende Gesetzmäßigkeiten:
Die Tabelle zeigt folgende Gesetzmäßigkeiten:
a) Jedes Datenbit ist einer ungeraden Anzahl von Redundanzbits Q'bzw. G/zugeordnet.
b) Genau die Hälfte der Datenbits, das sind bei der beispielsweise gewählten Wortlänge von 64 Datenbits
und 8 Redundanzbits also 32 Datenbits, sind einer geraden Anzahl von Redundanzbits aus der
ersten Hälfte (Q bis G bzw. G\ bis Ga) der Redundanzbits Q bis Ck bzw. Ci bis Gg und einer
ungeraden Anzahl von Redundanzbits aus deren zweiter Hälfte (C5 bis C8 bzw. G5 bis G8)
zugeordnet.
c) Aufgrund der Symmetrieeigenschaften des Codes ist die andere Hälfte der Datenbits einer ungeraden
Anzahl von Redundanzbits aus deren erster Hälfte (G bis Ci bzw. Gi bis Gi) und einer geraden Anzahl
von Redundanzbits aus deren zweiter Hälfte (Cs bis C8 bzw. G5 bis G8) zugeordnet.
d) Das zusammenfassen mehrerer Datenbits zu einer als Byte bezeichneten Bitgruppe erfolgt in der
Weise, daß die zu dem Byte gehörenden Datenbits alle der gleichen Hälfte der Redundanzbits
zugeordnet sind, wobei diese Zuordnung für das betreffende Byte eindeutig ist.
Die Punkte a) bis d) ermöglichen eine Beschleunigung der Fehlerkorrektur, da nur eine minimale Anzahl
logischer Stufen durchlaufen werden muß.
Codes, die den unter a) bis d) genannten Gesetzmäßigkeiten genügen, besitzen Eigenschaften, die eine
K)
20
J(I Beschleunigung der Fehlerkorrektur und eine Verbilligung
der Fehlerkorrekturschaltung ermöglichen. Diese Eigenschaften sind
A) die Möglichkeit, frühzeitig festzustellen, ob eine ungerade oder gerade Anzahl von Syndromen den
Binärwert »1« aufweist,
B) die Möglichkeit, eine schneller arbeitende und billiger zu implementierende Schaltung zur Fehlerbitlokalisierung
innerhalb eines Bytes vorzusehen,
C) die Möglichkeit, eine schneller arbeitende und billiger zu implementierende Schaltung zur Lokalisierung
eines fehlerhaften Bytes vorzusehen.
Die Eigenschaft A) folgt aus der vorher erwähnten Gesetzmäßigkeit a). Sie kann zur Aktivierung oder
Unterdrückung der Fehlerkorrektur ausgenützt werden. Die Eigenschaften B) und C) folgen aus den Gesetzmäßigkeiten
b) bis d) für den verwendeten Code. Sie können zur Erzeugung der korrigierten Daten und der
zu ihnen gehörenden Paritätsbasis verwendet werden.
In F i g. 3 ist ein Blockschaltbild einer Fehlerkorrekturschaltung
zur Durchführung des Verfahrens gemäß der Erfindung dargestellt
Die Fehlerkorrekturschaltung gemäß der Erfindung weist acht Redundanzbit-Generatoren RBG1 auf, die
aus je 32 Exklusiv-ODER-Gliedern bestehen, die in fünf
Stufen angeordnet sind, und aus jeweils 32 ihnen zugeleiteten Datenbits, die 8 Redundanzbits Gj neu
erzeugen. Wie die Code-Tabelle nach Fig.4 zeigt, ist
jedes Datenbit Di einer ungeraden Anzahl (3 oder 5) von Redundanzbits Cj bzw. Gj zugeordnet, und jedem
Reduzanzbit Q'bzw. G/ist eine gleich große Anzahl von Datenbits, nämlich 32, zugeordnet
Wie die Code-Tabelle nach Fig.4 zeigt, errechnet
sich das Redundanzbit Gi nach folgender Gleichung:
G1 = (D1 ν D2 ν ... ν D8) ν (D9 ν D10 ν ... D16) ν D33 ν D37 ν D38 ν D39 ν D41
ν D45 ν D46 ν D47 ν D49 ν D53 ν D54 νν D55 ν D57 ν D61 ν D62 ν D63
Für das Redundanzbit G2 gilt die folgende Gleichung:
G2 = (D9 ν D10 ν ... ν D16) ν (D25 ν D26 ν ... ν D32) ν D34 ν D37 VD38YD110
γ D42 ν D45 ν D46 ν D48 ν D50 ν D53 ν D54 ν D56 ν D58 ν D61 ν D62 ν D64
Das Redundanzbit G8 schließlich errechnet sich entsprechend der letzten Zeile der Codetabelle zu:
C8 = D^yD6YD1YDsY D12 v DJ4 v D15 v D16 v D20 v D22 υ D23 v D24
ν D28 ν D30 ν D31 ν D32 ν (D33 ν ... ν D40) ν (D49 ν D50 ν ... ν D56)
Die 8 Ausgänge Gj der Redundanzbit-Generatoren RBGi sind mit einer aus 8 Exklusiv-ODER-Gliedern
bestehenden Redundanzbit-Vergleichsschaltung RBV verbunden, in der die durch die Redundanzbit-Generatoren
RBGt aus den aus dem Speicher ausgelesenen Datenbits erzeugten Redundanzbits Gj mit den aus dem
Speicher entnommenen Redundanzbits Cj verglichen werden.
Im Fall der Fehlerfreiheit stimmen die gespeicherten
Redundanzbits Cj mit den beim Auslesen des Wortes erneut aus dessen Datenbits Di abgeleiteten Redundanzbits
Gj überein. Die von der Redundanzbit-Vergleichsschaltung
RBV2 gelieferten Syndrome Sj besitzen in diesem Fall alle den Binärwert »0«. Liegt ein
Fehler vor, so besitzen eines oder mehrere der
Syndrome den Binärwert »1«. Wie bereits früher erwähnt, besitzt, wenn ein Redundanzbit fehlerhaft ist,
nur ein Syndrom den Binärwert »1«. Eine ungerade Anzahl > 1 von Syndromen mit dem Binärwert »1«
weist auf ein fehlerhaftes Datenbit hin unter der Annahme, daß keine ungeraden Mehrfachfehler auftreten.
Eine gerade Anzahl von Syndromen mit dem Binärwert 1 liegt vor, wenn ein gerader Mehrfachfehler
vorliegt
Eine Korrektur eines Fehlers unter den Datenbits ist daher nur möglich und erforderlich, wenn die Anzahl
der Syndrome mit dem Binärwert »1« ungerade und
gleich oder größer als drei ist. 1st das der Fall, erfolgt
eine Korrektur des fehlerhaften Datenbits in der aus 64 Exklusiv-ODER-Gliedern bestehenden Datenbit-Modifizierschaltung
DBM7, deren ersten Eingängen die aus dem Speicher ausgelesenen 64 Datenbits Di zugeführt
werden und deren zweite Eingänge mit einer Fehlerbit-Lokalisierungsschaltung FBIL3 verbunden sind. Die
Fehlerbit-Lokalisierungsschaltung FBIL3 ist eine Schaltung zur Decodierung der jeweiligen Kombination
von Syndromen, die aus 64 UND-Gliedern besteht. Sie liefert für jedes fehlerhafte Bit eine Funktion, die die
Korrektur des betreffenden Datenbits bewirkt. Ist beispielsweise das Datenbit D 6 fehlerhaft, so liefert die
Fehlerbit-Lokalisierungsschaltung FBlL 3 die Funktion
S\ · S2 ■ S3
· Se · Si · Sg,
wie man der Spalte der Code-Tabelle für das Datenbit D 6 entnimmt. Diese Funktion bewirkt das Invertieren
des Datenbits D 6 in der Datenbit-Modifizierschaltung DBM7. Damit ist die Korrektur eines Einzelfehlers
erfolgt. Der Aufbau der Fehlerbit-Lokalisierungsschaltung FBIL 3 ergibt sich aus der Code-Tabelle der F i g. 4.
Die Gewinnung der Eingangssignale für diese Schaltung wird später beschrieben.
Die aus dem Speicher ausgelesenen Datenbits Di werden außer den Redundanzbit-Generatoren RBG1
und der Datenbit-Modifizierschaltung DBM 7 auch 8 P."ritätsbitgeneratoren PBG9 zugeführt, die aus je 7
Exklusiv-ODER-Gliedern bestehen und für die zu einem Byte gehörenden Datenbits ein Paritätsbit Pk erzeugen.
Die Paritätsbils errechnen sich aus den Datenbits D\ bis D(A wie folgt:
P1 -O1 | V | D2 ν | . . . V | O8 |
P2 = D9 | V | D10V | . . . V | O16 |
P3 = On | V | D18V | . . . V | O24 |
Pi = D25 | V | O26V | . . . V | O32 |
P5 = Db | V | Oj4V | . . . V | D40 |
P6 = O41 | V | O42V | . . . V | D48 |
P7 = D49 | V | D50V | . . . V | O56 |
P8 = O57 | V | D58V | . . . V | D64 |
10
Die Ausgänge P\ bis Pg der Paritäts-Generatoren
PBG 9 sind mit den ersten Eingängen einer aus 8 Exklusiv-ODER-Gliedern bestehenden Paritäts-Modifizierschaltung
PBMS verbunden, deren zweite Eingänge r>
an eine Paritätsmodifizier-Steuerschaltung PMSiO
angeschlossen sind, die aus 8 UND-Gliedern besteht. War ein Datenbit D/des aus dem Speicher ausgelesenen
Wortes fehlerhaft, so wird das entsprechende Paritätsbit Pk in der Paritätsbit-Modifizierschaltung PBMS aufgrund
eines von der Fehlerbyte-Lokalisierungsschaltung FBL 14 gelieferten Signals Bk korrigiert, während
das fehlerhafte Datenbit, wie schon erwähnt, in der Datenbit-Modifizierschaltung durch Invertieren korrigiert
wird.
r> Die acht Ausgänge Pk der Paritäts-Generatoren
PBG 9 sind außer mit der Paritätsbit-Modifizierschaltung PBMS auch mit einer sogenannten Paritätsbit-Verknüpfungsschaltung
PVSIl verbunden, die aus 2x3 Exklusiv-ODER-Gliedern aufgebaut ist und an
ihren beiden Ausgängen Qi und Q2 die beiden Funktionen
und
Q1 = P1 ν P2 ν P3 ν P4
Q2 = P5VP6VP1V P8
erzeugt.
Die aus dem Speicher ausgelesenen Redundanzbits Cj
werden außer der Redundanzbit-Vergleichsschaltung RBV2 auch einer aus 2 χ 3 Exklusiv-ODER-Gliedern
aufgebauten Redundanzbit-Verknüpfungsschaltung RVS12 zugeleitet, die an ihren beiden Ausgängen Mi
und M 2 die beiden Funktionen
und
Ml = C1VC2VC3VC4
MI = C5VC6VC1VC8
erzeugt.
Wie man aus der Code-Tabelle nach Fig.4 ersieht,
gilt für die Funktion M1 die Gleichung:
Ml = (D1VD1)V(D2V D2) ν (D3 ν D3) ν ... ν (D8 ν D8) ν (D9 ν D9) ν (D10 ν D10) ν ... ν
(D32 ν D32) ν D33 ν D34 ν D35 ν D36 ν (D37 ν D37) ν (D38 ν D38 ν D38) ν ... ν (D64 ν D64 ν D64)
Da die Exklusiv-ODER-Verknüpfung eines Datenbits
mit sich selbst den Binärwert »0« ergibt, entfallen in dem obigen Ausdruck die Klammern mit 2 Gliedern. Da die
zweimalige Exklusiv-ODER-Verknüpfung eines Datenbits mit sich selbst als Funktionswert den Wert des
Datenbits ergibt, darf man anstelle der Klammerausdrücke mit drei gleichen Gliedern nur das betreffende
Datenbit schreiben. Die Gleichung für die Funktion AfI
vereinfacht sich daher zu
M1 - D33 ν D34 ν ... ν D64,
d. h. der Wert der Funktion M1 wird bestimmt durch die
Exklusiv-ODER-Verknüpfung der Datenbits D33 bis Aa, die die zweite Hälfte der Datenbits des Informationswortes bilden.
Die Funktion M2 ergibt sich, wie die Code-Tabelle nach F i g. 4 zeigt, zu
Ml = D1VD2V D3v D4v(Dsv Dsv D5) ν (D6 ν D6 ν D6) ν ... ν
(D32 ν D32 ν D32) ν (D33 ν D33) ν (D34 ν D34) ν (D35 ν D35) ν ... ν (D64 ν D64)
Wie im Falle der Funktion M 1 vereinfacht sich auch die Funktion Ml zu:
Ml = D1 w D2 w D, ν D4 ν D5 ... D12
d. h., der Wert der Funktion M 2 wird bestimmt durch die Exklusiv-ODER-Verknüpfung der Datenbits D1 bis
£>J2> die die erste Hälfte der Datenbits des Informationswortes bilden.
Wenn keine Fehler vor liegen, gilt
Qi = M2und Q2
Q1
Ml oder
, „
Wenn ein Einzelfehler vorliegt, ist
<?i φ M2oaerQi φ Mi.
<?i φ M2oaerQi φ Mi.
Wenn eine gerade Anzahl von Fehlern vorliegt, ist entweder
Daher liefert ein Vergleich der bei einer Exklusiv-ODER-Verknüpfung
der Funktion Q\ mit M 2 und der Funktion Q2 mit Ml erhaltenen Ergebnisse eine
Aussage über die Anzahl der Syndrome mit dem Binärwert »1«.
Ist das Ergebnis des Vergleichs 2 >
(Q1 ν Λ-/2) ν (Q2 ν Ml) = 0
so zeigt dies das Vorliegen einer geraden Anzahl oder das Fehlen (Fehlerfreiheit) von Syndromen mit dem
Binärwert »1« an. jo
Lautet dagegen das Vergleichsergebnis
(ß,vM2)v(Q2vM!) = 1,
so zeigt dies das Vorhandensein einer ungeraden Anzahl von Syndromen mit dem Binärwert »1« und j->
damit einen Fehler an.
Setzt man
Setzt man
Q1 ν Ml = H1 und (Q2 ν M I) = H2,
so läßt sich das beim Vorliegen von einem Fehler 4» erhaltene Vergleichsergebnis kürzer schreiben als
(H1 vH2) = 1.
Zur Durchführung des Vergleichs sind die Ausgänge Q1 und Q2 der Paritäts-Verknüpfungsschaltung PVSIl
sowie die Ausgänge Ml und M 2 der Redundanz-Verknüpfungsschaltung
RVS12 mit einer Vergleichsschaltung VGS13 verbunden, die aus 2 Exklusiv-ODER-GIiedern
besteht Die beiden Ausgänge H\ und H2 der
Vergleichsschaltung VGS13 sind mit einer aus einem Exklusiv-ODER-GIied bestehenden Prüfschaltung
UGPA verbunden, die auf das Vorliegen einer
ungeraden oder geraden (einschließlich Null) Anzahl von Syndromen mit dem Binärwert »1« prüft Bei einer
ungeraden Anzahl liefert die Schaltung UGPA ein hohes, bei einer geraden Anzahl von Syndromen mit
dem Binärwert »1« ein niedriges Potential.
Wie aus der F i g. 5 hervorgeht, sind bei der Schaltung
gemäß der Erfindung bis zum Erhalten der Anzeige, ob eine ungerade oder gerade Anzahl von Syndromen mit
dem Binärwert 1 vorliegt, zwei logische Stufen weniger zu durchlaufen als bei der Schaltung nach F i g. 1.
Die beiden Ausgänge H\ und //2 der Vergleichsschaltung
VGS13 sind auch mit einer Fehlerbyte-Lokalisierungsschaltung
FBL14 verbunden, die aus 8 UND-Gliedem
besteht, an die auch die 8 Ausgänge S1 bis 58 der
Redundanzbit-Vergleichsschaltung RBV2 angeschlossen sind. Bei Vorliegen eines Fehlers erscheint an einem
der 8 Ausgänge B\ bis Bs ein Signal, das das Byte
kennzeichnet, das das fehlerhafte Bit aufweist.
Bei der Besprechung der Code-Tabelle nach F i g. 4 wurde bereits erwähnt, daß die Bits eines Bytes alle die
gleiche, für dieses Byte charakteristische Zuordnung zu der einen Hälfte der Redundanzbits aufweisen. Da bei
Vorliegen eines Einzelfehlers tine der beiden Funktionen H\ oder H2 den Binärwert »1« besitzt und damit
angibt, in welcher Hälfte des Informationswertes der Fehler auftrat (wobei die Datenbits D\ bis Dy2 und die
Redundanzbits Cs bis Ce als zur gleichen Hälfte
gehörend angesehen werden), ergibt eine einfache UND-Verknüpfung der Funktionen H\ bzw. H2 mit der
für ein Byte charakteristischen Zuordnung zu der einen Hälfte der Redundanzbits die Lokalisierung des
fehlerhaften Bytes.
Daher sind die Ausgänge Sj der Redundanzbit-Vergleichsschaltung
und die Ausgänge H\ und H2 der Vergleichsschaltung VGS13 mit der aus 8 UND-Gliedern
bestehenden Fehlerbyte-Lokalisierungsschaltung FBL 14 verbunden. An deren 8 Ausgängen Bk erscheint
jeweils ein das fehlerhafte Byte kennzeichnendes Signal. Befindet sich der Fehler beispielsweise im Byte 1, d. h.
unter den Bits D1 bis D8, so erscheint am Ausgang B1
der Fehler-Lokalisierungsschaltung das Singal
B 1 = (H1 ■ S1 · S4) = 1.
Erscheint am Ausgang B 4 das Signal
Erscheint am Ausgang B 4 das Signal
54= W1 S2- S3= 1,
so befindet sich der Fehler unter den das Byte 4 bildenden Datenbits D2S bis D32·
Da die Paritätsbits fit für die Bytes durch die Paritätsbit-Generatoren PBGg aus den unkorrigierten
Datenbits früher erzeugt werden können als die Syndrome Sj durch die Redundanzbit-Vergleichsschaltung
RBV2, ermöglicht die Anordnung nach der Erfindung aufgrund der Verwendung der schon
beschriebenen Paritätsbit-Modifizierschaltung PBMS die Erzeugung der korrigierten Paritätsbits
(Pi= PkvBk)
gleichzeitig mit den korrigierten Datenbits Di. Dies ist
ein Vorteil gegenüber der Schaltung nach Fig. 1. Bei
dieser Schaltung können die Paritätsbits erst aus den korrigierten Datenbits erzeugt werden, was auch aus
der F i g. 5 zu ersehen ist, in der die bis zum Erhalten der
korrigierten Daten Df und der zugehörigen Paritätsbits fit' zu durchlaufenden logischen Stufen der Schaltungen
nach den F i g. 1 bis 3 einander gegenübergestellt sind. Links in der Figur sind links von den Pfeilen die
Eingangssignale, rechts davon die nach Durchlaufen der logischen Stufen erhaltenen Ausgangssignale angegeben.
Die durch die Erfindung erreichte gleichzeitige Verfügbarkeit der korrigierten Daten- und Paritätsbits
hat außer der Beschleunigung der Fehlerkorrektur noch den weiteren Vorteil, daß die zeitliche Steuerung eines
Registers in der Verarbeitungseinheit dem die korrigierten Datenbits und die Paritätsbits zugeführt werden
müssen, vereinfacht wird.
Die Ausgänge Si bis S8 der Redundanzbit-Vergleichsschaltung
RBV2 sind auch mit einer aus einem ODER-Glied mit 8 Eingängen bestehenden Schaltung
FKF5 verbunden, die auf das Vorliegen von Fehlern oder Fehlerfreiheit prüft Der Ausgang der Schaltung
FKF5, der beim Vorliegen von Fehlern hohes und bei Fehlerfreiheit niedriges Potential aufweist, ist mit dem
ersten Eingang einer aus einem UND-Glied mit 2 Eingängen bestehenden Fehlerklassifizierschaltung
FKS 6 verbunden, die bei Vorliegen einer ungeraden Anzahl von Syndromen mit dem Binärwert »1« einen
korrigierbaren Fehler und bei Vorliegen einer geraden Anzahl von Syndromen mit dem Binärwert »1« einen
unkorrigierbaren Fehler anzeigt Die Ausgänge Si bis 5«
der Redundanzbit-Verknüpfungsschaltung RBV2 sind ferner mit einer Lokalisierschaltung BIBL15 zur
Ermittlung des fehlerhaften Bits innerhalb eines Bytes verbunden.
Die Lokalisierungsschaltung BIBL15 weist 16 Ausgänge
Xi bis Xg und Vi vis Yg auf, an denen die folgenden
Signale erscheinen:
Xy | = Ss · Sb ■ Si · Ss | Yy = Sy · Si- S3 ■ | Sa |
Χι | ^= J5 ' ^b ' ^l ' *^8 | Yl = S± ■ S2 ■ S3 - | 04 |
X3 | = Ss ■ Sb · S7 ■ Ss | /3 = Ol * S2 · S3 · | Sa |
Xa | = Ss-Sl-S7-Ss | Y4 = Sy - Sq - S3 ■ | Sa |
Xs | = Ss · Se · Si ■ Sg | Ys = Sy - S2 · S3 ■ | sä |
X6 | = Ss · Se · S7 · Sg | Υβ = Si · S2 ■ 03 · | S, |
Xi | = Ss -Sb ■ St ■ Sg | Yi=S1-Sl-S3- | S4 |
Xs | = Ss ■ Si, ■ S7 ■ Ss | Ys = S\ ■ Si · S3 · | Sa |
Die Indizes der Funktionen Xb und Vi geben das
fehlerhafte Bit innerhalb eines Bytes an. Die Funktionen Xb beziehen sich auf die linke Hälfte Dy bis D32 der
Datenbits und die Funktionen Y auf die rechte Hälfte
Das die Korrektur des Fehlers in der Datenbit-Modifizierschaltung DBMi bewirkende Steuersignal A-, wird
durch eine UN D-Verknüpfung der Funktionen Λ* bzw.
Yb mit der Funktion Bk erhalten. Wie vorher erwähnt,
kennzeichnet der Index der Funktionen .Ybzw. Vja das
fehlerhafte Bit innerhalb der Bytes der linken bzw. rechten Hälfte der Datenbits, während der Index der
Funktionen Bk da fehlerhafte Byte angibt. Es gilt somit:
BlXl ergibt /41 Bi Xl ergibt Al
Bi ■ A"3 ergibt /4 3
Bi X8 ergibt A8 Bl ■ Xi ergibt A9
Bl Xl ergibt AiQ Bl X2, ergibt AU
Bl XS ergibt /116
B4- Xi ergibt /4 25 B4- Xl ergibt /426
B4- X3 ergibt All
B4- X8 ergibt /132
B5 Yl ergibt A 33
B5Y1 ergibt /134
BS Y3 ergibt /435
BS Y3 ergibt /435
BS Y8 ergibt /140
B6 Yi ergibt Λ 41
B6- Y2 ergibt A 41 B6 Y3 ergibt A 43
B6 Yi ergibt Λ 41
B6- Y2 ergibt A 41 B6 Y3 ergibt A 43
B6 Y8 ergibt /448
ß8 Vl ergibt /4 57
BS Yl ergibt /4 58
BS V3 ergibt A59
BS Yl ergibt /4 58
BS V3 ergibt A59
BS Υ8 ergibt /4 64
Daher sind die Ausgänge Xy bis Xg und Vj bis Yg dei
das fehlerhafte Bit innerhalb eines Bytes feststellender Lokalisierungsschaltung BIBL 15 und die Ausgänge dei
Fehlerbyte-Lokalisierungsschaltung FBL 14 mit der au; 64 UND-Gliedern bestehenden Fehlerbit-Lokalisie
rungsschaltung FBIL 3 verbunden, an die auch noch dei Ausgang der auf das Vorliegen einer ungeraden odei
geraden Anzahl von Syndromen prüfenden Schaltung UGP'4 angeschlossen ist
Erscheint an einem der 64 Ausgänge A-, dei
Fehlerbit-Lokalisierungsschaltung ein Signal A mit dem
Binärwert »1«, so wird das Datenbit Dl in dei Datenbit-Modifizierschaltung DBM7 durch Invertierer
zu Di' korrigiert Gleichzeitig wird in der Paritätsbit-Modifizierschaltung
PBM 8 das aus den unkorrigierter
Datenbits des den Fehler enthaltenden Bytes gewonnene Paritätsbit /\ zud Pk' korrigiert. Damit ist die
Fehlerkorrektur beendet
Die Schaltungsanordnung zur Durchführung des Verfahrens nach der Erfindung ist nicht nur in der Lage
Einzelfehler in solchen Informationsworten zu korrigieren, die aus 64 Datenbits und 8 Redundanzbits bestehen
Mit ihr lassen sich beispielsweise auch Einzelfehler iti
Informationsworten korrigieren, die aus 32 Datenbits und 8 Redundanzbits bestehen und deren Code-Tabelle
die gleichen Gesetzmäßigkeiten aufweist wie die für die aus 64 Datenbits und 8 Redundanzbits bestehenden
Informationswerte. Eine solche Code-Tabelle läßt sich beispielsweise aus der in F i g. 4 dargestellten gewinnen,
indem man die zu den Bytes 2, 3, 6 und 7 gehörenden Tabellenteile zu einer neuen Code-Tabelle zusammenfaßt.
Ebenso läßt sich das Verfahren nach der Erfindung auch zur Korrektur von Einzelfehlern in Datenworten
verwenden, die aus 16 Datenbits und 6 Redundanzbits bestehen, also in einem 22/16-Code vorliegen, dessen
Code-Tabelle in F i g. 6 wiedergegeben ist.
Hier/u 4 Blatt Zeichnungen
Claims (3)
1. Verfahren zur Erkennung und Korrektur von Einzelfehlern und zur Erkennung von unkorrigierbaren
Mehrfachfehlern in durch Prüfbits ergänzten Datenwärtern, aus deren Datenbytes zur Weiterleitung
Paritätsbits und aus denen beim Empfang die Prüfbits nochmals erzeugt und mit den beigefügten
Prüfbits zur Erzeugung von Syndrombits in einer Exclusiv-ODER-Funktion verknüpft (verglichen)
werden,
wobei jedes Datenbit zur Erzeugung einer ungeraden Anzahl von Prüfbits verwendet wird und für
jedes Prüfbit die Anzahl der zu seiner Erzeugung verwendeten Datenbits gleich ist und
wobei eine gerade Anzahl von Syndrombits ungleich Null einen unkorrigierbaren Fehler und eine ungerade Anzahl einen korrigierbaren Fehler anzeigt, was zur Freigabe der Datenkorrekturen mit Hilfe der Syndrombits verwendet wird,
dadurch gekennzeichnet, daß ein symmetrischer Code verwendet wird, in dem genau die eine Hälfte der Datenbits des Datenwortes (Byte 1 bis 4, F i g. 4) einer geraden Anzahl von Prüfbits aus der ersten Hälfte (Ci-C4) der Prüfbits und einer ungeraden Anzahl von Prüfbits aus der zweiten Hälfte (C5—CS) zugeordnet sind und in dem die andere Hälfte der Datenbits einer ungeraden Anzahl von Prüfbits aus der ersten Hälfte und einer geraden Anzahl aus der zweiten Hälfte zugeordnet sind,
daß die Paritätsbits (Pk) aus den unkorrigierten Datenbits erzeugt werden,
wobei eine gerade Anzahl von Syndrombits ungleich Null einen unkorrigierbaren Fehler und eine ungerade Anzahl einen korrigierbaren Fehler anzeigt, was zur Freigabe der Datenkorrekturen mit Hilfe der Syndrombits verwendet wird,
dadurch gekennzeichnet, daß ein symmetrischer Code verwendet wird, in dem genau die eine Hälfte der Datenbits des Datenwortes (Byte 1 bis 4, F i g. 4) einer geraden Anzahl von Prüfbits aus der ersten Hälfte (Ci-C4) der Prüfbits und einer ungeraden Anzahl von Prüfbits aus der zweiten Hälfte (C5—CS) zugeordnet sind und in dem die andere Hälfte der Datenbits einer ungeraden Anzahl von Prüfbits aus der ersten Hälfte und einer geraden Anzahl aus der zweiten Hälfte zugeordnet sind,
daß die Paritätsbits (Pk) aus den unkorrigierten Datenbits erzeugt werden,
daß aus jeder Hälfte der Paritätsbits (PX-PA und
P5—PS) durch Exclusiv-ODER-Verknüpfung zwei
Paritätsfunktionen (Q 1, Q 2) erzeugt werden,
daß durch Exclusiv-ODER-Verknüpfung aus jeder Hälfte der beigefügten Prüfbits fQ)eine Prüfbitfunktion (M 1, M 2) erzeugt wird und
daß zwei Fehlerentscheidungsfunktionen (HX, H2) erzeugt werden, derart, daß
daß durch Exclusiv-ODER-Verknüpfung aus jeder Hälfte der beigefügten Prüfbits fQ)eine Prüfbitfunktion (M 1, M 2) erzeugt wird und
daß zwei Fehlerentscheidungsfunktionen (HX, H2) erzeugt werden, derart, daß
HX = QXv M2
H2 = Q2 ν MX,
deren Exclusiv-ODER-Verknüpfung eine Anzeige für eine gerade oder ungerade Anzahl von
Syndrombits ergibt und als Freigabesignal verwendet wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
daß nach dem verwendeten Code die Bits eines Byte alle die gleiche, für dieses Byte charakteristische
Zuordnung zu zwei Redundanzbits der einen Hälfte der Redundanzbits aufweisen (z. B. Byte 1 zu C1 und
C4),
daß eine UND-Verknüpfung vorgesehen ist (FBL 14) zwischen den, der charakteristischen
Zuordnung entsprechenden Syndrombits (z. B. S1 und 54) und der der Datenworthälfte (z. B.
D X — D 32) zugeordneten Fehlerentscheidungsfunktion (z.B. HX), derart, daß für jedes Byte ein
Fehlersignal (Bt) erzeugt wird.
3. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1 und 2, dadurch
gekennzeichnet,
daß sie zur Beschleunigung der Fehlerkorrektur folgende zusätzliche Schaltungsteile enthält:
a) einen an den Datenbit-Eingang angeschlossenen mehrstufigen, aus Exclusiv-ODER-Gliedern
aufgebauten Paritätsbitgenerator (PBG 9) zur Erzeugung der unkorrigierten Paritätsbits für
die Bytes, der einmal mit den ersten Eingängen einer einstufigen, aus Exclusiv-ODER-Gliedern
bestehenden Paritätsbit-Modifizierschaltung (PBMS), die die korrigierten Paritätsbits liefert,
verbunden ist und zum anderen mit einer aus Exclusiv-ODER-Gliedern bestehenden Paritätsbit-Verknüpfungsschaltung
(PVSXi), in der jeweils die Paritätsbits der ersten und zweiten
Hälfte der Datenbits miteinander verknüpft werden,
b) eine aus Exclusiv-ODER-Gliedern bestehende mehrstufige Redundanzbit-Vergleichsschaltung
(RVS 12), in der jeweils die Redundanzbits der ersten und zweiten Hälfte der ausgelesenen
Redundanzbits C/ miteinander verknüpft werden, deren zwei Ausgänge (MX, Af2) ebenso
wie die beiden Ausgänge (QX, Q 2) der Paritätsbit-Verknüpfungsschaltung (PVSXX) an
eine aus zwei Exclusiv-ODER-Gliedern aufgebaute einstufige Vergleichsschaltung (VGS 13)
angeschlossen sind, deren beide Ausgänge (H 1, H 2) mit einer aus einem Exclusiv-ODER-Glied
bestehenden und auf das Vorliegen einer ungeraden Anzahl von Syndromen mit dem Binä?wert »1« prüfenden Prüfschaltung
(UGPA) und mit einer aus UND-Gliedern aufgebauten einstufigen Fehlerbyte-Lokalisierungsschaltung
(FBL 14) verbunden sind,
c) eine aus UND-Gliedern aufgebaute einstufige Lokalisierungsschaltung (BlBL 15) zur Lokalisierung
des fehlerhaften Bits innerhalb eines Bytes, deren Eingänge mit der die Syndrome
liefernden Redundanzbit-Vergleichsschaltung (RBV2) verbunden und deren Ausgänge an eine
aus UND-Gliedern bestehende einstufige Fehlerbit-Lokalisierungsschaltung
(FBIL3) angeschlossen sind, an die auch der Ausgang der Prüfschaltung (UGPA) sowie die Ausgänge der
Fehlerbyte-Lokalisierungsschaltung (FBL 14) angeschlossen sind, deren Eingänge mit der
Redundanzbit-Vergleichsschaltung (RBV2) verbunden sind und deren Ausgänge auch an
eine einstufige, aus UND-Gliedern bestehende Paritätsmodifizier-Steuerschaltung (PMS 10)
angeschlossen sind, die an die Fehlerbyte-Lokalisierungsschaltung (FBL XA) und die Prüfschaltung
(UGPA) angeschloüsen ist und deren Ausgänge mit den zweiten Eingängen der
Paritätsbit-Modifizierschaltung (PBMS) verbunden sind.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19712131848 DE2131848C3 (de) | 1971-06-26 | 1971-06-26 | Verfahren und Vorrichtung zur Fehlererkennung und -korrektur |
JP5569672A JPS5443857B1 (de) | 1971-06-26 | 1972-06-06 | |
GB2771072A GB1363586A (en) | 1971-06-26 | 1972-06-14 | Error detection and correction circuits |
FR7222687A FR2144293A5 (de) | 1971-06-26 | 1972-06-20 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19712131848 DE2131848C3 (de) | 1971-06-26 | 1971-06-26 | Verfahren und Vorrichtung zur Fehlererkennung und -korrektur |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2131848A1 DE2131848A1 (de) | 1973-01-11 |
DE2131848B2 true DE2131848B2 (de) | 1978-11-16 |
DE2131848C3 DE2131848C3 (de) | 1979-07-26 |
Family
ID=5811893
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19712131848 Expired DE2131848C3 (de) | 1971-06-26 | 1971-06-26 | Verfahren und Vorrichtung zur Fehlererkennung und -korrektur |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS5443857B1 (de) |
DE (1) | DE2131848C3 (de) |
FR (1) | FR2144293A5 (de) |
GB (1) | GB1363586A (de) |
Family Cites Families (1)
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 |
-
1971
- 1971-06-26 DE DE19712131848 patent/DE2131848C3/de not_active Expired
-
1972
- 1972-06-06 JP JP5569672A patent/JPS5443857B1/ja active Pending
- 1972-06-14 GB GB2771072A patent/GB1363586A/en not_active Expired
- 1972-06-20 FR FR7222687A patent/FR2144293A5/fr not_active Expired
Also Published As
Publication number | Publication date |
---|---|
FR2144293A5 (de) | 1973-02-09 |
DE2131848A1 (de) | 1973-01-11 |
JPS5443857B1 (de) | 1979-12-22 |
DE2131848C3 (de) | 1979-07-26 |
GB1363586A (en) | 1974-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3853206T2 (de) | Verfahren und gerät zur byteschreibfehlerkodierung. | |
DE2260850C2 (de) | Schaltungsanordnung zur Erkennung von Einzel- und Mehrfachfehlern und zur korrektur von Einzel- und bestimmten Mehrfachfehlern | |
DE69116919T2 (de) | Selbsttestverfahren für inhaltsadressierbare Speicher | |
DE3586851T2 (de) | Fehlerkorrekturverfahren und anordnung fuer chips mit multibitausgabe. | |
DE3125048C2 (de) | ||
DE2132565C3 (de) | Umsetzer | |
DE2942998C2 (de) | Fehler-Korrektur- und Erkennungs-Anordnung | |
DE69019822T2 (de) | Verfahren und Vorrichtung zur Prüfung des Inhalts und der Adresse einer Speicheranordnung. | |
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE2030760A1 (de) | Speicherschaltung | |
DE2421112A1 (de) | Speicheranordnung | |
DE3111447C2 (de) | ||
DE2060643B2 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE3603926A1 (de) | Halbleiter-speicherelement | |
DE69121733T2 (de) | Technik zum eingebauten Selbsttest für Nur-Lese-Speicher | |
DE2157829C2 (de) | Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern | |
DE10206689A1 (de) | Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers | |
DE2450468A1 (de) | Fehlerkorrekturanordnung fuer einen speicher | |
DE2320354C2 (de) | Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen | |
DE1959231A1 (de) | Verfahren und Vorrichtung zur Korrektur von bis zu drei Fehlern eines aus 23 Bits bestehenden Codewortes | |
DE69029164T2 (de) | Vorrichtung und Verfahren zum Ersetzen der Parität | |
DE102006007326A1 (de) | Fehlerkorrekturschaltung und -Verfahren | |
DE3786853T2 (de) | Gerät zur Erkennung und Klassifizierung von Steuerwortfehlern. | |
EP1444700B1 (de) | Speichertest | |
DE69021413T2 (de) | Fehlertolerantes Rechnerspeichersystem mit Entvalidierungsmerkmal. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |