DE2817864C2 - Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur - Google Patents

Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur

Info

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
Application number
DE19782817864
Other languages
English (en)
Other versions
DE2817864B1 (de
Inventor
Rudolf Dipl.-Ing. 8000 Muenchen Kaiserswerth
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19782817864 priority Critical patent/DE2817864C2/de
Publication of DE2817864B1 publication Critical patent/DE2817864B1/de
Application granted granted Critical
Publication of DE2817864C2 publication Critical patent/DE2817864C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1012Adding 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/1016Error 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)

Patentansprüche:
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-
DE19782817864 1978-04-24 1978-04-24 Fehlertypdecoder in einer Einrichtung zur Fehlerkorrektur Expired DE2817864C2 (de)

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)

* Cited by examiner, † Cited by third party
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

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