DE2908373A1 - Einrichtung zur codierung und decodierung von pruefbits - Google Patents
Einrichtung zur codierung und decodierung von pruefbitsInfo
- Publication number
- DE2908373A1 DE2908373A1 DE19792908373 DE2908373A DE2908373A1 DE 2908373 A1 DE2908373 A1 DE 2908373A1 DE 19792908373 DE19792908373 DE 19792908373 DE 2908373 A DE2908373 A DE 2908373A DE 2908373 A1 DE2908373 A1 DE 2908373A1
- Authority
- DE
- Germany
- Prior art keywords
- channel
- error
- syndrome
- diagonal
- channels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
lw/eb
Einrichtung zur Codierung und Decodierung von Prüfbits
Die Erfindung betrifft eine Einrichtung zur Codierung und Decodierung
von Prüfbits gemäß Oberbegriff des Anspruchs 1.
In Magnetbandspeichersystemen haben Industrienormen die Bandgröße,
das Datenformat und die Aufzeichnungsdichte bestimmt. Herkömmlicherweise werden 1/2 Zoll breite Bänder für die Aufzeichnung
von neuen Spuren verwendet. Dabei werden die Daten üblicherweise bit-parallel und byte-seriell auf dem Band aufgezeichnet.
Dies gestattet die Verwendung der gleichen Neunspurköpfe sowohl für die Aufzeichnung als auch das Auslesen der
Daten von Bändern mit verschiedenen Aufzeichnungsdichten.
Ein Magnetband ist weich und biegsam. Im Gegensatz zu anderen Formen beweglicher magnetischer Speichermedien, wie etwa starrer
Magnetplatten, verlangen Magnetbandspeichersysteme, die
Bewegung des Bandes in nicht einheitlichem Kontakt mit einem oder mehreren festen Köpfen, während die Daten aufgezeichnet
oder abgelesen werden. Lose Staubteilchen zwischen Kopf und Band oder Flecken auf dem Band mit fehlendem Eisenoxid führen
ur Abschwächung der Signalamplituden und zu Datenfehlern in einem oder mehreren Kanälen. Unter solchen Umständen kann der
Lesetaktgeber im fehlerhaften Kanal außer Synchronisation mit den Daten in anderen Kanälen kommen und demzufolge kann die
Aufzeichnung und Wiedergabe von Daten über sehr lange Strecken
fehlerhaft sein. Insofern stellt die gestörte Länge des Bandes ein Datenkorrekturproblem dar, daß sich von der Einzelstörung
und dem Störungsbündel unterscheidet. Solche durch Einzelstörungen oder Störungsbündel ausgelöste Fehler sind im allgemei-
SA 977 026 909838/0681
ten von begrenzter Dauer. Die Rekonstruktion der betroffenen Jäten ist durch zyklische Fehlerprüfcode möglich. Diese Code
sind jedoch sowohl in der Theorie als auch in ihrer Verwendung
!ehr kompliziert (siehe z. B. US-PS 3 868 632).
Die übliche Praxis besteht darin, zwei von neun Kanälen zur Aufzeichnung redundanter Information über die übrigen sieben
Kanäle des Satzes zu reservieren. Dadurch können bis zu zwei fehlerhafte Kanäle nachträglich korrigiert werden. Neben der
bereits oben genannten US-Patentschrift kann hierzu auch auf die US-Patentschrift Re 28 923 verwiesen werden. In diesen bekannten
Einrichtungen muß jedoch die aufgezeichnete Information in aufeinanderfolgende Blöcke unterteilt und müssen zu jepem
dieser Blöcke mit Hilfe der komplizierten zyklischen Codes 'Prüfbits errechnet werden. Die Prüfbits werden nach den Daten
aufgezeichnet. Beim Auslesen der Daten werden die Prüfbits nochmals errechnet und verglichen. Dies resultiert in einem
hohen Aufwand sowohl an Einrichtungen als auch an Zeit. Da die Prüfbits jeweils nur aus einem begrenzten Datenblock errechnet
wurden, können sie nur hinsichtlich dieses Blockes und nicht
auch zur Fehlererkennung und -Korrektur hinsichtlich anderer Blöcke verwendet werden.
Im IBM Technical Disclosure Bulletin, Band 14, Mai 1972, Seite 38 bis 46 ist eine Prüfeinrichtung mit einem vertikalen Paritätsbit und einem einzigen diagonalen Paritätsbit beschrieben.
Die beiden Paritätsbits werden in zwei Redundanzkanälen aufgezeichnet und es können zwei fehlerhafte Kanäle mit dieser bekannten
Einrichtung korrigiert werden. Auch diese bekannte Einrichtung verschafft also nicht die gewünschten Möglichkeiten,
wie z. B. die Fähigkeit drei fehlerhafte Kanäle korrigieren zu können.
Der Erfindung liegt daher die Aufgabe zugrunde. Fehler großer
Länge und in mehreren Kanälen mit einfachen Paritätsprüfbits
SA 977 026 903838/ÜS8t
erkennen und korrigieren zu können.
Diese Aufgabe wird erfindungsgemäß durch die im Kennzeichen des Hauptanspruches beschriebene Einrichtung gelöst.
Dadurch, daß die Erfindung im Gegensatz zu den bekannten Einrichtungen
nicht die komlizierten zyklischen Codes verwendet, wird eine einfache Einrichtung und eine rasche Arbeitsweise erzielt.
Beim Auslesen der Daten werden die Prüfbits zugleich mit den Daten ausgelesen und nicht erst am Ende eines Blockes,
wie in den bekannten Einrichtungen. Dadurch kann die Arbeitsweise direkter und rascher gestaltet werden. Mit der erfindungs
gemäßen Einrichtung sind bis zu drei fehlerhafte Kanäle korrigierbar. Obwohl die Erfindung speziell für Fehler größerer
änge geeignet ist, können mit der erfindungsgemäßen Einrichtung auch kürzere Fehler korrigiert werden. Die Erfindung gestattet außerdem zum Auffinden eines Fehlers die Verwendung
äußerer Zeigerinformation, d.h. anderweitig erhaltenen Hinweisen auf einen fehlerhaften Kanal. Die Verwendung solcherer
äußerer Zeiger ist jedoch nicht unbedingt notwendig.
Sine vorteilhafte Weiterbildung der Erfindung ist dadurch gekennzeichnet,
daß die zwei weiteren Paritätsbits entweder in zwei weiteren Redundanzkanälen oder in einem weiteren Redunlanzkanal
und einem in regelmäßigen Abständen quer zur Kanalrichtung gespeicherten Prüfbyte oder aber in einem Paar in regelmäßigen
Abständen quer zur Kanalrichtung gespeicherten Prüfaytes gespeichert werden.
üierdurch wird eine flexible Anpassung an das erforderliche
Datenformat erzielt.
iieitere vorteilhafte Ausbildungen der Erfindung sind den rest-Lichen
Unteransprüchen zu entnehmen.
SA 977 026 909838/0881
Die Erfindung soll nun anhand eines in den Figuren gezeigten lUsführungsbeispieles näher beschrieben werden. Es zeigen:
Fig. 1 in einem Blockschema ein paralleles Vielkanal-Speichersystem
mit einem Paritätscodierer für das Schreiben von Daten und einem Paritätsdecodierer für die
Datenfehlerprüfung beim Lesen von Daten;
'ig. 2a Aufzeichnungsformate der Daten und der Prüfbits in
bis 2d einzelnen Kanälen;
ig. 3 einen diagonalen Paritätscodierer;
ig. 4 eine Logikeinrichtung des Decodieres zur Syndromerzeugung,
zur Syndrommodifikation und zur Erzeugung der Korrektursignale;
'ig. 5 einen Fehlerkorrigierer des in Fig. 4 gezeigten Decodierers;
Fig. 6a eine Logikeinrichtung für den ersten internen Zeigegenerator
und
E1Ig. 6b einen zweiten Zeiger generator für einen Stand des
c ersten Zeigegenerators von ungleich Acht und von gleich Acht.
?ig. 1 zeigt in Form eines allgemeinen Blockdiagrammes ein
paralleles Vielkanalspeichersystem, das die vorliegende Erfindung enthält. Information von der Informationsquelle 1 wird
an die Puffersteuerung 3 gegeben. Die Steuerung koordiniert
3ie Formatierung der Daten, sichert die notwendige Paritätscodierung und sorgt dafür, daß besagte, formatierte und nach
sä 977 026 909838/0681
Parität codierte Daten in parallelen Kanälen im Speicher 5 aufgezeichnet
werden. Entsprechend liest die Puffersteuerung 7 im betätigten Zustand vorher auf den parallelen Kanälen aufgezeich
nete Daten, formatiert sie neu und decodiert die Daten, um sie an einen Informationsempfänger (11) weiterzugeben.
Im Betrieb wird Information vom Puffer 3 über die Bahn 2 einem
Paritätsprüfcodierer 9 zugeführt, wo Paritätsprüfbit sequentiell
für Informationssignalsätze, sogenannte Bytes, erzeugt werden. Nachdem die Paritätsprüfbits zusammen mit den Informationssignalen
aufgezeichnet sind und beide vom Speicher 5 zurückgelesen wurden, kann jeder per Parität in der Information
erkannte Fehler durch Ableitung von KorrekturSignalen unter Ausnutzung von Syndromen und Zeigern und Kombination der Korrektursignale
mit der gelesenen Information korrigiert werden. Die Ableitung der Syndrome und Korrektursignale erfolgt im
Decodierer 19. Der Decodierer leitet die Syndrome anhand von Prüfbits ab. Die Prüfbits erfassen aufgezeichente Informationsoder Datensignale in sogenannter vertikaler Richtung und in
der Richtung eines dazu positiv oder negativ quer geneigten Kanales.
Nach Darstellung in Fig. 1 steht der Decodierer 19 in Wechselwirkung
mit dem Puffer 7 beim Empfang von Daten über die Bahn 21 und bei der Rückgabe decodierter Daten über die Bahn 33.
In diesem Zusammenhang wird auf das logische Diagramm in Fig. 4 verwiesen, das die Syndromerzeugung, - Modifikation und die
rzeugung von Korrektursignalen im Decodierer darstellt. Über
die Decodierereingangsbahn 21 angelegte Daten werden von den Elementen 23, 24 und 27 verarbeitet. Grundsätzlich werden Da-«
ten mit Fehlern auf den parallelen Spuren auf parallele Leitungen der Bahn 21 gegeben und an den Syndromgenerator 23 geleitet.
Dieser wiederum gibt die Daten weiter an den Syndromprozessor 25. Korrektursignale e„(i) vom Syndromprozessor 25
für einen Kanal (i = j) auf der Bahn 29 werden an den Fehler-
SA 977 026 909838/0881
_9_ 2308373
korrektor 27 gegeben. Für die Korrektur von zwei Kanälen werden
Signale em(i) und e_(j) über die Bahnen 29 und 35 geleitet.
Die kontinuierliche Syndrommodifikation erfolgt durch Rückkoppelung
des Korrekturelementes auf den Syndrommodifizierer
über die Bahn 601, so daß eine Wechselwirkung der neuen Syndrominformation
entsteht, die an den Eingang des Syndromprozessors 25 vom Syndromgenerator 23 angelegt wird.
In den Fign. 2a bis 2c sind verschiedene Formate zur Aufzeichnung neun paralleler Kanäle auf einem Band dargestellt. Der
Kanal 8 ist laut Fig. 2a reserviert zur Aufzeichnung der Parität über den anderen 8 Kanälen. Ein solches Paritätsbit ist
bekannt als vertikales Redundanzprüfbit. Jedes Byte B besteht
aus 8 Bits und das vertikale Redundanzprüfbit (VRC-Bit) wird
gleichzeitig in jedem der 9 Kanäle aufgezeichnet.
Sfenn in Fig. 2a mit B (k) das iti-te Bit im k-ten Kanal von links
nach rechts bezeichnet wird und B ein auf einem Speichermedium wie etwa einem Magnetband auf den parallelen Kanälen 0 bis
aufgezeichnetes Byte aus 8 Bits darstellt, dann kann man B ausdrücken wie folgt:
Bm= I Bm<°>' V1>' Bm(2>
<
worin m = O bis M und M= 8 χ N.
B (8) ist die Byteparität von B , aufgezeichneten auf dem Kanal P.
ä. h. 7
V8) -
'(Ein Kreis über dem Summenzeichen bezeichnet eine Summe Modu-
SA 977 026 90 9 8 3 8/0681
5, Bg, B16, B34 ... BgN sind Prüfbytes, von denen jedes eine
diagonale Paritätsprüfung für sieben Datenbytes auf seinen bei den Seiten liefert, so daß für jedes m gilt
7—k k
BnOc)- = ^1 Bm_t(k+t) Θ ^1 Bm+t(k-t) (3)
An den beiden Enden des Datensatzes existieren die Bytes B-1,
B_2, ... B_7 und die Bytes Bgm+1, Bgm+2, ... Bgm+7 nicht und
werden bei der Berechnung der Gleichung (3) als lauter Nullen angesehen. Die Paritätsprüfgleichungen (2) und (3) können somit
neu geschrieben werden
Q B (k) = O (4)
k=O
<2 B ,(k) = O (5)
k=0 m"K
Die gelesenen Bytes können durch Fehler gestört sein. Wenn die
aritätsgleichungen (4) und (5) nicht erfüllt sind, nennt man
das Ergebnis das Fehlersyndrom.
In dem in Fig. 2b und 2c dargestellten Format ist der Kanal O
ebenfalls für die Paritätscodierung reserviert, und zwar für die Aufzeichnung der diagonalen Paritätsprüfung in der positiv
geneigten Richtung. In Fig. 2d sind diagonale Paritätsprüfungen in positiv und negativ geneigter Richtung dargestellt. Die
ormate der Fign. 2b und 2c sind auf die Korrektur von zwei Spuren ausgerichtet, während die Fig. 2d die Korrektur von drei
jpuren betrifft.
η Fig. 3 ist der Codierer 9 zur Erzeugung der erforderlichen aritätsprüfungen für das in Fig. 2a dargestellte Format geeigt.
Alle vertikalen Paritätsprüfungen werden durch eine ein-
977 026 909 8 3 8/0681
2S08373
fache Modulo-2-Addition der Kanalbitwerte in vertikaler Richtung (quer zum Kanal) implementiert. Da besagte vertikale Paritätsprüfungen
ausführlich in der erwähnten US-Patentschrift beschrieben sind, werden sie hier nicht weiter behandelt, sondern
nur der Teil des Codierers 9 dargestellt, der die diagonale
Paritätsprüfung vornimmt. Er besteht aus einem Schieberegistercodierer, der die diagonale Paritätsprüfungen zur nachträglichen
Aufzeichnung in der Puffer-Steuerung in den quer über die
pur liegenden Bytepositionen BQ, Bg, B^6, ... BgN erzeugen
kann, um das Format der Fig. 2a zu erfüllen. Die vertikalen Paritätsprüfungen werden auf Kanal 8 aufgezeichnet (Spur P).
Der diagonale Paritätsprüfteil des Codierers 9 besteht aus einem siebenstufigen Flip-Flop-Schieberegister FF1, FF2r ... FF6
und FF7. Zwischen jede Schieberegisterstufe ist ein Antivalenzglied
(EXCLUSIV-ODER Glied) mit mehreren Eingängen und einem Ausgang geschaltet. Jedes der Antivalenzglieder 195, 197, 199,
201, 203 und 205 koppelt nicht nur eine Registerstufe mit einer
anderen (FF3 mit FF2), sondern ist auch mit einem Eingang an ein Bit angeschlossen, das diagonal über den Kanälen des Satzes
liegt. Das Antivalenzglied 193 schließt beispielsweise B m+.(0)
ab, während das Antivalenzglied 205 das Bit von der Position B+.(6) empfängt. Der Bitwert von der Position B m+.(7) treibt
die Stufe FF7 direkt. Dieser diagonale Schieberegister-Paritäts codierer implementiert die Gleichungen (3) und (5). In der Darstellung
ist 0 ein Byte aus lauter Nullen.
Die Prüf bytes BQ, Bg, B.., usw. werden in einem kontinuierlichen
Schiebe- und Eingabeprozeß bitweise am Ausgang des Schieberegisters 6 erzeugt, während das 0 Byte und das Datenbyte in
der dargestellten Reihenfolge eingegeben werden. Das Prüfbyte B0 wird zuerst erzeugt, als nächstes Bg usw. Das bedeutet, daß
zur Erzeugung von B , wobei m=0, 8, 16, 24 usw. ist, die Bytes in der Reihenfolge 0, Bm+1, B m+2, ... Bm+7 in das Schieberegister
geschoben und eingegeben werden müssen. Wenn B. eingegeben wird, wird das i-te Bit von B am Ausgang 6 des Registers
SA 977 026 90983 8/0881
9 erzeugt. Soweit kann die Codierung mit der Kombination einer vertikalen Paritätsprüfung und einer diagonalen Paritätsprüfung
an die Korrektur von bis zu zwei fehlerhaften Kanälen angepaßt werden.
Aufzeichnungsformat und Prüfung für Korrektur von drei fehlerhaften
Kanälen
In Fig. 2d ist ein Format gezeigt, in dem bis zu drei fehlerhafte bekannte Kanäle von T Kanälen korrigiert werden können.
Wie noch erklärt wird, braucht man dazu nur 2(T-1) Prüfbits zusätzlich zu den drei Prüfkanälen.
Bei dem in Fig. 2d dargestellten Format soll Zm(t) das m-te
Bit im t-ten Kanal bezeichnen. Es gibt T+2 Spuren mit der Numerierung von O bis T+1. Der Bitpositionswert m läuft von
1 bis M. Die Kanäle O, T und T+1 sind für die Aufzeichnung
von Paritätsprüfungen reserviert. Jedes Prüfbit im Kanal T+1 stellt die Modulo-2-Summe der Bits mit derselben Positionsnummer
m in jedem der übrigen T+1 Kanäle dar. Diese Prüfung wird vertikale Paritätsprüfung genannt, die entsprechende Codiergleichung
lautet:
Zn, (T+1) = Q Z (t) (A1)
t=O
Jedes Prüfbit im Kanal O liefert eine diagonale Paritätsprüfung
mit positiver Richtung gemäß Darstellung in Fig. 2d. Ähnlich liefert jedes Prüfbit im Kanal T eine diagonale Paritätsprüfung
mit negativer Neigung. Die m-te Diagonalprüfung mit positiver Neigung, genannt Prüfung dm + ist gegeben durch die Codierglei-"
chung:
Vo) =
SA 977 026 909838/0681
Die m-te Diagonalprüfung mit negativer Neigung, genannt d
ist gegeben durch die Codiergleichung:
T
Z_(T) = β Z . (T-t) (A-3)
Z_(T) = β Z . (T-t) (A-3)
Es ist zu beachten, daß am Anfang des Datensatzes die Berechnungen
der diagonalen Prüfbits für die Positionen O bis T-I
Datenbitwerte von leeren Positionen betreffen (mit negativen Positionszahlen). Diese Datenbitwerte werden der Einfachheit
halber als binäre Nullwerte angesehen. Am Ende des Datensatzes werden die Prüfkanäle O und T um T-I Bits erweitert, um
Diagonalprüfungen aller Bits in jedem Kanal zu bekommen. Die Prüfbits in diesen erweiterten Positionen betreffen auch
einige Datenbitwerte von leeren Positionen, die ebenfalls als binäre Nullwerte angenommen werden.
Die Korrektur codierter Daten
Das Hauptziel der Erfindung ist die Erkennung und Korrektur von
bis zu drei bekanntlich fehlerhaften Kanälen in einer gegebenen Gruppe. Anschließend werden zuerst die Fehlersyndrome und
dann der Decodierprozeß beschrieben. Zur Beschreibung des Decodierprozesses gehören separate Beschreibungen der Korrektur
von zwei fehlerhaften Kanälen mit Zeigern und einem fehlerhaften Kanal ohne Zeiger im Zusammenhang mit den in den Fign. 2a
bis 2c gezeigten Formaten. Daran anschließend wird die Korrektur von drei Kanälen mit Zeigern und die Korrektur eines Kanals
ohne Zeiger unter der Verwendung des in Fig. 2d gezeigten Formates beschrieben. Schließlich wird noch Bezug genommen auf die
Rückwärts-Lesesymmetrie, die Fehlerkorrekturen beim Lesen in
beiden Richtungen, nämlich vorwärts und rückwärts, gestattet.
SA 977 Q26 90 3838/0 681
Gelesene Bytes können Fehler enthalten. Wenn die in den Gleichungen
(4) und (5) aufgezeichneten Paritätsprüfbedingungen nicht erfüllt sind, wird das Ergebnis Fehlersyndrom genannt.
in von Null verschiedenes Syndrom ist also eine klare Anzeige für das Vorhandensein eines Fehlers. Wenn B das m-te Byte aus
acht Bits ist, das vom Speicher gelesen ist und B (8) die
Byteparität, wie sie vom Medium gelesen ist, dann wird das m-te vertikale Paritätsprüfsyndrom Sv dargestellt nach der
Relation
- 14 Syndrombestimmung für die Korrektur von zwei Kanälen
290837a
Das m-te diagonale Paritätsfehlersyndrom Sdm ist dann
7
Sdm = (3 Bm (k) (7)
Sdm = (3 Bm (k) (7)
m k=o m'k
Die Modulo-2-Differenz zwischen dem gelesenen B m(k) und dem
geschriebenen Β~(1Ο ist. das Fehlermuster em(k) in der k-ten
Position des m-ten Byte.
Vk) - Bm{k) Θ em(k)
Wenn die Gleichungen (4) und (6) und die Gleichungen (5) und
Wenn die Gleichungen (4) und (6) und die Gleichungen (5) und
(7) kombiniert werden und e (k) für Bj11(IO ® B mfe) eingesetzt
wird, dann ergibt sich
8 7
Sv = Θ [ B (k) Φ B (k) I = ö e Ck) (9)
m k=O m m k=O m
Durch Verarbeiten der Syndrome Sv und Sd können jetzt Fehler in einer unbekannten Spur oder bis zu zwei als fehlerhaft
bekannten Spuren korrigiert werden.
977 026 909 8 3 8/ 0 681
- 15 Syndrombestimmung für die Korrektur von drei Kanälen
Die Syndromverarbeitung für das in Fig. 2d gezeigte Format folgt ähnlichen Linien, wie die Verarbeitung für das in Fig. 2a
gezeigte Format. Zur Unterscheidung zwischen aufgezeichneten und gelesenen Daten, Syndromen und Korrektursignalen im Falle
der Korrektur von drei Spuren (Fig. 2d), wird für den Rest die-
er Beschreibung eine andere Bezeichnung gewählt. Danach bezeichnet
Z_(t) den Bitwert, der dem aufgezeichneten Z(t) entspricht.
Diese gelesenen Bits können Fehler enthalten. Das Ergebnis der Paritätsprüfungen der Gleichungen (A-1), (A-2) oder
(A-3), angewandt auf die gelesenen Daten, nennt man Fehlersyndrom.
Die m-te vertikale Paritätsprüfung ergibt das Syndrom T+1
Die m-te diagonale Paritätsprüfung mit positiver Neigung ergibt das Syndrom
Die m-te diagonale Paritätsprüfung mit negativer Neigung ergibt das Syndrom
Sdm -
Kombiniert man die Gleichungen (A-1) und (A-4), die Gleichun
gen (A-2) und (A-5) und die Gleichungen (A-3) und (A-6), so ergibt sich
t—υ
SA 977 026 909838/0681
— J 6 —
ΓΠ
= % [V(t) Θ Vt(t)3
<A"8)
em(t) - Zm(t) φ Zm(t>
Setzt man die Gleichungen (A-10) in die Gleichungen (A-7),
(A-8) und (A-9) ein, so ergibt sich
T+1
Sdm - t% em-t(t) <A"12)
Sd" = <2 e_ . (T-t) (A-13)
m t=0 m-x:
Durch Verarbeitung dieser Syndrome lassen sich viele verschiedene
Fehlertypen korrigieren. Die vorherrschenden Fehler bei Magnetbändern sind Kanalfehler, die durch großflächige Defekte
im magnetischen Medium verursacht werden. Der fehlerhafte Kanal kann durch Erkennen des SignalVerlustes, einen übermäßigen
Phasenfehler, ein unzulässiges Aufzeichnungsmuster oder ähnliche externe Hinweise identifiziert werden. Wenn solche externe
Hinweise fehlen, kann der fehlerhafte Kanal immer noch durch Verarbeitung der Syndrome identifiziert werden. Anschließend
wird gezeigt, daß bis zu drei bekanntlich fehlerhafte Kanäle durch Verarbeitung der obigen Syndrome korrigiert werden können
Beim Fehlen eines externen Hinweises kann immer noch ein fehlerhafter Kanal identifiziert und korrigiert werden. Wenn ein
Hinweis auf einen fehlerhaften Kanal vorliegt, kann ein zweiter fehlerhafter Kanal identifiziert und beide Kanäle können korrigiert
werden.
SA 977 026 9098 38/0681
Zum Decodierprozeß gehört die Adressierung und ihre übertragung
aus mehreren parallelen Kanälen des Speichers 5 in die Puffer-Steuerung 7. Die Puffer-Steuerung 7 stellt hier zusammen mit dem Decodierer 19 fest, ob einer der Kanäle fehlerhaft
ist und sie erzeugt entsprechende Korrektursignale. Bei der
Fehlerkorrektur mehrerer Kanäle sei an den Kompromiß zwischen der Verwendung der Redundanz zur Feststellung der Tatsache,
daß die Bits in einem gegebenen Kanal fehlerhaft sind und/oder der Benutzung der Redundanz zur Korrektur des Fehlers erinnert
In diesem Sinne ist die Korrektur des Fehlers die Errechnung eines Datenwertes als Ersatz für einen entsprechenden fehlerhaften
Wert.
— I / —
Wenn Fehler auf höchstens zwei bekannte Kanäle begrenzt werden können, die durch die Kanalfehlerzeiger i und j bezeichnet
sind, wobei i kleiner j ist, dann können alle Fehler korrigiert werden. Die Gleichung (9) kann in diesem Zusammenhang neu geschrieben
werden für Fehler im m-ten Byte als
Svm=emii}
Ähnlich ist auch jede diagonale Paritätsprüfung durch höchstens zwei Fehlermuster beeinflußt. Wenn angenommen wird, daß
alle Fehler bis zur Bitposition (m-1) in jedem Kanal korrigiert werden und die Syndromgleichungen für alle korrigierten Fehlermuster
eingestellt sind, dann kann gezeigt werden, daß die Fehler im m-ten Byte die Diagonalprüfungen (m+i) und (m+j) beeinflussen
(wenn j ψ 8) und dann kann die Gleichung (10) neu
geschrieben werden als
977 026 90983 8/0681
Sdm+i = e]
Sdm+i = e]
Die Gleichungen (11) und (12) ergeben die Fehlermuster:
Die Gleichungen (11) und (12) ergeben die Fehlermuster:
= Sd (14)
m+r
Θ Svm (15)
Das Byte B wird dann wie folgt korrigiert unter Benutzung der
Gleichungen (8), (14) und (15):
Bm{i) - Vi} · em(i) (16)
- 18 -
29Q8373
Wenn j ψ 8, dann wird das diagonale Syndrom (m+j) zur Berücksichtigung
der Korrektur von B_(j) modifiziert, wie folgt:
Sdm+j <
Sdm+. Θ em(3) wenn j φ 8 (18)
Das obige Korrekturverfahren wird dann auf das nächste Byte angewandt,
wo m genauso um +1 erhöht wird. Die Indices des Kanalfehlerzeigers
i und j können an jeder Byteposition m unter der Voraussetzung geändert werden, daß die neuen Werte von i und j
nicht kleiner sind als die vorhergehenden entsprechenden Werte. I und j können jeden Wert bekommen, wobei i kleiner sein
muß als j, wenn alle Kanäle für mindestens sieben aufeinander olgende Bytes vor der ZeigerwerteZuordnung fehlerfrei sind.
sä 977 026 909 8 38/0 681
Erzeugung eines internen Zeigers für einen fehlerhaften Kanal und Korrektur eines fehlerhaften Kanales
In diesem Fall ist der j-te Kanal fehlerhaft und j ist nicht
bekannt. Ein Fehler im m-ten Byte beeinflußt die m-te vertikale Paritätsprüfung und die diagonale Paritätsprüfung (m+j),
für welche die Gleichungen (9) und (10) neu geschrieben werden können als
Sv1n = em(j) (19)
Sdm+j = em(j) , wenn j φ 8 (2O)
Der Wert Sv = 1 zeigt das Vorliegen eines Fehlers an. Der Indexzeiger
j ist die kleinste ganze Zahl von O bis 7, so daß:
Svm * 1 - Sdm+j
Wenn Sv = 1 und Sd. für alle j zwischen 0 und 7 den Wert O
hat, dann ist j = 8. Das Byte B wird dann korrigiert als
Wenn j φ 8, dann wird das (später benutzte) Diagonalsyndrom
(m+j) ι
folgt:
(m+j) modifiziert zur Wiedergabe der Korrektur von B m(j) wie
— Sdm+j * em<3) (23)
Wenn sich herausstellt, daß der Index j von einem Byte zum anderen
wechselt, dann sind die Fehler nicht auf eine Spur beschränkt. Solche Fehler sind ohne das Risiko einer Fehlkorrektur
nicht korrigierbar. Ein neuer Wert für j kann nach mindestens sieben aufeinander folgenden fehlerfreien Positionen benutzt
werden.
SA 977 026 909838/0681
Fig. 4 zeigt im einzelnen ein logisches Diagramm des Decodierers 19. Er besteht aus einem Syndromgenerator 23 und einem
Syndromprozessor, Modifizierer und Fehlermustergenerator 25 und einem Fehlerkorrektor 27. Daten Bm+i (0) , B m+i(1), ···<
B . (6), Bm+. (7) werden byte-seriell und bit-parallel an den
Syndromgenerator 23 geleitet, der aus einem siebenstufigen
chieberegister (FF1 bis FF7) besteht, in dem das Eingangssignal zu allen Stufen (mit Ausnahme von FF7) die Modulo-2-Addition
des Inhaltes der Schieberegisterstufe mit den angelegten Datenbits ist.
Zur selben Zeit zu der das Datenbyte Bm+g an den Syndromgenerator
23 angelegt wird, wird auch das Datenbyte Bm über die
Leitung 21 an den Fehlerkorrektor 27 gegeben. Die Einzelheiten des in Fig. 5 gezeigten Fehlerkorrektors 27 weisen die logische
Kombination (Modulo-2-Addition) der Fehlerkorrekturausgabe em(i) und/oder em(j) über die entsprechenden Bahnen 29
und 35 und von Komplementärelementen der Datenbytes auf, die die Datenkorrektur bewirken, die über die Datenbahn 33 ausgegeben
wird.
Der Fehlermustergenerator 25 enthält einen Syndromprozessor und Leiteinrichtungen 22 und 26 zur Modifikation der im Syndroir
prozessor 24 enthaltenen Syndrome und zur Erzeugung der Signale e (i) und/oder e (j) aus diesem Syndrom. Nach diesem Ausführungsbeispiel
können bis zu zwei fehlerhafte Kanäle korrigiert werden.
Der Syndromprozessor 24 besteht aus einem achtstufigen Schieberegister
(FF7 bis FFO), in das die Eingabe in alle Stufen mit Ausnahme der ersten die Modulo-2-Addition des Inhaltes der
Schieberegisterstufe und der Syndrommodifikation ist, die aus der Leiteinrichtung 22 abgeleitet wird. Diese Leiteinrichtung
sä 977 026 9098 38/0681
gibt eine Fehlerkorrektur em(j) über die Bahn 601 an die Antivalenzglieder
des Schieberegisters 24 verteilt nach den entsprechend betätigten Zeiger elementen J.. bis J7. In ähnlicher
(Weise wird der Inhalt der Schieberegister FF7 bis FFO des Prozessors 24 durch die Leiteinrichtung 26 verteilt, gesteuert
durch den anderem Fehler zeiger I0 bis I7.
Alle versetzten Werte von O bis 7 des diagonalen Syndroms Sdm+.
werden durch die Schieberegisterstufen FF7 bis FFO und die zugehörigen Leitvorgänge der Leiteinrichtung 26 zur Verfügung
estellt. Das die Stufen des Schieberegisters im Prozessor 24 !koppelnde Antivalenzglied modifiziert die gespeicherten SyndromJ-jwerte
mit dem korrigierten Fehlermuster vom vorhergehenden !Zyklus, wenn die Syndromwerte in ihre neuen Positionen versetzt
werden. Während jedes Zyklus wird für jedes in das Register 23 eingesetzte Byte ein Bit aus diesem Byte ausgeschoben
und geht in die erste Stufe im Register 24. Nach Darstellung
in der Leiteinrichtung 26 überträgt das UND-Glied 605 den Wert 3d . als Korrektursignal nur, wenn zwei fehlerhafte Kanäle
korrigiert werden, und zwar durch Betätigung des UND-Gliedes
605. Dieses wiederum ist antivalent mit dem Syndrom verknüpft, äaß aus der vertikalen Parität am Eingang 63 abgeleitet ist
and über die Bahn 601 angelegt wird. Wenn nur ein Kanal korrijiert
wird, braucht natürlich die Modifikation über die Bahn 501 und die Leiteinrichtung 22 nicht aufgerufen zu werden, um
ias im Syndromprozessor 24 enthaltene Syndrom zu modifizieren. 3ie Korrektur eines Kanales betrifft also nur das Korrektursignal
e (i) über die Bahn 29 zum Fehlerkorrektor 27.
E und J stellen Zeiger zur Bezeichnung von höchstens zwei feh-Lerhaften
Kanälen dar. Diese Zeiger sind entweder extern abgeleitet oder werden intern erzeugt. Die interne Erzeugung von
Seigern wird anschließend beschrieben.
SA 977 026 909838/0681
_ 22 _ 29Q8373
KANALFEHLERZEIGERLOGIK
i-te | Kanal | P1 | P | 2 | P | 3 |
1O = | P0 | P1 | P | 2 | P | 3 P4 |
1I - | po | P1 | P | 2 | ||
J2 = | po | P1 | ||||
J3 = | po | P5 | ||||
X4 = | po | P6 | ||||
1S = | P7 | |||||
1O = | 56 | |||||
1I = | 57 | |||||
j-te Kanal
J3 = P8
J7 = P8 P7 J6 = P8 P7 P6 J5 = P8 P7 P6 P5 J4 = h P4 J3 = I3 P3 J2 = Σ2 P2
J7 = P8 P7 J6 = P8 P7 P6 J5 = P8 P7 P6 P5 J4 = h P4 J3 = I3 P3 J2 = Σ2 P2
J1 =
In Tabelle 1 ist die Beziehung zwischen den Zeigern I und J
und den Bool'schen Variablen PQ, P1, P2, ..., Pg gezeigt worini
und den Bool'schen Variablen PQ, P1, P2, ..., Pg gezeigt worini
Pk = 1 heißt k-ter Kanal fehlerhaft
Pfc = O heißt k-ter Kanal nicht fehlerhaft
0 < k < 8
Sowohl Syndromerζeugung als auch Fehlerkorrektur sind kontinuierliche
Prozesse. B_, B1, ..., B , B .. werden in den Syndromjenerator
23 eingeschoben, eQ(i) und eQ(j) erscheinen, wenn Bg
eingegeben wird. Im allgemeinen werden e (i) und em(j) an den
Fehlerkorrektor 27 angelegt, wenn Bg in den Syndromgenerator
23 eingegeben wird.
SA 977 026 9098 38/0 681
_23_ 29Q8373
Erzeugung des ersten Kanalfehlerzeigers durch logische Einrichtungen
Der Index j des ersten fehlerhaften Kanales kann durch Aufsuchen
des niedrigsten Wertes von m und j bestimmt werden, für die die Gleichung 21 gilt. Diesen Wert kann man durch logische
Einrichtungen oder Zähler finden. In Tabelle 2 ist die Beziehung zwischen den vertikalen und diagonalen Syndromen in herkömmlicher
Bool1scher Relation gezeigt, die den kleinsten Wert
j so bezeichnet, daß
Svm = 1 und Sdm+j = 1
Ein mit Zählern arbeitendes Verfahren wird später in Verbindung
mit dem allgemeineren Fall von T+1 Spuren beschrieben.
SA 977 026 909838/0681
1908373
FEHLERZEIGER UND SYNDROMBEZIEHUNGEN
Jo - Jl = |
Sv Sd mm ■ Sv Sd Sd , , m m m+1 |
J2 - | Sv Sd" SO" , , Sd ,τ m m m+x m+<£ |
J3 = | Sv Sd Sd , Sd -, Sd m m m+1 m+ Z m+ j |
J4 - | Sv ScT S~d , Sd" ·_ Sd τ Sd , m m m+1 jr+δ m+J ni+4 |
J5 = | m πι m+1 m+2 m+3 m+4 |
J6 β | Sv Sd Sd Sd Sd Sd πι m m+1 m+2 m+3 m+4 |
J7 = | Sv Sd Sd Sd Sd Sd |
J8 = | Sv Sd Sd Sd nSd ,Sd m m m+1 m+2 m+3 ' m+4 |
SdnH-6
Sdm+7
Sv wird in Tabelle 2 und an anderer Stelle als m-tes vertikales
Paritätsprüfsyndrom und Sd als (m+i) diagonales Paritätsprüfsyndrom
benutzt.
Korrektur von drei Kanälen mit Kanalfehlerzeiger
ur Decodierung wurde angenommen, daß Fehler auf höchstens dre fehlerhaft bekannte Kanäle beschränkt sind, die durch die Kanalfehlerzeiger
i, j und k identifiziert sind, wobei i die kleinste k die höchste Kanalnummer unter den fehlerhaften Ka-
909838/0681
SA 977 026
nälen zwischen O und T ist. Kanal j ist der verbleibende fehlerhafte
Kanal, so daß entweder i< j< k oder j = T+1 ist.
Wenn angenommen wird, daß alle Fehler bis zur Bitposition (m-1)
in jedem Kanal korrigiert und die Syndromgleichungen an alle korrigierten Muster angepaßt werden, dann kann gezeigt werden,
daß das Fehlermuster in der Position m der fehlerhaften Kanäle bestimmt werden kann aus den Syndromen Sd., Sd +T_k und Sv_.
Die Gleichungen für diese Syndrome können abgeleitet werden aus den Gleichungen (A11), (A12) und (A13). Bei Elimination der
den fehlerfreien Kanälen und den korrigierten Mustern bis zu den Positionen (m-1) entsprechenden bekannten Nullfehlermustern
lassen sich die Syndromgleichungen neu schreiben als:
Sdm+i = em(i) (A14)
Sdm+T-k = em(k) (Ä15)
Svm - em(i) θ «*«>
Θ em(k) (A16)
Die Gleichungen (A14), (A15) und (A16) ergeben die Fehlermuster:
«mW - Sdm+i (Ä17)
em(k>
= 8Wk {A18)
em(j) = Svm Θ Sdm
Die Fehler in den m-ten Positionen können wie folgt korrigiert werden:
Zm(i) ■ Zm(i) 9 em(i) (A20)
Zm(j) = Zm(j) * em(j) (A21)
SA 977 026 9098 3 8/0681
Zm (k) = Zm (k) Φ em(k) (A22)
Wenn nur zwei Kanäle fehlerhaft sind, dann kann jedem fehlerfreien
Kanal ein Kanalfehlerzeiger zur Verarbeitung nach obigem Algorithmus zugeordnet werden. Das resultierende Fehlernauster
für diesen fehlerfreien Kanal muß Null sein. Damit hat man eine weitere Prüfung von Fehlkorrekturen.
Bevor mit der Korrektur in der nächsten Position fortgefahren wird, müssen die durch diese Korrekturen betroffenen Syndrome
modifiziert werden (insbesondere diejenigen, die später noch benutzt werden). Die Modifikation ist durch einen Pfeil vom
vorher errechneten Wert eines Syndroms (mit seiner Modifikation) zu seinem neuen Wert dargestellt:
em(i) (A23)
(A24)
(A25)
(A26)
Jetzt kann das obige Korrekturverfahren auf die nächste Bitpo
sition angewandt werden, indem man den Wert von m um 1 erhöht
.uftreten und Benutzung von Zeigern
Sdm+k «~ | em^k | ) | wenn j | <T+1 |
Sdm+j <- | em(3 | ), | , wenn | j <T+1 |
Sdm+T-j ♦" | m | (j) | ||
~Sdm+k Θ | ||||
-Sdm+j e | ||||
~ Sdm+T-j |
eiger können extern abgeleitet oder intern erzeugt werden. Zur Ableitung externer Zeiger ist im allgemeinen eine Form der
analogen Abfühlung der Wiedergabebedingung der auf einem Kaial aufgezeichneten Daten erforderlich. Einzelheiten dieser
\rt gehen über den Rahmen der vorliegenden Erfindung hinaus,
ienn externe Zeiger nicht vorhanden sind, sind nach der Erfin-
SA 977 026 9 0 9 8 3 8/0681
dung auch Einrichtungen zur Erzeugung eines oder mehrerer interner
Zeiger für die Fehlerkorrektur, ebenso wie beim Vorhandensein von externen Zeigern vorgesehen.
Es sei angenommen, daß ein Datensatz zur späteren fehlerfreien Wiedergabe auf ein Magnetband geschrieben wird. Wenn das Band
gestartet ist und der Datensatz bei m = 0 liegt, kann man annehmen, daß keine Fehler vorliegen und alle Zeiger aus sind.
Wenn nach einer bestimmten Zeit in einem der Kanäle ein Fehler auftritt und kein externer Zeiger zur Bezeichnung des fehlerhaften
Kanales gesetzt wurde, muß ein erster interner Fehlerzeige zur Indentifizierung des Kanales erzeugt werden.
Wenn der erste interne Zeiger einmal erzeugt ist, müßte er zur Korrektur von Fehlern in dem bezeichneten Kanal solange festgehalten
werden, wie die Wiedergabe dauert. Eine solche Zuordnung eines Zeigers kann natürlich die Korrekturkapazität des
Systems über Gebühr einschränken. Das gilt besonders, wenn in dem bezeichneten Kanal kein Dauerfehler vorliegt. In einigen
Systemen ist es daher vorgesehen, einen Zeiger zu löschen, wenn in einem vorgegebenen Intervall nach dem ersten Erkennen
eines Fehlers kein weiterer Fehler auftritt.
In diesem hypothetischen Beispiel ist das Auftreten eines Fehlers in einem Kanal angenommen worden. Die Kanalidentität wird
entweder durch einen externen oder einen internen ersten Zeiger festgehalten. Daraus folgt, daß das Erkennen eines ersten
fehlerhaften Kanales innerhalb der Korrekturmöglichkeit des ystems liegt. Weiterhin wird der erste Zeiger für die Korrektur
von Fehlern in dem bezeichneten Kanal eingeschaltet gehalten. Wenn in einem anderen Kanal ein weiterer Fehler auftritt,
cann dies ebenfalls durch einen zweiten Zeiger angezeigt werden ler Zeiger zu einem dritten fehlerhaften Kanal kann jedoch nur
xtern erzeugt werden.
SA 977 026
909838/0681
2SOI373
Der erste interne Zeiger wird also eingeschaltet, wenn andere Zeiger fehlen. Ein zweiter interner Zeiger kann intern nur aktiviert
werden, wenn ein erster Zeiger existiert. Der zweite interne Zeiger wird also ohne Rücksicht darauf erzeugt, ob der
erste Zeiger intern oder extern generiert wird.
Obwohl die internen Zeiger für die zuverlässigsten gehalten werden, können höchstens zwei der drei im System des vorgezogenen
Ausführungsbeispieles verfügbaren Zeiger intern erzeugt werden. Auch können zwei interne Zeiger nicht gleichzeitig erzeugt
werden, weil der zweite interne Zeiger die Existenz eines ersten bekannten Zeigers als Vorbedingung voraussetzt. Die
irzeugung interner Zeiger nutzt also den Vorteil der den Kanal erfassenden diagonalen und der vertikalen Paritätsprüfungen.
Erzeugung der Zeiger für den ersten und zweiten fehlerhaften Kanal
/ienn Zeiger auf fehlerhafte Spuren fehlen, wird angenommen,
äaß Fehler auf nur eine Spur beschränkt sind. Diese fehlerhafte Spur kann identifiziert und die Fehler können korrigiert
verden.
Sin von Null verschiedenes Muster in der m-ten Position einer Spur wird durch ein von Null verschiedenes Syndrom Sv für
. m
lie vertikale Paritätsprüfung bezeichnet. Wenn angenommen wird, laß dieser Fehler in der Spur mit dem unbekannten Index j liegt
and andere Spuren fehlerfrei sind, dann ergibt sich aus den leichungen (A11) und (A12)
Svm - em(j) - 1 <A27>
Sdin+j = em(j) β 1' wenn j * T+1 (A28)
SA 977 026
909838/0681
Der Index j ist die kleinste ganze Zahl zwischen O und T, so
daß
Sdm+j - Svm = 1 (A29)
Wenn Sv = 1 und Sdm+. ist O für alle j von O bis T, dann ist
j=T+1.
In Fig. 6a ist ein erster Fehlerzeigergenerator gezeigt, von
dem man einen Index eines ersten fehlerhaften Kanales beim Fehlen von anderen Zeigern erhält. Der Generator besteht aus einem
Paar Verriegelungen 401 und 407, die einen Abwärts- Ringzähler 405 starten bzw. stoppen. Die Ausgabe des Ringzählers
405 stellt den Zeiger j dar. Die Verriegelungen 401 und 407 sprechen auf die Syndrome S^m+T und Svm an. Wenn Sdm+T = 1,
wird die Verriegelung 401 verriegelt und die Zahl im Zähler 405 = T gesetzt. Für jeden Wechsel in der Bitposition m im
Kanal wird der Zählerinhalt um 1 erhöht. Wenn aber im Gegensatz dazu Sv = 1 ist, wird die Verriegelung 407 verriegelt
und der Zähler 405 gestoppt. Der Wert im Zähler an dieser Verbindung stellt den Zeiger j dar. Für den Sonderfall, in dem
die Verriegelung 407 vor der Verriegelung 401 verriegelt wird, ist der Zählerindex j = T+1.
Das vorgezogene Ausführungsbeispiel des Generators für den zwei ten Fehlerzeiger besteht aus Zählern, die von verschiedenen
Syndromen gespeist werden.
In Fig. 6b ist ein zweiter Fehlerzeigergenerator gezeigt, der zum Einsatz kommt, wenn der erste Zeiger auf einen anderen Kanal
gerichtet, also auf den Kanal T+1. Der Generator besteht aus ein Paar Ringzählern 4O5 und 406, die entsprechend an den
Ausgängen 415 und 417 die Zeiger i und j ausgeben. Die Verriegelung
401 verriegelt den Abwärts-Ringzähler 405 auf den Wert j, während die Verriegelung 407 den Aufwärts-Ringzähler 406
ebenfalls auf dem Wert j verriegelt. Stop- und Leitsignale wer-
SA977026 909838/0681
den über eine gemeinsame Bahn an beide Ringzähler gegeben, wenn das UND-Glied 413 durch die Verriegelung beider Verriegelungen
betätigt wird. Der Ausgang 427 des UND-Gliedes 411
zeigt das Verriegeln des zweiten Zeigers auf den Wert j = T+1 nur an, wenn gleichzeitig die Ausgänge der Antivalenzglieder
423 und 425 nicht übereinstimmen. In diesem Fall wird durch die Diskrepanz der Eingänge Sv und Sd . auf den Bahnen 75
und 63 zum Antivalenzglied 423 die Verriegelung 401 verriegelt, während bei einer Diskrepanz der Eingänge Svm und sd m+m_-t auf
der Bahn 71 und 63 zum Antivalenzglied 425 die Verriegelung 4O7 verriegelt.
In Fig. 6c ist ein zweiter Fehlerzeigergenerator gezeigt, der ■zum Einsatz kommt, wenn der erste Fehlerzeigergenerator auf
den Kanal T+1 gerichtet ist. Dadurch soll ein zweiter Zeiger i !geschaffen werden, wenn der erste Zeiger j = T+1 gegeben ist.
Der Generator besteht aus einem Aufwärts-Ringzähler, der durch
die Verriegelung 427 auf 0 gesetzt wird, wenn der Eingang Sd_
gleich 1 ist. Der Zähler wird jeweils um 1 erhöht, wenn m um 1 erhöht wird. Am Anfang wird i auf 0 gesetzt und folgt dann
dem Wert des Zählers durch Sd . =1 wird der Zähler gestoppt, wobei die Zahl gleich dem Zeigerindex ist.
SA 977 O26 9 0 9 8 3 8/0681
Claims (1)
- PATENTAN SP RÜCHEEinrichtung zur Codierung und Decodierung von Prüfbits in einem "parallelen Vielkanal-Speichersystem mit einem vertikalen Paritätskanal,/'.'dadurch gekennzeichnet daß, zwei weitere Paritätsbits zu diagonal über die Kanäle verteilte Datenbits ermittelt werden,daß aus der Fehleranzeige mit Hilfe der Syndromfunktion zu den vertikalen Paritätsbits und den sich in der Fehleranzeige schneidenden Syndromfunktionen zu den diagonalen Paritätsbits ein fehlerhaften Kanal aus der Entfernung auf dem Kanal von einer Fehleranzeige bis zur nächsten bestimmt wird.2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die zwei weiteren Paritätsbits entweder in zwei weiteren Redundanzkanälen oder in einem weiteren Redundanzkanal und in einem in regelmäßigen Abständen quer zur Kanalrichtung aufgezeichneten Prüfbyte, oder aber in zwei in regelmäßigen Abständen quer zur Kanalrichtung aufgezeichneten Prüfbytes gespeichert werden.3. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Prüfbitdecodierer (9) eine Kette von über EXCLUSIV-ODER Gliedern (193 bis 205) gekoppelte bistabile Kippschaltungen (FFI bis FF7) aufweist, wobei an den anderen Eingang der EXCLUSIV-ODER Glieder jeweils ein Bitsignal B ..(Q) bis BmJ^.(7) eines quer zur Kanalrichtung auf gezeichneten Bytes angelegt werden.4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Prüfbitdecodierer (19) die folgenden Einrichtungen aufweist:SA 977 O26 909838/0681- einen aus einem Schiebregister aufgebauten Diagonal-Syndromgenerator (23, Fig. 4),- einen aus einem Schieberegister aufgebauten Syndromprozessor (24) ,- eine vom Syndromprozessor und von einem Zeiger (IO bis 17) gesteuerte Logikeinrichtung (26) zur Erzeugung eine Fehlerkorrektursignales (e (i) ) und- einen vom Fehlerkorrektursignal gesteuerten Fehlerkorrigier er (27) ,- wobei das Fehlerkorrektursignal und ein weiterer Zeiger(J1 bis J7) einer weiteren Logikeinrichtung (22) zugeführt werden, die den Syndromprozessor (24) steuert.Einrichtung nach Anspruch 1, gekennzeichnet durch einen Zähler (405, 406, Fig. 6), dessen Startwert auf die niedrigste Kanalnummer eingestellt wird, durch Einrichtungen (401, 4O7) zum Hinauf- oder Herunterzählen des Zählers, wobei diese Einrichtungen von den ermittelten Syndromen gesteuert werden, wobei der Zählwert nach dem Feststellen eines Fehlers mit Hilfe der entfernten diagonalen und vertikalen Syndrome erhöht wird und nach dem Feststellen eines Fehlers mit Hilfe der nahen diagonalen und vertikalen Syndrome erniedrigt wird, derart, daß der Zählwert bis zur nächsten Feststellung eines Fehlers mit Hilfe eines diagonalen und schneidenden vertikalen Syndroms verändert wird und somit nach Stillstand des Zählers der Zählstand eine Zeigerinformation darstellt.Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß von zwei einen Fehler anzeigenden Syndromen, dasjenige ausgewählt wird, daß sich am nächsten zu einem als fehlerhaft bekannten Kanal befindet.026 909838/06817. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der Zählstand als Funktion der Bitpositionsdifferenz zwischen nicht Übereinstimmungen in den Paritätsbits der diagonalen und vertikalen Syndrome verändert wird.8. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Parität derjenigen Syndrome umgekehrt wird, die sich in einem Fehler eines als fehlerhaft bekannten Kanals schneiden.sä 977 026 §09838/0681
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/884,463 US4205324A (en) | 1977-12-23 | 1978-03-07 | Methods and means for simultaneously correcting several channels in error in a parallel multi channel data system using continuously modifiable syndromes and selective generation of internal channel pointers |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2908373A1 true DE2908373A1 (de) | 1979-09-20 |
DE2908373C2 DE2908373C2 (de) | 1989-05-11 |
Family
ID=25384679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792908373 Granted DE2908373A1 (de) | 1978-03-07 | 1979-03-03 | Einrichtung zur codierung und decodierung von pruefbits |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS54118748A (de) |
DE (1) | DE2908373A1 (de) |
FR (1) | FR2419543B1 (de) |
GB (1) | GB2016178B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3040004A1 (de) * | 1979-10-24 | 1981-05-07 | Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka | Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten |
DE3216649A1 (de) * | 1981-05-07 | 1982-11-25 | Victor Company Of Japan, Ltd., Yokohama, Kanagawa | Verfahren zum aufzeichnen von digitalen signalen auf mehrfachspuren eines aufzeichnungsbandes |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1212437A (en) * | 1983-03-04 | 1986-10-07 | Radyne Corporation | Data transmission system with error correcting data encoding |
GB2149156B (en) * | 1983-11-04 | 1987-10-21 | Gen Electric Co Plc | A method of encoding and decoding |
JPH07107781B2 (ja) * | 1986-02-24 | 1995-11-15 | 松下電器産業株式会社 | Ramのアドレス信号発生回路 |
US4908826A (en) * | 1988-01-05 | 1990-03-13 | Digital Equipment Corporation | Stored data error correction system |
JP2003317400A (ja) * | 2003-02-14 | 2003-11-07 | Fujitsu Ltd | 磁気テープ装置の制御装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1318250A (en) * | 1969-10-29 | 1973-05-23 | Honeywell Inc | Encoding detecting and or correcting of data |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3387261A (en) * | 1965-02-05 | 1968-06-04 | Honeywell Inc | Circuit arrangement for detection and correction of errors occurring in the transmission of digital data |
FR1580315A (de) * | 1968-05-27 | 1969-09-05 | ||
US3958220A (en) * | 1975-05-30 | 1976-05-18 | International Business Machines Corporation | Enhanced error correction |
US4044328A (en) * | 1976-06-22 | 1977-08-23 | Bell & Howell Company | Data coding and error correcting methods and apparatus |
US4201976A (en) * | 1977-12-23 | 1980-05-06 | International Business Machines Corporation | Plural channel error correcting methods and means using adaptive reallocation of redundant channels among groups of channels |
-
1978
- 1978-12-14 JP JP15378378A patent/JPS54118748A/ja active Granted
-
1979
- 1979-01-25 FR FR7902411A patent/FR2419543B1/fr not_active Expired
- 1979-03-03 DE DE19792908373 patent/DE2908373A1/de active Granted
- 1979-03-05 GB GB7907745A patent/GB2016178B/en not_active Expired
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1318250A (en) * | 1969-10-29 | 1973-05-23 | Honeywell Inc | Encoding detecting and or correcting of data |
Non-Patent Citations (3)
Title |
---|
A.M. PATEL, S.J. HOUG "Optimal rectangular code for high density magnetic tapes", IBMJ Res. Develop., Nov. 1974, S.579-588 * |
H.LOUIS, W.SPRUTH "Safeguarding of stored records against total loss", IBM Techn.Discl. Bull., Vol.14, No.12, Mai 1972, S.3846 * |
P. PRUSINKIEWICZ, S. BUDKOWSKI "A double track error-correction code for magnetic tape", IEEE Trans. on Computers, Juni 1976, S.642-645 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3040004A1 (de) * | 1979-10-24 | 1981-05-07 | Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka | Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten |
DE3216649A1 (de) * | 1981-05-07 | 1982-11-25 | Victor Company Of Japan, Ltd., Yokohama, Kanagawa | Verfahren zum aufzeichnen von digitalen signalen auf mehrfachspuren eines aufzeichnungsbandes |
Also Published As
Publication number | Publication date |
---|---|
DE2908373C2 (de) | 1989-05-11 |
JPS54118748A (en) | 1979-09-14 |
GB2016178A (en) | 1979-09-19 |
FR2419543B1 (fr) | 1986-08-22 |
JPS6343833B2 (de) | 1988-09-01 |
FR2419543A1 (fr) | 1979-10-05 |
GB2016178B (en) | 1982-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2853892C2 (de) | ||
DE3125048C2 (de) | ||
DE2421112C2 (de) | Speicheranordnung | |
DE2357004C3 (de) | Verfahren und Einrichtung zur Fehlerkorrektur für Daten | |
DE2921387A1 (de) | Vorrichtung zur ermittlung von fehlerhaften sektoren und zuweisung von ersatzsektoren in einem plattenspeicher | |
DE2427463C3 (de) | ||
DE2430464A1 (de) | Einrichtung zur fehlergesicherten datenuebertragung | |
DE2260850A1 (de) | Fehlerkorrektursystem | |
DE2132565A1 (de) | Umsetzer | |
DE1295246B (de) | Schaltungsanordnung zur fehlergesicherten Wiedergabe von parallel dargestellten digitalen Signalen | |
DE3787034T2 (de) | Digitale Signalfehlerkorrektur. | |
DE2364788A1 (de) | Verfahren und vorrichtung zur fehlerkorrigierenden datenuebertragung oder -speicherung | |
DE2622184A1 (de) | Fehlerkorrekturverfahren | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE1961554A1 (de) | Fehlerkorrigierendes Sichersystem | |
DE2157829C2 (de) | Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern | |
DE2536625C2 (de) | Paritätsprüfschaltung für ein binär zählendes Register | |
DE2341952A1 (de) | Verfahren und vorrichtung zur datenpruefung | |
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) | |
DE2320354C2 (de) | Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen | |
DE2908373A1 (de) | Einrichtung zur codierung und decodierung von pruefbits | |
DE2816771A1 (de) | Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern | |
DE2053836A1 (de) | Verfahren und Vorrichtung zur Korrek Datengruppen | |
DE2655653C2 (de) | Anordnung zur Feststellung der richtigen Zuordnung von Adresse und Speicherwort in einem wortorganisierten Datenspeicher | |
DE2625365C3 (de) | Vergleichseinrichtung fur eingegebene Daten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
8128 | New person/name/address of the agent |
Representative=s name: KINDERMANN, M., PAT.-ASS., 7030 BOEBLINGEN |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |