DE2817864C2 - Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur - Google Patents
Fehlertypdecoder in einer Einrichtung zur FehlerkorrekturInfo
- Publication number
- DE2817864C2 DE2817864C2 DE19782817864 DE2817864A DE2817864C2 DE 2817864 C2 DE2817864 C2 DE 2817864C2 DE 19782817864 DE19782817864 DE 19782817864 DE 2817864 A DE2817864 A DE 2817864A DE 2817864 C2 DE2817864 C2 DE 2817864C2
- Authority
- DE
- Germany
- Prior art keywords
- error
- bit
- bits
- syndrome
- memory
- 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
- G06F11/1016—Error in accessing a memory location, i.e. addressing error
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)
- Error Detection And Correction (AREA)
Description
block mit beispielsweise 64 Datenbits [64B] werden durch den Prüfbitgenerator 2 in an sich bekannter Weise
15 Prüfbits [15B] entsprechend der Η-Matrix nach
Fig. la und Ib abgeleitet. Die Prüfbitbildiing kann mit
Hilfe von EXCLUSIV-ODER-Gliedern. mit Paritätsprüfschaltungen, mit Hilfe entsprechend programmierter
Festwertspeicher oder durch gemischten Einsatz dieser Mittel erfolgen. In dem Ausführungsbeispiel nach
F i g. 2 ist die Einbeziehung des Adreß-Paritätsbits in die Prüfbitbildung vorgesehen (vgl. DE-AS 25 49 392).
Sofern das Adreß-Paritätsbit 3 nicht ohnehin schon zur Verfügung steht, wird es in der Paritätsschaltung 4 aus
der Adresse 5 mit beispielsweise 24 Bits [24B] abgeleitet. Entsprechend der für Bil 80 der Η-Matrix geltenden
Vorschrift wird das Adreß-Paritätsbit 3 bei der Bildung der Prüfbits Co, Ci, Cg, Go und Cm berücksichtigt. Zu
Uttlllll
If III. UIU
μ μι;
ODER-Gliedern vorgesehen. Am Ausgang dieser Gruppe 6 von EXCLUSIV-ODER-Gliedern stehen die
Prüfbits 7 a zur Eingabe in den Speicher zusammen mit dem Datenblock zur Verfügung.
Die beim Lesen eines Datenblocks aus dem Speicher in gleicher Weise wie bei der Dateneinangabe
gebildeten Prüfbits werden mit den aus dem Speicher gelesenen Prüfbits 7 in einer aus EXCLUSIV-ODER-Gliedern
bestehenden Vergleichseinrichtung 8 bitweise verglichen. Das Vergleichsergebnis bildet das Syndrom.
das alle Informationen zur Beurteilung der jeweils vorliegenden Fehlersituation innerhalb des durch den
Fehlersicherungscode vorgegebenen Bereichs enthält.
Vor Einleitung der eigentlichen Korrekturmaßnahmen muß durch eine Analyse des Syndroms im
Fehlertypdecoder festgestellt werden, ob überhaupt ein Fehler aufgetreten ist oder nicht. Zu diesem Zweck wird
das Syndrom einer als Nulldetektor bezeichneten Schaltungsanordnung 9 mit NOR-Funktion zugeführt
an deren Ausgang dann und nur dann ein Signal KFm\i
dem logischen Wert »1« entsteht, wenn das Syndrom den Wert Null hat. was besagt, daß kein Fehler
aufgetreten ist. Darüber hinaus unterscheide! dpr Fehlertypdecoder zwischen 1-Bit-Fehlern, 3-Bit- und
Mehrfach-Fehlern mit ungerader Fehlerzahl (ungeradzahlige Mehrfachfehler), 2-Bit- und Mehrfach-Fehlern
mit gerader Fehlerzahl geradzahlige Mehrfachfehler), Adreßfehlern und Prüfbitfehlern.
In Fig. 2 ist der Nulldetektor 9 als eine von dem
übrigen Fehlerortdecoder JO getrennte Einrichtung dargestellt. Das hat seinen Grund in dem dem
Ausführungsbeispiel einer Fehlerkorrektureinrichtung nach F i g. 2 zugrundeliegenden Konzept. Dieses Konzept
sieht vor, nur gegebenenfalls vorliegende I-Bit-Fehler
unmittelbar, d. h. parallel zu korrigieren. Bei der Feststellung von 2-Bit-Fehlern werden auf Veranlassung
der Fehlerkorrektur-Steuerung 12 suksessive, alle in einer Einrichtung für die 1-Bit-Fehlersyndromerzeugung
13 gespeichern 1-Bit-Fehlersyndrome, abgerufen
und mit dem tatsächlich vorliegenden Fehlersyndrom in einer Überlagerungsstufe 11 überlagert Wenn dabei das
Fehlersyndrom eines gefälschten Bits aufgerufen wird, dann ergibt sich als Ergebnis der Überlagerung das
1-Bit-Fehlersyndrom des zweiten gefälschten Bits. Die
beiden so ermittelten 1-Bit-Fehlersyndrome werden mittels eines Multiplexers 14 nacheinander einem
Fehlerortdecoder 15 zugeführt, der in der Lage sein muß, das zuerst erzeugte Fehlerkorrektursignal so lange
zu speichern, bis das zweite ebenfalls vorliegt. Ein vorzugsweise aus EXCLUSIV-ODER-Gliedern bestehendes
Korrekturnetzwerk führt die Korrektur der auf
dem Leitungsbiindcl 17 ankommenden Daten in an sich bekannter V/eise durch. Beim Auftreten von mehr als
zwei Fehlern gerader Anzahl wird die probeweise sukzessive Überlagerung des tatsächlich vorliegenden
Syndroms mit allen I-Bit-Fehlersyndromen vielfach nicht zu einem zweiten I-Bit-Fchlersyndrom führen.
Dies wird erst nach einem vollständigen Durchlauf erkannt. Aufgrund der begrenzten Leistungsfähigkeit
des Fehlersicherungscodcs können bei mehr als zwei
Fehlern gerader Anzahl an h Syndrome mil dem Wert Null entstehen oder 2-Bit-Fehlersyndrome vorgetäuscht
werden. Im zweiten Fall wird dann eine Doppelfehlerkorrektur eingeleitet, die die Zahl der ursprünglich
vorliegenden Fehler noch erhöht. Dies ist nicht durch das beschriebene Korrektlirverfahren, sondern durch
den Code bedingt.
DaS iiiCr uCnUtZtC rvOrrCfvitirVCriänicn gOni ifiuc.SScM
von der Erkenntnis aus, daß die Wahrscheinlichkeit für
das Entstehen von Fehlern in einem Datenblock mit wachsender Zahl von Fehlern rasch abnimmt. Besonderer
Wert wird daher auf eine rasche Anzeige des fehlerfreien Falles und auf eine rasche Korrektur von
1-Bit-Fehlern gelegt.
In Fig. 3 ist ein Ausführungsbeispiel für den Fehlertypdecoder gemäß der Erfindung in mehr
Einzelheiten dargestellt. Das Syndrom mit den 15 Bits So
bis Sn wird dem schon erwähnten Nulldetektor 9 (vgl.
F i g. 2) zugeführt, der ein Signal KFmM dem logischen
Wert »1« abgibt, wenn alle Syndrombits den Wert Null haben. Dieses Signal KFhat Vorrang vor allen anderen
innerhalb des Fehlertypdecoders erzeugten Signalen und bewirkt die sofortige Freigabe der aus dem
Speicher gelesenen Daten. Über die Überlagerungsstufe 11 (vgl. F i g. 2) die bei der Betrachtung des Fehlertypdecoders
als reine Durchschaltung angesehen werden kann und damit ohne Belang ist, gelangt das Syndrom
auch auf eine Paritätsprüfschaltung PC. Die Paritätsprüfschaltung PC, die in an sich bekannter Weise aus
handelsüblichen Paritätsschaltungen oder aus EXCLUSIV-ODER-Gliedern aufgebaut sein kann, ist so
eingerichtet, daß sie an ihrem Ausgang bei ungerader Parität ein Signal mit dem logischen Wert »1« abgibt.
Bei gerader Parität führt der Ausgang eine logische »0«. Die Ausgangssignale der Paritätsprüfschaltungen PC
und des Nulldetektors 9 werden über ein NOR-Verknüpfungsglied Vl zusammengefaßt. Das NOR-Glied
V\ gibt ein Ausgangssignal MFg dann ab, wenn zwei oder mehr Fehler gerader Anzahl vorliegen. Obgleich
der verwendete Fehlersicherungscode noch in vielen (aber nicht allen) Fällen eine Unterscheidung zwischen
2-Bit-Fehlern und geradzahligen Mehrfachfehlern zulassen würde, wird auf eine solche Unterscheidung
verzichtet, da der dazu erforderliche Aufwand sehr hoch wäre und das gleichzeitige Auftreten von vier oder
mehr Fehlern äußerst unwahrscheinlich ist.
Für die weitere Analyse des Syndroms wird dieses in zwei Teile mit p=8 und q=7 Bits aufgespalten. Für das
erste Teilsyndrom mit 8 Bits sind die Syndrombits S3 und
S8 bis Sn vorgesehen. Das erste Teilsyndrom dient zur
Adressierung eines ersten Festwertspeichers ROMX.
Dieser erste Festwertspeicher ROMi muß mindestens
ebensoviele Speicherplätze enthalten, wie der Fehlersicherungscode Bits umfaßt. Je nach der Zahl der
tatsächlich verfügbaren Speicherplätze ist der in der F i g. 3 nicht dargestellte Adreßdecoder für den
Festwertspeicher ROMi so ausgebildet, daß wenigstens
die ersten Teilsyndrome aller 1-Bit-Fehler, im
folgenden als erste l-Bit-Fehlerteilsyndrome bezeich-
net, wirksame Adressen bilden. Die durch die ersten I-Bit-Fehlerteilsynclronie adressierbaren Speicherplätze
sind mit den zugehörigen /.weiten I-Bil-Fehlerteilsyndromen
mit q-Ί Bits geladen. Zum Beispiel entspricht nach Zeile 28 der Η-Matrix der binären
Adi-'ise OOIOIOOI der Speicherplatzinhalt 1000100.
Einen Sonderfall bildet das dem Adreßparitätsbit zugeordnete I-Bit-Fehlersyndrom. Der mit der betreffenden
Adresse angesprochene Speicherplatz ist mit einer achten Bitzelle ausgestattet, die mit einer »1«
belegt ist. In allen anderen Speicherplätzen fehlt diese zusätzliche Bitzelle oder ist durchgehend mit »0« belegt.
Besitzt der Festwertspeicher ROM 1 überzählige Speicherplätze, was häufig der Fall sein wird, da
vorzugsweise handelsübliche Speicherbausteine (beim 1 -,
Ausführungsbeispiel 256 Speicherplätze zu je 8 Bit)
überzähligen, durch Adressen mit ungeradzahliger Parität adressierten Speicherplätze mit einer »1« nur an
der dem Syndrombit So entsprechenden Stelle und die 2(1
durch Adressen mit geradzahliger Parität adressierten Speicherplätze durchgehend mit »0« zu belegen. Es ist
nämlich nur dann sichergestellt, daß der Vergleicher COMP bei einer drei übersteigenden Fehlerzahl
möglicherweise die Gleichheit der ihm zugeführten Eingangsgrößen feststellt, wenn das betreffende Gesamtsyndrom
eine geradzahlige Parität besitzt. Dies würde aber schon durch die Paritätsprüfschaltung PC
er'.annt werden.
Eine Ausnahme von der Vorschrift, in den Festwertspeicher ROM I die jeweils zweiten I-Bit-Fehlerteilsyndrome
zu laden, gilt nur für die I-Bit-Fehlersyndrome der Prüfbits C0 bis C2 und G bis C7, die alle
gleichermaßen zu der Adresse mit dem Wert Null führen. Der entsprechende Speicherplatz wird entgegen
der sonst gültigen Vorschrift mit »0« geladen.
Die Aufteilung der Syndrombits in Teilsyndrome hängt von dem jeweils eingesetzten Fehlersicherungscode
ab. In jedem Fall muß gewährleistet sein, daß die ersten 1-Bit-Fehlerteilsvndrome eine umkehrbar ein- 4η
deutige Adressierung des Festwertspeichers ROMX
zulassen müssen. Anstelle des in Fig. 1 dargestellten Codes können auch andere Codes verwendet werden,
deren Hammingabstand mindestens sechs beträgt, die eine derartige Aufteilung erlauben und deren 1 -Bit-Feh- 4;
lersyndrome eine ungeradzahlige Parität besitzen.
Die aus dem Festwertspeicher ROM 1 gelesenen Inhalte werden in einem Vergleicher COMP mit den
zweiten Teilsyndromen So bis S2, St bis S7 verglichen.
Stimmt das zweite Teilsyndrom mit dem ausgegebenen so Speieherinhalt überein, gibt der Vergleicher COWeine
logische »1« o'c. Der Vergleicherausgang ist mit einem
EXCLUSIV-ODER-Glied V2 mit einem zusätzlichen,
invertierenden Ausgang verbunden. Es soll zunächst angenommen werden, daß der zweite Eingang des
EXCLUSIV-ODER-Gliedes B 2 auf »0« gehalten wird. Dann wird das Ausgangssignal des Vergleichers COMP
unverändert durchgeschaltet bzw. ohne sonstige Beeinflussung invertiert. Beide Ausgangssignale des EXCLUSIV-ODER-Gliedes
V2 werden mit dem Ausgangssignal der Paritätsprüfschaltung PC und mit dem
invertierten Ausgangssignal des Nulldetektors 9 mit Hilfe der UND-Glieder V3 und V4 bzw. V5 und V6
auf Koinzidenz geprüft. Besteht Koinzidenz mit dem Signal am nichtinvertierenden Ausgang des EXCLU-SIV-ODER-Gliedes
V2, dann liegt ein 1-Bit-Fehler
(EF), im anderen Fall ein nicht korrigierbarer 3-Bit-Fehler
(MFu) vor. In einigen Fällen entsteht am Anzeigeausgang MFudes Fehlertypdecoders auch noch
ein Fehlersigr.al, wenn mehr als 3 Bits ungerader Anzahl gefälscht wurden. Bei mehr als drei Fehlern ungerader
Anzahl kann aber auch ein I-Bit-Fehler vorgetäuscht werden. Dafür ist ebenfalls die begrenzte Leistungsfähigkeit
des Fehlersicherungscodes verantwortlich.
Durch die bisher beschriebene Schaltungsanordnung des Fehlertypdecoders werden Fälschungen der Prüfbits,
deren erste I-Bit-Fehlerteilsyndrome zu von Null
verschiedenen Adressen für den Festwertspeicher ROM 1 führen, nicht von 1-Bit-Fehlern aus dem Bereich
der Datenbits unterschieden. Dies bringt jedoch keine grundsätzlichen Schwierigkeiten mit sich, da spätestens
der Fehlerortdecoder der Korrektureinrichtung erkennt, ob ein Datenfehler oder ein Prüfbitfehler
vorliegt.
Λ r\Ar\t-nr-fn't¥f miirdo γγ>Ιίλπ Koι rl or Prliiiiloriinrr dor
Belegung de j Festwertspeichers ROM\ darauf hingewiesen,
daß die ersten I-Bit-Fehlerteilsyndrome für die Prüfbits Co bis C2, G bis G auf die Adresse Null für den
Festwertspeicher ROM 1 führen. Das hat zur Folge, daß die Fälschung eines dieser Prüfbits durch die bisher
beschriebene Schaltungsanordnung des Fehlertypdecoders zwar als Fehlerereignis festgestellt, aber nicht als
1-Bit-Fehler identifizert wird. Um letzteres ebenfalls zu erreichen, enthält das Ausführungsbeispiel des Fehlertypdecoders
nach F i g. 3 noch einen weiteren (zweiten) Festwertspeicher ROM 2 und einen zweiten Nulldetektor
DET2. Der zweite Festwertspeicher ROM 2 benötigt im Ausführungsbeispiel grundsätzlich nur
sieben I-Bit-Speicherplätze, die mit einer »I« belegt
sind und aufgerufen werden, wenn ein und nur ein Bit des als Adresse anliegenden zweiten Teilsyndroms mit
q=7 Bits der logischen »1« entspricht. Das erste Teilsyndrom mit /J=8 Bits wird in dem zweiten
Nulldetektor DET2 daraufhin untersucht, ob alle Bits dieses Teilsyndroms auf »0« gesetzt sind. In diesem Fall
gibt der zweite Nulldetektor DET2 ein 1 -Signal ab.
Ein UND-Glied V7, das den einzigen Ausgang des zweiten Festwertspeichers ROM 2 und den Ausgang
des Nulldetektors DET2 zusammenfaßt, gibt somit an seinem Ausgang ein Signal mit dem logischen Wert »1«
an den zweiten Eingang des schon erwähnten EXCLUSIV-ODER-Gliedes V2 ab, wenn die beiden
Teilsyndrome zusammen die Fälschung eines der Prüfbits Cq bis Ci oder G bis C1 bezeichnen.
Es wurde schon darauf hingewiesen, daß die Charakterisierung gefälschter Prüfbits als 1-Bit-Fehler
durch den Fehlertypdecoder die richtige Funktion der Fehlerkorrektureinrichtung insgesamt nicht in Frage
stellt, da die PrüfLits nicht über das Korrekturnetzwerk geleitet werden und damit einer Korrektur nicht
unterworfen werden. Indessen wird dadurch die Datenfreigabe ein wenig verzögert, da die Korrektursteuerung,
die für die 1-Bit-Fehlerkorrektor sonst benötigte Zeit abwartet. Diese Zeit kann beim alleinigen
Auftreten von Prüfbitfehlern gemäß einer Weiterbildung der Erfindung eingespart werden. Hierzu sind ein
dritter Festwertspeicher ROM3 und ein dritter Nulldetektor DET3 vorgesehen. Diese beiden Schaltungsglieder
werden analog zu dem zweiten Festwertspeicher ROM 2 und dem zweiten Nulldetektor DET2
betrieben, wobei jedoch die Eingangsinformationen vertauscht sind. Es dienen nämlich als Adressen für den
dritten Festwertspeicher die ersten Teilsyndrome und dem dritten Nulldetektor DETZ werden die zweiten
Teilsyndrome zugeführt Da die Zahl der Bits in den ersten und zveiten Teilsyndromen voneinander ab-
weicht, unterscheidet sich die Zahl der Speicherplätze
im zweiten und dritten Festwertspeicher ROM 2 bzw. ROM 3 und die Zahl der Eingänge der beiden Eingänge
der beiden Nulldetektoren DET2 bzw. DET3 ebenso.
Die Ausgänge des dritten Nulldetektors DET3 und des dritten Fes.«vertspeichers ROM3 werden über ein
UND-Glied VS zusammengefaßt. Eine logische »1« am Ausgang des UND-Gliedes V 8 bedeutet, daß eines der
Prüfbits C). C« bis Cu gefälscht wurde. Die Ausgänge der
beiden UND-Glieder V7 und V8 werden durch das ODER-Glied V9 verknüpft, so daß nunmehr alle
Prüfbitfehler als solche erkennbar sind.
Da durch die Nulldetektoren ÜbT2 und DET3 beide
Teilsyndrome getrennt untersucht werden, ob sie den Wert Null haben, besteht die Möglichkeit, die Ausgänge
dieser Nulldetektoren über ein UND-Glied VlO zu knmhiniprpn Das UND-Glied VIO erzeugt dann ein
Signal KF(kein Fehler), wenn das Gesamtsyndrom Null
ist. Damit kann der Nulldetektor 9 eingespart werden. Die Lösung bringt allerdings den Nachteil einer etwas
verzögerten Bildung des Signals KFund damit auch des Datenfreigabesignals Fr (Fig. 2) mit sich, da sich
nunmehr die Signallaufzeit in der Überlagerungsstufe 11
bemerkbar macht. In der Darstellung nach F i g. 3 würde dann neben dem Nulldetektor 9 auch die gestrichelt
gezeichnete Verbindung entfallen und die strichpunktierte Verbindung an deren Stelle treten.
Es wurde schon mehrfach darauf hingewiesen, daß die Einbeziehung des Adreß-Paritätsbits in den Fehlersicherungscode
empfehlenswert ist. Obgleich der Fehlerortdecoder 15 (F i g. 2) der Fehlerkorrektureinrichtung
eine fehlerhafte Adresse als solche erkennen würde, ist es doch wünschenswert, einen Adreßfehler schon durch
den Fehlerdecoder festzustellen, bevor weitere Korrekturmaßnahmen eingeleitet werden. Wie schon beschrieben
wurde, ist (mindestens) der durch den ersten Teil des I-Bit-Fehlersyndroms für das Adreß-Paritätsbit adressierbare
Speicherplatz im ersten Festwertspeicher ROM 1 um eine Bitzelle erweitert. Diese Bitzelle ist mit
»1« belegt. Der mit dieser Bitzelle verbundene Ausgang des Festwertspeichers ROM\ führt an ein UND-Glied
VIl, dessen zweiter Eingang an den Ausgang des Vergleichers COMP angeschlossen ist. Die UND-Verknüpfung
dient dem Nachweis, daß ein Fehler allein im Bereich der Adresse aufgetreten ist. Das einen
Adreßfehler bezeichnende Signal AF am Ausgang des Fehlertypdecoders kommt schließlich am Ausgang
eines UND-Gliedes V12 zustande, das sicherstellt, daß das Signal AF nur dann entsteht, wenn sich tatsächlich
irgendein Fehler ereignet hat
Die Möglichkeit, mit Hilfe des Fehlertypdecoders die Fälschung des Adreß-Paritätsbits unmittelbar zu erkennen,
!äßt sich noch auf weitere Sonderbits ausdehnen. Voraussetzung dafür ist, daß der Fehlersicherungscode
noch unbenutzte Stellen enthält und daß sich in den 1-Bit-Fehlersyndromen der Sonderbits r Syndrombits
finden lassen, die eine eindeutige gegenseitige Zuordnung dieser Syndrombits zu den Sonderbits ergeben.
Wie ein Vergleich mit der Codetabelle nach F i g. la und Ib zeigt, könnten dies beispielsweise für die Sonderbits
80 bis 83 die Syndrombits S2 und 5» bzw. S8 und 5b sein.
Bei einem Fehlertypdecoder, der die Fälschung von mehr als einem Sonderbit unmittelbar anzeigen soll,
wird das UND-Glied VU in der Schaltungsanordnung nach Fig.3 durch ebensoviele Sonderprüfschaltungen
mit parallelen Eingängen ersetzt, wie Sonderbits vorgegeben sind Das ist in Fig.4 vereinfacht
dargestellt Der erste Festwertspeicher ROM 1 muß nun in allen Speicherplätzen, die durch die ersten I-Bit-Fehlerteilsyndrome
<Jer Sonderbits adressierbar sind, eine achte mit »I« belegte Speicherzelle besitzen. Der
Ausgang dieser achten Speicherzelle und der Ausgang s des Vergleichers COMP führen zu allen Sonderprüfschaltungen
SCi bis SC wobei / < 2r ist. Die vom
Gesamtsyndrom abgezweigten r Syndrombits für die eindeutige Identifizierung eines bestimmten Sonderbits
werden ebenfalls allen Sonderprüfschaltungen SCi bis
in SC,eingegeben.
In die Sonderprüfschaltungen sind Festadressen eingebaut, die jeweils den Identifizierungs- (Syndrom-)-bits
für diejenigen Sonderbits gleich sind, deren Fälschung angezeigt werden soll. Die Festadressen
können beispielsweise durch feste, den jeweiligen binären Signalwerten entsprechende Potentiale dargestellt
werden. Zum Vergleich der Festadressen mit den vorliegenden Identifizierungsbits können ÄQU1VA-LENZ-GIieder
dienen. Durch ein UND-Glied wird geprüft, ob sowohl am Ausgang der achten Speicherzelle
des Festwertspeichers ROM 1 als auch am Ausgang des Vergleichers COMP Signale mit dem logischen
Wert »1« anliegen. Trifft dies zu, dann gibt die ausgewählte Sonderprüfschaltung ein Ausgangssignal
mit dem logischen Wert »1« ab.
Anstelle der getrennten Überprüfung der Ausgangssignale des Festwertspeichers ROM 1 und des Vergleichers
COMP in jeder Sonderprüfschaltung kann auch eine einzige UND-Verknüpfung vorgenommen werden
und das Verknüpfungsergebnis allen Sonderprüfschaltungen zugeführt werden.
Die Erfindung wurde anhand eines Fehlersicherungscodes dargelegt, dessen I-Bit-Fehlersyndrome eine
ungerade Parität besitzen. Es ist darauf hingewiesen,
daß die Erfindung ohne prinzipielle Änderung auch an einen Code angepaßt werden kann, dessen I-Bit-Fehlersyndrome
eine geradzahlige Parität aufweisen.
Bezugszeichenliste | Leitungsbündel für Daten | |
40 | 1 | Prüfbitgenerator |
2 | Adreß-Paritätsbit | |
3 | Paritätsschaltung | |
4 | Leitungsbündel für die Adresse | |
5 | Gruppe von EXCLUSIV-ODER-Gliedern | |
45 | 6 | Aus dem Speicher gelesene Prüfbits |
7 | In den Speicher einzugebende Prüfbits | |
7a | Vergleichseinrichtung zur | |
8 | Syndrombildung | |
Erster Nulldetektor | ||
50 | 9 | Fehlertypdecoder |
10 | Überlagerungsstufe | |
U | Fehlerkorrektursteuerung | |
12 | Einrichtung für die 1 -Bit-Fehler- | |
13 | syndromerzeugung | |
55 | Multiplexer | |
14 | Fehlerortdecoder | |
15 | Korrekturnetzwerk | |
16 | Leitungsbündel für die nicht | |
17 | korrigierten Daten | |
60 | Paritätsprüfschaltung | |
PC | Erster Festwertspeicher | |
ROMi | Zweiter Festwertspeicher | |
ROM2 | Dritter Festwertspeicher | |
ROM3 | Zweiter Nulldetektor | |
65 | DET2 | Dritter Nulldetektor |
DET3 | Vergleicher | |
COMP | NOR-Glied | |
Vl |
'2 | rXCLUSIV-ODER-Ghed |
'3- VS | UND-Glied |
'9 | ODER-Glied |
ΊΟ- V12 | UND-Glied |
G-SC, | Sonderpriifschaltung |
Zusammenfassung |
Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur
Die Erfindung betrifft einen Fehlertypdecoder in iner Einrichtung zur Korrektur von 2-Bit-Fehlern und
zur Erkennung von 3-Bit-Fehlern.
Der aufwandarme Fehlertypdecoder liefert mit kurzer Verarbeitungszeit charakteristische Ausgangssignale
für den fehlerfreien Fall, für 1-Bit-r'ehier, für
2-Bii:-Fehler einschließlich einer Reihe von geradzahligen Mehrfachfehlern, für 3-Bit-Fehler einschließlich
einer Reihe von ungeradzahligen Mehrfachfehlern, für Prüfbitfehler und, wenn erforderlich, für Adreßfehler.
Der Fehiertypdecoder wird vorzugsweise in Verbindung mit einer Einrichtung zur Sicherung von
gespeicherten Daten eingesetzt (Fig. 3).
Hierzu 4 Blatt Zeichnungen
Claims (5)
1. Fehlertypdecoder zur Decodierung eines von Null verschiedenen Syndr->ms zwecks Feststellung
der Art von gegebenenfalL entstandenen Bitfehlern in einem Datenblock mit m Datenbits in einer
Einrichtung zur Fehlerkorrektur, insbesondere zur Korrektur von 1-Bit- und 2-Bit-Fehlern und zur
Erkennung mindestens aller 3-Bit-Fehler in dem aus einem Hauptspeicher gelesenen Datenblock, welche
Einrichtung ferner enthält einen ersten und einen zweiten Prüfbitgenerator zur Ableitung einer ersten
Gruppe von k Prüfbits aus den Datenbits vor der Eingabe in den Speicher bzw. einer zweiten Gruppe )5
von k Prüfbits aus den Datenbits nach der Ausgabe aus dem Speicher, wobei die k Prüfbits mit den m
Datenbits einen verkürzten, systematischen Fehlersicherungscode mit π = m + k Bits bilden, der einen
minimalen Hamming-Abstand von 6 und in der jedem Bit zugeordneten Spalte (Zeile) seiner
Η-Matrix eine ungerade Parität aufweist, sowie eine Anordnung zur Erzeugung des Syndroms mit Ar Bits
durch Vergleich der beiden Gruppen von Prüfbits und einen (ersten) Nulldetektor zur Erkennung des
Wertes Null eines Syndroms, gekennzeichnet durch eine Anordnung (PC) zur Paritätsprüfung
des Syndroms zur Unterscheidung zwischen einer geraden und einer ungeraden Anzahl von Fehlern,
wobei im Fiiile geradzahliger Parität das den Wert
Null eines (vollständigen) Fvndroms anzeigende Signal den Vorrang hat. durch die Aufspaltung der
Syndrome in erste und zweite Teilsyndrome mit ρ bzw. q Bits, wobei die ersten Teilsyndrome zur
eindeutigen Adressierung eines ersten Festwertspeichers (ROM i) dienen, der mindestens eine den Bits
im Fehlersicherungscode gleiche Anzahl von Speicherplätzen besitzt, in denen unter den durch die
ersten 1 -Bit-Fehlerteilsyndrome bestimmten Adressen die jeweils zugehörigen zweiten 1 -Bit-Fehlerteilsyndrome
gespeichert sind, durch einen Vergleicher (COMP), der den Vergleich eines tatsächlich
vorliegenden zweiten Teilsyndroms mit dem durch das zugehörige erste Teilsyndrom gegebenenfalls
adressierten Inhalts des Festwertspeichers (ROM 1) durchführt und bei Übereinstimmung ein Signal mit
dem logischen Wert »1« abgibt, das einen 1-Bit-Fehler kennzeichnet, wenn gleichzeitig das vollständige
Syndrom eine ungeradzahlige Parität aufweist, durch einen zweiten Nulldetektor (DET2) zur
Erkennung des Wertes Null eines ersten Teilsyndroms, durch einen zweiten Festwertspeicher
(ROM2), der durch die zweiten Teilsyndrome adressierbar ist und an seinem einzigen Leseausgang
eine »1« abgibt, wenn ein zweites Teilsyndrom eine und nur eine »1« enthält, durch ein erstes
Verknüpfungsglied (V7) zur UND-Verknüpfung der Ausgänge des zweiten Nulldetektors (DETl) und
des zweiten Festwertspeichers (ROM2), durch ein zweites Verknüpfungsglied (V2) zur EXCLUSIV- h()
ODER-Verknüpfung der Ausgänge des ersten Verknüpfungsgliedes (V7) und des Vergleichers
(COMP), durch ein drittes Verknüpfungsglied (V3) zur UND-Verknüpfung des Ausgangssignals der
Anordnung (PC) zur Paritätsprüfung der Syndrome <,-,
und des Ausgangssignals des zweiten Verknüpfungsgliedcs (V2), durch ein viertes Verknüpfungsglied
(V 4) zur UND-Verknüpfung des Ausgangs der Anordnung zur Paritätsprüfung der Syndrome mit
dem inversen Ausgang des zweiten Verknüpfungsgliedes (V2) und durch ein fünftes Verknüpfungsglied
(Vi) zur NOR-Verknüpfung des Ausgangs der Anordnung zur Paritätsprüfung mit dem Ausgang
des ersten Nulldetektors (9).
2. Fehlertypdecoder nach Anspruch 1, dadurch gekennzeichnet, daß ein dritter Nulldetektor
(DET3) zur Erkennung des Wertes Null eines zweiten Teilsyndroms sowie ein weiterer Festwertspeicher
(R0M3) vorgesehen sind, wobei der weitere Festwertspeicher (ROM3) durch die ersten
Teilsyndrome adressierbar ist und an seinem einzigen Leseausgang eine »1« abgibt, wenn ein
erstes Teilsyndrom eine und nur eine »1« enthält, daß die Ausgänge der beiden genannten Einrichtungen
mit den Eingängen eines UND-Gliedes (VS) verbunden sind, dessen Ausgangssignale mit den
Ausgangssignalen des ersten Verknüpfungsgliedes (V7) durch ein ODER-Giied (V%) zu Signalen zur
Anzeige von Prüfbitfehlern verknüpft sind.
3. Fehlertypdecoder nach Anspruch 2, dadurch gekennzeichnet, daß der erste Nulldetektor (9)
ersetzt ist durch den zweiten und dritten Nulldetektor (DETZ DET3) und durch ein UND-Glied (ViO),
dessen Eingänge mit den Ausgängen des zweiten und dritten Nulldetektors (DET2, DET3) verbunden
sind.
4. Fehlertypdscoder nach einem der Ansprüche 1
bis 3, in einer Einrichtung zur Fehlerkorrektur, bei der die erste und zweite Gruppe von Prüfbits aus
den Datenbits und aus einem von der jeweiligen Hauptspeicheradresse abgeleiteten Paritätsbits gebildet
sind, dadurch gekennzeichnet, daß der erste Festwertspeicher (ROM 1) einen weiteren, durch das
einen Fehler der Hauptspeicheradresse kennzeichnende erste 1-Bit-Fehlerteilsyndrom adressierbaren
Speicherplatz mit einem zusilzlichen Ausgang aufweist, wobei dieser Ausgang ein Signal mit dem
logischen Wert »1« führt, wenn der zusätzliche Speicherplatz aufgerufen wird, und daß ferner ein
UND-Glied (VlI) vorgesehen ist, dessen Eingänge mit dem zusätzlichen Ausgang des ersten Festwertspeichers
(ROMi) und mit dem Ausgang des Vergleichers (COMP) verbunden sind.
5. Fehlertypdecoder nach einem der Ansprüche 1 bis 3, in einer Finrichtung zur Fehlerkorrektur, bei
der die erste und zweite Gruppe von Prüfbits aus den Datenbits und aus einigen Sonderbits gebildet
sind, deren Fälschung unmittelbar signalisiert werden soll, dadurch gekennzeichnet, daß der erste
Festwertspeicher (ROMi) in den Speicherplätzen
eine zusätzliche, mit »1« belegte Speicherzelle besitzt, welche durch die eine Fälschung eines
Sonderbits kennzeichnenden ersten 1-Bit-Fehlerteilsyndrome
adressierbar sind, daß die zusätzlichen Speicherzellen mit einem gerneinsamen zusätzlichen
Ausgang verbunden sind, daß ebensoviele Sonderprüfschaltungen (SG bis SQ) m<t parallelen Eingängen
vorgesehen sind wie Sonderbits, daß die Sonderprüfschaltungen (SC\ bis Sd) unterschiedliche
Festadressen enthalten zum Vergleich mit Identifizierungsbits, die aus den 1-Bit-Fehlersyndromen
der Sonderbits nach dem Gesichtspunkt der eindeutigen Unierscheidbarkeit ausgewählt sind,
daß ferner ein gemeinsames UND-Glied oder jeder Sonderprüfschaltung zugeordnete UND-Glieder zur
Prüfung der Koinzidenz der Signale am Ausgang des
Festwertspeichers (ROM 1) und dem Ausgang des Vergleichers (COMP) vorgesehen sind und daß bei
Koinzidenz die ausgewählte Sonderschaltung ein die Fälschung des betreffenden Sonderbits kennzeichnendes
Signal abgibt.
Die Erfindung bezieht sich auf einen Fehlertypdecoder zur Decodierung eines von Null verschiedenen
Syndroms zwecks Feststeilung der Art von gegebenenfalls
entstandenen Bitfehlern in einer Einrichtung zur Korrektur von 1-Bit- und 2-Bit-Fehlem und zur
Erkennung mindestens aller 3-Bit-Fehler in einem Datenblock.
Eine Einrichtung zum Erkennen und Korrigieren von 2-Bit-FehIern in Codewörtern ist durch die DE-OS
26 57 826 bekannt Die bekannte Einrichtung ist in der Lage, 2-Bit-Fehler gleichzeitig zu korrigieren. Sie
benötigt dazu nicht mehr Zeit als für die Korrektur eines 1-Bit-Fehlers. Die Möglichkeit einer raschen Korrektur
von 2-Bit-Fehlern muß allerdings mit einem beachtlichen
Schaltungsaufwand und einem vergleichsweise hohen Zeitbedarf für die Korrektur von 1-Bit-Fehlern
erkauft werden. Das wirkt sich auch auf einen sehr wichtigen, im folgenden als Fehlertypdecoder bezeichneten
Teil der Gesamteinrichtung zur Fehlerkorrektur aus. Der Fehlertypdecoder dient zur Feststellung zur
Art von gegebenenfalls entstandenen Fehlern und schafft damit erst die Voraussetzung für deren
Korrektur, soweit der verwendete Fehlersicherungscode das zuläßt.
Der Erfindung liegt die Aufgabe zugrunde, einen Fehlertypdecoder anzugeben, der sich durch einen
vergleichsweise geringen Schaltungsaufwand auszeichnet und schon nach kurzer Zeit die gewünschten
Decodierun~sergebnisse liefert.
Gemäß der Erfindung wird diese Aufgabe durch einen Fehlertypdecoder gelöst, der die im kennzeichnenden
Teil des Patentanspruchs 1 angegebenen Merkmale aufweist. Die Unteransprüche betreffen Weiterbildungen
der Erfindung, die nachstehend anhand von in der Zeichnung dargestillten Ausführun^sbeispielen näher
beschrieben wird. Es zeigt
Fig. la und Ib die Η-Matrix des verwendeten verkürzten BCH-Codes,
F i g. 2 die schematischo Darstellung einer Fehlerkorrektureinrichtung,
Fig.3 ein Ausführungsbeispiel des Fehlertypdecoders gemäß der Erfindung, und
Fig.4 eine Schaltungsanordnung zur Erweiterung des Ausführungsbeispiels nach F i g. 3.
Der erfindungsgemäße Fehlertypdecoder ist ein Teil einer Einrichtung zur Fehlererkennung und Fehlerkorrektur,
die mit einem Fehlersicherungscode arbeitet, der zur Klasse der Bose-Chaudhuri-Hocquenghem-Codes,
kurz BCH-Codes, gehört. Damit 2-Bit-Fehler korrigierbar und alle 3-Bit-Fehler erkennbar sind, muß der
Fehlersicherungscode einen minimalen Hammingabstand von 6 besitzen. Die Fig. 1 a und Ib zeigen in Form
einer Tabelle einen Teil der sogenannten H-Matrix eines solchen Codes. Die Zeilen 1 bis 15 bezeichnen die
Prüfbits Co bis Qa- Den Datenbits sind die Zeilen 16 bis
79 zugeordnet. Die 7r:len 80 bis 83 sind einem Adreß-Paritätsbit AP und evtl. weiteren Sonderbits
vorbehalten, worauf später noch näher eingegangen wird. Alle in den Zeile : 16 bis 79 bzw. 83 mit »1«
besetzten Stellen werden spaltenweise modulo-2 addiert. Das Ergebris dieser Addition bildet jeweils das
betreffende Prüfbit, das durch eine »1« in einer der Zeilen 1 bis 15 gekennzeichnet ist. Geht man wie üblich
davon aus, daß in einem fehlerfreien Fall das Syndrom den Wert Null besitzt, dann kann aus den Zeilen der
Tabelle unmittelbar der Wert des Syndroms für ein gefälschtes Bit abgelesen werden. Die Verteilung der
Werte Null und Eins in den einzelnen Zeilen entspricht
ίο dann unmittelbar der Zuordnung von logischen
Binärwerten zu den einzelnen Syndrombits Sb bis Su.
Der in dem vorliegenden Fall eingesetzte Code ist so aufgebaut, daß alle den Datenbits (und evtl. dem
Adreß-Paritätsbit) zugeordneten I-Bit-Fehlersyndrome in gleicher Weise so in Teilsyndrome aufgespalten
werden können, daß mit den Syndrombits eines Teilsyndroms mindestens so viele Speicherplätze
eindeutig adressierbar sind, als der Code Bits umfaßt. Ein BCH-Code, der um diese Bedingungen zu erfüllen,
verkürzt ist und die Korrektur von 2-Bit-Fehlern und die
Erkennung mindestens aller 3-Bit-Fehler zuläßt, kann mit 15 Prüfbits insgesamt 101 Bits enthalte.-.. Die
Beschränkung auf 83 Bits gemäß der Tabelle ist also nicht aus prinzipiellen Gründen erfolgt, sondern
entspricht der aus der Praxis kommenden Forderung nach Sicherung von 64 Datenbits und gegebenenfalls
einiger zusätzlicher Sonderbits.
Der Vollständigkeit halber ist noch darauf hinzuweisen,
daß die drei in der Tabelle am weitesten rechts
jo stehenden Spalten im Bereich der Datenbits (Zeilen 16
bis 79) eine reine Binärcodierung der Syndrombits So, S\ und Sz erkennen lassen. Damit wird der Decoder für die
Fehlerortbestimmung eines Einzelfehlers vereinfacht, weil die Feststellung des Datenbits mit dem gefälschten
Datenbit und die Feststellung des gefälschten Datenbits innerhalb dieses Bits voneinander unabhängig werden.
Der Tabelle nach Fig. la und Ib ist ferner zu entnehmen, daß alle I-Bit-Fehlersyndrome, die den
einzelnen Zeilen der Tabelle entsprechen, eine ungeradzahlige Parität aufweisen. 2-Bit-Fehlersyndrome, die
durch Überlagerung von zwei 1-Bit-Fehlersyndromen entstehen, haben dementsprechend eine gerade Parität.
Analog dazu besitzen 3-Bit-Fehlersyr.drome wieder eine ungerade Parität. Dieser an sich einfache
Zusammenhang wird in dem erfindungsgemäßen Fehlertypdecoder ausgenutzt, um zunächst eine grobe
Unterscheidung hinsichtlich der Zahl der aufgetretenen Fehler zu erhalten. Einen Sonderfall bildet dabei
natürlich ein Syndrom mit dem als geradzahlig eingestuften Wert NuI!. Jedes Syndrom wird daher
gesondert überprüft, ob alle seine Bits Null sind. Ist das der hall, dann veranlaßt ein Signal KF(kein Fehler) die
sofortige Freigabe des gesicherten Datenblocks und verhindert gleichzeitig die Einleitung einer Routine, die
beim Vorliegen eines 2-Bit-Fehlers ablaufen würde.
Zur Erleichterung der Übersicht ist in F i g. 2 eine Fehlerkorrekturer.richtung schematisch dargestellt.
Das Ausfiihrungsbeispiel nach Fig. 2 ist darauf abgestellt, daß die zu sichernden Daten in einen
Speicher eingegeben und wieder aus ihm ausgelesen werden. Mit geringfügigen Änderungen könnte die
Fehlerkorrektureinrichtung auch an die bei einer Datenübertragung ',erliegenden Verhältnisse angepaßt
werden. Da dies jedoch den Fehlertypdecoder nur wenig beeinflußt, wird darauf nicht näher eingegangen.
Aus dem zur Eingabe in den (in der Fig. 2 nicht dargestellten) Speicher anstehenden, über das Leitungsbündel 1 der Korrektureinnchtune zueeführten Daten-
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782817864 DE2817864C2 (de) | 1978-04-24 | 1978-04-24 | Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782817864 DE2817864C2 (de) | 1978-04-24 | 1978-04-24 | Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2817864B1 DE2817864B1 (de) | 1979-08-16 |
DE2817864C2 true DE2817864C2 (de) | 1980-04-24 |
Family
ID=6037847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782817864 Expired DE2817864C2 (de) | 1978-04-24 | 1978-04-24 | Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2817864C2 (de) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4509172A (en) * | 1982-09-28 | 1985-04-02 | International Business Machines Corporation | Double error correction - triple error detection code |
-
1978
- 1978-04-24 DE DE19782817864 patent/DE2817864C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2817864B1 (de) | 1979-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69116919T2 (de) | Selbsttestverfahren für inhaltsadressierbare Speicher | |
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE2425823A1 (de) | Einrichtung zur fehlererkennung und fehlerkorrektur | |
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE2722124A1 (de) | Anordnung zum feststellen des prioritaetsranges in einem dv-system | |
DE102007006612B4 (de) | Verfahren, Endgerät und Computerprogrammprodukt zum Erhöhen der Verfügbarkeit eines globalen Navigationssystems | |
EP1246033A1 (de) | Verfahren zur Überwachung konsistenter Speicherinhalte in redundanten Systemen | |
DE102011087634B9 (de) | Vorrichtung und verfahren zum erfassen eines fehlers in einem codierten binärwort | |
CH658137A5 (de) | Steuereinrichtung mit einem speicher und einer schnittstelle, insbesondere fuer werkzeugmaschinen. | |
DE2053836C3 (de) | Anordnung zur Korrektur von Fehlerbündeln in binär codierten Datengruppen | |
EP0615211B1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
DE2320354C2 (de) | Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen | |
DE1959231A1 (de) | Verfahren und Vorrichtung zur Korrektur von bis zu drei Fehlern eines aus 23 Bits bestehenden Codewortes | |
DE3786853T2 (de) | Gerät zur Erkennung und Klassifizierung von Steuerwortfehlern. | |
DE102018124296A1 (de) | Kompensation von lesefehlern | |
DE102004046618A1 (de) | Schaltungsanordnung zum Analog/Digital-Wandeln | |
DE2817864C2 (de) | Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur | |
EP2539899B1 (de) | Verfahren zur überprüfung der funktionsfähigkeit eines speicherelements | |
DE3716594C2 (de) | Schaltungsanordnung für Fernmeldeanlagen, insbesondere Fernsprechvermittlungsanlagen, mit Speichereinrichtungen, in denen gespeicherte Informationsportionen auf ihre Richtigkeit überprüft werden | |
DE102020001561A1 (de) | Medizingeräteanordnung mit einem Prüfmodul | |
DE2817863C (de) | Einrichtung zur Fehlerkorrektur | |
DE2247037C2 (de) | Verfahren und Einrichtung zur Analyse des Informationsgehaltes nacheinander angebotener Informationsgruppen | |
DE2838005C2 (de) | Verfahren und Einrichtung zur Korrektur von 2-Bit-FehIern in Codewörtern | |
EP0012828A1 (de) | Schaltungsanordnung zur Korrektur von bytestrukturierten Fehlern | |
AT396195B (de) | Schaltungsanordnung zur eingabe von information in einen rechner |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8339 | Ceased/non-payment of the annual fee |