KR860000500B1 - 에러정정방법 - Google Patents

에러정정방법

Info

Publication number
KR860000500B1
KR860000500B1 KR1019810002592A KR810002592A KR860000500B1 KR 860000500 B1 KR860000500 B1 KR 860000500B1 KR 1019810002592 A KR1019810002592 A KR 1019810002592A KR 810002592 A KR810002592 A KR 810002592A KR 860000500 B1 KR860000500 B1 KR 860000500B1
Authority
KR
South Korea
Prior art keywords
error
word
error correction
words
correction
Prior art date
Application number
KR1019810002592A
Other languages
English (en)
Other versions
KR830007010A (ko
Inventor
요오이찌로오 사꼬
겐따로오 고다까
Original Assignee
쏘니 가부시기가이샤
이와마 가즈오
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 JP9925880A external-priority patent/JPS5724143A/ja
Priority claimed from JP10081480A external-priority patent/JPS5725047A/ja
Application filed by 쏘니 가부시기가이샤, 이와마 가즈오 filed Critical 쏘니 가부시기가이샤
Publication of KR830007010A publication Critical patent/KR830007010A/ko
Application granted granted Critical
Publication of KR860000500B1 publication Critical patent/KR860000500B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

내용 없음.

Description

에러정정방법
제1도는 본원 발명에 적용되는 에러정정장치의 한 실시예를 나타내는 블록도.
제2도(제2a도 및 제2b도)는 본원 발명에 적용되는 에러정정엔 엔코우더의 한 실시예를 나타내는 블록도.
제3도는 전송시의 엔코우드데이터의 블록의 배열을 나타내는 도면.
제4도(제4a도 및 제4b도)는 본원 발명에 적용되는 에러 정정디코우더의 한 실시예를 나타내는 블록도.
제5도,제6도 및 제7도는 에러정정 디코우더의 동작을 설명하기 위한 도면.
본원 발명은 일반적으로 에러정정방법에 관한 것으로, 좀 더 상세히 설명하면, 1블록에서 2워어드 에러까지 정정 가능한 에러정정 코우드(일종의 인접코우드)에 의하여 고속으로 에러를 정정할 수 있는 에러정정방법에 관한 것이다.
종래, 예를 들면, 1980년 12월 19일, 공동출원된 미합중국 출원 제218,256호가 제안되었으며, 이 발명에 의하면, 이른바 크로스 인터리이브(cros-interleave) 기술을 사용한 버어스트(burst)에러정정을 위하여 유효한 데이터 전송장치가 사용된다. 이러한 크로스 인터리이브 기술에 있어서는, 제1의 배열상태에 있는 제1의 배열상태에 있는 복수의 각 채널의 복수의 시켄스에 PCM (pulse code modulated) 데이터 신호 계열에 포함되는 워어드를 제1에러정정 코우드에 공급함으로써 제1의 체크워어드 계열을 발생신킨다. 복수의 채널에 있는 이 제1의 체크 워어드 계열과 PCM데이터신호 계열을 제2배열 상태로 하고, 복수 채널의 PCM데이터계열의 각각에 대하여 제2배열상태로 있는 1워어드를 제2에러정정코우드에 공급함으로써 제2체크워어드 계열을 발생시키는 것으로, 워어드단위로 2중의 인터리이브(예를 들면, 배열의 재배열)를 하는 것이다. 2중의 인터리이브의 목적은 이러한 에러정정블록에 포함되는 체크워어드 및 PCM데이터를 분산시켜서 전송하고, 이러한 에러워어드를 수개의 블록에 분산시켜 수신측에 있어서 원배열상태로 복귀시켰을때에 공통의 에러정정블록에 포함되는 복수워어드 중의 에러워어드를 감소시키는데 있다. 요컨데, 전송중 버어스트에러가 나타날 때, 이 버어스트에러는 분산시킬 수 있다. 만약 상기 인터리이브가 두번 수행될 때, 제1 및 제2체크워어드의 어느 한쪽으로 에러를 정정할 수 없을 때에도 다른쪽 체크워어드를 사용하여 에러를 정정할 수 있으며, 따라서 버어스터 에러정정능력을 한층 향상시킬 수 있는 것이다.
그런데, 1워어드중의 1비트라도 틀려 있을 때에는 1워어드 전체가 틀려 있는 것으로 취급되므로 랜덤에러가 비교적 많은 수신데이터 신호를 취급할 경우에는 2중 인터리이브 기술도 반드시 에러정정 능력이 충분하다고는 말할 수 없다.
따라서 1블록내의 K워어드에러, 예를 들면 2워어드 에러까지 정정할 수 있고, 에러로 케이션이 판명되어 있을 때에는 M워어드에러, 예를 들면 3 또는 4워어드 에러까지도 정정할 수 있는 정정능력이 높은 에러정정부호, 예를 들면 RS(Reed-Solomon)부호, BCH (Bose-Chaudhuri-Hocquenghem)보호 및 인접(badjacent코우드의 일종)부호를 상기 다중 인터리이브와 조합시킨다. 또 이 에러정정부호는 1워어드에러만을 정정의 대상으로 할 경우에는 디코우더의 구성을 매우 간단히 할 수 있는 특징을 가지고 있다.
그러나 2워어드에러를 정정하려고 할 때, 에러정정의 기본적 앨고리즘(algorithm)은 신드로움(syndrome)을 사용하여 제1단계에 있어서의 에러의 유무를 점검하고 제2단계에서는 에러가 1워어드에러인가의 여부를 점검하여 제3단계에 있어서는 에러가 2워어드 에러인가를 점검하기 때문에 모든 단계를 완결하는데 소요되는 시간이 비교적 길어져서 특히 2워어드 에러인가를 점검하기 때문에 모든 단계를 완결하는데 소요되는 시간이 비교적 길어져서 특히 2워어드에러의 에러로 케이션이 연산될 때에는 문제가 제기된다.
그러므로 본원 발명의 목적은 종래 기술에 의한 폐단을 해소하며 고속으로 에러를 정정할 수 있는 개선된 에러정정방법을 제공하는데 있다.
본원 발명에 의하면, 한 블록내에 각 워어드가 m비트로 이루어지는 n워어드를 포함하는 데이터의 에러정정방법은 다음과 같은 단계로 이루어진다. 수신된 n워어드와 패리티(parity)검사행렬 H로 이루어지는 한블록 VT의 아래 연산에 의하여 k신드로움 S0Sk-1을 구할 수 있다.
Figure kpo00001
상기 패리티검사행렬 H은 n열(column) 및 k행(row)을 가지며, 한 규정행의 각 원소는 α0(=1)-α2m-2까지 선택되며, 원소 α는 F(x)가 GF(2)상에서 기약(旣約)의 다항식일 때, F(x)=0을 충족시킬 수 있는 근이며, 따라서 동일치는 상상 규정행 내에 두번 나타나지 않으며, 나머지의 행내의 원소는 각개 행내의 모든 원소에 대하여 상기 규정 행내의 대응원소의 주어진 누승에 의하여 선택된다; 상기 신드로움에 의한 아래의 계수 A,B 및 C를 구하면,
Figure kpo00002
상기 신드로움 계수에 의한(a),(b) 및 (c)와 같이 표시된 에러검지 및 에러정정을 수행한다.
(a) S0=S3=S4=...SK-1=0, A1=A2=...=AK-3=0, B1=B2=...BK-3=0 및 CK-3=0이 충족될 때, 에러워어드가 없다는 사실이 검지된다.
(b) S0≠0, S3≠0, S4≠0,..., Sk-1=0, Ak'=0, Bk'=0 여기서 K'=1~K-3 및 Ck-3=0이 충족될 때, 에러워어드가 존재한다는 것이 판단되며, 다음으로 에러정정은 상기 신드로움을 계산에 의하여 수행된다.
(c) Ak'≠0, Bk'≠O, Ck-3≠0이 충족될 때 아래식이 성립된다.
Figure kpo00003
α2i+Dαi+E=0 의 에러로케이션식을 풀어서 에러로케인션 i 및 j를 검지하고 2워어드에러는 정정된다.
본원 발명의 기타 목적과 특징 및 장점은 아래의 기술과 첨부 도면에 따라 밝혀질 것이다. 본원 발명을 첨부도면에 따라 설명하면 아래와 같다.
먼저, 본원 발명에 사용된 에러정정부호에 대하여 설명한다. 에러정정부호를 기술할 경우, 벡터 표현 또는 순회군에 의한 표현이 사용된다.
우선, GF (2)상에서는 기약된 m차의 다항식 F(x)를 생각한다. "0" 과 "1"의 원소 밖에 없는 체(體) GF(2)상에서는 기약된 다항식 F(x)는 근을 갖지 않는다. 여기서 F(x)=0을 충족시키는 가상적은 근 α을 생각한다. 이때 0원소를 포함하여 α의 누승으로 나타내는 2m개의 상이한 원소 0,α,α23,...,α2m-1은, 확대체 GF(2m)을 구성한다. GF (2m) 확대체는 GF (2)상의 m차 기약 다항식 F(x)를 법으로 하는 다항식 환이다. GF(2m)의 원소는 1,α=[X], α2=[X2],...am-1=[Xm-1]의 선형결합으로 표시할 수 있다. 즉,
a0+a1[X]+a2[X2]+...+am-1[Xm-1]=a0+a1α+a2α2+...am-1αm-1
또는
(am-1'am-2'...a2'a1'a0)
여기서a0,a1,,...am-1은 GF (2)로 된다.
한 예로서, GF (28)확대체를 생각하면, 법으로서 다항식 F(x)=x8+x4+x3+x2+1(모두 8비트 데이터)는 아래와 같다.
a7X7+a6X6+a5X5+a4X4+a3X3+a2X2+a1X+a0
또는
(a7'a6'a5'a4'a3'a2'a1'a0)
그러므로 예를 들면, a7를 MSB (most significant bit)측, a0을 LSB(least significant bit)측에 할당한다. an은 GF(2)에 속하므로 그 원소는 0 또는 1이다.
또, 다항식 (x)에서 (m×m)의 아래의 행렬 T가 도출된다.
Figure kpo00004
다른 표현으로서는 순회군을 이용한 것이 있다. 이것은 GF (2m) (0 원소를 제거)확대체의 나머지의 원소의 자리수 2m-1의 승법군을 이루는 것을 이용한 것이다. GF (2m)의 원소를 순회군을 사용하여 표현하면, 아래와 같다.
0,1(=α2m-1),α,α23,...α2m-2
또, 본원 발명의 한 예에서는, m비트를 1워어드로 하고, n워어를 1블록으로 구성할 때, 하기의 패리티검사행렬 H에 의거하여 k개의 체크워어드를 발생할 수 있도록 되어 있다.
Figure kpo00005
또 행렬 T에 의해서 마찬가지로 패리티 검사행렬 H을 표현할 수 있다.
Figure kpo00006
다만, I은 m×m의 단위행렬이다.
상기한 바와 같이, 근 α을 사용한 표현과 생성행렬 T를 사용한 표현과의 양자는 본질적으로 동일하다.
또 4개(k=4)의 체크워어드를 사용하는 경우를 예로 들면, 패리티검사행렬 H은 아래와 같다.
Figure kpo00007
수신데이터의 1블록을 열벡터 v=(Wn-1,Wn-2,...W1,W0) 마만 Wi=Wi+ei : 에러패턴으로 하면 수신측에서 발생하는 4개의 신드로움 S0,S1,S2,S3은 아래와 같다.
Figure kpo00008
이 에러정정부호는 한 개의 에러정정블록 내의 2워어드 에러까지의 에러정정이 가능하며, 에러로케이션이 판명되어 있을 때에는 3워어드에러 또는 4워어드 에러의 정정이 가능하다.
1블록중에 4개의 체크워어드(p=W3, q=W2, r=W1, s=W0)가 포함된다. 이들 체크워어드는 아래와 같이 구해진다.
p+q+r+s=
Figure kpo00009
=a
α3p+α2q+αr+s=
Figure kpo00010
Wi=b
α6p+α4q+α2r+s=
Figure kpo00011
Wi=b
α9p+α6q+α3r+s=
Figure kpo00012
Wi=b
다만,
Figure kpo00013
를 의미한다.
계산과정을 생략하고 결과만을 표시하면 다음과 같다.
Figure kpo00014
이리하여 체크워어드 p,q,r,s를 형성하는 것이 송신측에 설치된 코우더의 역할인 것이다.
다음에 상기와 같이 형성된 체크워어드를 포함하는 데이터가 전송되고, 수신된 경우의 에러정정의 기본적 앨고리즘에 대하여 설명한다.
[1] 에러가 없는 경우 신드로움은 모두 제로이다 :
S0=S1=S2=S3=0
[2] 1워어드 에러의(에러패턴을 ei로 하는) 경우 :
S=ei, S1iei, S22iei, S33iei
따라서 아래 관계가 성립된다.
αiS0=S1
αiS1=S2
αiS2=S3
i를 순차적으로 변화시켰을 때, 상기 관계가 성립하는 가의 여부로 1워어드 에러인가의 여부를 판정할 수 있다. 또는 다음 관계가 성립된다.
Figure kpo00015
αi의 패턴을 미리 ROM (read only memory)에 기억되어 있는 것과 비교하여 에러로 케이션 i이 판명된다. 그때의 신드로움 S0가 에러패턴 ei 그 자체로 된다.
[3] 2워어드 에러(ei,ej)의경우, 신드로움은 아래 관계가 성립된다.
S0=ei+ej
S11ei+αjej
S22iei+α2jej
S33iei+α3jej
윗식식 변형시키면 다음과 같다.
αjS0+S1=(αij)ei
αjS1+S2iij)ei
αjS2+S32iij)ei
따라서 아래식이 성립되면 워어드 에러가 식별된다.
αijS0+S1)=αjS1+S2
αijS1+S2)=αjS2+S3
상기 식이 성립되면, 2워어드 에러로 판정되고, 에러로 케이션 i,j를 알 수 있다. 요컨대 i 및 j의 조합을 변형시켜 윗식의 관계가 성립하는 여부를 조사한다. 그때의 에러패턴은 아래와 같다.
Figure kpo00016
[4] 3워어드 에러(ei, ej 및 ek)의 경우, 그 신드로움은 아래와 같이 표현된다.
S0=ei+ej+ek
S1iei+αjej+αkek
S22iei+α2jej+α2kek
S33iei+α3jej+α3kek
위의 식을 변형하면
αkS0+S1=(αik)ei+(αjk)ej
αkS1+S2iik)ei+αjjk)ej
αkS2+S32iik)ei+α2jjk)ej
따라서, 아래 식이 도출되다 :
αjkS0+S1)+(αkS1+S2)=αiij)(αik)ei
αjkS1+S2)+(αkS2+S3)=αiij)(αik)ei
따라서 아래식이 성립되면 3워어드 에러로 판정된다.
αj{(αkS0+S1)+(αkS1+S2)}=αjkS1+S2)+(αkS2+S3)
이 때의 각 에러패턴은 아래와 같이 구한다.
Figure kpo00017
실제로는, 3워어드 에러의 정정을 위한 구성이 복잡해지고, 정정 동작에 요하는 시간도 길어진다. 따라서 에러표시비트 또는 포인터에 의하여 i j, k, l의 에러로 케이션이 알려져 있는 경우와 조합시켜, 그때의 체크용으로 위의 식을 사용하고, 에러정정동작을 행하는 것이 실용적이다.
[5] 4워어드 에러(ei, ej, ek, el)의 경우 신드로움은 아래와 같다 :
S0=ei+ej+ek+el
S1iei+αjej+αkek+αlel
S22iei+α2jej+α2kek+α2lel
S33iei+α3jej+α3kek+α3lel
위의 식을 변형시키면 아래와 같다.
Figure kpo00018
포인터에 의하여 에러로케이션(i, j, k, l) 이 알려져 있는 경우에는 상기 연산에 의하여 에러정정을 행할 수 있다.
상기 에러정정의 기본적 앨고리즘은 신드로움 S0-S3을 사용하여 제1스텝에서 에러의 유무를 검사하고, 제2스텝에서 1워어드에러의 여부를 점검하고, 제3스텝에서 2워어드 에러인가의 여부를 점검하는 것으로서, 2워어드 에러까지도 정정하려고 할 때에는 모든 스텝을 종료할 때까지 요하는 시간이 길어지고, 특히 2워어드 에러의 에러로 케이션을 구할 때에는 이와 같은 문제가 발생한다.
따라서, 이와 같은 문제를 발생시키지 않고 2워어드 에러의 정정을 상정할 경우에 적용하여 유효한 변형된 본원 발명에 대해서 아래에 설명한다.
2워어드 에러(ei, ej)의 경우의 신드로움 S0, S1, S2, S3에 관한 식은 아래와 같다.
S0=ei+ej
S1iei+αjej
S22iei+α2jej
S33i3jej
이 식을 변형시키면 아래와 같다.
iS0+S1)(αiS2+S3)=(αiS1+S2)2
다시 변형시켜 아래의 에러로케이션 다항식을 구한다.
(S0S2+S1 22i+(S1S2+S0S3i+(S1S3+S2 2)=0
여기서 상기 각 다항식의 계수를 아래와 같이 가정한다.
S0S2+S1 2=A
S1S2+S0S3=B
S1S3+S2 2=C
위의 식의 각 계수 A, B, C를 사용하여 2워어드 에러의 경우의 에러로케이션을 구할 수 있다.
[1] 에러가 없는 경우 :
A=B=C=0, S0=0, S3=0
[2] 1워어드 에러의 경우 :
A=B=C=0, S0≠0, S3≠0일 때, 1워어드 에러로 판정된다.
αi=S1/S0로부터 에러로케이션 i을 용이하게 구할 수 있으며, ei=S0를 사용하여 에러정정이 이루어진다.
[3] 2워어드에러의 경우 :
2워어드이상의 에러의 경우에는, A≠0, B≠0, C≠0이 성립하고, 그 판정이 매우 간단하게 된다. 또 이때 아래의 관계가 성립된다.
2i+Bαi+C=0
다만, i=0∼(n-1)
여기서B/A=D, C/A=E로 가정하면, 아래와 같은 식이 각각 구하여진다.
D=αij
E=αij
이것으로부터 아래와 같은 식이 도출된다.
α2i+Dαj+E=0
여기서 2개의 에러로케이션의 차가 t, 즉 j=i+t일 때, 아래와 같은 식이 구하여진다.
D=αj(1+αt)
E=α2j+t
따라서 아래의 식이 도출된다 :
Figure kpo00019
t=1∼(n-1)의 각 값이 α-tt의 값을 ROM에 미리 기입하여 두고, ROM의 출력과 수신워어드로부터 연산된 D2/E의 값과의 일치를 검출하는 것으로 t가 구하여진다. 만약 이 일치 관계가 성립하지 않으면, 3워어드 이상의 에러이다.
따라서 다음과 같이 가정한다.
Figure kpo00020
아래의 식이 구하여진다.
Figure kpo00021
상기 표현으로부터 에러로케이션 i 및 j가 구하여진다. 다음에는 에러패턴 ei 및 ej가 아래와 같이 표현된다 :
Figure kpo00022
이리하여 에러는 정정될 수 있다.
상기 변형된 정정앨고리즘을 2워어드 에러의 정정까지 행할 때 에러로케이션을 구하는데 요하는 시간을 기본적 앨고리즘에 비하여 매우 짧게 할 수 있다.
또, 체크워어드의 수 k를 증가시키면, 에러정정능력이 한층 향산된다. 예를 들어, k=6으로 하면, 3워어드 에러까지 정정 가능하고, 에러로케이션이 알려져 있을 때, 6워어드에러까지 정정할 수 있다.
제1도는 본원 발명에 적용된 에러정정장치의 한 실시예를 나타내고 있다. 동도면에 있어서, (1)은 수신데이터에 적용되는 입력단자를 나타낸다. 이 데이터는 그 다음에 완충기억장치(buffer memory) (2)와 신드로움 발생회로 (3)에 공급된다. 이 완충기억장치 (2)는 에러를 감지하여 에러패턴을 생성하며 이것이 출력을 에러정정회로 (4)(모듈(2)의 부가기)에 공급하는데 소요되는 시간에 의하여 수신데이터를 지연시키는데 도움이 된다. 에러정정회로 (4)의 출력은 출력단자 (5)로부터 도출된다.
신드로움 발생회로 (3)에 있어서, GF (2m)를 위하여 연산회로 (6)에 공급되는 신드로움 S0, S1, S2및 S3을 생성시키기 위하여H Vτ의 연산이 행하여 진다. 이 연산회로 (6)는 계수 A, B, C, D 및 E와 또한 에러패턴이 생성되는 것을 연산한다. 연산회로 (6)로부터의 계수는 완충기록계(buffer register) (7)에 공급되어 저장되고, 연산회로 (6)에서 나오는 에러패턴은 완충기록계 (8)에 각각 공급되어 저장된다. 이 에러패턴은 에러정정을 수행하기 위하여 완충 기록계 (8)로부터 에러정정회 (4)로 공급된다. 제1도의 실시예에 있어서 에러로케이션 디코우더 (9) ROM (10)이 각각 선치되어 있다. 완충기록계 (7)로부터의 계수 D 및 E와 ROM (10)로부터의 출력 αt및 α-t는 에러로 케이션 디코우더 (9)에 모두 공급되고, 이 디코우더 (9)는 에러로케이션 i 및 새로운 계수 X 및 Y를 생성한다. 완충기록계 (7) 및 신드로움으로부터의 새로운 계수 X, Y 및 계수 D는 연산회로 (6)에 공급되며, 이라하여 이 회로 (6)는 저장될 완충기록계 (8)에 공급되는 에러패턴 ei 및 ej를 생성한다.
신드로움 발생회로 (3)로부터의 신드로움 S0및 S3과 완충 기록계(7)로부터의 계수 A, B 및 C는 에러판정회로 (11)에 공급되며, 이 회로에서는 에러가 1워어드의 여부, 에러가 2워어드 에러가 2워어드 이상인가를 판정한다. 판정결과는 여기서 제어기 (12)로 공급된다. 이 제어기 (12)는 규정타이밍 관계에 제한되어 있는 클록펄스 또는 제어신호를 각 회로에 공급하는 역할을 한다.
상기 기술에서 알 수 있는 바와 같이, 본 발명에 의하면, α-t및 αt(다만, t=1∼(n-1))의 값이 ROM(10)에 기억되며, 이 ROM (10)로부터의 출력은 2워어드 에러와 에러로케이션을 검지하기 위하여 신드로움을 연산함으로써 생성된 계수와 비교되며, 따라서 에러검지와 에러정정을 고속으로 행할 수 있는 것이다.
이하, 본원 발명을 오디오 PCM신호의 기록재생에 적용한 구체예에 대하여 도면을 참조하여 설명한다.
제2도는 기록장치에 설치되는 에러정정엔코우터를 전체로서 표시한 것으로, 그 입력측에 오디오 PCM신호가 공급된다. 오디오 PCM신호는 좌우의 스테레오신호의 각각을 샘플링주파수 fs(예를 들면, 44.1KHz)로 샘플링하고, 1샘플을 1디지털워어드(2를 보수로 하는 코우드로 16비트)로 벽환시키도록 형성되어 있다. 따라서 좌채널의 오디오신호에 관해서는 L0, L1, L2…과 각 워어드가 연속하는 PCM데이터가 얻어지며, 우채널의 오디오 신호에 관해서도 R0, R1, R2…과 각 워어드가 연속되는 PCM데이터가 얻어진다. 이 좌우 채널의 PCM데이터가 각각 6채널씩 나누어지고, 계12채널의 PCM데이터계열이 에러정정엔코우터에 입력된다. 주어진 한 시점에 있어서, 12워어드, 즉, L6m, R6n, L6n+1, R6n+1, L6n+2, R6n+3, L6n+3, R6n+3, L6n+4, R6n+4, L6n+5및 R6n+5는 엔코우더에 입력된다. 이 예에 있어서, 각 워어드는 상위 8비트와 하위 8비트로 분할되고, 이리하여 12채널은 24채널로서 처리된다. PCM데이터의 1워어드를 간단하게 하기 위하여 PCM데이터의 각 1워어드는 Wi로 표시되고, 그 상위 8비트는 Wi로 표시되며, A 및 그 하위 8비트는 Wi, B로 표시된다. 예를 들면 워어드 L6n은 2워어드 W12n, A 및 W12, B로 분할된다.
24채널의 PCM데이터계열은 먼저 우기(偶奇)인터리이버 (21)로 공급된다. n이 정수 0, 1, 2, …라고 하면, 워어드 L6n(즉, W12n,A 및 W12n,B), R6n(즉, W12n+1,A 및 W12n+1,B), L6n+2, (즉, W12n+4,A 및 W12n+4,B), R6n+2(즉, W12n+5,A 및 W12n+5,B), L6n+4(즉, W12n+8,A 및 W12n+8,B) 및 R6n+4(즉, W12n+9,A 및 W12n+9,B)는 각각 우수번째의 워어드들이며, 그 밖의 나머지 워어드들은 각각 기수번째의 워어드들이다, 우수번째의 워어드로 이루어지는 PCM데이터계열은 각각 우기인터리이버 (21)의 1워어드지연회로(22A), (22B), (23A), (23B), (24A), (24B), (25A), (25B), (26A), (26B), (27A) 및 (27B)를 통하여 지연된다. 물론, 1워어드보다 큰 워어드, 예를 들면 8워어드를 지연시켜도 된다. 또, 우기인터리이버(21)에 있어서, 우수번째의 워어드들로 이루어지는 12개의 데이터계열은 제1∼제12번째까지의 전송채널을 차지하며, 기수번째의 워어드로 이루어지는 12개의 데이터 계열이 제13∼제24번째까지의 전송채널을 차지할 수 있도록 변환된다.
우기인터리이버 (21)는 각 좌우 스테레오신호의 연속되는 2워어드 이상의 에러가 발생하는 것을 방지하는 역할을 하며, 이 때에는 에러를 정정하기가 불가능하게 된다.
이 특징의 장점을 설명하기 위하여 3개의 연속되는 워어드 Li-1, Li및 Li-1을 예로 생각한다. 워어드 Li가 틀리고 정정불가능하게 될 때, 워어드 Li-1및 Li+1을 정정하는 것이 가장 바람직한 것이다. 그것은 보정되어야 할 정정되지 않은 틀린 워어드 Li를 통상적으로 Li-1및 Li+1의 평균치를 취함으로써 선행 코렉트워어드 Li-1와 후속코렉트워어드 Li+1사이에 보정하기 위해서이다. 우기인터리이버 (21)의 지연회로 (22A), (22B), …(27A) 및 (27B)는 인접워어드가 상이한 에러정정블록내에서 발생하도록 설치된다. 또, 우수번째의 워어드로 이루어지는 데이터 계열과 기수번째의 워어드로 이루어지는 데이터 계열마다 전송 채널을 함께 갖추어 두는 것은 인터리이브했을 때, 근접하는 우수번째의 워어드와 기수번째의 워어드와의 기록 위치간의 거리를 가급적 크게 하기 위한 것이다.
우기인터리이버 (21)의 출력에는 제1의 배열상태에 있는 24채널의 워어드가 나타고 인터리이버 (21)로부터 각 PCM데이터워어드는 1워어드씩 꺼내어 엔코우더 (28)로 공급되고, 제1의 체코워어드 Q12n, Q12n+1, 및 Q12n+2및 Q12n+3이 상기기 표시된 p, q, r, s에 의해서 나타난다.
제1체크 워어드를 포함하여 구성되는 에러정정블록은 다음과 같다.
Figure kpo00023
제1의 엔코우더 (28)에서는 1블록의 워어드수(n=28),, 1워어드의 비트수(n=8), 체크워어드수(k=4)에 따라서 제1체크워어드 Q12n∼Q12n+3을 계산함으로써 그 기능을 수행한다.
이 24개의 PCM데이터워어드 계열과 4개의 체크워어드 계열이 인터리이버 (29)로 공급된다. 이 인터리이버 (29)에서는, 우수번째의 워어드로 이루어지는 PCM데이터계열과 기수번째의 워어드로 이루어지는 PCM데이터계열간에 체크워어드 계열이 개재하도록 전송채널 위치를 변화시켜, 인터리이브를 위한 지연처리를 한다. 이 지연처리는 제1번째의 전송 처널을 제와한 다른 27개의 전송채널의 각각에 대하여, 1D, 2D, 3D, 4D…26D, 27D(다만, D는 단위 지연량으로, 예를 들면 4워어드)의 지연량의 지연회로를 삽입함으로써 이루어진다.
인터리이버 (29)의 출력에는 제2의 배열상태에 있는 28개의 데이터워어드 계열이 나타나고, 이 데이터 계열의 각각으로부터 1워어드씩 데이터계열을 꺼내어 엔코우더 (30)로 공급되고, 제2의 체크워어드 P12n, P12n+1, P12n+2, P12n+3이 체크워어드 Q12n, Q12n+3과 같은 방법에 따라 형성된다.
상기 엔코우더 (28)가 피라미터 n=28, m=8, k=4에 의하여 상기 제1체크워어드를 공급하는 것과 같이 같은 엔코우더 (30)는 파라미터 n=32, m=8, k=4에 의하여 제2체크워어드를 제공한다.
제2체크워어드를 포함하여 구성되는 32워어드로 이루어지는 에러정정블록은 다음과 같이 된다 :
Figure kpo00024
그 후에 인터리이버 (31)가 설치되며, 제1 및 제2 체크워어드를 포함하는 32개 데이터계열의 우수번째 전송 채널에 대한 1워어드 지연량의 지연회로를 포함하고, 인버어터 (32), (33), (34) 및 (35)는 제2체크워어드 계열을 인버어트 시키기 위하여 설치된다. 상기 인터리이버 (31)는 블록사이의 경계에 걸쳐서 발생하는 에러가 많은 워어드에 영향을 미쳐 정정불능하게 되는 것을 방지해 주는 역할을 한다. 인버어터 (32), (33), (34) 및 (35)는 1블록 내의 모든 데이터가 전송중 드롭아우트의 발생에 의해서 "0"으로 될 때에 오동작을 방지해 주는 역할을 한다. 즉, 만약 드롭아우트가 발생하면, 인버어트된 체크 워어드 계열은 재생장치에서 정확히 판정될 것이다. 같은 목적을 위하여 인버어터는 제1체크워어드 계열을 위하여 설치해도 된다.
최종도출된 24개의 PCM데이터계열과 8개의 체크워어드 계열은 32개의 워어드블록으로서 계열화되며, 16비트의 동기신호는 제3도에 표시된 바와 같이 1전송블록을 형성하기 위하여 헤드에서 결과의 계열 데이터에 부가된다. 이라하여 형성된 블록은 전송 매체 또는 캐리어로 전송된다. 제3도에 있어서, i차 전송채널에서 제공되는 워어드는 Ui로 표시된다.
전송신호에 대한 전송신호에 대한 전송 매체 또는 캐리어의 구체예는 자기기록 및 재생장치에 사용하기 위한 자기테이프와 회동디스크 장치 기타 유사한 매체에 사용하기 위한 디스크를 포함한다.
상기 전송상태에 있어서, 동기신호가 무시되었을 때, 동일한 제1 에러정정블록(즉, 엔코우더 (28)에 공급된 24개 워어드)내에 포함된 워어드간의 거리가 고려된다. 예를 들면, 워어드 W12n-2,A 및 W12n-12,B에서 명백한 바와 같이, 제1에러정정블록 내에 포함된 인접워어드들간의 거리는 12(D+1)워어드로 된다. 그러나, 엔코우더 (28)에 의하여 공급된 체크워어드 Q12n, Q12n+1, Q12n+2, 및 Q12b+3이 24개 워어드의 데이터워어드로 삽입되기 때문에, 워어드 W12n+9-12,B 및 W12n+2,A 간의 거리는 12(D+1)의 거리보다 5배로 된다. 따라서, 12(D+1)를 초과하는 버어스트에러가 전송로 내에 나타나면, W12n-12,A,W12n-12,B…W12n+9-12,B의 12워어드의 각 개에 인접한 2워어드 이상과 W12n+2,A,W12n+2,B,…W12n+11,B의 20워어드는 에러워어드로 된다. 이와 같이 인접하는 2워어드 이상, 예를 들면, 4워어드가 에러워어드인 것을 검출했을 때에는 이 4워어드 에러에 대하여 에러로케이션이 알려져 있을 경우의 에러정정을 한다. 일반적으로 복수워어드로 이루어지는 블록마다 에러의 검출 및 정정을 행할 경우 워어드마다 에러검출부호를 부가하고 있지 않으면 동일한 에러정정 블록의 소정수 이상의 에러워어드가 존재하여 에러정정이 불가능할 때, 다른 워어드도 에러를 포함하는 것으로 본다. 실제로는 에러를 포함하고 있지 않음에도 불구하고 에러정정 부호의 성질로부터 에러워어드로 보여지는 것도 포함하는 M워어드에 대하여 에러로케이션이 기지의 경우의 정정을 행하면, 정정후의 워어드가 이상하게 된다. 그러나 본원 발명에서는 인터리이브를 사용하여 전송할 때, 전송로에 있어서의 랜덤에러가 디인터리이브한 결과, 인접하는 워어드의 에러로되는 일이 적다고 하는 특징을 이용하여 인접하는 에러워어드에 대해서만 상기 정정을 행하기 때문에 에러정정이 틀릴 염려를 감소시킬 수 있다. 더구나 에러로케이션이 i, i+1, i+2 및 i+3이 되는 것을 이용하여 에러정정의 구성을 간략화할 수 있다.
또 본원 발명에 대하여 좀더 상세히 설명하면, 재생된 데이터가 1전송블록의 32워어드마다 제4도에 표시하는 에러정정디코우더의 입력에 가해진다. 에러정정디코우터에서 수신되는 바와 같이 전송된 데이터는 입력데이터가 재생데이 터이기 때문에 하나 또는 이상의 에러를 포함하고 있을 가능성이 있다. 에러가 없으면 이 디코우더의 입력에 가해지는 32워어드는 에러정정엔코우더의 출력에 나타나는 32워어드와 일치한다. 에러정정디코우더에서는 엔코우더에 있어서의 인터리이브 처리와 대응하는 디인터리이브 처리를 행하여, 데이터를 원래의 순서로 복귀시킨 다음에 에러정정을 한다. 에러가 있으면, 에러정정처리는 데이터를 원래의 순서로 복귀시킨 다음에 수행된다.
우선, 제4도에 표시한 바와 같이, 기수번째의 전송 채널에 대하여 1워어드의 지연회로가 삽입된 디인터리이버 (36)가 설치되고, 또 수신된 제2체크워어드 계열에 인버어트하기 위해 인버어터 (37), (38), (39) 및 (40)가 삽입되고, 디인터리이버 (36)와 인버어터 (37)∼(40)의 출력은 제1디코우더 (41)에 공급된다. 이 제1디코우더 (41)에 있어서 신드로움 S10,S11,S12, 및 S13은 제5도에 표시한 바와 같이, 32입력워어드 Vr에 의하여 RS (Reed-Solomon)패리티 검사행렬 Hc1(제5도)과 같은 행렬에 의하여 발생되며, 이 신드로움S10∼S13에 의하여 상기 에러정정이 행하여진다. 제5도에 있어서, α는 F(x)=x8+x4+x3+x2+1의 GF (28)의 원소이다. 디코우더 (21)에서는 정정된 24개의 PCM데이터계열과 4개의 제1체크워어드 계열이 나타나고, 이 데이터계열의 1워어드마다 에러의 유무를 표시하는 적어도 1비트의 포인터(에러가 있는 경우에는 "1", 없을 때는 "0")가 부가되어 있다. 제5도 및 제6도 그리고 아래의 기술에 있어서 수신된 1워어드 Wi는 Wi로 표시되어 있다.
디코우더 (41)의 출력데이터 계열은 에러정정엔코우더에 있어서 인터리이버 (29)에 의하여 수행되는 지연처리를 보정하는 역할을 하는 디인터리이버 (42)에 공급되며, 제1∼27제전송채널까지의 각각에 27D, 26D, 25D, …2D, 1D와 지연량이 상이한 지연회로가 삽입되어 있다. 디인터리이버 (42)의 출력은 제2코우더(43)에 공급되며, 여기서 신드로움 S20,S21,S22및 S23은 패리티 검사행렬 Hc2(제6도)과 같은 행렬에 의하여 발생한다. 제6도에 표시한 바와 같이 28워어드 VT는 공급되고, 상기에 러정정은 신드로움 S20-S23에 의하여 행해진다.
디코우더 (43)는 에러가 정정되어 있는 각 워어드에 대한 포인터를 표시하지만 에러가 정정될 수 없는 워어드에 대한 포인터는 표시해 주지 않는다.
디코우더 (43)의 출력에 나타나는 데이터 계열은 우기디인터, 이버 (44)에 공급되고, 여기서 우수번째의 워어드로 이루어지는 PCM데이터계예과 기수번째의 워어드로 이루어지는 PCM계열은 예비 전송 채널에 위치하도록 재배열되고, 1워어드 지연량은 지연회로는 기수 번째의 워어드로 이루어지는 PCM데이터에 대하여 실치된다. 이것은 전송전에 엔코우더에서 수행되는 대응 동작을 보정해 준다. 우기디인터리이버 (44)의 출력에는 원 배열상태 및 에러정정엔코우더에 의하여 작용하기 전에 디지탈신호의 상태로 완전히 복귀된 소정순서를 가진 PCM데이터계열이 제공된다.
제4도에는 도시되어 있지 않지만, 보정회로가 정정불능 에러를 보정하기 위하여 우기인터리이버 (44)의 다음 단계에 설치되는 것이 바람직하다. 에를 들면, 디코우더 (41) 및 (43)에서 정정되지 못한 에러를 주의를 끌지 않는 보정, 즉 평균치 보간이 행하여진다.
에러정정부호의 고도의 에러정정능력을 효과적으로 나타내기 위하여 제1디코우딩이 행해질 때, 에러의 유무를 가리키는 포인터는 각 워어드에 부가되고, 이 포인터의 상태는 제2디코우딩에서 검지되며, 에러정정은 검지된 결과를 이용하여 행하여진다. 동시에, 제2디코우딩을 행하기 위하여 이루어지는 제2배열상태로 데이터를 복귀시키기 위하여 인터리이브처리 및 디인터리이브처리를 통하여 데이터가 전송될 때, 포인터가 특수상태에 있는 가의 여부에 따라 에러는 검출되며, 그리고 에러는 최대한 M워어드까지 정정된다. 요컨대, 인터리이브 및 디인터리이브는 전송로에 발생되는 버어스트에러를 분산시키고 1에러정정블록 내의 에러워어드수가 정정불능의 수까지 증가되지 않도록 하는 역할을 한다. 그러나, 버어스트에러의 기간이 길어질 때 디인터리이브에 의하여 얻어지는 에러정정블록내에 인접하여 복수개의 워어드가 에러를 포함하는 경우가 발생하게 된다.
특수한 에러가 포인터상태에 의하여 알 수 있을 때에만, 에러정정이 복수개의 에러워어드에 대하여 행해지면, 에러정정이 포인터에서만 나타나는 에러로케이션을 사용하여 에러정정을 할 때와 비교해서 에러정정이 틀릴 염려가 감소된다.
제4도에 나타낸 실시예에 있어서, 1워어드에러는 제1디코우더 (41)에 의하여 정정된다. 워어드에러 이상이 1에러정정블록내에 존재하는 것이 검출될 때, 최소한 1비트의 포인터는 상기 에러의 존재를 가리키기 위하여 에러정정블록의 32워어드전부, 예를 들면, 체크워어드를 제외하고 32워어드블록의 전 워어드에 부가된다. 이 포인터는 에러가 있으면 "1"에러가 없으면 "0"이다. 1워어드가 8비트로 이루어지는 경우에, 포인터는 1워어드가 9비트로 이루어지도록 MSB보다 높은 1비트로서 부가된다. 그 후에 워어드는 디인터리이버에 의하여 처리된 후, 제2디코우더 (43)로 공급된다.
이 디코우더 (43)에 있어서, 에러는 포인터 또는 에러로케이션에 의하여 지시된 제1에러정정블록내의 에러워어드의 수를 사용하여 정정한다.
제7도는 제2디코우더 (43)에 의하여 수행되는 에러정정동작의 실시예를 나타낸 차아트이다. 제6도 및 아래의 기술에 있어서, 포인터에 의한 틀린 워어드의 수는 Np에 의하여 표시되고, 포인터에 의한 에러로케이션은 Ei로 시된다. 또, 제7도에 있어서 Y는 "긍정(yes)", 그리고 N은 "부정(no)"을 나타낸다.
2워어드 에러가 제2디코우더 (43)에서 정정되기 때문에 변형된 에러정정앨고리즘이 바람직하다. 요컨대 동도면에 표시된 플로우 차아트의 최초에 있어서 상기 에러로케이션 다항식 Aα2i+Bαi+C=0이 연산되고, 이 각 계수 A, B, C와 신드로움 S20∼S23을 사용한 에러정정이 행하여진다. 이와 동시에, 1블록내에 포함되는 에러를 나타내는 포인터의 총수 Np가 검출된다. 물론, 신드로움을 사용하여, 에러의 부존재를 검출, 1워어드 에러의 검출, 2워어드 에러의 검출을 단계적으로 행하는 기본적인 앨고리즘을 사용해도 된다.
(1) 에러가 존재하는 가의 여부를 조사한다. A=B=C=0, S20=0, S23=0일 때에는 일단 에러가 없는 것으로 한다. 이 경우에 Np
Figure kpo00025
z1인가의 여부를 조사한다. Np
Figure kpo00026
z1이면, 에러가 없는 것으로 판정하고, 그 에러 정정블록내의 포인터를 클리어("0")한다. 이와 반대로, Np
Figure kpo00027
z1이면, 신드로움에 의한 에러검출이 정확하지 않다고 판정하고, 포인터를 그대로 두거나, 그 블록내의 모든 워어드의 포인터를 "1"로 한다. z1으로서는 상당히 크고, 예를 들면 14로 한다.
(2) 1워어드에러인가의 여부를 조사한다. A=B=C=0, S20≠0, S23≠0일 때에 1워어드 에러로 일단 판정하고, S21/S20i에서 에러로 케이션 i을 구한다. 이 에러로케이션 i이 포인터에 의한 것과 일치하는 가의 여부가 검출된다. 포인터에 의한 에러로케이션이 복수개 있을 때에는 에러로케이션 i가 그 어느 것과 일치하는 가를 조사한다. i=Ei이면, 다음에 Np
Figure kpo00028
z2인가를 조사한다. z2는 예를 들면 10이다. Np
Figure kpo00029
z2이면, 1워어드 에러로 판정하고, ei=S20을 사용하여 에러정정이 행하여진다. i=Ei일지라고 Np
Figure kpo00030
z2이면, 1워어드에러에 비해서는 포인터의 개수가 너무 많기 때문에 1워어드 에러로 판정하는 것은 위험하다고 판정하고, 포인터를 그대로 두거나 모든 워어드를 에러로 보고 각 워어드의 포인터를 "1"로 한다.
i≠Eiji의 경우에는, Np
Figure kpo00031
z3인가의 여부를 조사한다. z3은 상당히 작은 수로, 예를 들면 3이다. Np
Figure kpo00032
z3이 성립할 때에는 신드로움의 연산으로 에러로케이션 i에 대해서 1워어드에러를 정정한다.
Np
Figure kpo00033
z3의 경우에는, Np
Figure kpo00034
z4인가의 여부를 더 조사한다. 요컨대, z3
Figure kpo00035
Np
Figure kpo00036
z4일 때에는, 신드로움에 의한 1워어드 에러의 판정이 틀려 있는 데 비해서는 Np가 너무 작은 것을 의미하기 때문에 그 블록의 모든 워어드의 포인터를 "1"로 한다. 반대로 Np
Figure kpo00037
z4이면, 포인터를 그대로 둔다.
(3) 2워어드에러의 여부를 조사한다. 2워어드에러이면, 연산에 의하여 에러로케이션 i, j가 검출된다. A≠0, B≠0, C≠0, 그리고 D2/E=α-tt, 다만, t=1∼27일 때에는 2워어드에러로 판정되고, αi=D/X, αj=D/Y에 의해서 에러로케이션 i, j가 구하여진다. 이 에러로케이션, i와 포인터에 의한 에러로케이션 Ei, Ej의 일치가 검출된다. i=Ei, j=Ej일 때에는 에러를 나타내는 포인터의 개구 Np가 소정치 z5와 비교된다. Np
Figure kpo00038
z5이면, 에러로케이션 i, j에 관한 2워어드에러가 정정된다. 이 정정은 에러패턴 ei, ej를 상기와 같이 구하는 것으로 이루어진다. Np
Figure kpo00039
z5일 때에는 예를 들면 3워어드 이상의 에러를 2워어드에러로 잘못 검출하고 포인터를 그대로 두거나, 2블록내의 모든 워어드를 에러로 한다.
에러로케이션 i, j 중 하나가 에러로케이션 Ei, Ej 중 하나와 일치할 때, i=Ei, j≠EJ 또는 i≠Ei, j=Ej의 어느 것인가의 일치관계가 성립할 때에는 Np
Figure kpo00040
z6인가의 여부가 조사된다. Np
Figure kpo00041
z6일 때에는 에러로케이션 i, j에 관한 2워어드에러의 정정을 한다. Np
Figure kpo00042
z6일 때에는 Np
Figure kpo00043
z7인가의 여부가 조사된다. 이것은 에러로 케이션의 일치관계가 일부 성립하고 있을 때에 있어서, 에러를 나타내는 포인터의 개수의 다소를 점검하는 것으로, 만약 Np
Figure kpo00044
z7일 때에는 에러를 나타내는 포인터의 수가 너무 적다고 판단하고, 그 블록의 모든 워어드의 포인터를 "1"로 한다. Np
Figure kpo00045
z7일 때에는 포인터의 신뢰성이 높은 것으로 생각되므로 포인터를 그대로 둔다.
i≠Ei, j≠Ej일 때에는 Np
Figure kpo00046
z8인가의 여부를 조사한다. Np가 상당히 적을 때에는 에러로케이션 다항식을 사용하여 얻어진 결과를 포인터보다 중시하고, 에러로케이션 i, j에 관한 2워어드에러의 정정이 행해진다. Np
Figure kpo00047
z8의 경우에는 다시 Np
Figure kpo00048
z9인가의 여부가 조사된다. 이것은 Np
Figure kpo00049
z7의 경우와 마찬가지로 그 블록의 포인터를 그대로 두거나, 모든 워어드의 포인터를 "1"로 하는 가를 위한 점검이다.
(4) 상기 (1), (2), (3)의 어느 경우에도 해당되지 않는, 즉 2워어드를 넘는 에러가 있는 경우에는 Np=3 또는 Np=4, 그리고 이 3워어드 또는 4워어드가 제1의 에러정정블록의 24워어드의 데이터워어드의 12워어드중에서 일접하고 있는 가의 여부를 조사한다. 이것이 설립할 경우에만, 포인터에 의한 에러로케이션에 대해서 3워드에러의 정정을 핼할 수 있게 된다. 이때에, 인접하고 있다는 조건으로부터 에러로케이션은 i, i+1, i+2, i+3으로 되고, 상기와 같은 4워어드에러 정정의 연산과 비교하여 상당히 간략화된 연산으로 에러패턴을 구할 수 있다. 이것을 표시하면 아래와 같다.
Figure kpo00050
또, Np=3, 3워어드에러의 에러로케이션이 i, i+1, i+2일 때, i+3의 에러로케이션의 워어드에 대하여 더미에러를 부가하고, 이것을 에러워어드로 함으로써 4워어드에러로서 처리하면 된다.
(5) 상기 (1), (2), (3), (4)의 어느 경우에도 해당하지 않는 경우에는 에러정정이 행하여지지 않는다. 그리고 Np
Figure kpo00051
z10인가의 여부가 조사된다. Np
Figure kpo00052
z10이면, 포인터의 신뢰성이 낮은 것으로 판단하고, 모든 워어드의 포인터를 "1"로 한다. Np
Figure kpo00053
z10이면, 포인터를 그대로 둔다.
또, 1블록내의 에러를 표시하는 포인터의 총수 Np와 비교되는 값, zi는 에러정정부호가 가지는 정확하지 않은 검출을 발생시키는 확률(상기 예에서는 5워어드에러이상의 경우에 이것을 에러가 없다고 판단할 염려가 있으며, 또 4워어드에러 이상의 경우에, 이것을 1워어드에러로 판단할 염려가 있으며, 3워어드 이상의 에러를 2워어드에러로 판단할 염려가 있다) 등을 고려하여 적절한 값으로 할 수 있다.
상기한 바와 같이 디코우딩 처리후에 포인터에 의하여 틀린 것으로 식별된 워어드는 정정불능의 것으로 보정된다.
제4도에 표시된 에러정정디코우더에 있어서는 제1의 체크워어드 Q12n, Q12n+1, Q12n+2, Q12n+3을 사용한 에러정정과 제2의 체크워어드 P12n, P12n+1, P12n+2, P12n+3을 사용한 에러정정을 각기 1회씩 행한다. 이 각 에러정정을 2회이상(실제적으로 2회정도)씩 행하도록 하면, 정정된 결과의 것보다 에러가 감소된 것을 이용할 수 있기 때문에 에러정정능력을 상당히 증대시킬 수 있다. 이와 같이 다시 후 단에 디코우더를 설치할 경우에는 디코우더 (41) 및 (43)에 있어서 체크워어드의 정정도 해둘 필요가 있다.
또, 상기의 예에 있어서, 인터리이버 (29)에 있어서의 지연처리로서 지연량을 D만큼씩 다르게 했지만, 이와 같은 규칙적인 지연량의 변화와 달리 불규칙적인 것으로 해도 된다. 또 제2의 체크워어드 Pi는 PCM데이터워어드 뿐만 아니라 제1의 체크워어드 Qi을 포함시켜 구성되는 에러정정부호이다. 이와 마찬가지로 제1의 체크워어드 Qi가 제2의 체크워어드 Pi도 포함되게 할 수도 있다. 구체적으로는 제2의 체크워어드 Pi를 귀환하여 제1의 체크워어드를 형성하는 엔코우더에 공급하면 된다.
이러한 귀환의 구성은 디코우딩의 회수를 상기와 같이 3회 이상으로 한 경우에 대해서 유효이다.
또, 제1디코우더 (41)에서 2워어드에러까지의 정정이 가능하지만, 상기 실시예에 있어서와 같이, 제1의 디코우더에 있어서 2워어드에러까지 정정이 가능함에도 불구하고, 1워어드에러의 정정까지만 행함으로써 이들 디코우더에 있어서 정확하지 않은 에러검출 또는 정확하지 않은 에러정정이 발생할 염려를 경감할 수 있다. 이 경우에, 2워어드에러가 제2디코우더에서 정정할 수 있도록 이루어져 있으므로 에러정정능력이 그다지 저하되는 일이 없다. 더구나 신드로움의 연산에 의한 에러정정은 1워어드에러로 한정되어 있으므로, 제1디코우더의 구성은 한층 간략화할 수 있다.
또, 비록 제1디코우더에서 1워어드에러가 정정될 때에도, 이 정정된 워어드가 포함되는 블록내의 각 워어드의 포인터를 "1"로 하면, 에러검출을 보다 정확히 할 수 있기 때문에 에러정정이 틀릴 염려를 경감시킬 수 있다.
상기 기술에 의하여 알 수 있는 바와 같이, 버어스트에러는 크로스인터리이브에 의하여 분산될 수 있으므로 에러정정은 랜덤 및 버어스트에러의 어느 것에 대해서도 유효하게 행할 수 있다.
또, 디인터리이브했을 경우에 제1의 에러정정블록내에 포함되는 인접 M워어드에 가까운 개수의 에러워어드가 있는 것을 포인터에 의해서 검출했을 때에만, 이 포인터로 표시되는 에러로케이션에 대하여 에러정정을 하므로 단순히 포인터만에 의한 에러로케이션을 사용하여 에러정정을 하는 경우보다도 에러정정이 틀릴 염려를 감소할 수 있으므로 에러정정능력의 향상을 꾀할 수 있다.
본원 발명은 에러정정엔코우더와 별도로 재생장치로서 구성할 수 있는 비데오디스크와 같은 원리의 디지털오디오 디스크시스템에 적용하면 유효하다.
그리고 본원 발명의 정신 또는 범위에서 벗어나지 않는 한, 해당 기술분야에 숙련된 자가 용이하게 할 수 있는 여러가지 변형예도 본원 발명의 범위에 포함됨은 물론이다.

Claims (1)

  1. (정정) 1블록내에 n워어드와 각 워어드가 m비트로 이루어지는 데이터의 에러정정방법에 있어서, 수신 n워어드 및 패리티검사행렬 H로 이루어지는 1블록 VT의 아래 연산에 의하여 k신드로움 S0∼Sk-1을 구하는 단계와,
    Figure kpo00054
    (다만, 패리티검사행렬 H은 n열(column) 및 k행(row)을 가지며, 1규정행의 각 원소는 α0(=1)∼α2m-2에서 선택되며, 원소 α는 F(x)가 GF (2)상에서 기약(旣約)의 다항식 일 때, F(x)=0를 충족시키는 평방근(root)이며, 따라서 동일값은 상기 소정행에 두번 나타나지 않으며, 그 밖의 행의 원소는 각 행내의 모든 원소에 대하여 상기 소정행의 대응원소의 누승으로 선택되게 이루어져 있음), 상기 신드로움에 의하여 아래의 계수 A, B및 C를 구하는 단계와,
    Figure kpo00055
    상기 신드로움 및 계수에 의하여 (a), (b) 및 (c)와 같이 아래에 표시된 에러정정을 행하는 단계와, (a) S0=S3=S4=…=Sk-1=0, A1=A2=…=Ak-3=0, B1=B2=…=Bk-3=0, 및 Ck-3=0이 충족될 때, 에러워어드가 없다는 것이 검출되며, (b) S0≠0, S3≠0, S4≠0,…, Sk-1≠0, Ak'=0, Bk'=0,(다만 k'=1∼k-3), Ck-3=0이 충족될 때, 1워어드에러가 있다는 것이 판단되고, 그 다음 상기 신드로움의 연산에 의하여 에러정정을 행하며, (c) Ak'≠0, Bk'≠0, Ck-3≠0이 충족될 때, 아래의 식이 성립되며,
    Figure kpo00056
    α2i+Dαi+E=0의 에러로케이션식에 의하여 에러로케이션 i 및 j 를 검출하고, 2워어드에러가 정정되도록 하는 단계로 이루어지는 특징으로 하는 에러정정방법.
KR1019810002592A 1980-07-18 1981-07-16 에러정정방법 KR860000500B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP80-99258 1980-07-18
JP99258 1980-07-18
JP9925880A JPS5724143A (en) 1980-07-18 1980-07-18 Error correcting method
JP100814 1980-07-23
JP80-100,814 1980-07-23
JP10081480A JPS5725047A (en) 1980-07-23 1980-07-23 Error correcting method

Publications (2)

Publication Number Publication Date
KR830007010A KR830007010A (ko) 1983-10-12
KR860000500B1 true KR860000500B1 (ko) 1986-05-01

Family

ID=26440410

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019810002592A KR860000500B1 (ko) 1980-07-18 1981-07-16 에러정정방법

Country Status (16)

Country Link
US (1) US4476562A (ko)
KR (1) KR860000500B1 (ko)
AT (1) AT393926B (ko)
AU (1) AU541864B2 (ko)
BR (1) BR8104615A (ko)
CA (1) CA1170776A (ko)
CH (1) CH653457A5 (ko)
DD (1) DD201957A5 (ko)
DE (1) DE3128599C2 (ko)
DK (1) DK162862C (ko)
ES (1) ES504085A0 (ko)
FR (1) FR2491278B1 (ko)
GB (1) GB2081479B (ko)
IT (1) IT1138096B (ko)
NL (2) NL191002C (ko)
SE (1) SE462607B (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8104342A (nl) * 1981-09-21 1983-04-18 Philips Nv Rekenmachinesysteem, gebaseerd op een symboolkorrigerende kode met twee werkmodes.
US4541091A (en) * 1982-06-11 1985-09-10 Hitachi, Ltd. Code error detection and correction method and apparatus
EP0096163B1 (en) * 1982-06-15 1988-06-01 Kabushiki Kaisha Toshiba Apparatus for dividing the elements of a galois field
JPS5961332A (ja) * 1982-09-30 1984-04-07 Nec Corp 誤り訂正回路
US4504948A (en) * 1982-12-29 1985-03-12 International Business Machines Corporation Syndrome processing unit for multibyte error correcting systems
DE3483460D1 (de) * 1983-03-12 1990-11-29 Sony Corp Vorrichtung mit fehlerkorrektur.
EP0129849B1 (en) * 1983-06-22 1990-10-10 Hitachi, Ltd. Error correction method and system
DE3484455D1 (de) * 1983-09-06 1991-05-23 Toshiba Kawasaki Kk Fehlerkorrekturschaltung.
JPH0812612B2 (ja) * 1983-10-31 1996-02-07 株式会社日立製作所 誤り訂正方法及び装置
NL8400629A (nl) * 1984-02-29 1985-09-16 Philips Nv Snelle decodeur voor reed-solomon-codes, welke mede als encodeur te gebruiken is, alsmede opname/reproduktie-apparaat voorzien van zo een encodeur/decodeur.
NL8403147A (nl) * 1984-10-16 1986-05-16 Philips Nv Dataverwerkingssysteem dat is opgebouwd uit drie dataverwerkingsmodules.
EP0723342B1 (en) * 1986-09-30 2003-05-02 Canon Kabushiki Kaisha Error correction apparatus
JPS63193723A (ja) * 1987-02-06 1988-08-11 Sony Corp リ−ドソロモン符号の復号方法
US4890286A (en) * 1987-12-11 1989-12-26 Sanyo Electric Co., Ltd. Method and apparatus for decoding error correcting code
JP2532917B2 (ja) * 1988-04-20 1996-09-11 三洋電機株式会社 デ―タ誤り検出回路
US5499251A (en) * 1990-08-15 1996-03-12 Televerket Method of recovering lost bits in a digital transmission
SE468413B (sv) * 1990-08-15 1993-01-11 Televerket Metod foer aaterskapande av foerlorade bitar vid digital transmission
EP0481128B1 (en) * 1990-10-16 1998-01-14 Koninklijke Philips Electronics N.V. Data processor system based on an (N, k) symbol code having symbol error correctibility and plural error mendability
US5291496A (en) * 1990-10-18 1994-03-01 The United States Of America As Represented By The United States Department Of Energy Fault-tolerant corrector/detector chip for high-speed data processing
KR930007928B1 (ko) * 1991-01-31 1993-08-21 삼성전자 주식회사 오류정정방법 및 장치
US5416786A (en) * 1991-06-28 1995-05-16 Industrial Technology Research Institute Error correction circuit for BCH codewords
KR950002304B1 (ko) * 1992-10-07 1995-03-16 삼성전자주식회사 다중 오류정정 방법
GB2275393B (en) * 1993-02-20 1997-08-20 Northern Telecom Ltd Transmission system
EP1336963B1 (en) * 1994-03-19 2006-05-31 Sony Corporation Optical disk, method and apparatus for recording and reproducing information
USRE38802E1 (en) * 1994-03-19 2005-09-27 Sony Corporation Method for reproducing compressed information data from a disk using a spatial frequency less than the track pitch
SG24105A1 (en) 1994-03-19 1996-02-10 Sony Corp Apparatus for recording and reproducing information
US5815212A (en) * 1995-06-21 1998-09-29 Sony Corporation Video overlay circuit for synchronizing and combining analog and digital signals
JP3340933B2 (ja) * 1997-02-15 2002-11-05 東芝デジタルメディアエンジニアリング株式会社 誤り訂正方法及びdvd再生装置
US6691278B1 (en) * 1999-10-13 2004-02-10 Maxtor Corporation Detecting errors in coded bit strings
EP1111800A1 (en) 1999-12-21 2001-06-27 Deutsche Thomson-Brandt Gmbh Error correction with a cross-interleaved Reed-Solomon code, particularly for CD-ROM
EP1388944A1 (en) * 2002-08-10 2004-02-11 Deutsche Thomson-Brandt Gmbh Cross interleave reed-solomon code correction
EP1388946A1 (en) * 2002-08-10 2004-02-11 Thomson Licensing S.A. Cross interleave reed-solomon code correction
US8255777B2 (en) * 2009-02-10 2012-08-28 Spansion Llc Systems and methods for locating error bits in encoded data
JP5581969B2 (ja) * 2010-10-27 2014-09-03 ソニー株式会社 復号装置および方法、並びにプログラム
KR102324769B1 (ko) * 2015-06-29 2021-11-10 삼성전자주식회사 반도체 메모리 장치의 에러 정정 회로, 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
WO2018140316A1 (en) 2017-01-24 2018-08-02 Arizona Board Of Regents On Behalf Of The University Of Arizona A method and system utilizing quintuple parity to provide fault tolerance

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
US3851306A (en) * 1972-11-24 1974-11-26 Ibm Triple track error correction
US3958220A (en) * 1975-05-30 1976-05-18 International Business Machines Corporation Enhanced error correction
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
JPS5556744A (en) * 1978-10-23 1980-04-25 Sony Corp Pcm signal transmission device
JPS5573909A (en) * 1978-11-28 1980-06-04 Matsushita Electric Ind Co Ltd Signal processor
JPS55131860A (en) * 1979-03-30 1980-10-14 Matsushita Electric Ind Co Ltd Error correction unit
JPS5710558A (en) * 1980-06-20 1982-01-20 Sony Corp Error correcting method
CA1161565A (en) * 1980-06-20 1984-01-31 Yoichiro Sako Method of error correction

Also Published As

Publication number Publication date
DK162862B (da) 1991-12-16
DK162862C (da) 1992-05-04
SE462607B (sv) 1990-07-23
GB2081479B (en) 1985-06-19
DE3128599C2 (de) 2003-02-13
ES8205089A1 (es) 1982-05-16
FR2491278A1 (fr) 1982-04-02
US4476562A (en) 1984-10-09
CA1170776A (en) 1984-07-10
NL191002B (nl) 1994-07-01
AU7310681A (en) 1982-01-21
NL191002C (nl) 1994-12-01
IT8122998A0 (it) 1981-07-17
CH653457A5 (fr) 1985-12-31
DD201957A5 (de) 1983-08-17
GB2081479A (en) 1982-02-17
ATA314981A (de) 1991-06-15
AU541864B2 (en) 1985-01-24
NL8103426A (nl) 1982-02-16
BR8104615A (pt) 1982-04-06
ES504085A0 (es) 1982-05-16
KR830007010A (ko) 1983-10-12
SE8104418L (sv) 1982-01-19
IT1138096B (it) 1986-09-10
DK321481A (da) 1982-01-19
NL9400376A (en) 1994-07-01
FR2491278B1 (fr) 1989-12-15
DE3128599A1 (de) 1982-06-09
SE461620B (sv) 1990-03-05
AT393926B (de) 1992-01-10

Similar Documents

Publication Publication Date Title
KR860000500B1 (ko) 에러정정방법
US4497058A (en) Method of error correction
US4546474A (en) Method of error correction
US4785451A (en) Generator for an error correcting code, a decoder therefore, and a method for the same
US4306305A (en) PCM Signal transmitting system with error detecting and correcting capability
US4052698A (en) Multi-parallel-channel error checking
JPH0351140B2 (ko)
US4541091A (en) Code error detection and correction method and apparatus
EP0140381B1 (en) Decoding method and system for doubly-encoded reed-solomon codes
SU1271382A3 (ru) Устройство дл декодировани слов данных,передаваемых по каналу передачи данных и поблочно защищенных посредством корректирующего кода (его варианты)
US5946328A (en) Method and means for efficient error detection and correction in long byte strings using integrated interleaved Reed-Solomon codewords
US4852099A (en) Error correction method using Reed-Solomon code
EP0340139A2 (en) Fast processor for multi-bit error correction codes
AU687286B2 (en) Digital transmission system for encoding and decoding attribute data into error checking symbols of main data
JPH0436487B2 (ko)
US6378100B1 (en) Method and apparatus for encoding multiword information with error locative clues directed to low protectivity words
EP0105499A2 (en) Method capable of simultaneously decoding two reproduced sequences
JPH0353818B2 (ko)
JPH0361381B2 (ko)
US5623504A (en) Methods and apparatus for encoding and/or decoding digital data elements with different degrees of error protection in accordance with a quasi-product code
KR920000397B1 (ko) 에러정정방법
JPS58111539A (ja) エラ−訂正方法
KR920000396B1 (ko) 에러정정방법(error訂正方法)
KR100397095B1 (ko) 에러 검출 장치 및 그 방법
JPH0353816B2 (ko)