KR970005125B1 - 리드-솔로만 부호기 - Google Patents

리드-솔로만 부호기 Download PDF

Info

Publication number
KR970005125B1
KR970005125B1 KR1019940012851A KR19940012851A KR970005125B1 KR 970005125 B1 KR970005125 B1 KR 970005125B1 KR 1019940012851 A KR1019940012851 A KR 1019940012851A KR 19940012851 A KR19940012851 A KR 19940012851A KR 970005125 B1 KR970005125 B1 KR 970005125B1
Authority
KR
South Korea
Prior art keywords
adder
signal output
register
signal
multiplier
Prior art date
Application number
KR1019940012851A
Other languages
English (en)
Other versions
KR960003119A (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
Application filed by 삼성전자 주식회사, 김광호 filed Critical 삼성전자 주식회사
Priority to KR1019940012851A priority Critical patent/KR970005125B1/ko
Publication of KR960003119A publication Critical patent/KR960003119A/ko
Application granted granted Critical
Publication of KR970005125B1 publication Critical patent/KR970005125B1/ko

Links

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
    • 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
    • H03M13/1515Reed-Solomon 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
    • 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
    • H03M13/154Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial

Landscapes

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

Abstract

내용 없음.

Description

리드-솔로만 부호기
제1도는 종래의 리드-솔로만 부호기를 도시한 블록도이고,
제2도는 본 발명에 의한 리드-솔로만 부호기를 도시한 블록도이다.
* 도면의 주요부분에 대한 부호의 설명
10-1~10-N : 곱셈기 20-1~20-N : 플립플롭
30-1~30-N : 가산기 50 : 생성계수발생기
52 : 멀티 플렉서
본 발명은 리드솔로만 부호기에 관한 것으로, 특히 오류정정능력에 따라 적당한 생성 다항식의 계수를 제공하여 사용자의 설계폭을 넓혀주는 다용도 리드솔로만부호기에 관한 것이다.
일반적으로, 통신 시스템이나 데이터 저장 시스템에서 처리되는 광대한 량의 데이터에 대한 오류제어를 위하여 다양한 오류정정 알고리즘이 제안되었고, 반도체 집적화 기술의 발전으로 제안된 부호화 및 복호화 알고리즘을 하나의 IC로 구현할 수 있게 되었다.
특히, CD 및 DAT와 같은 디지털 오디오분야와 MPEG I, II로 이어지는 디지털 비디오분야에서는 블록 부호의 일종인 리드솔로만 부호를 표준으로 정하여 사용하고 있다. 또한, HDTV와 같은 새로운 기술영역에서도 랜덤 에러와 연집에러에 대해 강한 정정능력을 갖는 리드솔로만 부호를 적용하기 위하여 많은 연구가 계속되고 있다.
RS 부호기 및 복호기는 유한체 GF(2m)상의 매우 복잡한 연산과정을 포함하고 있고, 이러한 연산장치에 대해서는 'BCH 부호와 Reed-Solomon 부호(이만영, 민음사, 1990. 4. 12)' 및 특허 공고번호 92-828호(1992. 1. 30) 등으로 이미 공지된 바와 같다.
제1도는 종래의 리드솔로만 부호기를 도시한 개략도로서 곱셈기(10-1~10-N), 플립플롭(20-1~20-N), 가산기(30-1~30-N), 생성계수발생기(40), 게이트부(42) 및 스위치(44)를 구비한다.
일반적으로, RS 부호는 q개의 원소를 갖는 GF(q)상의 블록계열인데, 여기서는 q=2mmmm인 경우에 대해서만 고려한다. GF(2m)의 각 원소는 m개의 비트로 이루어져 있으며(n,k) RS 부호의 오류정정능력을 t라 하면
부호장 : n=2m-1(symbols)=m(2m-1)(bits)
정보장 : k=n-2t(symbols)=m(n-2t)(bits)
검사장 : n-k=2t(symbols)=2tm(bits)의 변수를 갖는 RS 부호가 된다.
정보다항식을 D(x)=d0+d1x+……+dk-1xk-1라 하고, 검사다항식을 P(x)=p0+p1x+…+pn-k-1xn-k-1이라 하면, RS 부호의 조직형 부호다항식 C(x)는
로 표현된다.
한편, α가 유한체 GF(2m)의 원시원이라 할 때, t중 오류정정 RS 부호의 생성다항식 G(x)는 GF(2m)상의 최소 다항식의 곱이므로
이다.
여기서, 계수 g1(0i2t-1)는 GF(2m)의 원소이다. 또한, 정보계열 D(x)에 xn-k를 곱한 xn-kD(x)를 생성다항식 G(x)로 나누어 검사계열 P(x)를 구하고, 이를 합하여 부호계열 C(x)를 구할 수 있다.
생성계수발생기(40)는 오류정정능력 t에 따라 g'0~g'2t-1의 고정된 계수를 발생하여 곱셈기(10-1~10-N)로 출력한다. 제1 곱셈기(10-1)는 정보계열(I)과 생성계수 g'0를 곱하여 제1 플립플롭(20-1)으로 출력하고, 제2 곱셈기(10-2)는 정보계열(I)과 생성계수 g'1를 곱하여 제1 가산기(30-1)로 출력한다. 제1 가산기(30-1)는 제1 플립플롭(20-1)의 출력과 제2 곱셈기(10-2)의 출력을 가산하여 제2 플립플롭(20-2)으로 출력한다. 제3 곱셈기(10-3)~제N곱셈기(10-N)는 정보계열(I)과 생성계수(g'2~g'2t-1)를 각각 곱하여 제2 가산기(30-2)~제N가산기(30-N)로 각각 출력한다. 제2 가산기(30-2)~제N가산기(30-N)는 곱셈기의 출력과 이전 항의 플립플롭의 출력을 각각 가산하여 제3 플립플롭(20-3)~제N플립플롭(20-N)으로 각각 출력한다. 이러한 종래의 장치의 동작을 개략적으로 살펴보면 다음과 같다.
모든 상태가 0이며 게이트(42)가 '온'상태에서 스위치(44)는 A에 있고, 정보계열(I)이 입력됨과 동시에 부호기의 출력(C)으로 빠져나간다. 정보계열(I)이 입력되면서부터 제산은 이루어지고, 마지막 정보심볼이 입력되면, 스위치(44)는 B로 전환되고, 게이트(42)는 '오프'된다. 즉, 마지막 심볼이 입력되었을 때 제산은 완료되며 검사계열(P)이 생성되어 레지스터(즉, 플립플롭으로 구현됨)에 저장되고, 출력된 정보계열(I)에 이어서 순차적으로 출력되어서 부호계열(C)을 형성한다.
그런데, 종래의 RS 부호기에서는 대부분 부호계열의 길이와 정보계열(I)의 길이가 고정되어 있었다. 따라서, 사용자가 사양이 다른 부호기를 사용하여 시스템을 설계하고자 한다면, 그 사양에 맞는 다른 부호기를 선택해야 하였기 때문에 매우 불편하였다.
따라서, 본 발명의 목적은 오류정정능력에 따라 소정의 생성계수를 발생한 후 정보계열과 연산하여 검사계열을 생성하므로써 부호계열의 길이에 상관없이 부호화를 수행할 수 있는 리드-솔로만 부호기를 제공하는데 있다.
상기와 같은 목적을 달성하기 위하여 본 발명의 장치는 갈로이스체 GF(2m)상에서 입력변수에 따라 결정된 오류정정능력이 t라 할 때, k 심볼의 정보계열을 소정의 생성다항식의 계수들과 연산하여 2t 심볼의 검사계열을 발생하고, 상기 정보계열과 상기 검사계열을 순차적으로 출력하여 n 심볼의 부호계열을 발생하는 리드-솔로만 부호기에 있어서, 상기 입력변수에 따라 상기 소정의 생성다항식의 계수들을 발생하는 생성계수 발생기 ; 상기 정보계열과 상기 생성계수들을 각각 곱하는 복수개의 곱셈기 ; 연산결과를 일시 저장하는 복수개의 레지스터 ; 상기 레지스터들의 출력과 상기 곱셈기들의 출력을 각각 가산하는 복수개의 가산기 ; 상기 정보계열과 상기 검사계열을 멀티플렉싱하는 선택수단을 구비한 것을 특징으로 한다.
이어서, 첨부한 도면을 참조하여 본 발명을 상세히 설명하기로 한다.
제2도는 본 발명에 따른 RS 부호기를 도시한 블록도이다.
제2도에 있어서, 부호기는 곱셈기(10-1~10-N), 레지스터(20-1~20-N), 가산기(30-1~30-N), 생성계수발생기(50) 및 멀티플렉서(52)를 구비한다. 곱셈기(10-1~10-N), 가산기(30-1~30-N) 및 레지스터(20-1~20-N)는 제1도에서 설명한 바와 동일하므로 동일한 부호를 부치고 자세한 설명은 생략한다.
본 발명에 의한 생성계수발생기(50)는 오류정정능력(t)에 따라 소정의 생성계수(g0~g2t-1)를 발생하여 오류정정능력에 따른 융통성을 부여한다. 즉, 생성계수발생기(50)로 입력되는 입력변수(A~D)는 다음 표1과 같이 오류정정능력(t)에 따라 특정한 값을 갖는다. 따라서, 입력변수(A~D)에 따라 선택된 오류정정능력(t)에 해당하는 소정의 생성계수(g0~g2t-1)를 발생하도록 한다.
상기 표1에 있어서, 입력변수(A,B,C,D)가 (0,0,0,0)이면 오류정정능력(t)은 '1'이다. 즉, 1심볼의 에러를 정정할 수 있고, 2심볼 이상의 에러는 검출만 한다. 또한 입력변수가 (0,0,0,1)이면 오류정정능력(t)이 '2'로써, 2심볼의 에러까지 정정할 수 있다. 본 발명의 실시예에서는 오류정정능력(t)이 10일때까지의 입력변수값과 생성계수들을 보여준다. 즉, 본 발명은 오류정정능력이 1에서 10까지 가변일 때, 부호화가 이루어지는 방법에 관한 것이다. 여기서, g는 생성다항식의 상수항을 의미하고, g는 오류정정능력이 가장 클때(t=10)생성다항식의 최고차수에 해당하는 계수를 의미한다.
멀티플렉서(52)는 정보계열(I)과와 검사계열(P)을 입력으로 받아들인다. 즉, 정보의 길이에 해당하는 심볼클럭 동안에는 정보계열(I)을 출력시키고, 2t 심볼 클럭 동안에는 검사계열(P)을 선택하여 출력시킨다.
한편, RS 부호기에서는 상기 식2에서와 같이 오류정정능력(t)의 값에 따라 생성다항식의 계수가 변하게 된다. 오류정정능력(t)이 1부터 10까지일 경우의 생성다항식은 다음 식3~12에 표시되어 있다.
또한, 본 발명은 오류정정능력(t)에 따른 생성다항식의 최고차수에 해당하는 계수값은 항시 g19의 항에 세팅되도록 설계된다. 즉, t=1일 때 g19에 설정하는 값은 α26이고, t=2일 때 g19에 설정하는 값은 α76이다.
이와 같이 오류정정능력(t)에 따라 생성다항식의 각 차수의 계수에 설정하여주어야 하는 계수값은 다음 표2와 같다.
상기 표2를 이용하여 생성다항식의 각 차수에 해당하는 계수값을 입력변수인 A,B,C,D로 표현하면 다음 식13~식32에 나타난 바와 같다.
여기서, 입력변수 A,B,C,D는 사용자가 오류정정능력을 4비트로 셋팅할때의 값이다. 따라서, 생성다항식의 계수값은 식13~식32에 나타난 바와 같이 조합논리로 구현될 수 있다.
또한, 상기 표2에 나타난 생성다항식의 생성계수를 8비트로 표현하여 롬으로 구현할 경우 다음 표3~표22와 같다.
따라서 본 발명에 의한 생성계수발생기는 상기 식13~식32로 표현되는 조합논리회로로 구현할 수도 있고, 상기 표3~표22와 같은 데이터를 저장한 롬을 이용하여 구현할 수도 있다.
이상에서 살펴본 바와 같이 본 발명은 부호화기에 사용되어 오류정정능력에 따라 특정한 생성계수를 발생하므로써 시스템 설계시 다양한 융통성을 제공하여 사용의 편리성을 향상시킨다.

Claims (4)

  1. 갈로이스체 GF(2m)상에서 입력변수에 따라 결정된 오류정정능력이 t라 할 때, k 심볼의 정보계열을 소정의 생성다항식의 계수들과 연산하여 2t 심볼의 검사계열을 발생하고, 상기 정보계열과 상기 검사계열을 순차적으로 출력하여 n 심볼의 부호계열을 발생하는 리드-솔로만 부호기에 있어서, 상기 입력변수에 따라 상기 소정의 생성다항식의 계수 g0, g1, g2, … ,g2t-1를 발생하는 생성계수발생기 ; 제N가산기로부터 출력된 신호와 상기 생성계수발생기로부터 발생된 생성계수 g0를 곱하는 제1 곱셈기, 제N가산기로부터 출력된 신호와 상기 생성계수발생기로부터 발생된 생성계수 g1를 곱하는 제2 곱셈기, 동등, 제N가산기로부터 출력된 신호와 상기 생성계수발생기로부터 발생된 생성계수 g2t-1를 곱하는 제N곱셈기를 갖는 복수의 곱셈기들 ; 상기 제1 곱셈기로부터 출력된 신호를 일시 저장하는 제1 레지스터, 제1 가산기로부터 출력된 신호를 일시 저장하는 제2 레지스터, 제2 가산기로부터 출력된 신호를 일시 저장하는 제3 레지스터, 동등, 제(N-1)가산기로부터 출력된 신호를 일시 저장하는 제N 레지스터를 갖는 복수의 레지스터들 ; 상기 제1 레지스터로부터 출력된 신호와 상기 제2 곱셈기로부터 출력된 신호를 가산하는 제1 가산기, 상기 제2 레지스터로부터 출력된 신호와 상기 제3 곱셈기로부터 출력된 신호를 가산하는 제2 가산기, 동등, 상기 제 (N-1)레지스터로부터 출력된 신호와 상기 제N 곱셈기로부터 출력된 신호를 가산하는 제 (N-1)가산기 및 제 N레지스터로부터 출력된 신호와 상기 정보계열 신호를 가산하는 제 N가산기를 갖는 복수의 가산기들 ; 및 상기 정보계열 신호와 상기 제N 레지스터로부터 출력된 검사계열 신호를 멀티플렉싱하는 선택수단을 구비한 것을 특징으로 하는 리드-솔로만 부호기.
  2. 제1항에 있어서, 상기 리드-솔로만 부호기의 오류정정능력은 1~10까지 가변할 수 있는 것을 특징으로 하는 리드-솔로만 부호기.
  3. 제1항에 있어서, 상기 생성계수발생기는 롬으로 구현한 것을 특징으로 하는 리드-솔로만 부호기.
  4. 제1항에 있어서, 상기 생성계수발생기는 조합논리회로로 구현한 것을 특징으로 하는 리드-솔로만 부호기.
KR1019940012851A 1994-06-08 1994-06-08 리드-솔로만 부호기 KR970005125B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940012851A KR970005125B1 (ko) 1994-06-08 1994-06-08 리드-솔로만 부호기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940012851A KR970005125B1 (ko) 1994-06-08 1994-06-08 리드-솔로만 부호기

Publications (2)

Publication Number Publication Date
KR960003119A KR960003119A (ko) 1996-01-26
KR970005125B1 true KR970005125B1 (ko) 1997-04-12

Family

ID=19384876

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940012851A KR970005125B1 (ko) 1994-06-08 1994-06-08 리드-솔로만 부호기

Country Status (1)

Country Link
KR (1) KR970005125B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7821309B2 (en) 2006-10-25 2010-10-26 Samsung Electronics Co., Ltd. Delay locked loop circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7821309B2 (en) 2006-10-25 2010-10-26 Samsung Electronics Co., Ltd. Delay locked loop circuit

Also Published As

Publication number Publication date
KR960003119A (ko) 1996-01-26

Similar Documents

Publication Publication Date Title
US4852098A (en) Polynomial operator in galois fields and a digital signal processor comprising an operator of this type
US4584686A (en) Reed-Solomon error correction apparatus
US6760742B1 (en) Multi-dimensional galois field multiplier
US5185711A (en) Apparatus for dividing elements of a finite galois field and decoding error correction codes
US6119262A (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
US5805617A (en) Apparatus for computing error correction syndromes
EP0152702B1 (en) Arithmetic circuit of finite field
US6701336B1 (en) Shared galois field multiplier
US5822337A (en) Programmable redundancy/syndrome generator
KR100322739B1 (ko) 유한체연산방법및그장치
US6978415B1 (en) Variable redundancy cyclic code encoders
KR970005125B1 (ko) 리드-솔로만 부호기
US4809275A (en) Parity signal generating circuit
KR100192804B1 (ko) 리드 솔로몬 복호화기에서의 다항식 평가 장치
JP3614978B2 (ja) ガロア体の除算方法および除算装置
EP0793352B1 (en) Apparatus for determining the error evaluator polynomial for use in a Reed-Solomon decoder
JP4368020B2 (ja) データシンボルの操作システム、データシンボルをエンコードするためのエラー訂正システムおよびエラー訂正方法
EP0341851A2 (en) Method and apparatus for interleaved encoding
JP2000295116A (ja) 誤り修正符号化方法
US5751732A (en) Polynomial evaluator for use in a reed-solomon decoder
US6704901B1 (en) Runtime programmable Reed-Solomon decoder
JP2603244B2 (ja) 誤り訂正装置
KR100192792B1 (ko) 리드 솔로몬 복호기의 다항식 평가 장치
JP2725598B2 (ja) 誤り訂正符号化器
JP2603243B2 (ja) 誤り訂正装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20060630

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee