KR100835134B1 - 순방향 오류정정 복호화 방법 및 복호화기. - Google Patents

순방향 오류정정 복호화 방법 및 복호화기. Download PDF

Info

Publication number
KR100835134B1
KR100835134B1 KR1020060079501A KR20060079501A KR100835134B1 KR 100835134 B1 KR100835134 B1 KR 100835134B1 KR 1020060079501 A KR1020060079501 A KR 1020060079501A KR 20060079501 A KR20060079501 A KR 20060079501A KR 100835134 B1 KR100835134 B1 KR 100835134B1
Authority
KR
South Korea
Prior art keywords
reed
solomon
packet
symbol
decoding
Prior art date
Application number
KR1020060079501A
Other languages
English (en)
Other versions
KR20080017816A (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 KR1020060079501A priority Critical patent/KR100835134B1/ko
Priority to US11/556,546 priority patent/US8010880B2/en
Publication of KR20080017816A publication Critical patent/KR20080017816A/ko
Application granted granted Critical
Publication of KR100835134B1 publication Critical patent/KR100835134B1/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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2933Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using a block and a convolutional code
    • H03M13/2936Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using a block and a convolutional code comprising an outer Reed-Solomon code and an inner convolutional code
    • 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/27Coding, 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 using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver

Abstract

본 발명은 복호화 방법 및 복호화기에 관한 것으로, 더욱 상세하게는 순방향 오류정정(Forward Error Correction; FEC) 복호화 방법 및 복호화기에 관한 것이다.
본 발명에 의한 순방향 오류정정 복호화 방법은 (a) 심볼의 위치에 대한 매핑 정보를 생성하는 단계, (b) 패킷에서 에러의 위치를 결정하는 단계, (c) 상기 에러의 위치와 상기 매핑 정보에 기초하여 상기 패킷의 후속 패킷의 삭제자를 결정하는 단계 및 (d) 상기 삭제자에 기초하여 상기 후속 패킷을 디코딩하는 단계를 포함한다.
리드-솔로몬 코드, 길쌈 인터리버, 삭제자

Description

순방향 오류정정 복호화 방법 및 복호화기.{FORWARD ERROR CORRECTION DECODER AND METHOD THEREOF}
도 1은 일반적인 지상파 디지털 멀티미디어 방송(Terrestial-Digital Multimedia Broadcasting; T-DMB) 시스템의 송신기의 블록도이다.
도 2는 일반적인 T-DMB 시스템의 수신기의 블록도이다.
도 3은 도 1의 일반적인 T-DMB 시스템의 송신기에서의 순방향 오류정정 부호화부의 상세 블록도이다.
도 4는 도 2의 일반적인 T-DMB 시스템의 수신기에서의 순방향 오류정정 복호화부의 상세 블록도이다.
도 5의 (a)는 일반적인 T-DMB 시스템의 송신기에서의 길쌈 인터리버의 개념도이고, (b)는 일반적인 T-DMB 시스템의 수신기에서의 길쌈 디인터리버의 개념도이다.
도 6은 본 발명에 따른 순방향 오류정정 복호화기의 블록도이다.
도 7은 길쌈 디인터리버 전과 후의 수신된 심볼의 관계를 도시한 것이다.
도 8은 본 발명에 따른 순방향 오류정정 복호화 방법을 설명하기 위한 순서도를 도시한 것이다.
본 발명은 복호화 방법 및 복호화기에 관한 것으로, 더욱 상세하게는 순방향 오류정정(Forward Error Correction; FEC) 복호화 방법 및 복호화기에 관한 것이다.
디지털 방식으로 신호가 전송되는 경우에도 오류가 발생할 수 있다. 특히,디지털기기들이 많은 데이터 용량을 빠른 속도로 전송시키는 경우에는 그 만큼 오류가 발생할 가능성이 커지게 된다.
이러한 오류를 확인하기 위한 오류 검출 방법 중 가장 간단한 방법은 패리티(parity)라고 불리는 비트를 데이터에 덧붙이는 방법이다. 패리티는 홀짝이라는 뜻으로, 0과 1로 구성된 디지탈 데이터에서 1의 갯수가 항상 홀수 혹은 짝수개가 되도록 맞추는 방법이다.
예를 들어 짝수 패리티를 쓴다면, 원래 데이터에서 1의 갯수가 홀수이면 1인 패리티 비트를 덧붙이고, 원래 데이터에서 1의 갯수가 짝수이면 패리티 비트는 0으로 한다. 홀수 패리티는 짝수 패리티와 반대이다.
오류를 검출한 경우 다음 문제는 그것을 바른 값으로 고치는 것이다. 가장 쉽게 생각할 수 있는 방법은 오류가 발생한 것을 알았을 때 데이터를 다시 읽어들이거나 다시 전송하는 것이다. 그러나, 이러한 방법은 재전송에 필요한 시간이 소요될 뿐만 아니라, 경우에 따라 재전송이 불가능한 경우도 있기 때문에 효과적인 방법이 아니다.
이러한 단점을 해결하기 위해 처음에 데이터를 보낼 때 오류 검출뿐만 아니라 복구까지도 가능한 방법을 생각하게 되었다. 이러한 방법은 앞으로 발생할 오류를 미리 정정한다는 의미에서 순방향 오류 정정(Forward Error Correction, FEC) 방법이라 한다. 순방향 오류 정정 방법은 오류를 복구하기 위해서는 데이터를 중복해서 전송한다.
순방향 오류 정정 방법 중 가장 많이 사용되는 방법은 리드-솔로몬 코딩(Reed-Solomon Coding)방법이다. 이 방법을 이용하면 k개의 데이터와 r개의 오류 복구 정보를 덧붙였을 때, k+r 개 중 아무 k개만 무사히 읽어들이면 원래의 데이터를 복구할 수 있다. 즉, r개까지의 데이터에는 오류가 발생해도 원래 데이터를 복구할 수 있다.
도 1은 일반적인 지상파 디지털 멀티미디어 방송(Terrestial-Digital Multimedia Broadcasting; T-DMB) 시스템의 송신기의 블록도이다.
영상 신호(101)는 순방향 에러 정정 부호화부(FEC; 102)에서 리드-솔로몬(Reed-Solomon) 인코딩되고 길쌈 인터리빙되고, 에너지 분산 스크램블러(103)를 거친 후 김쌈 인코더(104)에서 길쌈 인코딩된다. 시간 인터리버(105)에서 길쌈 인코딩된 비트를 시간영역에서 인터리빙한다. 주 서비스 다중화기(main service multiplexer; 108)에서는 전송 비트 스트림을 만들기 위해 오디오 신호(106), 패킷 데이터(107) 등의 여러 부호화된 채널의 비트 스트림을 다중화(multiplexing)한다. 콘트롤 신호(109)는 에너지 분산 스크램블러(110)를 거친 후 김쌈 인코더(111)에서 길쌈 인코딩된다. 다중화된 비트 스트림은 전송 프레임 다중화기(transmission frame multiplexer; 112)에 의해 콘트롤 신호에 대한 비트 스트림과 다중화된다. DAB심볼 생성기(Digital Audio Broadcasting symbol generator; 113)는 다중화된 전송 프레임을 OFDM(Orthogonal Frequency Division Multiplexing)심볼로 변환하고, 변환된 OFDM 심볼은 송신단 처리부(114)에서 변조된 후 안테나를 통해 무선 채널(115)로 송출된다.
도 2는 일반적인 T-DMB 시스템의 수신기의 블록도이다.
DMB 수신기는 무선 채널(208)을 통해 DMB 방송 기지국에서 송출된 전송 신호를 수신한다. 수신기 처리부(207)는 증폭기, 필터, 주파수 하향 변환기, 아날로그-디지털 변환기(Analogue-to-Digital converter; ADC)등의 기능 블록을 포함한다. 디지털로 변환된 샘플들은 DAB 심볼 검파기(DAB symbol detector; 206)에서 검파 및 동기화 과정을 거친 후 여러 채널로 역 다중화 된다. 각 채널의 비트 스트림은 시간 디인터리버(205), 김쌈 디코더(204) 및 에너지 분산 디스크램블러(203)를 경유하며 디인터리빙, 길쌈 디코딩, 에너지 분산 디스크램블링된다. 순방향 오류 정정 복호화부(202)에서는 에너지 분산 디스크램블링된 비트 스트림을 심볼로 변환 후 길쌈 디인터리빙되어 리드-솔로몬 디코딩된다. 길쌈 디코더(204)는 군집 에러에 취약하기 때문에 길쌈 디코딩 후에 에러가 있다면 단일 에러가 아닌 군집 형태의 에러를 가진다. 따라서 에너지 분산 디스크램블링 후의 비트 스트림도 군집 형태의 에러를 가지게 된다.
도 3은 도 1의 일반적인 T-DMB 시스템의 송신기에서의 순방향 오류정정 부호화부의 상세 블록도이다.
순방향 오류 정정 부호화부(102)는 리드-솔로몬 인코더(301)와 길쌈 인터리버(convolutional interleaver; 302)로 구성된다. 리드-솔로몬(n, k, t) 인코더(301)는 패킷 단위로 인코딩하며 입력으로 k개의 심볼로 된 패킷을 받아서 2t개의 패러티 심볼이 계산되고, 이를 입력 패킷에 포함시킨다. 패러티 심볼은 부호 생성 다항식(code generator polynomial)을 근거로 하여 계산되며 인코딩 된 출력 패킷은 n = k + 2t 개의 심볼을 가진다. 예를 들어 T-DMB 시스템은 리드-솔로몬(204,188,8) 코드가 사용된다. n개의 심볼로 이루어진 출력 패킷은 길쌈 인터리빙 과정을 겪는다.
도 4는 도 2의 일반적인 T-DMB 시스템의 수신기에서의 순방향 오류정정 복호화부의 상세 블록도이다.
순방향 오류정정 복호화부(202)는 길쌈 디인터리버(convolutional deinterleaver; 401)와 리드-솔로몬 디코더(402)로 구성된다. 길쌈 디인터리버(401)는 에너지 분산 디스크램블러로부터 받은 심볼을 리드-솔로몬 디코더(402)에 전달하기 전에 디인터리빙을 한다. 길쌈 디인터리빙 후의 심볼은 리드-솔로몬 입력 패킷를 만들기 위해 버퍼링된 후에 리드-솔로몬(n, k, t) 디코더(402)가 각각의 패킷를 디코딩한다. 리드-솔로몬 디코더(402)는 n개의 입력 심볼을 입력 받아 2t개의 패러티 심볼을 바탕으로 하여 디코딩된 k개의 심볼을 출력한다. 이때 에러의 개수를 e개, 삭제자(erasure; 위치는 알지만 그 값을 모르는 에러)의 개수를 r개라고 하면 리드-솔로몬(n, k, t) 디코더(402)의 총 에러 수정 능력은 2e + r = 2t 가 된다.
그러나, 종래의 경우 리드-솔로몬 디코더(402)는 에러의 위치들에 대한 정보가 없기 때문에 삭제자(erasure)를 수정할 수 없고, 단지 에러만을 수정할 수 있다. 따라서, 한 패킷의 에러의 개수가 t 보다 크고 2t 보다 작으면 비록 리드-솔로몬(n, k, t) 디코더(402)의 에러 수정 능력(2t) 범위 안에 있다고 하더라도 단 하나의 에러도 수정할 수 없는 문제점이 있다.
도 5의 (a)는 일반적인 T-DMB 시스템의 송신기에서의 길쌈 인터리버의 개념도이고, (b)는 일반적인 T-DMB 시스템의 수신기에서의 길쌈 디인터리버의 개념도이다.
도 5의 (a)에 도시된 바와 같이, 길쌈 인터리버(302)에는 I개의 분기(branch)가 있고 각 분기는 쉬프트 레지스터로 구성된다. i번째 분기는 (i-1)*M 개의 레지스터로 되어 있어 (i-1)*M 개의 심볼을 저장할 수 있다. 리드-솔로몬 인코더(301)의 출력 심볼은 쉬프트 레지스터에 순환적으로 저장된다. 각 분기의 쉬프트 레지스터가 완전히 채워지면 각 분기로 심볼이 하나씩 입력될 때 마다 하나의 심볼이 출력된다. 이러한 방식으로 입력 심볼은 인터리빙 된다.
도 5의 (b)에 도시된 바와 같이, 길쌈 디인터리버(401)도 I개의 분기(branch)가 있고 각 분기는 쉬프트 레지스터로 구성된다. 길쌈 디인터리버(401)의 구조상 특징으로 인해, 길쌈 디인터리빙 후의 심볼 에러 위치의 순서는 길쌈 디인터리빙 전의 순서의 반대이다.
본 발명은 전술한 문제점을 해결하기 위한 것으로, 통신 시스템에서 요구하 는 비트 오류 확률 (bit error rate)를 만족시킬 수 있도록 오류 수정 능력을 향상시킬 수 있는 복호화기 및 그 방법을 제공한다.
본 발명의 일 실시예에 의한 순방향 오류정정 복호화 방법은 (a) 인터리빙 전후의 심볼의 위치에 대한 매핑 정보를 생성하는 단계; (b) 디코딩 후 패킷에서 에러의 위치를 결정하는 단계; (c) 상기 에러의 위치와 상기 매핑 정보에 기초하여 상기 패킷의 후속 패킷의 삭제자를 결정하는 단계; 및 (d) 상기 삭제자에 기초하여 상기 후속 패킷을 디코딩하는 단계;를 포함한다.
여기서, 상기 패킷은 리드-솔로몬 패킷이고, 상기 디코딩은 리드-솔로몬 디코딩이라 할 수 있다.
여기서, 상기 리드-솔로몬 패킷은은 상기 심볼을 버퍼링하여 생성할 수 있다.
여기서, 상기 심볼은 길쌈 디인터리빙 전후의 심볼일 수 있다.
여기서, 순방향 오류정정 복호화 방법은 (e) 상기 삭제자의 유효성을 검사하는 단계;를 더 포함할 수 있다.
여기서, 상기 (e) 단계는, (e-1) 상기 리드-솔로몬 디코딩 전후의 삭제자의 동일성을 비교하는 단계; 및 (e-2) 상기 동일성이 인정되면, 상기 삭제자를 정확한 심볼로 설정하는 단계;를 포함할 수 있다.
여기서, 순방향 오류정정 복호화 방법은 (f) 상기 삭제자를 상기 후속 리드-솔로몬 패킷에서 정확한 심볼로 설정하는 단계;를 더 포함할 수 있다.
여기서, 순방향 오류정정 복호화 방법은 (g) 상기 결정된 삭제자는 상기 후속 리드-솔로몬 패킷을 디코딩할 때에 정확한 심볼로 설정하는 단계;를 더 포함할 수 있다.
본 발명의 다른 실시예에 따른 순방향 오류정정 복호화기는 심볼을 길쌈 디인터리빙하는 길쌈 디인터리버; 상기 길쌈 디인터리빙 전후의 상기 심볼의 위치에 대한 매핑 정보를 생성하는 심볼 맵퍼; 리드-솔로몬 패킷을 입력받아 디코딩 후 에러의 위치를 결정하고, 상기 에러를 수정하는 리드-솔로몬 디코더; 및 상기 에러의 위치와 상기 매핑 정보에 기초하여 상기 리드-솔로몬 패킷의 후속 리드-솔로몬 패킷의 삭제자를 결정하는 삭제자 예측부;를 포함하고, 상기 리드-솔로몬 디코더는 상기 삭제자에 기초하여 상기 후속 리드-솔로몬 디코딩한다.
여기서, 상기 삭제자 예측부는 상기 삭제자의 유효성을 검사하는 유효성 검사부를 포함할 수 있다.
여기서, 상기 유효성 검사부는 상기 리드-솔로몬 디코딩 후의 심볼과 상기 삭제자의 동일성을 비교하여, 상기 동일성이 인정되면, 상기 삭제자를 정확한 심볼로 설정할 수 있다.
여기서, 상기 리드-솔로몬 패킷은 상기 심볼을 버퍼링하여 생성할 수 있다.
본 발명의 또 다른 실시예에 따른 수신기는 전술한 순방향 오류정정 복호화기를 포함한다.
여기서, 상기 수신기는 디지털 멀티미디어 방송용 신호를 수신할 수 있다.
본 발명은 한 패킷에서 리드-솔로몬 코드가 수정할 수 있는 삭제자의 수는 에러의 수의 두 배라는 것을 이용한 것으로, 리드-솔로몬 디코딩을 하기 전에 길쌈 인터리버 전후의 심볼의 위치 관계를 이용해 리드-솔로몬 코드(Reed-Solomon code)로 수정할 수 있는 삭제자(erasure)를 가능한 많이 예측하여 리드-솔로몬 코드의 최대 오류 수정 능력을 이용할 수 있도록 함으로써 디코딩 성능을 향상시키도록 한다.
이하 첨부한 도면을 참조하여 본 발명의 구성과 그에 따른 작용과 효과를 더욱 상세히 설명한다.
한편, 이하에서는 DMB 시스템을 예로 들어 설명하고 있으나 본 발명의 기술사상은 리드-솔로몬 코드를 사용하는 모든 통신, 방송 시스템에 적용할 수 있음은 자명하다.
도 6은 본 발명에 따른 순방향 오류정정 복호화기의 블록도이다.
순방향 오류정정 복호화기는 길쌈 디인터리버(601), 리드-솔로몬 디코더(603), 심볼 맵퍼(Symbol Mapper; 602) 및 삭제자 예측부(604)를 포함한다.
길쌈 디인터리버(601)는 심볼을 입력받아 디인터리빙한 후 리드-솔로몬 디코더(603)로 출력한다. 길쌈 디인터리버(601)는 송신부의 길쌈 인터리버에 의해 재배열된 심볼을 원래의 신호로 복원한다.
리드-솔로몬 디코터(603)는 리드-솔로몬 디코딩을 한다. 리드-솔로몬 디코 딩은 심볼단위가 아닌 패킷(블록)단위로 디코딩을 하기 때문에 심볼을 버퍼링한다. 리드-솔로몬 디코더(603)에서 리드-솔로몬 패킷을 입력받아 리드-솔로몬 디코딩이 끝나면, 현재의 패킷에 대한 심볼 에러의 위치가 결정되고, 심볼 에러가 수정된다.
심볼 맵퍼(602)는 길쌈 인터리빙 전후의 각 심볼들의 위치를 매핑하여 매핑정보를 생성한다. 이러한 매핑정보는 각각의 패킷에 따라 매핑 테이블에 업데이트될 수 있다.
삭제자 예측부(604)는 현재의 패킷에 대한 심볼 에러의 위치에 대한 정보와 심볼 맵퍼에서 생성한 매핑 정보 또는 매핑 테이블에 근거하여 다음의 디코딩 되지 않은 패킷의 삭제자를 예측한다.
리드-솔로몬 디코더(603)는 삭제자에 기초하여 리드-솔로몬 디코딩하여 에러와 전술한 다음의 디코딩 되지 않은 패킷의 삭제자를 수정할 수 있다.
도 7은 길쌈 디인터리버 전과 후의 수신된 심볼의 관계를 도시한 것이다.
도 7에 도시된 패턴은 AWGN(Additive White Gaussian Noise)채널, SNR(Signal-to-Noise)=4dB인 상황에서 23번째 리드-솔로몬 패킷의 길쌈 디인터리빙 전의 에러의 위치 패턴과 길쌈 디인터리빙 후의 23, 24, 28 그리고 29번째 패킷의 에러의 위치 패턴으로 T-DMB에서의 리드-솔로몬(204,188,8)디코더를 예시한 것이다.
1개의 심볼은 1 바이트가 되고, 입력은 204 바이트의 패킷이 되며, 출력은 188 바이트의 패킷이 된다. 길쌈 디인터리빙전에는 군집 형태(에러 1~8, 9~12)의 에러를 갖지만, 길쌈 디인터리빙 후에는 군집 형태의 에러가 23~30번째 패킷에 재분배 된다. 이때 길쌈 인터리버의 특성으로 인해 에러의 순서는 재분배 전의 반대가 된다.
따라서 현재의 디코딩된 리드-솔로몬 패킷의 에러 위치를 근거로 하여 길쌈 인터리빙 전후에 대한 심볼 위치의 맵핑 테이블을 만들 수 있다면, 다음 리드-솔로몬 패킷에 대한 에러의 위치를 미리 예측할 수 있으며, 이 에러들을 삭제자로 사용할 수 있다.
도 8은 본 발명에 따른 순방향 오류정정 복호화 방법을 설명하기 위한 순서도를 도시한 것이다.
복호화가 시작되면, 리드-솔로몬 디코딩을 할 수 있도록 N 개의 심볼을 버퍼링하여 리드-솔로몬 패킷을 생성한다(S801,S802). 이는 리드-솔로몬 디코더가 심볼단위가 아닌 패킷(블록)단위로 디코딩하기 때문이다.
길쌈 디인터리빙 전과 후의 각 심볼들의 위치를 매핑하고, 이 매핑 정보를 생성한다(S803). 이 매핑 정보는 맵핑 테이블로 구성되어 매 패킷마다 새로운 매핑 정보가 업데이트될 수 있다.
리드-솔로몬 디코딩이 끝나면 현재의 패킷에 대한 심볼 에러의 위치가 결정되고, 심볼 에러가 수정된다(S804). 현재의 리드-솔로몬 패킷을 리드-솔로몬 디코딩함으로써 심볼 에러의 위치가 결정될 수 있다.
현재의 패킷에 대한 심볼 에러 위치에 대한 정보와 매핑 정보 또는 맵핑 테 이블에 근거하여 현재의 패킷의 다음의 디코딩 되지 않은 패킷의 에러의 위치, 즉, 삭제자를 예측하여 찾아낸다(S805).
예측된 삭제자는 전술한 다음의 디코딩 되지 않은 패킷에서 새로운 에러로서 간주되지 않는다. 따라서 예측된 삭제자의 위치 정보는 다음 패킷의 삭제자를 예측하는데 사용되지 않고 새로운 심볼 에러만이 다음 패킷의 삭제자를 예측하는데 사용된다.
삭제자를 예측한 후에는 바로 전에 디코딩된 패킷의 삭제자의 유효성을 검사한다(S806). 예측된 삭제자가 디코딩 후에 아무런 변화가 없다면 이것은 예측된 심볼이 에러가 없는 정확한 심볼이었음을 의미하는 것으로, 뒤따라 오는 패킷에서 이 심볼과 관계된 모든 삭제자는 잘못 예측된 삭제자이다. 따라서 삭제자 예측부는 이 남아 있는 모든 예측된 삭제자를 보통의 심볼로 재설정한다.
데이터가 끝날 때까지 리드-솔로몬 패킷에서 에러의 위치를 결정하고, 삭제자를 예측하며, 삭제자의 유효성을 검사하는 과정 등이 반복된다(S807, S808).
본 발명에서 삭제자 예측부가 현재의 심볼 에러를 다음 몇 개의 패킷에 심볼 삭제자로 적용할 것인가 하는 것을 예측도라고 정의하기로 한다.
수신기에서 예측도를 M이라 정했다는 것은 길쌈 인터리빙전에 하나의 군집에러에는 최대 (M+1)개의 에러가 있다는 것을 가정하는 것이다. 즉 리드-솔로몬 디코더가 한 패킷에서 새로운 심볼 에러를 감지할 때마다 이 에러와 M개의 삭제자가 길쌈 디인터리빙 전에 하나의 군집에러에 있었던 것으로 간주되고, 뒤따라 오는 디코딩되지 않은 M개의 패킷들에서 총 M개의 심볼 삭제자를 예측한다.
도 7에 도시된 패턴을 예로 들어 예측도를 더욱 상세히 설명한다.
도 7에서 길쌈 디인터리빙 전의 23번째 패킷은 2개의 군집 에러가 있다. 첫 번째 군집 에러에는 8개의 연속적인 에러가 있고, 두 번째 군집 에러에는 3개의 연속적인 에러가 있다. 길쌈 디인터리빙 후에 첫 번째 군집 에러에 있던 에러들은 23~29번째 패킷으로 디인터리빙되어 흩어진다. 길쌈 디인터리빙 후의 23번째 패킷의 첫 번째 에러(에러 8)는 리드-솔로몬 디코딩으로 수정되고, 그 위치도 알 수 있다.
만약 예측도가 2이면 길쌈 인터리빙 전의 23번째 패킷의 에러 7, 6의 위치가 길쌈 인터리빙 후의 24, 25번째 패킷에서 예측되고, 만약 예측도가 3이면 에러 5, 6, 7의 위치가 24, 25, 26번째 패킷에서 예측된다. 예측도는 실제 수신기의 상황에 따라 선택할 수 있다.
이상의 설명에서와 같이 본 발명은 리드-솔로몬(n, k, t) 코드의 최대 오류/삭제자 수정 능력을 이용할 수 있게 함으로써 한 패킷에서 수정할 수 있는 에러의 개수를 t개 이상이 되게 하여 오류정정의 성능을 개선시킨다.
또한 종래 방식의 리드-솔로몬 디코더를 사용하는 수신기에 비해 더 낮은 SNR에서도 안정된 수신을 위해 요구되는 BER을 만족시킬 수 있게 되어 전력소비를 줄일 수 있다.

Claims (14)

  1. (a) 인터리빙 전후의 심볼의 위치에 대한 매핑 정보를 생성하는 단계;
    (b) 디코딩 후 패킷에서 에러의 위치를 결정하는 단계;
    (c) 상기 에러의 위치와 상기 매핑 정보에 기초하여 상기 패킷의 후속 패킷의 삭제자를 결정하는 단계; 및
    (d) 상기 삭제자에 기초하여 상기 후속 패킷을 디코딩하는 단계;
    를 포함하는, 순방향 오류정정 복호화 방법.
  2. 제1 항에 있어서,
    상기 패킷은 리드-솔로몬 패킷이고, 상기 디코딩은 리드-솔로몬 디코딩인, 순방향 오류정정 복호화 방법.
  3. 제2 항에 있어서,
    상기 리드-솔로몬 패킷은은 상기 심볼을 버퍼링하여 생성하는, 순방향 오류정정 복호화 방법.
  4. 제3 항에 있어서,
    상기 심볼은 길쌈 디인터리빙 전후의 심볼인, 순방향 오류정정 복호화 방법.
  5. 제4 항에 있어서,
    (e) 상기 삭제자의 유효성을 검사하는 단계;
    를 더 포함하는, 순방향 오류정정 복호화 방법.
  6. 제5 항에 있어서,
    상기 (e) 단계는,
    (e-1) 상기 리드-솔로몬 디코딩 전후의 삭제자의 동일성을 비교하는 단계; 및
    (e-2) 상기 동일성이 인정되면, 상기 삭제자를 정확한 심볼로 설정하는 단계;
    를 포함하는, 순방향 오류정정 복호화 방법.
  7. 제4 항에 있어서,
    (f) 상기 삭제자를 상기 후속 리드-솔로몬 패킷에서 정확한 심볼로 설정하는 단계;
    를 더 포함하는,순방향 오류정정 복호화 방법.
  8. 제 4항에 있어서,
    (g) 상기 결정된 삭제자는 상기 후속 리드-솔로몬 패킷을 디코딩할 때에 정확한 심볼로 설정하는 단계;
    를 더 포함하는, 순방향 오류정정 복호화 방법.
  9. 심볼을 길쌈 디인터리빙하는 길쌈 디인터리버;
    상기 길쌈 디인터리빙 전후의 상기 심볼의 위치에 대한 매핑 정보를 생성하는 심볼 맵퍼;
    리드-솔로몬 패킷을 입력받아 디코딩 후 에러의 위치를 결정하고, 상기 에러를 수정하는 리드-솔로몬 디코더; 및
    상기 에러의 위치와 상기 매핑 정보에 기초하여 상기 리드-솔로몬 패킷의 후속 리드-솔로몬 패킷의 삭제자를 결정하는 삭제자 예측부;
    를 포함하고, 상기 리드-솔로몬 디코더는 상기 삭제자에 기초하여 상기 후속 리드-솔로몬 디코딩하는, 순방향 오류정정 복호화기
  10. 제9 항에 있어서,
    상기 삭제자 예측부는 상기 삭제자의 유효성을 검사하는 유효성 검사부를 포함하는, 순방향 오류정정 복호화기
  11. 제10 항에 있어서,
    상기 유효성 검사부는 상기 리드-솔로몬 디코딩 후의 심볼과 상기 삭제자의 동일성을 비교하여, 상기 동일성이 인정되면, 상기 삭제자를 정확한 심볼로 설정하는, 순방향 오류정정 복호화기.
  12. 제9 항에 있어서,
    상기 리드-솔로몬 패킷은 상기 심볼을 버퍼링하여 생성하는, 순방향 오류정정 복호화기.
  13. 제10 항에 의한 순방향 오류정정 복호화기를 포함하는, 수신기.
  14. 제13 항에 있어서,
    상기 수신기는 디지털 멀티미디어 방송용 신호를 수신하는, 수신기.
KR1020060079501A 2006-08-22 2006-08-22 순방향 오류정정 복호화 방법 및 복호화기. KR100835134B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060079501A KR100835134B1 (ko) 2006-08-22 2006-08-22 순방향 오류정정 복호화 방법 및 복호화기.
US11/556,546 US8010880B2 (en) 2006-08-22 2006-11-03 Forward error correction decoder and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060079501A KR100835134B1 (ko) 2006-08-22 2006-08-22 순방향 오류정정 복호화 방법 및 복호화기.

Publications (2)

Publication Number Publication Date
KR20080017816A KR20080017816A (ko) 2008-02-27
KR100835134B1 true KR100835134B1 (ko) 2008-06-04

Family

ID=39171209

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060079501A KR100835134B1 (ko) 2006-08-22 2006-08-22 순방향 오류정정 복호화 방법 및 복호화기.

Country Status (2)

Country Link
US (1) US8010880B2 (ko)
KR (1) KR100835134B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101343877B1 (ko) 2012-06-21 2013-12-20 한라대학교산학협력단 순방향 오류 정정 패킷 생성방법과 이를 이용한 서버와 클라이언트 장치

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4875451B2 (ja) * 2006-10-17 2012-02-15 パナソニック株式会社 ディジタルデータ受信装置
EP2017964A1 (en) * 2007-06-04 2009-01-21 Dibcom Packet interleaving method
US7995578B2 (en) * 2007-12-14 2011-08-09 Electronics And Telecommunications Research Institute Repetition apparatus and method for repeatedly transmitting and receiving data packet using different puncturing patterns
US20090249172A1 (en) * 2008-03-26 2009-10-01 Qualcomm Incorporated Methods and apparatus for improved decoding of bursts that include multiple concatenated protocol data units
US8126014B2 (en) * 2008-04-09 2012-02-28 Qualcomm Incorporated Methods and apparatus for improved decoding of hybrid automatic repeat request transmissions
CN103166649B (zh) 2011-12-19 2016-06-15 国际商业机器公司 用于解码循环码的方法、装置和解码器
CN102710386A (zh) * 2012-06-18 2012-10-03 南京信息工程大学 一种气象预警信息处理的信道编码系统及其工作方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990039252A (ko) * 1997-11-11 1999-06-05 윤종용 이레이저 정정방법 및 그 장치
EP1009123A2 (en) * 1998-12-09 2000-06-14 Nec Corporation Reed-solomon receiving ciruit
JP2002100127A (ja) 2000-07-07 2002-04-05 Internatl Business Mach Corp <Ibm> エラー訂正コード・システム及び方法
KR20050006891A (ko) * 2003-07-10 2005-01-17 삼성전자주식회사 에러 정정 디코딩 방법 및 그 장치
JP2006074656A (ja) 2004-09-06 2006-03-16 Yokogawa Electric Corp 前方向誤り訂正方法とそれを用いた通信方法および通信装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6697985B1 (en) * 2000-10-04 2004-02-24 Actelis Networks Inc. Predictive forward error correction redundancy
US20050286566A1 (en) * 2004-06-23 2005-12-29 Po Tong Versatile erasure forecasting system for impulse noise mitigation
US20080052609A1 (en) * 2006-08-14 2008-02-28 Chia-Ning Peng Method and apparatus to perform erasure forecasting in communication systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990039252A (ko) * 1997-11-11 1999-06-05 윤종용 이레이저 정정방법 및 그 장치
EP1009123A2 (en) * 1998-12-09 2000-06-14 Nec Corporation Reed-solomon receiving ciruit
JP2002100127A (ja) 2000-07-07 2002-04-05 Internatl Business Mach Corp <Ibm> エラー訂正コード・システム及び方法
KR20050006891A (ko) * 2003-07-10 2005-01-17 삼성전자주식회사 에러 정정 디코딩 방법 및 그 장치
JP2006074656A (ja) 2004-09-06 2006-03-16 Yokogawa Electric Corp 前方向誤り訂正方法とそれを用いた通信方法および通信装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101343877B1 (ko) 2012-06-21 2013-12-20 한라대학교산학협력단 순방향 오류 정정 패킷 생성방법과 이를 이용한 서버와 클라이언트 장치

Also Published As

Publication number Publication date
US20080065963A1 (en) 2008-03-13
KR20080017816A (ko) 2008-02-27
US8010880B2 (en) 2011-08-30

Similar Documents

Publication Publication Date Title
KR101208504B1 (ko) 디지털 방송 시스템 및 처리 방법
KR100835134B1 (ko) 순방향 오류정정 복호화 방법 및 복호화기.
KR101191181B1 (ko) 디지털 방송의 송/수신 시스템 및 데이터 구조
KR101216079B1 (ko) 디지털 방송 시스템 및 처리 방법
US7092455B2 (en) Digital VSB transmission system
US6980603B2 (en) Digital VSB transmission system
JP5232865B2 (ja) デジタルテレビジョンシステムのプリアンブル
KR100351829B1 (ko) 디지털 통신 시스템
KR101370889B1 (ko) 디지털 방송 시스템 및 처리 방법
KR100811184B1 (ko) 아우터 인코더 및 그 방법
KR101147767B1 (ko) 디지털 방송 시스템 및 처리 방법
US20110235721A1 (en) Method and apparatus for transmitting and receiving fec frame headers with variable header modulation
US6606724B1 (en) Method and apparatus for decoding of a serially concatenated block and convolutional code
KR20070055671A (ko) 디지털 방송 시스템 및 처리 방법
JP2011502384A (ja) 移動機能を有する高解像度テレビ伝送
KR20070038383A (ko) 디지털 방송 송/수신 시스템
US8458569B2 (en) Apparatus and method for improving error correction capability using stuffing byte
KR20040035297A (ko) 복합적 오류정정 부호화 기능을 갖는 디지털방송 시스템의전송장치 및 방법
KR20090115045A (ko) 디지털 방송 송신기 및 수신기와 그 스트림 처리방법들
KR101199372B1 (ko) 디지털 방송 시스템 및 처리 방법
JP2008524954A (ja) リードソロモンシンボルの復号装置及び方法
US8286051B2 (en) Method and apparatus for burst error detection and digital communication device
KR20040034878A (ko) 복합적 오류정정 부호화 기능을 구비한 디지털방송시스템의 전송장치 및 전송방법
JP2008177858A (ja) 転送データ処理装置、プログラム、及び転送データ受信装置
KR100949973B1 (ko) 방송 송/수신기 및 방송 신호 처리 방법

Legal Events

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

Payment date: 20120508

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130429

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee