DE2131848C3 - Verfahren und Vorrichtung zur Fehlererkennung und -korrektur - Google Patents
Verfahren und Vorrichtung zur Fehlererkennung und -korrekturInfo
- Publication number
- DE2131848C3 DE2131848C3 DE19712131848 DE2131848A DE2131848C3 DE 2131848 C3 DE2131848 C3 DE 2131848C3 DE 19712131848 DE19712131848 DE 19712131848 DE 2131848 A DE2131848 A DE 2131848A DE 2131848 C3 DE2131848 C3 DE 2131848C3
- Authority
- DE
- Germany
- Prior art keywords
- bits
- data
- bit
- circuit
- error
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
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
HX = QXv M2
H2= Q2vMX,
H2= Q2vMX,
45
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 Eiyte 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
CA),
daß eine UN D-Verknüpfung vorgesehen ist (FBL XA) zwischen den, der charakteristischen
Zuordnung entsprechenden Syndrombits (z. B. S X und 54) und der der Datenworthälfte (2;. B. ω
DX-D32)zugeordneten Fehlerentscheidungsfuriktion
(z. B. H X), derart, daß für jedes Byte ein Fehlersignal (Bk) erzeugt wird.
3. Schaltungsanordnung zur Durchführung des Verfahrens nach Anspruch 1 und 2, dadurch b5
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-Gliedem
bestehenden Paritätsbit-Modifizierschaltung (PBM8), die die korrigierten Paritätsbits liefert,
verbunden ist und zum anderen mit einer aus Exclusiv-ODER-Gliedern bestehenden Paritätsbit-Verknüpfungsschaltung
(PVSXX), 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
(R VS12), in der jeweils die Redundanzbits der
ersten und zweiten Hälfte der ausgelesenen Redundanzbits C1 miteinander verknüpft werden,
deren zwei Ausgänge (MX, M2) ebenso wie die beiden Ausgänge (QX, Q 2) der
Paritätsbit-Verknüpfungsschaltung (PVSti) an
eine aus zwei Exclusiv-ODER-Gliedern aufgebaute einstufige Vergleichsschaltung (VGS13)
angeschlossen sind, deren beide Ausgänge (H X,
H2) mit einer aus einem Exclusiv-ODER-Glied bestehenden und auf das Vorliegen einer
ungeraden Anzahl von Syndromen mit dem Binärwert »1« prüfenden Prüfschaltung (UGPA) und mit einer aus UND-Gliedern
aufgebauten einstufigen Fehlerbyte-Lokalisierungsschaltung (FBL XA) verbunden sind,
c) eine aus UND-Gliedern aufgebaute einstufige Lokalisierungsschaltung (BIBL 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 (FBILZ) 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) angeschlossen ist und deren Ausgänge mit den zweiten Eingängen der
Paritätsbit-Modifizierschaltung (PBMS) verbunden sind.
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 Infonnationswörter durch einen fehlerkorrigierenden
Code ergänzt Das Ergänzen geschieht in der Weise, daß aus den zu speichernden Datenbits
nach bestimmten Regem Redundaizbits abgeleitet werden, die mit den Datenbits gespeichert werden. Beim
Auslesen eines so gegen Fehler gesicherten Wortes werden die Redundanzbits erneut aus den DateBoits
abgeleitet und mit den ausgelesenen Redundanzbits erneut aus den Datenbits abgeleitet und mit den
ausgelesenen Redundanzhits 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, welche 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 2s
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 jo
bis 401, beschreibt Hsiao einen für die Einzelfehierkorrektur
und Doppelfehlererkennung günstigen Code. Die für diesen Code charakteristische Matrix, welche
die Zuordnung der Prüfbits zu den zu ihrer Erzeugung verwendeten Datenbits angibt, hat die Eigenschaft, daß r>
jede Datenbitspalte eine ungerade Anzahl von Einsen enthält Außerdem wurde getrachtet die Anzahl der
Einsen in jeder Zeile der 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 soil 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 Einriebtungen
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. t 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 erzeug- t>o ten Prüfbits nicht übereinstimmen.
Die Datenkorrektur kann nur erfolgen (freigegeben werden), wenn eine ungerade Anzahl von Syndrombits
festgestellt wird.
Nachfolgend zeigt F i g. 1 das Blockschaltbild einer t«
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 Codetabelle für einen der Fehlerkorrekturschaltung
nach F i g. 1 zugrunde liegendem Code.
In den Blockschaltbildern der Fig. i und 3 (Ausführungsbeispiel
der Erfindung) sind mehrere Verbindungsleitungen 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 Twei 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 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 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.
Die in F i g. 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 Datenbus 8 Redundanzbits Gj
erzeugen.
Wie die Codetabelle nach Fig.2 -vigt ist die
Zuordnung der in F i g. 1 angegebenen Redundanzbits 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.
Gj zugeordnet ist und daß jedem Redundanzbit Cj bzw. Gj möglichst eine gleich große Anzahl von Datenbits
zugeordnet ist Die 8 Ausgänge Gj der Redundanzbit-Generatoren RBG1 sind mit einer aus 8 Exklusiv-ODER-Gliedern
bestehenden Redundanzbit-Vergleichsschaltung RBV2 verbunden, in der die durch die
Redundanzbit-Generatoren RBG \ aus den aus dem Speicher ausgelesenen Datenbits erzeugten Redundanzbits
Gj mit den aus dem Speicher entnommenen Redundanzbits Cy verglichen werden.
Die acht erhaltenen Ausgangssignale, die als Syndrome Sj bezeichnet werden, besitzen bei Gleichheit eines
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 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
Ns = O Fehlerfreiheit
Ns = 1 Fehler in einem Redundanzbit Korrektur
der Datenbits ist nicht erforderlich Ns = 2,4,6 gerade Anzahl von Fehlern (Doppelfehler,
Vierfachfehler, Sechsfachfehier ...) in den
Daten- und/oder Reduncianzijiis; der Fehler
ist nicht korrigierbar
Ns = 3 korrigierbarer Einzelfehler unter den
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-Gliedern aufgebauten Prüfschaltung UGP4 zur Feststellung, ob die Anzahl Ns der den
Binärwert 1 besitzenden Syndrome gerade oder jo 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 FKS 6 verbunden, an deren zweiten Eingang der erste Ausgang der
Prüfschaltung UGP 4 angeschlossen ist. Die Fehlerklassifizierschaltung FKS 6 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 UGP4 ist mit den Steuereingängen der die Fehlerbit-Lokalisierungsschaltung FBL 3 bildenden
64 UND-Glieder verbunden und erlaubt so nur bei korrigierbaren Fehlern eine Fehlerbit-Lokalisation. Die
64 Ausgänge der Fehlerbit-Lokialisierungsschaltung FBL 3 führen an die ersten Eingänge einer aus 63
Exklusiv-ODER-Gliedern bestehenden Datenbit-Modifizierschaltung DBM 7, deren zweiten Eingängen die
ausgelesenen 64 Datenbits Di zugeleitet werden. Bei den am Ausgang der Datenbit-Modifizierschaltung
DBMl 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
DMBl ist ein aus Exklusiv-ODER-Gliedern ω
aufgebauter Paritätsgenerator BPG 8 angeschlossen, der zu jedem eine Gruppe von 8 Datenbits D/'bfldenden
Byte Bk1OZS zugehörige Paritätsbit P* 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 Fig. 1
zugrunde liegen kann.
Wie F i g. 1 zeigt, können die Daten vom Speicher an die Verarbeitungseinheit erst weitergeleitet werden,
wenn sie die Fehlererkennungs- und Fehlerkorrektur-Einrichtung durchlaufen haben. Dabei kann die Notwendigkeit
und Möglichkeit einer Dehlerkorrektur erst dann entschieden werden, wenn das von der Einrichtung
UGP aus den Syndrombits erzeugte Freigabesignal vorliegt.
Die zur Erzeugung des Freigabesignals benötigte Zeit geht also direkt in die effektive Zugriffszeit des
Speichers ein.
Der im Anspruch 1 gekennzeichneten Lösung liegt die Aufgabe zugrunde, das zur Datenkorrektur nötige
Freigabesignal rascher zu erzeugen.
Das erfindungsgemäße Verfahren, die Paritätsbits aus
den unkorrigierten Datenbits zu erzeugen und Paritätsfunktionen, Prüfbitfunktionen sowie Fehlerentscheidungsfunktionen
abzuleiten, hat den Vorteil, daß weniger logische Stufen bis zur Erzeugung des
Freigabesignals durchlaufen werden und somit ein Zeitvorteil gegenüber der bekannten Einrichtung
resultiert Außerdem bietet die Verwendung des angegebenen symmetrischen Codes die Möglichkeit die
Fehlererkennungs- und Korrektur-Einrichtung in größerem Maße aus gleichen Bauteilen aufzubauen als es
bisher der Fall war.
Die frühzeitige Erzeugung der Paritätsbits aus den unkorrigierten Datenbits hat außerdem den Vorteil, daß
die Paritätsbits nicht mehr, wie bisher, aus den korrigierten Datenbits erzeugt werden, sondern bereits
zugleich mit den Datenbits am Ausgang der Einrichtung zur Verfügung stehen. Ebenso wie ein Datenbit muß
höchstens auch ein Paritätsbit im Fehlerfall modifiziert werden, wodurch jedoch die gleichzeitige Verfügbarkeit
von Daten und Paritätsbits nicht beeinträchtigt wird.
Eine vorteilhafte Weiterbildung der Erfindung ist im
Anspruch 2 gekennzeichnet und beruht auf der Verwendung der Fehlerentscheidungsfunktionen und
der Syndrombits zur Erzeugung von Signalen, die dasjenige Byte anzeigen, in dem ein Einzelfehler
korrigiert werden solL Damit findet die Eigenschaft der beiden Fehlerentscheidungsfaktoren, daß sie jeweils
einen Fehler in der einen oder anderen Hälfte des Informationswortes anzeigen, eine vorteilhafte Verwendung.
Mit nur acht UND-Gliedern kann eines von acht Bytes angezeigt werden, wobei auch hierfür der oben
besprochene Zeitvorteil gilt
Im folgenden wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnungen näher erläutert Von
diesen zeigt
Fig.3 das Blockschaltbild der erfindungsgemäßen
Schaltung zur schnelleren Durchführung der Korrektur von Einzelfehlern und der Erkennung von Doppelfehlern,
Fig.4 die Code-Tabelle für den der Schaltung nach
F i g. 1 zugrunde liegenden Fehlerkorrektur-Code,
Fig.5 einen Vergleich der Verzögerungen, die bei
der herkömmlichen Schaltung und der Schaltung nach der Erfindung bis zur Beendigung der Fehlerkorrektur
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 D/zu den einzelnen Redundanzbits
Cj bzw. Gj (Fig.3) ersichtlich ist, während aus den
Spalten der Code-Tabelle hervorgeht, welche der
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 Datenbi! ist einer ungeraden Anzahl von Redundanzbits Q'bzw. Gjzugeordnet
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 Ca bzw. G\ bis Gb und einer
ungeraden Anzahl von Redundanzbits aus deren zweiter Hälfte (C5 bis Cg 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 (C\ bis Ca bzw. G\ bis G«) und einer geraden Anzahl
von Redundanzbits aus deren zweiter Hälfte (Cs bis Cg 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 A-.zahl
logischer Stufen durchlaufen werden muß.
Codes, die den unter a) bis d) genannten Gesetzmäßigkeiten genügen, besitzen Eigenschaften, die eine
IO
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.
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 F i g. 4 zeigt, ist jedes Datenbit Di einer ungeraden Anzahl (3 oder 5) von Redundanzbits Cj bzw. Gj zugeordnet, und jedem
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 F i g. 4 zeigt, ist jedes Datenbit Di einer ungeraden Anzahl (3 oder 5) von Redundanzbits Cj bzw. Gj zugeordnet, und jedem
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
G2 = (D9 ν D10 ν ... ν D16) ν (D25 ν D26 ν ... ν D32) ν D34 ν D37 VD38VD40
ν D42 ν D45 ν D4,, ν D48 ν D50 ν D53 ν D54 ν D56 ν D58 ν D61 ν D62 ν D64.
ν 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
RBG1 aus den aus dem Speicher ausgelesenen Datenbits erzeugten Redundanzbits Gy 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 fiberein. Die von der Redundanzbit-Vergleichsschaltung
RBV2 gelieferten Syndrome 5/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 Ist das der Fall, erfolgt eine Korrektur des fehlerhaften Datenbits in der aus (54
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 FBIL 3 verbunden sind. Die
Fehlerbit-Lokalisierungsschaltung FBIL 3 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 FBIL 3 die Funktion
Si · S3
Ss
Sr ■ Sg,
P1 = D, | V | D2 ν | . . . V | Dh |
P2 = a. | V | D10V | . . . V | Dlb |
P3 = Dn | V | D18V | . . . V | D24 |
P* = D25 | V | D26V | . . . V | D32 |
Ps = D33 | V | D34V | . . . V | D4O |
Pe = D41 | V | D42V | . . . V | D48 |
P7 = D49 | V | D50V | . . . V | D56 |
Ph = D51 | V | D58V | . . . V | DM |
J5
10
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 DBM 7. 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 RBG i
und der Datenbit-Modifizierschaltung DBM 7 auch 8 Paritätsbitgeneratoren PBG9 zugeführt, die aus je 7
Exklusiv-ODER-Gliedern bestehen und für die zu einem so Byte gehörenden Datenbits ein Paritätsbit Pk erzeugen.
Die Paritätsbits errechnen sich aus den Datenbits D1 bis
A4 wie folgt:
Die Ausgänge P\ bis Pe der Paritäts-Generatoren
PBG9 sind mit den ersten Eingängen einer aus 8 Exklusiv-ODER-Gliedern bestehenden Paritäts-Modifizierschaltung
PBMS verbunden, deren zweite Eingänge an eine Paritätsmodifizier-Steuerschaltung PMS10
angeschlossen sind, die aus 8 UND-Gliedern besteht. War ein Datenbit Dides aus dem Speicher ausgelesenen
Wortes fehlerhaft, so wird das entsprechende Paritätsbit Pk in der Paritätsbit-Modifizierschaltung PBM % aufgrund
eines von der Fehlerbyte-Lokalisierungsschaltung FBL 14 gelieferten Signals Bk korrigiert, während
das fehlerhalfte Datenbit, wie schon erwähnt, in der Datenbit-Modifizierschaltung durch Invertieren korrigiert
wird.
Die acht Ausgänge Pk der Paritäts-Generatoren
PBG9 sind außer mit der Paritätsbit-Modifizierschaltung PBM8 auch mit einer sogenannten Paritätsbit-Verknüpfungsschaltung
PKSH verbunden, die aus 2x3 Exklusiv-ODER-Gliedern aufgebaut ist und an
ihren beiden Ausgängen Qi und Q 2 die beiden Funktionen
und
Q1 = P1 « P2v P3* P4.
= P, ν P6v P7 ν 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 RVS i2 zugeleitet, die an ihren beiden Ausgängen Mi
und M2die beiden Funktionen
40 und
Ml = C1
Ml = QvC6VC7VC8
erzeugt
Wie man aus der Code-Tabelle nach F i g. 4 ersieht, gilt für die Funktion M1 die Gleichung:
(D;,;, ν 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 Mi
faO vereinfacht sich daher zu
Ml = D33VD3^v ... νDm,
d. h. der Wert der Funktion M1 wird bestimmt durch die
Exklusiv-ODER-Verknüpfung der Datenbits D33 bis A4,
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
(D32 ν D31 ν D32) ν (D33 ν D33) ν (D3* ν D34) ν (D35 ν D35) ν ... ν (D64 ν D64) *
Wie im Falle der Funktion Ml vereinfacht sich auch die Funktion M2 zu:
d. h., der Wert der Funktion Λ/2 wird bestimmt durch
die Exklusiv-ODER-Verknüpfung der Datenbits A bis D]2, die die erste Hälfte der Datenbits des Informationswortes bilden.
Qi = M2undQ2 = Mi.
Wenn ein Einzelfehler vorliegt, ist
Wenn ein Einzelfehler vorliegt, ist
Wenn eine gerade Aozahl von Fehlern vorliegt, ist
entweder
Qi = Af2und Q2 = M1 oder
Mi.
Mi.
Daher liefert ein Vergleich der bei einer Exklusiv-ODER
Verknüpfung der Funktion Q\ mit M 2 und der Funktion Q2 mit AfI erhaltenen Ergebnisse eine
Aussage über die Anzahl der Syndrome mit dem Binärwert »1«.
(O1VMl)V(Q2VMl) = 0
so zeigt dies das Vorliegen einer geraden Anzahl oder das Fehlen (Fehlerfreiheit) von Syndromen mit dem
Binärwert »1« an.
Lautet dagegen das Vergleichsergebnis
Lautet dagegen das Vergleichsergebnis
= 1,
so zeigt dies das Vorhandensein einer ungeraden Anzahl von Syndromen mit dem Binärwert »1« und
damit einen Fehler an.
Setzt man
Setzt man
so läßt sich das beim Vorliegen von einem Fehler erhaltene Vergleichsergebnis kurzer schreiben als
(H1 ν H2) = I.
Zur Durchführung des Vergleichs sind die Ausgänge Qi und Q2 der Paritäts-Verknüpfungsschaltung PVSIl
sowie die Ausgänge Mi und M2 der Redundanz-Verknüpfungsschaltung
ÄVS12 mit einer Vergleichsschaltung VGS13 verbunden, die aus 2 Exklusiv-ODER-Gliedern
besteht Die beiden Ausgänge H\ und H2 der
Vergleichsschaltung VGS13 sind mit einer aus einem
Exklusiv-ODER-Glied 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 UGP4 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 H2 der Vergleichsschaltung
VGS13 sind auch nut einer Fehlerbyte-Lokalisierungsschaltung FBL14 verbunden, die aus 8 UND-Gliedern besteht, an die auch die 8 Ausgänge S1 bis S8 der
Redundanzbit-Vergleichsschaltung RBV2 angeschlossen sind. Bei Vorliegen eines Fehlers erscheint an einem
der 8 Ausgänge B\ bis Bn 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 de.' einen Hälfte der Redundanzbits aufweisen. Da bei
Vorliegen eines Einzelfehlers eine der beiden Funktionen H\ oder H2 den Binärwert »1« besitzt and damit
angibt, in welcher Hälfte des Informationswertes der
ίο Fehler auftrat (wobei die Datenbits A bis Dn und die
Redundanzbits C5 bis Q als zur gleichen Hälfte
gehörend angesehen werden), ergibt eine einfache UND-Verknüpfung der Funktionen Wi bzw. H2 mit der
für ein Byte charakteristischen Zuordnung zu der einen
Ij Hälfte der Redundanzbits die Lokalisierung des fehlerhaften Bytes.
Daher sind die Ausgänge Sy der Redundanzbit-Vergleichsschaltung
und die Ausgänge Hx und H2 der
Vergleichsschaltung VGSi? mit der aus 8 UND-Gliedem
bestehenden Fehlerbyte-Lokalisierungsschaltung FBL14 verbunden. An deren 8 Ausgängen Bt erscheint
jeweils ein das fehlerhafte Byte kennzeichnendes Signal. Befindet sich der Fehler beispielsweise im Byte 1, d. h.
unter den Bits D1 bis D 8, so erscheint am Ausgang B1
der Fehler-Lokalisierungsschaltung das Singal
B i = (Hx ■ S, · S4) = 1.
Erscheint am Ausgang B 4 das Signal
Erscheint am Ausgang B 4 das Signal
B4 =
S2 ■ S3 = 1,
so befindet sich der Fehler unter den das Byte 4 bildenden Datenbits D2S bis Aa-
Da die Paritätsbits Pk für die Bytes durch die
Paritätsbit-Generatoren PBGg aus den unkorrigierten
j5 Datenbits früher erzeugt werden können als die
Syndrome Sy 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
(PL= Pk* Bk)
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
korrig'erten Daten D', und der zugehörigen Paritätsbits
Pk 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.
S3 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 korri-
bo gierten Datenbits und die Paritätsbits zugeführt werden
müssen, vereinfacht wird.
Die Ausgänge Si bis Sg der Redundanzbit-Vergleichsschaltung
RBV 2 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 FKS6 verbunden, die hei 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 »i« einen unkorrigierbaren Fehler anzeigt Die Ausgänge Si bis Sg
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
X\ bis Xs und Y\ vis Ve auf, an denen die folgenden
Signale erscheinen:
X\
Xi
X3
Xi
X3
S5
Sl
S5
Sl
S5
Sj
Sj
S7
Sj
S7
Xs = Ss ■
X6 = S5
Xt =Ss
Xs = Ss-
X6 = S5
Xt =Ss
Xs = Ss-
Ss ■ Sj
SsSj
S6 -Sj S6-S7
SsSj
S6 -Sj S6-S7
· Sb
Sa
Ss
Sl
Ss Ss Ss
Ss Ss Ss
Y\ = Si - Si · S3 ■
Yi = Si * 1S2 * & ·
Ki = S, - S2
Y6 = Si-S2
S3
■ si-
= S\
S3
Sa
Sa
Die Indizes der Funktionen Xt, und Yb geben das
fehlerhafte Bit innerhalb eines Bytes an. Die Funktionen Xb beziehen sich auf die linke Hälfte A bis D32 der
Datenbits und die Funktionen Y auf die rechte Hälfte
Das die Korrektur des Fehlers in der Datenbit-Modifizierschaltung DBMj bewirkende Steuersignal A,- wird
durch eine UND-Verknüpfung der Funktionen Xb bzw.
Yb mit der Funktion Bk erhalten. Wie vorher erwähnt,
kennzeichnet der Index der Funktionen X bzw. Yja 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:
Bl
Bl
Bl
Xl ergibt Al Xl ergibt Al
X3 ergibt A3
Bl X8 ergibt AS
Bl Xl ergibt A9
Bl X3 ergibt AU
Bl XS ergibt A16
BA Xl ergibt A15 BA Xl ergibt A16
BA X 3 ergibt All
BS-Yl ergibt A33
BS · Y2 ergibt A34
BS -73 ergibt A 35
BS · Y2 ergibt A34
BS -73 ergibt A 35
BS - y8 ergibt /140
B6- Yl ergibt A 41
B6 · Y2 ergibt A42
B6 · Y3 ergibt Λ43
B6- Yl ergibt A 41
B6 · Y2 ergibt A42
B6 · Y3 ergibt Λ43
BS Yl ergibt Λ57
BS Yl ergibt ASS
BS Y3 ergib! AS9
BS Yl ergibt ASS
BS Y3 ergib! AS9
Daher sind die Ausgange X\ bis Ai und Y\ bis V8 der
das fehlerhafte Bit innerhalb eines Bytes feststellenden Lokalisierungsschaltung BIBL15 und die Ausgänge der
Fehlerbyte-Lokalisierungsschaltung FBL14 mit der aus
64 UND-Gliedern bestehenden Fehlerbit-Lokalisierungsschaltung FBIL3 verbunden, an die auch noch der
Ausgang der auf das Vorliegen einer ungeraden oder geraden Anzahl von Syndromen prüfenden Schaltung
UGPA angeschlossen ist
Erscheint an einem der 64 Ausgänge A, der Fehlerbit-Lokalisierungsschaltung ein Signal A, mit dem
Binärwert »1«, so wird das Datenbit D/ in der Datenbit-Modifizierschaltung DBM7 durch Invertieren
zu Di' korrigiert Gleichzeitig wird in der Paritätsbit-Modiflzierschaltung
PBM% das aus den unkorrigierten Datenbits des den Fehler enthaltenden Bytes gewonnene
Paritätsbit Pk zud P*' korrigiert Damit ist die
Fehlerkorrektur beendet
Die Schaltungsanordnung zur Durchführung des Verfahrens nach der Erfindung ist nicht nur in der Lage, Einzelfehier in solchen Informationsworten zu korrigieren, die aus 64 Datenbits und 8 Redundanzbits bestehen. Mit ;hr lassen sich beispielsweise auch Einzelfehler in 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,
Die Schaltungsanordnung zur Durchführung des Verfahrens nach der Erfindung ist nicht nur in der Lage, Einzelfehier in solchen Informationsworten zu korrigieren, die aus 64 Datenbits und 8 Redundanzbits bestehen. Mit ;hr lassen sich beispielsweise auch Einzelfehler in 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
t>5 bestehen, also in einem 22/16-Code vorliegen, dessen
Code-Tabelle in F i g. 6 wiedergegeben ist.
i 4 HIaIt Zeichnungen
Claims (1)
1. Verfahren zur Erkennung and 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 Ifar
jedes Prüfbit die Anzahl der zu seiner Erzeugung verwendeten Datenbits gleich ist und
wobei eine gerade Anzahl von Syndrombits ungleich NuU 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 (CX-CA) der Prüfbits und einer ungeraden Anzahl von Prüfbits aus der zweiten Hälfte (C5—C8) 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 so Anzahl aus der zweiten Hälfte zugeordnet sind,
daß die Paritätsbits (Pk) aus den unkorrigienen Datenbits erzeugt werden,
wobei eine gerade Anzahl von Syndrombits ungleich NuU 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 (CX-CA) der Prüfbits und einer ungeraden Anzahl von Prüfbits aus der zweiten Hälfte (C5—C8) 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 so Anzahl aus der zweiten Hälfte zugeordnet sind,
daß die Paritätsbits (Pk) aus den unkorrigienen Datenbits erzeugt werden,
daß aus jeder Hälfte der Paritätsbits (PX-PA und
PS— P8) durch Exclusiv-ODER-Verknüpfung zwei r>
Paritätsfunktionen (Q X, Q 2) erzeugt werden,
daß durch Exclusiv-ODER-Verknüpfung aus jeder Hälfte der beigefügten Prüfbits fQJ eine Prüfbitfimktion (M 1, M 2) erzeugt wird und
daß zwei Fehlerentscheidungsfunktioncn (HX, H2) erzeugt werden, derart, daß
daß durch Exclusiv-ODER-Verknüpfung aus jeder Hälfte der beigefügten Prüfbits fQJ eine Prüfbitfimktion (M 1, M 2) erzeugt wird und
daß zwei Fehlerentscheidungsfunktioncn (HX, H2) erzeugt werden, derart, daß
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 DE2131848B2 (de) | 1978-11-16 |
DE2131848C3 true 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 |
---|---|
DE2131848A1 (de) | 1973-01-11 |
FR2144293A5 (de) | 1973-02-09 |
JPS5443857B1 (de) | 1979-12-22 |
GB1363586A (en) | 1974-08-14 |
DE2131848B2 (de) | 1978-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69220818T2 (de) | Verfahren und Einrichtung zur Fehlererkennung in Recherspeichern versehen mit Mehrfach-bit-Ausgängen | |
DE2260850C2 (de) | Schaltungsanordnung zur Erkennung von Einzel- und Mehrfachfehlern und zur korrektur von Einzel- und bestimmten Mehrfachfehlern | |
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE3853206T2 (de) | Verfahren und gerät zur byteschreibfehlerkodierung. | |
DE69116919T2 (de) | Selbsttestverfahren für inhaltsadressierbare Speicher | |
DE3125048C2 (de) | ||
DE2132565C3 (de) | Umsetzer | |
DE3111447C2 (de) | ||
DE2550342C2 (de) | Schaltungsanordnung zur Prüfung von Matrixanordnungen | |
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE2030760A1 (de) | Speicherschaltung | |
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE19829234A1 (de) | Prüfverfahren für einen Halbleiter-Datenspeicher und Halbleiter-Datenspeicher | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE2157829C2 (de) | Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern | |
DE2450468A1 (de) | Fehlerkorrekturanordnung fuer einen speicher | |
DE1959231A1 (de) | Verfahren und Vorrichtung zur Korrektur von bis zu drei Fehlern eines aus 23 Bits bestehenden Codewortes | |
DE2053836C3 (de) | Anordnung zur Korrektur von Fehlerbündeln in binär codierten Datengruppen | |
DE2320354C2 (de) | Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen | |
DE2752377A1 (de) | Fehlerpruefeinrichtung | |
EP0615211A1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
DE3786853T2 (de) | Gerät zur Erkennung und Klassifizierung von Steuerwortfehlern. | |
DE1910582B2 (de) | Schaltungsanordnung zur Steuerung eines digitalen Speichersystems | |
EP0127118B1 (de) | Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem | |
DE69924012T2 (de) | Verfahren und vorrichtung für speicherdata-fehlerdetektion und speichermodul-fehlerdetektion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |