DE3017830A1 - Datenfehler-korrektursystem - Google Patents
Datenfehler-korrektursystemInfo
- Publication number
- DE3017830A1 DE3017830A1 DE19803017830 DE3017830A DE3017830A1 DE 3017830 A1 DE3017830 A1 DE 3017830A1 DE 19803017830 DE19803017830 DE 19803017830 DE 3017830 A DE3017830 A DE 3017830A DE 3017830 A1 DE3017830 A1 DE 3017830A1
- Authority
- DE
- Germany
- Prior art keywords
- deep
- low
- matrix
- data
- formula
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- 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/1806—Pulse code modulation systems for audio signals
- G11B20/1813—Pulse code modulation systems for audio signals by adding special bits or symbols to the coded information
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
Die Erfindung befaßt sich mit einem Datenfehler-Korrektursystem, welches für Syste-me zur Übertragung, Aufzeichnung und Wiedergabe digitaler Informationssignale, beispielsweise mittels PDM (Puls Code Modulation) geeignet ist und insbesondere mit Verbesserungen im Zusammenhang mit einem M-Matrix-Generator, welcher in dem Datenfehler-Korrektursystem verwendet wird.
Bei einem derartigen Datenfehler-Korrektursystem besitzen n Datenwörter W1 bis Wn mit jeweils m Bits zusätzlich eine erste Prüfkodierung <Formel> als Summe der den Datenwörtern entsprechenden Bits sowie eine zweite Prüfkodierung <Formel> als Summe derjenigen Bits, die den durch die Bearbeitung eines Polynoms X[hoch]m + X[hoch]g + 1 mittels einer Hilfsmatrix (T) erzeugten Signale entsprechen. Das Da-tenfehler-Korrektursystem kann fehlerhafte Wörter bis zu zwei Wörtern durch Ver-wendung eines M-Matrix-Generators zur Dekodierung korrigieren.
Im allgemeinen wird für den M-Matrix-Generator zur Dekodierung ein ROM-Speicher (nur Lesen-Speicher) verwendet, da der Dekodierungsvorgang zeitlichen Beschrän-kungen unterworfen ist.
Im Falle eines Niederfrequenz-PCM-Aufzeichnungssystems, welches als Aufzeich-nungs-/Wiedergabesystem bekannt ist, besitzt ein Wort beispielsweise 12 bis 16 Bits. Wird das Datenfehler-Korrektursystem auf ein derartiges System angewandt, dann muß die Speicherkapazität des verwendeten ROM-Speichers eine beachtliche Größe aufweisen; ferner wird ein Adressenzähler zur Steuerung des ROM-Speichers benö-tigt. Es ergibt sich somit ein in seinem Aufbau kompliziertes Gesamtsystem. Außer-dem ist die Anzahl der erforderlichen Bauelemente beträchtlich, wenn die Schaltung in LSI-Technik ausgeführt wird.
Es ist somit ein Ziel der Erfindung, ein Datenfehler-Korrektursystem zu schaffen, wel-ches eine Schaltung zur Bildung der Dekodier-Matrix verwendet, die vereinfacht wer-den kann, anstelle des M-Matrix-Generators zur Dekodierung, der ein ROM und ei-nen Adress-Zähler enthält und in seinem Aufbau kompliziert ist.
Ein weiteres Ziel der Erfindung ist es, ein Datenfehler-Korrektursystem mit einer Schaltung zur Bildung eine Dekodier-
Matrix zu schaffen, die eine beträchtliche Reduzierung der Anzahl der Bauelemente ermöglicht, welche zur Herstellung der Schaltung in LSI-Technik erforderlich sind.
Gemäß der Erfindung wird somit ein Datenfehler-Korrektursystem geschaffen, bei dem n Datenwörter W1 bis Wn mit jeweils m Bits zusätzlich eine Prüfkodierung
als Addition oder Summe der den Datenwörtern entsprechenden Bits und eine weitere Prüfkodierung <Formel> als Summe derjenigen Bits besitzen, welche den Signalen entsprechen, die durch eine Bearbeitung eines Polynoms X[hoch]m + X[hoch]g + 1 mittels einer Hilfsmatrix (T) gebildet werden, wobei die fehlerhaften Wörter durch Verwendung eines Matrix-Generators zur Dekodierung korrigiert wer-den, wobei als Dekodier-Matrix-Generator eine Schaltung zur Bildung einer Matrix verwendet wird, die nur die Matrix-Daten für das Dekodieren eines bestimmten Bits einer M-Matrix erzeugt und wobei eine vorgegebene Verarbeitung des Prüfkodes durchgeführt wird, während der Matrix-Wert festgehalten wird.
Bei einem derartigen Aufbau können die Daten der Dekodier-Matrix Matrix-Daten von nur einem Bit sein und so besteht keine Notwendigkeit, alle Daten der Matrix in ei-nem Nur-Lesespeicher (ROM) zu speichern. Dementsprechend werden ein ROM und der damit verbundene Adresszähler, welche den Aufbau des Systems verkomplizie-ren, nicht benötigt, mit dem Ergebnis, daß der Schaltungsaufbau vereinfacht wird und die Zahl der
erforderlichen Elemente, wenn die Schaltung in LSI-Technologie hergestellt wird, be-trächtlich reduziert wird.
Andere Ziele und Merkmale der Erfindung ergeben sich aus der nachfolgenden Be-schreibung im Zusammenhang mit den Zeichnungen. Es zeigen:
Fig. 1 bis 3 schematische Diagramme von Schieberegistern zur Erläuterung des
Grundgedankens des bei der Erfindung verwendeten Daten-Korrektur-
systems;
Fig. 4 ein schematisches Diagramm zur Erläuterung des Grundgedankens
eines Daten-Korrektursystems gemäß der Erfindung;
Fig. 5 ein Blockschaltbild eines Ausführungsbeispiels der in der Erfindung
verwendeten Schaltung zur Bildung einer Dekodier-Matrix;
Fig. 6 die Schaltung eines anderen Ausführungsbeispiels der Schaltung zur
Bildung einer Dekodier-Matrix; und
Fig. 7 ein Blockschaltbild eines Daten-Korrektursystem nach der vorliegenden
Erfindung.
Zunächst soll das Prinzip eines Datenfehler-Korrektursystems beschrieben werden, welches bei der vorliegenden Erfindung Anwendung findet.
Es wird angenommen, daß n Datenwörter und zwei Paritäts-Prüfkodierungen nach-stehend dargestellt werden, wobei jedes Datenwort aus m Bits besteht.
W1, W2, .. Wn P, Q
Datenwörter Prüfwörter
Hierbei werden die Kodierungen P und Q der Prüfwörter ausgedrückt durch
P = <Formel> .. (1)
Q = <Formel>
= <Formel> .. (2)
Die Paritäts-Prüfmatrix für derartige Kodierungen ist
wobei T eine Q-Generator-Matrix und I eine Einheitsmatrix ist.
Dies wird weiter beschrieben. Eine Umformulierung der Gleichungen (1) und (2) er-gibt
.. (3)
.. (4)
Wird das i-te und j-te Datum weggelassen, dann sind die Lösungen der Gleichungen (3) und (4) nicht gleich null, sondern Syndrome (Terme) S[tief]1 und S[tief]2 gegeben durch die Gleichungen (5) und (6). Es sei nun wieder angenommen, daß die ur-sprünglichen Datenwörter ausgedrückt sind durch W[tief]1, W[tief]2, . (W[tief]i) . (W[tief]j) .. W[tief]n, und daß die Datenwörter, bei denen das i-te und j-te Daten fehlen, ausgedrückt wird durch W´[tief]1, W´[tief]2, . (W´[tief]i) (W´[tief]j) W´[tief]n, und daß
W´[tief]i = W[tief]i + W[tief]ie, W´[tief]j = W[tief]j + W[tief]je, und W´ = W.
Außerdem ist
.. (7)
.. (8)
Aus der Gleichung (7) ergibt sich
W[tief]ie = S[tief]1 <Nicht lesbar> W[tief]je (9)
Wird die Gleichung (9) in die Gleichung (8) eingesetzt, so ergibt sich
S[tief]2 = <Formel> (10)
Diese Gleichung kann umgeformt werden in
.. (11)
.. (11)
Und damit
W[tief]je = <Formel> .. (12)
W[tief]ie = <Formel> .. (13)
Wie sich aus den Gleichungen (12) und (13) ergibt, können die weggefallenen Daten unter Verwendung der Terme S[tief]1 und S[tief]2 dekodiert werden. Die dekodierten Datenwörter sind W[tief]i + W[tief]ie und W[tief]j + W[tief]je. Werden W[tief]ie und W[tief]je dekodiert, dann kann auch das i-te und j-te Wort W[tief]i und W[tief]j deko-diert werden.
Auf diese Weise kann durch die Dekodierung von W[tief]ie und W[tief]je das richtige ursprüngliche Datenwort W[tief]i und W[tief]j dekodiert werden. Die noch zu beschrei-bende erfindungsgemäße Dekodierung bezieht sich hauptsächlich auf die Erzeugung von W[tief]ie und W[tief]je.
Es gibt ein weiteres Dekodierverfahren, bei dem zur Erzeugung der Therme S[tief]1 und S[tief]2 nur die Daten mit Ausnahme des fehlerhaften Wortes und nicht alle Da-tenwörter summiert werden, wobei die fehlerhaften Wörter W[tief]i und W[tief]j direkt mit den Definitionen S´[tief]1 = W[tief]i + W[tief]j und S´[tief]2 = T[hoch](n+1)-iW[tief]i + T[hoch](n+1)-jW[tief]j erhalten werden.
Das erstgenannte Dekodierverfahren, bei dem die fehlerhaften Daten mit der Defini-tion <Formel> und <Formel>
korrigiert werden, wird weiterhin im einzelnen beschrieben. In der gegebenen Be-schreibung wird angenommen, daß sechs Datenwörter vorhanden sind, von denen jedes vier Bits beinhaltet, und daß die T-Matrix gegeben ist durch
T = <Formel>
Diese Matrix ist eine Hilfsmatrix mit einem Polynom 1 + x + x[hoch]4. Wenn P = T.A ist, dann sind die Signale der entsprechenden vier Bits
b1 = a4, b2 = a1 <Nicht lesbar> a4, b3 = a2, b4 = a3.
Eine derartige T-Matrix-Bearbeitung ist verständlich, wenn man das Galois-Feld GF(2[hoch]4) betrachtet, welches durch einen Polynomring mit F(x) = x[hoch]4 + x + 1 als Modul-Polynom gebildet wird.
x[hoch]4 + x + 1 = 0 , x[hoch]4 = x + 1
x(a1 + a2x + a3x[hoch]2 + a4x[hoch]3) = a1x + a2x[hoch]3 + a3x[hoch]3
+ a4x[hoch]4 = a4 + (a1 + a4)x + a2x[hoch]2 + a3x[hoch]3
Aus den oben genannten Gleichungen ergibt sich, daß
b1 = a4, b2 = a1 + a4, b3 = a2 und b4 = a3.
Eine derartige Operation kann mittels eines Schieberegisters ausgeführt werden, welches in Form eines Polynoms angeordnet ist, wie dies Fig. 1 zeigt.
Wird das Datum A zuerst in das Schieberegister eingebracht und um einen Schritt verschoben, dann wird die T-Matrix der Daten A verarbeitet; wurde das Datum A um n verschoben, dann ist es T[hoch]nA.
Die Prüfkodierungen P und Q der Datenwörter W[tief]1 bis W[tief]6 ergeben sich somit als
P = <Formel> .. (14)
Q = <Formel> .. (15)
Hier wird die P-Kodierung durch Addition von den entsprechenden Wörtern W[tief]1 bis W[tief]6 entsprechenden Bits gebildet. Die Addition ist dargestellt durch <Nicht lesbar>. Die Addition <Nicht lesbar> ist die Ringaddition "ausschließlich ODER" der entsprechenden Bits, d. h. die Addition Modulo 2. Die Q-Kodierung wird durch das über die Datenmatrix betriebene Schieberegister gemäß Fig. 1 erzeugt.
Es wird nun erläutert, wie mit der oben beschriebenen Korrekturmethode bei Auftreten von Datenfehlern in bis zu zwei Wör-
tern in den Datenwörtern W[tief]1 bis W[tief]6 die Datenwörter W[tief]1 bis W[tief]6 vollständig dekodiert werden können.
Aus den Gleichungen (12) und (13) ergibt sich
W[tief]ie = <Formel> .. (16)
W[tief]je = <Formel> .. (17)
Ist S1 + T[hoch]i-7 S2 = m, dann kann die Gleichung (17) umgeschrieben werden als
W[tief]je = <Formel> .. (18)
Wobei M = <Formel> .. (19)
In der Gleichung (19) ist k = j - i.
Bei sechs Datenwörtern umfaßt Mk M1 bis M5.
Aus diesem Grunde wird allgemein ein M-Matrix-Generator zur Dekodierung von Wi und Wj verwendet. Besonders derartige Daten besitzen jedoch keine Regelmäßigkeit und der Dekodierprozeß ist in der Zeit beschränkt. Aus diesem Grunde war es üblich, daß die Steuerung über eine Speicherung in einem ROM-Speicher erfolgt.
Die Operation T[hoch]-n kann durch Invertierung der Verbindung des Schieberegi-sters gemäß Fig. 1 und durch n-maliges Ver-
schieben der Invertierung erfolgen. Wird die T-Matrix als eine Hilfsmatrix des Poly-noms 1 + x + x[hoch]4 verwendet, dann ist M[tief]1 bis M[tief]5
M[tief]1 <Formel>, M[tief]2 <Formel>, M[tief]3 <Formel>,
M[tief]4 <Formel>, M[tief]5 <Formel>
Der tatsächliche Fluß der dekodierten Daten wird nun im einzelnen beschrieben. Es sei angenommen, daß die Wörter W[tief]1 und W[tief]2 der Wörter W[tief]1 bis W[tief]6 fehlerhaft sind. Da i = 1 und j = 2 ergibt sich aus der Gleichung k = j - i, daß k = 1.
Zuerst ist
W[tief]2e = <Formel>
W[tief]1e = <Formel>
Bei
S[tief]1 = [S´[tief]1, S´[tief]2, S´[tief]3, S´[tief]4]
S[tief]2 = [h[tief]1, h[tief]2, h[tief]3, h[tief]4]
W[tief]1e = [a[tief]1, a[tief]2, a[tief]3, a[tief]4]
W[tief]2e = [b[tief]1, b[tief]2, b[tief]3, b[tief]4]
ergibt sich
S[tief]1 = <Formel>
S[tief]2 = <Formel>
S´[tief]4 =<Formel>
S´[tief]3 =<Formel>
S´[tief]2 = <Formel>
S´[tief]1 = <Formel>
T[hoch]i-7 S[tief]2 ergibt sich als
T[hoch]i-7 S[tief]2 = T[hoch]-6S[tief]2 = <Formel>
= <Formel>
somit ist bei T[hoch]-6S[tief]2 = <Formel>
T[hoch]-6S[tief]2 = <Formel>
m[tief]3 = <Formel>
m[tief]2 = <Formel>
m[tief]1 = <Formel>
wobei m = [m[tief]1, m[tief]2, m[tief]3, m[tief]4].
Es ist aus (18), W[tief]2e = Mk·m
W[tief]2e = <Formel>
Hier wird M[tief]1 der M-Matrix verwendet für <Formel>.
Wird m[tief]1 bis m[tief]3 von m[tief]4 bis m[tief]1 summiert, so ergibt sich
Somit kann b[tief]4 dekodiert werden.
In ähnlicher Weise wird b[tief]3 durch m[tief]1 und m[tief]2, b[tief]2 durch m[tief]1 und b[tief]1 durch m[tief]1 bis m[tief]4 dekodiert. W[tief]2e = M.m und M ist bereits wie oben beschrieben bekannt. Somit kann durch Multiplikation von M[tief]1 mit m auch W[tief]2e dekodiert werden.
Bevor nun mit der Beschreibung von M[tief]1 bis M[tief]5 fortgefahren wird, soll die Arbeitsweise des Galois-Feldes beschrieben werden.
Auch in diesem Falle wird das Galois-Feld GF(2[hoch]4) verwendet, welches durch den Polynom-Ring gebildet wird, dessen Modul-Polynom F(x) = x[hoch]4 + x + 1 ist. Die Darstellung des Galois-Feldes GF(2[hoch]4) ist in der folgenden Tabelle aufge-listet. In der Tabelle ist kleines Alpha[hoch]4 + kleines Alpha + 1 = 0.
In der Tabelle ist kleines Alpha eine Wurzel in dem Galois-Feld von x[hoch]4 + x + 1. Wie sich aus dem Vektorausdruck ergibt, wird die Multiplikation von kleines Alpha[hoch]i mit kleines Alpha derart durchgeführt, daß der Vektorausdruck für klei-nes Alpha[hoch]i in der Schaltung gemäß Fig. 2 eingestellt und einmal verschoben wird. Demgemäß erfolgt die Multiplikation von kleines Alpha[hoch]i mal kleines Alpha[hoch]j durch j-maliges Verschieben.
Eine Schaltung zur Division durch kleines Alpha, d. h. eine Schaltung zur Durchfüh-rung von kleines Alpha[hoch]-1 kann durch Invertierung der Verbindung der Schal-tung in Fig. 2 realisiert werden. In diesem Falle ist bei x[hoch]4 + x + 1 = 0 und x = 1/y dann y[hoch]-4 + y[hoch]-1 + 1 = 0 und bei Multiplikation mit y[hoch]4 ergibt sich y[hoch]4 + y[hoch]3 + 1 = 0. . (20) Gemäß dieser Gleichung ist offensichtlich klei-nes Alpha[hoch]15 = kleines Alpha[hoch]0. Ferner ist kleines Alpha(1+kleines Alpha[hoch]3) = kleines Alpha+kleines Alpha[hoch]4 = 1 und damit zeigt sich, daß kleines Alpha[hoch]-1 gleich ist kleines Alpha[hoch]14.
Bei einem Dividenden kleines Alpha[hoch]i = (a[tief]1, a[tief]2, a[tief]3, a[tief]4) = a[tief]1 + a[tief]2x + a[tief]3x[hoch]2 + a[tief]4x[hoch]3, ergibt sich
kleines Alpha[hoch]ia[hoch]-1 = (a[tief]1 + a[tief]2x + a[tief]3x[hoch]2 +
a[tief]4x[hoch]3) (1 + x[hoch]3)
= a[tief]1 + a[tief]2x + a[tief]3x[hoch]2 +
a[tief]4x[hoch]3 + a[tief]1x[hoch]3 +
a[tief]2x[hoch]2 + a[tief]3x[hoch]5
+ a[tief]4x[hoch]6 = (a[tief]1 + a[tief]2) +
a[tief]3x + a[tief]4x[hoch]2 + a[tief]1x[hoch]3
.. (21)
Ist F(x) = x[hoch]4 + x[hoch]3 + 1 ein Modul-Polynom, dann ist
x[hoch]4 = 1 + x[hoch]3
kleines Alpha[hoch]ia[hoch]-1 = kleines Beta[tief]1kleines Beta
= (a[tief]4 + a[tief]3x + a[tief]2x[hoch]2 + a[tief]1x[hoch]3)x
= a[tief]4x + a[tief]3x[hoch]2 + a[tief]2x[hoch]2 + a[tief]1x[hoch]4
= a[tief]1+a[tief]4x + a[tief]3x[hoch]2 + (a[tief]1 + a[tief]2)x[hoch]3
.. (22)
Aus dem Voranstehenden ergibt sich, daß die Division durch Inversion der Schaltung durchgeführt wird. Eine Schaltung mit der Division durch kleines Alpha ist in Fig. 3 gezeigt.
Augrund der vorgenannten Gesichtspunkte ergibt sich für die M-Matrix in der Glei-chung (18) folgende Beschreibung:
W[tief]je = <Formel> .. (23)
wobei
S[tief]1 + T[hoch]i-7S[tief]2 = (m[tief]1, m[tief]2, m[tief]3, m[tief]4) = m[tief]1 +
m[tief]2x + m[tief]3x[hoch]2 + m[tief]4x[hoch]3
In diesem Falle bewegen sich i und j jeweils zwischen 1 und 6, somit ist i - j = -1 bis -5.
Wird dies in dem Galois-Feld GF(2[hoch]4) mit dem Modul-Polynom F(x) = x[hoch]4 + x[hoch]3 + 1 berücksichtigt, dann ergibt sich
S[tief]1 + T[hoch]i-7S[tief]2 = m[tief]4 + m[tief]3x + m[tief]2x[hoch]2 + m[tief]1x[hoch]3 = kleines Beta[tief]i
W[tief]je = (I + kleines Beta[hoch]k)[hoch]-1kleines Beta[tief]i
.. (24) (k = 1 Tilde, proportional 5)
bei k = 1, ist
.. (25)
W[tief]je = x[hoch]3(m[tief]4 + m[tief]3x + m[tief]2x[hoch]2 + m[tief]1x[hoch]3)
= m[tief]4x[hoch]3 + m[tief]3x[hoch]4 + m[tief]2x[hoch]5 +
m[tief]1x[hoch]6
= m[tief]4x[hoch]3 + m[tief]3 + m[tief]3x[hoch]3 + m[tief]2 + m[tief]2x +
m[tief]2x[hoch]3 + m[tief]1 + m[tief]1x + m[tief]1x[hoch]2 +
m[tief]1x[hoch]3
= (m[tief]1 + m[tief]2 + m[tief]3) + (m[tief]1 + m[tief]2)x +
m[tief]1x[hoch]2 + (m[tief]1 + m[tief]2 + m[tief]3 + m[tief]4)x[hoch]3
.. (26)
Bei Umschreibung dieser Gleichungen ist eine lineare Kopplung des Galois-Feldes mit dem Modul-Polynom F(x) = x[hoch]4 + x + 1 erhält man
W[tief]je = (m[tief]1 + m[tief]2 + m[tief]3 + m[tief]4) + m[tief]1x + (m[tief]1 +
m[tief]2)x[hoch]2 + (m[tief]1 + m[tief]2 + m[tief]3)x[hoch]3 (27)
Es zeigt sich somit, daß die Gleichung (27) gleich ist der M[tief]1-Matrix (oder dem Vektordiagramm) der M-Matrix.
In ählicher Weise ist für k = 2
(1 + kleines Beta[hoch]2)[hoch]-1 = <Formel>
= x[hoch]3·x[hoch]3 = 1 + x + x[hoch]2 + x[hoch]3
.. (28)
Bestimmt man diesmal den Vektor, dann ist dieser gleich der M[tief]2-Matrix der M-Matrix.
Für k = 1 wird die Multiplikation von x[hoch]3 in F(x) = x[hoch]4 + x[hoch]3 + 1 durch-geführt. Für diesen spezifischen Fall wird S[tief]1 + T[hoch]i-7S[tief]2 in der Schaltung nach Fig. 3 an einer invertierten Position eingestellt und dreimal verschoben. Das in dem Schieberegister nach dreimaligem Verschieben übrig bleibende Signal ist W[tief]je.
Für k = 2 wird das Schieberegister sechsmal verschoben.
Eine Überprüfung des Galois-Feldes GF(2[hoch]4) mit dem Modul-Polynom F(x) = x[hoch]4 + X + 1 ergibt sich aus der Gleichung (23).
W[tief]je = <Formel> (m[tief]1 + m[tief]2x + m[tief]3x[hoch]2 + m[tief]4x[hoch]3)
= (1+kleines Alpha[hoch]-1)[hoch]-1 (m[tief]1 + m[tief]2x +
m[tief]3x[hoch]2 + m[tief]4x[hoch]3)
= (1+1+x[hoch]3)[hoch]-1 (m[tief]1 + m[tief]2x + m[tief]3x[hoch]2 +
m[tief]4x[hoch]3)
= (x[hoch]3)[hoch]-1 (m[tief]1 + m[tief]2x + m[tief]3x[hoch]2 +
m[tief]4x[hoch]3)
= <Formel> (m[tief]1 + m[tief]2x + m[tief]3x[hoch]2 + m[tief]4x[hoch]3)
= (1+x+x[hoch]2+x[hoch]3) (m[tief]1 + m[tief]2x + m[tief]3x[hoch]2 +
m[tief]4x[hoch]3)
= (m[tief]1 + m[tief]2 + m[tief]3 + m[tief]4) + m[tief]1x +
(m[tief]1+m[tief]2)x[hoch]2
+ (m[tief]1 + m[tief]2 + m[tief]3)x[hoch]3 .. (29)
Somit gleicht die Gleichung (29) der Gleichung (27).
Mit anderen Worten bedeutet dies, daß <Formel> = (m[tief]1, m[tief]2, m[tief]3, m[tief]4) in dem Schieberegister gemäß Fig. 2 eingestellt und (1 + x + x[hoch]2 = klei-nes Alpha[hoch]12) somit zwölfmal darin verschoben. Diesesmal sind die in dem Schieberegister übrig bleibenden Daten W[tief]je, wie sich aus der zuvor genannten Tabelle ergibt.
Wie sich aus der vorhergehenden Beschreibung entnehmen läßt, kann die Dekodie-rung auf der Basis des Polynoms durchgeführt werden, von dem die Matrix T ab-hängt. Somit ist verständlich, daß die Dekodierung mittels des in polynomer Art ver-bundenen Schieberegisters durchführen läßt.
Aus der vorangehenden Beschreibung ergibt sich ferner, daß
der Vektorraum in dem Galois-Feld GF (2[hoch]4) mit dem Modul-Polynom von F(x) = x[hoch]4 + x[hoch]1 + 1 die T-Matrix, die M[tief]1 bis M[tief]5 - Matrizen und eine T[hoch]-1-Matrix entwickelt, welche noch beschrieben wird.
Bei der Operation T[hoch]-1 wird F(x) = x[hoch]4 + x[hoch]3 + 1 verwendet, was ein reziprokes Polynom für F(x) = x[hoch]4 + x + 1 ist. Es ist ferner ersichtlich, daß der Winkel, unter dem die ursprünglichen Daten anzusehen sind, lediglich invertiert ist.
Es ist ferner verständlich, daß, wenn jedes Datum 4 Bits beinhaltet, das Polynom vom vierten Grad ist und daß seine Vektorräume nur von 16. Art oder Ordnung sind. Dies bedeutet, daß die Bearbeitung von zwei Elementen a + b eine maximale Ver-schiebung von 15 anwendet, wenn die Bearbeitungsschaltung durch ein Schieberre-gister dargestellt wird.
Besteht die Operations- oder Bearbeitungsschaltung lediglich aus Schieberegistern, dann ist es bei einem hohen Grad des Polynoms erforderlich, das Schieberegister um 2[hoch]12 bis 2[hoch]14 zu verschieben, so daß die Bearbeitung eine lange Zeit benötigt. Bei der Datenübertragung mittels PCM oder ähnlichem ist die für die Deko-dierverarbeitung zur Verfügung stehende Zeit begrenzt. Aus diesem Grunde wird die M-Matrix für die Dekodierung, etwa die M[tief]1 bis M[tief]5-Matrizen, in einen ROM-Speicher geladen, obgleich die hardware groß ausgelegt wird, und diese Matrizen werden nacheinander ausgelesen, um das Signal S[tief]1 + T[hoch]j-(n+1)S[tief]2 auszuwählen und zu dekodieren.
Die nachfolgende Erläuterung dient dazu, wie das Prinzip des Datenkorrekturverfah-rens auf ein Fehlerdaten-Korrektursystem der Erfindung angewendet werden kann.
Wie zuvor beschrieben, hängt die Prüfkodierung Q von der Hilfsmatrix des Polynoms X[hoch]m + X[hoch]g + 1 ab. Aus dem Vorhergehenden ergibt sich auch, daß die zu korrigierende M-Matrix dem Raumvektor entspricht, welcher in dem Galois-Feld (2[hoch]m) mit dem Polynom x[hoch]m + x[hoch]g + 1 erzeugt wird.
Die Eigenschaft der M-Matrix wird erläutert durch das unten gezeigte Umschreiben der T-Matrix, die die gleichen Relationen der entsprechenden Bits hat wie die der Matrizen M[tief]1 bis M[tief]5.
T = |
Es sei angenommen, daß die Spalten (a[tief]1 a[tief]2 a[tief]3 a[tief]4) Ziffern sind, die in einer Rechenschaltung mit dem Modul-Polynom F(x) = x[hoch]4 + x + 1 vorhanden sind. Unter dieser Annahme wird die Spalte (a[tief]1) gebildet, wenn (a[tief]1) in dem in Fig. 4 gezeigten Schieberegister auf "1" gesetzt wird und um eins ver-
schoben wird. Auf ähnliche Weise wird die Spalte (a[tief]2) gebildet, wenn nur (a[tief]2) auf "1" gesetzt und um eins verschoben wird. Wenn nur (a[tief]3) gleich "1" gesetzt und um eins verschoben wird, wird die Spalte (a[tief]3) erzeugt und wenn nur (a[tief]4) gleich "1" gesetzt und um eins verschoben wird, wird die Spalte (a[tief]4) er-zeugt.
Diese Beziehungen werden im folgenden weiter erläutert. Wenn in Fig. 4 nur (a[tief]1) gleich "1" gesetzt wird und es wird um eins verschoben, wird die Spalte (a[tief]1) ge-bildet. Mit dem Inhalt von "1" in (a[tief]1) wird beim Verschieben um zwei die Spalte (a[tief]2) gebildet. Auf ähnliche Weise wird die Spalte (a[tief]3) durch drei Verschiebe-schritte und die Spalte (a[tief]4) durch vier Verschiebeschritte gebildet.
Diese Relationen werden im folgenden unter Verwendung der B-Zeilen, die das Er-gebnis der Berechnung darstellen, betrachtet. Zuerst wird die Zeile b[tief]3 behandelt.
Ein Signal an der Kreuzungsstelle zwischen b[tief]3 und a[tief]4 entspricht dem an der Kreuzungsstelle von b[tief]2 mit a[tief]3. Das Signal an der Kreuzungsstelle von b[tief]2 und a[tief]3 entspricht der Summe der Signale an den Kreuzungen zwischen b[tief]4 und a[tief]2 sowie zwischen b[tief]1 und a[tief]2. Das Signal an der Kreu-zungsstelle zwischen b[tief]1 und a[tief]2 entspricht dem an der Kreuzung von b[tief]4 und a[tief]1. Demzufolge entspricht das Signal an der Kreuzung zwischen b[tief]3 und a[tief]4 der Summe der Signale an den
Kreuzungsstellen b[tief]4 mit a[tief]1 und b[tief]4 mit a[tief]2.
Das Signal für die Kombination b[tief]3 und a[tief]3 entspricht dem der Kombination b[tief]4 und a[tief]4; das Signal für die Kombination b[tief]3 und a[tief]2 entspricht dem der Kombination b[tief]4 und a[tief]3; das Signal der Kombination b[tief]3 und a[tief]1 entspricht dem der Kombination b[tief]4 und a[tief]2. Auf diese Weise kann bei Ver-wendung des Signals für die Reihe b[tief]4 die Reihe b[tief]4 gebildet werden.
Es folgt die Zeile b[tief]1. Das Signal an der Kreuzungsstelle zwischen b[tief]1 und a[tief]3 ist die Summe der Signale an den Kreuzungsstellen b[tief]4 mit a[tief]3 und b[tief]1 mit a[tief]3. Ein Signal an der Kreuzungsstelle zwischen b[tief]2 und a[tief]4 ist die Summe der Signale an den Kreuzungsstellen b[tief]4 mit a[tief]3 und b[tief]1 mit a[tief]3. Ähnlich ist das Signal an der Stelle b[tief]1 und a[tief]2 die Summe der Signa-le an den Stellen b[tief]2 und a[tief]2 plus b[tief]4 und a[tief]1; ein Signal bei b[tief]1 und a[tief]1 ist die Summe der Signale bei b[tief]2 und a[tief]2 plus b[tief]4 und a[tief]1. Ein Signal bei b[tief]1 und a[tief]4 ist gleich dem bei b[tief]4 und a[tief]3; ein Signal bei b[tief]3 und a[tief]2 ist gleich dem für b[tief]2 und a[tief]1. Daher ist es die Gesamtsumme der Signale bei b[tief]2 und a[tief]1, bei b[tief]2 und a[tief]2, und bei b[tief]4 und a[tief]4.
Dieser Zusammenhang kann in Termen der Schaltung nach Fig. 5, die eine Schal-tung zur Bildung einer Dekodier-Matrix, wie sie in der vorliegenden Erfindung ver-wendet wird, darstellt, ausgedrückt werden. Alle Schieberegister SR1 bis SR4 wer-den zunächst gelöscht. Dann wird ein Steuersignal G-sig
über die Gatterschaltungen G[tief]1 bis G[tief]4 und A[tief]1 bis A[tief]4 für Multiplika-tion und Addition ausgelöst und die Ausgangssignale a[tief]1 bis a[tief]4, die aus den Ausgängen der Schieberegister stammen, bilden die Reihe b[tief]4. Daraufhin wer-den die entsprechenden Register um einen Schritt weitergeschoben, um das Steuer-signal G-sig zu deaktivieren, so daß die Ausgangssignale an den Ausgangsklemmen a[tief]1 bis a[tief]4 die Zeile b[tief]2 bilden. Bei einem zusätzlichen Verschieben um eins wird das Steuersignal erneut aktiviert. Zu diesem Zeitpunkt erzeugen die Aus-gänge Signale, die die Zeile b[tief]1 bilden.
Im folgenden sei die umgeschriebene Matrix aus einem anderen Gesichtspunkt be-trachtet. Die Zeile b[tief]2 wird abhängig vom Inhalt der Zeile b[tief]3 gebildet. Die Zei-le b[tief]3 hängt vom Inhalt der Zeile b[tief]4 ab. Bezüglich der Reihen b[tief]3 und b[tief]4 ist ein Signal an der Kreuzungsstelle von b[tief]1 und a[tief]2 gleich dem an der Kreuzungsstelle von b[tief]4 mit a[tief]1; ein Signal bei b[tief]1 und a[tief]3 ist gleich dem bei b[tief]4 und a[tief]2; ein Signal bei b[tief]1 und a[tief]4 ist gleich dem an der Stelle b[tief]4 und a[tief]3; ein Signal an der Stelle b[tief]4 und a[tief]4 ist gleich dem an der Stelle b[tief]2 und a[tief]2. Dementsprechend ist es die Summe der Sig-nale bei b[tief]1 und a[tief]1 und bei b[tief]4 und a[tief]1, d.h. die Summe der Signale bei b[tief]1 und a[tief]1 und bei b[tief]1 und a[tief]2. Die Zeile b[tief]4 wird daher ab-hängig vom Inhalt der Zeile b[tief]1 gebildet.
Fig. 6 zeigt eine andere Schaltung einer Dekodier-Matrix, die die oben beschriebe-nen Relationen verkörpert. Zuerst werden
die Daten der Zeile b[tief]1 in die entsprechenden Register SR11 bis SR14 einge-schrieben. Die Ausgänge a[tief]1 bis a[tief]4 zeigen die Daten der Zeile b[tief]1. Dann werden die entsprechenden Register um eins weitergeschoben und bilden die Daten der Zeile b[tief]4. Ein zusätzlicher Verschiebeschritt erzeugt die Daten der Zeile b[tief]3 und ein weiterer Schritt die Daten der Zeile b[tief]2. Es ist offensichtlich, daß, wenn die genannten Schieberegister in der entgegengesetzten Richtung geschoben werden, die erwähnten Daten in der umgekehrten Reihenfolge wie oben beschrieben generiert werden.
Die Daten, wie sie von den Zeilen b aus gesehen werden, können wie oben be-schrieben gebildet werden. Dies trifft zu für den Fall der M-Matrix.
Kurz gesagt wird eine spezifische Matrix in der M-Matrix dadurch ausgewählt, daß die Schaltung zur Bildung einer Dekodier-Matrix, wie sie in Fig. 5 oder Fig. 6 gezeigt ist, verwendet wird um ein Anfangswert durch einen in der Fig. 6 nicht gezeigten Schaltungsteil (ID) zur Erzeugung solcher Anfangsdaten festgelegt wird. Auf diese Weise können alle Matrix-Daten M[tief]1 bis M[tief]5 in der M-Matrix mit Hilfe einer einzigen Schaltungsausführung generiert werden, ohne daß sie in einem Nur-Lese-Speicher abgespeichert werden müssen.
Im folgenden wird der Fall erläutert, wo die in Fig. 6 gezeigte Schaltung anstelle ei-nes gebräuchlichen M-Matrix-Generators, bestehend aus dem ROM und AC (Adress-zähler), eingesetzt wird.
Es sei angenommen, daß in der Information, die aus n Wörtern besteht, im c-ten und d-ten Wort Fehler auftreten und W´c = Wc + Wce und Wd´ = Wd + Wde. Wenn d - C = k, erhalten wir aus den Gleichungen (7), (8), (12) und (13)
Wce = <Formel> .. (30)
Wde = <Formel> .. (31)
wobei S[tief]1 = <Formel>
S[tief]2 = <Formel>
Wenn Wde = (b[tief]1 b[tief]2 b[tief]3 b[tief]4) und <Formel> =
(m[tief]1 m[tief]2 m[tief]3 m[tief]4) und Reihe a zum Dekodieren von b[tief]4 ist gegeben durch (a[tief]1 a[tief]2 a[tief]3 a[tief]4), erhalten wir
b[tief]4 = <Formel> (32)
b[tief]3 = <Formel> (33)
b[tief]2 = <Formel> (34)
b[tief]1 = <Formel> (35)
Durch Umstellen der Gleichungen (32), (33), (34) und (35),
erhalten wir für b[tief]4 bis b[tief]1
b[tief]4 = <Formel> (36)
b[tief]3 = <Formel> (37)
b[tief]2 = <Formel> (38)
b[tief]1 = <Formel>
= <Formel>
= <Formel> (39)
wobei b´[tief]1 = a[tief]1m[tief]2 <Formel> (40)
Wie aus den Gleichungen (36), (37), (38), (39) und (40) ersichtlich ist, können b[tief]4 bis b[tief]1 dekodiert werden, wenn (m[tief]1 m[tief]2 m[tief]3 m[tief]4) geändert wird, während (a[tief]1 a[tief]2 a[tief]3 a[tief]4) festgehalten wird. Ferner ist einzusehen, daß das Signal (m[tief]1 m[tief]2 m[tief]3 m[tief]4) äquivalent ist der Vektoränderung der durch die Matrix T gebildeten Daten.
In dem speziellen Fall wird, wenn <Formel> = (m[tief]1 m[tief]2 m[tief]3 m[tief]4) und wenn zum Dekodieren von b[tief]4 die Rechenmatrix (a[tief]1 a[tief]2 a[tief]3 a[tief]4) ist, diese mit den entsprechenden Bits multipliziert und die Gesamtsumme daraus ist b[tief]4. (m[tief]1 m[tief]2 m[tief]3 m[tief]4) wird in das Schieberegister in Fig. 4 einge-schrieben und um einen Schritt verschoben. Anschließend wird das Ausgangssignal des Schieberegisters multipliziert mit (a[tief]1 a[tief]2 a[tief]3 a[tief]4) und wird b[tief]1´. Da b[tief]1´ gleich <Formel> ist, kann b[tief]1 dekodiert werden durch das Summieren des vorher dekodierten b[tief]4 mit dem b[tief]1´.
Wie aus der obigen Beschreibung ersichtlich ist, kann das erfindungsgemäße Daten-fehler-Korrektursystem das Dekodieren ohne den gebräuchlichen, komplizierten Ge-nerator für die dekodierende M-Matrix durchführen, indem es unter Einsatz einer Schaltung zum Generieren der Matrix, die nur die Matrix zum Dekodieren eines Bits erzeugt, die Daten für <Formel> berechnet.
Wenn also die erfindungsgemäße Schaltung zum Generieren der Matrix eingesetzt wird, ist allein die Matrix für nur ein Bit ausreichend für die generierte Dekodier-Matrix, so daß die verwendete Schaltung vereinfacht wird und bei niedriger Ge-schwindigkeit betrieben werden kann. Die Schaltung zum Erzeugen der Matrix ist da-her in den Fällen nützlich, wo Daten eines Wortes umfangreich sind.
Fig. 7 zeigt ein Datenfehler-Korrektursystem, welches auf der Basis der vorerwähn-ten Grundlagen aufgebaut ist. Ein zu korrigierendes Daten-Eingangssignal wird an die Eingangsklemme IN[tief]1 des Datenfehler-Korrektursystems angeschlossen. In dem Daten-Eingangssignal werden n Datenwörter sowie zwei Prüfwörter ausge-drückt durch W[tief]1 bis WnPQ als ein Block behandelt. Das Daten-Eingangssignal gelangt über eine T[hoch]-(n+1) Rechen- oder Operatorschaltung 20, die die Umfor-mung T[hoch]-(n+1) durchführt, an ein Q-Register 21, welches als Q Dekodierschal-tung wirkt. Zu diesem Zeitpunkt wird der Schalter SW
auf den Kontakt a umgeschaltet. Das Daten-Eingangssignal gelangt auch zum P-Register 22, welches die P Dekodierschaltung darstellt.
Das Q-Register 21 kann aus der in Fig. 5 gezeigten T-Matrix-Verknüpfungsschaltung bestehen und hat beim Hereinkommen des oben erwähnten Daten-Eingangssignals den Inhalt T[hoch]-(n+1)S[tief]2. Wenn das erste Fehlerwort Wc ist, wird das Q-Regi-ster 21 C-mal weitergeschoben und hat dann den Ausgang T[hoch]c-(n+1)S[tief]2. Anschließend wird der Schalter SW auf den Kontakt b umgeschaltet, so daß das aus dem P-Register 22, welches wie vorher erwähnt aus einem einfachen exklusiv ODER bestehen kann, kommende Syndrom S[tief]1 zum Inhalt des Q-Registers 21 addiert wird, und wodurch sich S[tief]1 + T[hoch]c-(n+1)S[tief]2 ergibt.
Das als Wd angenommene zweite Fehlerwort wird über eine andere Eingangsklem-me IN[tief]2 an eine Fehlerwort-Überwachungsschaltung EC angelegt, in der der Ab-standswert k zwischen dem ersten Fehlerwort Wc und dem zweiten Fehlerwort Wd festgestellt und an eine Schaltung 25 zum Generieren der Matrix, die aus der in Fig. 5 oder 6 gezeigten Schaltung besteht, weitergeleitet wird. Beim Eintreffen des Ab-standswertes k wählt die Schaltung 25 zum Generieren der Matrix Matrix-Daten zum Dekodieren eines bestimmten Bits aus und gibt die ausgewählten Matrix-Daten an ei-ne Gatterschaltung G11 weiter. Das Gatter G11 mul-
tipliziert die Matrix-Daten für das spezifische Daten-Dekodieren mit den Daten aus dem Q-Register 21, woraus sich die Korrekturdaten Wce ergeben. Zu diesem Zeit-punkt wird das Syndrom S[tief]1 aus dem P-Register 22 an eine Pufferschaltung 24 angelegt.
Die generierte und dekodierte Information Wce wird in dem Addierwerk A[tief]12 zu S[tief]1 addiert, so daß die Information Wde generiert und dekodiert wird. Im vorlie-genden Fall werden Wce und S[tief]1 über die Gatterschaltungen G[tief]12 und G[tief]13, die von einem Signal aus der Fehlerwort-Überwachungsschaltung (EC) an-gesteuert werden, an das Addierwerk A[tief]12 angeschaltet.
Das Daten-Eingangssignal gelangt auch direkt nach einer Verzögerung um eine Blocklänge über die Verzögerungsschaltung (DL) an ein Addierwerk A[tief]13. Wenn das Daten-Eingangssignal keinen Fehler enthält, entsteht im Dekodierbereich das Signal "0". In diesem Fall wird das Daten-Eingangssignal dementsprechend direkt von der Ausgangsklemme (OUT) abgenommen.
Wenn das erste Fehlerwort Wc´ ankommt, wird die dekodierte Information Wce zum Addierwerk A[tief]13 weitergeleitet, so daß die richtige Information Wc wieder herge-stellt und von der Ausgangsklemme (OUT) abgenommen wird. Wenn das zweite Fehlerwort Wd´ ankommt, wird die Gatterschaltung (G[tief]13) abgeschaltet und dem-zufolge findet keine Addition mit S[tief]1 im Addierwerk A[tief]13
statt, so daß Wde direkt an das Addierwerk A[tief]14 gelangt. Als Ergebnis werden die richtigen Daten Wd reproduziert und können von der Ausgangsklemme (OUT) abgenommen werden.
Wie vorausgesetzt bezeichnen Wce und Wde die ausgefallenen c-ten und d-ten Da-ten. Dementsprechend werden aufgrund des oben beschriebenen Ablaufs die Daten-wörter W[tief]1 und W[tief]n, die solche Datenfehler enthalten, richtig dekodiert.
Die Fehlerwort-Überwachungsschaltung (EC) steuert die Schaltung zur Bildung einer Dekodier-Matrix 25 auf solche Weise, daß der Abstand zwischen den Fehlerworten, d.h. die Information k geprüft bzw. festgestellt wird, und die Matrix-Daten für das De-kodieren eines spezifischen Bits entsprechend dem festgestellten Interval gebildet werden. Dies kann auch leicht durch das Erfassen eines periodischen Redundanz-prüfsignals, welches den Daten-Eingangssignalen durch eine als Fehler-Pointer be-kannte Schaltung zum Erzeugen eines periodischen Redundanzprüfsignals (CRCC), die ein Schieberegister und ähnliches enthält, angefügt wird, verwirklicht werden.
Sofern die T-Matrix, wenn das Dekodieren von Msb stattfindet, für das Polynom F(x) = x[hoch]n + x[hoch]t + 1 ist, wird die auf (n-1) <Nicht lesbar> 1 folgende Information durch das Hinzufügen der (n-t) vorangehende Information zu den Elementen korri-giert.
Nebenbei sei bemerkt, daß in Fig. 7 A[tief]11 bis A[tief]13 und G[tief]11 bis G[tief]13 Gatterschaltungen für Addition und Multiplikation sind.
Es sei nun der Fall betrachtet, bei dem die in Fig. 6 gezeigte Stellung anstelle des gebräuchlichen Generators für die M-Dekodiermatrix, der ein ROM und einen Adresszähler AC enthält, eingesetzt wird. Dabei sei angenommen, daß die Informa-tionsdaten aus n Wörtern bestehen, daß Fehler in den c-ten und d-ten Wörtern auf-treten und daß Wc´ = Wc + Wce sowie Wd´ = Wd + Wde und d - c = k.
Wie in dem früheren Fall erhalten wir aus den Gleichungen (7), (8), (12) und (13)
Wce = <Formel> .. (30)
Wde = <Formel> .. (31)
wobei S[tief]1 = <Formel>
S[tief]2 = <Formel>
Wenn Wde = (b[tief]1 b[tief]2 b[tief]3 b[tief]4), S[tief]1 + T[hoch]c-(n+1) S[tief]2 = (m[tief]1 m[tief]2 m[3 m[tief]4), und b[tief]1 is (a[tief]1 a[tief]2 a[tief]3 a[tief]4) as a matrix to be decoded, we have
b[tief]1 = <Formel> (41)
b[tief]4 = <Formel> (42)
b[tief]3 = <Formel> (43)
b[tief]2 = <Formel> (44)
Durch Umstellen der Gleichungen (41) bis (44), werden b[tief]1 bis b[tief]4
b[tief]1 = <Formel> (45)
b[tief]4 = <Formel> (46)
b[tief]3 = <Formel> (47)
b[tief]2 = <Formel> (48)
Wie aus den Gleichungen (45) bis (48) ersichtlich ist, werden die korrigierten Daten so dekodiert, daß die Matrix (a[tief]1 a[tief]2 a[tief]3 a[tief]4) zum Dekodieren von b[tief]1 festgehalten sowie S[tief]1 + T[hoch]c-(n+1)S[tief]2 = (m[tief]1 m[tief]2 m[tief]3 m[tief]4) berechnet wird.
In diesem Beispiel ist die Gatterschaltung A[tief]11 in Fig. 7 nicht erforderlich. Die Reihenfolge der in die Pufferschaltung eingespeisten Daten ist nicht Msb bis Lsb. Der übrige Teil des Ausführungsbeispiels ist das gleiche wie in Fig. 7 gezeigt. Zum Um-kehren der Reihenfolge der Dekodierung wird das Schieberegister invertiert.
Wie aus der Beschreibung hervorgeht, besitzt das erfindungsgemäße Datenfehler-Korrektursystem bei Verwendung einer einfachen Schaltung zur Erzeugung der Ma-trix eine hervorragende Wirkungsweise.
Das erfindungsgemäße Datenfehler-Korrektursystem läßt sich leicht an ein System für die Übertragung, Aufzeichnung und
Wiedergabe digitalisierter Information, beispielsweise durch PCM, wie auch an ande-re digitale Systeme anpassen.
Claims (3)
1. Datenfehler-Korrektursystem, bei dem n Datenwörter (W1) bis (Wn) mit jeweils m Bits zusätzlich eine Prüfkodierung <Formel> als Summe der den Datenwör-tern entsprechenden Bits und eine weitere Prüfkodierung <Formel> als Sum-me derjenigen Bits besitzen, die den Signalen entsprechen, welche durch die Bearbeitung eines Polynoms X[hoch]m + X[hoch]g + 1 mittels einer Hilfsmatrix (T) gebildet werden, wobei fehlerhafte Wörter unter Verwendung eines Matrix-Generators zur Dekodierung korrigiert werden,
dadurch gekennzeichnet, daß als Dekodier-Matrix-Generator eine Schaltung zum Generieren einer Matrix verwendet wird, die nur die Matrix-Daten für das Dekodieren eines bestimmten Bits einer M-Matrix erzeugt, wobei eine vorge-
gebene Verarbeitung des Prüfkodes durchgeführt wird, während die Matrix-
Information festgehalten wird.
2. Fehlerkorrektur-System nach Anspruch 1, dadurch gekennzeichnet, daß die Schaltung zum Generieren der Matrix aus einem Schieberegister besteht, wel-ches so in einer Polynom-Form geschaltet ist, daß sein Inhalt bei jedem Ver-schiebeschritt zu Anfangsdaten addiert wird, mit dem Ziel, daß beim Durch-führen einer Verarbeitung mit einem Operanden aus einer Zeile oder Spalte einer durch die Anfangsdaten ausgewählten Matrix der erwähnten M-Matrix als Ergebnis der Verarbeitung die Zeile oder Spalte aufeinanderfolgend gebil-det wird.
3. Fehlerkorrektur-System nach Anspruch 1, dadurch gekennzeichnet, daß die Schaltung zum Generieren der Matrix aus einem Schieberegister besteht, wel-ches so in einer Polynom-Form geschaltet ist, daß sein Inhalt bei jedem Ver-schiebeschritt zu Anfangsdaten addiert wird, mit dem Ziel, daß beim Durch-führen einer Verarbeitung mit einem Operanden aus einer Zeile oder Spalte einer durch die Anfangsdaten ausgewählten Matrix der erwähnten M-Matrix als Ergebnis der Verarbeitung die Zeile oder Spalte aufeinanderfolgend gebil-det wird, wobei die Anfangsdaten am Beginn der seriellen Ausgangssignale stehen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5741779A JPS55149551A (en) | 1979-05-10 | 1979-05-10 | Data correcting circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3017830A1 true DE3017830A1 (de) | 1980-11-13 |
Family
ID=13055063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19803017830 Ceased DE3017830A1 (de) | 1979-05-10 | 1980-05-09 | Datenfehler-korrektursystem |
Country Status (5)
Country | Link |
---|---|
US (1) | US4368533A (de) |
JP (1) | JPS55149551A (de) |
DE (1) | DE3017830A1 (de) |
FR (1) | FR2456427B1 (de) |
GB (1) | GB2050014B (de) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3211053A1 (de) * | 1981-03-25 | 1982-10-14 | Akai Electric Co. Ltd. | Fehlerkorrektur- und kontrollsystem fuer pcm-dekodiergeraete |
EP0096165B1 (de) * | 1982-06-15 | 1988-06-08 | Kabushiki Kaisha Toshiba | Einrichtung zum Dividieren der Elemente eines Galois-Feldes |
JPS5972838A (ja) * | 1982-10-20 | 1984-04-24 | Victor Co Of Japan Ltd | リ−ド・ソロモン符号生成回路 |
US4532517A (en) * | 1983-02-28 | 1985-07-30 | Allied Corporation | Cyclic redundancy check monitor for microwave landing system beam steering unit |
JPS6029073A (ja) * | 1983-06-17 | 1985-02-14 | Hitachi Ltd | ディジタル信号構成方式 |
JPH0680491B2 (ja) * | 1983-12-30 | 1994-10-12 | ソニー株式会社 | 有限体の演算回路 |
US4797848A (en) * | 1986-04-18 | 1989-01-10 | Hughes Aircraft Company | Pipelined bit-serial Galois Field multiplier |
JP2722647B2 (ja) * | 1989-04-11 | 1998-03-04 | 富士通株式会社 | 磁気テープ制御装置 |
JPH1196030A (ja) * | 1997-09-22 | 1999-04-09 | Toyo Commun Equip Co Ltd | 有限体上の乗算方法及び乗算回路 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3868632A (en) * | 1972-11-15 | 1975-02-25 | Ibm | Plural channel error correcting apparatus and methods |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL130511C (de) * | 1963-10-15 | |||
US3487361A (en) | 1966-12-15 | 1969-12-30 | Ibm | Burst error correction system |
US3542756A (en) | 1968-02-07 | 1970-11-24 | Codex Corp | Error correcting |
US3629824A (en) * | 1970-02-12 | 1971-12-21 | Ibm | Apparatus for multiple-error correcting codes |
US3697948A (en) * | 1970-12-18 | 1972-10-10 | Ibm | Apparatus for correcting two groups of multiple errors |
US3697949A (en) | 1970-12-31 | 1972-10-10 | Ibm | Error correction system for use with a rotational single-error correction, double-error detection hamming code |
US3745528A (en) | 1971-12-27 | 1973-07-10 | Ibm | Error correction for two tracks in a multitrack system |
US3811108A (en) | 1973-05-29 | 1974-05-14 | Honeywell Inf Systems | Reverse cyclic code error correction |
US4052698A (en) * | 1975-03-17 | 1977-10-04 | Burroughs Corporation | Multi-parallel-channel error checking |
GB2042228B (en) | 1979-01-31 | 1983-09-14 | Tokyo Shibaura Electric Co | Data correcting system |
-
1979
- 1979-05-10 JP JP5741779A patent/JPS55149551A/ja active Pending
-
1980
- 1980-04-28 US US06/144,521 patent/US4368533A/en not_active Expired - Lifetime
- 1980-04-29 GB GB8014067A patent/GB2050014B/en not_active Expired
- 1980-05-09 FR FR8010485A patent/FR2456427B1/fr not_active Expired
- 1980-05-09 DE DE19803017830 patent/DE3017830A1/de not_active Ceased
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3868632A (en) * | 1972-11-15 | 1975-02-25 | Ibm | Plural channel error correcting apparatus and methods |
Non-Patent Citations (2)
Title |
---|
IBM J.Res.Develop., Nov.1974, S.579-588 * |
US-PS Re 28923 * |
Also Published As
Publication number | Publication date |
---|---|
JPS55149551A (en) | 1980-11-20 |
GB2050014A (en) | 1980-12-31 |
FR2456427A1 (fr) | 1980-12-05 |
US4368533A (en) | 1983-01-11 |
FR2456427B1 (fr) | 1986-05-16 |
GB2050014B (en) | 1984-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2916710C2 (de) | ||
AT393926B (de) | Geraet zur feststellung und korrektur von fehlern in empfangenen digitaldatensignalen | |
DE2357004C3 (de) | Verfahren und Einrichtung zur Fehlerkorrektur für Daten | |
DE2942825A1 (de) | Verfahren und vorrichtung zur verarbeitung sequentiell uebertragender digitaler informationsworte | |
DE3685991T2 (de) | Anordnung zur dekodierung eines fehler korrigierenden codes. | |
DE3040004C2 (de) | ||
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE10133595B4 (de) | Pufferschaltung, Speicherzugriffsverfahren und Reed-Solomon-Decoder | |
DE3486361T2 (de) | Verfahren und Vorrichtung zum Aufzeichnen eines digitalen Informationssignals. | |
DE3853206T2 (de) | Verfahren und gerät zur byteschreibfehlerkodierung. | |
AT390858B (de) | System zur uebertragung von pcm-worten | |
EP0067301B1 (de) | Einrichtung zur Erzeugung von Prüfbits zur Sicherung eines Datenwortes | |
AT391046B (de) | Verfahren und geraet zum verarbeiten eines digitalen signals | |
DE2132565B2 (de) | ||
DE3222658A1 (de) | Verfahren und vorrichtung zum unterdruecken von fehlerhaften daten | |
DE3006958A1 (de) | Digitalsignal-uebertragungssystem | |
DE3618136C2 (de) | ||
DE2357168A1 (de) | Speichermodul fuer eine datenverarbeitungseinheit | |
DE2659031B2 (de) | Fehlerkorrektur- und -Steuersystem | |
DE2455235C2 (de) | Verfahren und Einrichtung zur Fehlererkennung in Zeitvielfachvermittlungsanlagen | |
DE3779553T2 (de) | Uebertragung von daten mit variabler feldlaenge in einem bestimmten zeitspalt-format. | |
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) | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE3017830A1 (de) | Datenfehler-korrektursystem | |
DE2053836C3 (de) | Anordnung zur Korrektur von Fehlerbündeln in binär codierten Datengruppen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
8131 | Rejection |