DE2263488A1 - System zur korrektur der fehler in zwei fehlerbehafteten spuren eines vielspurigen aufzeichnungsgeraets - Google Patents
System zur korrektur der fehler in zwei fehlerbehafteten spuren eines vielspurigen aufzeichnungsgeraetsInfo
- Publication number
- DE2263488A1 DE2263488A1 DE2263488A DE2263488A DE2263488A1 DE 2263488 A1 DE2263488 A1 DE 2263488A1 DE 2263488 A DE2263488 A DE 2263488A DE 2263488 A DE2263488 A DE 2263488A DE 2263488 A1 DE2263488 A1 DE 2263488A1
- Authority
- DE
- Germany
- Prior art keywords
- track
- signals
- bytes
- signal
- faulty
- 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)
- Techniques For Improving Reliability Of Storages (AREA)
Description
Aktenzeichen der Anmelderin: PO 9 70 049
System zur Korrektur der Fehler in zwei Spuren eines vielspurigen Aufzeichnungsgerates
In Datenübertragungssystemen sowie in Computern kann die Information
durch Zusetzen von Redundanzbits zur Datennachricht in der Art codiert werden, daß die Nachricht mit einem praktischen
Geräteaufwand decodiert werden kann, um die ursprüngliche korrigierte
Information in dem Fall zu erhalten, in welchem ein Fehler auftrat. Parallele Daterianordnungen, d.h. Anordnungen,
in denen die Information in parallelen Bytes enthalten ist, die in einem Datenblock angeordnet sind, werden in Computern
benutzt und sind insbesondere bei Mehrkanal-Aufzeichnungsgeräten bekannt. In der USA-Patentschrift 3 629 824 ist ein Codier-
und Decodiergerät beschrieben, in welchem die Redundanz- oder Prüfbits den Daten quer zur Spurrichtung zugeordnet sind. Diese
Patentschrift beschreibt einen Code, der einen oder mehrere Fehler innerhalb eines aus mehreren Bits bestehenden Datenbytes
korrigieren kann. Die Daten werden in Blocks unterteilt, die aus k-Datenbytes mit je b-Bits und zwei Prüfbytes aus je b-Bits bestehen.
Der Decodierer gewinnt die Daten fehlerfrei wieder, wenn nicht mehr als ein einzelnes Byte der empfangenen Nachricht
fehlerhaft ist, ungeachtet dessen, wieviele Bits in diesem ein-
309827/1073
ze Inen Byte fehlerhaft sinä. In der US-Patentschrift tür.
3 319 223 ist ein Fehlerkorrekturcode angegeben, in welchem die aus der Information erzeugten Prüfzeichen seriell dem
Nachrichtenblock angehängt werden. Die Codierung und Decodierung erfolgt mit Hilfe von Schieberegistern. Mach einem anderen Vorschlag
wird die Leistungsfähigkeit des oben erwähnten Codes, durch Kombination mit HinweisSignalen erweitert, die die
Fehlerkorrekturfähigkeit der Anordnung auf zwei fehlerhafte Bytes ungeachtet der Anzahl fehlerhafter Bits in jedem Byte erweitert.
Der Erfindung liegt die Aufgabe zugrunde, ein System zur Korrektur
der Fehler in zwei Spuren eines vielspurigen Aufzeichnungsgerätes
anzugeben, das in der Lage ist, außer der Korrektur der Fehler in zwei Spuren auch einen großen Prozentsatz nicht korrigierbarer
Fehler ohne Vergrößerung der Redundanz zu erkennen, das auch Zeichen oder Bytes aus einer größeren als der üblichen
Bitanzahl ohne wesentliche Erhöhung der Codier- und Decodierzeit und des Schaltungsaufwandes verarbeiten kann und bei dem alle
Fehlerkorrekturfunktionen durch ein Paar von Schieberegistern realisiert werden.
Die genannte Aufgabe wird mittels eines Systems zur Korrektur der Fehler in zwei Spuren eines vielspurigen Aufzeichnungsgerates
gelöst, das gekennzeichnet ist durch eine Codiervorrichtung zur Erzeugung zweier Prüfbytes für Machrichtendaten Z.,
Z , Z ,...Z, , die in quer zu einer Spur angeordneten Blöcken aus k Bytes enthalten sind, wobei jedes Byte f Datenbits aufweist
und für f gilt: f - b χ m, worin b und m ganze Zahlen >l|sind und k eine ganze Zahl ist, für die gilt: 2<k<2 , wobei
die Prüfbytes nach den Gleichungen:
und
= τλ Z1 φ τ2λ
309827/1073
berechnet werden, worin T die Begleitmatrix eines binären primitiven
Polynoms g(x) vom Grade f ist und λ irgendeine ganze Zahl,
b b gegeben
die durch den Ausdruck t(2 -I)/ (2 -l)>tist, in welcher t irgendeine
positive ganze Zahl ist, die prim ist zu 2 -1, eine Vorrichtung
zum Anfügen der beiden Prüfbytes an die Nachrich^endaten,
um codierte Daten für die Benutzung in einem Vielspurdatensystem zu erhalten, eine Vorrichtung zur Decodierung der codierten
Daten, die nach der Benutzung durch Z.5, 2 ',...Z, ', C ', C_'
bezeichnet werden, wobei die Decodiervorrichtung ein erstes und zweites Schieberegister enthält zur Erzeugung erster und zweiter
Syndrome S und S„ aus den codierten Daten nach deren Benutzung
entsprechend den Gleichungen:
S = C1 * Θ Z · Φ Z ' Θ...Θ Z, '
Sas Γ· * Λ Φ 7 ' A η>^Λ „ r /η as m^^ ,
eine Vorrichtung zur Identifizierung der fehlerbehafteten Spur,
eine Vorrichtung zur Lokalisierung der fehlerhaften Bytes in zwei der fehlerbehafteten Spuren und eine Vorrichtung zur Korrektur
der Fehler in den als fehlerhaft ermittelten Bytes in zwei fehlerbehafteten Spuren.
30982-7/1073
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben. Es zeigen:
Fig.l schematisch die Datenanordnung in einem
mehrspurigen Datensystem;
Fig.2 ein Blockschaltbild zur Ausführung der Codierung der vorliegenden Erfindung;
Fig.3 schematisch die Decodieranordnung für die
vorliegende Erfindung;
Fig.4 ein Schaltbild zur Organisation des ersten
Schieberegisters eines Paares von Schieberegistern, die zur Codierung und Decodierung
in dem erfindungsgemäßen Fehlerkorrektursystem verwendet werden;
Fig.5 das Schaltbild des zweiten Schieberegisters des erwähnten Paares;
Fig.6 den Generator für Fehlerspur-Parameter, der
im Decodierer benutzt wird und in den Fign. 6af6b,6c und 6d dargestellt ist;
Fig.6a ein Blockschaltbild der logischen Netzwerkverbindungen
zur Erzeugung der i-Hinweise;
Fig.6b in einem Blockschaltbild die Erzeugung des Y-Parameters;
Fig.6c in einem Blockschaltbild die Erzeugung des X-Parameters;
Fig.6d in einem Blockschaltbild die Erzeugung der Steuersignale NQ, N und N,;
309827/1073
Fig.7 in einem Blockschaltbild die Fehlerkorrekturschaltung
des Decodierers und
Fig.8 in einem Blockschaltbild, die Anordnung für die
Erkennung eines großen Prozentsatzes nicht korrigierbarer Fehler.
Die vorliegende Erfindung läßt sich natürlich auf Informationsverarbeitungssysteme
unterschiedlicher Kapazität anwenden. Sie wird daher zuerst in algebraischen Ausdrücken beschrieben, die
sich auf Systeme jeglicher Größe anwenden lassen und anschliessend im. Zusammenhang mit einem bestimmten System.
Daten werden durch das System in Blocks aus k Bytes verarbeitet, wobei jedes Byte f Datenbits enthält und f = b χ m ist. Hier und
in der folgenden Beschreibung bezeichnen b und m ganze Zahlen > 1 und k ist eine ganze Zahl 2
< k < 2 .Die Werte von f und k sind für eine bestimmte Ausführung als unveränderlich zu betrachten, sind jedoch für Ausführungsbeispiele verschiedener
Kapazitäten verschieden gewählt. Ein Datenblock ist dementsprechend bezeichnet mit Z,, Z_ ... Z, , worin Z das erste Byte im
Block, Z„ das zweite Byte usw. bis Z, bezeichnen, welches das
k-te und letzte Byte ist. Der Decodierer errechnet aus dem Block hereinkommender Daten zwei Prüfbytes, die mit C1 und C bezeichnet
sind und jeweils f Bits enthalten und hängt die Prüf-bytes an die k Datenbytes an und erzeugt so die gesendete Nachricht von
k+2 Bytes. Die Datenformatanordnung ist in Fig.l gezeigt. Die Prüfbytes werden in separaten Spuren angehängt, parallel und
neben den die Datenbytes tragenden Spuren. Jedes Byte Z. und C, und C2 sind f Bit-Spaltenvektoren in den mathematischen Gleichungen
und können explizit folgendermaßen geschrieben werden:
309827/1073
PO 970 049
Z.
(O Ul
und C.
C (O]
C (I]
(f-1)
Die Prüfbytes C. und C_ werden aus den Informationsbytes Z
1'
Z, unter Verwendung der folgenden Matrixgleichungen er-
JK. ' ■ " ..
rechnet:
Φ Z2 Φ ... Φ
= Τ
Φ Τ
2λ
(D (2)
worin Φ die Modulo 2 Vektorsumme bezeichnet und
T die Begleitmatrix eines binären primitiven Polynoms g(x) des Grades f. ist, welches weiter als Gleichung (3) entwickelt wird.
Für jedes f existiert mindestens ein primitives Polynom des Grades f. Eine Liste der primitiven Polynome ist zu ersehen aus
W.W. Petersen, Error Correcting Codes, M.I.T. Press, 1961.
T1 ist die i-te Potenz der Matrix T.(Errechnet mit Modulo 2
Operationen).
λ ist eine ganze Zahl, die gegeben ist durch den Ausdruck: t (2 -l)/(2b-l), worin t jede positive Zahl ist, die prim ist
zu 2 -1. Da f = b χ m ist, resultiert der obige Ausdruck immer
in einer positiven ganzen Zahl. Die Verwendung von λ in diesem
Code hat eine besondere Bedeutung, die aus der Beschreibung im Zusammenhang mit dem Ausführungsbeispiel hervorgeht.
Um die Erfindung besser erklären zu können, wurde ein spezifischer
Wert f = 8 gewählt. Das Polynom g von χ des Grades 8 kann ex-
309827/1073
PO 970 049
plizit geschrieben werden alss
g (x) = qQ + gx χ g2 χ +
g7 χ + g8 χ
worxn:
g_, = go = 1 und g. ist entweder O oder 1
i = 1, 2 .·· 7.
Die Begleitermatrix T des Polynoms g von χ ist definiert als:
T =
O. OOOOOOg
1 | O | O | O | O | O | O | g. |
O | 1 | O | O | O | O | O | g2 |
O | O | 1 | O | O | O | O | g3 |
O | O | O | 1 | O | O | O | g4 |
O | O | O | O | 1 | O | O | g5 |
O | O | O | O | O | 1 | O |
( 3)
OOOOOOlg.
Wie bereits in der Einleitung erwähnt wurde, ist schon ein mehrspuriges Fehlerkorrektursystem mit k Datenspuren und zwei
Prüfbytespuren vorgeschlagen worden. Zwei b-stellige Prüfbytes
werden aus k b-stelligen Informationsbytes erzeugt/ wobei
2 < k < 2 ist. Bei diesem System kann die Bytegröße b erhöht werden. Die für Codierung und Decodierung notwendige Maschinenausrüstung
nimmt jedoch mit der Größe der an der Berechnung teilnehmenden Bytes beträchtlich zu. Daher versuchten die konventionellen
Anordnungen , die Bytegröße möglichst klein zu halten, während die Relation 2 <
k < 2 noch erfüllt wurde.
Es gibt viele Situationen, wo das Ausmaß der an der Codwortberechnung
beteiligten Bytes erhöht werden soll. Bei Computer-Band-
309827/1073.
PO 970 049
aufZeichnungssystemen wird z.B. die Aufteilung binärer Datenspuren
in 8 Bit große Bytes bevorzugt, weil die zentrale Verarbeitungseinheit für 8 Bits große Bytes organisiert ist. Somit
wird eine Fehlerkorrekturanordnung für 8 Bit große Bytes gegenüber
der oben erwähnten Anordnung für 4 Bit große Bytes bevorzugt.
Der in dieser Erfindung erzeugte Code ist eigentlich ein verkürzter
Code, der eine zusätzliche Kapazität bei der Erkennung eines bestimmten Prozentsatzes von Fehlern aufweist, die nicht korrigiert werden können. Der Prozentsatz R kann folgendermaßen geschätzt
werden:
R% = (1-gekürzte Länge/volle Länge) χ 100%. Die volle Länge ist
definiert als 2 4-1 und die gekürzte Länge als k+2, d.h., die
Höchstzahl von Spuren, für welche der Code benutzt werden kann gegen die tatsächliche Spurzahl. Wenn z.B. k=8, erhält man bei
einem 4 Bit großen Byte eine Erkennungsmöglichkeit, die mit 53% der übrigen Fehler geschätzt wird. Dem steht eine Erkennungsmöglichkeit
von 97% der Fehler bei einer Anordnung für ein 8 Bit großes Byte gegenüber.
Obwohl der nach dieser Erfindung erzeugte Code eigentlich eine gekürzte Form eines längeren Code ist, werden für Codierung und
Decodierung nur Geräte benötigt, die für den gekürzten Code erforderlich sind und nicht für den längeren Code. Außerdem wird
ein Gerät für die Codierung und Decodierung dieses Spezialcodes beschrieben, durch welches Fehler in zwei Spuren korrigiert
werden können, wenn Spur-Hinweissignale vorhanden sind. Der tatsächlich auf Grund dieser Erfindung erzeugte Code läßt sich am
besten an einem Beispiel von 8 Bits großen Bytes beschreiben. Dieser Anordnung wird außerdem eine herkömmliche Anordnung mit
4 Bits großen Bytes gegenübergestellt, so daß die Vorteile klar heraustreten. Die binäre Form der Paritätsprüfmatrix für den 4
Bits großen Byte-Code ist in ihrer vollen Länge gegeben durch:
309827/1073
PO 970 049
H =
T.
τ2 4 τ
(4)
worin 0. und,I. 4x4 Null- und Exnheitsmatrizen und T. die
Begleitmatrix des primitiven Polynoms des Grades 4 ist. Ein
3 4
solches Polynom ist 1 + χ + χ . Dementsprechend ist T, gegeben
solches Polynom ist 1 + χ + χ . Dementsprechend ist T, gegeben
durch:
0 | O | O | 1 |
1 | O | O | O |
O | 1 | O | O |
O | O | 1 | 1 |
(5)
In ähnlicher Weise ist die Paritätsprüfmatrix für den 8 Bits
großen Bytecode in ihrer vollen Länge gegeben durch:
T3 8 -8
"8
,255 8
(6)
worin 0D und I0 .8x8 Null- und Einheitsmatrizen und T0 die
bo 3 5-8
Begleitmatrix des primitiven Polynoms 1+x+x +x + χ ist.
0 0 0 0 0 0 0 10 0 0 0 0 0 0 10 0 0 O 0
0 0
0 0
0 0
0 0
O 0
1
0
0
0
0
0 0 0
1
0
0
0 0
0 0 0
0 0 0 0
0 0 0 0 1
i 4
Es ist zu beachten, daß T. Elemente des Galois-Feldes GF (2 )
ΐ 8
und Tg Elemente des Galois-Feldes GF (2 ) sind. Diese Elemente
309827/1073
PO 97Ο 049
haben die Eigenschaft, daß T., T
15
sind und daß T
gleich ist I- und T0, T
4O
alle verschieden .. Tn sind
alle verschieden und T
ist gleich I0. Das Galois Feld GF (2 ) enthält ein Unterfeld, welches isomorph zu GF (2 ) ist. Die
Elemente dieses Unterfeldes sind gegeben durch:
worin
λ = t (28-l)/(24-l)
für jedes t ist, welches prim ist zu (2 -1). Ein solches λ ist
68. Diese Unterfeldelemente haben die Eigenschaft, daß
m λ m 2λ
alle verschieden sind von T
15λ
= I0. Außerdem stehen T0"
O O
und T- in einem Eins-zu-Eins-Verhältnis insofern, als die
beiden Sätze isomorph sind in den Summen- und Produktoperationen des entsprechenden Galois-Feldes. Bezieht man sich auf den 8 Bits
großen Bytecode, der durch die folgende Paritatsprufmatrix gegeben
ist:
H =
T8 T8
lg lg lg
Τ3λ 15λ
Xg .... ig Ug
(8)
so hat dieser Code dieselbe mathematische Struktur wie der durch
die Paritatsprufmatrix der Gleichung (4) gegebene 4 Bits große
Byte-Code. Alle Spalten in der Matrix der Gleichung (8) haben eine äquivalente Spalte in der Matrix der Gleichung (6).
Beispiel:
0 98 27/1073
PO 970 049
- II -
2283488
= 68,
= T
340
= T
255 8
= T
85
Daraus ist zu ersehen, daß die fünfte Spalte in Gleichung (8)
äquivalent ist der 85sten Spalte in Gleichung (6). Daraus läßt
"Ti-
sich ableiten, daß der mit den Unterfeldelementen T aufgebaute
Code eine verkürzte Form des durch die Gleichung (6) gegebenen Code ist. Der Code kann auf herkömmliche Art weiter verkürzt
werden. Die 8-spurige Anordnung kann z.B. mit folgender Paritätsprüfmatrix codiert werden:
H =
"8
'8
"8
"8
T-,
2λ 3λ 4λ · 5λ 6λ
8 . 8 8 8 8 8 8
(9)
Entsprechend ist für. λ = 68, der Wert
gegeben durch;
68
L8
0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
0 | 1 | 0 | O | 0 | 1 | 1 | 0 |
0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 |
1 | 0 | Q | 1 | 0 | 1 | 0 | 1 |
0 | 1 | 0 | 0 | O | 0 | 1 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 |
0 | 0 | 0 | 1 | 0 | 0 | O | 0 |
(10)
Das Ausführungsbeispiel der Erfindung wird mit dem durch Matrix
9 definierten Code in einer 8-Spur-Anordnung mit 8 Bits großen
Bytes gezeigt. Die beiden Prüfbytes C und C? werden demnach
aus den Informationsbytes Z , Z«, Zg, Z., Z5r Z' mit Hilfe der
folgenden Gleichungen errechnet.
Cl = 1S
Z2 θ ... Φ Ig Z6
C2 ~ T8 Zl β T8 Z2
T8 Z6
(11) (12)
309827/1073
PO 970 049
-' 12 -
Nachdem die Nachricht codiert und im Aufzeichnungsgerät benutzt
wurde, werden die gelesenen Nachrichtenbytes an den Decodierer gesendet oder übertragen. Die Nachricht wird durch einen Datenverteiler
verteilt, der die codierte Nachricht parallel zwei Schieberegistern SRI und SR2 zuführt. Der Decodierer errechnet
zwei als Syndrome S, und S_ bekannte Ausdrücke, die folgendermaßen
definiert sind:
• 1 I I
S1 = C1 Φ Z1 * Z2 Φ ... * Z, (13)
S0 = c,1 » τλ Z1' · τ2λ ζ ' *TkX ζ '
<14>
Il lit
Die empfangenen Nachrichtenbytes Z1 , Z2 ... Z, , C. , C2 sind
die gelesenen Nachrichtenbytes, welche den aufgezeichneten Bytes Z1, Z2, ... Z,, C1, C2 entsprechen. Wie bereits gesagt wurde,
können Fehler in bis zu zwei Spuren Fehler in den entsprechenden Bytes verursachen. Diese fehlerhaften Spuren sind durch die Spurzahlen
i und j bezeichnet und durch die Hinweissignale P. und P. in Form einer logischen "1" markiert. Der Einfachheit halber
ist es notwendig, daß i * j, 1 5 i £ k und 1 ± j 5k + 2, ist.
Der Fall, in welchen zwei bezeichnete fehlerhafte Spuren die Prüfspuren sind, wird ignoriert.
Die Hinweissignale werden vom System abgeleitet, in welchem die Fehlerkorrektur erfolgt. Zu ihrer Erzeugung gibt es natürlich
verschiedene Einrichtungen, wie sie z.B. in der US-Patentschrift 3 639 900 beschrieben sind. In dieser Patentschrift wird die
Qualität der aufgezeichneten und anschließend zur Kontrolle gelesenen Daten auf Echtzeit-Basis als Hinweis auf mögliche Fehlerbedingungen
benutzt.
Die aus den codierten Daten- und Prüfbytes erzeugten Syndrome enthalten
die Fehlermuster. Diese Fehlermusterbytes e. und e. entsprechen den Spuren i und j (wenn i = j wird angenommen, e. =0).
S und S haben das algebraische Äquivalent:
309827/1073
PO 970 049
e. Φ e. wenn i <
j < k + 2
. , (15)
S =
1 e. wenn j = i oder k + 2
1 e. wenn j = i oder k + 2
T1 e. Φ Τ-3 e. wenn i <
j < k + 1
S"2 = T1 e. wenn j = i oder k + 1 (16)
T1 e. Φ e. wenn j = k + 2
Diese Ausdrücke können für e^ und e. folgendermaßen aufgelöst
werden:
e. = Tx (S Φ Ty S2) wenn j φ k + 2 (17)
e. = S Φ e. wenn j ^ k + 2 (18) S wenn j = k + 2
(T(j"l)Xd>
I)"1 wenn i < j < k +1 TX - (19)
I wenn j = i oder k+1
y = -i modulo 2b-l . (20)
Für jeden Wert j-i sind die Werte des Parameters χ und für jeden
Wert von i der Parameter χ definiert. Diese Parameter können algebraisch errechnet werden. Wenn z.B. im Ausführungsbeispiel
Λ 68
T = Tg gemäß Gleichung (10) gegeben ist, dann errechnen
sich die in den Tabellen 1 und 2 aufgeführten Werte für χ und y.
309827/1073
PO 970 049
j-i = | O | oder | O | 1 | 2 | 3 | 4 | 5 |
j=k+l | ||||||||
X = | 3 | 6 | 11 | 12 | 5 |
Tabelle 1. Parameter χ
Beachte:
j * k + 2
j * k + 2
Tabelle 2. Parameter y
i 1 | 2 | 3 | 4 | 5 | 6 |
y 14 | 13 | 12 | 11 | IO | 9 |
Mit den oben errechneten Werte für χ und y wird das Fehlermuster
e. aus den Syndromen S und S gemäß Gleichung (17) errechnet. Die fehlerhaften Bytes Z. und Z. können dann mit
dem Fehlermuster e. und dem Syndrom S korrigiert und die korrigierten Bytes Z1 und Z. erzeugt werden, da:
2. Φ S- Λ e. wenn j f k + 2
Z± Φ
wenn j = k + 2
(21)
t. -
. e.
(22)
Der Decodierprozeß besteht also aus:
1. Der Errechnung der Syndrome S1 und S0 aus den empfangenen
Nachrichtenbytes Z. , Z- ... : Gleichungen (3) und (4).
' Cl ' C2
nach den
309327/1073
PO 970 049
2. Der Errechnung des Fehlermusters e. aus den Syndromen
S und S gemäß Gleichung (17) mit den passenden Werten
der Parameter χ und y aus den vorberechneten Tabellen.
3. Der Korrektur der fehlerhaften Bytes mit dem Fehlermuster e. und dem Syndrom S nach den Gleichungen (21) und (22).
4. Der Erkennung nicht korrigierbarer Fehler nach folgenden Grundsätzen:
4a. Wenn mehr als zwei Spuren als fehlerhaft gekennzeichnet sind, kann der Code keine zuverlässige
Fehlerkorrektur liefern.
4b. Wenn zwei Spuren als fehlerhaft bezeichnet sind,
haben die Fehlermusterbytes e. und e. eindeutige Werte. -
4c. Wenn genau eine Spur als fehlerhaft bezeichnet ist, (in diesem Fall ist i gleich j), dann muß das
Fehlermusterbyte e. in allen Bitpositionen Null sein. Wenn der errechnete e.-Wert nicht in allen
Bitpositionen Null ist, dann wird das als Erkennung anderer Fehler interpretiert.
4d. Wenn keine Spur als fehlerhaft bezeichnet ist,
müssen die Syndrome S und S7 und somit auch die
Fehlermusterbytes e. und e. in allen Bitpositionen
Null sein. Ist das nicht der Fall, wird das als Erkennung von Fehlern interpretiert.
In dem angenommenen Beispiel der 8 Bits großen Bytes werden die Daten Z1, Z„ ... Z, in Form von Blocks gleichgroßer Bytes am
Eingang 9 des in Fig.2 gezeigten Codierers 10 empfangen und durch einen Datenverteiler 12 parallel auf die Schieberegister
SRI und SR2 verteilt. Die Schieberegister SRI und SR2 führen
die oben beschriebenen Berechnungen zur Erzeugung der Prüfbytes C1 und C« durch. Diese Prüfbytes werden den Nachrichtendaten am
Ausgang 14 des Codierers 10 angehängt. Diese codierten Daten
309827/1073
PO 970 049
werden zur Benutzung einem mehrspurigen Aufzeichnungsgerät oder
Sender zugeführt. Die Figuren 4 und 5 zeigen die Schieberegister SRI bzw. SR2. Jedes Schieberegister enthält 8 binäre Speicherelemente
(O)...(7) mit entsprechenden Rückkopplungsverbindungen und modulo 2 Summierungsschaltungen an jeder Eingangsstufe.
Mit einem Taktsignal.schiebt das Schieberegister den Inhalt von rechts nach links und empfängt gleichzeitig das neue Eingangssignal.
Schieberegister dieser Art sind allgemein bekannt und können bei vorhandener Rückkopplungsleitung aus vorhandenen Bauteilen
in der verschiedensten Art aufgebaut werden.
Jedes Eingangsbit Z(O) ... Z (7) des 8 Bits großen Byte wird einer in Fig.4 gezeigten separaten modulo-2-Summierungsschaltung
16 am Eingang jeder der acht separaten Schieberegisterspeicherelemente 18 zugeleitet. Der Ausgang 20 eines jeden binären
Speicherelementes 18 ist über eine Rückkopplungsverbindung 22 auf den einen Eingang der modulo-2 Addierschaltung 16 rückgekoppelt.
Jedes der 8 Bits ZO ... Z7 des 8 Bits großen Byte ist in Fig.5
als Eingangssignal für die modulo-2 Addierschaltungen 20-27 am Eingang jedes Speicherelementes des Schiberegisters dargestellt.
Die Ausgänge 30-37 eines jeden binären Speicherelementes (0 ... 7) sind mit bestimmten modulo-2 Addierschaltungen 20 - 27
6 8
entsprechend den Spalten der Matrix T0 verbunden, die in
Gleichung (10) angegeben ist. Der Ausgang 30 des nullten Speicherelementes
ist z.B. auf die modulo-2-Addierschaltungen 21 und 24
am Eingang der ersten und der vierten Stufe des Schieberegisters zurückgekoppelt. Diese Verbindungen werden gemäß der nullten
fi8
Spalte von Tg vorgenommen, die Einsen in der ersten und vierten Position aufweist. Der neue 8 Bit Vektor, der das Eingangssignal bildet, wird in das Register über die modulo-2 Addierschaltungen 20 - 27 gleichzeitig mit den erwähnten Rückkopplungssignalen eingegeben. Wenn ein 8-stelliges Byte X den gegenwärtigen Inhalt des Schieberegisters SRI und SR2 darstellt und Y das mit einer Schiebeoperation eingegebene Eingangssignal, dann ist der nächste
Spalte von Tg vorgenommen, die Einsen in der ersten und vierten Position aufweist. Der neue 8 Bit Vektor, der das Eingangssignal bildet, wird in das Register über die modulo-2 Addierschaltungen 20 - 27 gleichzeitig mit den erwähnten Rückkopplungssignalen eingegeben. Wenn ein 8-stelliges Byte X den gegenwärtigen Inhalt des Schieberegisters SRI und SR2 darstellt und Y das mit einer Schiebeoperation eingegebene Eingangssignal, dann ist der nächste
309827/1073
PO 970 049
Inhalt im Schieberegister SRI Y Φ Χ und im Schieberegister SR 2
ist er Y-* Tg8 .X.
Die Information wird in. die Schieberegister SRI und SR2 in umgekehrter
Reihenfolge eingegeben, d.h., zuerst wird Z^ und zuletzt
Z, eingegeben. Nachdem das letzte Byte Ζχ eingegeben wurde,
.werden die Register ein weiteres Mal bei einem Null-Eingangssignal
verschoben. Der Inhalt des Schieberegisters SRI ist Z Φ Z0 Φ ... Φ Z, und stellt das erste Prüfbyte dar. Der Inhalt
des Schieberegisters SR2 ist ΤΛ Ζχ Φ T Z2 Φ ... T- Zfc-und
stellt das zweite Prü.'byte dar. Zur Startzeit des Codierers 10,
tQ, wird der Binärzähler 40 auf k + 1 gesetzt. Der Zähler zählt
synchron mit den Taktsignalen herunter. Bei der Zahl 0 erzeugt die letzte Verschiebung d r Register SRI und SR2 die entsprechenden
Prüfbytes. Das Signal für die Zahl Null vom Zähler 40 schließt die Schalter SWl und SW2 nach einer Verzögerung von einer Zeiteinheit (während des nächsten Taktsignales).
Der in Fig.3 gezeigte Decodierer 42 empfängt die codierten, gelesenen
Nachrichtenbytes oder die benutzten Nachrichtenbytes
• I III.
Z1 , Z ... Z, , C, , C2 und die Hinweissignale P., P3...P,,
P,+1,Pk 2, die die fehlerhaften Spuren bezeichnen. Der Decodierer
42 berechnet aus diesen EingangsSignalen die korrigierten
Datenbytes 2., t~ ··· ^, oder erzeugt ein Signal E für
einen nicht korrigierbaren Fehler. Das überdachungszeichen bezeichnet
die korrigierten Daten.
Der Decodierer 42 errechnet zuerst die Syndrome S und S in den
Schieberegistern SRI und SR2 gemäß Darstellung in den Figuren
11 1 Ii
4 und 5 aus den Bytes Z1 , Z0 ... Z, , C1 , C0 nach den
Gleichungen (3) und (4). Die Nachrichtenbytes Z, , Z, ... Z1
Jc Jc~ χ χ
werden den Schieberegistern SRI und SR2 durch den Verteiler 44
für die gelesene Nachricht in dieser Reihenfolge zugeführt. Die Decodierung wird natürlich zur Korrektur von Fehlern- ausgeführt,
die durch die Benutzung der Nachricht entweder im Aufzeichnungsgerät
oder während der übertragung in der Nachricht entstanden.
po 970 049 309827/1073 .
Während jedes Byte der Eingabenachricht von den Schieberegistern SRI und SR2 empfangen wird, wird deren Inhalt gleichzeitig durch
ein Taktsignal verschoben. Nachdem das Byte Z1 eingegeben worden
1st, wird das Byte C. in das Schieberegister SRI und das
Byte C2 in das Schieberegister SR2 einggeben, während der Registerinhalt
einmal verschoben wird. Der Inhalt des Schiebere-
■ II t
gisters SRI ist jetzt C1 Φ Z, Φ Z2 Φ ... Z. , nämlich das
Syndrom S . Der Inhalt des Schieberegisters SR2 ist jetzt
C0 Φ T Z1 T Z0 Φ ... Φ T Z, , nämlich das Syndrom S0.
JL
Ι Λ
JK £*
Die Syndromerzeugung wird durch das Taktsignal gesteuert. Der
Binärzähler B wird auf k + 1 zur Zeit t' gesetzt (Startzeit
für den Decodierer) und zählt synchron mit den Taktsignalen herunter. Bei der Zahl 0 ergibt sich durch die letzte Verschiebung
der Inhalt der Register SRI und SR2 als Inhalt des Schieberegisters
SRI das Syndrom S und als Inhalt des Schieberegisters
SR2 das Syndrom S„.
Das Signal für die Zahl 0 vom Zähler B. startet den Zähler B-nach
einer Verzögerung von einer Zeiteinheit mit dem nächsten Taktsignal. B» wird auf den Binärwert y zur Zeit tJ gesetzt.
Der Inhalt des Zählers B„ wird synchron mit dem Taktsignal heruntergezählt, welches kontinuierlich auch die Inhalte der Register
SRI und SR2 verschiebt. Beim Zählerstand Null im Zähler
B_ wird der Schalter SWl geschlossen. Dadurch wird der Inhalt des Schieberegisters SRI, nämlich das Syndrom S in das Schieberegister
SR2 eingegeben. Somit ist der Inhalt des Sehieberegisters SR2 jetzt S. Φ T S, und der Inhalt des Schieberegisters
SRI bleibt das Syndrom S .
Das Signal für den Zählerstand Null vom Zähler B, startet den Zähler B3 nach einer Verzögerung von einer Zeiteinheit mit dem
nächsten Taktsignal. Der Zähler B3 wird auf den binären Wert χ
zur Zeit tQ gesetzt. Der Inhalt des Zählers B_ wird synchron
mit dem Taktsignal heruntergezählt, welches kontinuierlich die
Inhalte der Register SRI und SR2 verschiebt. Beim Zählerstand Null im Zähler B- erzeugt die letzte Verschiebung des Inhaltes
309827/1073
PO 970 049
von SRI und SR2 TXA (S1, Φ ΤΥλ S0) als Inhalt von SR2, während
der Inhalt des Schieberegisters SRI das Syndrom S bleibt.
Das Signal für den Zählerstand Null des Zählers B3 schließt die
Schalter SW2 und SW3 nach einer Verzögerung von einer Zeiteinheit
mit dem nächsten Taktsignal. Der Schalter SW3 wird außerdem
durch das Hinweissignal Pfc.? gemäß späterer Beschreibung
der Fehlerkorrekturschaltang gesteuert.
Fig.6 zeigt schematise!! den Generator für Fehlerspur-Parameter,
der die Parameter χ und y als binäre Zahlen aus den Eingangshinweissignalen
P1, P ... ρ, , P, und Pk+? erzeugt. Der Generator
46 erzeugt auch die neuen Hinweise I1/ I2 ··· 1^./ die die
erste fehlerhafte Datenspur bezeichnen, welche die I-te Spur genannt
wird. Sie erzeugt auch die Signale N , N , N_, die entsprechend Of 1 und mehr als 2 fehlerhafte Spuren anzeigen.
In Fig.6a ist das Netzwerk zur Erzeugung der I -Hinweise I.....I,
JL
gezeigt, die die erste fehlerhafte Datenspur, die sogenannte I-Spur bezeichnen. Kombinationen der HinweisSignale P,...,P- wer-
1 b
den als Eingangssignale für die UND-Glieder 50 benutzt. Die Kombinationen sind in aufsteigender Reihenfolge, bei 1 beginnend,
angeordnet. Wenn z.B. die Gruppierung P ist, dann folgt P , V ,
dann P , P3, P3 usw. Alle Eingangssignale mit Ausnahme des zusätzlichen
Eingangssignales bei jeder Kombination werden in
einer Negationsschaltung an den Eingängen der entsprechenden UND-Glieder 50 negiert. Solange alle Hinweissignale 0 sind,
liefert kein UND-Glied ein Ausgangssignal. Das erste von Null verschiedene Hinweissignal wird jedoch durch ein Ausgangssignal
des entsprechenden UND-Gliedes bezeichnet, d.h. das UND-Glied 50 hat dieses Hinweissignal als zusätzliches Eingangssignal.
Die Schaltung nach Fig.6b hat als Eingangssignal die nach Fig.6a
erzeugten I-Hinweissignale. Diese Schaltung erzeugt die y Parameter
als eine binäre Zahl V3, y2, Y1, yQ mit b Bits. Die Eingangskombinationen
der I-Hinweissignale werden bestimmt gemäß
3G3837/1Q73
PO 970 049
Tabelle 2. Die Verbindungen können durch Umschreiben von y in
einer Tabelle als binäre Zahl aus b Bits mit den entsprechenden I-Hinweissignalen bestimmt werden, wie es in Tabelle 3 gezeigt
ist.
Tabelle 3. Parameter y als binäre Zahl
Bezeichnet mit | y | 14 | y | als binäre | yi | Zahl | |
i | 1I | 13 | y | 3 y2 | 1 | yo | |
1 | 1I | 12 | 1 | 1 | O | O | |
2 | 1S | 11 | 1 | 1 | O | 1 | |
3 | 1A | 10 | 1 | 1 | 1 | O | |
4 | 1S | 9 | 1 | O | 1 | 1 | |
5 | 1 | O | O | O | |||
6 | 1 | O | 1 | ||||
Die Signale yo, yo, y, und y_ werden daher aus I1, I_ ... 1-erzeugt.
Die I-Hinweis-Eingangssignale werden zu drei Gruppen
von drei und dann zu einer Gruppe von sechs Signalen zusammengefaßt. Diese werden in die ODER-Glieder 52 eingegeben, die als
Ausgabe die y Parameter erzeugen, y, ist immer eine Eins, wenn eines der I-Signale eine Eins ist. y2 ist immer eine Eins, wenn
I. oder I^ oder I_ eine Eins ist. yQ ist eine Eins, wenn I3 oder
I. oder I, eine Eins sind. 4 6
Fig.6c zeigt ein Schaltbild, welches die χ Parameter als binäre
Zahl X3, x2# χ , χ mit b-Bits aus den P-Hinweisen erzeugt. Bevor
die χ Parameter erzeugt werden können, müssen die (j-i) Werte
aus den Spur-Hinweissignalen P ,P. die P-Hinweissignale zu
PO 970 049
P erzeugt werden, indem
6
für separate UND-Glieder
für separate UND-Glieder
56 kombiniert werden. Diese paarweise Anordnung der Hinweis-Eingangssignale
ist in der ersten Paargruppe durch den Wert Eins getrennt/ während die zweite Paargruppe durch den Wert Zwei, die
dritte Paargrupp"e durch den Wert Drei, die vierte Gruppe durch
den Wert Vier und die letzte Paargruppe durch den Wert Fünf getrennt sind. Jedes der P-Hinweis-Signalpaare wird entsprechenden
UND-Gliedern 56 zugeführt, deren Ausgangssignale den ODER-Gliedern
58 eingegeben werden, um den zugehörigen j-i-Wert zu erhalten. Den Wert j-i=l erhält man z.B. vom ODER-Glied 58,
welches mit den UND-Gliedern 56 verbunden ist, deren Eingangssignale durch die durch den Wert Eins getrennten Paare gebildet
werden. In ähnlicher Weise sind die anderen ODER-Glieder 58 auf ähnlichen Eigenschaften basierend verbunden. Das zweite ODER-Glied
58 hat z.B. einen Ausgangswert j-i=2, während das dritte einen Wert von j-i=3 und das vierte j-i=4 hat. Jeder dieser j-i-Werte
ist wieder mit zugehörigen ODER-Gliedern 60 verbunden. Die Verbindungen entsprechen den zugehörigen Funktionen und werden
mit Hilfe der aus der Tabelle 1 abgeleiteten nachfolgenden Tabelle 4 festgelegt. Das Verfahren ist ähnlich wie bei der Erzeugung
der Verbindungen für den vorhergehenden Parameter. Der χ Parameter ergibt sich dann als eine binäre Zahl mit b Bits mit
den Signalen x_,
χ , x_.
Tabelle | - | 4. | Parameter χ | X | als | binäre Zahl | O | O | O | |
j-i | Funktion | O | χ als binäre Zahl X3 X2 Xl X |
O 1 |
1 1 |
1 O |
||||
Ooder j=7 |
N1+P7 | 3 6 |
O | O | 1 | 1 | ||||
1 2 |
P1P2+P2P3+P3P4- P1P3+P2P4+P3P5- |
hP4P5 hP4P6 |
+P P 5 6 |
11 | O O |
1 | O | O | ||
3 | P1P4+P2P5+P3P6 | 12 | 1 | 1 | ο- | 1 | ||||
4 | P1P5+P2P6 | 5 | 1 | |||||||
5 | P1P6 | - | 73 | O | ||||||
309 | 827/10 |
PO 970 049
Es ist zu beachten, daß die Funktion Pk+2 bei der .Bestimmung
der Werte j-i nicht beteiligt ist. Außerdem erzeugt j-i=O oder
j=k+2 keine Eins an einem der Signalausgänge xo,x-,x„,x_.
Fig.6d zeigt die Schaltungsanordnung zur Erzeugung der Steuersignale
NQfN. und N-. N_ besagt, daß keines der Spur-Hinweis-Signale
P ,P3...P, „ vorliegt. N1 besagt, daß nur eines vorliegt
und N3, daß mehr als zwei Spur-Hinweissignale vorliegen. Das
Signal NQ wird als Ausgangssignal des UND-Gliedes 62 erzeugt,
dessen Eingänge durch die acht Hinweissignale P1...P0 gebildet
werden. Wenn nur eines dieser Hinweissignale anliegt» wird kein
Ausgangssignal vom UND-Glied 62 erzeugt. Das Fehlen von N_ besagt
also, daß ein Spur-Hinweissignal vorliegt. Das Äusgangssignal
N1 erhält man von einer Schaltung 64 für "Eins und nur
Eins", die gleichfalls als Eingangssignale die HinweisSignaIe
P1-P0 benutzt. Das Ausgangssignal N. erhält man von der Schal-
Io X
tung 64, wenn nur ein Hinweis-Eingangssignal für diese Schaltung vorliegt. Das Ausgangssignal N_ erhält man von einer Schwellwertschaltung
66, die ein Eins-Ausgangssignal liefert* wenn mehr als zwei ihrer Eingangssignale den Wert Eins aufweisen.
Fig.7 zeigt die Fehlerkorrekturschaltung 68, die die korrigierten
Datenbytes 2, ,2., ... 2, durch Kombination der gelesenen Datenbytes
Z1 ,Z2 «.«Z, mit dem Fehlermusterbyte e. und den Hinweissignalen
I ,...I, und P ...P. erzeugt. Die Kombination erfolgt nach den Gleichungen (21) und (22), welche folgendermaßen
interpretiert werden:
Wenn j=k+2 ist, d.h., das Hinweissignal liegt vor, dann sollte der Ausgang e. des SR2 gesperrt werden. Die Sperrung erfolgt
über UND-Glieder (Schalter SW3) nach Darstellung In Fig.3.
Sonst wird e. modulo 2 zu den fehlerhaften Lesebytes addiert
und S1 zum ersten fehlerhaften Lesebyte. Diese Addition wird
in einem Satz von acht modulo-2 Summierschaltungen 70 und zwei
Sätzen von acht UND-Gliedern 72,74 für jedes der Datenbytes
I I I I I I
Z. ,Z2 ι Z3 , Z4 , Z5 , Z, gemäß Darstellung in Fig.7 durch-
309827/1073
PO 970 049
geführt. Der erste Satz von 8 UND-Gliedern 72 wirkt wie eine normal geschlossene Torschaltung, welche durch die entsprechenden
Spur-Hinweissignale gesteuert wird, und leitet das Byte e. nur weiter, wenn das Spur-Hinweissignal vorliegt. Der zweite
Satz von 8 UND-Gliedern 74 wird durch die entsprechenden I-Signale
gesteuert und leitet das Syndrom S_ nur weiter, wenn das I-Hinweissignal
vorliegt. Der Satz von-8 iacdulo-2 Summierschaltungen
70 kombiniert die Eingangssignale Z.,e. und S zur Erzeugung
des korrigierten Bytes &..
In Fig.8 ist die Anzeigeschaltung 80 für nicht korrigierbare
Fehler gezeigt, die einen großen Prozentsatz nicht korrigierbarer
Fehler erkennt. Diese Schaltung erzeugt ein Fehleranzeigesignal E, wenn eine der folgenden Bedingungen auftritt:
1. N- liegt vor und zeigt an, daß mehr als zwei Spuren fehlerhaft
sind. Diese Bedingung läßt sich dem N,.-Eingangssignal
zum letzten ODER-Glied 81 entnehmen.
2. N liegt vor und zeigt an, daß nur eine Spur fehlerhaft
ist und daß e., das Ausgangssignal von SR2, nicht in
allen Bitpositionen Null ist. Da die' Signale N und e.^0
dem UND-Glied 82 als Eingangssignale dienen, bildet sein Ausgangssignal eines der Eingangssignale für das ODER-Glied
81. Das Signal e.^0 wird durch das ODER-Glied 83
erzeugt, welches alle e.-Bits als Eingangssignale empfängt.
3. N ist vorhanden und besagt, daß keineSpur fehlerhaft
ist, wenn e., das Ausgangssignal von SR2 oder S-, das
Ausgangssignal von SRI, nicht in allen Bitpositionen
, Null ist. Das erfolgt durch Ableitung des Signales S ^O
vom ODER-Glied 85, das als Eingangssignale alle Bits von
S empfängt. Das Signal S -Ä) wird als ein Eingangssignal
an das UND-Glied 84 zusammen mit dem Eingangssignal NQ
angelegt. Das Ausgangssignal des UND-Gliedes 84 wird dem ODER-Glied 81 zugeführt. Das Signal e.^0 und das Signal
309827/1073
PO 970 049 '
N werden als Eingangssignale dem UND-Glied 86 zugeleitet,
dessen Ausgangssignale ein weiteres Eingangssignal für das
ODER-Glied 81 bildet. Unter den oben aufgezählten Bedingungen erzeugt also eines der Eingangssignale N ,N und N_ ein Ausgangssignal
E des ODER-Gliedes 81 und zeigt damit die Erkennung von nicht korrigierbaren Fehlern an.
309827/1073
PO 970 049
Claims (12)
1. System zur Korrektur der Fehler in zwei fehlerbehafteten
Spuren eines vielspurigen Aufzeichnungsgerätes, gekennzeichnet
durch
eine Codiervorrichtung s(SRl, SR2; Fig. 2) zur Erzeugung
zweier Prüfbytes für Nachrichtendaten Z , Z , Z_,...Z,,
die in quer zu einer Spur angeordneten Blöcken aus k Bytes enthalten sind, wobei jedes Byte f Datenbits aufweist
und für f gilt: f = b χ m, worin b und m ganze Zahlen >1 sind und k eine ganze Zahl ist, für die gilt: 2<k<2 ,
wobei die Prüfbytes nach den Gleichungen:
und
C. — Z.. Φ Z_ Φ Z _ ... Φ Z,
C2 - Τλ Z1 Θ Τ2λ Z2 Φ...Φ TkX Zk
berechnet werden, worin T die Begleitmatrix eines binären primitiven Polynoms g(x) vom Grade f ist und λ irgendeine
ganze Zahl, die durch den Ausdruck t(2 -I)/(2 -1) gegeben ist, in welcher t irgendeine positive ganze Zahl ist, die
prim ist zu 2 -1,
eine Vorrichtung (SWl, SW2) zum Anfügen der beiden Prüfbytes
an die Nachrichtendaten, um codierte Daten für die Benutzung in einem Vielspurdatensystem zu erhalten,
eine Vorrichtung (Fig. 3) zur Decodierung der codierten Daten, die nach der Benutzung durch Z ', Z ',...Z, ', C ',
C^1 bezeichnet werden, wobei die Decodiervorrichtung ein
erstes und zweites Schieberegister (SRI, SR2; Fig. 3)
enthält zur Erzeugung erster und zweiter Syndrome S1 und
S„ aus den codierten Daten nach deren Benutzung entsprechend
den Gleichungen:
S— ril/a^liBiTlfli fli »7 ' -
- — ^, Wo- <3Ρώ— Φ·
< iW iii
S-O ' (Ά 1V V ' ft φ 7 ' (Ά
(Ά φ 7 ·
ry — ^- r) tDX Zi. WJ. it ~ W ... Φ 1 ώ·.,
eine Vorrichtung zur Identifizierung der fehlerbehafteten Spur,
eine Vorrichtung zur Lokalisierung der fehlerhaften Bytes
eine Vorrichtung zur Lokalisierung der fehlerhaften Bytes
309827/1073
PO 970 049
in zwei der fehlerbehafteten Spuren und eine Vorrichtung (68) zur Korrektur der Fehler in den als
fehlerhaft ermittelten Bytes in zwei fehlerbehafteten Spuren.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Vorrichtung zur Codierung der beiden Prüfbytes enthält
ein erstes rückgekoppeltes Schieberegister (SRI; Fig. 4),
das eine Modulo-2-Addition der ihm nacheinander als Eingangssignale
zugeführten Informationsbytes vornimmt, und ein zweites rückgekoppeltes Schieberegister (SR2; Fig. 5),
das das Produkt aus seinem Inhalt und dem eintreffenden
Datenbyte und die Modulo-2-Summe davon mit dem Produkt des Registerinhaltes und dem nächsten Eingangsbyte bildet.
3. System nach Anspruch 2, dadurch gekennzeichnet, daß das zweite rückgekoppelte Schieberegister f Datenstufen aufweist,
daß die Rückkopplungsverbindungen jeder Stufe bestimmt werden entsprechend einer digitalen 1 in der
entsprechenden Spalte einer Matrix T^, wobei die Stellen
der Einsen einer Spalte die Rückkopplungsverbindungen auf die Eingänge der Schieberegisterstufen bestimmen, die
eine entsprechende numerische Lage in dem rückgekoppelten Schieberegister aufweisen.
4. System nach Anspruch 1, dadurch gekennzeichnet, daß die Decodiervorrichtung ferner enthält einen Generator (46)
zur Erzeugung von Fehlerspur-Parametern, dem Spur-Hinweissignale P1, P2,...Pk, ?k+1f Pk+2 zugeführt werden, um
Parameter χ und y als Binärzahlen zu erzeugen, wobei von dem Generator gelieferte neue Hinweissignale I-, I»/··-!^
die erste fehlerbehaftete Datenspur identifizieren, und von ihm erzeugte Signale NQ, N, und N- anzeigen, daß keine,
eine oder mehr als zwei Spuren fehlerbehaftet sind.
5. System nach Anspruch 4, dadurch gekennzeichnet, daß der PO 970 049 309B77/1O73
Generator für Fehlerspur-Parameter eine Mehrzahl von UND-Gliedern
(50; Fig. 6a) und NICHT-Gliedern enthält, denen die auf eine fehlerbehaftete Spur hinweisenden Signale
P1, P2,...Pk zugeführt werden, die in folgende Gruppen
zusammengefaßt sind: P1, PjP2' PiP2P3'*"*P1P2P3**'Pk'
wobei alle Hinweissignale außer dem in jeder Gruppe neu hinzukommenden Hinweissignal einem der NICHT-Glieder
zugeführt werden, so daß ein Ausgangssignal I. von dem UND-Glied erzeugt wird, in welchem das neu hinzukommende
Hinweissignal den Wert 1 hat und dadurch die erste fehler behaftete Datenspur identifiziert.
6. System nach Anspruch 5, dadurch gekennzeichnet, daß die I-Signale, die die erste fehlerbehaftete Spur identifizieren,
zu EingangsSignalen für eine erste Gruppe von ODER-Gliedern (52; Fig. 6b) gruppiert werden, wobei die
Gruppierung vorgegeben ist entsprechend einer Tabelle, in der der. als Ausgangssignal der ODER-Glieder erzeugte
Parameter y erhalten wird als eine vorgegebene Binärzahl aus b Bits.
7. System nach Anspruch 4, dadurch gekennzeichnet, daß eine
zweite Mehrzahl von UND-Gliedern (56; Fig. 6c) und eine zweite und dritte Mehrzahl von ODER-Gliedern (58, 60)
vorgesehen ist, denen die Spur-Hinweissignale P., P2,...P
paarweise zugeführt werden, um als Ausgangssignal den
Parameter χ in Form einer Binärzahl zu erhalten, wobei die Spur-Hinweissignale der zweiten Mehrzahl von UND-Gliedern
paarweise derart zugeführt werden, daß die Paare der ersten Gruppe alle möglichen benachbarten Paare darstellen,
die Paare der zweiten Gruppe alle möglichen Paare, deren Indizes sich um den Wert 1 unterscheiden,
und die Paare der dritten Gruppe alle möglichen Paare umfassen, deren Indizes sich um den Wert 2 unterscheiden,
während die Paare der k-1. Gruppe alle die möglichen Paare sind, deren Indizes sich um den Wert k-1 unterschei
Po 970 049 309827/
den, daß die Ausgänge jedes der UND-Glieder, die mit der zweiten Mehrzahl von ODER-Gliedern (58) verbunden sind,
deren Ausgangssignale dem Wert j-i = 1 bis j-i » k-1 entsprechen,
wobei jeder der Werte j-i der dritten Gruppe von ODER-Schaltungen (60) als Eingangssignal zugeführt wird,
und die Verbindungen entsprechend einer vorgegebenen Tabelle vorgenommen werden, die den Parameter χ als eine
Binärzahl aus b-Bits angibt.
8. System nach Anspruch 4, gekennzeichnet durch eine Kombination von NICHT- und UND-Gliedern (62; Fig. 6d), eine
Schaltung "1 und nur 1" (64) und eine Schwellwertschaltung 66, die Signale N_, N und N,, die O, 1 und mehr als
2 fehlerbehaftete Spuren anzeigen, erzeugen.
9. System nach Anspruch 4, dadurch gekennzeichnet, daß der Decodierer enthält einen Zähler, der gleichzeitig mit
dem Verschiebesignal für die Schieberegister SRI und SR2 abwärtszählt, eine Vorrichtung zum Einstellen des Zählers
auf den binären Wert von χ und zum Abwärtszählen bis auf den Zählerstand O synchron zu dem Verschieben des Inhaltes
der Schieberegister SRI und SR2, um den Parameter χ in*
die Berechnung des Fehlermusters e. einzuführen, und
eine Vorrichtung zur Einstellung des Zählers auf den Binärwert y und zum Abwärtszählen bis auf O synchron
mit dem Verschieben des Inhaltes der Schieberegister SRI und SR2, um den Parameter y in die Berechnung für
das Fehlermuster e. einzuführen, das aus den Syndromen S. und S2 nach folgender Gleichung berechnet wird:
e. = Τχλ [S1 Φ Τγλ S2].
10. System nach Anspruch 9, dadurch gekennzeichnet, daß eine Sperrvorrichtung (SW3; Fig. 3) vorgesehen ist, um das
Ausgangssignal e. des Schieberegisters SR2 zu sperren, wenn j = k+2 und ein Hinweissignal Pj.+2 vor^an<^en
und anzeigt, daß die Spur k+2 fehlerhaft ist.
309827/1073
PO 970 049
11. System nach Anspruch 10, dadurch gekennzeichnet, daß
die Fehlerkorrekturvorrichtung (68; Fig. 3) eine Vorrichtung
enthält, um das Signal e. (Modulo 2) zu den fehlerhaft gelesenen Bytes zu addieren und um das Syndrom S
zu dem ersten fehlerhaft gelesenen Byte zu addieren.
12. System nach Anspruch 4, dadurch gekennzeichnet, daß die Decodiervorrichtung ferner eine Schaltung (80; Fig. 3)
enthält, die einen unkorrigierbaren Fehler anzeigt aufgrund der Signale N , N und N-, wobei das Signal N3
anzeigt, daß mehr als zwei Spuren fehlerhaft sind und das Signal N anzeigt, daß nur eine Spur fehlerhaft und
das Signal e. nicht in allen Bitstellen null ist .und das
Signal N anzeigt, daß keine Spur fehlerbehaftet ist, wenn e. oder S in allen Bitstellen null ist.
309827/1073
PO 970 049
Lee rseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US21254471A | 1971-12-27 | 1971-12-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2263488A1 true DE2263488A1 (de) | 1973-07-05 |
DE2263488C2 DE2263488C2 (de) | 1982-04-29 |
Family
ID=22791464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2263488A Expired DE2263488C2 (de) | 1971-12-27 | 1972-12-27 | Einrichtung zur Erkennung und Korrektur von Fehlern in zwei fehlerbehafteten Spuren eines Vielspur-Datensystems |
Country Status (7)
Country | Link |
---|---|
US (1) | US3745528A (de) |
JP (1) | JPS5610657B2 (de) |
CA (1) | CA987031A (de) |
DE (1) | DE2263488C2 (de) |
FR (1) | FR2165977B1 (de) |
GB (1) | GB1369725A (de) |
IT (1) | IT970967B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2532149A1 (de) * | 1974-08-19 | 1976-03-04 | Ibm | Fehlerkorrekturanordnung |
DE2948126A1 (de) * | 1978-11-28 | 1980-06-26 | Matsushita Electric Ind Co Ltd | Digitaler signalprozessor |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE30187E (en) * | 1972-11-15 | 1980-01-08 | International Business Machines Corporation | Plural channel error correcting apparatus and methods |
US3982226A (en) * | 1975-04-03 | 1976-09-21 | Storage Technology Corporation | Means and method for error detection and correction of digital data |
JPS52111350A (en) * | 1976-03-16 | 1977-09-19 | Nec Corp | Error pattern correction operation method |
US4107650A (en) * | 1976-08-13 | 1978-08-15 | The Johns Hopkins University | Error correction encoder and decoder |
US4084137A (en) * | 1976-08-24 | 1978-04-11 | Communications Satellite Corporation | Multidimensional code communication systems |
US4145683A (en) * | 1977-11-02 | 1979-03-20 | Minnesota Mining And Manufacturing Company | Single track audio-digital recorder and circuit for use therein having error correction |
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 |
US4205324A (en) * | 1977-12-23 | 1980-05-27 | International Business Machines Corporation | 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 |
US4292684A (en) * | 1978-11-01 | 1981-09-29 | Minnesota Mining And Manufacturing Company | Format for digital tape recorder |
GB2042228B (en) * | 1979-01-31 | 1983-09-14 | Tokyo Shibaura Electric Co | Data correcting system |
JPS55149551A (en) * | 1979-05-10 | 1980-11-20 | Toshiba Corp | Data correcting circuit |
US4276647A (en) * | 1979-08-02 | 1981-06-30 | Xerox Corporation | High speed Hamming code circuit and method for the correction of error bursts |
JPS56119550A (en) * | 1980-02-25 | 1981-09-19 | Sony Corp | Transmission method of pcm signal |
US4555784A (en) * | 1984-03-05 | 1985-11-26 | Ampex Corporation | Parity and syndrome generation for error detection and correction in digital communication systems |
US4796110A (en) * | 1986-02-18 | 1989-01-03 | Irwin Magnetic Systems, Inc. | System and method for encoding and storing digital information on magnetic tape |
US5255272A (en) * | 1991-02-25 | 1993-10-19 | Storage Technology Corporation | Predictive tape drive error correction apparatus |
DE19960923B4 (de) * | 1999-12-17 | 2004-08-19 | Micronas Gmbh | Einrichtung zur Datenumsetzung für einen Reed-Solomon Dekodierer |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2162833B2 (de) * | 1970-12-18 | 1975-02-13 | International Business Machines Corp., Armonk, N.Y. (V.St.A.) | Einrichtung zum Codieren und Decodieren eines aus k Bytes mit je b Bits bestehenden Datenblocks und Korrektur zweier fehlerhafter Bits |
-
1971
- 1971-12-27 US US00212544A patent/US3745528A/en not_active Expired - Lifetime
-
1972
- 1972-10-06 GB GB4615372A patent/GB1369725A/en not_active Expired
- 1972-11-16 JP JP11438372A patent/JPS5610657B2/ja not_active Expired
- 1972-11-17 IT IT31778/72A patent/IT970967B/it active
- 1972-12-12 FR FR7245549A patent/FR2165977B1/fr not_active Expired
- 1972-12-18 CA CA159,256A patent/CA987031A/en not_active Expired
- 1972-12-27 DE DE2263488A patent/DE2263488C2/de not_active Expired
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2162833B2 (de) * | 1970-12-18 | 1975-02-13 | International Business Machines Corp., Armonk, N.Y. (V.St.A.) | Einrichtung zum Codieren und Decodieren eines aus k Bytes mit je b Bits bestehenden Datenblocks und Korrektur zweier fehlerhafter Bits |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2532149A1 (de) * | 1974-08-19 | 1976-03-04 | Ibm | Fehlerkorrekturanordnung |
DE2948126A1 (de) * | 1978-11-28 | 1980-06-26 | Matsushita Electric Ind Co Ltd | Digitaler signalprozessor |
Also Published As
Publication number | Publication date |
---|---|
IT970967B (it) | 1974-04-20 |
GB1369725A (en) | 1974-10-09 |
JPS4874753A (de) | 1973-10-08 |
JPS5610657B2 (de) | 1981-03-10 |
US3745528A (en) | 1973-07-10 |
FR2165977A1 (de) | 1973-08-10 |
FR2165977B1 (de) | 1980-03-21 |
CA987031A (en) | 1976-04-06 |
DE2263488C2 (de) | 1982-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2263488A1 (de) | System zur korrektur der fehler in zwei fehlerbehafteten spuren eines vielspurigen aufzeichnungsgeraets | |
DE3124425C2 (de) | Verfahren und Vorrichtung zu Fehlererkennung und Fehlerkorrektur | |
DE3040004C2 (de) | ||
DE2853892C2 (de) | ||
AT393926B (de) | Geraet zur feststellung und korrektur von fehlern in empfangenen digitaldatensignalen | |
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE3123978C2 (de) | Verfahren zum Decodieren und zur Korrektur von blockweisen digitalen Informationsworten und Anwendung des Verfahrens | |
DE2357004C3 (de) | Verfahren und Einrichtung zur Fehlerkorrektur für Daten | |
DE2942825C2 (de) | ||
DE3119669C2 (de) | ||
DE69831790T2 (de) | Verfahren zum Lesen während des Schreibens in einer Datenspeichervorrichtung | |
DE2162833A1 (de) | Einrichtung zum Codieren und Decodieren eines aus k Bytes mit je b Bits bestehenden Datenblocks | |
DE2430464A1 (de) | Einrichtung zur fehlergesicherten datenuebertragung | |
DE3231956A1 (de) | Anordnung zum uebertragen von binaerdaten ueber eine vielzahl von kanaelen mit hilfe eines faltungscodes | |
DE2106314B2 (de) | Anordnung zur Fehlererkennung und -korrektur in einem aus b Bits bestehenden Byte eines K Datenbytes enthaltenden Datenblocks | |
DE2262070A1 (de) | Mit schieberegistern arbeitendes fehlerkorrektursystem | |
DE112016003638B4 (de) | Auf eine Decodierung folgende Fehlerprüfung mit Diagnose für Produktcodes | |
DE2622184A1 (de) | Fehlerkorrekturverfahren | |
DE69814465T2 (de) | Verfahren und gerät zur datenspeicherung auf magnetischen medien, die fehlerkorrekturkodes enthalten | |
DE2704627B2 (de) | Anordnung zur Fehlerkorrektur von binärer Information | |
DE2357168A1 (de) | Speichermodul fuer eine datenverarbeitungseinheit | |
DE2217935C3 (de) | Anordnung und Verfahren zur Korrektur von Doppelfehlern in einer Nachricht | |
DE2053836A1 (de) | Verfahren und Vorrichtung zur Korrek Datengruppen | |
DE2000565A1 (de) | Fehlerkorrigierendes System zur Korrektur mehrfacher,zufaelliger Fehler | |
DE2400249A1 (de) | Anordnung zur ermittelung und korrektur von aussetzimpulsen in einer informationsimpulsfolge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
8125 | Change of the main classification | ||
8125 | Change of the main classification |
Ipc: G06F 11/10 |
|
8126 | Change of the secondary classification |
Ipc: G11B 5/02 |
|
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |