DE2942998C2 - Fehler-Korrektur- und Erkennungs-Anordnung - Google Patents
Fehler-Korrektur- und Erkennungs-AnordnungInfo
- Publication number
- DE2942998C2 DE2942998C2 DE2942998A DE2942998A DE2942998C2 DE 2942998 C2 DE2942998 C2 DE 2942998C2 DE 2942998 A DE2942998 A DE 2942998A DE 2942998 A DE2942998 A DE 2942998A DE 2942998 C2 DE2942998 C2 DE 2942998C2
- Authority
- DE
- Germany
- Prior art keywords
- error
- bits
- data
- detection
- bit
- 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 OR CALCULATING; 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
- G06F11/1024—Identification of the type of error
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/14—Error detection or correction of the data by redundancy in operations
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 Fehler-Korrektur- und -Erkennungs-Anordnung für einen in einem Elektronenrechner
od. dgl. verwendeten Speicher und insbesondere eine Vorrichtung zum Erkennen einer Fehlkorrektur
in der Fehler-Korrektur- und -Erkennungs-Anordnung. Als ein Versuch zur Steigerung der Zuverlässigkeit
von Speichern wurde in der Praxis eine Fehler-Korrektur- und -Erkennungs-Anordnung entwickelt, in der
sogenannte Hamming-Codes angewandt werden, um einen Einbit-Fehler erkennen und korrigieren und einen
Zweibit-Fehkr erkennen zu können. Ein derartiger Code wird im folgenden genannt SEC-DED-Code
(Abkürzung von Single bit Error Correction — Double
bit Error Detection=£inbil-Fehler-Korrektur/Zweibit-Fehler-Erkennung),
obwohl der gleiche Code gelegentlich einfach als ECC-Code (Abkürzung von Error Check
and Correction=Fehler-Prüfung- und -Korrektur) bezeichnet
wird. Das Prinzip der SEC-DED-Codes wurde bereits beschrieben (vgl. R, W. Hamming: »Error
Detecting and Error Correcting Codes« in »The Bell System Technical Journal«, VoL XXVI, No. 2, Seiten
147-160, April 1950, und US-Re-PS 23 601).
Das Prinzip des SEC-DED-Code wird im folgenden
kurz erläutert Wenn der SEC-DED-Code aus π inhärenten Informations-(Daten-)Bits zusammen mit Ar'
redundanten Bits für eine Fehler-Korrektur zusammengesetzt
ist müssen die folgenden Bedingungen erfüllt sein, um die Stelle, bei der die Korrektur benötigt wird
(eine von n+k' Stellen), zu bezeichnen und das Vorliegen oder Nichtvorliegen eines Fehlers zu
erkennen. Insbesondere gilt:
2>f-(n+k'+l)>0 (1)
Wenn ein zusätzliches redundantes Bit verwendet wird, um den Zweibit-Fehler zu erkennen, hat die
Gesamtzahl Ar der redundanten Bits den We;-. Ar'+1.
Entsprechend kann der Ausdruck (1) umgeschrieben werden in:
2k-]—(n+k)>0 (2)
Daraus folgt daß die Gesamtzahl k der redundanten Bits bis zu 8 Bits für die Daten von 64 Bits (n=64)
beträgt
In einer praktischen Anordnung, die aufgrund des obigen Prinzips arbeitet wird ein Einschreib-Datenwert
von η Bits zu einem SEC-DED-Code-Generator gespeist, bei dem zum Einschreib-Datenwert Ar redundante
Bits hinzugefügt werden, wodurch ein Einschreib-SEC-DED-Code erzeugt wird. Die Anzahl der Bits von
diesem Code beträgt somit n+k Die den Einschreib-Datenwert enthaltende codierte Information kann dann
in einen Speicher geschrieben werden. Für die Ausleseoperation ist die aus dem Speicher ausgelesene
Information t :n Auslese-SEC-DED-Code, der den
Datenwert enthält Der ausgelesene Informations-Code wird zu einem SEC-DED-Glied geführt in dem eine
Korrektur eines Einbit-Fehlers sowie eine Erkennung eines Zweibit-Fehlers erfolgen. Wenn ein Einbit-Fehler
innerhalb des Speichers erzeugt wurde, erkennt das SEC-DED-G!ied einen derartigen Einbit-Fehler, um
dadurch eine Einbit-Fehler-Erkennungsleitung zum Melden eines Warnsignales an einen Bediener einzuschalten
und gleichzeitig das Fehler-Bit in einen richtigen Wert zu korrigieren. Wenn ein Mehrbit-Fehler
größer als ein Zweibit-Fehler einschließlich erzeugt wurde, erfolg*, die Erkennung des Fehlers in ähnlicher
Weise, und eine zugeordnete Mehrbit-Fehler-Erkennungsleitung
wird eingeschaltet, um eine Warnung zu melden. Auf diese Weise kann das /J-Bit-Ausgangssignal
vom SEC-DED-Glied als ein richtiger Datenwert verwendet werden, wenn kein Fehler innerhalb des
Speichers erzeugt wird oder der Fehler ein Einbit ist.
Wenn dagegen ein Zwei- oder Mehrbit-Fehler erzeugt wurde, stellt ein Auslese-Datenwert-Ausgangssignal
vom SEC-DED-Glied eine falsche Information dar. Für einen Fehler von zwei Bits kann eine Warnung
mit einer Wahrscheinlichkeit von 100% erzeugt werden. Für einen Fehler von mehr als drei Bits kann eine
Warnung mit einem bestimmten Zuverlässigkeitsgrad erzeugt werden. Das heißt, obwohl die Erzeugung eines
Zweibit-Fehlers ohne Ausfrll erkannt werden kann, ist eine vollständige Erkennung für einen Mehrbit-Fehler,
der drei oder mehr Bits enthält, nicht zu erwarten. Auf
diese Situation wurde bereits hingewiesen (vgl.: Y. Hsiao: »A Class of Optimal Minimum Odd-weight-column
SEC-DEC Codes« in »IBM J. RES, DEVELOP«, JuIi 1970, Seiten 395-401, insbesondere Seite 398,
rechte Spalte, Zeilen 35 bis 42), In einem derartigen Fall wird der Dreibit-Fehler bestimmt, wie wenn ein
Einbit-Fehler erzeugt wurde, wodurch eine Fehlkorrektür
durchgeführt wird. Die Wahrscheinlichkeit des Mißverstehens des Dreibit-Fehlers für einen Einbit-Fehler
wird im allgemeinen in der Größenordnung von 50 bis 75% eingeschätzt Das heißt, mehr als eine Hälfte
der Fehlkorrekturen werden als Korrekturen verarbeitet Dies ist selbstverständlich für einen Rechner
unverträglich, der sehr zuverlässig und genau sein soll.
Um diese Schwierigkeit zu überwinden, hat M. Y. Hsiao (a. a. Ο.) ein Codierverfahren erläutert, nach dem
die Wahrscheinlichkeit einer Fehlkorrektur des Dreibit-Fehlers auf ein vernünftigeres Ausmaß verringerbar ist
Zur Herabsetzung der Wahrschein'vhkeit des Auftretens
eines Dreibit-Fehlers wurde auch em Verfahren entwickelt bei dem die einzelnen Bits, die Wörter
bilden, in verschiedene Gruppen zusammengeführt sind (vgl. US-PS 3 436 734).
Weiterhin gibt es Anordnungen (vgl. US-PS 35 82 878,36 56 107 und 38 93 071), bei denen die Anzahl
Ar der gewöhnlich in SEC-DED-Gliedern verwendeten redundanten Bits erhöht ist (z.B. 9 oder mehr
redundante Bits für 64 Daten-Bits), utrs dadurch zu ermöglichen, daß der Zwei- oder Mehrbit-Fehler nicht
nur erkannt, sondern auch korrigiert wird.
Obwohl diese herkömmlichen Methoden von großer Bedeutung zur Steigerung der Zuverlässigkeit sind, ist
es bisher unmöglich, die Fehlkorrekturen vollständig auszuschließen.
Um eine Lösung des oben aufgezeigten Problems zu versuchen, hat einer der Erfinder eine Anordnung
entwickelt (vgl. US-Patentanmeldung 8 63 089 vom
22. Dezember 1977), die mit hoher Sicherheit erkennen kann, daß ein Dreibit-Fehler als ein Einbit-Fehler
fehlkcrigiert wurde. Als weiterer Versuch hat der gleiche Erfinder eine Anordnung beschrieben (vgl.
JP-OS 81 035/1978), die die Tatsache erkennen kann, daß ein Dreibit-Fehler als ein Einbit-Fehler fehlkorrigiert
wurde. Wenn — um die zuletzt erwähnte Entwicklung kurz anzudeuten — ein Einbit-Fehler
erkannt und in einem SEC-DED-Glied korrigiert wird, ist die Polarität aller Daten-Bits nach der Korrektur
umgekehrt. Anschließend werden redundante Bits aus den korrigierten Daten-Bits des umgekehrten Zustandes
erzeugt und wieder in einen Speicher geschrieben. Dann werden die Daten-Bits zusammen mit den
redundanten Bits ausgelesen, um in das SEC-CED-Glied
gespeist zu werden, wodurch das wiederholte Erkennen eines Fehlers als das Vorliegen eines Dreibit-Fehlers
gewertet wird. Die entwickelte Fehler-Korrektur- und -Erkennungs-Anordnung (vgl. die obige JP-OS) ist
vollständig frei von einem derartigen Problem, daß der Dreibit-Fehler vera-beitet wird, wie wenn er ein
Einbit-Fehler wäre, und somit liegt bei dieser Anordnung keine Verwirrung in den folgenden arithmetischen
Verarbeitungen vor.
Jedoch hat die oben kurz beschriebene Anordnung den Nachteil, daß ein in den redundanten Bits erzeugter Einbit-Fehier mögliche/weise fehlerhaft als der Dreibit-Fehler erkannt wird. Dies kann durch die Tatsache erklärt werden, daß die redundanten Bits, die zu den
Jedoch hat die oben kurz beschriebene Anordnung den Nachteil, daß ein in den redundanten Bits erzeugter Einbit-Fehier mögliche/weise fehlerhaft als der Dreibit-Fehler erkannt wird. Dies kann durch die Tatsache erklärt werden, daß die redundanten Bits, die zu den
Daten-Bits der umgekehrten Polarität nach einer Wiederschreib-Operation addiert sind, erneut durch
einen SEC-DED-Code-Generator vorbereitet werden, wodurch nach dem Auftreten des Einbit-Fehlers in den
redundanten Bits der letztere vorbereitet und in einem Speicher mit einer derartigen Polarität gespeichert
werden kann, daß die aus dem Speicher ausgelesenen redundanten Bits den Fehler enthalten, der als der
Einbit-Fehler durch das SEC-DED-Glied erkannt ist. In diesem Fall wird der Fehler in Ausdrücken oderTermen
eines Dreibit-Fehlers verarbeitet.
Wenn k redundante Bits zu η Daten-Bits addiert werden, ist die Wahrscheinlichkeit, daß die redundanten
Bits als der Einbit-Fehler verarbeitet werden, gegeben durch k/(n+k). Weiterhin kann die Wahrscheinlichkeit,
daß der Einbit-Fehler in den redundanten Bits auftritt, die im Speicher mit fehlerhafter Polarität nach einer
Wiederschreib-Operation vorbereitet sind, gegeben sein durch
π + k
Zum Beispiel beträgt für η = 64 Bits und k obige Wahrscheinlichkeit
8 Bits die
64 + 8
1
18
18
Das heißt, ungeachtet der Tatsache, daß der Einbit-Fehler erkannt und normal korrigiert wurde, wird das
Melden eines Dreibit-Fehlers mit der Wahrscheinlichkeit von 1/18 erzeugt, was bedeutet, daß die
übermittelte Einbit-Fehler-Korrekturfunktion bedeutungslos gemacht wird. Dieses Problem wird in der
herkömmlichen Anordnung ernster, die mit der Einrichtung zur Steigerung der Zuverlässigkeit ausgestattet
ist (vgl. oben), da eine fehlerhafte Fehlerbit-Erkennung weiter die Einbit-Fehler-Korrekturfähigkeit
herabsetzt, was einen großen Nachteil bedeutet
Die US-PS 39 49 208 bezieht sich auf die Fehlererkennung
in einem Datenwort in einem Speicher und die Korrektur bestimmter Fehler zum Verhindern einer
fehlerhaften Korrektur von Fehlern.
Um dies zu erreichen, gibt die Entgegenhaltung eine Anordnung an, bei der eine Korrektureinrichtung
vorgesehen ist, die zwei Kanäle aufweist, die unterschiedliche Betriebsfrequenzen besitzen, wobei Worte,
die in den jeweiligen Kanälen korrigiert worden sind, miteinander vergüchen werden und lediglich die Worte,
die identische Ergebnisse in beiden Kanälen erreicht haben verwendet werden.
Es ist daher Amgabe der Erfindung, eine Fehler-Korrektur-
und Erkennungs-Anordnung anzugeben, in der ein Hamming-Code einschließlich Daten-Bits und
redundanten Bits verwendet wird, und die fehlerfrei die Tatsache erkennen kann, daß ein im Hamming-Code
erkannter und einer Korrektur unterworfener Fehler fehlerhaft korrigiert wurde; diese Anordnung soll
weiterhin gegenüber einem derartigen Problem unempfindlich sein, daß ein Einbit-Fehler, der in den
redundanten Bits des Hamming-Code auftritt, in unerwünschter Weise verarbeitet wird, wie wenn ein
Dreibit-Fehler erzeugt wurde.
Zur Lösung obiger Aufgabe weist die erfindungsgemäße Fehlerkorrektur- und -erkennungsanordnung zum
Erkennen und Korrigieren eines höchstens nhBit-Fehlers
und zum Erkennen eines (m+ 1)-Bit-Fehlers oder
größeren Fehlers, mit /n>l unter Verwendung eines
Hamming-Codes, miit einem Hamming-Code-Generator zum Erzeugen eines Hamming-Codes durch
Hinzufügen von mehreren redundanten Bit zu Datenbit, einem Speicher zum Speichern des Hamming-Code und
einer Fehlerkorrektur- und -erkennungseinrichtung, die den aus dem Speicher ausgelesenen Hamming-Code
prüft zum dadurch Erkennen und Korrigieren eines höchstens m Bit umfassenden Fehlers, jedoch Erkennen
eines (m+ i)oder mehr Bit umfassenden Fehlers, wobei
ίο eine zweimalige Korrektur eines Datenwortes durchgeführt
wird und Korrekturergebnisse verglichen werden, wobei Daten invertiert werden, folgende kennzeichnenden
Merkmale auf
invertiert, die von der Fehlerkorrektur- und -erkennungseinrichtung
abgegeben sind, abhängig von der Erkennung des höchstens m Bit umfassenden Fehlers
durch die Fehlerkorrektur- und -erkennungseinrichtung. In einem Datenregister werden die invertierten
Eine Steuereinrichtung steuert mindestens den Inverter und den Speicher abhängig von der Erkennung
des m-Bit-Fehlers in der Fehlerkorrektur- und -erkennungseinrichtung
zum Übertragen der ersten Datenbit zum Hamming-Codegenerator, um Ausgangs-Datenbit
als zweite Datenbit von der Fehlerkorrektur- und -erkennungseinrichtung zu erhalten.
In einem Vergleicher werden die ersten Datenbit von dem Daienregister mit den zweiten Datenbit vergüchen.
In einer Anzeigeeinrichtung wird eine von der Fehlerkorrektur- und -erkennungseinrichtung durchgeführte
Falschkorrcktur abhängig vom Vergleichergebnis des Vergleichers angezeigt.
Die invertierende Einrichtung kann in Hardware als ein Inverter ausgeführt werden. Jedoch kann die Umkehrung alternativ mit Hilfe der Verwendung eines Programmes erfolgen. In jedem Fall werden die invertierten oder umgekehrten Daten-Bits zum oben erwähnten SEC-DED-Code-Generator gespeist und wieder zu k redundanten Bits addiert, um einen SEC-DED-Code zu bilden, der dann in einen Speicher geschrieben wird. Der SEC-DED-Code wird anschließend aus dem Speicher gelesen und in die oben erwähnte Fehler-Korrektur- und -Erkennungs-Einrichtung gespeist. Auf diese Weise ist die Fehler-Korrektur- und -Erkennungs-Einrichtung wirksam, um einen Einbit-Fehler zu erkennen und zu korrigieren, der in dem SEC-DED-Code enthalten ist, der durch die invertierten Daten-Bits gebildet ist, denen die redundanten Bits hinzu gefügt sind, und um zusätzlich den Zweibit- oder Mehrbit-Fehlcr zu erkennen. Sofern in dieser Stufe kein Fehler erkannt wird, wird angenommen, daß die vorhergehende Erkennung und Korrektur des Einbit-Fehlers richtig ausgeführt wurde. Da jedoch die zu den Daten-Bits zu addierenden redundanten Bits erneut erzeugt sind, ist eine Möglichkeit eingeschlossen, daß z. B. ein Fehler in den redundanten Bits des
Die invertierende Einrichtung kann in Hardware als ein Inverter ausgeführt werden. Jedoch kann die Umkehrung alternativ mit Hilfe der Verwendung eines Programmes erfolgen. In jedem Fall werden die invertierten oder umgekehrten Daten-Bits zum oben erwähnten SEC-DED-Code-Generator gespeist und wieder zu k redundanten Bits addiert, um einen SEC-DED-Code zu bilden, der dann in einen Speicher geschrieben wird. Der SEC-DED-Code wird anschließend aus dem Speicher gelesen und in die oben erwähnte Fehler-Korrektur- und -Erkennungs-Einrichtung gespeist. Auf diese Weise ist die Fehler-Korrektur- und -Erkennungs-Einrichtung wirksam, um einen Einbit-Fehler zu erkennen und zu korrigieren, der in dem SEC-DED-Code enthalten ist, der durch die invertierten Daten-Bits gebildet ist, denen die redundanten Bits hinzu gefügt sind, und um zusätzlich den Zweibit- oder Mehrbit-Fehlcr zu erkennen. Sofern in dieser Stufe kein Fehler erkannt wird, wird angenommen, daß die vorhergehende Erkennung und Korrektur des Einbit-Fehlers richtig ausgeführt wurde. Da jedoch die zu den Daten-Bits zu addierenden redundanten Bits erneut erzeugt sind, ist eine Möglichkeit eingeschlossen, daß z. B. ein Fehler in den redundanten Bits des
nächst das Ausgangssignal mit den korrigierten Daten-Bits von der obigen Fehler-Korrektur- und
-Erkennungs-Einrichtung mit dem Ausgangssignal mit den korrigierten Daten-Bits für die zweite Zeit (d.h.
nach einer Wiederprüfung).
Auf diese Weise werden die durch die Korrektur- und -Erkennungs-Einrichtung korrigierten und vor und nach
der Wiederprüfung verfügbaren Daten-Bits miteinander durch den Vergleicher verglichen. Die Arten eines
Daten-Bit-Vergleiches umfassen einen gegenseitigen Vergleich der Daten-Bits, die bezüglich der ursprünglichen
Daten-Bits invertiert sind, einen gegenseitigen Vergleich der nichtinvertierten Daten-Bits, einen
Vergleich der invertierten Daten-Bits mit den nichtinvertierten Daten-Bits usw. Für den Vergleicher kann ein
einfaches exklusives ODER-Gatter verwendet werden. Im Fall der ersten beiden obigen Vergleiche, in dem die
Daten-Bits des gleichen Zustandes miteinander verglichen
werden, bedeutet eine durch den Vergleich ermittelte Übereinstimmung zwischen den beiden
Daten-Bits, daß diese Daten-Bits genau unabhängig von jeder möglichen Erkennung eines Einbit-Fehlers in den
redundanten Bits korrigiert wurden. Wenn dagegen eine Korrektur entsprechend aufgrund der falschen
Entscheidung erfolgt, daß ein Einbit-Fehler in den Daten-Bits vorliegt, obwohl in Wirklichkeit die anderen
drei Bits fehlerhaft sind, wird der Zustand lediglich des Einbits invertiert oder umgekehrt. Wenn entsprechend
die Zustände aller Daten-Bits anschließend invertiert
sind, werden die drei tatsächlich fehlerhaften Daten-Bits wieder in den Speicher mit dem Zustand geschrieben,
der leicht einen Fehler enthält. Damit entsteht keine Übereinstimmung aus dem Vergleich zwischen den
Daten-Bits, die von der Fehler-Korrektur- und -Erkennungs-Einrichtung erhalten sind, und den Daten-Bits des
invertierten Zustandes, die vor dem Einschreiben in den Speicher verfügbar sind. Eine derartige, durch den
Vergleich erfaßte Abweichung erlaubt, daß die vorhergehende Korrektur als eine fehlerhafte Korrektur,
nämlich eine Fehlkorrektur, erkannt wird.
Wenn im Fall des zuletzt erwähnten Vergleiches die Daten-Bits von entgegengesetzten Zuständen gegenseitig
verglichen werden, erfolgt die Verarbeitung der Vergleichsergebnisse in der entgegengesetzten Weise.
In jedem Fall wird die Fehlkorrektur aufgrund der Ergebnisse erkannt, die aus dem Vergleich durch den
Vergleicher erhalten sind.
Damit kann erfindungsgemäß nicht nur die Fehlkorrektur erkannt werden, daß der Dreibit-Fehler, der
tatsächlich in den Daten-Bits auftritt, verarbeitet wurde,
wie wenn er ein Einbit-Fehler wäre, sondern auch das Problem in befriedigender Weise gelöst werden, daß ein
Einbit-Fehler, der in den redundanten Bits selbst auftritt, fehlerhaft als ein Dreibit-Fehler erkannt wird.
Die Erfindung ist keinesfalls auf die Anordnung beschränkt, in der ein SEC-DED-Code verwendet wird
und in der ein Einbit-Fehler erkannt und korrigiert wird, wobei ein Zwei- oder Mehrbit-Fehler allein erkannt
wird. Die Erfindung ist vielmehr allgemein auf Anordnungen anwendbar, in denen ein Hamming-Code
verwendet und ein Fehler, der in weniger als m Bits einschließlich auftritt, erkannt und korrigiert wird,
während mehr als (m+1) Bits einschließlich, die einem
Fehler unterworfen sind, erkannt werden. In diesem Fall
ist der oben erwähnte SEC-DED-Code-Generator durch den Hamming-Code-Generator vorgesehen.
Hierzu wird ein Hamming-Code durch η ursprüngliche Informations-(oder Daten-)Bits gebildet, zu denen k'
redundante Bits für eine Fehler-Korrektur addiert sind, wobei — um die Fehler-Erkennungs- und -Korrektur-Funktion
für die Bits in einer Anzahl kleiner als m einschließlich zu erzielen — 2*' Kombinationen von
Codes, die durch Addieren von Jt' Bits ermöglicht sind,
größer als
*
*
sein müssen, worauf bereits hingewiesen wurde. Dabei bedeutet »C« eine übliche Abkürzung für »Kombination«.
Die Formulierung »k-\+n Cm« stellt die
Anzahl der Kombinationen dar, wenn m aus k- 1 + η
genommen wird. Mathematisch müssen die folgenden Bedingungen erfüllt sein:
m-\
Um die Fehler-F.rkennungsfähigkeit für die Bits in
einer Anzahl nicht kleiner als (w+l) zusätzlich zur gerade oben beschriebenen Fehler-Erkennungs- und
-Korrektur-Funktion zu erzielen, ist zusätzlich ein Ein-Redundanz-Bit erforderlich. Wenn die Anzahl
aller redundanten Bits durch k ausgedrückt wird, liegt k = k"+\ vor. Damit kann der obige Ausdruck (3)
umgeschrieben werden in:
/» Cm-MS 2'
m- I
Nebenbei sei darauf hingeweisen, daß die obigen Ausdrücke (1) und (2) abgeleitet werden können, indem
1 für /n in den Ausdruck (4) eingesetzt wird, da der SEC-DED-Code ein Hamming-Code ist, der einen
Einbit-Fehler korrigieren und einen Zweibit-Fehler erkennen kann, wie dies oben erläutert wurde.
Eine weitere Fehlerkorrektur- und -erkennungsanordnung zum Erkennen und Korrigieren eines höchstens
/77 Bit-Fehlers und zum Erkennen eines (m+\) Bit-Fehlers oder größeren Fehlers mit m>
I unter Verwendung eines Hamming-Codes enthält folgende kennzeichnende Merkmale:
In einem Inverter v/erden korrigierte Datenbit, die von der Fehlerkorrektur- und -erkennungseinrichtung
ausgegeben sind, abhängig von der Erkennung des höchstens m Bit umfassenden Fehlers durch die
Fehlerkorrektur- und -erkennungseinrichtung invertiert.
In einem Datenregister werden die von der Fehlerkorrektur- und -erkennungseinrichtung ausgegebenen
Datenbit als erste Datenbit zwischengespeichert.
in der Fehlerkorrektur- und -erkennungseinrichtung
zum Übertragen der invertierten Datenbit von dem
so Inverter zu dem Hamming-Code-Generator, um Ausgangsdatenbit über den Inverter als zweit* Datenbit
von der Fehlerkorrektur- und -erkennungseinrichtung zu erhalten.
Ia einem Vergleicher werden die ersten Datenbit vom Datenregister mit den vom Inverter invertierten zweiten Datenbit verglichen.
Ia einem Vergleicher werden die ersten Datenbit vom Datenregister mit den vom Inverter invertierten zweiten Datenbit verglichen.
In einer. Anzeigeeinrichtung wird eine von der Fehlerkorrektur- und -erkennungseinrichtung durchgeführte
Falschkorrektur abhängig vom Vergleichsergebnis des Vergleichers angezeigt
In einer Anordnung, die SEC-DED-Codes verwendet,
die durch Daten-Bits gebildet sind, zu denen redundante Bits hinzugefügt sind, und die einen Einbit-Fehler
erkennen und korrigieren und einen Zwei- oder Mehrbit-Fehler erkennen kann, erfolgt eine Erkennung
«3ber eine Fehlkorrektur, die einem Dreibit-Fehler zuschreibbar ist Wenn der Einbit-Fehler durch ein
Fehler-Erkennungs- und -Korrektur-Glied in dem aus
einem Speicher ausgelesenen SEC-DED-Code erkannt wird, werden alle korrigierten Daten-Bits im Zustand
invertiert und in den Speicher wieder eingeschrieben, nachdem sie frischen redundanten Bits hinzugefügt
wurden. Anschließend werden die Daten-Bits zusammen mit den redundanten Bits aus dem Speicher gelesen
und in das Fehler-Erkennungs· und -Korrektur-Glied gespeist. Die vom Fehler-Erkennungs- und -Korrektur-Glied
erhaltenen Daten-Bits werden mit den korrigierten und invertierten Daten-Bits verglichen, die vor dem
Einschreiben in den Speicher verfügbar sind, um dadurch das Vorliegen eines mehr als (m+\) Bits
umfassenden Fehlers aufgrund des Vergleichsergebnisses zu bestimmen.
Anhand der Zeichnung wird die Erfindung nachfolgend beispielsweise näher erläutert. Es zeigt
Fig. I ein Blockschaltbild mit dem allgemeiner Aufbau der Fehler-Erkennungs- und -Korrektur-Anordnung
zum Korrigieren eines Einbit-Feh'rrs und
Erkennen eines Zweibit-Fehlers entsprechend einem Ausführungsbeispiel der Erfindung und
F i g. 2 ein Blockschaltbild mit einer teilweisen Abwandlung der in F i g. 1 gezeigten Anordnung.
In Fig. 1, die die erfindungsgemäße Fehler-Erkennungs-
und -Korrektur-Anordnung zeigt, die einen Hamming-Code verwendet und zur Korrektur eines
Einbit-Fehlers geeignet ist, während ein Zweibit- oder Mehrbit-Fehler erfaßt wird, bewirkt ein SEC-DED-Code-Generator
2, daß Ar redundante Bits zu η Daten-Bits eines Eingangs-Datenwertes hinzugefügt
werden, womit ein SEC-DED-Code erzeugt wird. Die Erzeugung eines derartigen SEC-DED-Code kann in
üblicher Weise entsprechend dem Hamming-Prinzip erfolgen, so daß das Hinzufügen der redundanten Bits
die durch den obigen Ausdruck (2) festgelegten Bedingungen erfüllen kann. Wenn z. B. die Daten 64 Bits
(n = 64) sind, dann werden 8 redundante Bits (k= 8)
benötigt.
Ein durch η Daten-Bits und k redundante Bits
gebildeter SEC-DED-Code 3 wird in einen Speicher 4 geschrieben. Die Einschreib-Operation des SEC-DED-Code
3 sowie die Auslese-Operation eines entsprechenden SEC-DED-Code 5 in den bzw. aus dem Speicher 4
erfolgt über eine Einschreib/Auslese-Ansteuerleitung 16, die unter der Steuerung eines Speicher-Steuergliedes
15 betätigt ist. Der aus dem Speicher 4 ausgelesene SEC-DED-Code 5 wird in ein SEC-DED-Glied 6
gespeist, das als die Fehler-Korrektur- und -Erkennungs-Einrichtung
dient und den SEC-DED-Code entsprechend dem Hamming-Prinzip prüft Wenn ein Sinbit-Fehler erkannt wird, wird eine Einbit-Fehler-Erkennungsleitung
81 erregt wodurch der SEC-DED-Code 5 als ein Auslese-Datenwert abgegeben wird,
nachdem das betreffende Bit korrigiert wurde. Wenn ein
Fehler für mehr als zwei Bits einschließlich durch das SEC-DED-Glied 6 erkannt wird, ist eine Mehrbit-Feh-Ier-Erkennungsleitung
82 erregt wodurch die Erkennung des Mehrbit-Fehlers nach außen gemeldet wird.
Es sei daran erinnert daß die Erfindung die Verarbeitung für die Erkennung des Einbit-Fehlers
betrifft Das heißt da die Möglichkeit besteht daß ein tatsächlich auftretender Dreibit-Fehler fehlerhaft als ein
Einbit-Fehler genommen und eine Korrektur aufgrund dieser falschen Annahme durchgeführt wurde, soll durch
die Erfindung eine derartige Fehlkorrektur erkannt oder gekennzeichnet werden.
Ein Wiederprüf-Steuerglied 13 wird durch das auf der
Einbit-Erkennungsleitung 81 auftretende Einbi-Fehlersignal
betätigt und so eingestellt, daß es Stufen oder Schritte des Invertierens der η Daten-Bits steuert, die
durch das SEC-DED-Glied 6 korrigiert sind, und daß es die invertierten Bit-Daten, denen wieder andere
redundante Bits im Speicher 4 hinzugefügt sind, als Widereinschreib-Daten für eine wiederhoite Prüfung
schreibt Während der Wiederprüf-Verarbeitung werden eine Speicher-Steuerleitung 14, eine Fehlkorrektur-Erkennungsglied-Steuerleitung
17, eine Vergleich-Steuerleitung 18 und eine Inverter-Steuerleitung 19 angesteuert.
Wenn das Wiederprüf-Steuerglied 13 durch die Einbit-Fehler-Erkennungsleitung 81 angesteuert ist.
wird die Inverter-Steuerleitung 19 gleichzeitig eingeschaltet, wodurch die korrigierten η Daten-Bits zum
Inverter 9 gespeist sind. Die vom Inverter 9 abgegebenen invertierten Daten-Bits werden in ein
Daten-Register 11 gesetzt. Die vom Daten-Register 11 erzeugten η invertierten Daten-Bits werden als ein
Wiederschreib-Datenwert 12 in den SEC-DED-Code-Generator 2 gespeist, bei dem den η invertierten
Daten-Bits wieder k redundante Bits hinzugefügt werden, um einen SEC-DED-Code 3 zu bilden, der
seinerseits wieder in den Speicher 4 geschrieben wird.
Die Einschreib- und Auslese-Operationen des SEC-DED-Code aus dem und in den Speicher 4 erfolgen zu
dieser Zeit unter der Steuerung des Speicher-Steuergliedes 15, das durch die Speicher-Steuerleitung 14
betrieben wird, die unter der Steuerung des Widerprüf-
jo Steuergliedes 13 angesteuert ist. Der wieder aus dem
Speicher 4 ausgelesene SEC-DED-Code 5 wird erneut durch das SEC-DED-Glied 6 geprüft. Das Prüfen erfolgt
für die η invertierten Daten-Bits und die Ar redundanten
Bits. Wenn als das Ergebnis der Prüfung erkannt wird, daß der Fehler ein Einbit· Fehler ist, wird das
zugeordnete Bit korrigiert und als der Auslese-Datenwert 7 abgegeben. In diesem Fall wird dio angesteuerte
Einbit-Erkennungsleitung 81 durch das Wiederpriif-Steuerglied
13 ungültig gemacht. Wenn dagegen ein Zweibit-Fehler durch die obige Prüfung erkannt wird, ist
die Mehrbit-Fehler-Erkennungsleitung 82 angesteuert In diesem Zusammenhang sei darauf hingewiesen, daß
der Datenwert einschließlich mehr als ein Zweibit-Fehler als der Auslese-Datenwert 7 ohne Korrektur
abgegeben wird. Im nunmehr beschriebenen Wiederprüf-Prozeß wird der Auslese-Datenwert 7 zu einem
Vergleicher 23 unabhängig davon gespeist ob ein Einbit-Fehler oder ein Zwei- oder Mehrbit-Fehler
erkannt wurde. Dagegen werden die in das Daten-Register 11 vor dem Wiederprüf-Prozeß eingegebenen
Daten-Bits auch zum Vergleicher 23 gespeist bei dem die Auslese-Daten 7 sowie die Daten vom Register 11
miteinander Bit für Bit verglichen werden. In der Wiederprüf-Verarbeitung wird die vom Wiederprüf-Steuerglied
13 ausgehende Vergleich-Steuerleitung 18 betätigt Damit bewirkt eine Abweichung in den Bits
zwischen beiden Eingangs-Daten, daß eine Daten-Abweichungs-Erkennungsleitung
22 betätigt wird Diese Abweichungsleitung 22 führt zu einem Fehlkorrektur-Erkennungsglied
20 parallel zur Fehlkorrektur-Erkennungs-Steuerieitung
17 (vgl. oben). Da ein Signal auf der Steuerleitung für den Wiederprüf-Prozeß erzeugt wird,
führt eine Abweichung in dem oben beschriebenen Vergleich dazu, daß die Fehlkorrektur-Erkennungsleitung
21 eingeschaltet ist um nach außen die Tatsache einer Fehlkorrektur zu melden. Dagegen wird eine in
usv. Ergebnissen des obigen Vergleiches ermittelte Obereinstimmung für die Wirkung gewertet daß ein
einem Einbit-Fehler zuschreibbarer Fehler richtig korrigiert wurde, wodurch die zugeordneten Daten vor
dem Vc ι gleichen verschiedenen nachfolgenden Verarbeitungsstufen unterworfen werden können.
Im folgenden werden Ausführungsbeispiele von
Im folgenden werden Ausführungsbeispiele von
Operationen der obigen Anordnung anhand deip
anschließenden Tabelle I aufgrund der Annahme erläutert, daß der Datenwert 64 Daten-Bits (A: 60 Bits,
B: 3 Bit' und C: I Bii) enthält und die redundanten Bits
gleich 8 Bits (D. 7 Bits und E: I Bit) sind.
| Position | Fehlertypen in einem Speicher (4) | Fall 2 | Fall 3 |
| Fall I | E = Fest-Hin-Redun- | B = Fest-Drci-Daten- | |
| C = Fest-Ein-Daten- | datu-Bit-F;ehler | wert-Bit-fehler | |
| wert-Bit-Fehler | |||
| Erste Zeit | A+B+C | A+B+C | |
| Einschreib-Daten | A+B + C | A+B+C+D+E | A+B+C+D+E |
| Einschreib-SEC-DED-Code | A+B+C+D+E | A+B-iC+D+E | A+S+C+D+E |
| Auslese-SEC-DED-Code | A+B+C+D+E | EiN | EiN |
| fcinbit-behler-hrkennungsieitung | EiN | ^-Stellung | C-Stellung |
| Fehl er-B i t - "tel I ungs-Anzei ge | C-Stellung | ||
| Information | A+B+C (Datenwert | A+B+C (Fehl | |
| Auslese-Daten nach Korrektur | A+B+C (normale | ist korrigiert) | korrektur) |
| Korrektur) | |||
| Zweite Zeit | Ä+B+C | Ä+B+C | |
| Einschreib-Daten | A+B+C | Ä+B+C+D-+E | Ä+B+C+D"+E" |
| Wiedergeschriebener SEC-DED-Code | Ä+B+C+D+E | Ä+B+C+D+E | Ä+B+C+D+E |
| Auslese-SEC-DED-Code | Ä+B+C+U+E | EIN | EIN |
| Einheit-Fehler-Erkennungsleitung | AUS | £-Stellnng | C-Stellung |
| Fehler-Bit-Stellungs-Anzeige- Information |
nichts | EIN | AUS |
| Daten-Übereinstimmungs- | EIN | ||
| Erkennungsleitung | Ä+B+C | Ä+B+C | |
| Auslese-Daten nach Verbindung | Ä+B+C | ||
| Bemerkungen | A : Daten von i>0 Bits | A : Daten von 60 | |
| A: Daten von 60 Bits | B : Daten von 3 Bits | Bits | |
| B: Daten von 3 Bits | C: Daten von 1 Bit | 8 : 3 Bit-Daten ein | |
| C: 1 Bit-Daten einge | D.D': 7 redundante Bits | geschrieben B | |
| schrieben C in | E: 1 redundantes Bit | in Spe'· her und | |
| Speicher und aus | eingeschrieben E | ausgelesen als | |
| gelesen als C | in Speicher und | B | |
| D.D': 7 redundante Bits | ausgelesen als E | C: Daten von 1 Bit | |
| E.E': 1 redundantes Bit |
D.D'
E,E"
FaIIl
Wie aus der Tabelle I zu ersehen ist, beruht der
Wie aus der Tabelle I zu ersehen ist, beruht der
7 redundante Bits
1 redundantes Bit
Wie oben im Zusammenhang mit der F i g. 1 näher erläutert wurde, wird das Wiederprüf-Steuerglied 13
danach durch die Einbit-Fehler-Erkennungsleitung 81 beispielsweise Falle 1 auf der Annahme, daß — obwohl 55 betätigt. Gleichzeitig wird der der Korrektur unterwor-8
redundante Bits normal im Speicher 4 sind — ein fene Auslese-Datenwert 7 in den Inverter 9 eingegeben,
Datenwert einschließlich 64 Daten-Bits einem Einbit- der durch die Inverter-Steuerleitung 19 betätigt wird,
Fehler in der Hinsicht unterworfen ist daß ein Einbit C die aus dem Wiederprüf-Steuerglied 13 führt Folglich
der 64 Daten-Bits, die in den Speicher mit einem Bit C? wird der Auslese-Datenwert 7, der der Korrektur beim
geschrieben sind, mit dem umgekehrten Bit C 60 SEC-DED-Glied 6 unterworfen war, in das Daten-Register
11 nach der Inversion oder Umkehrung eingegeben und anschließend wieder zum SEC-DED-Code-Generator
2 als ein_Wiedereinschreib-Datenwert 12 gespeist der durch A + 5+ C dargestellt ist wie dies aus der
Einbit-Fehler-Erkennungsleitung 81 einzuschalten. Wei- 65 Tabelle I zu ersehen ist Beim SEC-DED-Code-Generaterhin
ist die Fehler-Bit-SteUung ausgerichtet, und das tor 2 werden diesem Datenwert entsprechende
betreffende Bit C wird in den normalen Wert C redundante BiIs(D'+E') hinzugefügt^ urn^ einen Eininvertiert
schreib-SEC-DED-Code 3 von A + B+ C+ D'+ E' zu
ausgelesen wird. Unter diesem Umstand erkennt das SEC-DED-Glied 6 einen Einbit-Fehler mit der Hilfe von
den 8 redundanten Bits (D+ E), die beim SEC-DED-Code-Generator
2 hinzugefügt sind, um dadurch die
bilden, der vom Generator 2 abgegeben wird. Unter der
Steuerung der vom Wiederprüf-Steuerglied 13 wegführenden Speicher-Steuerleitung 14 wird das Speicher-Steuerglied
15 so angesteuert, daß der obige SEC-DED-Code 3 in den Speicher 4 über die Einschreib/Auslese-Leitung
16 nunmehr mit dem invertierten Zustand Cdes Fehler-Bits eingeschrieben wird. Da keines der Bits A, B,
D' und E' mit Ausnahme des Bits C Veranlassung zu einem Fehler in der Speicherung mit jedem Zustand
gibt, wird nunmehr der in den Speicher 4 geschriebene SEC-DED-Code von A~+B+C+D'+E' ohne jeden
Fehler ausgelesen und in den Eingang des SEC-DED-Gliedes 6 als der SEC-DED-Code 5 gespeist Da kein
Fehler zu dieser Zeit durch das SEC-DED-Güed 6 eikannt wird, bleiben die Einbit-Fehler-Erkennungsleitung
81 und die Mehrbit-Fehler-Erkennungsleitung 82 beide im Aus-Zustand, während die die Fehler-Bit-Stellung
bestimmende Information keine Bestimmung der Bit-Stellung slot. Daraus folgt, daß eine derartige Information
intern innerhalb des SEC-DED-Gliedes 6 erzeugt wird, obwohl sie nicht außerhalb erzeugt sein darf.
Folglich irtdas Ausgangssignai vom SEC-DED-Giied 6^
der Auslese-Datenwert 7, der nunmehr durch A + S+ C dargestellt ist, das dann mit den Inhalten "Ä+B+C
verglichen wird, die im Daten-Register 11 eingegeben
sind, das die Wiedereinschreib-Daten 12 über den Vergleicher 23 hält, der durch die Vergleicher-Steuerleitung
18 betätigt ist, die vom Wiederprüf-Steuerglied 13 wesjführt Als Folge wird die die Abweichung des
Vergleiches anzeigende Abweichungs-Erkennungsleitung 22 ausgeschaltet
Wenn lediglich ein Einbit-Fehler in Wirklichkeit vorliegt, so folgt aus den obigen Erläuterungen, daß der
Vergleich des Datenteiles über den Vergleicher 23, der nach der Wiederprüf-Verarbeitung mit dem invertierten
Datenzustand ausgeführt wird, zu der Übereinstimmung ohne Fehler oder Ausfall führt wodurch die Datenabweichungs-Erkennungsleitung
ausgeschaltet wird.
Fall 2
Im vorliegenden beispielsweisen Fall wird angenommen, daß 64 Daten-Bits normal im Speicher 4
verarbeitet werden, während 1 Bit £von 8 redundanten Bits, die mit einem Zustand E eingeschriebenjind, mit
dem invertierten oder umgekehrten Zustand E ausgelesen wird, wobei ein Einbit-Fehler eingeschlossen ist, der
fehlerhaft für einen Dreibit-Fehler im Fall der oben erläuterten herkömmlichen Anordnung genommen
wird. (In diesem Zusammenhang aei an dieser Stelle darauf hingewiesen, daß das SEC-DED-Glied nicht nur
einen Einbit-Fehler der Daten, sondern auch einen Einbit-Fehler in den redundanten Bits erkennt.) In
diesem Fall erkennt das SEC-DED-Glied 6 einen Einbit-Fehler und schaltet die Einbit-Fehler-Erkennungsleitung
81 ein. Weiterhin wird die Fehler-Bit-Stellung ausgerichtet, während erkannt wird, daß der aus
dein redundanten Bit ^invertierte Wert E ein normaler
Wert ist. Da jedoch keine Korrektur an den Daten-Bits erfolgt (unter der Annahme, daß der Datenwert keinen
Fehler enthält), wird der Auslese-Datenwert 7 durch A + B+ C dargestellt. Erfindungsgemäß wird der Auslese-Datenwert
7 in das Daten-Register 11 eingegeben, nachdem der Zustand durch den Inverter 9 invertiert
wurde. Das Ausgangssignal vom Daten-Register 11 wird wieder zum SEC-DED-Code-Generator 2 als der
Einschreib-Datenwert 12 für den Wiederprüf-Prozeß gespeist. Zu dieser Zeit sind der Inverter 9 sowie der
Speicher 4 durch die Inverter-Steuerleitung 19 und die Speicher-Steuerleiiung 14 gesteuert, die vom Wiederprüf-Steuerglied
13 wegführt, wie dies oben anhand des Falles t beschrieben wurde. Der Einschreib-Datenwert.
12 für die Wiederprüf-Verarbeitung ist durch /T-f- 2Γ+ C
dargestellt, wie dies aus der Tabelle I zu ersehen ist
mit entsprechenden redundanten Bits erweitert und als
" ein SEC-ÜED-Code abgegeben. Infolge der Annahme,
daß das Bit E der hinzugefügten redundanten Bits mit
ίο dem Zustand eingegeben ist, der zu einem Fehler im
Speicher 4 führt, wird der SEC-DED-Code 3 m_ einer Jn
den Speicher 4 eingeschriebenen J<orm Λ+ß+C
+El·'+ E aus diesem als ein durch A+B+C+D'+E
dargestellter Auslese-Code 5 ausgelesen, der dann in das SEC-DED-Glied 6 eingegeben wird. Es sei darauf
hingewiesen, daß das Bit E der redundanten Bits einem
Fehler unterworfen war, während die Bits A, B, Cund D'
unabhängig von deren Zustand frei von jedem Fehler sind. Das SEC-DED-Glied 6 erkennt den Einbit-Fehler,
und eine fehlerhafte Bit-Stellungs-Information zeigt an, daß ein Fehler bei der Bit-Stellung E der redundanten
Bits aufgetreten ist Es sei daran erinnert, daß entsprechend der oben beschriebenen herkömmlichen
Anordnung die für den Einbit-Fehler erfolgte erste Korrektur außen als eine Fehlkorrektur mitgeteilt wird,
d.1 h, die erste Korrektur sollte für einen Dreibit-Fehler
erfolgen, wenn ein Fehler wieder als das Ergebnis der Wiederprüf-Verarbeitung erkannt wird. Da der Auslese-Datenwert
7 vom SEC-DED-Glied A +B+C ist selbst wenn ein Fehler durch das SEC-DED-Glied
erkannt wird, führt jedoch erfindungsgemäß ein Vergleich dieses Datenwertes mit den Inhalten
(Ä+B~+Ü)des Daten-Registers 11, das die Wiedereinschreib-Daten
12 hält über den Vergleicher 23 zu der
Übereinstimmung, wodurch die Datenabweichungs-Erkennungsleitung
22 ausgeschaltet wird. Auf diese Weise wird so entschieden, daß der Fehler ein Einbit-Fehler ist
Wie aus den obigen Erläuterungen folgt führt der Vergleich, der an dem Datenteil eines SEC-DED-Code
nach der Wiederprüf-Verarbeitung durchgeführt wird, erfindungsgemäß zu der Erkennung einer Übereinstimmung
unabhängig von einem Einbit-Fehler in den redundanten Bits. Damit kann die unerwünschte
Möglichkeit vollständig ausgeschlossen werden, daß ein Einbit-Fehler als ein Dreibit-Fehler genommen oder
gewertet wird.
Fall 3
so Bits B der 64 Daten-Bits einem Fehler im Speicher 4 in der Hinsicht unterworfen sind, daß die drei Bits B, die in
den Speicher 4 mit einem Zustand geschrieben sind, mit dem anderen Zustand, d. h. mit Ή, ausgelesen werden,
während die Fehlerkorrektur fehlerhaft an dem Einbit C trotz der Tatsache durchgeführt wurde, daß der Fehler
als ein Dreibit-Fehler oder Mehrbit-Fehler erkannt worden sein sollte. Unter diesen Umständen erkennt das
SEC-DED-Glied 6 fehlerhaft einen Einbit-Fehler aufgrund der im SEC-DED-Code-Generator 2 hinzugefügten
redundanten Bits, wodurch die Einbit-Fehler-Erkennungsleitung 81 eingeschaltet wird. Weiterhin wird
die Bit-Fehler-Stellung fehlerhaft als die Bit-Stellung C erkannt, was dazu führt, daß das zugeordnete Bit in C
invertiert oder umgekehrt wird. Zu dieser Zeit bleiben die drei Bits B, die in Wirklichkeit einem Fehler
unterworfen sind, im Zustand Έ. Erfindungsgemäß wird der Auslese-Datenwert 7 nach der Fehler-Korrektur in
das Daten-Register 11 nach der Umkehrung durch den
Inverter 9 eingegeben, während das Ausgangssignal vom Daten-Register 11 wieder in den SEC-DED-Code-Generator
2 als der Wiedereinschreib-Datenwert 12 für das Wiederprüfen eingespeist wird, wie dies in Fig. 1
gezeigt ist. Zu dieser Zeit sind der Inverter 9 und der Speicher 4 durch die Inverter-Steuerleitung 19 und die
vom Wiederprüf-Steuerglied 13 wegführende Speicher-Steuerleitung 14 in der Weise gesteuert, wie dies oben
im Zusammenhang mit dem Fall 1 beschrieben wurde.
Der Einschreib-Datenwert für das Wiederprüfen ist durch ~Ä+B+C gegeben, wie dies in der Tabelle 1
gezeigt ist. Im SEC-DED-Code-Generator 2 werden diesem Datenwert entsprechende redundante Bits
(D"+ E") hinzugefügt, was zu der_ Erzeugung eines
SEC-DED-Code 3 in der Form von A+B+C+ D"+ E"
führt Dieser Code 3 wird dann in den Speicher 4 geschrieben, in dem die Bits Beinern Fehler in dem Sinn
unterliegen, daß die mit dem Zustand B eingeschriebenen Bits B mit dem anderen Zustand B ausgelesen
werden. Da die anderen Bits A, Q D" und £"zu keinem Fehler mit irgendeinem Zustand Veranlassung geben,
wird der in den Speicher 4 geschriebene SEC-DED-Code
einem Fehler bei den Bits B unterworfen und als ein SEC-DED-Code in einer Form von ^4 + 5+C
+ D"+ E" ausgelesen. Da der Auslese-SEC-DED-Code
5 noch einem Fehler in den drei Bits B unterworfen ist, die als ein Einbit-Fehler erkannt sind, erkennt das mit
dem SEC-DED-Code 5 beaufschlagte SEC-DED-Glied
6 wieder den Einbit-Fehler des Bits C, um in ZT zu
invertieren._FolgIich_nimmt der Auslese-Datenwert 7 den Wert "Α + Ή+C an, was dann mit den Inhalten
^4 + ß+Cdes Daten-Registers 11 über den Vergleicher 23 verglichen wird, was zu einer Abweichung zwischen
dem Datenwert 7 und den Inhalten des Registers 11 führt. Damit wird die Datenabweichungs-Erkennungsleitung
22 eingeschaltet, wodurch das Fehlkorrektur-Erkennungsglied 20 mit einem in F i g. 1 gezeigten
Gatter-Aufbau, das durch die vom Wiederprüf-Steuerglied 13 wegführende Fehlkorrektur-Erkennungsglied-Steuerleitung
17 betätigt wurde, angesteuert wird, und die Fehlkorrektur-Erkennungsleitung 21 einschaltet.
Auf diese Weise wird eine derartige Information erhalten, daß die zu einer ersten Zeit am Einbit-Fehler
ausgeführte Korrektur eine Fehlkorrektur ist und am Dreibit-Fehler hätte vorgenommen werden sollen.
In den obigen Beispielen wurde angenommen, daß das Fehlerereignis im Speicher fest oder unveränderlich
ist. Jedoch kann in der Praxis ein derartiges Fehlerereignis auftreten, das von der Erstzeit-Erkennung bis zur
Zweitzeit-Erkennung verschieden ist. Wenn z. B. drei
Bits vorliegen, die leicht fehlerhaft verarbeitet und als ein Dreibit-Fehler bei der ersten Fehlererkennung
erkannt werden, kann es eintreten, daß sie als ein Zweibil-I'ehler bei der zweiten Erkennung erkannt
werden. In einem derartigen Fall wird die Erfindung wirksam angewendet, da das Fehlkorrektur-Erkennungsglied
20 die Fehlkorrektur-Erkennungsleitung 21 einschaltet, wann immer eine Abweichung in dem
Vergleich beim Vergleicher 23 nach der Wiederprüf-Verarbeitung
gefunden wird.
Nach einem anderen vorteilhaften Merkmal der Erfindung wird der feste Fehler nicht nur erkannt,
sondern er kann auch korrigiert werden. Wie aus der Tabelle I zu ersehen ist. wjrd der SEC-DED-Code nach
der Zweitzeit-Korrektur A +B+C. Damit kann durch
Invertieren oder Umkehren des Code der feste Dreibit-Fehler in den normalen Wert korrigiert werden.
Das heißt, selbst im Fall 3 (vgl. oben) werden die Bits A richtig ausgelesen, invertiert sowie eingeschrieben und
dann ausgelesen, um wieder invertiert zu werden. Damit
bleiben die Bits A unveränderlich. Da dagegen die Bits B
fehlerhaft ausgelesen, invertiert, eingeschrieben und dann fehlerhaft ausgelesen werden, wird den Bits B die
richtige Polarität übertragen. Schließlich wird das Bit C
richtig ausgelesen, fehlerhaft invertiert (Fehlkorrektur), richtig invertiert, eingeschrieben und dann richtig
ausgelesen, fehlerhaft invertiert (Fehlkorrektur) und wieder invertiert Damit wird dem Bit C letztlich ein
richtiger Zustand übertragen.
Aus den obigen Erläuterungen folgt, daß das Problem,
daß ein in den redundanten Bits auftretender Einbit-Fehler verarbeitet werden könnte, wie wenn er ein
Dreibit-Fehler war, in einer vollständig befriedigenden Weise gelöst ist
Zusätzlich ist auch das Problem eines Dreibit-Fehlers ausgeschlossen, der fehlerhaft als ein Einbi? fehler
verarbeitet wird, um zu Verwirrungen in einer folgenden arithmetischen Operation zu führen. Wenn
nebenbei das Fehlerereignis in einem Speicher fest ist, kann selbst der Dreibit-Fehler richtig korrigiert werden.
F i g. 2 zeigt eine Abwandlung der in F i g. 1 dargestellten und oben beschriebenen Anordnung. In
Fig.2 wird ein aus einem Speicher 4 ausgelesener SEC-DED-Code 3 durch ein SEC-DED-Glied 6 geprüft
Wenn ein Einbit-Fehler erkannt wird, wird die Einbit-Fehler-ErkennungsSeitung 81 eingeschaltet, um
ein (nicht gezeigtes) Wiederprüf-Steuerglied zu betätigen, wodurch die Wiederprüf-Verarbeitung eingeleitet
wird, um das zugeordnete Bit zu korrigieren. Ein ausgelesener korrigierter Datenwert 7 wird dann in ein
Daten-Register 1 lä eingegeben. Zu dieser Zeit wird der
korrigierte Datenwert auch in einen Inverter 9 gespeist, dessen Ausgangs-Datenwert an einen SEC-DED-Code-Generator
2 als ein Wiedereinschreib-Datenwert 10 abgegeben wird, wo dem Datenwert 10 wieder k
redundante Bits hinzugefügt werden, worauf er in den Speicher 4 geschrieben wird. Der wieder aus dem
Speicher 4 ausgelesene entsprechende SEC-DED-Code wird invertiert und durch das SEC-DED-Glied in einer
ähnlichen Weise geprüft, wie dies oben erläutert wurde. Das Daten-Ausgangssignal vom SEC-DED-Glied wird
wieder in den Inverter 9 gespeist. Das Daten-Ausgangssignal vom Inverter 9 gewinnt so den ursprünglichen
Zustand wieder. Dieser Datenwert wird anschließend mit den in das Daten-Register 11a eingegebenen
Inhalten durch einen Vergleicher 23a verglichen. Die in F i g. 2 gezeigte Anordnung weicht von der in F i g. 1
dargestellten Anordnung dadurch ab, da£ Jie Daten, die einen nichtinvertierten Zustand haben, wechselseitig im
Fall \izT in Fig. 1 gezeigten Abwandlung verglichen
werden. In diesem Zusammenhang sei daran erinnert, daß im Fall der in F i g. 1 gezeigten Anordnung die
Daten des invertierten Zustandes miteinander verglichen werden. Der andere Aufbau und Betrieb der
abgewandelten Anordnung ist ähnlich, wie dies oben anhand der F i g. 1 und der Tabelle I erläutert wurde und
für den Fachmann ohne weitere Beschreibung ausführbar.
Anhand der in den F i g, 1 und 2 dargestellten Anordnungen wurde beschrieben, daß die wechselseitig
durch den Vergleicher 23 bzw. 23a verglichenen Daten den gleichen Zustand haben. Jedoch ist die Erfindung
nicht auf eine derartige Anordnung beschränkt, sondern kann auch in der folgenden Weise ausgeführt werden.
Das heißt, bei der in F i g. 2 gezeigten Anordnung ist einer der durch den Vergleicher 23a zu vergleichenden
Patenwerte der in das Daten-Register 11a eingegebene
Datenwert, wahrend der andere Datenwert das vom SEC-DED-Gliea 6 in der Wiederprüf-Verarbeitung
korrigierte und durch den Inverter 9 invertierte Daten-Ausgangssignal ist Das heißt, beide wechselseitig
miteinander zu vergleichenden Datenwerte haben bezüglich des ursprünglichen Zustandes den gleichen
Zustand. Im Gegensatz hierzu kann die Erfindung so ausgeführt werden, daß der in das Daten-Register 11a
eingegebene Datenwert direkt mit dem korrigierten Daten-Ausgangssignal vom SEC-DED-Glied 6 verglichen
wird. Da insbesondere der letztere Datenwert nicht durch den Inverter 9 geschickt ist, erfolgt der
Vergleich für die Daten mit verschiedenen Zuständen. Wenn folglich nicht eine Obereinstimmung für alle
Daten-Bits in dem Vergleich gefunden wird, wird bestimmt, daß die Korrektur normal durchgeführt
wurde, während eine Abweichung selbst in einem Einbit die Erkennung einer Fehlkorrektur bedeutet
Auf jeden Fall haben die in den F i g. 1 und 2 gezeigten Anordnungen sowie die gerade oben erläuterte
Abwandlung miteinander gemeinsam, daß die Tatsache der Fehlkorrektur erkannt wird abhängig von den
Ergebnissen eines Daten-Vergleiches, der durch einen Vergleicher verwirklicht wird.
Die obige Beschreibung beruht auf der Annahme, daß ein Dreibit-Fehler in Termen otfer Ausdrucken eines
Einbit-Fehlers verarbeitet wurde. Jedoch ist es sofort einzusehen, daß die Erfindung in gleicher Weise auch
auf den Fall anwendbar ist in dem ein Mehrbit-Fehler, der eine ungerade Anzahl von Fehler-Bits enthält wie
z.B. ein FünfiVt-Fehler, ein Siebenbit-Fehler usw,
verarbeitet werden kann, wie wen er ein Einbit-Fehler
wäre.
Weiterhin wurden im Fall eier obigen Beispiele eine
Korrektur eines Einbit-Fehlers und eine Erkennung eines Zwei- oder Mehrbit-Fehlers beschrieben. Jedoch
soll darauf hingewiesen werden, daß die Erfindung allgemeiner auf die Korrektur eines /n-Bit-Fehlers
(m=ganzzahlig größer als 1) und die Erkennung eines
(Tn+ 1)-Bit-Fehlers lediglich durch Erhöhen der Anzahl
der redundanten Bits als eine steigende Funktion von m anwendbar ist Tatsächlich werden die Anzahl der
redundanten Bits sowie der Prüfprozeß entsprechend dem Hamming-Prinzip aufgrund der obigen Ausdrücke
ίο (1) bis (4) bestimmt
Die erfindungsgemäße Anordnung löst das Problem eines irrtümlich als ein Dreibit-Fehler erkannten
Einbit-Fehlers der redundanten Bits, während die Erkennung für die Fehlkorrektur so durchgeführt
werden kann, daß ein Daten-Fehler in mehr als drei Bits, der einer Speicherfunktion zuzuschreiben ist fehlerhaft
in Termen oder Ausdrücken eines Einbit-Fehlers verarbeitet wurde. Somit kann durch die Erfindung die
Zuverlässigkeit einer Rechneranordnung wesentlich verbessert werden.
Da weiterhin die erfindungsgemäße Anordnung gegenüber Einflüssen einer Änderung in verwendeten
Codes unempfindlich ist, kann jede Codiermethode verwendet werden.
Sofern die Fehlerereignisse im Speicher von einer festen Art sind, erlaubt die Erfindung nicht nur die
Erkennung eines Mehrbit-Fehlers, sondern auch die Ausführung von dessen Korrektur. Dieser Vorteil wird
bedeutender, wenn Speicherelemente zum Aufbau einer Speichervorrichtung verwendet werden, die nur gegenüber
dem festen Fehler empfindlich sind. Die Erfindung ist sehr vorteilhaft um korrigierte Werte zu erhalten,
selbst wenn Mehrbit-Fehler in einer Speicherausrüstung erzeugt wurden, die herkömmliche Speicher mit
integrierten Schaltungen (IC-Speicher) anwendet
Claims (7)
1. Fehlerkorrektur- und -erkennungsanordnung zum Erkennen und Korrigieret: eines, höchstens,
/n-Bit-Fehlers und zum Erkennen eines fm+I)-Bk-Fehlers
oder größeren Fehlers, mit /näl, unter
Verwendung eines Hamming-Codes, mit einem Hamming-Code-Generator zum Erzeugen eines
Hamming-Codes durch Hinzufügen von mehreren redundanten Bit zu Datenbit, einem Speicher zum
Speichern des Hamming-Code und einer Fehlerkorrektur- und -erkennungseinrichtung, die den aus dem
Speicher ausgelesenen Hamming-Code prüft zum dadurch Erkennen und Korrigieren eines höchstens
m Bit umfassenden Fehlers, jedoch Erkennen eines (m+1) oder mehr Bit umfassenden Fehlers, wobei
eine zweimalige Korrektur eines Datenwortes durchgeführt wird und Korrekturergebnisse verglichen
werden, wobei Daten invertiert werden, gekennzeichnet durch
einen Inverter (9), der die korrigierten Datenbit invertiert, die von der Fehlerkorrektur- und
-erkennungseinrichtung (6) abgegeben sind, abhängig von der Erkennung des höchstens m Bit
umfassenden Fehlers durch die Fehlerkorrektur- und -erkennungseinrichtung (ö),
ein Datenregister (11) zum Zwischenspeichern der invertierten Datenbit als erste Datenbit,
eine Steuereinrichtung (13), die mindestens den Inverter (9) und den Speicher (4) abhängig von der Erkennung des /n-Bit-Fehlers in der Fehlerkorrektur- und erkennunßseinricaoing (6) steuert zum Übertragen der erst». Datenbit zum Hamming-Code-Generator (2), um Ac gangs-Datenbit als zweite Datenbit von der Fehlerkorrektur- und -erkennungseinrichtung (6) zu erhalten,
einen Vergleicher (23), der die ersten Datenbit von dem Datenregister (11) mit den zweiten Datenbit vergleicht, und
ein Datenregister (11) zum Zwischenspeichern der invertierten Datenbit als erste Datenbit,
eine Steuereinrichtung (13), die mindestens den Inverter (9) und den Speicher (4) abhängig von der Erkennung des /n-Bit-Fehlers in der Fehlerkorrektur- und erkennunßseinricaoing (6) steuert zum Übertragen der erst». Datenbit zum Hamming-Code-Generator (2), um Ac gangs-Datenbit als zweite Datenbit von der Fehlerkorrektur- und -erkennungseinrichtung (6) zu erhalten,
einen Vergleicher (23), der die ersten Datenbit von dem Datenregister (11) mit den zweiten Datenbit vergleicht, und
eine Anzeigeeinrichtung (20), die eine von der Fehlerkorrektur- und -erkennungseinrichtung (6)
durchgeführte Falschkorrektur abhängig vom Vergleichsergebnis des Vergleichers (23) anzeigt.
2. Fehlerkorrektur- und -erkennungsanordnung zum Erkennen und Korrigieren eines, höchstens,
/n-Bit-Fehlers und zum Erkennen eines (Τη+I)-BU-Fehlers
oder größeren Fehlers, mit m>\, unter Verwendung eines Hamming-Codes, mit einem
Hamming-Code-Generator zum Erzeugen eines Hamming-Codes durch Hinzufügen von mehreren
redundanten Bit zu Datenbit, einem Speicher zum Speichern des Hamming-Code und einer Fehlerkorrektur-
und erkennungseinrichtung, die den aus dem Speicher ausgelesenen Hamming-Code prüft zum
dadurch Erkennen und Korrigieren eines höchstens m Bit umfassenden Fehlers, jedoch Erkennen eines
(Τη+I) oder mehr Bit umfassenden Fehlers, wobei
eine zweimalige Korrektur eines Datenwortes durchgeführt wird und Korrekturergebnisse verglichen
werden, wobei Daten invertiert werden, gekennzeichnet durch
einen Inverter (9) zum Invertieren der korrigierten Datenbit, die von der Fehlerkorrektur- und -erkennungseinrichtung
(6) ausgegeben sind, abhängig von der Erkennung des höchstens m Bit umfassenden
Fehlers durch die Fehlerkorrektur- und -erkennungseinrichtung (6),
ein Datenregister (Ua) zum Zwischenspeichern der von der Fehlerkorrektur- und -erkennungseinrichtung
(6) ausgegebenen Datenbit als erste Datenbit, eine Steuereinrichtung (13) zum Steuern des
Inverters (9) und des Speichers (4) abhängig von der Erkennung des m-Bit-Fehlers in der Fehlerkorrektur-
und -erkennungseinrichtung (6) zum Obertragen der invertierten Datenbit von dem Inverter (9) zu
dem Hamming-Code-Generator (2), um /-oisgangs-Datenbit
über den Inverter (9) als zweite Datenbit von der Fehlerkorrektur- und -erkennungseinrichtung
(6) zu erhalten,
einen Vergleicher (23a) zum Vergleichen der ersten Datenbit von dem Datenregister (Ua) mit invertierten
zweiten Datenbit über den Inverter (9) und
eine Anzeigeeinrichtung (20) zur Anzeige einer von der Fehlerkorrektur- und -erkennungseinrichtung
(6) durchgeführten Falschkorrektur abhängig vom Vergleichsergebnis vom Vergleicher (23a) (F i g. 2).
3. Fehlerkorrektur- und -erkennungsanordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet,
daß die Fehlerkorrektur- und -erkennungseinrichtung (6) mit der Steuereinrichtung (13) über eine
Fehlererfassungsleitung (81) gekoppelt ist, wobei ein zur Steuereinrichtung (13) über die Fehlererfassungsleitung
(81) übertragenes Signal die Steuereinrichtung (13) xtbhängig von der Erkennung des
höchstens m Bit umfassenden Fehlers durch die Fehlerkorrektur- und -erkennungseinrichtung (6)
aktiviert
4. Fehlerkorrektur- und -erkennungsanordnung nach einem der Ansprüche 1 oder 2, dadurch
gekennzeichnet, daß die Anzeigeeinrichtung (20) ein UND-Glied aufweist, das ein Abweichungssignal
von dem Vergleicher (23,23a) und ein Falschkorrektur-Signal
von der Steuereinrichtung (13) empfängt
5. Fehlerkorrektur- und -erkennungsanordnung nach einem der Ansprüche 1 oder 2, dadurch
gekennzeichnet daß der Inverter (9) von einer ersten Steuerleitung (19) gesteuert ist, die mit der
Steuereinrichtung (13) gekoppelt ist.
6. Fehlerkorrektur- und -erkennungsanordnung nach einem der Ansprüche 1 oder 2, dadurch
gekennzeichnet, daß der Vergleicher (23, 23a^ durch
eine zweite Steuerleitung (18) angesteuert ist, die mit der Steuereinrichtung (13) verbunden ist
7. Fehlerkorrektur- und -erkennungsanordnung nach einem der Ansprüche 1 oder 2, dadurch
gekennzeichne/, daß die Anzeigeeinrichtung (20) durch eine dritte Steuerleitung (17) angesteuert ist,
die mit der Steuereinrichtung (13) gekoppelt ist.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP54012275A JPS592057B2 (ja) | 1979-02-07 | 1979-02-07 | エラ−訂正・検出方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE2942998A1 DE2942998A1 (de) | 1980-08-14 |
| DE2942998C2 true DE2942998C2 (de) | 1983-05-26 |
Family
ID=11800807
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2942998A Expired DE2942998C2 (de) | 1979-02-07 | 1979-10-24 | Fehler-Korrektur- und Erkennungs-Anordnung |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4296494A (de) |
| JP (1) | JPS592057B2 (de) |
| DE (1) | DE2942998C2 (de) |
Families Citing this family (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6051749B2 (ja) * | 1979-08-31 | 1985-11-15 | 富士通株式会社 | エラ−訂正方式 |
| JPS5671154A (en) * | 1979-11-15 | 1981-06-13 | Nec Corp | Information processing device |
| US4365332A (en) * | 1980-11-03 | 1982-12-21 | Fairchild Camera And Instrument Corp. | Method and circuitry for correcting errors in recirculating memories |
| US4417339A (en) * | 1981-06-22 | 1983-11-22 | Burroughs Corporation | Fault tolerant error correction circuit |
| US4458349A (en) * | 1982-06-16 | 1984-07-03 | International Business Machines Corporation | Method for storing data words in fault tolerant memory to recover uncorrectable errors |
| US4535455A (en) * | 1983-03-11 | 1985-08-13 | At&T Bell Laboratories | Correction and monitoring of transient errors in a memory system |
| US4608687A (en) * | 1983-09-13 | 1986-08-26 | International Business Machines Corporation | Bit steering apparatus and method for correcting errors in stored data, storing the address of the corrected data and using the address to maintain a correct data condition |
| US4604751A (en) * | 1984-06-29 | 1986-08-05 | International Business Machines Corporation | Error logging memory system for avoiding miscorrection of triple errors |
| JPS61134988A (ja) * | 1984-12-04 | 1986-06-23 | Toshiba Corp | 半導体メモリにおける誤り検出訂正機能制御系 |
| DE3482509D1 (de) * | 1984-12-28 | 1990-07-19 | Ibm | Geraet zum korrigieren von fehlern in speichern. |
| US4780809A (en) * | 1986-08-08 | 1988-10-25 | Amdahl Corporation | Apparatus for storing data with deferred uncorrectable error reporting |
| JPH01183000A (ja) * | 1988-01-14 | 1989-07-20 | Mitsubishi Electric Corp | 誤り訂正回路を有する半導体メモリ装置 |
| US5058115A (en) * | 1989-03-10 | 1991-10-15 | International Business Machines Corp. | Fault tolerant computer memory systems and components employing dual level error correction and detection with lock-up feature |
| US5418796A (en) * | 1991-03-26 | 1995-05-23 | International Business Machines Corporation | Synergistic multiple bit error correction for memory of array chips |
| US5267242A (en) * | 1991-09-05 | 1993-11-30 | International Business Machines Corporation | Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing |
| US5644583A (en) * | 1992-09-22 | 1997-07-01 | International Business Machines Corporation | Soft error correction technique and system for odd weight row error correction codes |
| WO1995005640A1 (en) * | 1993-08-13 | 1995-02-23 | Kokusai Denshin Denwa Co., Ltd. | Parallel multivalued neural network |
| JP2731745B2 (ja) * | 1995-03-23 | 1998-03-25 | 甲府日本電気株式会社 | データ障害処理装置 |
| KR20010080369A (ko) * | 1998-10-30 | 2001-08-22 | 추후제출 | 데이터를 저장하기 위한 기억 장치 및 상기 장치의 작동방법 |
| US7069494B2 (en) * | 2003-04-17 | 2006-06-27 | International Business Machines Corporation | Application of special ECC matrix for solving stuck bit faults in an ECC protected mechanism |
| FR2867326A1 (fr) * | 2004-03-02 | 2005-09-09 | St Microelectronics Sa | Dispositif de protection contre l'injection d'erreur dans une bascule synchrone d'un module logique elementaire |
| US7428694B2 (en) * | 2004-03-02 | 2008-09-23 | Stmicroelectronics S.A. | Device for protection against error injection into a synchronous flip-flop of an elementary logic module |
| KR100571758B1 (ko) * | 2004-05-11 | 2006-04-17 | 삼성전자주식회사 | 반전된 패턴 데이터 비교부를 구비하는 반도체 메모리장치 및 이 장치의 병렬 비트 테스트 방법 |
| JP5059524B2 (ja) * | 2007-09-05 | 2012-10-24 | ルネサスエレクトロニクス株式会社 | メモリ制御回路、半導体集積回路、不揮発性メモリのベリファイ方法 |
| JP5278441B2 (ja) * | 2008-12-04 | 2013-09-04 | 富士通株式会社 | 記憶装置および故障診断方法 |
| US20110099439A1 (en) * | 2009-10-23 | 2011-04-28 | Infineon Technologies Ag | Automatic diverse software generation for use in high integrity systems |
| US20110208948A1 (en) * | 2010-02-23 | 2011-08-25 | Infineon Technologies Ag | Reading to and writing from peripherals with temporally separated redundant processor execution |
| US8516356B2 (en) * | 2010-07-20 | 2013-08-20 | Infineon Technologies Ag | Real-time error detection by inverse processing |
| WO2012073071A1 (en) * | 2010-12-02 | 2012-06-07 | Freescale Semiconductor, Inc. | Error correcting device, method for monitoring an error correcting device and data processing system |
| HK1208753A1 (en) * | 2012-05-16 | 2016-03-11 | 英特拉有限公司 | Invoice and freight statement matching and dispute resolution |
| WO2015183245A1 (en) * | 2014-05-27 | 2015-12-03 | Hewlett-Packard Development Company, L.P. | Validation of a repair to a selected row of data |
| WO2017030564A1 (en) | 2015-08-18 | 2017-02-23 | Hewlett Packard Enterprise Development Lp | Post package repair for mapping to a memory failure pattern |
| US11244046B2 (en) | 2019-09-16 | 2022-02-08 | Nuvoton Technology Corporation | Data-sampling integrity check using gated clock |
| US11321457B2 (en) | 2019-09-16 | 2022-05-03 | Nuvoton Technology Corporation | Data-sampling integrity check by sampling using flip-flops with relative delay |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| NL301957A (de) * | 1962-12-24 | |||
| US3949208A (en) * | 1974-12-31 | 1976-04-06 | International Business Machines Corporation | Apparatus for detecting and correcting errors in an encoded memory word |
| US4045779A (en) * | 1976-03-15 | 1977-08-30 | Xerox Corporation | Self-correcting memory circuit |
| US4037091A (en) * | 1976-04-05 | 1977-07-19 | Bell Telephone Laboratories, Incorporated | Error correction circuit utilizing multiple parity bits |
| JPS5381036A (en) * | 1976-12-27 | 1978-07-18 | Hitachi Ltd | Error correction-detection system |
-
1979
- 1979-02-07 JP JP54012275A patent/JPS592057B2/ja not_active Expired
- 1979-10-12 US US06/084,452 patent/US4296494A/en not_active Expired - Lifetime
- 1979-10-24 DE DE2942998A patent/DE2942998C2/de not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| JPS592057B2 (ja) | 1984-01-17 |
| US4296494A (en) | 1981-10-20 |
| JPS55105900A (en) | 1980-08-13 |
| DE2942998A1 (de) | 1980-08-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE2942998C2 (de) | Fehler-Korrektur- und Erkennungs-Anordnung | |
| DE3853206T2 (de) | Verfahren und gerät zur byteschreibfehlerkodierung. | |
| DE69220818T2 (de) | Verfahren und Einrichtung zur Fehlererkennung in Recherspeichern versehen mit Mehrfach-bit-Ausgängen | |
| DE112011100371B4 (de) | Verfahren, Vorrichtung und Computerprogrammprodukt zum Decodieren eines Codeworts | |
| DE3702006A1 (de) | Speichervorrichtung | |
| DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
| DE2030760A1 (de) | Speicherschaltung | |
| DE69619372T2 (de) | Fehlererkennungs- und fehlerkorrekturverfahren | |
| DE2430464A1 (de) | Einrichtung zur fehlergesicherten datenuebertragung | |
| DE3882223T2 (de) | Ausgebreitete Fehlerkorrekturvorrichtung mit Einzel-Paket-Fehlerkorrektur und Doppel-Paket-Fehlerdetektionscoden. | |
| DE2060643B2 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
| DE2554945A1 (de) | Verfahren und schaltungsanordnung zur fehler-erkennung und -korrektur | |
| DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
| DE2357168C2 (de) | Schaltungsanordnung für einen Speichermodul | |
| DE2622184A1 (de) | Fehlerkorrekturverfahren | |
| DE2225841B2 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
| DE102017103347A1 (de) | Verarbeitung von daten in speicherzellen eines speichers | |
| 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 | |
| DE2320354C2 (de) | Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen | |
| EP1444700B1 (de) | Speichertest | |
| DE69216172T2 (de) | Schaltung und Verfahren zur Fehlerdetektion und -korrektur von Datenwörtern mit Prüfbits | |
| DE2655653C2 (de) | Anordnung zur Feststellung der richtigen Zuordnung von Adresse und Speicherwort in einem wortorganisierten Datenspeicher | |
| DE1937259B2 (de) | Selbstpruefende fehlererkennungsschaltung | |
| DE69924012T2 (de) | Verfahren und vorrichtung für speicherdata-fehlerdetektion und speichermodul-fehlerdetektion |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OAP | Request for examination filed | ||
| OD | Request for examination | ||
| D2 | Grant after examination | ||
| 8364 | No opposition during term of opposition |