KR100192803B1 - 에러 정정 신드롬 계산 장치 - Google Patents

에러 정정 신드롬 계산 장치 Download PDF

Info

Publication number
KR100192803B1
KR100192803B1 KR1019960060086A KR19960060086A KR100192803B1 KR 100192803 B1 KR100192803 B1 KR 100192803B1 KR 1019960060086 A KR1019960060086 A KR 1019960060086A KR 19960060086 A KR19960060086 A KR 19960060086A KR 100192803 B1 KR100192803 B1 KR 100192803B1
Authority
KR
South Korea
Prior art keywords
during
memory means
syndrome calculation
finite field
syndrome
Prior art date
Application number
KR1019960060086A
Other languages
English (en)
Other versions
KR19980040848A (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 KR1019960060086A priority Critical patent/KR100192803B1/ko
Publication of KR19980040848A publication Critical patent/KR19980040848A/ko
Application granted granted Critical
Publication of KR100192803B1 publication Critical patent/KR100192803B1/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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

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

Abstract

본 발명은 리드 솔로몬 부호화된 데이터를 에러 정정하여 복호화하기위한 신드롬을 결정하는 계산 장치에 관한 것으로서, 각각 K개의 신드롬을 제공하는 L 개의 계산셀이 포함된 장치에서의 각 신드롬 계산셀은, 제 1 세트 K 개 메모리 수단을 포함하고 있으면서, 첫번째 단계이전에는 0으로 초기화됨과 동시에, 각 단계동안에는, 제 1 세트 K 개 메모리 수단 각각에 저장된 내용을 순서대로 제공하는 저장 수단(47)과; 각 단계동안에, 코드 생성 다항식의 K 개 근(αi)을 순서대로 제공하는 제 1 입력 수단(43); 각 단계동안에, 상기 제 1 입력 수단(43)으로부터 제공된 K의 근과 상기 저장 수단(47)으로부터 제공된 제 1 세트 K개 메모리 수단 내용과 순서대로 곱셈하여 K개의 곱셈결과를 제공하는 유한 필드 GF(2m)상의 곱셈 수단(41); 및 j1은 1부터 (N-1)까지의 양수이고, j1번째 단계동안에는 K개의 중간값(intermediate value)을 제공함과 동시에 N번째 단계동안에는 K개의 신드롬을 제공하기 위해서, 각 단계동안에는, j번째로 수신된 심볼을 상기 유한 필드 GF(2m)상의 곱셈 수단(41)으로부터 제공된 K 개 곱셈 결과와 각각 더하여 상기 K 메모리 수단에 저장시키는 유한 필드 GF(2m)상의 덧셈 수단(45)을 포함한 본 발명은 하드웨어수(GF 곱셈기, GF 덧셈기)가 감소되고, 심볼 클럭을 K분주한 비트 클럭을 사용하므로써, 하드웨어의 복잡성을 줄이고, 제작 비용도 감소됨은 물론 처리 시간도 단축시킨 효과가 있는 것이다.

Description

에러 정정 신드롬 계산 장치
본 발명은 저장된 혹은 전송된 데이터에서 발생된 에러를 정정하는 장치에 관한 것으로, 더욱 상세하게는 리드 솔로몬 부호화된 데이터를 에러 정정하여 복호화하기위한 신드롬을 결정하는 계산 장치에 관한 것이다.
일반적으로, 디지털 데이터를 전송하고, 저장하고, 복원하는 과정에서 발생하는 잡음에 의해서 원래 데이터에 에러가 발생하게 된다. 따라서, 이러한 에러를 바로잡기 위한 다양한 부호화 기술이 개발되어 왔으며, 이를 에러 정정 부호화(ECC : error correcting coding)라고 한다.
에러 정정 부호화에 있어서, 1세트의 검사비트(check bit)가 1그룹의 정보 비트 또는 메시지 비트(imformation bit, message bit)에 부가된다. 부호화기(encoder)를 통해 결정되는 검사비트는 발생된 에러를 검출하고 정정하기 위해 사용된다. 여기서, 부호화기는 기본적으로 바이너리 메시지 다항식 i(X)의 계수에 해당하는 메시지 비트들과, 메시지 다항식 i(X)에 코드 생성 다항식 g(X)를 곱하거나 더함으로써 유도된 검사 비트들을 구하고, 이렇게 구성된 메시지 비트와 검사 비트들을 계수로 하여 코드워드 다항식 c(X)을 구한다. 상기 코드 생성 다항식 g(X)은 각각의 코드워드의 특성에 맞게 선택되는데, 이것은 코드워드에 어떤 특성을 부가하여 코드워드가 특정한 부류 즉, 에러 정정이 가능한 바이너리 그룹에 속하도록 한다. (에러 정정이 가능한 특정한 코드워드에 대해서는 1983년 발행된 Lin등의 저서 Prentice-Hall사의 Error Control Coding : Fundamentals and Applications 을 참조하기 바란다.)
한편, 에러 정정 코드의 한 부류로서 잘 알려진 코드는 BCH(Bose-Chaudhuri- Hocquenghen)코드가 있으며, 여기에 포함된 리드 솔로몬 코드(Reed-Solomon)는 BCH코드의 최적 코드로 알려져 있다.
상기 리드 솔로몬 코드의 수학적 기반에 대한 설명은 상기 제시한 Lin등의 상기 저서와 1968년 발행된 Berlekamp의 저서 McGraw-Hill사의 Algebraic Coding Theory, Berlekamp의 U.S. Pat. No. 4,162,480)를 참조하기 바란다.
리드 솔로몬 코드에서 하기 수학식 1과 같이 코드 생성 다항식 g(X)의 근(root)이 α 의 연속하는 2T개의 승수라면, T 개의 에러를 정정할 수 있다.
[수학식 1]
상기 수학식 1에서, α는 유한 갈로아체 필드 GF(2m)의 원시 원소(primitive element)에 해당한다.
상기 코드 발생 다항식에 의해 생성된 코드워드가 전송되어 전송된 코드워드를 수신하거나, 저장된 코드워드를 인출하는 과정에서, 잡음성분에 의해 코드워드의 에러 패턴으로 나타날 수 있다. 리드 솔로몬 코드에서 발생한 에러 패턴을 처리하여 복원하는 과정은 일반적으로 4단계로 구분할 수 있다.
우선, 에러 정정 과정을 설명하기위해 하나의 코드워드는 m비트가 1심볼을 이루며, N개의 심볼로 구성된 것으로서, 1코드워드는 K개의 정보 심볼과 (N-K)개의 검사 심볼로 이루어진 것으로 가정한다. 이 때, 코드워드 다항식 C(X)는 (N-1)차 다항식이고, '2T'는 'N-K' 와 동일한 값이다. (코드 발생 다항식 근의 개수 = 검사 심볼의 개수) 복호화 과정의 제 1 단계는, 수신된 코드워드 r(X)을 이용하여 신드롬 S0, S1, …, S2T-1을 구하는 것이다. 수신된 코드워드 r(X)는 (N-1)차 다항식으로 수학식으로 표현하면 이고,는 코드워드중 (N-j)번째 수신 심볼에 해당한다. 제 2 단계는, 상기 신드롬 S(X)을 이용하여 에러 위치 다항식 σ(X)의 계수를 구하는 것이다. 제 3 단계는, 상기 에러 위치 다항식σ(X)의 해를 구하는 것으로, 이 근들은 수신 코드워드 r(X)에서 발생된 에러 위치를 나타낸다. 제 4 단계는, 상기 에러 위치와 신드롬을 이용하여 에러값 ei(X)을 계산한다. 신드롬과 에러 위치 다항식의 계수 등은 상기에 제시한 U.S. Pat. No. 4,162,480에 수학적으로 기술되어 있다.
신드롬 S0내지S2T-1은 수신된 코드워드 다항식 r(X)의 X 대신 코드 발생 다항식의 근 α0내지 α2T-1을 각각 대입하여 첨자 순서대로 구해진다.
한편, 수신된 코드워드 r(X)는 원래 코드워드 다항식 c(X)에 에러 다항식 e(X)를 포함하고 있으므로, 하기 수학식 2와 같이 합으로 나태낼 수 있다.
[수학식 2]
코드워드 다항식 c(X)는 코드 생성 다항식 g(X)와 메시지 다항식 i(X)를 곱하여 유도되므로써, 코드 생성 다항식 g(X)의 근을 수신된 코드워드 다항식 r(X)에 대입하여 그 결과가 0이면, 즉 에러 다항식 e(X)가 0이면, 에러가 발생되지 않았음을 의미하고, 신드롬은 모두 0값이 된다.
도 1을 참조하면, Zook가 출원한 미국 특허 번호 4,845,713 호에 개시되어 있는 2T 개의 신드롬 계산 셀(10-0∼10-(2T-1))을 포함하는 종래의 신드롬 계산 장치의 블록도가 예시되어 있다.
j가 0에서 N-1일 때, 수신된 심볼는 신드롬 계산셀(10-0∼10-(2T-1))과 짝지워진다. 계산셀(10-0∼10-(2T-1))은 생성 다항식 g(X)의 각 근()에 대한 신드롬 ()를 각각 구한다.
신드롬 계산셀(10-0∼10-(2T-1))에서는 N개의 심볼 즉, 1개의 코드워드가 수신되었을 때 2T개의 신드롬()이 제공된다. 각 신드롬 계산셀에 입력되는 코드워드 종료신호(CODEWORD_END)가 N개의 심볼의 입력이 끝났음을 알린다. i번째 신드롬 계산셀(10-i)에서는 하기 수학식 3과 같이 계산하므로써 i번째 신드롬를 제공한다.
[수학식 3]
상기 수학식 3에서는 한 코드워드에서 (N-j)번째로 수신된 심볼이고, 심볼 클럭과 동시에 입력된 수신심볼을 나타낸다. 그리고, 덧셈과 곱셈연산은 갈로아체 필드 GF(2m)상에서 이루어진다.
이어서, 도 2 는 도 1에 도시한 종래의 신드롬 계산셀에 대한 개략도로서, i번째 신드롬 계산셀(10-i)은 유한 필드 GF(2m)상의 곱셈기(21)와, 메모리(23), 유한 필드 GF(2m)상의 덧셈기(25), 및 레지스터(27)를 포함하여 구성된다. 신드롬 계산셀의 구조는 메모리의 내용을 제외하면 도 2와 동일하다.
신드롬 계산셀에서는 수학식 3의 가장 안쪽의 괄호에서부터 단계적으로 계산이이루어진다. 이를 위해서 수신된 심볼은부터의 순서로 한번에 하나의 심볼씩, 한 심볼 클럭 주기마다 한 번씩 상기 GF(2m) 덧셈기(25)에 제공된다.
신드롬 중간값(intermediate value)은 상기 레지스터(27)에 저장되는데, 중간값은 상기 수학식 3의 계산과정 중 한단계의 결과로서, 예를 들면에 해당된다. 현재의 코드워드의 첫번째 수신 심볼이 입력되기 전에 상기 레지스터(27)는 이전 코드워드의 종료를 알리는 코드워드 종료신호(CODEWORD_END)에 따라 초기화(RESET)된다.
첫번째 심볼 클럭 주기동안, 상기 GF(2m) 곱셈기(21)에서는 상기 레지스터(27)에서 제공된 초기 중간값 0에다가가 곱해져서 상기 덧셈기(25)에 곱셈된 결과값 0을 제공한다. 코드 생성 다항식의 i번째 근는 상기 곱셈기(21)에 제공되기 위해 상기 메모리(23)에 저장된다.
한편, 첫번째 수신 심볼는 상기 GF(2m)덧셈기(25)에 입력되어 상기 곱셈 결과 0에 더해진 결과값은 상기 레지스터(27)로 입력된다.
두번째 심볼 클럭 주기의 상승에지(positive edri)에서는 첫번째 심볼 클럭 주기동안 구한 중간값 즉,가 상기 레지스터(27)에 입력되어서 저장된다.
두번째 심볼 클럭 주기동안, 상기 레지스터(27)에서 제공된이 상기 곱셈기(21)에 입력되어가 곱해진다. 그 결과인가 상기 덧셈기(25)를 통해서 두번째 심볼클럭 주기동안 덧셈기(25)로 입력된 수신 심볼과 더해져서 중간값를 제공한다. 이 중간값은 세번째 심볼 클럭 주기의 상승 에지에서 상기 레지스터(27)로 입력되어 저장된다.
위에서 기술된 것과 유사한 절차를 반복함으로써 상기 수학식 3의 계산이 N번의 심볼 클럭 주기 동안에 완결되는 것이며, 최종 계산된 신드롬값즉,가 신드롬 계산셀(10-i)로부터 제공된다.
상기에서 기술된 종래의 신드롬 계산 장치에서는 2T 개의 신드롬 계산을 하기 위해 2T개의 신드롬 계산셀을 필요로 한다. 즉, 2T개의 유한 필드 GF(2m)상의 곱셈기와, 유한 필드 GF(2m)상의 덧셈기가 신드롬 계산 장치에 포함되어야만 한다. 따라서, 신드롬 계산 장치를 구현하는데 있어 그 구조가 복잡하며, 상당한 하드웨어와 면적으로 인해 VLSI(very large scale integration)로 구현하기에 다소 어려운 문제점이 있었다.
이에, 본 발명은 상기와 같은 종래의 문제점을 해소하기 위하여 안출된 것으로, 유한 필드 상의 곱셈기와 덧셈기의 수를 줄이고, 심볼 클럭 대신 비트 클럭으로 동작하도록 하여 구조를 단순화 시키고, 제작 비용을 감소 시킴은 물론, 처리시간을 단축시킨 신드롬 계산 장치를 제공하는 데 그 목적이 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 장치는, 리드솔로몬 복호화기에서의 N개 심볼이 포함되어 구성된 코드워드를 수신받아 각 수신 심볼 에러를 정정하기 위하여 2T개의 신드롬을 결정하는 과정중에서, T는 기설정된 양의 정수이며, i는 0부터 2T-1까지의 정수이고, j는 1부터 N까지 일때 수신 심볼는 단위 심볼 클럭에 동기되어 주기마다 입력되는 j 번째 수신 심볼이고, αi는 유한 필드 상의 코드 생성 다항식의 i 차 근 인 조건에서 결정되는 신드롬에 따라 N개의 단계를 거쳐 신드롬을 계산하기 위한 신드롬 계산 장치에 있어서, K와 L이 2T보다 크지 않은 양의 정수일 때, 각각 K개의 신드롬을 제공하는 L 개의 계산셀이 포함되어 있으면서, 각 신드롬 계산셀은, 제 1 세트 K 개 메모리 수단을 포함하고 있으면서, 첫번째 단계이전에는 0으로 초기화됨과 동시에, 각 단계동안에는, 제 1 세트 K 개 메모리 수단 각각에 저장된 내용을 순서대로 제공하는 저장 수단과; 각 단계동안에, 코드 생성 다항식의 K 개 근(αi)을 순서대로 제공하는 제 1 입력 수단; 각 단계동안에, 상기 제 1 입력 수단으로부터 제공된 K의 근과 상기 저장 수단으로부터 제공된 제 1 세트 K개 메모리 수단 내용과 순서대로 곱셈하여 K개의 곱셈결과를 제공하는 유한 필드 GF(2m)상의 곱셈 수단; 및 j1은 1부터 (N-1)까지의 양수이고, j1번째 단계동안에는 K개의 중간값(intermediate value)을 제공함과 동시에 N번째 단계동안에는 K개의 신드롬을 제공하기 위해서, 각 단계동안에는, j번째로 수신된 심볼을 상기 유한 필드 GF(2m)상의 곱셈 수단으로부터 제공된 K 개 곱셈 결과와 각각 더하여 상기 K 메모리 수단에 저장시키는 유한 필드 GF(2m)상의 덧셈 수단을 포함하여 구성되는 것을 특징으로 한다.
도 1은 2T개의 신드롬을 계산하는 종래의 신드롬 계산 장치에 대한 블록도,
도 2는 도 1에 도시한 종래의 신드롬 계산셀에 대한 개략도,
도 3은 본 발명에 따른 신드롬 계산 장치에 대한 블록도,
도 4는 본 발명에 따른 신드롬 계산셀의 제 1실시예에 대한 개략도,
도 5는 본 발명에 따른 신드롬 계산셀의 제 2실시예에 대한 개략도,
도 6은 본 발명에 따른 신드롬 계산셀의 제 3실시예에 대한 개략도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
30-0 : 신드롬 계산 셀 41,51,61 : 유한 필드 GF(2m)상의 곱셈기
43,53,63 : 제 1 입력 수단 45,55,65 : 유한 필드 GF(2m)상의 덧셈기
47,57 : 저장 수단 67 : 중간값용 레지스터부
68 : 신드롬용 레지스터부 69 : 선택 수단
70 : 반전 게이트 71 : 논리합 게이트
R0,R1,R2,R3 : 레지스터
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하고자 한다.
도 3은 본 발명에 따른 신드롬 계산 장치에 대한 블록도로서, 본 발명의 신드롬 계산 장치는 종래의 장치와 유사하게 복수개의 신드롬 계산셀을 포함하여 구성된다. 다만, 종래의 장치와는 달리 본 발명의 신드롬 계산셀은 K가 2T보다 크지않은 1이상의 정수 일때, 도 3에 명시된 K개의 신드롬을 동시에 계산한다.
도 3내지 도 6에서 제시한 실시예에서는 정수 K를 4로 가정하여 단순화 하였다.
본 발명의 신드롬 계산셀(30-i)이 4개의 종래의 계산셀을 대체할 수 있으므로, 도 3에서 보여주는 바와 같이 2T개의 신드롬값을 계산하는데 필요한 신드롬 계산셀은개면 충분하다. 또한, 각 신드롬 계산셀은 비트 클럭에 의해 동작하는 데, 여기서, 비트 클럭(BIT_CLK)은 심볼 클럭(SYMBOL_CLK)보다 K배 빠른 클럭 즉, 심볼 클럭을 K분주한 클럭 신호를 가르킨다.
이어서, 도 4는 본 발명에 따른 신드롬 계산 장치의 제 1실시예에 대한 개략도로서, 0번째부터 3번째까지의 신드롬()을 계산하는 신드롬 계산셀의 일실시예이다.
도 4를 참조하면, 신드롬 계산셀(30-0)은 유한 필드 GF(2m) 곱셈기(41)와,근 입력부(43), 유한 필드 GF(2m) 덧셈기(45), 레지스터부(47)로 구성되어 있다.
도 4의 각 블럭의 기능을 도 2의 블럭과 비교해 볼 때, 도 4의 블럭들은 비트 클럭에 따라 동작하므로 인해, 도 2의 블럭보다 K배의 처리율을 갖는다는 것을 제외하면 유사하다.
상기 레지스터부(47)는 직렬로 연결된 4개의 레지스터(R0∼R3)를 포함하여 구성되어 있다. 그리고, 상기 레지스터들의 입력과 출력을 제어하기 위해서 멀티플렉서(47a)와, 디멀티플렉서(47b)가 더 포함되어 있다. 상기 레지스터(R0∼R3)는 에지-트리거트(edge-triggered) D 플립플롭으로 구현될 수 있다.
상기 신드롬 계산셀(30-0)에서 상기 수학식 3의 가장 안쪽 괄호의 계산부터 단계적으로 수행되어 코드 생성 다항식 g(X)의 4개 근()을 대입한 4개의 신드롬()이 구해진다.
수신된 심볼(첫번째 심볼에서부터 마지막 N번째 심볼의 순서로)은 한번에 하나씩, 한 심볼 클럭 주기에 한개씩 상기 GF 덧셈기(45)로 제공된다.
상기 4개의 신드롬 중간값들은 상기 레지스터부(47)에 포함된 4개 레지스터 R0에서 R3 로 저장된다. 여기서, 상기 중간값은 상기 수학식 3의 계산과정에서 한단계의 결과값 즉,이다.
이제, L번째 세트의 중간값들은 처음 수신된 L개까지의 심볼들()을 사용하여 계산된 2T개의 신드롬 중간값 즉, i가 0에서 2T-1일 때을 가르키고, L번째 세트의 M 번째 중간값은을 가리킨다. 이런 식으로을 계산하는 과정에서 얻어진 중간값은 레지스터 R0에 저장되고,을 계산하는 과정에서 얻어진 중간값은 레지스터 R1에 저장되는 것이다. 현재의 코드워드의 첫번째로 수신된 심볼이 입력 되기 전 상기 레지스터 R0 내지 R3은 초기 중간값 0으로 초기화된다. 다시 말하면, 상기 레지스터들은 이전 코드워드 종료를 나타내는 코드워드 종료 신호(CODEWORD_END)에 따라 초기화된다.
첫번째 심볼 클럭 주기동안 상기 레지스터 R0∼R3로부터 제공된 초기 중간항값 0이 제 1 선택신호(SEL1)에 따라 상기 제 2 멀티플렉서(47b)를 통해 선택되어 상기 GF 곱셈기(41)로 입력된다. 한편, 코드 생성 다항식 g(X)의 근() 이 상기 근 입력부(43)의 메모리에 저장되어 있으면서, 상기 제 1 선택신호에 따라 상기 제 1 멀티플렉서(43a)를 통해 선택되어 상기 GF 곱셈기(41)로 입력된다.
이제, 상기 GF 곱셈기(41)에서는 초기 중간값 0,0,0,0 이 각 비트 클럭 주기마다 하나씩 차례대로 근과 각각 곱해진다. 그 결과값(0,0,0,0)이 상기 GF 덧셈기(45)로 제공된다. 한편, 첫번째로 수신된 심볼은 상기 GF 덧셈기(45)로 입력되어 각각의 초기 중간값에 더해진다. 그 결과 즉이 제 2 선택신호(SEL2)에 따라 상기 디멀티플렉서(47a)를 통해 상기 레지스터 R0내지 R3로 저장된다.
상기와 같은 동작을 위해 상기 제 1 멀티플렉서(43a)는 상기 제 1 선택신호(SEL1)에 따라 주기적으로 근을순서대로 선택하여 한 심볼 클럭 주기(혹은 4비트 클럭 주기)를 주기로하여 상기 GF 곱셈기(41)로 제공한다. 마찬가지로 상기 제 2 멀티플렉서(47b)는 4개의 레지스터 중 하나를 선택하여 그 내용(중간항값)을 상기 GF 곱셈기(41)로 주기적으로 제공한다. 그리고, 상기 디멀티플렉서(47a)는 자신에 입력된 것을 제 2 선택신호(SEL2)에 따라 4개의 레지스터들 중 하나에 주기적으로 한 비트 클럭 주기 동안 하나씩 입력시킨다.
다시말해서, 첫번째 심볼 주기의 첫번째 비트클럭 주기동안에는 R0에서 제공된 초기 중간값 0이 상기 GF 덧셈기(45)를 통해에 더해져서 첫번째 세트의 첫번째 중간값을 상기 디멀티플렉서(47a)를 통해 레지스터 R0에 입력된다. 이와같은 절차를 4번 반복함으로써, 중간값이 레지스터 R0∼R3에 저장되는 것이다.
두번째 심볼 클럭 주기 동안, 레지스터 R0∼R3에 저장된 중간값이 상기 멀티플렉서(47b)를 통해 상기 GF 곱셈기(41)로 입력된다. 상기 GF 곱셈기(41)에서는 레지스터 R0∼R3로부터 중간값이 차례대로 1비트 클럭 주기에 하나씩 각각과 곱해져서 i가 0에서 3일 때, 그 곱셈결과를 상기 GF 덧셈기(45)로 제공된다. 상기 GF 덧셈기(45)에서는 두번째 심볼 클럭 주기동안 제공된 두번째 수신심볼에 차례대로 더해진다.
다시말해서, 두번째 심볼 클럭 주기의 첫번째 비트 클럭 주기 동안에는 레지스터 R0으로부터 제공된 첫번째 세트의 첫번째 중간값인과 곱해지고, 상기 곱셈기(41)의 출력이에 더해져서 두번째 세트의 첫번째 중간값을 다시 상기 레지스터 R0에 제공하여 저장한다. 상기의 과정을 4번 반복함으로써 i가 0에서 3 일 때, 두번째 세트의 중간값 4개가 4개의 레지스터 R0∼R3 에 저장된다. 이 과정에서 상기 디멀티플렉서(47a)는 두번째 세트의 0번째에서 3번째 중간값()를 상기 레지스터(R0∼R3)로 입력시키게 되는데, 상기 제 2 선택신호(SEL2)에 따라 선택적으로 배분한다.
상기에 기술한 과정을 반복함으로써, 상기 수학식 3의 계산이 N번의 심볼 클럭 주기에 걸쳐서 완결되어진다. 즉, N번째 심볼 클럭 주기가 끝나면, 신드롬이 상기 레지스터 R0,R1,R2,R3에 저장된다.
이상과 같이 최종 계산된 신드롬들을 제공하는 방식은 신드롬 계산장치가 사용되는 전체 시스템의 요구에 따라 달라질 수 있다. 예를 들어, N번째 심볼 클럭 주기 후에, 신드롬들은 제 1 선택신호(SEL1)에 따라 상기 제 2 멀티플렉서(47b)를 통해 리드솔로몬 복호기의 다른 부분에 저장되어 수신된 심볼에 존재하는 에러를 수정하는 데 사용되도록 차례대로 제공될 수도 있으며, 신드롬들은 상기 제 2 멀티플렉서(47b)를 거치지않고, 상기 레지스터(R0∼R3)들의 출력 포트에서 직접 병렬 방식으로 제공될 수도 있다.
신드롬이 제공되면, 코드워드 종료신호(CODEWORD_END)에 따라 다음 코드워드의 처리를 위해서 상기 레지스터들은 0으로 초기화된다.
상기에 기술한 첫번째와 두번째 심볼 클럭 주기 동안에 각 비트 클럭 주기에 따라 상기 레지스터의 값을 표 1에 나타내었다. 표 1에서 각 행은 각 비트 클럭 주기에 해당한다.
[표 1]
이어서, 도 5는 본 발명에 따른 신드롬 계산셀의 제 2실시예에 대한 개략도로서, 신드롬 계산셀(30-0)은 유한 필드 GF(2m)상의 곱셈기(51)와, 근 입력부(53), 유한 필드 GF(2m)상의 덧셈기(55), 레지스터부(57)로 구성되어 있다.
도 4에 예시된 신드롬 계산셀과 비교해보면, 도 4의 레지스터부(47)는 멀티플렉서와 디멀티플렉서에 병렬로 연결된 4개의 레지스터를 포함하여 구성되어 있으나, 반면, 도 5의 레지스터부(57)는 직렬로 연결된 4개의 레지스터만을 포함하여 구성되어있다. 상기 레지스터부(57)만 다를 뿐 나머지 구성요소는 도 4의 실시예와 본질적으로 동일하다.
이에 따라 동작의 차이점은, 도 4의 제1 실시예에서는 각 중간값들이 디멀티플렉서(47a)를 통해서 레지스터에 저장된다. 반면, 도 5의 제2 실시예에서는 모든 중간값들이 초기에 레지스터 R0에 입력되어 한 비트 클럭 주기동안 저장되었다가 상기 레지스터R0의 내용이 레지스터 R1로 시프트되고, 다음 비트 클럭주기동안 저장되고, 다음 레지스터 R2로, 다음 레지스터 R3로 시프트되어 이동한다. 상기 레지스터 R3의 출력은 상기 GF 곱셈기(51)로 입력된다. 이와 같이 동작하는 도 5의 상기 레지스터부(57)의 전체적인 기능은, 하나의 심볼 클럭만큼 지연되면서 저장되므로써 도 4의 제 1 실시예와 동일한 기능을 갖는다.
따라서, 도 5의 동작을 통해 첫번째 심볼 클럭 주기와 두번째 심볼 클럭주기의 각 비트 클럭 주기에 대한 상기 레지스터부(57)의 레지스터 R0∼R3의 내용을 표 2에 나타내었다. 표 2에서 각 행은 각 비트 클럭 주기에 해당한다.
[표 2]
상기 표 1과 표 2에서 보여지는 바와 같이, 도 4와 도 5의 실시예는 동일한 동작을 수행한다.
이어서, 도 6은 본 발명에 따른 신드롬 계산셀의 제 3실시예에 대한 개략도로서, 신드롬 계산셀(30-0)은 도 5에 제시된 것과 동일한 유한 필드 GF(2m) 곱셈기(61)와, 근 입력부(63), 유한 필드 GF(2m) 덧셈기(65)를 포함하여 구성된다. 그러나, 도 5에 제시된 신드롬 계산셀은 하나의 레지스터부만을 포함하는 반면, 도 6에 제시된 신드롬 계산셀은 2개의 레지스터부, 즉, 중간값용 레지스터부(67)와 신드롬용 레지스터부(68)를 포함한다. 또한, 상기 두 레지스터부를 제어하기 위하여 제 2멀티플레서(69)와, 반전 게이트(70), 및 논리합 게이트(71)를 포함한다. 상기 각 구성요소들의 기능은 레지스터부(67, 68)의 기능만 제외하면, 도 5의 제 2 실시예와 본질적으로 동일하다.
상기 중간값용 레지스터부(67)와 신드롬용 레지스터부(68)의 내부 구조는 도 4와 도 5에 예시한 레지스터부(47, 57)과 동일 할수도 있다. 즉, 상기 중간값용 레지스터부(67)는 첫번째 심볼 클럭 주기부터 N-1번째 심볼 클럭주기동안 중간값을 저장하면서, 상기 제 2 멀티플렉서(69)를 통해 상기 GF 곱셈기(61)에 제공한다. 한편, 상기 신드롬 레지스터부(68)는 N-1번째 심볼 클럭 주기동안 얻어진 중간값들을 저장하고, N번째 심볼 클럭 주기 동안에 저장한 상기 중간값들을 출력한다.
상기 동작을 수행하기 위해 쓰이는 제어 신호로는 r0_FLAG 과 r1_FLAG 있다. 상기 r0_FLAG 는 코드워드의 마지막 수신 심볼이 수신되고 있음을 나타내고, 상기 r1_FLAG 는 코드워드의 마지막 두번째 수신 심볼이 수신되고 있음을 나타낸다. 본 실시예에서는 상기 r0_FLAG 은 N 번째 심볼 클럭 주기동안에만 레벨값 '1'이고, 그외 심볼 클럭 주기에서는 레벨값 '0'이다. 또한, 상기 r1_FLAG 은 N-1 번째 심볼 클럭 주기동안에만 레벨값 '1'이고, 그외 심볼 클럭 주기에서는 레벨값 '0'이다. 이와 같은 신호 레벨값의 변화로 인해, 상기 논리합 게이트(71)의 출력신호 r1_FLAG는 (N-1)번째와 N번째 심볼 클럭 주기동안에는 레벨값 '1'이고, 1번째 심볼에서 (N-2)번째 심볼 클럭 주기 동안에는 0이다. 상기 r0_FLAG는 상기 반전 게이트(70)를 통해서 반전되고, 반전된 r0_FLAG 는 상기 중간값용 레지스터부(67)의 리셋 단자(RST)로 제공된다.
따라서, 상기 중간값용 레지스터부(67)는 1번째 심볼 클럭에서 (N-1)번째 심볼 클럭 주기동안 상기 도 5의 레지스터부(57)와 동일한 동작을 수행한다. 즉, N번째 심볼 클럭 주기동안 상기 중간값용 레지스터부(67)는 상기 r0_FLAG에 따라 리세트되고, 그 출력은 무효이다. 그리고, 상기 제 2 멀티플렉서(69)는 상기 r0_FLAG를 선택 제어 포트(SEL)로 입력받고, r0_FLAG 에 따라 1번째 심볼 클럭에서 (N-1)번째 심볼 클럭 주기동안에는 입력 포트 0을 선택하여, 상기 중간 레지스터부(67)의 출력값중에서 하나를 선택하고, N번째 심볼 클럭 주기 동안에는 입력 포드 1을 선택하여, 상기 신드롬용 레지스터부(68)의 출력값중에서 하나를 선택하여 상기 GF 곱셈기(61)로 제공한다.
한편, 상기 r1_FLAG는 상기 신드롬 레지스터부(68)에 포함된 레지스터들을 동작시키도록 인에이블단자(ENA)로 제공되어서, 레지스터들은 (N-1)번째와 N번째 심볼 클럭 주기동안 동작된다.
그러므로, 상기 신드롬 레지스터부(68)는 (N-1)번째 심볼 클럭 주기의 시작에 맞춰서 상기 GF 덧셈기(65)로부터 상기 중간값들을 입력 받기 시작한다. 이제, N번째 심볼 클럭 주기의 시작에서 (N-1)번째 심볼 클럭 주기 동안 얻어진 (N-1)번째 세트의 중간값들 즉,이 상기 신드롬 레지스터부(68)로 입력되어진다. 그러므로, N번째 심볼 클럭주기 동안 (N-1)번째 세트의 중간값들이 상기 신드롬 레지스터부(68)로부터 상기 멀티플렉서(69)를 통해서 상기 GF 곱셈기(61)로 입력되므로써, 신드롬을 결정하는 데 사용되도록 차례대로 제공되는 것이다. (N-1)번째 심볼 클럭 주기동안에는 상기 두 레지스터부들(67,68)이 모두 입출력 기능을 수행한다. 이에 따라서 (N-1)번째 심볼 클럭 주기 동안에는 (N-2)번째 세트의 중간값들이 상기 중간값용 레지스터부(67)로부터 상기 GF 곱셈기(61)로 제공되어 상기 신드롬 레지스터부(68)로 입력되는 (N-1)번째 세트의 중간값을 결정하는데 사용되는 것이다.
상기에 기술한 바와 같이, 본 발명의 신드롬 계산셀은 심볼 클럭 보다 K배 빠른 비트 클럭을 사용하므로써, K개의 신드롬을 동시에 제공하고, 그 결과 신드롬 계산셀을 최고개 까지 감소시키는 효과가 있다. 여기서, K는 상수 4에만 국한되지 않으며, 1이상의 어떤 상수도 될수 있다. 만약, 1개의 심볼 클럭 주기가 8개의 비트 클럭과 같다면, 근 입력부에는 8개의 근을 저장하고, 레지스터부는 8개의 레지스터를 포함하고, 신드롬 계산셀의 개수는개가 된다. 따라서, 유한 필드 GF 덧셈기와 곱셈기의 개수도로 감소되는 것이다.
이를 뒷받침하기 위해서는 유한 필드 GF 상의 곱셈기가 충분히 빠른 속도로 동작해야한다. 그러므로, 1개의 심볼 클럭 주기에 상응하는 비트 클럭 주기의 수는 곱셈기의 성능을 고려하여 결정된다.
본 명세서에서는 본 발명을 특정한 실시예들과 관련하여서만 설명하였으나, 당업자들은 다음의 청구항들에서 정의된 발명의 의도와 범위를 벗어나지 않는 한도내에서 다양하게 수정할 수 있을 것이다.
이상에서 살펴본 바와 같이, 본 발명은 신드롬 계산 장치에 포함된 하드웨어수(GF 곱셈기, GF 덧셈기)가 감소되고, 심볼 클럭을 K분주한 비트 클럭을 사용하므로써, 하드웨어의 복잡성을 줄이고, 제작 비용도 감소됨은 물론 처리 시간도 단축시킨 효과가 있는 것이다.

Claims (15)

  1. 리드솔로몬 복호화기에서의 N개 심볼이 포함되어 구성된 코드워드를 수신받아 각 수신 심볼 에러를 정정하기 위하여 2T개의 신드롬을 결정하는 과정중에서, T는 기설정된 양의 정수이며, i는 0부터 2T-1까지의 정수이고, j는 1부터 N까지 일때 수신 심볼는 단위 심볼 클럭에 동기되어 주기마다 입력되는 j 번째 수신 심볼이고, αi는 유한 필드 상의 코드 생성 다항식의 i 차 근으로 하는 조건에서 결정되는 신드롬 계산식에 따라 N개의 단계를 거쳐 신드롬을 계산하기 위한 신드롬 계산 장치에 있어서,
    K와 L이 2T보다 크지 않은 양의 정수일 때, 각각 K개의 신드롬을 제공하는 L 개의 계산셀이 포함된 신드롬 계산장치에서의 각 신드롬 계산셀은,
    제 1 세트 K 개 메모리 수단을 포함하고 있으면서, 첫번째 단계 이전에는 0으로 초기화됨과 동시에, 각 단계동안에는, 제 1 세트 K 개 메모리 수단 각각에 저장된 내용을 순서대로 제공하는 저장 수단(47)과;
    각 단계동안에, 코드 생성 다항식의 K 개 근(αi)을 순서대로 제공하는 제 1 입력 수단(43);
    각 단계동안에, 상기 제 1 입력 수단(43)으로부터 제공된 K의 근과 상기 저장 수단(47)으로부터 제공된 제 1 세트 K개 메모리 수단 내용과 순서대로 곱셈하여 K개의 곱셈결과를 제공하는 유한 필드 GF(2m)상의 곱셈 수단(41); 및
    j1은 1부터 (N-1)까지의 양수이고, j1번째 단계 동안에는 K개의 중간값(intermediate value)을 제공함과 동시에 N번째 단계동안에는 K개의 신드롬을 제공하기 위해서, 각 단계 동안에는, j번째로 수신된 심볼을 상기 유한 필드 GF(2m)상의 곱셈 수단(41)으로부터 제공된 K 개 곱셈 결과와 각각 더하여 상기 K 메모리 수단에 저장시키는 유한 필드 GF(2m)상의 덧셈 수단(45)을 포함하여 구성되는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  2. 제 1 항에 있어서, 상기 저장 수단(47)은 상기 유한 필드 GF(2m)상의 덧셈 수단(41)으로부터 제공된 K개의 중간값 혹은 K개의 신드롬이 상기 제 1 세트 K개 메모리 수단으로 순서대로 저장되도록 변환하는 수단(47a); 및
    제 1 세트 K개 메모리 수단 내용을 상기 유한 필드 GF(2m)상의 곱셈 수단(41)으로 순서대로 제공하도록 변환하는 수단(47b)를 추가로 포함하는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  3. 제 2 항에 있어서, 각 단계는 한 심볼 클럭에 해당하고, 심볼 클럭보다 K배 빠른 비트 클럭에 따라 상기 제 1 세트의 메모리 수단이 작동되는 D플립플롭으로 구성된 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  4. 제 1 항에 있어서, 상기 저장 수단(47)에 포함된 제 1 세트 K개 메모리 수단은 First-In-First-Out 구조로서, 직렬 연결되어 있는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  5. 제 1 항에 있어서, 상기 제 1 입력 수단(43)은 코드 생성 다항식의 K개 근을 저장하기 위한 제 2 세트 K 개 메모리 수단과;
    각 단계 동안에, 상기 제 2 세트 K개 메모리 수단에 저장된 코드 생성 다항식의 K개 근을 차례대로 제공하기 위한 선택 수단을 포함하여 구성되는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  6. 제 1 항에 있어서, 상기 T 는 8이고, L은 2이고, K는 8인 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  7. 제 6 항에 있어서, 리드솔로몬 복호화기는 (204, 188) 리드 솔로몬 복호화기인 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  8. 리드솔로몬 복호화기에서의 N개 심볼이 포함되어 구성된 코드워드를 수신받아 각 수신 심볼 에러를 정정하기 위하여 2T개의 신드롬을 결정하는 과정중에서, T는 기설정된 양의 정수이며, i는 0부터 2T-1까지의 정수이고, j는 1부터 N까지 일때 수신 심볼는 단위 심볼 클럭에 동기되어 주기마다 입력되는 j 번째 수신 심볼이고, αi는 유한 필드 상의 코드 생성 다항식의 i 차 근으로 하는 조건에서 결정되는 신드롬 계산식에 따라 N개의 단계를 거쳐 신드롬을 계산하기 위한 신드롬 계산 장치에 있어서,
    K와 L이 2T보다 크지 않은 양의 정수일 때, 각각 K개의 신드롬을 제공하는 L 개의 계산셀이 포함된 신드롬 계산장치에서의, 각 신드롬 계산셀은,
    제 1 세트 K 개 메모리 수단을 포함하고 있으면서, 첫번째 단계 이전에는 0으로 초기화됨과 동시에, 각 단계 동안에는, 제 1 세트 K개 메모리 수단 각각에 저장된 내용을 순서대로 제공하는 제 1 저장 수단(67)과;
    제 2 세트 K 개 메모리 수단을 포함하고 있으면서, 각 단계 동안에는, 제 2 세트 K 개 메모리 수단 각각에 저장된 내용을 순서대로 제공하는 제 2 저장 수단(68);
    j1은 1부터 (N-1)까지의 양수이고, j1번째 단계동안에는 상기 제 1 저장 수단(67)으로부터 제공된 제 1 세트 K개 메모리의 내용을 차례대로 선택하고, N번째 단계 동안에는 상기 제 2 저장 수단(68)으로부터 제공된 제 2 세트 K개 메모리의 내용을 차례대로 선택하여 제공하는 제 1 선택 수단(69);
    각 단계동안에, 코드 생성 다항식의 K 개 근(αi)을 순서대로 제공하는 제 1 입력 수단(63);
    각 단계동안에, 상기 제 1 입력 수단(63)으로부터 제공된 K의 근과 상기 선택 수단(69)으로부터 제공된 제 1 세트 혹은 제 2 세트 K개 메모리 수단의 내용을 순서대로 곱셈하여 K개의 곱셈 결과를 제공하는 유한 필드 GF(2m)상의 곱셈 수단(61); 및
    j1은 1부터 (N-1)까지의 양수이고, j1번째 단계동안에는 K개의 중간값(intermediate value)을 상기 제 1 및 제 2 저장 수단(67, 68)으로 제공함과 동시에, N번째 단계동안에는 K개의 신드롬을 상기 제 1 및 제 2 저장수단(67, 68)으로 제공하기 위해서, 각 단계동안에는, j번째로 수신된 심볼과 상기 유한 필드 GF(2m)상의 곱셈 수단(61)으로부터 제공된 K 개 곱셈 결과를 각각 더하여 K개의 중간값 혹은 K개의 신드롬을 제공하는 유한 필드 GF(2m)상의 덧셈 수단(65)을 포함하여 구성되는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  9. 제 8 항에 있어서, 상기 제 1 및 제 2 저장 수단(67, 68)은 상기 유한 필드 GF(2m)상의 덧셈 수단(65)로부터 제공된 K개의 중간값 혹은 K개의 신드롬을 제 1 세트 및 제 2 세트 K개 메모리 수단으로 제공하기 위한 수단; 및
    상기 제 1 세트 및 제 2 세트 K개 메모리 수단의 내용을 순서대로 제공하기 위한 변환 수단을 추가적으로 포함하는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  10. 제 8 항에 있어서, 각 단계는 한 심볼 클럭에 해당하고, 심볼 클럭보다 K배 빠른 비트 클럭에 따라 상기 메모리 수단이 작동되는 D플립플롭으로 구성된 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  11. 제 8 항에 있어서, 상기 제 1 및 제 2 저장 수단(67, 68)에 포함된 상기 제 1 세트 및 제 2 세트 K개 메모리 수단은 First-In-First-Out 구조로서, 각각의 구조는 직렬 연결되어 있는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  12. 제 8 항에 있어서, 상기 제 1 입력 수단(63)은 코드 생성 다항식의 K개 근을 저장하기 위한 제 3 세트 K 개 메모리 수단과;
    각 단계 동안에, 상기 제 3 세트 K개 메모리 수단에 저장된 코드 생성 다항식의 K개 근을 차례대로 제공하기 위한 제 2 선택 수단을 포함하여 구성되는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  13. 제 8 항에 있어서, 제 1 세트의 K개 메모리 수단이 N번째 심볼 클럭 주기 동안에 리세트되고, 제 2 세트의 K개 메모리 수단이 (N-1)번째와 N번째 심볼 클럭 주기 동안에 인에이블되어 동작하는 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  14. 제 8 항에 있어서, 상기 T 는 8이고, L은 2이고, K는 8인 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
  15. 제 14 항에 있어서, 리드솔로몬 복호화기는 (204, 188) 리드 솔로몬 복호화기인 것을 특징으로 하는 에러 정정 신드롬 계산 장치.
KR1019960060086A 1996-11-29 1996-11-29 에러 정정 신드롬 계산 장치 KR100192803B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960060086A KR100192803B1 (ko) 1996-11-29 1996-11-29 에러 정정 신드롬 계산 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960060086A KR100192803B1 (ko) 1996-11-29 1996-11-29 에러 정정 신드롬 계산 장치

Publications (2)

Publication Number Publication Date
KR19980040848A KR19980040848A (ko) 1998-08-17
KR100192803B1 true KR100192803B1 (ko) 1999-06-15

Family

ID=19484835

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960060086A KR100192803B1 (ko) 1996-11-29 1996-11-29 에러 정정 신드롬 계산 장치

Country Status (1)

Country Link
KR (1) KR100192803B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9467174B2 (en) 2014-03-14 2016-10-11 Samsung Electronics Co., Ltd. Low complexity high-order syndrome calculator for block codes and method of calculating high-order syndrome

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9467174B2 (en) 2014-03-14 2016-10-11 Samsung Electronics Co., Ltd. Low complexity high-order syndrome calculator for block codes and method of calculating high-order syndrome

Also Published As

Publication number Publication date
KR19980040848A (ko) 1998-08-17

Similar Documents

Publication Publication Date Title
US5446743A (en) Coefficient updating method and apparatus for Reed-Solomon decoder
US4649541A (en) Reed-Solomon decoder
US5170399A (en) Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack
US4873688A (en) High-speed real-time Reed-Solomon decoder
US4958349A (en) High data rate BCH decoder
US4928280A (en) Fast processor for multi-bit error correction codes
US5805617A (en) Apparatus for computing error correction syndromes
US5440570A (en) Real-time binary BCH decoder
EP0249982A2 (en) Decoder
US5396502A (en) Single-stack implementation of a Reed-Solomon encoder/decoder
JPH0728227B2 (ja) Bch符号の復号装置
US5878058A (en) Apparatus for determining an error locator polynomial for use in a reed-solomon decoder
KR19990016134A (ko) 고속 시리얼 에러 위치 다항식 계산회로
KR100258951B1 (ko) 리드-솔로몬(rs) 복호기와 그 복호방법
KR100192804B1 (ko) 리드 솔로몬 복호화기에서의 다항식 평가 장치
US4298981A (en) Decoding shortened cyclic block codes
KR100192803B1 (ko) 에러 정정 신드롬 계산 장치
JP3614978B2 (ja) ガロア体の除算方法および除算装置
EP0793352B1 (en) Apparatus for determining the error evaluator polynomial for use in a Reed-Solomon decoder
JP2662472B2 (ja) 誤り訂正処理用シンドローム演算回路
EP0584864B1 (en) A hardware-efficient method and device for encoding BCH codes and in particular Reed-Solomon codes
Lee et al. An efficient recursive cell architecture of modified Euclid's algorithm for decoding Reed-Solomon codes
KR100192802B1 (ko) 리드 솔로몬 디코더의 에러값 계산 및 정정 장치
TWI523437B (zh) Bch碼編碼與癥狀計算共用設計電路及決定該共用設計電路的方法
US5751732A (en) Polynomial evaluator for use in a reed-solomon decoder

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090106

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee