KR0175273B1 - 리드 솔로몬 복호기의 에러값 계산 장치 - Google Patents
리드 솔로몬 복호기의 에러값 계산 장치 Download PDFInfo
- Publication number
- KR0175273B1 KR0175273B1 KR1019960051682A KR19960051682A KR0175273B1 KR 0175273 B1 KR0175273 B1 KR 0175273B1 KR 1019960051682 A KR1019960051682 A KR 1019960051682A KR 19960051682 A KR19960051682 A KR 19960051682A KR 0175273 B1 KR0175273 B1 KR 0175273B1
- Authority
- KR
- South Korea
- Prior art keywords
- field
- multiplier
- output
- error
- gates
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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/1515—Reed-Solomon codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 리드 솔로몬 복호기(Reed Solomon decoder)의 에러값(error value) 계산 장치에 관한 것으로, 그 하드웨어(hardware)의 구성 중 필드 가산기와 필드 승산기의 수를 감소하여 작은 크기의 에러값 계산 장치를 구성하고, 이에 따라 빠른 에러값 계산을 수행한다.
Description
본 발명은 리드 솔로몬 복호기(Reed Solomon decoder)에 관한 것으로서, 구체적으로는 리드 솔로몬 복호기의 에러값(error value) 계산 장치에 있어서 그 하드웨어(hardware)의 크기가 감소되어 빠른 에러값 계산을 수행하는 리드 솔로몬 복호기의 에러값 계산 장치에 관한 것이다.
최근의 디지털 영상 신호 압축 기술의 발달은 좁은 주파수 대역에서 다량의 영상 신호를 전송하는 것을 가능하게 하였다. 압축된 영상 신호가 잡음이 존재하는 전송로를 통하여 전송 될 때에는 잡음으로 인한 에러가 발생하게 된다. 수신시에 에러가 크지 않더라도 이를 압축 복원을 할 경우 무시할 수 없는 에러로 발전할 수 있다. 따라서 압축된 데이터의 전송시에는 매우 낮은 에러 확률을 요구하게 된다.
디지털 텔레비전(digital television)과 같은 방송 시스템에서는 에러가 발생한다 하더라도 재 전송이 불가능하다. 그러므로 어느 정도의 에러가 있을 경우에도 올바른 에러 보정을 가능하게 하는 전진 에러 검출(FEC, forward error correction) 기술이 많이 쓰이게 되었다. 전진 에러 검출 기술 중에 가장 많이 사용되는 것 중 하나가 리드 솔로몬 코드(Reed Solomon code; 이하 'RS 코드'라 약칭함)이다.
RS 코드를 사용하는 RS 복호기(RS decoder)내에는 에러를 보정하기 위하여 체인즈 검출 블록(Chien's searching block), 에러값 계산 블록(error value calculation block)과 에러 보정 블록(error correction block)이 구비되어 에러의 위치를 검출하고, 이 에러의 크기 계산 및 보정을 하는 기능을 수행한다. 특히 상기 에러값 계산 블록은 RS 복호기내에서 에러의 크기를 찾아내는 기능을 수행한다.
구체적으로, 상기 에러값 계산 블록에 의한 에러값의 계산은 다음과 같다.
에러값 계산 방법은, 에러 위치 다항식(error locator polynomial)과 에러 추정 다항식(error evaluator polynomial)에 갈로아 필드상의 원소들을 대입하여 그 결과값으로 에러의 크기를 찾아내는 것으로 하기 수학식 1과 같다.
도 1은 종래의 RS 복호기의 에러값 계산 블록의 일 예를 보여주는 회로도이다.
도 1에 도시된바와 같이, 종래의 에러값 계산 블록은 에러 위치 다항식의 해당 계수가 저장되는 제1 계수 입력 버퍼(10)와, 에러 추정 다항식의 해당 계수가 저장되는 제2 계수 입력 버퍼(20)와, 복수개의 원소 승산기(12-1∼12-3, 22-1∼22-8)와, 복수개의 레지스터(15-1∼15-3, 25-1∼25-8)와, 제1 및 제2 MOD-2 가산기(18, 28)와, 역원소(inverse element)를 위한 ROM(30)과, 상기 ROM(32)과 상기 제2 MOD-2 가산기(28)의 출력을 각각 입력받아 승산하여 출력하는 필드 승산기(32)로 구성된다.
그리고 상기 에러값 계산 블록을 구현하는데 필요한 하드웨어의 크기는 하기 표 1 및 표 2와 같다.
원소 승산기 | 레지스터(1바이트) | MOD-2 가산기 | 필드 승산기 | ROM |
145 게이트 | 12 개 | 84 게이트 | 1 개 | 256 바이트 |
원소 승산기 | 레지스터(1바이트) | MOD-2 가산기 | 필드 승산기 | ROM |
415 게이트 | 24 개 | 168 게이트 | 1 개 | 256 바이트 |
상기 표 1은 채널(channel)상의 에러가 삭제(erasure)는 존재하지 않고 오직 에러만 존재하는 경우 필요한 하드웨어의 크기를 나타내는 표이다. 그리고 표 2는 채널 상에 삭제와 에러가 동시에 존재하는 경우 필요한 하드웨어의 크기를 나타내는 표이다.
상기 표 1 및 표 2에 나타낸바와 같이, 채널 상에 삭제와 에러가 동시에 존재한다면 필요한 하드웨어의 크기는 적어도 그렇지 않은 경우보다 2배 이상이 더 커지게 된다.
한편, RS 복호기에 사용되는 승산기는 2가지가 있는데 하나는 원소(element) 승산기로 승산기의 입력값 중 하나가 고정된 상수값일 때 사용되는 것이다. 다른 하나는 필드(field) 승산기로서 입력값이 2개 모두 변수 일 때 사용하는 것이다. 하드웨어의 크기는 원소 승산기가 필드 승산기에 비하여 상당히 작다.
이상과 같은 종래의 기술에서 사용되는 갈로아 필드상의 승산기는 원소 승산기이다. 원소 승산기의 하드웨어 크기가 필드 승산기에 비하여 작지만 에러값 계산 블록에서 사용되는 원소 승산기의 수가 1.5t 또는 3t개인 점을 감안한다면 에러값 계산 블록에서 사용되는 승산기 및 가산기의 크기를 줄이는 방법이 필요하다.
본 발명의 목적은 상술한 문제점을 해결하기 위해 제안된 것으로서, 최소한의 하드웨어를 사용하여 에러값의 계산이 가능한 RS 복호기의 에러값 계산 장치를 제공하는데 있다.
도 1은 종래의 RS 복호기의 에러값 계산 블록의 일 예를 보여주는 회로도,
도 2는 본 발명의 실시예에 따른 RS 복호기의 에러값 계산 장치의 회로도,
도 3은 도 2에 도시된 각 부분의 동작에 따른 타이밍도.
*도면의 주요 부분에 대한 부호의 설명*
10, 20, 50, 60 : 계수 입력 버퍼12-1∼12-3, 22-1∼22-8, : 원소 승산기
15-1∼15-3, 25-1∼25-8, 42, 46, 52, 56 : 레지스터
18, 28 : MOD-2 가산기30, 62 : ROM
44, 54, 64 : 필드 승산기48, 58 : 필드 가산기
상술한 목적을 달성하기 위한 본 발명의 특징에 의하면, 리드 솔로몬 복호기의 에러값 계산 장치는 : 갈로아 필드상의 원소를 제공받아 승산하는 원소 승산기와; 상기 원소 승산기의 출력을 입력받아 상기 원소 승산기로 궤환 입력하는 제1 레지스터와; 상기 원소 승산기의 출력과 해당 입력을 제공받아 승산하여 출력하는 제1 필드 승산기와; 상기 제1 필드 승산기의 출력과 해당 입력을 제공받아 가산하여 출력하는 제1 필드 가산기와; 상기 제1 필드 가산기의 출력을 입력받아 상기 제1 필드 승산기로 궤환 입력하는 제2 레지스터와; 오류 추정 다항식의 계수를 입력받아 상기 제1 필드가산기로 제공하는 제1 계수 입력 버퍼와; 상기 제1 필드 가산기의 출력을 입력받아 출력하는 제3 레지스터와; 상기 원소 승산기가 출력과 해당 입력을 제공받아 승산하여 출력하는 제2 필드 승산기와; 상기 제2 필드 승산기의 출력과 해당 입력을 제공받아 가산하여 출력하는 제2 필드 가산기와; 상기 제2 필드가산기의 출력을 입력받아 상기 제2 필드 승산기로 궤환 입력하는 제4 레지스터와; 오류 위치 다항식의 계수를 입력받아 상기 제2 필드 가산기로 제공하는 제2 계수 입력 버퍼와; 상기 제4 레지스터의 출력을 입력받아 이에 응답하여 해당 데이터를 출력하는 역원소 출력부와; 상기 제3 레지스터와 상기 역원소 출력부의 출력을 각각 입력받아 승산하여 출력하는 제3 필드 승산기를 포함한다.
이 실시예에 있어서, 상기 제1 내지 제3 필드 승산기는 64개의 AND 게이트와, 83개의 EOR 게이트로 구성되어 1 사이클에 승산이 이루어진다.
이 실시예에 있어서, 상기 제1 내지 제3 필드 승산기는 32개의 AND 게이트와, 48개의 EOR 게이트와, 소정의 비트 수의 8개의 레지스터와, 8비트 입력의 멀티플렉서로 구성되어 2 사이클에 승산이 이루어진다.
이 실시예에 있어서, 상기 제1 내지 제3 필드 승산기는 16개의 AND 게이트와, 14개의 EOR 게이트와, 소정 비트 수의 10개의 레지스터와, 2개의 4비트 입력의 멀티플렉서로 구성되어 4 사이클에 승산이 이루어진다.
이 실시예에 있어서, 상기 제1 내지 제3 필드 승산기는 8개의 AND 게이트와, 12개의 EOR 게이트와, 소정의 비트 수의 8개의 레지스터를 포함하여 구성되어 8 사이클에 승산이 이루어진다.
이 실시예에 있어서, 상기 제1 및 제2 필드 가산기는 8개의 EOR 게이트로 구성된다.
실시예
이하 본 발명의 실시예를 첨부된 도면에 의거하여 상세히 설명한다.
도 2는 본 발명의 실시예에 따른 RS 복호기의 에러값 계산 장치의 회로도이고, 도 3은 도 2에 도시된 각 부분의 동작에 따른 타이밍도이다.
도 2에 도시된바와 같이, 본 발명의 실시예에 따른 RS 복호기의 에러값 계산 장치는 원소 승산기(40)와, 제1 내지 제4 레지스터(42, 46, 52, 56)와, 제1 내지 제3 필드 승산기(44, 54, 64)와, 제1 및 제2 필드 가산기(48, 58)와 제1 및 제2 계수 입력 버퍼(50, 60)와, 역원소 출력부(62)를 포함하여 구성된다.
상기 원소 승산기(40)에 의한 계산 방법은 하기의 수학식 2와 같다.
상기 제1 레지스터(42)는 8 사이클마다 데이터를 입력받고, 초기값은 '1'이다.
상기 제1 내지 제3 필드 승산기(44, 54, 64)는 구현방법에 따라 하드웨어의 크기가 달라진다. 하기 표 3은 상기 필드 승산기의 구현 방법에 따른 하드웨어의 크기를 나타내는 것이다.
구현방법게이트 | 1 사이클 | 2 사이클 | 4 사이클 | 8 사이클 |
AND | 64 | 32 | 16 | 8 |
EOR | 83 | 48 | 14 | 12 |
레지스터 | 0 | 8 | 10 | 8 |
그 외 | 0 | 8 입력멀티플렉서1 개 | 4 입력멀티플렉서2 개 | 0 |
상기 제1 및 제2 필드 가산기(48, 58)는 갈로아 필드상의 가산기로서 단지 8개의 EOR 게이트로 구성이 가능하다.
상기 제2 레지스터(46)는 상기 제1 필드 가산기(48)의 출력값을 입력으로 받아들이고, 8 사이클(cycle)마다 오류 위치 다항식의 최고 차수의 계수값으로 설정된다. 상기 제1 계수 입력 버퍼(50)는 오류 추정 다항식의 계수를 1사이클마다 입력받는다. 상기 제3 레지스터(52)는 출력 레지스터로 8 사이클마다 데이터를 받아들인다.
상기 제4 레지스터(56)는 상기 제2 필드 가산기(58)의 출력값을 입력으로 받아들이며, 초기값은 '1'이다. 상기 제2 계수 입력 버퍼(60)는 에러 위치 다항식의 계수값이 1 사이클마다 입력되어진다. 그리고 상기 역원소 출력부(62)는 ROM으로 구성되며, 갈로아 필드 원소의 역수값을 출력시킨다.
이상과 같은 에러값 계산 장치의 동작에 따른 타이밍도가 도 3에 도시되어 있다.
도 3을 참조하여, 본 발명의 실시예에 따른 RS 복호기의 에러값 계산 장치의 동작에 있어서 해당 클락(clock)에서 수행되는 연산은 하기와 같다.
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
이상과 같은 본 발명에 의하면, 간략한 하드웨어의 구성으로 RS 복호기의 에러값 계산 장치를 구성할 수 있게 되며, 이에 의하면 최소한의 시간(8사이클)에 하나의 에러값을 계산 할 수 있게 된다.
Claims (6)
- 리드 솔로몬 복호기의 에러값 계산 장치에 있어서:갈로아 필드상의 원소를 제공받아 승산하는 원소 승산기(40)와;상기 원소 승산기(40)의 출력을 입력받아 상기 원소 승산기(40)로 궤환 입력하는 제1 레지스터(42)와;상기 원소 승산기(40)의 출력과 해당 입력을 제공받아 승산하여 출력하는 제1 필드 승산기(44)와;상기 제1 필드 승산기(44)의 출력과 해당 입력을 제공받아 가산하여 출력하는 제1 필드 가산기(48)와;상기 제1 필드 가산기(48)의 출력을 입력받아 상기 제1 필드 승산기(44)로 궤환 입력하는 제2 레지스터(46)와;오류 추정 다항식의 계수를 입력받아 상기 제1 필드가산기(48)로 제공하는 제1 계수 입력 버퍼(50)와;상기 제1 필드 가산기(48)의 출력을 입력받아 출력하는 제3 레지스터(52)와;상기 원소 승산기(40)의 출력과 해당 입력을 제공받아 승산하여 출력하는 제2 필드 승산기(54)와;상기 제2 필드 승산기(54)의 출력과 해당 입력을 제공받아 가산하여 출력하는 제2 필드 가산기(58)와;상기 제2 필드 가산기(58)의 출력을 입력받아 상기 제2 필드 승산기(54)로 궤환 입력하는 제4 레지스터(56)와;오류 위치 다항식의 계수를 입력받아 상기 제2 필드 가산기(58)로 제공하는 제2 계수 입력 버퍼(60)와;상기 제4 레지스터(56)의 출력을 입력받아 이에 응답하여 해당 데이터를 출력하는 역원소 출력부(62)와;상기 제3 레지스터(52)와 상기 역원소 출력부(62)의 출력을 각각 입력받아 승산하여 출력하는 제3 필드 승산기(64)를 포함하는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치
- 제 1 항에 있어서,상기 제1 내지 제3 필드 승산기(44, 54, 64)는 64개의 AND 게이트와, 83개의 EOR 게이트로 구성되어 1 사이클에 승산이 이루어지는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치.
- 제 1 항에 있어서,상기 제1 내지 제3 필드 승산기(44, 54, 64)는 32개의 AND 게이트와, 48개의 EOR 게이트와, 소정의 비트 수의 8개의 레지스터와, 8비트 입력의 멀티플렉서로 구성되어 2 사이클에 승산이 이루어지는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치.
- 제 1 항에 있어서,상기 제1 내지 제3 필드 승산기(44, 54, 64)는 16개의 AND 게이트와, 14개의 EOR 게이트와, 소정 비트 수의 10개의 레지스터와, 2개의 4비트 입력의 멀티플렉서로 구성되어 4 사이클에 승산이 이루어지는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치.
- 제 1 항에 있어서,상기 제1 내지 제3 필드 승산기(44, 54, 64)는 8개의 AND 게이트와, 12개의 EOR 게이트와, 소정의 비트 수의 8개의 레지스터를 포함하여 구성되어 8 사이클에 승산이 이루어지는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치.
- 제 1 항에 있어서,상기 제1 및 제2 필드 가산기(48, 58)는 8개의 EOR 게이트로 구성되는 것을 특징으로 하는 리드 솔로몬 복호기의 에러값 계산 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960051682A KR0175273B1 (ko) | 1996-11-02 | 1996-11-02 | 리드 솔로몬 복호기의 에러값 계산 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960051682A KR0175273B1 (ko) | 1996-11-02 | 1996-11-02 | 리드 솔로몬 복호기의 에러값 계산 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980033873A KR19980033873A (ko) | 1998-08-05 |
KR0175273B1 true KR0175273B1 (ko) | 1999-04-01 |
Family
ID=19480626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960051682A KR0175273B1 (ko) | 1996-11-02 | 1996-11-02 | 리드 솔로몬 복호기의 에러값 계산 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0175273B1 (ko) |
-
1996
- 1996-11-02 KR KR1019960051682A patent/KR0175273B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980033873A (ko) | 1998-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3288883B2 (ja) | 誤り訂正符号化装置及び誤り訂正復号装置及び誤り訂正符号付きデータ伝送システム及び誤り訂正符号の復号方法 | |
CA1226677A (en) | Apparatus for encoding and decoding digital data to permit error correction | |
US6519738B1 (en) | Method and apparatus for high-speed CRC computation based on state-variable transformation | |
US3771126A (en) | Error correction for self-synchronized scramblers | |
US7096408B1 (en) | Method and apparatus for computing the error locator polynomial in a decoder of a forward error correction (FEC) system | |
US5729559A (en) | Method and apparatus for correcting errors using multiple estimates | |
KR0135824B1 (ko) | 오류 위치 및 추정 다항식 계산방법 및 이를 이용한 리드-솔로몬 복호기 | |
KR970078044A (ko) | 리드 솔로몬 복호기의 에러 위치 다항식 계산 장치 | |
KR20040085545A (ko) | 통신 시스템에서 오류 정정 부호의 복호 장치 및 방법 | |
KR0175273B1 (ko) | 리드 솔로몬 복호기의 에러값 계산 장치 | |
JP3279624B2 (ja) | Crc演算に基づく1ビット誤り訂正回路 | |
KR0175274B1 (ko) | 리드 솔로몬 복호기의 체인즈 검출 장치 | |
KR100204801B1 (ko) | 리드 솔로몬 복호기의 에러 보정 장치 | |
JP3241851B2 (ja) | 誤り訂正復号装置 | |
US20100115381A1 (en) | Error correction of an encoded message | |
US20040179579A1 (en) | Method and apparatus for determination of initialization states in pseudo-noise sequences | |
KR0169396B1 (ko) | 갈로아 필드 곱셈기를 이용한 리드-솔로몬 디코더 | |
US6145113A (en) | Series reed-solomon decoder synchronized with bit clock signal | |
KR0175370B1 (ko) | 단축부호를 사용하는 리드-솔로몬 복호기 | |
KR100265949B1 (ko) | 리드-솔로몬 디코더의 N+α개 피포 설계 방법 | |
US20030026329A1 (en) | Digital matched filter performing despread processing by correlation value calculation and mobile wireless terminal including the same | |
KR970003979B1 (ko) | 갈로이스 필드상의 승산기 | |
JP3268926B2 (ja) | 誤り訂正回路 | |
JP3253381B2 (ja) | 誤り訂正回路 | |
US6753795B2 (en) | Code generation device, semiconductor device, and receiver device |
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: 20061030 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |