KR100528873B1 - 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법 - Google Patents

구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법 Download PDF

Info

Publication number
KR100528873B1
KR100528873B1 KR10-2003-0073466A KR20030073466A KR100528873B1 KR 100528873 B1 KR100528873 B1 KR 100528873B1 KR 20030073466 A KR20030073466 A KR 20030073466A KR 100528873 B1 KR100528873 B1 KR 100528873B1
Authority
KR
South Korea
Prior art keywords
data
depuncturing
puncturing pattern
output
decoded data
Prior art date
Application number
KR10-2003-0073466A
Other languages
English (en)
Other versions
KR20050038228A (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 KR10-2003-0073466A priority Critical patent/KR100528873B1/ko
Priority to CNB2004100789593A priority patent/CN100502247C/zh
Priority to JP2004306063A priority patent/JP3909069B2/ja
Publication of KR20050038228A publication Critical patent/KR20050038228A/ko
Application granted granted Critical
Publication of KR100528873B1 publication Critical patent/KR100528873B1/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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/40Circuits

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법이 개시된다. 채널 복호 장치는, 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터를 삽입하여 디펑처링 데이터를 출력하는 디펑처링부와, 디펑처링 데이터를 디코딩하여 디코딩데이터를 출력하고 디펑처링 데이터 및 펑처링 패턴을 일시적으로 저장하여 독출하는 비터비디코더, 및 디펑처링 데이터, 디코딩 데이터, 및 펑처링 패턴을 이용하여 디코딩 데이터의 에러율을 산출하는 성능 측정부를 갖는다. 따라서, 비터비 디코더를 이용하여 디코딩 데이터의 에러율을 산출함으로써 성능 측정부의 하드웨어를 줄일 수 있으며, 이에 의해 전력소모 및 비용을 저감시킬 수 있다.

Description

구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법{Channel decoder having a design of simplicity and a method channel decoding}
본 발명은 채널 복호 장치에 관한 것으로, 보다 상세하게는 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법에 관한 것이다.
도 1은 종래의 채널 복호 장치에 대한 개략적인 블록도이다.
채널 복호 장치는, 디펑처링(Depuncturing)부(40)와, 비터비 디코더(Viterbi decoder)(50), 및 성능 측정부(60)를 가지고 있다.
디펑처링부(40)는 펑처링 패턴에 기초하여 수신된 펑처링된 데이터의 위치에 임의값을 삽입하여 디펑처링을 수행한다. 즉, 송신단에서 하나의 데이터에 대해 콘벌루셔널 인코딩(convolutional encoding)을 수행하여 소정개의 데이터를 만들고, 콘벌루셔널 인코딩된 데이터의 전송률을 향상시키기 위해 일부의 데이터를 빼고(puncturing) 전송한다. 이렇게 펑처링되어 전송된 데이터를 디펑처링부(40)에서는 펑처링 패턴에 기초하여 임의값을 삽입하여 디펑처링을 수행한다.
비터비 디코더(50)는 디펑처링된 데이터에 대해 비터비 디코딩을 수행한다.
성능 측정부(60)는 비터비 디코더(50)에서 디코딩 성능을 측정하는 장치로서, 지연부(61), 리인코더(63), 펑처링 패턴 발생부(65), 제어부(66), 및 에러산출부(67)를 가지고 있다.
지연부(61)는 비터비 디코더(50)에 입력된 데이터가 디코딩되어 출력되는 시간만큼의 시간동안 비터비 입력데이터를 지연시키어 출력한다.
리인코더(63)는 비터비 디코더(50)에서 디코딩된 데이터에 대해 콘벌루셔널 인코딩을 수행하여 비터비 입력데이터와 동일한 형태의 인코딩 데이터를 출력한다.
펑처링 패턴 발생부(65)는 송신단의 펑처링 패턴에 대응하는 펑처링 패턴을 발생한다.
제어부(66)는 지연부(61) 및 펑처링 패턴 발생부(65)의 동작을 제어한다. 즉, 비터비 입력데이터를 소정시간동안 지연시키도록 제어하며, 또한, 비터비 입력데이터에 대응하는 펑처링 패턴을 발생시키도록 제어한다.
에러 산출부(67)는 지연부(61)에서 출력되는 비터비 입력데이터와 리인코더(63)에서 출력되는 인코딩 데이터를 펑처링 패턴 발생부(65)에서 발생된 펑처링 패턴에 기초하여 비교연산하여 에러율을 산출한다. 즉, 펑처링 패턴에 기초하여 펑처링되지 않은 데이터에 대해 비교연산하여 디코딩 에러율을 계산하여 출력한다.
이와 같이, 종래의 성능 측정부(60)는, 비터비 입력데이터를 비터비 디코딩되기까지 소요되는 일정시간만큼 지연시키는 지연부(61)와, 펑처링 패턴을 발생하는 펑처링 패턴 발생부(65)를 갖으며, 또한, 지연부(61) 및 펑처링 패턴 발생부(65)를 제어하는 별도의 제어부(66)를 가지고 있다.
이와 같은 지연소자를 이용하는 시스템 구현은, 하드웨어 면적을 많이 차지하며 전력소모도 상대적으로 다른 소자들을 이용하는 경우 보다 크다는 단점을 가지며, 이에 따라서 채널 복호 장치의 구현이 복잡해지는 문제점을 갖는다.
또한, 펑처링 패턴이 매우 복잡한 시스템을 경우, 그를 위한 제어로직이 상당히 복잡해지는 문제점을 갖는다.
상기와 같은 문제점을 해결하기 위해 안출된 것으로, 본 발명의 목적은, 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법을 제공하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 채널 복호장치는, 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터를 삽입하여 디펑처링 데이터를 출력하는 디펑처링부; 디펑처링 데이터를 디코딩하여 디코딩데이터를 출력하고, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 일시적으로 저장하여 독출하는 비터비디코더; 및 상기 디펑처링 데이터, 상기 디코딩 데이터, 및 상기 펑처링 패턴을 이용하여 상기 디코딩 데이터의 에러율을 산출하는 성능 측정부;를 포함하며, 상기 비터비디코더는, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출시킨다.
바람직하게 상기 비터비디코더는, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 기록하기 위한 메모리; 및 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출시키도록 제어하는 메모리제어부;를 갖는다.
상기 비터비디코더는, 상기 디펑처링 데이터를 이용하여 가지메트릭을 생성하는 가지메트릭생성부; 상기 가지메트릭 및 경로메트릭에 대해 가산/비교/선택과정을 통해 상태천이정보를 출력하는 가산비교선택부; 상기 상태천이정보, 상기 디펑처링 데이터, 및 상기 펑처링 패턴을 기록하는 트레이스백 메모리; 및 상기 트레이스백 메모리에 기록된 상태천이정보를 역추적하여 상기 디펑처링 데이터의 디코딩 데이터를 출력시키며, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출시키는 트레이스백 제어부;를 갖는다.
바람직하게 상기 트레이스백 제어부는, 상기 가산비교선택부로부터 출력된 상기 상태천이정보가 상기 트레이스백 메모리에 기록될 때, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 상기 트레이스백 메모리에 기록하도록 제어한다.
상기 성능 측정부는, 상기 디코딩 데이터를 인코딩하여 인코딩 데이터를 출력하는 리인코더; 및 상기 독출된 디펑처링 데이터와 상기 인코딩 데이터를 상기 독출된 펑처링 패턴에 기초하여 비교 연산함으로써 상기 디코딩 에러율을 산출하는 에러산출부;를 갖는다.
바람직하게 상기 에러산출부는, 상기 펑처링 패턴에 기초하여, 펑처링되지 않은 위치의 상기 디펑처링 데이터와 상기 인코딩 데이터를 비교 연산하여 상기 디코딩 에러율을 산출한다.
한편, 본 발명에 따른 채널 복호 방법은, 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터를 삽입하여 디펑처링 데이터를 출력하는 디펑처링단계; 상기 디펑처링 데이터를 디코딩하여 디코딩데이터를 출력하고 상기 디펑처링 데이터와 상기 펑처링 패턴을 기록하며, 상기 디코딩 데이터가 출력될 때 상기 디코딩된 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출하는 비터비디코딩단계; 및 상기 디펑처링 데이터, 상기 디코딩 데이터, 및 상기 펑처링 패턴을 이용하여 상기 디코딩 에러율을 산출하는 성능측정단계;를 포함하는 것을 특징으로 한다.
상기 비터비디코딩단계는, 상기 디펑처링 데이터를 이용하여 가지메트릭을 생성하는 단계; 상기 가지메트릭 및 경로메트릭에 대해 가산/비교/선택과정을 통해 상태천이정보를 출력하는 단계; 상기 상태천이정보, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 기록하는 단계; 및 상기 트레이스백 메모리에 기록된 상태천이정보를 역추적하여 상기 디펑처링 데이터의 디코딩 데이터를 출력시키며, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출하는 단계;를 갖는다.
상기 성능 측정단계는, 상기 디코딩 데이터를 인코딩하여 인코딩 데이터를 출력하는 단계; 및 상기 독출된 디펑처링 데이터와 상기 인코딩 데이터를 상기 독출된 펑처링 패턴에 기초하여 비교 연산함으로써 상기 디코딩 에러율을 산출하는 단계;를 갖는다.
바람직하게 상기 디코딩 에러율은, 상기 펑처링 패턴에 기초하여 펑처링되지 않은 위치의 상기 디펑처링 데이터와 상기 인코딩 데이터를 비교 연산하여 산출한다.
따라서, 채널 복호 장치의 하드웨어를 줄일 수 있으며, 이에 의해 전력소모 및 비용을 저감시킬 수 있다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 2는 본 발명에 따른 채널 복호 장치에 대한 개략적인 블록도이다.
채널 복호 장치는 디펑처링부(240)와, 비터비 디코더(250), 및 성능 측정부(260)를 가지고 있다.
디펑처링부(240)는 입력된 데이터에 대해 펑처링 패턴에 기초하여 펑처링된 위치에 임의값의 데이터를 삽입하여 디펑처링을 수행한다.
즉, 송신단에서 하나의 데이터에 대해 콘벌루셔널 인코딩을 수행하여 소정개의 데이터를 만들고, 콘벌루셔널 인코딩된 데이터의 전송률을 향상시키기 위해 일부의 데이터를 빼고(puncturing) 전송한다.
[표 1]은 콘벌루셔널 인코더의 코드 레이트에 대응하는 펑처링 패턴을 나타낸 것이다.
Code Puncturing Pattern Matrix(C0, C1)
1/2 (1,1)
2/3 (11,10)
3/4 (110,101)
5/6 (11010,10101)
7/8 (1111010,1000101)
예컨데, 코드 레이트이 3/4인 경우, 펑처링 패턴(110,101)에 따라서 펑처링되는 데이터는 [표 2]에 나타낸 바와 같다.
t 0 1 2 3 4 5 6 7 8 ...
u(t) u(0) u(1) u(2) u(3) u(4) u(5) u(6) u(7) u(8) ...
C0(t) C0(0) C0(1) C0(2) C0(3) C0(4) C0(5) C0(6) C0(7) C0(8) ...
C1(t) C1(0) C1(1) C1(2) C1(3) C1(4) C1(5) C1(6) C1(7) C1(8) ...
[표 2]에 나타낸 바와 같이, 데이터 u(t)는 콘벌루셔널 인코딩되어 C0채널데이터 C0(t)와, C1채널데이터 C1(t)로 인코딩되고, 인코딩된 데이터는 펑처링 패턴(110,101)에 따라서 진하게 표시된 데이터는 펑처링되어 송신된다.
이와 같이, 펑처링되어 전송된 데이터는 디펑처링부(240)에서 송신단에서 적용된 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터값을 삽입하여 디펑처링을 수행한다.
비터비 디코더(250)는 입력되는 데이터(Vi_IN)에 대해 비터비 디코딩을 수행한다. 비터비 디코더(250)는 먼저, 입력데이터(Vi_IN)를 이용하여 브랜치 메트릭(Branch metric)과 패스 메트릭(Path metric)을 구하고, 브랜치 메트릭과 패스 메트릭을 이용하여 비교가산선택부(후술됨)에서 입력데이터의 상태 천이 정보(State Transition Information)를 트레이스백 메모리(미도시:후술됨)에 저장한다. 트레이스백 메모리(미도시)에 저장된 상태 천이 정보에 기초하여 입력데이터(Vi_IN)를 디코딩하여 출력한다.
또한, 트레이스백 메모리(미도시)에는 입력데이터(Vi_IN)와, 입력데이터에 대응하는 펑처링 패턴(Pun_P)이 저장된다.
비터비 디코더(250)에서 디코딩된 데이터(Decoded data)가 출력될 때, 디코딩된 데이터에 대응하는 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P), 역시 트레이스백 메모리(미도시)에서 독출된다.
성능 측정부(260)는 비터비 디코더(250)의 디코딩 에러율을 산출하여 비터비 디코더(250)의 성능을 측정한다. 성능 측정부(260)는 리인코더(263), 및 에러산출부(267)를 가지고 있다 .
리인코더(263)는 비터비 디코더(250)에서 디코딩된 데이터(decoded data)에 대해 콘벌루셔널 인코딩을 수행한다. 즉, 비터비 디코더(250)에 입력되는 데이터(Vi_IN)와 동일한 형태가 되도록 인코딩을 수행한다.
에러산출부(267)는 비터비 디코더(250)의 트레이스백 메모리(미도시)로부터 독출된 입력데이터(Vi_IN)와 리인코더(263)에서 콘벌루셔널 인코딩된 데이터(Encoded data)간을 비교 연산하여 디코딩 에러율을 산출한다. 비교 연산시, 비터비 디코더(250)의 트레이스백 메모리(미도시)로부터 독출된 펑처링 패턴(Pun_P)에 기초하여 비교 연산한다. 즉, 펑처링 패턴이 '1'인 경우에만 입력데이터(Vi_IN)와 인코딩 데이터(Encoded data)를 비교하여 에러율을 산출한다.
이에 의해, 비터비 디코더(250)의 디코딩 성능을 측정한다.
따라서, 비터비 디코더(250)를 이용하여 성능 측정부를 구현함으로써, 지연소자 및 펑처링 패턴 발생부와 같은 하드웨어를 제거함으로써 시스템의 사이즈를 줄일 수 있고, 또한, 이에 따른 전력소모 및 비용절감 등의 효과를 얻을 수 있다.
도 3은 본 발명에 따른 채널 복호 장치의 비터비 디코더(350)를 보다 상세하게 도시한 도이며, 도 4는 트레이스백 메모리(355-1)의 기록 제어 타이밍 도이며, 도 5는 트레이스백 메모리(355-1)의 구조를 도시한 것이다. 이하에서는 도 3 내지 도 5를 참조하여 본 발명을 보다 상세하게 설명한다.
디펑처링부(340)에서 디펑처링된 데이터는 비터비 디코더(350)에 입력된다. 비터비 디코더(350)에 입력된 데이터는 가지메트릭생성부(351), 가산비교선택부(353), 및 트레이스백부(355)를 통해서 디코딩된다.
가지메트릭생성부(351)는 입력데이터(Vi_IN)를 통해 브랜치 메트릭(branch metric:BM)을 구한다. 예컨데, 전송률이 1/2인 브랜치 메트릭 생성기인 경우, 00,01,10,11인 4가지의 코드워드와, 각각의 코드워드에 대응하는 입력 데이터들간의 유클리디언 또는 해밍 디스턴스를 구한다.
가산비교선택부(353)는 브랜치 메트릭(BM)과 경로 메트릭(Path metric:PM)을 가산하고, 가산된 값 중 같은 상태로 천이하는 두 값을 비교하여 작은 값을 경로 메트릭 메모리(미도시)에 저장하고, 이 때의 상태 천이 정보를 트레이스백부(355)로 출력한다.
트레이스백부(355)는 입력데이터(Vi_IN)에 대한 상태 천이 정보와, 성능 측정부(360)와 연동하기 위한 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P)이 기록되는 트레이스백 메모리(355-1)와, 트레이스백 메모리(355-1)의 기록 및 읽기를 제어하는 트레이스백 제어부(355-2)를 가지고 있다.
도 4는 트레이스백 메모리(355-1)의 기록 제어 타이밍 도이다. 도시된 바와 같이, 입력데이터(Vi_IN)가 비터비 디코더(350)에 입력되어 상태 천이 정보를 얻기까지 소비되는 클럭은 구속장(Depth)이 7이고, 1개의 버터플라이구조 ACS(Add Compare Select)로 처리하였을 경우에, 일반적으로 32 내지 34 클럭이다. 따라서, 32 내지 34 클럭 이후의 클럭(Wt)에 트레이스백 메모리(355-1)에 입력데이터(Vi_IN)에 대한 상태 천이 정보를 기록한다. 이때, 성능 측정부(360)와 연동하기 위한 입력데이터(Vi_IN), 및 펑처링 패턴(Pun_P) 역시, 동일한 클럭(Wt)에 기록한다.
도 4에 도시된 메모리 기록 제어 방식은, 기존 트레이스백 제어부(355-2)의 제어 방식을 활용하여 본 발명에 따른 입력데이터(Vi_IN), 및 펑처링 패턴(Pun_P)을 기록하는 예를 설명한 것이며, 그외의 다른 방식으로 기록 제어를 할 수 있음은 당연한다.
도 5는 전송률이 1/2인 입력데이터(Vi_IN)에 대한 트레이스백 메모리(355-1)의 구조를 일 예로서 도시한 것이다. 트레이스백 메모리(355-1)는 송신단의 콘벌루셔널 인코더의 레지스터 개수에 대응하는 상태 개수(W)와, 역추적 길이(L)에 대응하는 메모리 공간을 가지며, 성능 측정부(360)와 연동하기 위한 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P)을 기록하기 위한 메모리 공간을 갖는다.
따라서, 트레이스백 메모리(355-1)에는 입력데이터(Vi_IN)에 대한 상태 천이 정보와, I/Q 입력데이터(Vi_INi,Vi_INq), 및 I/Q채널 입력데이터(Vi_INi,Vi_INq)에 대응하는 펑처링 패턴(Pun_Pi,Pun_Pq)을 기록된다.
트레이스백 제어부(355-2)는 일정시간 후 트레이스백 메모리(355-1)에 기록된 상태 천이 정보에 기초하여 역추적함으로써 입력데이터(Vi_IN)에 대한 디코딩 데이터를 출력시킨다. 디코딩 데이터가 출력될 때, 트레이스백 메모리(355-1)에 기록된 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P)을 독출하여 성능 측정부(360)로 출력시킨다.
성능 측정부(360)는 비터비 디코더(350)로부터 출력되는 디코딩 데이터(decoded data), 입력데이터(Vi_IN), 및 그에 대응하는 펑처링 패턴(Pun_P)을 이용하여 비터비 디코더(350)의 성능을 측정한다.
리인코더(363)는 디코딩 데이터(decoded data)에 대해 비터비 디코더(350)의 입력데이터(Vi_IN)와 동일한 형태가 되도록 콘벌루셔널 인코딩을 수행한다.
에러산출부(367)는 비터비 디코더(350)의 트레이스백 메모리(355-1)로부터 독출된 입력데이터(Vi_IN)와 리인코더(363)에서 콘벌루셔널 인코딩된 데이터간을 비교 연산하여 디코딩 에러율을 산출한다. 비교 연산시, 비터비 디코더(350)의 트레이스백 메모리(미도시)로부터 독출된 펑처링 패턴(Pun_P)에 기초하여 비교 연산한다. 즉, 펑처링 패턴이 '1'인 경우에만 입력데이터(Vi_IN)와 인코딩 데이터를 비교하여 에러율을 산출한다.
도 6은 본 발명에 따른 디지털 방송 수신기의 비터비 디코더의 성능 측정 방법에 대한 흐름도이며, 도 3 및 도 6을 참조하여 본 발명에 따른 디지털 방송 수신기의 비터비 디코더의 성능 측정 방법을 설명한다.
디펑처링부(340)에서 디펑처링된 데이터(Vi_IN)와 펑처링 패턴(Pun_P)은 비터비 디코더(350)에 입력된다(S611).
비터비 디코더(350)에 입력된 데이터(Vi_IN)는 가지메트릭생성부(351), 및 가산비교선택부(353)를 통해 상태 천이 정보를 구해 트레이스백 메모리(355-1)에 기록한다. 상태 천이 정보를 기록한 후, 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P)를 트레이스백 메모리(355-1)에 기록한다(S613).
일정시간 이후, 트레이스백 제어부(355-2)는 트레이스백 메모리(355-1)에 기록된 상태 천이 정보에 기초하여 역추적함으로써 입력데이터(Vi_IN)에 대한 디코딩 데이터를 출력시킨다. 디코딩 데이터가 출력될 때, 트레이스백 메모리(355-1)에 기록된 입력데이터(Vi_IN) 및 펑처링 패턴(Pun_P)을 독출하여 성능 측정부(360)로 출력시킨다(S615).
성능 측정부(360)의 리인코더(363)에서는 디코딩 데이터를 콘벌루셔널 인코딩을 수행한다(S621).
에러산출부(367)는 비터비 디코더(350)의 트레이스백 메모리(355-1)로부터 독출된 입력데이터(Vi_IN)와 리인코더(363)에서 인코딩된 데이터를 펑처링 패턴(Pun_P)에 기초하여 비교 연산함으로써 디코딩 에러율을 산출한다(S623).
이상과 같이, 비터비 디코더의 트레이스백 메모리에 입력데이터와 펑처링 패턴을 저장하고, 소정시간 후 디코딩 데이터가 출력될 때 입력데이터와 펑처링 패턴을 독출하여 성능 측정시 이용한다.
따라서, 채널 복호 장치의 하드웨어를 줄일 수 있으며, 이에 의해 전력소모 및 비용을 저감시킬 수 있다.
본 발명에 따르면, 비터비 디코더의 성능 측정시에 필요한 비터비 입력데이터와, 펑처링 패턴을 비터비 디코더 내의 트레이스백 메모리에 기록한 후 이를 활용함으로써 성능 측정부의 하드웨어를 줄일 수 있다.
즉, 종래의 성능 측정부에서는 비터비 디코더에 입력되는 데이터를 지연시키기 위한 지연소자와, 지연소자를 제어하기 위한 제어로직, 펑처링 패턴을 발생하는 장치와, 입력데이터에 대응하는 펑처링 패턴을 발생시키기 위한 제어로직 등을 마련하여 디코딩 성능을 측정하였다. 그러나, 본 발명에 따라서는 입력데이터 및 펑처링 패턴을 트레이스백 메모리에 기록 및 읽기를 제어함으로써 종래의 지연소자, 펑처링 패턴 발생장치, 및 이들을 위한 제어로직의 기능을 효과적으로 대신할 수 있다.
특히, 펑처링 패턴이 매우 복잡한 시스템인 경우에도 그를 위한 별도의 제어로직이 필요없이, 기존의 트레이스백 제어로직으로 대체하여 사용할 수 있음으로써 하드웨어의 복잡도를 크게 줄일 수 있다.
따라서, 채널 복호 장치의 구현을 간단하게 할 수 있으며, 또한, 전력소모 및 비용 절감 등의 효과를 얻을 수 있다.
이상에서는 본 발명의 바람직한 실시예에 대해서 도시하고 설명하였으나, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
도 1은 종래의 채널 복호 장치에 대한 개략적인 블록도,
도 2는 본 발명에 따른 구현이 간단한 채널 복호 장치에 대한 개략적인 블록도,
도 3은 본 발명에 따른 채널 복호 장치에 대한 상세한 블록도,
도 4는 도 3의 트레이스백 메모리에 대한 기록 제어 타이밍 도,
도 5는 도 3의 트레이스백 메모리 구조도, 그리고
도 6은 본 발명에 따른 채널 복호 방법에 대한 흐름도이다.
* 도면의 주요부분에 대한 부호의 설명 *
340 : 디펑처링부 350 : 비터비 디코더
351 : 가지메트릭생성부 353 : 가산비교선택부
355 : 트레이스백부 355-1 : 트레이스백 메모리
355-2 : 트레이스백 제어부 360 : 성능 측정부
363 : 리인코더 365 : 에러산출부

Claims (10)

  1. 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터를 삽입하여 디펑처링 데이터를 출력하는 디펑처링부;
    디펑처링 데이터를 디코딩하여 디코딩데이터를 출력하고, 내장된 메모리를 이용하여, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 일시적으로 저장하여 독출하는 비터비디코더; 및
    상기 디펑처링 데이터, 상기 디코딩 데이터, 및 상기 펑처링 패턴을 이용하여 상기 디코딩 데이터의 에러율을 산출하는 성능 측정부;를 포함하며,
    상기 비터비디코더는, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출하는 것을 특징으로 하는 채널 복호 장치.
  2. 제 1항에 있어서,
    상기 비터비디코더는,
    상기 디펑처링 데이터 및 상기 펑처링 패턴을 기록하기 위한 메모리; 및
    상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출시키도록 제어하는 메모리제어부;를 포함하는 것을 특징으로 하는 채널 복호 장치.
  3. 제 1항에 있어서,
    상기 비터비디코더는,
    상기 디펑처링 데이터를 이용하여 가지메트릭을 생성하는 가지메트릭생성부;
    상기 가지메트릭 및 경로메트릭에 대해 가산/비교/선택과정을 통해 상태천이정보를 출력하는 가산비교선택부;
    상기 상태천이정보, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 기록하는 트레이스백 메모리; 및
    상기 트레이스백 메모리에 기록된 상태천이정보를 역추적하여 상기 디펑처링 데이터의 디코딩 데이터를 출력시키며, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출시키는 트레이스백 제어부;를 포함하는 것을 특징으로 하는 채널 복호 장치.
  4. 제 3항에 있어서,
    상기 트레이스백 제어부는,
    상기 가산비교선택부로부터 출력된 상기 상태천이정보가 상기 트레이스백 메모리에 기록될 때, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 상기 트레이스백 메모리에 기록하도록 제어하는 것을 특징으로 하는 채널 복호 장치.
  5. 제 1항에 있어서,
    상기 성능 측정부는,
    상기 디코딩 데이터를 인코딩하여 인코딩 데이터를 출력하는 리인코더; 및
    상기 독출된 디펑처링 데이터와 상기 인코딩 데이터를 상기 독출된 펑처링 패턴에 기초하여 비교 연산함으로써 상기 디코딩 에러율을 산출하는 에러산출부;를 포함하는 것을 특징으로 하는 채널 복호 장치.
  6. 제 5항에 있어서,
    상기 에러산출부는,
    상기 펑처링 패턴에 기초하여, 펑처링되지 않은 위치의 상기 디펑처링 데이터와 상기 인코딩 데이터를 비교 연산하여 상기 디코딩 에러율을 산출하는 것을 특징으로 하는 채널 복호 장치.
  7. 펑처링 패턴에 기초하여 펑처링된 위치에 임의의 데이터를 삽입하여 디펑처링 데이터를 출력하는 디펑처링단계;
    상기 디펑처링 데이터를 디코딩하여 디코딩데이터를 출력하고, 내장된 메모리를 이용하여, 상기 디펑처링 데이터와 상기 펑처링 패턴을 기록하며, 상기 디코딩 데이터가 출력될 때 상기 디코딩된 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출하는 비터비디코딩단계; 및
    상기 디펑처링 데이터, 상기 디코딩 데이터, 및 상기 펑처링 패턴을 이용하여 상기 디코딩 에러율을 산출하는 성능측정단계;를 포함하는 것을 특징으로 하는 채널 복호 방법.
  8. 제 7항에 있어서,
    상기 비터비디코딩단계는,
    상기 디펑처링 데이터를 이용하여 가지메트릭을 생성하는 단계;
    상기 가지메트릭 및 경로메트릭에 대해 가산/비교/선택과정을 통해 상태천이정보를 출력하는 단계;
    상기 상태천이정보, 상기 디펑처링 데이터 및 상기 펑처링 패턴을 기록하는 단계; 및
    상기 트레이스백 메모리에 기록된 상태천이정보를 역추적하여 상기 디펑처링 데이터의 디코딩 데이터를 출력시키며, 상기 디코딩 데이터가 출력될 때 상기 디코딩 데이터에 대응하는 상기 디펑처링 데이터 및 상기 펑처링 패턴을 독출하는 단계;를 포함하는 것을 특징으로 하는 채널 복호 방법.
  9. 제 7항에 있어서,
    상기 성능 측정단계는,
    상기 디코딩 데이터를 인코딩하여 인코딩 데이터를 출력하는 단계; 및
    상기 독출된 디펑처링 데이터와 상기 인코딩 데이터를 상기 독출된 펑처링 패턴에 기초하여 비교 연산함으로써 상기 디코딩 에러율을 산출하는 단계;를 포함하는 것을 특징으로 하는 채널 복호 방법.
  10. 제 9항에 있어서,
    상기 디코딩 에러율은,
    상기 펑처링 패턴에 기초하여, 펑처링되지 않은 위치의 상기 디펑처링 데이터와 상기 인코딩 데이터를 비교 연산하여 산출하는 것을 특징으로 하는 채널 복호 방법.
KR10-2003-0073466A 2003-10-21 2003-10-21 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법 KR100528873B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR10-2003-0073466A KR100528873B1 (ko) 2003-10-21 2003-10-21 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법
CNB2004100789593A CN100502247C (zh) 2003-10-21 2004-09-16 简化的信道译码设备及其信道译码方法
JP2004306063A JP3909069B2 (ja) 2003-10-21 2004-10-20 具現が簡単なデジタル放送チャネル復号装置及びそのデジタル放送チャネル復号方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0073466A KR100528873B1 (ko) 2003-10-21 2003-10-21 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법

Publications (2)

Publication Number Publication Date
KR20050038228A KR20050038228A (ko) 2005-04-27
KR100528873B1 true KR100528873B1 (ko) 2005-11-16

Family

ID=34651237

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0073466A KR100528873B1 (ko) 2003-10-21 2003-10-21 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법

Country Status (3)

Country Link
JP (1) JP3909069B2 (ko)
KR (1) KR100528873B1 (ko)
CN (1) CN100502247C (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101527573B (zh) * 2009-04-29 2012-01-11 威盛电子股份有限公司 维特比解码器

Also Published As

Publication number Publication date
CN1610266A (zh) 2005-04-27
KR20050038228A (ko) 2005-04-27
JP2005130500A (ja) 2005-05-19
JP3909069B2 (ja) 2007-04-25
CN100502247C (zh) 2009-06-17

Similar Documents

Publication Publication Date Title
CN100542051C (zh) 解码方法和设备
KR100580160B1 (ko) 변형된 역추적 방식의 2단 연출력 비터비 알고리즘 복호화기
CN1808912B (zh) 纠错译码器
JP3900637B2 (ja) ビタビ復号装置
US7765459B2 (en) Viterbi decoder and viterbi decoding method
JP2004040818A (ja) 適用形チャネル符号化方法及び装置
JP2004080508A (ja) 誤り訂正符号の復号方法、そのプログラム及びその装置
KR100285067B1 (ko) 비터비 디코더의 가산 비교 선택 회로
JPH0316046B2 (ko)
US7793200B1 (en) Method of and circuit for accessing a memory of a trellis decoder
US7278088B2 (en) Configurable architecture and its implementation of viterbi decorder
KR100737648B1 (ko) 비터비 복호장치 및 비터비 복호방법
KR101212856B1 (ko) 통신 시스템에서 데이터를 복호하는 방법 및 장치
KR100528873B1 (ko) 구현이 간단한 채널 복호 장치 및 그의 채널 복호 방법
CN206099947U (zh) 一种低资源消耗的多参数可配置Viterbi译码器
US20070201586A1 (en) Multi-rate viterbi decoder
US7225393B2 (en) Viterbi decoder and Viterbi decoding method
JP3823731B2 (ja) 誤り訂正復号器
US7263653B2 (en) Algorithm for a memory-based Viterbi decoder
US20090172504A1 (en) Memory architecture for viterbi decoder and operating method therefor
WO1997013327A1 (en) Viterbi co-processor and method of operation therefor
JP4047697B2 (ja) ビタビ復号装置
US6904105B1 (en) Method and implemention of a traceback-free parallel viterbi decoder
Latha et al. Low-Power Adaptive Viterbi Decoder for TCM Using T-Algorithm
JP2006115534A (ja) 誤り訂正符号の復号方法、そのプログラム及びその装置

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: 20121016

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131022

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20141022

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20151020

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20161018

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee