KR20080112583A - 리드 솔로몬 디코더 및 그 방법 - Google Patents
리드 솔로몬 디코더 및 그 방법 Download PDFInfo
- Publication number
- KR20080112583A KR20080112583A KR1020070061144A KR20070061144A KR20080112583A KR 20080112583 A KR20080112583 A KR 20080112583A KR 1020070061144 A KR1020070061144 A KR 1020070061144A KR 20070061144 A KR20070061144 A KR 20070061144A KR 20080112583 A KR20080112583 A KR 20080112583A
- Authority
- KR
- South Korea
- Prior art keywords
- error
- polynomial
- data
- error value
- syndrome
- Prior art date
Links
Images
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
-
- 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/1545—Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
-
- 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/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/1525—Determination and particular use of error location polynomials
- H03M13/1535—Determination and particular use of error location polynomials using the Euclid algorithm
-
- 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/154—Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial
-
- 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/1585—Determination of error values
-
- 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/6522—Intended application, e.g. transmission or communication standard
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
- H04L1/0052—Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
본 발명은 리드 솔로몬 디코더 등에 관한 것이다.
본 발명에 따른 리드 솔로몬 디코더는 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 생성하는 신드롬 다항식 생성부와, 기 설정된 우선순위에 따라 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택부와, 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 생성하는 오류 위치/오류 값 다항식 생성부와, 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산부 및 오류 위치와 오류 값을 입력된 서브 채널 데이터에 적용하여 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정부를 포함한다.
이러한 본 발명에 따르면, 리드 솔로몬 디코더의 구조를 단순화하여 그 크기를 줄이는 등의 효과가 있다.
리드 솔로몬 디코더, 주 서비스 채널, 서브 채널, 유클리드 알고리즘, 치엔 알고리즘, 포니 알고리즘
Description
도 1은 서브 채널의 수에 대응하는 수를 갖는 종래의 리드 솔로몬 디코더를 나타낸 도면.
도 2는 지상파 디지털 멀티미디어 방송의 전송 프레임 구조를 나타낸 도면.
도 3은 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더를 나타낸 도면.
도 4는 본 발명의 일 실시 예에 따른 리드 솔로몬 디코딩 방법을 나타낸 도면.
***** 도면의 주요 부분에 대한 부호의 설명 *****
3: 리드 솔로몬 디코더
31: 신드롬 다항식 생성부
32: 신드롬 다항식 선택부
33: 오류 위치/오류 값 다항식 생성부
34: 오류 위치/오류 값 다항식 버퍼부
35: 오류 위치/오류 값 연산부
36: 오류 정정부
37: 병렬 직렬 변환부
본 발명은 리드 솔로몬 디코더(Reed Solomon Decoder)에 관한 것으로, 보다 상세하게는 지상파 디지털 멀티미디어 방송(TDMB)의 복조기(Demodulator)에 포함된 단순화된 구조를 갖는 리드 솔로몬 디코더에 관한 것이다.
일반적으로 디지털 통신 시스템은 채널상의 잡음으로 발생하는 신호 에러를 정정하기 위한 수단을 요구한다. 이러한 수단들 중의 하나로 리드 솔로몬 코드를 사용하는 기법이 있다.
리드 솔로몬 코드는 높은 코드율과 우수한 정정능력으로 인하여 씨디 플레이어(Compact Disc Player), 디지털 오디오 테잎 레코더(Digital Audio Tape Recorder), 디지털 비디오 카세트 레코더(Digital Video Cassette Recoder), 디지털 비디오 방송(DVB-T, Digital Video Broadcasting-Terrestrial), 디지털 멀티미디어 방송(DMB, Digital Multimedia Broadcasting) 등의 많은 응용분야에서 사용되고 있다.
리드 솔로몬 코드에 대한 부호화 과정과 복호화 과정은 갈루아 필드(Galois Field)에서 수행된다. 이러한 리드-솔로몬 코드는 RS(n, k, t)로 표현된다. 여기서 n은 리드 솔로몬 코드워드의 길이이고, k는 메시지의 길이이고, t는 에러 정정이 가능한 바이트 수이며 일반적으로 (n-k)/2이다. 예를 들어 리드 솔로몬 코드가 RS(204, 188, 8)인 경우, 송신기는 188바이트의 메시지 데이터에 16 바이트의 패리티(parity) 데이터를 부가하여 204 바이트의 리드 솔로몬 코드워드를 전송하고, 수신기는 전송된 204 바이트의 리드 솔로몬 코드워드 중 8 바이트까지의 에러를 정정할 수 있다.
한편, 지상파 디지털 멀티미디어 방송은 주 서비스 채널(Main Service Channel, MSC)을 복수의 서브 채널(Sub Channel)로 나누어 비디오 방송, 오디오 방송, 데이터 서비스 등을 제공한다. 비디오 방송의 전송 데이터인 Mpeg-2 TS의 경우 디지털 오디오 방송(DAB)의 컨벌루션 코드(convolution Code)와 앞서 설명한 리드 솔로몬 코드를 사용하여 전송상에서 발생하는 에러를 정정한다. 그리고 데이터 서비스의 역시 인핸스드 패킷 모드(Enhanced Packet Mode, EPM)에서 리드 솔로몬 코드를 사용하여 전송 에러에 대응한다.
이러한 지상파 디지털 멀티미디어 방송에 있어서, 하나의 화면을 통하여 동시에 2개의 비디오 방송을 보는 등의 새로운 기능들을 위해 복조기(demodulator)는 복수의 서브 채널을 동시에 처리할 수 있어야 한다.
이러한 복조기에 포함된 리드 솔로몬 디코더를 도 1을 참조하여 예로 들면, 리드 솔로몬 디코딩이 필요한 복수의 서브 채널(SubCh0, SubCh1,...,SubChn)을 동시에 처리하기 위해서는 각각의 각각의 서브 채널마다 별도의 리드 솔로몬 디코더(RSD0, RSD1,...,RSDn)가 필요하다. 그러나 이러한 리드 솔로몬 디코더 수의 증가로 인하여 복조기의 크기가 커지는 문제점이 있다.
이러한 문제점을 해결하기 위한 본 발명은 리드 솔로몬 디코더의 구조를 단순화하여 그 크기를 줄이는 것을 목적으로 한다.
또한, 본 발명은 리드 솔로몬 디코더의 처리 속도를 향상시키는 것을 목적으로 한다.
이러한 기술적 과제를 달성하기 위한 본 발명에 따른 리드 솔로몬 디코더는 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 생성하는 신드롬 다항식 생성부와, 기 설정된 우선순위에 따라 상기 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택부와, 상기 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 생성하는 오류 위치/오류 값 다항식 생성부와, 상기 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 상기 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산부 및 상기 오류 위치와 상기 오류 값을 상기 입력된 서브 채널 데이터에 적용하여 상기 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정부를 포함한다.
상기 신드롬 다항식 생성부는 상기 서브 채널들에 대응하는 서브 채널 신드롬 다항식 생성부들로 이루어지고, 상기 오류 위치/오류 값 다항식 생성부와 상기 오류 위치/오류 값 연산부의 수는 각각 1개인 것이 바람직하다.
상기 오류 위치/오류 값 다항식 생성부와 상기 오류 위치/오류 값 연산부 사이에 설치되어 상기 오류 위치 다항식과 상기 오류 값 다항식을 임시 저장하는 오류 위치/오류 값 다항식 버퍼부를 더 포함하는 것이 바람직하다.
상기 오류 정정부로부터 오류 정정 데이터를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환부를 더 포함하는 것이 바람직하다.
상기 서브 채널 중 상기 우선 순위가 가장 낮은 서브 채널은 데이터 서비스용 서브 채널인 것이 바람직하다.
상기 데이터 서비스용 서브 채널 데이터를 시리얼하게 입력받아 임시 저장하는 데이터 서비스용 서브 채널 버퍼부를 더 포함하는 것이 바람직하다.
상기 오류 위치/오류 값 다항식 생성부는 상기 오류 위치 다항식과 상기 오류 값 다항식을 생성한 후 상기 데이터 서비스용 서브 채널 버퍼부를 활성화시키는 제어신호를 출력하는 것이 바람직하다.
상기 데이터 서비스용 서브 채널 버퍼부는 상기 제어신호에 의하여 상기 임시 저장된 데이터 서비스용 서브 채널 데이터를 패러럴하게 상기 신드롬 다항식 연산부로 출력하는 것이 바람직하다.
상기 데이터 서비스용 서브 채널 버퍼부는 상기 오류 정정부로부터 상기 오류 정정 데이터를 입력받아 패킷(packet) 방식으로 출력하는 것이 바람직하다.
상기 입력되는 서브 채널 데이터는 TDMB 방식으로 전송되는 것이 바람직하다.
본 발명에 따른 리드 솔로몬 디코딩 방법은 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 연산하는 신드롬 다항식 생성단계와, 기 설정된 우선순위에 따라 상기 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택단계와, 상기 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 연산하는 오류 위치/오류 값 다항식 생성단계와, 상기 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 상기 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산단계 및 상기 오류 위치와 상기 오류 값을 상기 입력된 서브 채널 데이터에 적용하여 상기 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정단계를 포함한다.
상기 오류 위치/오류 값 다항식 생성단계와 상기 오류 위치/오류 값 연산단계 사이에서 실행되어 상기 오류 위치 다항식과 상기 오류 값 다항식을 임시 저장하는 오류 위치/오류 값 다항식 버퍼링 단계를 더 포함하는 것이 바람직하다.
상기 오류 정정단계로부터 오류 정정 데이터를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환단계를 더 포함하는 것이 바람직하다.
상기 서브 채널 중 상기 우선 순위가 가장 낮은 서브 채널은 데이터 서비스용 서브 채널인 것이 바람직하다.
상기 데이터 서비스용 서브 채널 데이터를 시리얼하게 입력받아 임시 저장하는 데이터 서비스용 서브 채널 버퍼링 단계를 더 포함하는 것이 바람직하다.
상기 오류 위치/오류 값 다항식 생성단계에서, 상기 오류 위치 다항식과 상기 오류 값 다항식을 생성한 후 상기 데이터 서비스용 서브 채널 버퍼링 단계를 활성화시키는 제어신호를 출력하는 것이 바람직하다.
상기 데이터 서비스용 서브 채널 버퍼링 단계에서, 상기 제어신호에 의하여 상기 임시 저장된 데이터 서비스용 서브 채널 데이터를 패러럴하게 상기 신드롬 다항식 연산단계로 출력하는 것이 바람직하다.
상기 데이터 서비스용 서브 채널 버퍼링 단계에서, 상기 오류 정정단계로부터 상기 오류 정정 데이터를 입력받아 패킷(packet) 방식으로 출력하는 것이 바람직하다.
상기 입력되는 서브 채널 데이터는 TDMB 방식으로 전송되는 것이 바람직하다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 상세히 설명한다.
먼저 지상파 디지털 멀티미디어 방송의 전송 프레임 구조를 살펴본다.
도 2는 지상파 디지털 멀티미디어 방송의 전송 프레임 구조를 나타낸 도면이다.
도 2를 참조하면, 전송 프레임은 동기 채널(Synchronization Channel, SC), 고속 정보 채널(Fast Information Channel, FIC), 주 서비스 채널(Main Service Channel, MSC)로 구성된다.
동기 채널(SC)은 전송 프레임 동기화, 자동 주파수 제어, 채널 상태 추정, 송신기 식별 등과 같은 기본적인 복조기의 기능을 위하여 사용된다.
고속 정보 채널(FIC)은 수신자로 하여금 정보에 빨리 접속하게 하는 기능을 한다. 특히, 고속 정보 채널(FIC)은 다중화 구성 정보(Multiplex Configuration Information), 선택적 서비스 정보(Slective Service Information), 데이터 서비스를 전송하는데 사용된다. 이러한 고속 정보 채널(FIC)은 시간 인터리브(interleave)되지 않은 채널이고 고정된 균등 오류 보호를 갖는다.
주 서비스 채널(MSC)은 서비스 컴포넌트를 전송하기 위한 채널이다. 이러한 주 서비스 채널(MSC)은 각각의 인터리브된 프레임(Common Interleaved Frames, CIF0, CIF1, CIF2, CIF3)로 구성된다. CIF에서 주소를 할당할 수 있는 가장 작은 단위는 공간 유닛(Capacity Unit, CU)이고, 하나의 CU의 크기는 64비트이다. 다수의 CU가 연결되어 하나의 서브 채널(Sub channel)이 구성되고, 주 서비스 채널(MSC)은 서브 채널들(Subch0, Subch1, Subch2)의 다중 구조를 갖는다. 이러한 주 서비스 채널(MSC)의 서비스 컴포넌트를 전송하기 위하여 스트림 모드(Stream mode)와 패킷 모드(packet mode)의 두가지 데이터 전송 모드가 지원된다. 스트림 모드는 정보원에서 목적지까지 지정된 하나의 서브 채널을 사용하여 고정 비트율로 트랜스페어런트 전송(transparent transmission)을 제공한다. 패킷 모드는 하나의 서브채널을 사용하여 수 개의 데이터 서비스 컴포넌트를 전송할 수 있다. 시스템 정보(SI) 이외의 대부분의 데이터 서비스는 주 서비스 채널(MSC)을 사용하여 전송된다.
도 3은 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더(3)를 나타낸 도면이다.
도 3을 참조하면, 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더(3)는 신드롬 다항식 생성부(31), 신드롬 다항식 선택부(32), 오류 위치/ 오류 값 다항식 생성부(33), 오류 위치/ 오류 값 연산부(35) 및 오류 정정부(36)를 포함한다.
신드롬 다항식 생성부(31)는 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 생성한다. 이를 보다 구체적으로 설명하면 다음과 같다. 즉 도 2를 참조하면, 주 서비스 채널(MSC)는 4개의 CIF로 구성되어 있으며 각각의 CIF는 고속 정보 채널(FIC) 정보에 따라 복수의 서브 채널들(Subch0, Subch1, Subch2)이 순차적으로 배열되어 구성되어 있다. 도 3을 참조하면, 각각의 서브 채널 데이터들(Subch0 DATA, Subch1 DATA,...,Subchn DATA)은 TDMB 복조기 내의 컨벌루션 디인터리버들(CDI)을 통과하여 차례대로 시리얼(seria)l하게 출력된다. 즉 TDMB 복조(demodulation) 과정에서, 각각의 서브 채널 데이터(Subch0 DATA, Subch1 DATA,...,Subchn DATA)가 시간에 따라 분할되어 출력되는 것이다. 신드롬 다항식 생성부(31)는 이와 같이 입력되는 각각의 서브 채널 데이터(Subch0 DATA, Subch1 DATA,...,Subchn DATA)에 대한 신드롬 다항식의 계수를 연산하여 각각의 서브 채널 데이터(Subch0 DATA, Subch1 DATA,...,Subchn DATA)에 대응하는 신드롬 다항식들(SynPo1, SynPo1,...,SynPon)을 생성한다.
신드롬 다항식 선택부(32)는 기 설정된 우선순위에 따라 신드롬 다항식들(SynPo1, SynPo1,...,SynPon) 중 하나의 신드롬 다항식(SynPo)을 선택한다. 이를 보다 상세히 설명하면 다음과 같다. 즉, 신드롬 다항식 선택부(32)는 각각의 서브 채널 데이터(Subch0 DATA, Subch1 DATA,...,Subchn DATA)에 대응하는 서브 채널 신드롬 다항식들(SynPo1, SynPo1,...,SynPon)을 신드롬 다항식 생성부(31)로부터 입력받아 임시 저장한다. 또한 신드롬 다항식 선택부(32)는 기 설정된 우선순위가 저장된 메모리를 참조하여, 서브 채널들 중 선택된 하나의 서브 채널의 번호(SCnum)와 선택된 하나의 서브 채널에 대응하는 신드롬 다항식(SynPo)을 출력한다. 한편, 일정 시간 내에 처리가 끝나야 하는 비디오 방송용 서브 채널(SubCh0, SubCh1)에 가장 높은 우선순위가 부여되고, 정확도가 중요시되는 데이터 서비스용 서브 채널(SubChn)에 가장 낮은 우선순위가 부여되는 것이 바람직하다. 또한, 데이터 서비스용 서브 채널 데이터(SubChn DATA)를 시리얼하게 입력받아 임시 저장하는 데이터 서비스용 서브 채널 버퍼부(EPM)를 더 포함하는 것이 바람직하다.
오류 위치/오류 값 다항식 생성부(33)는 선택된 신드롬 다항식(SynPo)에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식(ELPo)과 오류 값 다항식(EVPO)을 생성한다. 이를 순차적으로 보다 상세히 설명하면 다음과 같다. 먼저 1) 오류 위치/오류 값 다항식 생성부(33)는 서브 채널들 중 선택된 하나의 서브 채널의 번호(SCnum)와 선택된 하나의 서브 채널에 대응하는 신드롬 다항식(SynPo)을 신드롬 다항식 선택부(32)로부터 입력받는다. 다음으로 2) 오류 위치/오류 값 다항식 생성부(33)는 선택된 서브 채널의 신드롬 다항식(SynPo)에 유클리드 알고리즘을 적용하여, 선택된 서브 채널의 신드롬 다항식(SynPo)에 대응하는 오류 위치 다항식(ELPo)과 오류 값 다항식(EVPo)을 생성한다. 한편 후술하는 오류 위치/오류 값 연산부(35)의 연산 속도를 고려하여, 오류 위치/오류 값 다항식 생성부(33)와 오류 위치/오류 값 연산부(35) 사이에 설치되어 오류 위치 다항식(ELPo)과 오류 값 다항식(EVPo)을 임시 저장하는 오류 위치/오류 값 다항식 버퍼부(34)를 더 포함하는 것이 바람직하다. 또한, 오류 위치/오류 값 다항식 생성부(33)는 오류 위치 다항식(ELPo)과 오류 값 다항식(EVPo)을 생성한 후 데이터 서비스용 서브 채널(SubChn)을 활성화시키는 제어신호(Scon)를 출력하는 것이 바람직하다. 데이터 서비스용 서브 채널 버퍼부(EPM)는 오류 위치/오류 값 다항식 생성부(33)로부터의 제어신호(Scon)에 응답하여 시리얼하게 입력되어 임시 저장된 데이터 서비스용 서브 채널 데이터를 패러럴하게 신드롬 다항식 연산부(31)로 출력하는 것이 바람직하다. 또한 데이터 서비스용 서브 채널 버퍼부(EPM)는 후술하는 오류 정정부(36)로부터 오류 정정 데이터(ECD)를 입력받아 패킷(packet) 방식으로 출력하는 것이 바람직하다.
오류 위치/오류 값 연산부(35)는 오류 위치 다항식(ELPo)에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 오류 값 다항식(EVPo)에 포니(Forney) 알고리즘을 적용하여 오류값을 연산한다.
오류 정정부(36)는 오류 위치와 오류 값을 입력된 서브 채널 데이터(SubCh DATA)에 적용하여 입력된 서브 채널 데이터(SubCh DATA)에 포함된 오류를 정정한다. 이를 보다 상세히 설명하면 다음과 같다. 오류 정정부(36)는 오류 위치에 대응하는 오류 값을 오류 위치/오류 값 연산부(35)로부터 입력받고 오류를 갖고 있는 서브 채널 데이터(SubCh DATA)를 도시하지 않은 선입선출부(FIFO)로부터 입력받아, 이 두 데이터를 배타적 OR(exclusive OR) 연산함으로써, 서브 채널 데이터(SubCh DATA)에 포함된 오류를 정정한다. 한편, 오류 정정부(36)는 오류 정정 데이터(ECD)를 패러럴(parallel)하게 출력한다. 이에 따라 후속 신호 처리를 위하여 오류 정정부(36)로부터 오류 정정 데이터(ECD)를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환부(37)를 더 포함하는 것이 바람직하다.
이하에서는 서브 채널 데이터가 204 바이트 리드 솔로몬 패킷 데이터(Reed Solomon Packet data)인 경우를 예로 들고 도 2 및 도 3을 참조하여, 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더의 동작을 보다 구체적으로 설명한다.
앞서 설명한 바와 같이, 리드 솔로몬 디코더(3)는 신드롬 다항식 연산부(31), 선입선출부(FIFO, 도시하지 않음), 오류 위치/오류 값 다항식 생성부(33), 오류 위치/오류 값 연산부(35), 오류 정정부(36)를 포함한다. 신드롬 다항식 연산부(31)는 204 바이트의 리드 솔로몬 패킷 데이터를 입력받아 신드롬 다항식(SynPo)을 생성하고, 오류 위치/오류 값 다항식 생성부(33)는 입력받은 신드롬 다항식(SynPo)에서 에러 위치 다항식(ELPo)과 에러 값 다항식(EVPo)을 구한다. 오류 위치/오류 값 연산부(35)는 에러 위치 다항식(ELPo)과 에러 값 다항식(EVPo)을 이용하여 해당 위치의 오류 값을 구하고, 오류 정정부(36)는 해당 위치의 오류 값에 기초하여 선입선출부에 저장되어 있던 전송 데이터의 에러를 정정한다.
신드롬 다항식 연산부(31)와 선입선출부는 204 바이트 단위로 데이터를 전송 받는다. CIF내의 서브 채널의 사이즈가 204 바이트 단위로 나누어 떨어지지 않으므로, 신드롬 다항식 연산부(31)와 선입선출부는 동시에 처리하여야 할 서브 채널마다 독립적으로 운영되어야 한다. 그 외의 오류 위치/오류 값 다항식 생성부(33), 오류 위치/오류 값 연산부(35), 오류 정정부(36)는 시간을 분할하여 공유된다.
각 서브 채널 별로 동작하는 신드롬 다항식 연산부(31)는 계산된 신드롬 다항식 데이터를 신드롬 다항식 선택부(32)로 전송한다. 신드롬 다항식 선택부(32)는 서브 채널 별로 입력된 신드롬 다항식 데이터를 저장하고 있으며, 기 설정된 우선순위에 따라 처리되는 서브 채널의 번호와 신드롬 다항식 데이터를 오류 위치/오류 값 다항식 생성부(33)로 전송한다. 이때, 일정 시간 내에 처리가 끝나야 하는 비디오 방송에 가장 높은 우선순위가 부여되며 데이터 서비스에 가장 낮은 우선순위가 부여된다.
이러한 방법으로 서브 채널 간의 리드 솔로몬 디코더의 공유가 이루어 질 수 있는 이유는 주 서비스 채널(MSC)의 구조 때문이다. 주 서비스 채널(MSC) 내에 순차적으로 서브 채널들(SubCh0, SubCh1, SubCh2)이 위치하고 있으므로, 복수의 서브 채널(SubCh0, SubCh1, SubCh2)을 리드 솔로몬 디코더(3)에 공유 시키더라도 동일 시간에 리드 솔로몬 디코딩 처리를 요청할 수 있는 서브 채널의 최대 숫자는 2개이다. 서브 채널 데이터는 시리얼하게 입력되므로, 하나의 204 바이트 리드 솔로몬 패킷 데이터가 입력되는데 필요한 최소 클럭의 수는 1632(204 X 8) CLK이고, 오류 위치/오류 값 다항식 생성부(33)에 필요한 클럭의 수는 313 CLK 이며, 오류 위치/오류 값 연산부(35)와 오류 정정부(36)에서 에러 정정된 데이터가 출력되는데 필요한 클럭의 수는 415 CLK이다. 동일 시간에 리드 솔로몬 디코딩 처리를 요청 할 수 있는 서브 채널의 수가 2이므로, 두 개의 서브 채널 데이터의 신드롬 다항식 생성을 제외한 리드 솔로몬 디코딩 처리에 걸리는 클럭은 2X(313+415) = 1456 CLK 이 다. 이는 하나의 서브 채널의 204 바이트 리드 솔로몬 패킷 데이터가 리드 솔로몬 디코더에 전송되는데 필요한 1632CLK 보다 작다. 따라서 우선순위만으로도 문제없이 복수의 서브 채널에 대한 리드 솔로몬 디코딩 처리가 가능하다.
오류 위치/오류 값 다항식 생성부(33)의 출력인 에러 위치 다항식(ELPo)과 에러 값 다항식(EVPo)의 데이터는 오류 위치/오류 값 다항식 버퍼부(34)에 처리중인 서브 채널의 번호(SCnum)와 같이 저장된다. 이와 같이 하는 이유는 다음과 같다. 즉, 오류 위치/오류 값 연산부(35)와 오류 정정부(36)가 오류 위치/오류 값 다항식 생성부(33)보다 많은 클럭을 소모하므로, 오류 위치/오류 값 다항식 생성부(33)의 동작이 끝나도 아직 먼저 입력된 데이터에 대한 처리가 끝나지 않을 수 있다. 따라서 오류 위치/오류 값 다항식 버퍼부(34)를 부가함으로써, 오류 위치/오류 값 다항식 생성부(33)는 자신을 기다리고 있는 다른 서브 채널의 신드롬 다항식 데이터를 바로 처리 할 수 있다.
한편, 에러가 정정된 서브 채널 데이터(ECD)는 시리얼로 입력을 받는 주 서비스 채널 버퍼(MSC BUFFER)를 위해 병렬 직렬 변환부(37)를 거쳐 주 서비스 채널 버퍼(MSC BUFFER)에 전달된다.
데이터 서비스용 서브 채널(SubChn)의 경우 다른 서브 채널 데이터와 조금 다른 처리가 필요하다. 데이터 서비스용 서브 채널(SubChn)의 경우 이미 시리얼로 입력된 다수의 204 바이트 리드 솔로몬 패킷 데이터가 내부 메모리에 저장되어 있다. 그러므로 데이터 서비스용 서브 채널 데이터의 경우 다른 서브 채널 데이터와 달리 1 바이트로 패러럴하게 입력된다. 패러럴하게 입력을 받으므로 하나의 리드 솔로몬 패킷 데이터를 받는데 필요한 클럭은 204CLK이다. 이는 리드 솔로몬 디코딩 처리에 부족한 시간을 제공한다. 그러므로 데이터 서비스용 서브 채널 데이터에 대한 리드 솔로몬 디코딩 처리의 제어를 리드 솔로몬 디코더(3) 내부의 오류 위치/오류 값 다항식 생성부(33)에서 수행한다. 오류 위치/오류 값 다항식 생성부(33)는 하나의 오류 위치/오류 값 다항식 생성 처리가 끝나면, 다음 데이터 서비스용 서브 채널 버퍼부(EPM)에 다음 204 바이트를 전송하라고 명령한다. 오류 위치/오류 값 연산 처리에는 415CLK이 필요하고, 데이터 서비스용 서브 채널 버퍼부(EPM)로부터 204 바이트 리드 솔로몬 패킷을 전송 받아 오류 위치/오류 값 다항식 생성 처리에 걸리는 시간은 204 + 313 = 515CLK이므로, 리드 솔로몬 디코딩 처리에 문제가 없다. 또한 오류 위치/오류 값 다항식 생성부(33)가 직접 데이터 처리 가능함을 알려주어 데이터 서비스용 서브 채널 버퍼부(EPM)가 데이터 처리를 위해 기다리는 시간이 없으므로 지연시간을 최소화 할 수 있다.
이상에서 상세히 설명한 바와 같이 본 발명에 따르면, 단순화된 리드 솔로몬 디코더를 구현할 수 있고, 이에 따라 TDMB 복조기의 사이즈를 크게 줄일 수 있다. 이를 구체적으로 설명하면 다음과 같다. 즉, 신드롬 다항식 생성부(31)가 공유되지 않으나 리드 솔로몬 디코더 전체 크기에서 신드롬 다항식 생성부(31)가 차지하는 비율은 크지 않다. 신드롬 다항식 생성부(31)가 약 4,000개의 게이트(gate)로 이루어지는데 비하여, 오류 위치/오류 값 다항식 생성부(33)가 약 25,000 개의 게이트로 이루어지고, 오류 위치/오류 값 연산부(35)가 약 5,000개의 게이트로 이루어진다. 따라서, 서브 채널이 3개인 경우, 본 발명의 일 실시 예에 따른 리드 솔로몬 디코DND더는 종래의 리드 솔로몬 디코데에 비하여 약 60%정도 줄어든 크기를 갖는다. 또한 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더에 따르면, 지연시간을 최소화하여 리드 솔로몬 디코딩 처리 속도를 크게 향상시킬 수 있는 효과가 있다.
도 4는 본 발명의 일 실시 예에 따른 리드 솔로몬 디코딩 방법을 나타낸 도면이다. 도 4를 참조하면, 본 발명의 일 실시 예에 따른 리드 솔로몬 디코딩 방법은 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 연산하는 신드롬 다항식 생성단계(S31)와, 기 설정된 우선순위에 따라 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택단계(S32)와, 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 연산하는 오류 위치/오류 값 다항식 생성단계(S33)와, 오류 위치 다항식과 상기 오류 값 다항식을 임시 저장하는 오류 위치/오류 값 다항식 버퍼링 단계(S34)와, 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산단계(S35)와, 오류 위치와 오류 값을 입력된 서브 채널 데이터에 적용하여 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정단계(S36) 및 오류 정정단계로부터 오류 정정 데이터를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환단계(S37)를 포함한다.
이러한 본 발명의 일 실시 예에 따른 리드 솔로몬 디코딩 방법의 작동 원리는 앞서 상세히 설명한 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더와 실질적 으로 동일하므로 본 발명의 일 실시 예에 따른 리드 솔로몬 디코딩 방법에 대한 상세한 설명은 본 발명의 일 실시 예에 따른 리드 솔로몬 디코더에 대한 상세한 설명으로 대체한다.
이상에서 보는 바와 같이, 본 발명이 속하는 기술 분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
이상에서 상세히 설명한 바와 같이 본 발명에 따르면, 복수의 서브 채널 데이터를 처리하기 위하여 하나의 리드 솔로몬 디코더를 시간을 분할하여 사용함으로써, 리드 솔로몬 디코더의 크기를 줄일 수 있다.
또한, 리드 솔로몬 디코더의 처리 속도를 향상시키는 효과가 있다.
Claims (19)
- 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 생성하는 신드롬 다항식 생성부;기 설정된 우선순위에 따라 상기 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택부;상기 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 생성하는 오류 위치/오류 값 다항식 생성부;상기 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 상기 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산부; 및상기 오류 위치와 상기 오류 값을 상기 입력된 서브 채널 데이터에 적용하여 상기 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정부;를 포함하는, 리드 솔로몬 디코더.
- 제1 항에 있어서,상기 신드롬 다항식 생성부는 상기 서브 채널들에 대응하는 서브 채널 신드롬 다항식 생성부들로 이루어지고, 상기 오류 위치/오류 값 다항식 생성부와 상기 오류 위치/오류 값 연산부의 수는 각각 1개인, 리드 솔로몬 디코더.
- 제1 항에 있어서,상기 오류 위치/오류 값 다항식 생성부와 상기 오류 위치/오류 값 연산부 사이에 설치되어 상기 오류 위치 다항식과 상기 오류 값 다항식을 임시 저장하는 오류 위치/오류 값 다항식 버퍼부를 더 포함하는, 리드 솔로몬 디코더.
- 제1 항에 있어서,상기 오류 정정부로부터 오류 정정 데이터를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환부를 더 포함하는, 리드 솔로몬 디코더.
- 제1 항에 있어서,상기 서브 채널 중 상기 우선 순위가 가장 낮은 서브 채널은 데이터 서비스용 서브 채널인, 리드 솔로몬 디코더.
- 제5 항에 있어서,상기 데이터 서비스용 서브 채널 데이터를 시리얼하게 입력받아 임시 저장하는 데이터 서비스용 서브 채널 버퍼부를 더 포함하는, 리드 솔로몬 디코더.
- 제6 항에 있어서,상기 오류 위치/오류 값 다항식 생성부는 상기 오류 위치 다항식과 상기 오 류 값 다항식을 생성한 후 상기 데이터 서비스용 서브 채널 버퍼부를 활성화시키는 제어신호를 출력하는, 리드 솔로몬 디코더.
- 제7 항에 있어서,상기 데이터 서비스용 서브 채널 버퍼부는 상기 제어신호에 의하여 상기 임시 저장된 데이터 서비스용 서브 채널 데이터를 패러럴하게 상기 신드롬 다항식 연산부로 출력하는, 리드 솔로몬 디코더.
- 제8 항에 있어서,상기 데이터 서비스용 서브 채널 버퍼부는 상기 오류 정정부로부터 상기 오류 정정 데이터를 입력받아 패킷(packet) 방식으로 출력하는, 리드 솔로몬 디코더.
- 제1 항에 있어서,상기 입력되는 서브 채널 데이터는 TDMB 방식으로 전송되는, 리드 솔로몬 디코더.
- 입력되는 복수의 서브 채널 데이터에 대한 신드롬 다항식(Syndrom Polynomial)들을 연산하는 신드롬 다항식 생성단계;기 설정된 우선순위에 따라 상기 신드롬 다항식들 중 하나의 신드롬 다항식을 선택하는 신드롬 다항식 선택단계;상기 선택된 신드롬 다항식에 유클리드(Euclid) 알고리즘을 적용하여 오류 위치 다항식과 오류 값 다항식을 연산하는 오류 위치/오류 값 다항식 생성단계;상기 오류 위치 다항식에 치엔 서치(Chien search) 알고리즘을 적용하여 오류 위치를 연산하고, 상기 오류 값 다항식에 포니(Forney) 알고리즘을 적용하여 오류값을 연산하는 오류 위치/오류 값 연산단계; 및상기 오류 위치와 상기 오류 값을 상기 입력된 서브 채널 데이터에 적용하여 상기 입력된 서브 채널 데이터에 포함된 오류를 정정하는 오류 정정단계;를 포함하는, 리드 솔로몬 디코딩 방법.
- 제11 항에 있어서,상기 오류 위치/오류 값 다항식 생성단계와 상기 오류 위치/오류 값 연산단계 사이에서 실행되어 상기 오류 위치 다항식과 상기 오류 값 다항식을 임시 저장하는 오류 위치/오류 값 다항식 버퍼링 단계를 더 포함하는, 리드 솔로몬 디코딩 방법.
- 제11 항에 있어서,상기 오류 정정단계로부터 오류 정정 데이터를 패러럴(parallel)하게 입력받아 시리얼(serial)하게 출력하는 병렬 직렬 변환단계를 더 포함하는, 리드 솔로몬 디코딩 방법.
- 제11 항에 있어서,상기 서브 채널 중 상기 우선 순위가 가장 낮은 서브 채널은 데이터 서비스용 서브 채널인, 리드 솔로몬 디코딩 방법.
- 제14 항에 있어서,상기 데이터 서비스용 서브 채널 데이터를 시리얼하게 입력받아 임시 저장하는 데이터 서비스용 서브 채널 버퍼링 단계를 더 포함하는, 리드 솔로몬 디코딩 방법.
- 제15 항에 있어서,상기 오류 위치/오류 값 다항식 생성단계에서,상기 오류 위치 다항식과 상기 오류 값 다항식을 생성한 후 상기 데이터 서비스용 서브 채널 버퍼링 단계를 활성화시키는 제어신호를 출력하는, 리드 솔로몬 디코딩 방법.
- 제16 항에 있어서,상기 데이터 서비스용 서브 채널 버퍼링 단계에서,상기 제어신호에 의하여 상기 임시 저장된 데이터 서비스용 서브 채널 데이터를 패러럴하게 상기 신드롬 다항식 연산단계로 출력하는, 리드 솔로몬 디코딩 방법.
- 제17 항에 있어서,상기 데이터 서비스용 서브 채널 버퍼링 단계에서,상기 오류 정정단계로부터 상기 오류 정정 데이터를 입력받아 패킷(packet) 방식으로 출력하는, 리드 솔로몬 디코딩 방법.
- 제11 항에 있어서,상기 입력되는 서브 채널 데이터는 TDMB 방식으로 전송되는, 리드 솔로몬 디코딩 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070061144A KR20080112583A (ko) | 2007-06-21 | 2007-06-21 | 리드 솔로몬 디코더 및 그 방법 |
US12/214,730 US8099656B2 (en) | 2007-06-21 | 2008-06-20 | Reed solomon decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070061144A KR20080112583A (ko) | 2007-06-21 | 2007-06-21 | 리드 솔로몬 디코더 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20080112583A true KR20080112583A (ko) | 2008-12-26 |
Family
ID=40137791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070061144A KR20080112583A (ko) | 2007-06-21 | 2007-06-21 | 리드 솔로몬 디코더 및 그 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8099656B2 (ko) |
KR (1) | KR20080112583A (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014082574A (ja) | 2012-10-15 | 2014-05-08 | Samsung Electronics Co Ltd | 誤り検出訂正回路、及びメモリ装置 |
CN102970049B (zh) * | 2012-10-26 | 2016-01-20 | 北京邮电大学 | 基于钱搜索算法和福尼算法的并行电路及rs译码电路 |
KR102504176B1 (ko) * | 2016-06-23 | 2023-03-02 | 에스케이하이닉스 주식회사 | 반도체장치 |
KR20210150149A (ko) | 2020-06-03 | 2021-12-10 | 삼성전자주식회사 | 신드롬과 부분 계수 정보를 병렬적으로 생성하는 에러 정정 장치 및 방법 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2318954B (en) * | 1996-10-29 | 2001-05-23 | Daewoo Electronics Co Ltd | Reed-solomon decoder for use in advanced television |
KR19990002525A (ko) | 1997-06-20 | 1999-01-15 | 양승택 | 병렬 채널 비터비 디코더 |
US6694476B1 (en) * | 2000-06-02 | 2004-02-17 | Vitesse Semiconductor Corporation | Reed-solomon encoder and decoder |
JP3606569B2 (ja) * | 2001-03-09 | 2005-01-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 復号回路、該復号回路を用いる復号装置、復号方法および半導体デバイス |
US20030009723A1 (en) * | 2001-04-24 | 2003-01-09 | Ta-Hsiang Chien | Simplified reed-solomon decoding circuit and method of decoding reed-solomon codes |
US7281196B2 (en) * | 2003-08-08 | 2007-10-09 | Matsushita Electric Industrial Co., Ltd. | Single error Reed-Solomon decoder |
KR100747487B1 (ko) | 2004-12-10 | 2007-08-08 | 한국전자통신연구원 | 리드-솔로몬 복호 장치 및 수정된 유클리드 알고리즘연산회로 |
-
2007
- 2007-06-21 KR KR1020070061144A patent/KR20080112583A/ko not_active Application Discontinuation
-
2008
- 2008-06-20 US US12/214,730 patent/US8099656B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8099656B2 (en) | 2012-01-17 |
US20080320372A1 (en) | 2008-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8069388B2 (en) | Distributed block coding (DBC) | |
US8798138B2 (en) | Digital broadcast transmitter, digital broadcast receiver, and methods for configuring and processing streams thereof | |
US8116400B2 (en) | Apparatus for adapting reception modes of a mobile DTV receiver in response to signaling | |
US8065594B2 (en) | 8VSB DTV signals with PCCC and subsequent trellis coding | |
US8799739B2 (en) | Receiving apparatus, receiving method, program, and receiving system | |
US8649429B2 (en) | Systems for reducing adverse effects of deep fades in DTV signals designed for mobile reception | |
US8411761B2 (en) | Sub-channel acquisition in a digital television receiver designed to receive mobile/handheld signals | |
CA2692639C (en) | Device for processing streams and method thereof | |
KR20080112583A (ko) | 리드 솔로몬 디코더 및 그 방법 | |
EP2454838A1 (en) | An apparatus | |
JP2008524954A (ja) | リードソロモンシンボルの復号装置及び方法 | |
US9906327B2 (en) | Receiving device, receiving method, and program | |
US7929529B2 (en) | Digital broadcasting system and data processing method thereof | |
KR20120115123A (ko) | 오디오 패킷을 포함하는 전송 스트림을 전송하는 디지털 방송 송신기, 이를 수신하는 디지털 방송 수신기 및 그 방법들 | |
KR100737091B1 (ko) | 통합 디지털 멀티미디어 방송 수신 장치 | |
US8441581B2 (en) | Slot-interleaved decoding of concatenated convolutional coding in mobile/hand-held digital television receivers | |
JP2008263470A (ja) | デジタル放送復調装置 | |
JP4437974B2 (ja) | Tsパケットインタリーバ、tsパケット変換器、ts−ip変換器およびip−ts変換器 | |
US20100225825A1 (en) | Terminated concatenated convolutional coding of M/H group data in 8VSB digital television signals | |
JP2010183217A (ja) | 誤り訂正受信装置及び誤り訂正受信方法 | |
JP2010136418A (ja) | デジタル放送復調装置 | |
KR20030026761A (ko) | 디지털 vsb 전송 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |