CH653504A5 - Verfahren zur fehlerkorrektur bei einer pcm-datenuebertragung. - Google Patents

Verfahren zur fehlerkorrektur bei einer pcm-datenuebertragung. Download PDF

Info

Publication number
CH653504A5
CH653504A5 CH4097/81A CH409781A CH653504A5 CH 653504 A5 CH653504 A5 CH 653504A5 CH 4097/81 A CH4097/81 A CH 4097/81A CH 409781 A CH409781 A CH 409781A CH 653504 A5 CH653504 A5 CH 653504A5
Authority
CH
Switzerland
Prior art keywords
error
words
word
errors
block
Prior art date
Application number
CH4097/81A
Other languages
English (en)
Inventor
Yoichiro Sako
Kentaro Odaka
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP8442480A external-priority patent/JPS5710557A/ja
Priority claimed from JP8442780A external-priority patent/JPS5710560A/ja
Priority claimed from JP8442880A external-priority patent/JPS5710561A/ja
Application filed by Sony Corp filed Critical Sony Corp
Publication of CH653504A5 publication Critical patent/CH653504A5/de

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1806Pulse code modulation systems for audio signals
    • G11B20/1809Pulse code modulation systems for audio signals by interleaving

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)

Description

Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Fehlerkorrektur, in dem ein erster Fehlerkorrektionsblock aus einem Wort, das in jeder der Pulscodemodulations-(PCM-)Datenserien einer Mehrzahl Kanäle in einem ersten Anordnungszustand enthalten ist, und einem ersten Prüfwort für das eine Wort gebildet wird, wobei die PCM-Datenserien und die ersten Prüfwortserien bei jedem Kanal, der in einen zweiten Anordnungszustand überführt werden soll, mit verschiedenen Zeiten verzögert werden; und ein zweiter Fehlerkorrektionsblock aus einem Wort, das in jeder der PCM-Datenserien einer Mehrzahl Kanäle und ersten Prüfwortserien im zweiten Anordnungszustand enthalten ist, und einem zweiten Prüfwort für das letztere eine Wort gebildet wird, wobei die ersten und zweiten Korrektionsblöcke derart ausgebildet sind, dass sie solche Fehlerkorrektionscode sind, dass Fehlersyndrome berechnet werden und Fehler bis K Wörter, die im gleichen Block enthalten sind, durch Fehlerlokalisierung durch die Fehlersyndrome korrigiert werden; und eine erste Decodierung für den zweiten Fehlerkorrektionsblock der übertragenen Datenserien durchgeführt wird, wobei die PCM-Datenserien und die ersten Prüfwortserien in jedem Kanal, der in einen ersten Anordnungszustand überführt werden soll, mit verschiedenen Zeiten verzögert werden; und anschliessend eine zweite Decodierung für den zweiten Fehlerkorrektionsblock durchgeführt wird.
In dem vom gleichen Anmelder angemeldeten US-Patentgesuch Nr. 218 256 wurde eine Datenübertragungsanlage angegeben, welche wirksam ist für die Korrektur von Büschelfehlern, und zwar unter Verwendung der sogenannten Kreuzverschachtelungstechnik. Bei dieser Kreuzverschachte-lungstechnik werden Wörter in einem PCM-Datensignal in mehreren Folgen an mehrere Kanäle angelegt, die in einer ersten Anordnung ausgelegt sind, und werden an einen ersten Fehlerkorrekturcoder angelegt, um daraus eine Folge von ersten Prüfwörtern zu erzeugen. Diese Folge von ersten Prüf-
5
10
15
20
25
30
35
40
45
50
55
60
65
3
653 504
Wörtern und die Folgen von PCM-Datensignalen in den verschiedenen Kanälen werden dann in eine zweite Anordnung umgemodelt. Dann wird ein Wort in der zweiten Anordnung für jede der PCM-Datensignalfolgen in den verschiedenen Kanälen an einen zweiten Fehlerkorrekturcoder angelegt, um daraus eine Folge von zweiten Prüfwörtern zu erzeugen, so dass eine doppelte Verschachtelung (d.h. eine doppelte Neuanordnung) für jedes Wort ausgeführt wird. Der Zweck der doppelten Verschachtelung besteht darin, die Anzahl von fehlerhaften Wörtern in irgendeine Gruppe von Wörtern, die in einem gemeinsamen Fehlerkorrekturblock enthalten sind, zu reduzieren, indem das in einem solchen Fehlerkorrekturblock enthaltene Prüfwort und die dazugehörigen PCM-Daten gestreut und dann übertragen werden. Dadurch werden solche fehlerhaften Wörter auf verschiedene Blöcke verteilt und kommen auf der Empfangsseite wieder in die ursprüngliche Anordnung zurück. Wenn also während der Übertragung ein Büschelfehler auftritt, dann wird der Büschelfehler verteilt. Wenn die obige Verschachtelung zweimal ausgeführt wird, werden die ersten und zweiten Prüfwörter je für die Korrektur von Wörtern in bestimmten Fehlerkorrekturblöcken verwendet. Daher ist es möglich, dass auch dann, wenn ein Fehler durch eines der ersten und zweiten Prüfwörter nicht korrigiert werden kann, der Fehler durch das entsprechende andere Prüfwort korrigiert werden kann. Daher ergibt sich mit dieser Technik eine beträchtliche Verbesserung der Fehlerkorrekturmöglichkeiten für Büschelfehler.
Es wird jedoch, auch wenn nur ein Bit eines Wortes als fehlerhaft entdeckt wird, das ganze Wort als fehlerhaft betrachtet. Daher ist, wenn das empfangene Datensignal eine relativ grosse Anzahl von Zufallsfehler hat, die oben beschriebene Doppelverschachtelungstechnik nicht immer hinreichend wirksam zur Korrektur dieser Zufallsfehler.
Daher wird vorgeschlagen, die obenerwähnte Vielfachver-schachtelungstechnik mit einem Fehlerkorrekturcode zu kombinieren, der hohe Fehlerkorrekturmöglichkeiten aufweist, z.B. mit dem Reed-Solomon-Code (RS), Bose-Chaudhuri-Hocquenghem-Code (BCH) oder mit einer Variante eines b-Codes, welches K Wortfehler korrigieren kann, z.B. zwei Wortfehler in einem Block und der auch M Wortfehler korrigieren kann, z.B. drei oder vier Wortfehler, wenn die Position der Fehler bekannt ist.
Diese Fehlerkorrekturcodes ermöglichen eine Vereinfachung des Aufbaus eines Decoders, wenn nur ein Wortfehler zu korrigieren ist.
Im Falle, in welchem ein erster Decodierschritt für den zweiten Fehlerkorrekturblock aufgeführt wird, dann dieser in die erste Anordnung umgewandelt wird und ein nachfolgender Decodierschritt für den ersten Fehlerkorrekturblock durchgeführt wird, ist es möglich, dass selbst dann, wenn ein Fehler im ersten Decodierschritt vorhanden ist, dies als fehlerfrei betrachtet wird, der Fehler nicht detektiert wird oder vier Wortfehler als ein Wortfehler interpretiert wird. Falls infolge obiger Fehlbetrachtungen eine irrtümliche Fehlerkorrektur durchgeführt wird, verursacht dies ein neuerliches Übersehen von Fehlern und eine irrtümliche Fehlerdetektion im nächstfolgenden Decodierschritt. Dadurch wird mit hoher Wahrscheinlichkeit ein irrtümlicher Arbeitsvorgang entstehen. Falls ausserdem die Anzahl von zu korrigierenden Fehlerwörtern sich erhöht, nimmt die irrtümliche Fehlerkorrektur im allgemeinen zu. Falls daher beispielsweise bei Audio-PCM-Signalen Daten mit Fehlern nicht detektiert werden,
tritt bei der Analog-Digital-Wandlung ein Fremdton auf.
Es ist daher Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren zur Fehlerkorrektur vorzusehen, welches das Ubersehen von Fehlern reduziert und vorzusehen, dass keine Fremdtöne entstehen, wenn ein tonfrequentes PCM-Signal übertragen wird. Ausserdem soll die erste Decoderstufe vereinfacht werden.
Diese Aufgabe wird durch die kennzeichnenden Merkmale von Patentanspruch 1 gelöst.
Ausführungsbeispiele der Erfindung werden nun anhand s der Zeichnung näher erläutert. In der Zeichnung zeigt:
Fig. 1 ein Blockschema eines Beispiels eines fehlerkorrigierenden Coders, in welchem die vorliegende Erfindung angewendet wird;
Fig. 2 die Anordnung eines Blocks von codierten Daten io bei der Übertragung;
Fig. 3 ein Blockschema eines Beispiels eines fehlerkorrigierenden Decoders, in welchem die vorliegende Erfindung angewendet wird, und die Fig. 4, 5, 6, 7, 8 und 9 für die Erklärung der Arbeits-15 weise des fehlerkorrigierenden Decoders verwendete Diagramme.
Zunächst soll der bei der vorliegenden Erfindung verwendete Fehlerkorrekturcode erläutert werden. Bei dieser Diskus-' sion wird der Fehlerkorrekturcode durch eine Vektordarstel-2o lung oder durch eine zyklische Gruppendarstellung ausgedrückt. Zuerst soll ein nichtreduzierbares Polynom F(x) von m-ter Ordnung in einem Galois-Feld GF(2) betrachtet werden. Im Feld GF(2), das nur die Elemente «0» und « 1 » enthält, hat das nichtreduzierbare Polynom F(x) keine reelle 25 Wurzel. Daher wird eine imaginäre (oder komplexe) Wurzel a betrachtet, welche die Bedingung F(x) = 0 erfüllt. Nun bilden 2m verschiedene Elemente 0, a, a2, a3,... a2m~ ', von denen jedes eine Potenz von a ist und ein Element Null enthält, ein verlängertes Galois-Feld GF(2m). Dieses verlängerte Feld 3o GF(2m) ist ein Polynom-Ring mit einem nichtreduzierbaren Polynom F(x) von m-ter Ordnung über dem Feld GF(2) als Modulo. Das Element von GF(2m) kann ausgedrückt werden als eine lineare Kombination von 1, a = [x], ct2 = [x2],... am-' =[xm_l]. Das heisst, diese Elemente können ausgedrückt 35 werden als a0 + a,[x] + a2[x2] +... + am _ ,[xm~ ']
»m- IL
40
oder
(am_i, am_2,... a2, ai, ao)
45 wobei ao, ai,... am_ i Elemente von eGF(2) sind.
Als Beispiel soll das verlängerte Feld GF(28) und als Modulo das Polynom F(x) = xs + x4 + x3 + x2 + 1 betrachtet werden, wobei alle Variablen 8-Bit-Daten sind. Dieses Feld GF(28) kann wie folgt ausgedrückt werden:
50
a7X7 + asx6 + asx5 + a4X4 + ajx3 + aix2 + aix + ao oder (a7, as, as, a4, a.3, ai, ai, ao)
55 Daher wird beispielsweise a? als bedeutsamstes Bit MSB und ao als am wenigsten bedeutsames Bit LSB betrachtet. Da an zu GF(2) gehört, sind seine Elemente entweder 0 oder 1.
Weiter wird vom Polynom F(x) die folgende Matrix T mit m Zeilen und m Kolonnen abgeleitet.
60
0 • • * 0
T +
0
1 0
0
1
653 504
4
Als alternativer Ausdruck kann einer verwendet werden, welcher eine zyklische Gruppe enthält, welche angibt, dass der Rest des verlängerten Galois-Feldes GF(2m) (mit Ausnahme des Elementes Null) eine multiplikative Gruppe mit der Ordnung 2m~' bildet. Wenn die Elemente von GF(2m) ausgedrückt werden durch Benützung einer zyklischen Gruppe, dann wird das folgende erhalten:
0,1 (a = 2m), a, a2, a\ ... a2ra~2
Wenn in der vorliegenden Erfindung m Bits ein Wort und n Worte einen Block bilden, werden k Prüfworte erzeugt unter Verwendung einer Paritäts-Prüfmatrix H, z.B. der folgenden:
H
1
1
1
a""1
000 g
B2(n-2) •
e2(n-2)
0
&
A
0
Q(k-1)(n-1)
0 0
a(k-l)(n-2)
a
0
01
Weiter kann die Paritäts-Prüfmatrix H ähnlich ausgedrückt werden unter Verwendung der Matrix T, wie dies folgt:
1
I
o» I
2
■jïi-1
T1'2
» » T1
Ï
s2(n-1)
T2(n-2)
T2
1 !
0 1
«
! 0
T(k-l>(n-l)
T(k-1>Ca-2)
„k-3
-1
. V'iti Dieser Fehlerkorrekturcode kann Fehler von bis zu zwei fehlerhaften Worten in einem Fehlerkorrekturblock korrigieren und kann auch drei Wortfehler oder vier Wortfehler korrigieren, wenn die Fehlerposition bekannt ist.
In jedem Block sind vier Prüfworte (p = W3, q = W2, I5 r = Wi, s = Wo) enthalten. Diese Prüfworte können von den folgenden Gleichungen erhalten werden.
p -f q + r + s = 2Wi = a
20 a3p + a2q + ar + s = 2a'Wi = b a6p + a4q + a2r + s = Ia2'Wi = c a°p -f a"q + a3r + s = 2g3'Wi = d n- 1 Tn wobei E = 2^ 'st-
i—4
30
Das Ergebnis des weggelassenen Rechenvorganges ist das folgende:
^ s
a212
„153 s
«,152 a
209
s
.156
a
135
a s152
0"8
8
>2 &
ö153
a218
S15B
.156
e212
Wobei ' eine Einheitsmatrix von m Zeilen und m Kolonnen ist.
Wie obenerwähnt, sind die Ausdrücke, diedie Wurzel a verwenden irn Grunde die gleichen wie jene, unter Benützung einer Erzeugungsmatrix T.
Wenn weiter der Fall, in weichem 4 (k = 4) Prüfworte benützt werden, beispielhaft dargestellt werden soi!, wird die Paritäts-Prüfmatrix H die folgende Form annehmen:
1
1
o o 0 1
I î
a®"*
ti-2
a o O O JjJ
1 1
a2(n-15
ffi2(n-2)
(n-1)
ö3(n-2)
... e3
In diesem Fall werden, wenn ein einzelner Block von empfangenen Daten als Kolonnenvektor v = (Wn_,, Wn_2,.. Wi, Wo) ausgedrückt wird, wobei Wi = Wi + ei, ei ein Fehlermuster ist, vier Syndrome So, Si, S2 und S3, welche auf der Empfangsseite erzeugt werden, in folgender Weise ausgedrückt:
Der auf der Sendeseite angeordnete Coder muss die Prüf-worle p, q, r und 5 in der obigen Art erzeugen. .•,5 Als nächstes wird der grundlegende Algorhythmus der Fehierkorrektur beschrieben werden, wenn die Daten mit in obiger Weise erzeugten Prüfwörtern übertragen und dann empfangen werden.
[1] wenn kein Fehler vorhanden ist, sind alle Syndrome 5c Null : So = Si = S: = S3 = ö
[2] wenn ein Wortfehler vorhanden ist (wobei das Fehlermuster durch ei dargestellt wird), dann ist So = ei, Si =a'ei, S2 = c:,ei. Sj = «Jiei.
Hs -.Verden also die folgenden Gleichungen aufgestellt:
53
0^0 = 5.
o.'Si = S2 eo Ct'Sa = S3
Ob ein Wortfehler vorhanden ist oder nicht, kann festgestellt werden, indem geprüft wird, ob die obige Beziehung erfüllt ist oder nicht, wenn i sukzessive verändert wird.
S,
Es wird also das Muster a' verglichen mit dem früher in einem Festwertspeicher ROM gespeicherten, um die Fehlerposition i zu erfahren. Zu diesem Zeitpunkt wird das Syndrom Si selbst das Fehlermuster ei.
[3] Im Falle von zwei Wortfehlern (ei und ej) folgen die Syndrome den Beziehungen:
50 = ei + ej
51 = a'ei + aJ'ej
52 = a2iei + a2J'ej
53 = «3iei + a3Jdj
Die obigen Gleichungen können in der folgenden Weise modifiziert werden :
a^So + Si = (a' + ai)ei a^S 1 + S2 = a'(a' + aJ')ei a'S: + S3 = a2i(a! + ai)ei
653 504
akSi + S2 = a'(a' + ak)ei + aJ(aJ + ak)ej akS2 + S3 = a2'(a' + ak)ei + a2J(aJ + ak)ej
Entsprechend werden die folgenden Gleichungen abgeleitet:
aJ(akSo + Si) + (cckSi + S2) = (a' + aJ)(a' + ak)ei
10 a-i(akSi + S2) + (akS2 + S3) = a'(a' + aJ)(a' + ak)ei
Entsprechend können, wenn die folgende Gleichung aufgestellt wird, welche eine notwendige Bedingung für drei Wortfehler ist, alle drei Wortfehler diskriminiert werden.
15 Dabei wird angenommen, dass die Bedingungen Sp^0, Si ^0 und S2^0 erfüllt sind:
a'ja'(akSo + Si)+ (akSi + 82)}=a-i(akSi + S2) + (akS2 + S3)
20 Die entsprechenden Fehlermuster werden hier wie folgt ausgedrückt:
S0 + (a-j + o"k)S1 + o*J"kS2
Entsprechend werden, wenn die folgenden Gleichungen 25 erfüllt werden, zwei Wortfehler diskriminiert.
a'(aJSo + Si) = aJ'Si + S2
a'(aJSi + S2) = aJS2 + S3 30
Wenn die obigen Gleichungen erfüllt werden, wird dies als zwei Wortfehler betrachtet und daher können die Fehlermuster nun folgenderweise ausgedrückt werden:
e] =
ek =
(1 +
ax*j)(l + ai-k)
S0 + (a-
k + a'i)S1 + e"k-iS2
(1 +
a3-i)(l + a3'k)
S0 + (a*
1 + o'-îjSj + a"i"-5S2
(1 + nk~i)(l + a*"J)
S0 + o'^Sj
1 + a'
i-J
und ej =
S0 + o"1S1
1 + O'
In Wirklichkeit ist die Konstruktion einer Schaltung zur 35 Korrektur von drei Wortfehlern eher kompliziert und die für den Korrekturvorgang benötigte Zeit ist lang. In der Praxis wird daher ein Fehlerkorrekturvorgang verwendet, indem der obige Vorgang mit einem Fehlerkorrekturvorgang kombiniert wird, in welchem die Fehlerpositionen i, j, k und 1 bekannt [4] Wenn drei Wortfehler (ei, ej und ek) auftreten, können 40 sind durch ein Fehlerkennzeichen-Bit und die obigen Gleichungen für die Prüfung angewendet werden.
[5] Wenn vier Wortfehler vorhanden sind (ei, ej, ek und el), werden die Syndrome wie folgt ausgedrückt:
die Syndrome auf folgende Weise ausgedrückt werden:
50 = ei + ej + ek
51 = a'ei + ftiej + akek
52 = a2'ei + a2iej + a2kek
53 = a3iek + a3jej + a3kek
Die obigen Gleichungen können folgenderweise modifiziert werden:
akSo + Si = (a' + ak)ei + (ai -1- ak)ej
50
50 = ei + ej + ek + el
51 = a'ei + aiej + akek + a'ei
52 = a2'ei + a2->ej + a2kek + a2lel
53 = a3iei + aeiej + a3kek + a31el
Die obigen Gleichungen werden in folgender Weise modifiziert:
S0+(a~3+a"k+ cx"*^ + (ci"-3"k+a"k''î+ a"1"j)S2 + a'j"k"AS3
(l+a1'-5) (1+ a1"14) (1+Qi_£) S0+(a"k+a"i+a"i>SI + (e"k"£+ a"*"1 '+ o"^"k)S2+a"k"1"iS3
ej =
ek e«
(l+aj"i)a+aj'k)(l+o;i"£) SQ+(a-l+a_i+a" j (a"i"-î+a*'3 " £) S2+a"1_ S -
(1+ ak"i)(l+ a^Jd+a11"1) Sn+ ( 0 ^"+a ^ +0 k)S1 + (a ^ ^+a ^ k
+ a"k'i)S2+ o"i"j"kS3
(l+o*'*)(l+a£'j)(l+a1-k)
653 504
6
Wenn also die Fehlerposition (i, j, k, 1) durch Fehlerkennzeichen angegeben sind, kann der Fehler durch die obige Rechnung korrigiert werden.
Der Grundalgorhythmus der obigen Fehlerkorrektur besteht darin, dass in einem ersten Schritt durch die Syndrome So bis S3 geprüft wird, ob ein Fehler vorhanden ist oder nicht, dass beim zweiten Schritt geprüft wird, ob nur ein einziger Wortfehler vorhanden ist oder nicht, und dass beim dritten Schritt geprüft wird, ob zwei Wortfehler vorhanden sind oder nicht. Wenn bis zu zwei Wortfehler korrigiert werden, wird die Zeit zum Ablauf all dieser Schritte lang, was ein Problem ergibt, insbesondere wenn die Fehlerposition der zwei Wortfehler erhalten wird.
Es soll nun ein modifizierter Algorhythmus beschrieben werden für die Korrektur von zwei Wortfehlern, der das obige Problem nicht bewirkt.
Die Gleichungen der Syndrome So, Si, S2 und S3 im Falle von zwei Wortfehlern (ei, ej) lauten wie folgt:
50 = ei + ej
51 = a'ei + ajej
52 = a2iei + a2jej
53 = a3iei + aeJej
Die obigen Gleichungen werden in folgender Weise modifiziert:
(a'So + Si)(a'S2 + S3) = (a'Si + S2)2
Die Gleichung wird weiter modifiziert und es wird das folgende Fehlerlokalisierungs-Polynom erhalten:
(S0S2 + Si2)a2i + (Si S2 + SoS3)a' + (Si S3 + S22) = 0
Nun werden die Konstanten der entsprechenden Ausdrücke des obigen Polynoms in folgender Weise angenommen:
SoS2 + Si2 = A
5152 + S0S3 = B
5153 + S22 = C
Unter Verwendung der obigen Konstanten A, B und C kann die Fehlerposition von zwei Wortfehlern erhalten werden.
[ 1 ] Falls kein Fehler vorhanden ist : A = B = C = 0, So = 0 und S3 = 0.
[2] Falls ein einziger Wortfehler vorhanden ist: Wenn A = B = C = 0, So ^ 0 und S3¥*0 erfüllt sind, dann wird der Fehler als ein einziger Wortfehler betrachtet. Aus der Gleichung a' = S1/S0, kann die Fehlerposition i leicht bestimmt werden. Der Fehler wird also korrigiert unter Verwendung der Beziehung ei = So.
[3] Im Falle von zwei Wortfehlern: Wenn ein Fehler in mehr als zwei Wörtern auftritt, werden die Ungleichungen A=é0, b ¥= 0 und C # 0 aufgestellt und die Betrachtung des Fehlers wird ganz einfach.
Diesmal wird die folgende Gleichung aufgestellt:
Aa2i + Ba' + C = 0 wobei i = 0 bis (n — 1).
Wenn nun angenommen wird, dass B/A = D und C/A= E ist, werden die folgenden Gleichungen erhalten:
D = a' + ai
E = a' ■ ai
Es wird also die folgende Gleichung erhalten;
a2' + Da' + E = 0.
Wenn die Differenz zwischen den Fehlerpositionen als t bezeichnet wird, d.h. j = i + t, dann werden die folgenden Gleichungen erhalten:
D = a'(l +a')
E = a2i+t
Entsprechend wird die folgende Gleichung erhalten:
D2 _ (1 + at)2 = Ä-t +
B t a
Wenn der Wert von a~' + a' für jeden Wert von t = 1 bis (n — 1) vorher in einen Festwertspeicher eingeschrieben wird, und wenn festgestellt wird, dass der Wert zusammenfällt mit dem Wert von D2/E, der aus dem Ausgangssignal des Festwertspeichers und einem empfangenen Wort errechnet wird, dann kann t erhalten werden. Wenn das obige Zusammenfallen nicht detektiert wird, dann bedeutet dies, dass in mehr als drei Wörtern Fehler vorhanden sind.
Wenn also die folgenden Ausdrücke angenommen werden:
X = 1 + afc
Y » 1 + a-t = B2 + S
E
Können die folgenden Ausdrücke erhalten werden:
Aus den obigen Ausdrücken können die Fehlerpositionen i und j erhalten werden. Dann können die Fehlermuster ei und ej in folgender Weise ausgedrückt werden:
(ojs0 + Sl5 s0
ei • = _ = Y~ + D~~
*°is0 + s3? S0 ^ S1
_ ej = 5 3T + D~
Die Fehler können also korrigiert werden.
Dieser modifizierte Korrekturalgorhythmus verkürzt die für die Fehlerlokalisierung notwendige Zeit beträchtlich, bei die Korrektur von zwei Wortfehlern im Vergleich zu jener, die beim grundsätzlichen Algorhythmus notwendig ist.
Weiter kann, wenn die Anzahl k der Prüfworte erhöht wird, die Fehlerkorrekturfähigkeit entsprechend erhöht werden. Wenn z.B. k mit 6 gewählt wird, dann können drei Wortfehler korrigiert werden und sechs Wortfehler können korrigiert werden, wenn die Fehlerposition bekannt ist.
Nun soll ein Ausführungsbeispiel der Erfindung anhand der Zeichnung näher beschrieben werden. Dabei wird die Erfindung beispielsweise verwendet für die Aufzeichnung und Wiedergabe eines PCM-Tonsignales.
5
10
IS
20
25
30
35
40
45
50
55
60
65
7
653 504
Fig. 1 zeigt als ganzes, d.h. die Fig. 1A und 1B zusammen, einen fehlerkorrigierenden Coder in einer Aufzeichnungsanlage, an welche ein PCM-Tonfrequenzsignal als Eingangssignal angelegt wird. Um dieses PCM-Tonfrequenzsignal zu erhalten, werden die linken und rechten Stereosignale je mit einer Abtastfrequenz fs (z.B. 44,1 kHz) abgetastet und jeder Abtastwert wird in ein digitales Wort umgewandelt, das z.B. als Komplement von zwei codiert ist und eine Länge von 16 Bits aufweist. Entsprechend werden für den linken Kanal des Tonsignales die PCM-Datenworte Lo, Li, Li... erhalten und für den rechten Kanal die PCM-Datenworte Ro, Ri, R2,... Die PCM-Datenworte des linken und rechten Kanals werden je in sechs Kanäle aufgeteilt und daher ergibt sich ein Total von zwölf Kanälen von PCM-Datenfolgen als Eingangssignal für den fehlerkorrigierenden Coder. Zu einem gegebenen Zeitpunkt sind zwölf Worte L6n, Rén + i, L6n+i,R6n+i, Un+2, Ren+2, L6n+3, Rfin+3, Un+4, Rf,n+4, L6n+5 und R«n+5 Eingangssignal für den Coder. Im gezeichneten Beispiel wird jedes Wort aufgeteilt in acht obere Bits und acht untere Bits, so dass die zwölf Kanäle als vierundzwanzig Kanäle verarbeitet werden. Zur Vereinfachung ist jedes Wort der PCM-Daten als Wi ausgedrückt, dessen obere Bits bezeichnet werden mit Wi, A und dessen untere acht Bits bezeichnet werden mit Wi, A und dessen untere acht Bits bezeichnet werden mit Wi, B. So wird zum Beispiel das Wort L6n aufgeteilt in zwei Worte Wi2n, A und W]2n,B. Die PCM-Datenfolgen der vierundzwanzig Kanäle werden zuerst an eine Verschachtelungsschaltung 1 für gerade und ungerade Datenfolgen angelegt. Wenn n eine ganze Zahl 0,1,2,... ist, dann sind die Worte L6n (d.h. Wi2n,A und W12n,B), R6n (d.h. W,2n+ ,,A und W,2n + ,,B), L6n+2 (d.h. W,n+4,A und WI2n+4,B), Ren+2 (d.h. W,2n+5,A und W12n+5,B), L6n+4 (d.h. W,2n+8,A und W!2n+8,B), und R6n+4 (d.h. W,2n+9,A und Wi2n+9,B) je Wörter gerader Ordnung und die verbleibenden Wörter sind ungerade Wörter. Die PCM-Datenfolgen bestehen aus geraden Wörtern, welche je durch eine Einwort-Verzögerungsschaltung oder -leitung 2A, 2B, 3A, 3B, 4A, 4B, 5A, 5B, 6A, 6B, 7A und 7B der Verschachtelungsschaltung 1 verzögert sind. Es ist natürlich möglich, die Wörter um mehr als ein Wort zu verzögern, z.B. um acht Wörter. Weiter werden in der Verschachtelungsschaltung 1 die zwölf aus den geraden Wörtern bestehenden Datensequenzen umgewandelt oder verschoben, so dass sie die Übertragungskanäle eins bis zwölf belegen, und die zwölf aus den ungeraden Wörtern bestehenden Datenfolgen werden umgewandelt, dass sie die Übertragungskanäle dreizehn bis vierundzwanzig belegen.
Die Verschachtelungsschaltung 1 für gerade und ungerade Wörter dient dazu, zu verhindern, dass mehr als zwei aufeinanderfolgende Wörter des linken bzw. rechten Stereosignales Fehler entwickeln, in welchem Fall die Fehler praktisch nicht mehr korrigiert werden könnten.
Um den Nutzen dieses Merkmales zu erläutern, sollen drei aufeinanderfolgende Wörter Li - 1, Li und Li+ 1 als Beispiel betrachtet werden. Wenn das Wort Li fehlerhaft ist und nicht korrigierbar ist, ist es sehr erwünscht, dass die beiden benachbarten Wörter Li — 1 und Li + 1 richtig sind. Der Grund dafür besteht darin, dass, um ein unkorrigierbares fehlerhaftes Wort Li zu kompensieren, Li interpoliert werden muss zwischen dem vorausgehenden richtigen Wort Li — 1 und dem nachfolgenden richtigen Wort Li+ 1, üblicherweise durch Bilden des Mittelwertes aus Li — 1 und Li + 1. Die Verzögerungsleitungen 2A, 2B,... 7A und 7B der Verschachtelungsschaltung 1 sind vorgesehen, damit benachbarte Wörter in unterschiedlichen Fehlerkorrekturblöcken auftreten. Ein weiterer Grund für die Zusammenfassung von Gruppen von Übertragungskanälen für die gradzahligen Wörter und die ungeradzahligen Wörter besteht darin, dass, wenn die Datenfolgen verschachtelt werden, der Abstand zwischen den Aufzeichnungsstellen von benachbarten gradzahligen und ungradzahligen Wörtern so gross als möglich sein sollte.
Am Ausgang der Verschachtelungseinrichtung 1 erscheinen die Wörter der vierundzwanzig Kanäle in einer ersten Anordnung. Die entsprechenden PCM-Datenwörter von der Verschachtelungsschaltung 1 werden Wort um Wort an einen Coder 8 angelegt, welcher dann erste Prüfworte Q12n, Qi2n+1, Qi2n+2 und Qi2n+3 erzeugt, wie sie in den oben angegebenen Ausdrücken p, q, r, s gezeigt sind.
Ein Fehlerkorrekturblock, der die ersten Prüfworte aufweist, erscheint dann wie folgt:
(W|2n_i2,A; Wi2n_i2,B; Wi2n+i_i2,A; Wi2n + i_i2,B
Wi2n+4_i2,A; W|2n+4_|2,B; W|2n+5_]2,A; W|2n+5_|2,B;
W|2n+8_|2,A; Wi2n+8_|2,B; W|2n+9_|2,A; W|2n+9_|2,B;
W|2n+2 A; Wi2n+2,B; W|2n+3,A; Wi2n+3,B;
W12n+6,A; Wi2n+6,B; WI2n+7,A; Wi2n+7,B;
W]2n + io,A; Wi2n+10,B; Wi2n+n,A; W|2n+n,B;
Ql2iü Ql2n+l! Ql2n + 2Î Ql2n + 3)
Der erste Coder 8 führt seine Funktion durch, indem er die ersten Prüfworte Qi2n bis Qi2n+13 entsprechend der Anzahl Wörter eines Blocks (n = 28) errechnet, wobei m die Bit-Länge jedes Wortes (m = 8) und k die Anzahl der Prüfworte (k = 4) ist.
Die vierundzwanzig PCM-Datenwortfolgen und die vier Prüfwortfolgen werden dann an eine Verschachtelungsschaltung 9 angelegt. In dieser Verschachtelungsschaltung 9 werden die relativen Positionen der Kanäle so geändert, dass die Prüfwortfolgen zwischen den PCM-Datenfolgen, bestehend aus den gradzahligen Wörtern, und den PCM-Datenfolgen, bestehend aus den ungradzahligen Wörtern, liegen, und danach wird ein Verzögerungsvorgang durchgeführt für diese Verschachtelungsfolgen. Dieser Verzögerungsvorgang wird auf siebenundzwanzig Übertragungskanälen durchgeführt, beginnend mit dem zweiten Übertragungskanal, und zwar durch Verzögerungsleitungen mit Verzögerungsbeträgen von 1D, 2D, 3D, 4D,... 26D und 27D, wobei D eine Einheitsver-zögerung ist.
Am Ausgang der Verschachtelungsschaltung 9 erscheinen achtundzwanzig Folgen von Datenwörtern in einer zweiten Anordnung. Die Datenwörter werden Wort für Wort von den entsprechenden Datenfolgen übernommen und einem Coder 10 zugeführt, welcher zweite Prüfworte P)2n, Pi2n+i, Pi2n+2 und Pi2n+3 in der gleichen Art erzeugt wie die Prüfworte Q)2n bis Qi2n+3-
Genau wie der Coder 8 die ersten Prüfworte entsprechend den Parametern n = 28, m = 8 und k = 4 erzeugt, erzeugt der ähnliche Coder 10 die zweiten Prüfworte, entsprechend den Parametern n = 32, m = 8 und k = 4.
Ein Fehlerkorrekturblock umfasst die zweiten Prüfwörter und besteht aus zweiunddreissig Wörtern und wird wie folgt gebildet:
(Wi2n_i2,A; W12n_|2(D+|),B; WI2n+|_i2(2D+|),A;
Wi2n+1-12(3D+1)>B;
Wl2n + 4— 12(4D+ 1)>A; W12n+4_ |2(5D+ |),B
W|2r, + 5-|2(6D+I)>A; Wi2n + 5-l2(7D+l)>B; ...;
Ql2n-12(12D); Ql2n+ I — 12(!3D)! Ql2n +2- 12(I4D);
5
10
15
20
25
30
35
40
45
50
55
60
65
653 504
Ql2n + 3— 12(I5D)> ••• Wi2„ + 10- 12(24D)>A;
Wi2„+ io_ 12(25D)3 J W|2n + 11 - 12(25D)>A;
Wi2n + U-12(27D)3; Pl2n! Pl2n + l! Pl2n + 2! P]2n + 3)-
Darauf folgt eine Verschachtelungsschaltung 11, welche Verzögerungsleitungen mit einer Verzögerung von einem Wort für die gradzahligen Übertragungskanäle der zweiund-dreissig Datenfolgen inklusive die ersten und zweiten Prüfworte aufweist, und ferner Inverter 12, 13, 14 und 15 zur Inversion der zweiten Prüfwortfolgen. Die Verschachtelungsschaltung 11 dient dazu, zu verhindern, dass Fehler, die an der Grenze zwischen den Blöcken auftreten, so viele Worte beeinflussen, dass es unmöglich ist, sie zu korrigieren. Die Inverter 12, 13, 14 und 15 dienen dazu, eine fehlerhafte Betriebsweise zu verhindern, wenn alle Daten in einem Block «0» sind, wegen eines Ausfalls während der Übertragung. Dies bedeutet, dass, wenn ein Ausfall auftritt, die invertierten Prüfwortfolgen im Wiedergabesystem richtig diskriminiert werden. Für denselben Zweck können auch für die ersten Prüfwortfolgen Inverter vorgesehen sein.
Die so erhaltenen vierundzwanzig PCM-Datenfolgen und acht Prüfwortfolgen werden dann als zweiunddreissig Wortblöcke in Serieform gebracht, und es wird ein Synchronisiersignal von sechzehn Bits an den Kopf des resultierenden Seriesignales gestellt, um einen Übertragungsblock zu bilden, wie er in Fig. 2 gezeigt ist. Der so hergestellte Block wird auf einem Übertragungsmedium oder Träger übertragen. In Fig. 2 wird ein vom i-ten Übertragungskanal geliefertes Signal als U bezeichnet.
Praktische Beispiele des Übertragungsmediums oder des Trägers für das übertragene Signal können ein Magnetband zur Verwendung in einem magnetischen Aufzeichnungs- und Wiedergabegerät umschliessen, ferner eine Scheibe in einem Gerät mit einer rotierenden Scheibe oder ein ähnliches Medium.
Die reproduzierten Daten von jedem der zweiunddreissig Wörter jedes Blocks des übertragenen Signales werden an den Eingang eines fehlerkorrigierenden Decoders, der in Fig. 3 gezeigt ist, angelegt. Die übertragenen Daten, wie sie vom fehlerkorrigierenden Decoder empfangen werden, können einen oder mehrere Fehler enthalten, da die Eingangsdaten wiedergegebene Daten sind. Wenn kein Fehler vorhanden ist, stimmen die zweiunddreissig an den Eingang des Decoders angelegten Wörter mit den zweiunddreissig am Ausgang des fehlerkorrigierenden Codes erscheinenden Wörter überein. Im fehlerkorrigierenden Decoder wird ein Entschachtelungs-vorgang durchgeführt, der komplementär ist zum entsprechenden Verschachtelungsvorgang auf der Coderseite, um die Daten in ihre ursprüngliche Reihenfolge zurückzubringen. Wenn kein Fehler vorhanden ist, wird der Fehlerkorrekturvorgang durchgeführt, nachdem die Daten in die ursprüngliche Reihenfolge zurückgeführt sind.
Am Anfang ist, wie in Fig. 3 gezeigt, eine Entschachte-lungsschaltung 16 vorgesehen, welche Verzögerungsleitungen mit je einer Verzögerung von einem Wort für die ungradzahligen Übertragungskanäle und Inverter, 17, 18,19 und 20 für die Inversion der empfangenen zweiten Prüfwortfolgen aufweist. Die Ausgangssignale der Entschachtelungsschaltung 16 und der Inverter 17 bis 20 gelangen an einen ersten Decoder 21. In diesem ersten Decoder 21 werden die Syndrome Sio, Su, Si2 und Si3 entsprechend einer Matrix erzeugt, wie zum Beispiel der Reed-Solomon-Paritätsdetektionsmatrix HCI (Fig. 4), und zwar durch die zweiunddreissig Eingangswörter V1", wie in Fig. 4 gezeigt, und die obenerwähnte Fehlerkorrektur wird basierend auf den Syndromen Sio bis Sn durchgeführt. In Fig. 4 ist • ein Element von GF(28) und eine Wurzel von F(x) = x8 + x4 + x3 + x2 + 1. Der Decoder 21 leitet die korrigierten vierundzwanzig PCM-Datenfolgen und die vier ersten Prüfwortserien ab. Bei jedem individuellen Wort der Datenfolgen wird ein Fehlerkennzeichen- oder Fehlerdetektions-code (mindestens ein Bit) hinzugefügt, um anzugeben, ob im zugehörigen Wort ein Fehler ist (Fehlerkennzeichen ist « 1 ») oder nicht (Fehlerkennzeichen ist «0»). In den Fi'g. 4 und 5 und auch in der der nachfolgenden Beschreibung ist das empfangene eine Wort Wi lediglich als Wi bezeichnet.
Die Ausgangsdatenfolgen von Decoder 21 werden an eine Entschachtelungsschaltung 22 angelegt, welche zur Kompensation des Verzögerungsvorganges dient, der in der Verschachtelungsschaltung 9 im fehlerkorrigierenden Coder durchgeführt wird, und besitzt entsprechende Verzögerungsleitungen mit entsprechenden unterschiedlichen Verzögerungsbeträgen 27D, 26D, 25D ... 2D und 1D für die Übertragungskanäle eins bis siebenundzwanzig. Der Ausgang des Entschachtelungsschaltung 21 wird an einen zweiten Decoder 23 angelegt, in welchem Syndrome S20, S21, S22 und S23, entsprechend einer Matrix, wie der Reed-Solomon-Paritätsde-tektionsmatrix Hc2 (Fig. 5) erzeugt werden. Die achtundzwanzig Wörter VT, wie sie in Fig. 5 gezeigt sind, werden daran angelegt und die obenerwähnte Fehlerkorrektur wird basierend auf den Syndromen S20 bis S23 ausgeführt.
Der Decoder 23 löscht das zu jedem Wort, dessen Fehler korrigiert wurde, gehörende Fehlerkennzeichen, löscht jedoch das Fehlerkennzeichen nicht, das zu irgendeinem Wort gehört, dessen Fehler nicht korrigiert werden kann.
Die am Ausgang des Decoders 23 erscheinenden Datenfolgen werden an eine Entschachtelungsschaltung 24 für gradzahlige und ungradzahlige Folgen angelegt, in welcher die aus gradzahligen Wörtern bestehenden PCM-Datenfolgen und die aus ungradzahligen Wörtern bestehenden PCM-Datenfolgen neu angeordnet werden, so dass sie in andern Übertragungskanälen positioniert sind, und Verzögerungsleitungen mit einer Verzögerung um ein Wort werden für die PCM-Datenfolgen vorgesehen, die aus den ungradzahligen Wörtern bestehen. Dies kompensiert den entsprechenden Vorgang, der im Coder vor der Übertragung durchgeführt wurde. Am Ausgang der Entschachtelungsschaltung 24 erscheinen PCM-Datenfolgen, deren ursprüngliche Anordnung und vorbestimmte Reihenfolge vollständig wiederhergestellt ist, wie sie waren, bevor der Fehler korrigierende Coder seine Wirkung ausübte.
Obwohl in Fig. 3 nicht gezeigt, ist in der Stufe, die auf die Entschachtelungsschaltung 24 folgt, vorzugsweise eine Kompensationsschaltung vorgesehen, um nichtkorrigierbare Fehler zu kompensieren. Zum Beispiel kann eine Mittelwertinterpolation verwendet werden, wenn immer Fehler durch die Decoder 21 und 23 nicht korrigiert werden können, so dass allfällig verbleibende Fehler maskiert und unauffällig gemacht werden.
Im zweiten Decoder 23 wird die Fehlerkorrektur unter Benutzung des Fehlerkennzeichens durchgeführt, doch ist der zweite Decodierschritt unterschiedlich. Einer dieser Unterschiede ist ein Zustand (RCi), in welchem ein Wortfehler korrigiert wird und ein anderer ist ein Zustand (RC2), in welchem zwei Wortfehler korrigiert werden. Ausserdem besteht ein Zustand (RCj), in welchem mehr als drei Wortfehler korrigiert werden. Ausserdem ist zu beachten, dass eine Fehlerkorrektur, die die Lokalisierung des Fehlers durch das Kennzeichen benutzt, mit den vorgehend angegebenen Fehlerkorrekturzustände kombiniert werden kann.
In den Zuständen FCi, FC2 und FC3, in welchen das Fehlerkennzeichen im ersten Decoder 21 addiert wird, kann die Gefahr, dass eine Fehlerdetektion übersehen wird oder eine irrtümliche Fehlerkorrektur im nächsten Decodierschritt
5
10
15
20
25
30
35
40
45
50
55
60
65
9
653 504
durchgeführt wird durch eine Beziehung zwischen FCi und FC2 und von FC2 und FC3 vermindert werden. Es kann jedoch häufiger der Fall eintreten, in welchem das Fehlerkennzeichen auf « 1 » steht, obwohl ein Wortfehler korrigiert wurde oder ein Wort gar kein Fehler aufweist, wodurch im nächsten Decodierschritt die Fehlerkorrektur schwierig durchzuführen ist. Daraus geht hervor, dass die Kombination beider Decoder 21 und 23 und die Kombination von FCi- RCi, FCi- RC2, FC2- RCi, FC2-* RC2 und FCs^ RCs praktisch ist.
In dem in Fig. 3 gezeigten Beispiel der Erfindung, wird ein Fehler bis zu einem Wort durch den ersten Decoder 21 korrigiert, wobei die Kombination FC2->- RCi benutzt wird. Wenn festgestellt wird, dass mehr als zwei Wortfehler vorhanden sind in einem Fehlerkorrekturblock, dann wird das Fehlerkennzeichen von mindestens einem Bit zu allen der achtundzwanzig Wörter des Fehlerkorrekturblockes, d.h. zu allen Wörtern des Blocks mit zweiunddreissig Wörtern, ausser den Prüfwörtern, zugefügt, um anzugeben, dass Fehler vorhanden sind. Dieses Fehlerkennzeichen ist «1», wenn ein Fehler vorhanden ist, jedoch «0», wenn kein Fehler vorhanden ist. Im Falle, in welchem ein Wort aus acht Bits besteht, wird das Fehlerkennzeichen als ein Bit höher als das bedeutsamste Bit zugefügt, so dass ein 9-Bit-Wort entsteht. Dann werden die Wörter durch die Entschachtelungsschaltung 22 und danach durch den zweiten Decoder 23 weiterverarbeitet.
In diesem Decoder 23 wird der Fehler korrigiert unter Verwendung der Anzahl von Fehlerwörtern im ersten Fehlerkorrekturblock, die durch die Fehlerkennzeichen oder Fehlerpositionen angegeben werden.
Fig. 6 zeigt ein Flussdiagramm eines Beispiels eines Fehlerkorrekturvorganges, wie er vom zweiten Decoder 23 ausgeführt wird. In Fig. 6 und der nachfolgenden Beschreibung wird die Anzahl von fehlerhaften Wörtern, die durch die Fehlerkennzeichen angegeben werden, ausgedrückt als Np und die Fehlerposition, angegeben durch die Fehlerkennzeichen, wird ausgedrückt durch Ei. Weiter stellt in Fig. 6 Y die Antwort «ja» und N die Antwort «nein» dar.
( 1 ) Das Vorhandensein oder Nichtvorhandensein eines Fehlers wird bestimmt durch die Syndrome S20 bis S23. Wenn S20 = S21 = S22 = S23 = 0 ist, dann ist bestimmt, dass kein Fehler vorhanden ist. Nun wird geprüft, ob die Bedingung Npâzi erfüllt ist oder nicht. Wenn Np^zi ist, dann liegt fest, dass kein Fehler vorhanden ist und die Fehlerkennzeichen im Feh-Ierkorrekturblock werden gelöscht («0»). Wenn dagegen Np > zi ist, dann wird die Fehlerdetektion durch die Syndrome als fehlerhaft bezeichnet und die Fehlerkennzeichen werden unverändert belassen oder es wird sogar für alle Wörter in diesem Block das Fehlerkennzeichen «1» gemacht. Im letztern Fall wird der Wert von zi relativ gross gewählt, z.B. mit 14.
(2) Im Falle, dass ein Fehler vorhanden ist, wird über die Berechnung der Syndrome festgestellt, ob der Fehler ein 1-Wort-Fehler ist. Im Falle eines 1-Wort-Fehlers wird die Fehlerposition i erhalten. Es wird festgestellt, ob die durch die Berechnung über die Syndrome erhaltene Fehlerposition i mit der durch das Fehlerkennzeichen angegebenen übereinstimmt oder nicht. Wenn durch die Fehlerkennzeichen mehrere Fehlerpositionen angegeben werden, wird festgestellt, welche Fehlerposition i übereinstimmt mit den durch die Fehlerkennzeichen angegebenen mehrfachen Fehlerpositionen. Wenn i = Ei ist, dann wird geprüft, ob Np ë Z2 ist oder nicht, wobei Z2 zum Beispiel 10 ist. Wenn Npâz2 ist, dann wird der Fehler als ein Wortfehler betrachtet und es wird ein einziger Wortfehler korrigiert. Wenn Np>z2 ist, dann ist es möglich, dass der Fehler unrichtigerweise als ein 1-Wort-Fehler betrachtet wurde. Daher bleibt das Fehlerkennzeichen unverändert oder es werden sogar alle Wörter als fehlerhaft angenommen und die entsprechenden Fehlerkennzeichen werden auf « 1 » gesetzt.
Im Fall von i^Ei wird abgeklärt, ob NP^Z3 oder nicht ist, wobei Z3 einen ziemlich kleinen Wert aufweist, z.B. 3. Wenn die Bedingung Np2sZ3 erfüllt ist, dann ist ein Wortfehler in der Fehlerposition i korrigiert durch die Berechnung des Syndroms.
Wenn Np>z3 ist, wird weiter geprüft, ob NP^Z4 ist oder nicht. Wenn Z3 < NP^Z4 ist, bedeutet dies, dass, obwohl die Feststellung eines Wortfehlers durch das Syndrom fehlerhaft ist, Np zu klein ist. Daher werden in diesem Falle die Fehlerkennzeichen aller Wörter des Blocks auf « 1 » gesetzt. Wenn jedoch Np>z4 ist, bleibt jedes Fehlerkennzeichen unverändert. In diesem Falle ist Z4 zum Beispiel 5.
(3) Wenn nicht ein einzelner Wortfehler vorhanden ist, wird festgestellt, ob Npâzs ist. Wenn Np^zs ist, dann ist das Fehlerkennzeichen mangelhaft oder unzuverlässig, so dass die Fehlerkennzeichen aller Wörter auf « 1 » gesetzt werden. Wenn jedoch Np>z5 ist, bleiben alle Fehlerkennzeichen wie sie waren.
Obwohl gemäss dem vorliegenden Beispiel beim ersten und zweiten Decoder bis zwei Wortfehler korrigiert werden können, wird nur die Korrektur eines Wortes durchgeführt, wodurch die Gefahr, dass in den Decodern eine irrtümliche Fehlerdetektion oder eine irrtümliche Fehlerkorrektur erfolgt, vermindert wird. Da ausserdem die Berechnung des Syndroms für die Fehlerkorrektur für nur ein Wort erfolgt, wird die Struktur des Decoders wesentlich vereinfacht.
(4) Wie es in Fig. 6 durch die gestrichelte Linie gezeigt ist, ist es möglich, Fehler in bis zu M Wörtern zu korrigieren unter Verwendung der durch das Fehlerkennzeichen angegebenen Fehlerposition. Es können bis zu vier Wortfehler korrigiert werden, doch das Verfahren der Fehlerkennzeichenlöschung kann eine fehlerhafte Korrektur nicht vermeiden. Daher wird unter Berücksichtigung der Zeit und der Komplexität für den Korrekturvorgang M ungefähr 2 gewählt. Dann werden zwei Wortfehler, die zu den durch die Fehlerkennzeichen angegebenen Fehlerpositionen i und j gehören, korrigiert. Wenn Np^ M ist, verbleiben die Fehlerkennzeichen unverändert oder die Fehlerkennzeichen aller Wörter werden auf jene verändert, die Fehler angeben.
In der obigen Beschreibung sind die praktischen Werte für die Vergleichswerte zi bis zs bezogen auf die Anzahl NP der Fehlerkennzeichen, die Fehler in einem Block angeben, lediglich Beispiele. Im obigen Beispiel hat der Fehler korrigierende Code einen möglichen Nachteil insofern, als, wenn ein Block mehr als oder gleich fünf Wortfehler enthält, dieser unrichtigerweise als fehlerfrei betrachtet werden kann, und auch wenn ein Block mehr als oder gleich vier Wortfehler enthält, dieser unrichtigerweise als einer mit nur einem Wortfehler betrachtet werden kann. Daher müssen die Vergleichswerte geeignet gewählt werden in Berücksichtigung der Wahrscheinlichkeit, dass das obige Fehlerübersehen oder fehlerhafte Korrektur erfolgen kann.
Aus obiger Beschreibung geht hervor, dass, falls zwei Wortfehler beim zweiten Decoder unter Benutzung der Fehlerkennzeichnung korrigiert werden, die Fehlerkorrekturmöglichkeit sehr hoch ist. In diesem Falle, nachdem unterschieden worden ist, dass kein Fehler vorhanden ist, und dass der Fehler nicht ein Wortfehler ist, wird die Fehlerkorrektur durch das Fehlerkennzeichen ausgeführt. Dadurch kann die Gefahr vermindert werden, dass die Korrektur durch das Fehlerkennzeichen irrtümlich durchgeführt wird.
In einem zweiten Beispiel der Erfindung wird die Kombination von FCi—»RC2 in der vorhergehend beschriebenen Kombination benutzt. Das heisst, zwei Wortfehler werden beim ersten Decoder 21 korrigiert. Als Fehlerkorrektur-Algorithmus wird in diesem Falle der vorher beschriebene Algo5
10
15
20
25
30
35
40
45
50
55
60
65
653 504
10
rithmus benutzt. Wenn entdeckt wird, dass mehr als oder gleich drei Wortfehler in einem Fehlerkorrektionsblock existieren, wird ein Fehlerkennzeichen aus einem Bit, das das Vorhandensein oder nicht eines Fehlers repräsentiert zu jedem der achtundzwanzig Wörter addiert, mit Ausnahme zweiunddreissig Wörter oder Prüfwörter im zweiten Fehlerkorrektionsblock. Beim zweiten Decoder 23 werden zwei Wortfehler korrigiert, wobei die Anzahl von Fehlerwörtern im ersten Fehlerkorrektionsblock benutzt werden, die durch das Fehlerkennzeichen oder Fehlerposition angezeigt werden. Da zwei Wortfehler beim zweiten Decoder 23 korrigiert werden, wird der geänderte Fehlerkorrektions-Algorithmus verwendet. In anderen Worten, beim Beginn des Flussdiagrammes wird das vorgehend erwähnte Fehlerlokalisierungspolynom Aa2i + Ba' + C = 0 errechnet und die Fehlerkorrektion wird durchgeführt, unter Benutzung der Konstanten A, B und C dieses Polynoms und der Syndrome S20 bis S23. Gleichzeitig wird die Gesamtanzahl Np der Fehlerkennzeichen, die in einem Block enthalten sind, geprüft. Es ist selbstverständlich möglich, den fundamentalen Algorithmus zu benutzen, in welchem wie in Fig. 7 durch die gestrichelte Linie angezeigt und unter Benutzung des Syndroms das Nichtvorhandensein eines Fehlers, ein Wortfehler und zwei Wortfehler stufenweise entdeckt werden.
(1) Das Vorhandensein oder Nichtvorhandensein eines Fehlers wird geprüft. Falls A = B = C = 0, S20 = 0 und S23 = 0 wird allgemein entschieden, dass kein Fehler vorhanden ist. Zu diesem Zeitpunkt wird geprüft, ob Np^zi befriedigt wird. Falls Npâzi, wird entschieden, dass kein Fehler vorhanden ist und das Fehlerkennzeichen im Block wird auf «0» gesetzt. Falls im Gegenteil Np>zi, wird die Fehlerdetektion durch die Syndrome als inkorrekt eingestuft und das Fehlerkennzeichen bleibt unverändert oder die Fehlerkennzeichen für alle Wörter im Block werden auf « 1 » gesetzt. In diesem Falle wird der Wert von zi relativ gross gewählt, beispielsweise 14.
(2) Es wird geprüft, ob ein Fehler ein Wortfehler ist oder nicht. Falls A = B = C = 0, S20 ^ 0 und S23 =■£ 0, wird der Fehler im allgemeinen als ein Wortfehler eingestuft und die Fehlerposition i wird durch S2i/S2o = ai erhalten. Es wird entdeckt, ob die Fehlerposition i mit dem Fehlerkennzeichen zusammentrifft oder nicht. Falls die Fehlerposition durch das Fehlerkennzeichen eine Mehrzahl ist, wird geprüft, mit welchem der Fehlerkennzeichen die Fehlerposition i koinzidiert. Falls i = Ei, wird geprüft, ob Np S z2, wobei Z2 beispielsweise gleich 10 ist. Falls NpâZ2 ist, wird der Fehler als ein Wortfehler eingestuft und wird unter Benutzung von ei = S20 korrigiert. Falls Np > Z2 ist, obwohl i = Ei ist, besteht die Gefahr, dass der Fehler als ein Wortfehler eingestuft wird, da die Anzahl der Fehlerkennzeichen zu hoch ist für ein Wortfehler. Daher verbleiben die Fehlerkennzeichen unverändert und alle Wörter werden als fehlerhaft eingestuft und die entsprechenden Fehlerkennzeichen auf « 1 » gesetzt.
Im Fall dass i ¥= Ei ist, wird geprüft, ob die Beziehung Np5=Z3 befriedigt wird oder nicht, wobei Z3 ein relativ kleiner Wert, beispielsweise 3 ist. Falls Npäz3 ist, wird ein Wortfehler bei der Fehlerposition i korrigiert durch Berechnung des Syndroms.
Im Falle Np>z3 ist, wird weiter untersucht, ob die Beziehung Np Ss Z4 befriedigt wird oder nicht. Falls Z3< Npâ Z4, bedeutet dies, dass, obwohl die Einstufung als ein Wortfehler durch das Syndrom irrtümlich ist, Np zu klein ist. Daher werden die Fehlerkennzeichen aller Wörter des Blocks auf « 1 » gesetzt. Im gegenteiligen Falle von Np>z4 verbleiben die Fehlerkennzeichen unverändert.
(3) Es wird geprüft, ob ein Fehler zwei Wortfehler sind oder nicht. Falls der Fehler zwei Wortfehler sind, werden die Fehlerpositionen i und j durch Berechnung detektiert. Falls A^o, B=£0, C#0 und DVE = a~t + at, wobei t= 1 bis 27,
wird der Fehler als zwei Wortfehler eingestuft und je Fehlerpositionen i und j werden durch a' = D/X und ai = D/Y erhalten. Es wird detektiert, ob die Fehlerpositionen i und j mit denjenigen der Fehlerkennzeichen Ei und Ej koenzidie-ren. Falls i = Ei und j = Ej wird die Anzahl Np der Fehlerkennzeichen mit einem vorbestimmten Wert z5 verglichen. Falls Np^zs, werden zwei Wortfehler an den Fehlerpositionen i und j korrigiert. Diese Korrektur wird durch den Erhalt der Fehlermuster ei und ej durchgeführt, wie weiter oben beschrieben wurde. Falls Np>zs, wird keine Korrektur durchgeführt unter der Annahme, dass beispielsweise mehr als oder gleich drei Wortfehler irrtümlicherweise als zwei Wortfehler detektiert werden und die Fehlerkennzeichen verbleiben unverändert oder alle Wörter eines Blocks werden als fehlerhaft eingestuft.
Falls eine der Fehlerpositionen i und j mit einer der Fehlerpositionen Ei und Ej koinzidieren oder i = Ei, j ^ Ej oder i # Ei, J = Ej ist, wird geprüft, ob die Beziehung Np ^ zö befriedigt wird oder nicht. Falls Np^zs, werden zwei Wortfehler an den Fehlerpositionen i und j korrigiert. Falls Np>zö, wird geprüft, ob die Beziehung Np^z? befriedigt wird oder nicht. Diese Überprüfung wird derart ausgeführt, dass, falls die Fehlerpositionen teilweise übereinstimmen, die Anzahl der Fehlerkennzeichen überprüft wird, ob sie gross oder klein ist. Falls Np^Z7, wird bestimmt, dass die Anzahl der Fehlerkennzeichen zu klein ist und die Fehlerkennzeichen aller Wörter im Block werden auf « 1 » gesetzt. Falls Np > z- ist, wird die Zuverlässigkeit der Fehlerkennzeichen hoch eingestuft, so dass die Fehlerkennzeichen unverändert verbleiben.
Falls i # Ei und j ^ Ej, wird geprüft, ob die Beziehung Np^zs befriedigt wird. Falls Np relativ klein ist, wird das durch Benutzung des Fehlerlokalisierungspolynom erhaltene Resultat als aussagekräftiger eingestuft als die Fehlerkennzeichen und zwei Wortfehler an den Fehlerpositionen i und j werden korrigiert. Falls Np > zs ist, wird weiter geprüft, ob die Beziehung Np^Z9 befriedigt wird oder nicht. Diese Überprüfung ist ähnlich derjenigen von NP^Z7, wobei die Fehlerkennzeichen des Blockes entweder unverändert bleiben oder die Fehlerkennzeichen aller Wörter eines Blockes werden auf « 1 » gesetzt.
(4) Im Falle, der von den obigen Fällen (1), (2) und (3) abweicht, insbesondere falls mehr als zwei Wortfehler vorhanden sind, wird keine Fehlerkorrektur durchgeführt. In diesem Falle wird geprüft, ob die Beziehung Npâzio befriedigt wird oder nicht. Falls Nps=zio, wird die Zuverlässigkeit der Fehlerkennzeichen als niedrig eingestuft und die Fehlerkennzeichen aller Wörter werden auf « 1 » gesetzt. Falls Np>zio, bleiben die Fehlerkennzeichen unverändert.
(5) Falls keine zwei Wortfehler vorhanden sind, ist es möglich, beispielsweise drei Wortfehler unter Benutzung der Fehlerlokalisierung durch Fehlerkennzeichen zu korrigieren. In anderen Worten, falls Np = 3, werden drei Wortfehler, die den Fehlerpositionen i, j und k entsprechen durch die Fehlerkennzeichen korrigiert. Falls Np^3 ist, verbleiben die Fehlerkennzeichen unverändert oder die Fehlerkennzeichen für alle Wörter werden auf « 1 » gesetzt.
Ferner wird der Wert zi, welcher mit der Gesamtanzahl Np der Fehlerkennzeichen eines Blocks verglichen wird, entsprechend festgelegt, wobei die Wahrscheinlichkeit der Erzeugung einer irrtümlichen Detektion infolge des Fehlerkorrekturcodes berücksichtigt wird. Im vorgehenden Beispiel, falls ein Fehler mehr als oder gleich fünf Wortfehler sind, besteht die Gefahr, dass dieser Fehler als kein Fehler eingestuft wird und falls ein Fehler grösser als oder gleich vier Wortfehler ist, dieser Fehler als ein Wortfehler eingestuft wird, und falls ein Fehler mehr als oder gleich drei Wortfehler ist, dieser als zwei Wortfehler eingestuft wird.
Nun soll anhand eines praktischen Beispiels das Fehler5
10
15
20
25
30
35
40
45
50
55
60
65
11
653 504
korrekturverfahren anhand der Fig. 8 und 9 beschrieben werden. Im ersten Decoder 21 wird der Zustand eines Fehlers unter Verwendung des obenerwähnten Fehlerlokalisierungs-Polynoms und des Fehlersyndroms beurteilt.
(1) Falls kein Fehler vorhanden ist, wird kein Fehlerkennzeichen zugefügt, und die Daten werden unverändert der zweiten Decodierung zugeführt.
(2) Im Falle eines Wortfehlers wird die Fehlerposition erhalten. Wenn die Fehlerposition i kleiner oder gleich 31 ist, wird das Wort korrigiert, wenn jedoch die Fehlerposition i mehr als 31 ist, dann werden vier Wortfehler irrtümlicherweise als ein einziger Wortfehler betrachtet. Folglich werden Fehlerkennzeichen allen Wörtern zugefügt und die Daten werden in der nächsten Stufe decodiert.
(3) Im Falle von zwei Wortfehlern werden die Fehlerpositionen errechnet. Wenn die Fehlerpositionen i je mit weniger oder gleich 31 bestimmt werden, werden die beiden Wörter korrigiert und Fehlerkennzeichen werden allen Wörtern zugefügt. Wenn die Fehlerposition i mehr als oder gleich 32 ist, dann werden mehr als drei Wortfehler irrtümlich als zwei Wortfehler beurteilt. Daher erhalten alle Wörter fehleranzeigende Kennzeichen und werden der nächsten Decodierstufe zugeführt.
(4) Im Falle von mehr als drei Wortfehlern wird kein Korrekturvorgang ausgeführt, sondern es werden allen Wörtern Fehlerkennzeichen beigegeben und dann die Daten der nächsten Decodierstufe C2 zugeführt.
Im zweiten Decoder 23, der ähnlich aufgebaut ist wie der Decoder 21, wird die Art jedes Fehlers zuerst durch ein Fehlerpositionspolynom und durch die Fehlersyndrome beurteilt.
(1) Im Falle, dass kein Fehler detektiert wird, wird, wenn ein durch den ersten Decoder zugeführtes Fehlerkennzeichen vorhanden ist (d.h. wenn es «1» ist), dieses gelöscht (d.h. «0» gemacht).
(2) Im Falle eines Wortfehlers wird die Fehlerposition errechnet. Wenn die Fehlerposition kleiner oder gleich 27 ist, wird das fehlerhafte Wort korrigiert und das durch den ersten Decoder 21 zugefügte Fehlerkennzeichen wird gelöscht.
Wenn jedoch die Fehlerposition grösser als oder gleich 28 ist, wird kein Korrekturvorgang durchgeführt und das vorher zugefügte Fehlerkennzeichen bleibt wie es ist.
(3) Im Falle von zwei Wortfehlern werden die Fehlerpositionen i und j errechnet. Wenn die Fehlerposition i und j je mehr als 27 sind, werden mehr als oder gleich drei Wortfehler irrtümlich als nur zwei Wortfehler beurteilt. In diesem Fall jedoch wird die Anzahl der durch den ersten Decoder 21 zugeführten Fehlerkennzeichen geprüft. Wenn diese Anzahl von Fehlerkennzeichen 2 übersteigt, werden die Fehlerkennzeichen unverändert belassen. Wenn die Anzahl der Fehlerkennzeichen kleiner 2 ist, obwohl zwei Wortfehler detektiert wurden, werden allen Wörtern Fehlerkennzeichen zugefügt, da die Daten eines ganzen Blockes dann als unzuverlässig betrachtet werden. Selbst wenn die Fehlerposition i, j kleiner als 27 sind, werden, wenn die Anzahl der durch den ersten Decoder 21 zugefügten Fehlerkennzeichen kleiner als oder gleich 4 ist, die beigegebenen Fehlerkennzeichen unverändert belassen. Ebenfalls wird, wenn die Anzahl der Fehlerkennzeichen grösser als 4 ist, die von dieser Stufe erhaltene Fehlerposition i oder j mit dem vom ersten Fehlerdecoder 21 beigegebenen Fehlerkennzeichen verglichen.
(a) Wenn die beiden Wörter nicht zusammenfallen, wird kein Fehlerkorrekturvorgang ausgeführt und die Anzahl der Fehlerkennzeichen wird geprüft. Wenn diese Anzahl 2 übersteigt, werden die zugefügten Fehlerkennzeichen unverändert belassen. Wenn jedoch die Anzahl von Fehlerkennzeichen kleiner 2 ist, werden allen Wörtern Fehlerkennzeichen beigegeben.
(b) Wenn nur ein Wort übereinstimmt, wird die Anzahl der Fehlerkennzeichen ebenfalls geprüft. Wenn diese Anzahl 3 übersteigt, z.B. 4 ist, werden die beigegebenen Fehlerkennzeichen unverändert belassen. Wenn jedoch diese Anzahl kleiner 3 ist, werden allen Wörtern Fehlerkennzeichen beigegeben.
(c) Wenn die beiden Wörter übereinstimmen, werden die beiden Wörter korrigiert und danach die Fehlerkennzeichen gelöscht.
(4) Im Falle, dass ein Fehler mit mehr als oder gleich drei Wörtern gefunden wird, wird die Anzahl der Fehlerkennzeichen geprüft. Wenn diese Anzahl 2 übersteigt, werden die zugefügten Fehlerkennzeichen unverändert belassen, während, wenn diese Anzahl kleiner als 2 ist, allen Wörtern Fehlerkennzeichen beigegeben werden.
Wie oben erwähnt, werden später im Decodiervorgang die mit Fehlerkennzeichen versehenen Wörter als unkorrigierbare Wörter kompensiert.
Bei dem in Fig. 3 gezeigten Fehler korrigierenden Decoder wird die Fehlerkorrektur unter Verwendung der ersten Prüfworte Q]2n, Qi2n + b Qi2n+2 und Qi2n+3 und die Fehlerkorrektur unter Verwendung der zweiten Prüfwörter P|2n, Pi2n+i, Pi2n+2 und Pi2n+3 je einmal ausgeführt. Wenn jedoch die obigen Fehlerkorrekturen je zweimal oder mehrmals (in Praxis ungefähr 2 Mal) ausgeführt werden, kann die Fehlerkorrekturmöglichkeit beträchtlich erhöht werden, da das korrigierte Resultat jedes Mal weniger Fehler enthält. Wie oben erwähnt, ist es im Falle, wo ein zusätzlicher Decoder weiter in der letzteren Stufe vorgesehen ist, notwendig, dass das Prüfwort in einem entsprechenden Decoder korrigiert wird, der zusätzlich zu den Decodern 21 und 23 vorhanden ist.
Im obigen Beispiel unterscheiden sich die Verzögerungsbeträge im Verzögerungsvorgang von der Verschachtelungsschaltung 9 von Kanal zu Kanal um einen konstanten Betrag D, es ist jedoch ajuch möglich, eine unregelmässige Veränderung im Verzögerungsbetrag statt der obigen konstanten Veränderung zu verwenden. Weiter sind die zweiten Prüfworte Pi solche Fehlerkorrekturendecodes, welche nicht nur von den PCM-Datenwörtern, sondern auch von den ersten Prüfwörtern Qi gebildet werden. Ähnlich ist es möglich, dass die ersten Prüfwörter Qi aus Wörtern gebildet werden, welche die zweiten Prüfwörter Pi umfassen. Zu diesem Zweck kann eine Rückführtechnik verwendet werden, so dass die zweiten Prüfwörter Pi an den Coder zurückgeführt werden, welcher die ersten Prüfwörter erzeugt.
Aus obiger Beschreibung eines Ausführungsbeispiels der vorliegenden Erfindung kann entnommen werden, dass ein Fehlerkorrekturcode verwendet wird, um beispielsweise bis zwei Wortfehler zu korritieren, ohne einen Kennzeichencode zu verwenden, um die Fehlerposition anzuzeigen, und dass jeder Büschelfehler durch die Kreuzverschachtelungsarbeits-weise so gestreut wird, dass sowohl zufällige Fehler als auch Büschelfehler durch das erfindungsgemässe Verfahren korrigiert werden können.
Da ausserdem das Fehlerkennzeichen, das das Vorhandensein eines Fehlers darstellt, jedem Wort im ersten Schritt beigegeben wird, kann die Gefahr, dass eine Fehlerdetektion übersehen wird oder eine irrtümliche Korrektur durchgeführt wird, dadurch beseitigt werden, dass die Anzahl der Fehlerkennzeichen und der Fehlerpositionen durch die Fehlerkennzeichen im nächsten Decodierungsschritt überprüft werden kann.
Ausserdem können durch die Verwendung der Fehlerlokalisierung durch die Fehlerkennzeichen mehr als zwei Wortfehler durch einen einfachen Aufbau korrigiert werden. Dieses gilt insbesondere bei der Verwendung der vorliegenden Erfindung für ein digitales Audio-Plattensystem, das in der Theorie ähnlich einem Video-Plattensystem aufgebaut ist.
5
10
15
20
25
30
35
40
45
50
55
60
65
10 Blatt Zeichnungen

Claims (11)

  1. 653 504
    2
    PATENTANSPRÜCHE
    1. Verfahren zur Fehlerkorrektur, in dem ein erster Fehlerkorrektionsblock aus einem Wort, das in jeder der Pulscode-modulations-Datenserien einer Mehrzahl Kanäle in einem ersten Anordnungszustand enthalten ist, und einem ersten Prüfwort für das eine Wort gebildet wird, wobei die PCM-Datenserien und die ersten Prüfwortserien bei jedem Kanal, der in einen zweiten Anordnungszustand überführt werden soll, mit verschiedenen Zeiten verzögert werden; und ein zweiter Fehlerkorrektionsblock aus einem Wort, das in jeder der PCM-Datenserien einer Mehrzahl Kanäle und ersten Prüfwortserien im zweiten Anordnungszustand enthalten ist, und einem zweiten Prüfwort für das letztere eine Wort gebildet wird, wobei die ersten und zweiten Korrektionsblöcke derart ausgebildet sind, dass sie solche Fehlerkorrektionscode sind, dass Fehlersyndrome berechnet werden und Fehler bis K Wörter, die im gleichen Block enthalten sind, durch Fehler-lokalisierung durch die Fehlersyndrome korrigiert werden; und eine erste Decodierung für den zweiten Fehlerkorrektionsblock der übertragenen Datenserien durchgeführt wird, wobei die PCM-Datenserien und die ersten Prüfwortserien in jedem Kanal, der in einen ersten Anordnungszustand überführt werden soll, mit verschiedenen Zeiten verzögert werden; und anschliessend eine zweite Decodierung für den zweiten Fehlerkorrektionsblock durchgeführt wird, gekennzeichnet durch folgende Schritte
    - Korrektur von Fehlern bis zu einer vorbestimmten Anzahl Wörtern im zweiten Fehlerkorrektionsblock während dem ersten Decodieren,
    - Hinzufügen einer Fehlerkennzeichnung zu jedem Wort eines Blockes, falls Fehlerwörter, die die vorgegebene Anzahl überschreiten, entdeckt werden, unter der Annahme, dass alle Wörter eines Blockes einen Fehler enthalten, und
    - Berechnung eines Fehlersyndroms für eine Mehrzahl von Wörtern, die im ersten Fehlerkorrektionsblock enthalten sind und somit Korrektur von Fehlerwörtern einer vorgegebenen Anzahl durch Ermöglichung von Fehlerlokalisierungen mittels des Fehlersyndroms während dem zweiten Decodieren.
  2. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass selbst, falls Fehlerwörter der vorgegebenen Anzahl während dem ersten Decodieren korrigiert werden, eine Fehlerkennzeichnung dem korrigierten Wort hinzugefügt wird.
  3. 3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vorgegebene Anzahl während dem ersten Decodieren kleiner als K gewählt wird.
  4. 4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vorgegebene Anzahl während dem ersten Decodieren K ist.
  5. 5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass während dem ersten Decodieren im zweiten Fehlerkorrektionsblock bis K Wortfehler korrigiert werden und dass Fehler aller Wörter eines Blockes, in denen Fehlerwörter mit mehr als oder gleich K Wörter, eingeschlossen korrigierte Wörter, enthalten sind, gekennzeichnet werden.
  6. 6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass während dem ersten Decodieren bis zu K Wörter im zweiten Fehlerkorrektionsblock korrigiert werden, Fehlerkennzeichnungen den korrigierten Wörtern hinzugefügt werden und Fehler aller Wörter eines Blockes, in denen Fehlerwörter mit einer Anzahl, die grösser als eine vorgegebene Anzahl und kleiner K ist, enthalten sind, gekennzeichnet werden.
  7. 7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass aus den ersten und zweiten Fehlerkorrektionsblöcken solche Fehlerkorrektionscode gebildet werden, dass bis zu K Wortfehler, die im gleichen Block enthalten sind, korrigiert werden durch Berechnung von Fehlersyndromen und Fehlerlokalisierungen durch die Fehlersyndrome ermöglicht werden und derart, dass Fehlerlokalisierungen vorgängig bis zu M Wortfehler, mit M kleiner als K, die im gleichen Block enthalten sind, entdeckt und korrigiert werden können.
  8. 8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass während dem zweiten Decodieren, falls jede Kennzeichnung mit einer vorgegebenen Anzahl Wörter kleiner oder gleich M Wörter im ersten Fehlerkorrektionsblock einen Fehler anzeigt, es als Fehlerlokalisierung beurteilt wird, ein Feh-lersyndrom aus einer Mehrzahl Wörtern berechnet wird, die im ersten Fehlerkorrektionsblock enthalten sind und die vorgegebene Anzahl von Fehlerwörtern mittels der Fehlerlokalisierung und dem Fehlersyndrom korrigiert wird.
  9. 9. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass während dem zweiten Decodieren, nur falls, fussend auf dem Fehlersyndrom, der aus den im ersten Fehlerkorrektionsblock enthaltenen Wörtern erhalten wurde, entdeckt wird, dass mehr als eine vorgegebene Anzahl von Wörtern Fehler enthalten, eine Fehlerkorrektur für die Fehlerlokalisierung, angezeigt durch eine Fehlerkennzeichnung, durchgeführt wird.
  10. 10. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die vorgegebene Anzahl für die zweite Decodierung K ist.
  11. 11. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass durch Prüfen von Anzahl und Zustand der Fehlerkennzeichnungen, die während dem zweiten Decodieren im ersten Fehlerkorrektionsblock enthalten sind, bestimmt wird, ob der zweite Korrekturblock eine Fehlerkorrektur durchführt.
CH4097/81A 1980-06-20 1981-06-22 Verfahren zur fehlerkorrektur bei einer pcm-datenuebertragung. CH653504A5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8442480A JPS5710557A (en) 1980-06-20 1980-06-20 Error correcting method
JP8442780A JPS5710560A (en) 1980-06-20 1980-06-20 Error correcting method
JP8442880A JPS5710561A (en) 1980-06-20 1980-06-20 Error correcting method

Publications (1)

Publication Number Publication Date
CH653504A5 true CH653504A5 (de) 1985-12-31

Family

ID=27304545

Family Applications (1)

Application Number Title Priority Date Filing Date
CH4097/81A CH653504A5 (de) 1980-06-20 1981-06-22 Verfahren zur fehlerkorrektur bei einer pcm-datenuebertragung.

Country Status (14)

Country Link
US (1) US4546474A (de)
AT (1) AT379460B (de)
AU (1) AU542428B2 (de)
BR (1) BR8103911A (de)
CA (2) CA1161565A (de)
CH (1) CH653504A5 (de)
DE (1) DE3124425C2 (de)
DK (1) DK158485C (de)
ES (1) ES8203542A1 (de)
FR (1) FR2485299B1 (de)
GB (1) GB2079994B (de)
IT (1) IT1194807B (de)
NL (1) NL191136C (de)
SE (1) SE451928B (de)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1170776A (en) * 1980-07-18 1984-07-10 Yoichiro Sako Method of error correction of blocks of data
CA1212729A (en) * 1981-12-08 1986-10-14 Hiroshi Ogawa Digital signal detecting and compensating circuit with adjustable window signal
NL8200207A (nl) * 1982-01-21 1983-08-16 Philips Nv Werkwijze met foutkorrektie voor het overdragen van blokken databits, een inrichting voor het uitvoeren van een dergelijke werkwijze, een dekodeur voor gebruik bij een dergelijke werkwijze, en een inrichting bevattende een dergelijke dekodeur.
US4541091A (en) * 1982-06-11 1985-09-10 Hitachi, Ltd. Code error detection and correction method and apparatus
DE3377029D1 (en) * 1982-06-15 1988-07-14 Toshiba Kk Apparatus for dividing the elements of a galois field
FR2533782B1 (fr) * 1982-09-27 1988-09-09 France Etat Equipements d'enregistrement et de lecture de donnees numeriques sur videodisque analogique, munis de moyens de protection contre les erreurs
US4494234A (en) * 1982-12-29 1985-01-15 International Business Machines Corporation On-the-fly multibyte error correcting system
DE3483460D1 (de) * 1983-03-12 1990-11-29 Sony Corp Vorrichtung mit fehlerkorrektur.
JPS6029073A (ja) * 1983-06-17 1985-02-14 Hitachi Ltd ディジタル信号構成方式
US4677622A (en) * 1983-06-22 1987-06-30 Hitachi, Ltd. Error correction method and system
JPH0812612B2 (ja) * 1983-10-31 1996-02-07 株式会社日立製作所 誤り訂正方法及び装置
AU608690B2 (en) * 1983-12-20 1991-04-11 Sony Corporation Method and apparatus for decoding error correction code
BR8407228A (pt) * 1983-12-20 1985-11-26 Sony Corp Processo e aparelho para decodificador codigo de correcao de erros
JPS60142430A (ja) * 1983-12-28 1985-07-27 Fujitsu Ltd 誤り訂正・検出装置
JPH084233B2 (ja) * 1984-06-29 1996-01-17 株式会社日立製作所 誤り訂正符号の復号装置
US4727547A (en) * 1984-07-18 1988-02-23 Willi Studer Method and apparatus for decoding
JPH0619721B2 (ja) * 1984-07-20 1994-03-16 パイオニア株式会社 符号誤り訂正方法
JP2557340B2 (ja) * 1984-10-31 1996-11-27 株式会社東芝 デジタル再生装置におけるデインタ−リ−ブ処理用メモリの制御方法
CH666975A5 (de) * 1984-12-18 1988-08-31 Studer Willi Ag Verfahren und vorrichtung zur aufzeichnung und wiedergabe codierter digitaler signale.
JPS6276825A (ja) * 1985-09-30 1987-04-08 Hitachi Ltd 符号誤り訂正方法
JPS62177768A (ja) * 1986-01-31 1987-08-04 Sony Corp エラ−訂正装置
US4792953A (en) * 1986-03-28 1988-12-20 Ampex Corporation Digital signal error concealment
JPS63193723A (ja) * 1987-02-06 1988-08-11 Sony Corp リ−ドソロモン符号の復号方法
JP2945007B2 (ja) * 1987-09-29 1999-09-06 ソニー株式会社 データ伝送方法
US5499251A (en) * 1990-08-15 1996-03-12 Televerket Method of recovering lost bits in a digital transmission
JP3109087B2 (ja) * 1990-08-24 2000-11-13 ソニー株式会社 符号化装置及び復号化装置
US5222069A (en) * 1990-09-20 1993-06-22 Ampex Systems Corporation Miscorrection arrangement for the concealment of misdetected or miscorrected digital signals
JPH04222029A (ja) * 1990-12-21 1992-08-12 Sony Corp エラー訂正方法
KR930007928B1 (ko) * 1991-01-31 1993-08-21 삼성전자 주식회사 오류정정방법 및 장치
JP3259323B2 (ja) * 1992-04-13 2002-02-25 ソニー株式会社 デ・インターリーブ回路
US5414859A (en) * 1992-05-27 1995-05-09 Tandy Corporation Interprocessor communication protocol with built-in error prevention encoding
US5594601A (en) * 1992-05-27 1997-01-14 Tandy Corporation Method of programming audio tracks in a sequential medium
US5872798A (en) * 1994-02-16 1999-02-16 U.S. Philips Corporation Error correctable data transmission method and device based on semi-cyclic codes
FI96259C (fi) * 1994-03-28 1996-05-27 Nokia Telecommunications Oy Dekoodausmenetelmä
JP3328093B2 (ja) * 1994-07-12 2002-09-24 三菱電機株式会社 エラー訂正装置
US5815212A (en) * 1995-06-21 1998-09-29 Sony Corporation Video overlay circuit for synchronizing and combining analog and digital signals
JP3234493B2 (ja) * 1996-03-11 2001-12-04 三洋電機株式会社 符号誤り訂正方法及び符号誤り訂正装置
JP4031136B2 (ja) * 1999-01-14 2008-01-09 株式会社東芝 符号化・復号化装置及びディスク記憶装置
US7133441B1 (en) 1999-02-23 2006-11-07 Actelis Networks Inc. High speed access system over copper cable plant
EP1111800A1 (de) * 1999-12-21 2001-06-27 Deutsche Thomson-Brandt Gmbh Fehlerkorrektur mit einem cross interleave Reed-Solomon Code, insbesondere für CD-ROM
WO2002035906A2 (en) * 2000-11-01 2002-05-10 Actelis Networks Ltd. High speed access system over copper cable plant
US20020199153A1 (en) * 2001-06-22 2002-12-26 Fall Thomas G. Sampling method for use with bursty communication channels
EP1388944A1 (de) * 2002-08-10 2004-02-11 Deutsche Thomson-Brandt Gmbh Cross-interleave Reed-Solomon Codekorrektion
EP1388946A1 (de) * 2002-08-10 2004-02-11 Thomson Licensing S.A. Cross-interleave Reed-Solomon Codekorrektion
KR100981503B1 (ko) * 2004-02-13 2010-09-10 삼성전자주식회사 최대 오류 정정/오류 검출 능력을 가지는 저밀도 패리티검사 부호 부호화/복호화 장치 및 방법
DE102004036383B4 (de) * 2004-07-27 2006-06-14 Siemens Ag Codier-und Decodierverfahren , sowie Codier- und Decodiervorrichtungen

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3638182A (en) * 1970-01-02 1972-01-25 Bell Telephone Labor Inc Random and burst error-correcting arrangement with guard space error correction
US3958220A (en) * 1975-05-30 1976-05-18 International Business Machines Corporation Enhanced error correction
US4044328A (en) * 1976-06-22 1977-08-23 Bell & Howell Company Data coding and error correcting methods and apparatus
JPS5380105A (en) * 1976-12-24 1978-07-15 Sony Corp Digital signal transmission method
US4142174A (en) * 1977-08-15 1979-02-27 International Business Machines Corporation High speed decoding of Reed-Solomon codes
JPS5857781B2 (ja) * 1978-01-17 1983-12-21 三菱電機株式会社 符号化復号化方式
JPS54137204A (en) * 1978-04-17 1979-10-24 Sony Corp Digital signal transmission method
JPS5555412A (en) * 1978-10-17 1980-04-23 Victor Co Of Japan Ltd Signal recording and reproducing device
JPS5556744A (en) * 1978-10-23 1980-04-25 Sony Corp Pcm signal transmission device
US4211997A (en) * 1978-11-03 1980-07-08 Ampex Corporation Method and apparatus employing an improved format for recording and reproducing digital audio
JPS55131860A (en) * 1979-03-30 1980-10-14 Matsushita Electric Ind Co Ltd Error correction unit
JPS574629A (en) * 1980-05-21 1982-01-11 Sony Corp Data transmitting method capable of correction of error

Also Published As

Publication number Publication date
NL8103001A (nl) 1982-01-18
ATA275181A (de) 1985-05-15
BR8103911A (pt) 1982-03-09
AT379460B (de) 1986-01-10
DK158485B (da) 1990-05-21
IT8122478A0 (it) 1981-06-19
DK158485C (da) 1990-10-22
AU542428B2 (en) 1985-02-21
FR2485299A1 (fr) 1981-12-24
FR2485299B1 (fr) 1988-08-12
ES503164A0 (es) 1982-04-01
IT1194807B (it) 1988-09-28
US4546474A (en) 1985-10-08
GB2079994A (en) 1982-01-27
GB2079994B (en) 1984-07-25
DE3124425C2 (de) 2003-04-10
DK270581A (da) 1981-12-21
SE451928B (sv) 1987-11-02
CA1201811B (en) 1986-03-11
SE8103836L (sv) 1981-12-21
AU7201981A (en) 1981-12-24
NL191136C (nl) 1995-02-01
CA1161565A (en) 1984-01-31
ES8203542A1 (es) 1982-04-01
DE3124425A1 (de) 1982-06-24
NL191136B (nl) 1994-09-01

Similar Documents

Publication Publication Date Title
CH653504A5 (de) Verfahren zur fehlerkorrektur bei einer pcm-datenuebertragung.
CH653503A5 (de) Fehlerkorrekturverfahren fuer die datenuebertragung.
AT393926B (de) Geraet zur feststellung und korrektur von fehlern in empfangenen digitaldatensignalen
AT395794B (de) Anordnung zum uebertragen von daten mit fehlerkorrektur, damit erzeugter datentraeger und decodiervorrichtung zur verwendung bei einer derartigen anordnung
DE3040004C2 (de)
DE2942825C2 (de)
DE3106855C2 (de) &#34;Rekursives Verfahren zum Fehlercodieren sowie Vorrichtung hierfür&#34;
DE3416047C2 (de) Fehlerkorrekturverfahren für digitale Informationsdaten
DE3418912C2 (de) Verfahren zum Umgruppieren digitaler Informationsdaten für eine Fehlerermittlung und/oder -korrektur
DE3486219T2 (de) Verfahren und vorrichtung zum aufzeichnen digitaler datensignale.
DE19509728B4 (de) Verfahren zum Codieren von Informationssymbolen, fehlerkorrigierender Decodierer, fehlerkorrigierende Vorrichtung zum Codieren und Decodieren sowie Decodierverfahren
DE69121307T2 (de) Mehrfachpegel-Fehlerkorrektursystem
DE3115550C2 (de) Verfahren und Schaltungsanordnungen zum Aufzeichnen bzw. zur Wiedergabe eines Digitalsignals sowie Anwendung des Verfahrens und der Schaltungsanordnung
DE3131741A1 (de) Verfahren und vorrichtung zur uebertragung eines digitalsignals
DE2060643A1 (de) Schaltungsanordnung zur Korrektur von Einzelfehlern
DE3038066A1 (de) Verfahren und vorrichtung zur uebermittlung digitaler informationsworte mittels fehlerkorrekturcodierung
DE3735979A1 (de) Pcm-signalwiedergabevorrichtung mit fehler/loeschkorrekturschaltung
DE3006958A1 (de) Digitalsignal-uebertragungssystem
DE3131764A1 (de) Digitalsignal-uebertragungssystem
DE3889077T2 (de) Verfahren zur Fehlererkennung und Fehlerkorrektur.
DE2053836C3 (de) Anordnung zur Korrektur von Fehlerbündeln in binär codierten Datengruppen
DE69825274T2 (de) Bitdetektionsverfahren in einem funkkommunikationssystem
DE3022573A1 (de) System zur verarbeitung und uebertragung von pcm signalen
DE3017830A1 (de) Datenfehler-korrektursystem
DE69217262T2 (de) PCM-Signal Aufzeichnungssystem

Legal Events

Date Code Title Description
PL Patent ceased