KR101029803B1 - Dmb 수신기의 비터비 디코딩 장치 및 방법 - Google Patents

Dmb 수신기의 비터비 디코딩 장치 및 방법 Download PDF

Info

Publication number
KR101029803B1
KR101029803B1 KR1020030086340A KR20030086340A KR101029803B1 KR 101029803 B1 KR101029803 B1 KR 101029803B1 KR 1020030086340 A KR1020030086340 A KR 1020030086340A KR 20030086340 A KR20030086340 A KR 20030086340A KR 101029803 B1 KR101029803 B1 KR 101029803B1
Authority
KR
South Korea
Prior art keywords
data
memory
port
dmb receiver
dmb
Prior art date
Application number
KR1020030086340A
Other languages
English (en)
Other versions
KR20050052787A (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 KR1020030086340A priority Critical patent/KR101029803B1/ko
Publication of KR20050052787A publication Critical patent/KR20050052787A/ko
Application granted granted Critical
Publication of KR101029803B1 publication Critical patent/KR101029803B1/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
    • 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
    • H03M13/4161Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management
    • H03M13/4169Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management using traceback
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/256Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with trellis coding, e.g. with convolutional codes and TCM
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services

Landscapes

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

Abstract

본 발명은 디지털 멀티미디어 방송(DMB) 수신기의 비터비 디코더에 관한 것으로, 본 발명에 따르면, DMB 수신기의 전송 에러를 보정하기 위해 길쌈 부호화된 데이터를 입력받아 트랠리스상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 생존자 경로로써 역추적하여 디코딩하는 비터비 디코더는, 데이터를 읽고 쓰기 위한 포트가 하나로 구성된 싱글 포트 메모리와, 상기 싱글 포트 메모리에 상기 길쌈 부호화되어 전송된 데이터를 상기 하나의 포트를 통해 쓰고, 상기 쓰여진 데이터를 상기 포트를 통해 역추적하여 읽어오기 위한 제어부와, 상기 메모리에서 출력되는 데이터 속도를 낮춰주기 위해 상기 데이터를 임시 저장하기 위한 다수의 추가 버퍼를 포함하여 구성됨으로써, 비터비 디코더를 구현하는데 있어, 메모리의 효율적인 사용과 클럭 주파수를 낮춰 줌으로써 전체 시스템이 저전력으로 동작하는 효과가 있다.
Figure R1020030086340
DMB, 비터비 알고리즘, 역추적(trace back), 시스템 클럭

Description

DMB 수신기의 비터비 디코딩 장치 및 방법{Apparatus of viterbi decoding in DMB receiver and Method of the same}
도 1은 본 발명에 따른 비터비 디코더를 포함한 DMB 수신 시스템의 전체 구성을 나타낸 블록도
도 2는 본 발명에 따른 하나의 포인터를 사용하는 방식의 역추적 알고리즘을 간략하게 나타낸 도면
도 3은 본 발명에 따른 싱글 포트 메모리를 사용할 때 메모리 어드레싱 방법과 클럭과의 관계를 나타낸 도면
도 4는 본 발명에 따른 하나의 포인터 방식으로 비터비 역추적 알고리즘을 구현하는데 필요한 메모리와 추가되는 버퍼의 크기를 나타낸 도면
- 도면의 주요 부분에 대한 부호의 설명 -
1 : 안테나 2 : 튜너
3 : AGC 부 4 : A/D 변환기
5 : I/Q 분배기 6 : 전송 모드 판별기
7 : 신호 동기부 8 : OFDM 복조기
9 : 주파수 역인터리버 10 : 채널 분배기 1
11 : FIC 복호화기 12 : FIC 데이터 복호화기
13 : 시간 역인터리버 14 : 길쌈 복호화기
15 : 에너지 역스크램블러 16 : 채널 분배기 2
17 : 오디오/데이터 복호화기 18 : 길쌈 역인터리버
19 : RS 복호화기 20 : 비디오 복호화기
본 발명은 디지털 멀티미디어 방송(DMB) 수신기에 관한 것으로, 특히 전송 에러 정정을 위한 DMB 수신기 내의 비터비 디코딩 장치 및 방법에 관한 것이다.
방송의 디지털화는 종래 아날로그 라디오 방송에도 영향을 주어 디지털 라디오 방송의 도래를 앞당겼다. 또한 종래 음성 라디오 서비스뿐만 아니라, 데이터 전송과 멀티미디어 서비스를 포괄하는 디지털 멀티미디어 방송(Digital Multimedia Broadcasting : DMB)이 가능해졌다. 디지털 멀티미디어 방송은 전송 채널상의 잡음과 왜곡에 강하고, 전송 효율이 높을 뿐 아니라 다양한 멀티미디어 서비스를 가능하게 하는 장점을 갖는다.
한국에서 채택된 이러한 디지털 멀티미디어 방송(DMB)은 유럽의 지상파 라디오 표준으로 채택된 Eureka-147 디지털 라디오 방송(DAB)에 기반하고 있다.
상기 DAB에 멀티미디어 방송 성능을 향상시키기 위해 추가된 것은, 전송 채널상 발생 가능한 연집 에러(Burst error)에 강인한 RS 코드(Reed-Solomon Code)와 길쌈 인터리버(Convolutional Interleaver)이다.
추가된 상기 두 블록은 송신기에서 DAB 앙상블(Ensemble) 입력 신호에 대해 적용하며, 이동 수신환경에서도 비디오 서비스가 가능할 만큼 충분히 낮은 에러율을 제공한다.
상기 DMB 방송의 전송 채널은 무선 이동 수신 채널로써, 수신 신호의 크기(Amplitude)가 시변(Time-varying)할 뿐만 아니라, 이동 수신기의 영향으로 수신 신호 스펙트럼(Spectrum)의 도플러 확산(Doppler Spreading)이 발생한다.
또한, DMB 전송 신호는 종래 아날로그 라디오 방송 신호에 비해 매우 작은 신호 세기로 전송되며, 도심과 같은 심한 페이딩(Fading) 채널 환경에서 자동차에서와 같은 이동 수신을 고려하면 실제 수신 신호의 신호 세기는 매우 작다.
따라서, DMB 수신기는 이러한 열악한 수신 환경에서 최대한 수신 신호를 받아들여 전송에러를 보정할 수 있어야 한다.
또한, 이동 수신 단말기라는 점을 고려하면 제한된 비용을 들여서 최대의 수신 성능을 발휘해야 하며, 배터리의 용량 등을 고려하여 저전력으로 동작하도록 하는 것이 DMB 수신기 구성의 핵심 요건이 된다.
따라서, 본 발명의 목적은 이와 같은 종래 기술의 문제점을 해결하기 위해 안출한 것으로서, 전송 에러 보정을 위한 DMB 수신기 내의 비터비 디코더를 구현하는데 있어 효율적인 디코딩 장치 및 방법을 제안하는데 있다.
본 발명의 다른 목적은 전력 소모를 줄일 수 있는 비터비 디코더를 제안하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 DMB 수신기의 비터비 디코딩 장치는, 길쌈 부호화된 데이터를 입력받아 트랠리스상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 생존자 경로로써 역추적하여 디코딩하기 위해, 데이터를 읽고 쓰기 위한 포트가 하나로 구성된 싱글 포트 메모리와, 상기 싱글 포트 메모리에 상기 길쌈 부호화되어 전송된 데이터를 상기 하나의 포트를 통해 쓰고, 상기 쓰여진 데이터를 상기 포트를 통해 역추적하여 읽어오기 위한 제어부와, 상기 메모리에서 출력되는 데이터 속도를 낮춰주기 위해 상기 데이터를 임시 저장하기 위한 다수의 추가 버퍼를 포함하여 구성됨을 특징으로 한다.
상기 하나의 포트를 통해 데이터가 한번 기록되고, 세 번 읽혀지는 주기가 반복되는 것을 특징으로 한다.
상기 추가 버퍼에 쓰여진 데이터는 쓰여진 방향과 반대 방향으로 읽혀짐을 특징으로 한다.
본 발명에 따른 비터비 디코딩 방법은, 길쌈 부호화된 데이터를 입력받아 트랠리스상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 생존자 경로로써 역추적하여 디코딩하기 위해, 상기 전송된 길쌈 부호화된 데이터가 하나의 포트를 갖는 메모리에 쓰여지는 단계와, 상기 쓰여진 데이터를 상기 포트를 통해 역추적하여 읽어오는 단계와, 상기 읽혀진 데이터를 다수개의 버퍼에 임시 저장하는 단계와, 상기 임시 저장된 데이터를 다시 역방향으로 읽어오는 단계를 포함하여 이루어짐을 특징으로 한다.
상기 하나의 포트를 갖는 메모리에 쓰여진 데이터를 읽어오는 속도는 상기 쓰는 속도의 4배인 것을 특징으로 한다.
상기 임시 저장된 데이터를 역방향으로 읽어오는 속도는 전체 DMB 수신기의 시스템 클럭과 같은 속도임을 특징으로 한다.
이하 발명의 바람직한 실시예에 따른 구성 및 작용을 첨부한 도면을 참조하여 설명한다.
도 1은 본 발명에 따른 비터비 디코더를 포함한 DMB 수신 시스템의 전체 구성을 나타낸 블록도이다.
도 1과 같이, DMB 수신기는, 전송된 방송 신호를 안테나(1)를 통해 수신하고, 수신된 방송 신호는 튜너(2)를 통해 원하는 중간 주파수(Intermediate Frequency)의 통과 대역(Pass-band) 신호로 변환된다.
상기 튜너(2)를 통해 튜닝된 신호는 그 크기를 일정하게 유지시켜 주기 위해 기준 신호 크기에 따라 계산한 이득값이 AGC(Automatic Gain Control)부(3)에서 곱해지고, 이후 A/D(Analog-Digital Converter)블록(4)에서 상기 일정 크기의 신호에 표본화(Sampling)를 수행하여 디지털 신호로 변환한다. 상기 변환된 디지털 신호는 I/Q 분배기(5)를 통해 복소 신호(Complex Signal)의 실수부(Real Part)를 복소 신호로 복원된다.
이때, 전송 모드 검출부(6)에서는 정확한 프레임 동기와 OFDM 심볼 동기 신호를 얻기 위해 수신된 신호의 전송 모드를 검출하게 되고, 이후 OFDM 복조기(8)에서는 불필요한 보호구간(Guard Interval)을 제거한 후 FFT(Fast Fourier Transform)을 통해 시간 영역의 신호를 주파수 영역으로 변환한다. 상기 OFDM 복조기(8)의 입력과 출력 신호는 신호 동기부(7)의 입력 신호가 되고, 상기 신호 동기부(7)에서는 시간/주파수 영역에서의 동기에 필요한 정보를 추출해낸다.
상기 주파수 영역으로 변환된 신호는 주파수 역인터리버(De-interleaver)(9)를 통해 송신단에서 인터리빙(Interleaving)한 부반송파(Sub-carrier) 신호들의 위치를 원래대로 복원시키고, 이렇게 복원된 신호는 채널 분배기 1(10)를 통해 제어 채널인 FIC(Fast Information Channel) 채널과 데이터 채널인 MSC(Main Service Channel)로 분리되어 출력된다.
상기 FIC 채널은 FIC 복호화기(11)로 입력되어 MSC 채널을 복호화하는데 필요한 정보들이 복호되고, 상기 FIC 채널을 통해 전송된 별도의 데이터(ex. 교통정보 등)는 FIC 데이터 복호화기(12)를 통해 복호된다.
상기 MSC 채널은 시간 역인터리버(13)를 통해 송신기에서 인터리빙한 16개의 논리적인 프레임(Logical Frame)들을 다시 원래의 프레임 순서대로 복원시키며, 이렇게 인터리빙된 MSC 채널은 전송 중 발생 가능한 랜덤한 에러(Random error)를 정정정하는 길쌈 복호화기(Convolutional decoder)(14)를 통해 에러 정정된다.
상기 에러 정정된 데이터는 에너지 역스크램블러(15)를 통해 암호화를 위해 스크램블되었던 데이터가 원래의 데이터로 복구되어 채널 분배기2(16)로 입력된다.
상기 채널 분배기 2(16)에서는 전송된 MSC 데이터 채널이 DAB 서비스를 위한 오디오/데이터 신호인지, DMB 서비스를 위한 비디오 신호인지를 구별하여 분리 출력한다. 상기 DAB 서비스를 위한 오디오/데이터는 오디오/데이터 복호화기(17)를 통해 복호되어 오디오/데이터 신호로 출력된다.
상기 DMB 서비스를 위한 신호는 다시 길쌈 역인터리버(18)를 통해 송신단에서 추가적으로 인터리빙한 데이터를 원래의 순서대로 정렬하고, RS 복호화기(19)를 통해 송신단에서 RS 인코딩(Encoding)한 데이터를 복원해 낸다.
상기 복원된 데이터는 비디오 복호화기(20)를 통해 비디오 신호로 복원되어 출력된다.
이와 같이 동작하는 DMB 수신기의 구성 중 상기 랜덤한 에러를 정정하기 위한 길쌈 복호화기(14)는, 송신단에서 현재의 입력 데이터와 과거의 저장된 입력 데이터들 사이에 길쌈 복호화를 수행하여 순차적으로 진행되는 데이터들 사이에 상관 관계를 높여 줌으로써 수신단에서 이 특징을 이용하여 에러를 제거하게 된다.
이러한, 길쌈 복호화기(14)의 가장 대표적인 구현 방식이 바로 비터비 디코딩 알고리즘이다.
상기 비터비 알고리즘은 송신단의 트렐리스(trellis)와 수신된 신호 사이에서 발생한 차이를 나타내는 척도로 가지 메트릭(brench metric)과 패스 메트릭(path metric)을 사용한다.
상기 가지 메트릭은 채널 모델에 따라 해밍 거리(Hamming distance) 또는 유클리디안 거리(Euclidian distance)로 구해지며, 패스 메트릭은 상기 가지 메트릭의 합으로 구해진다.
이러한 비터비 알고리즘은 트렐리스 상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 선택하여 그 상태의 가지 메트릭을 더함으로써, 새로운 패스 메트릭을 생성하고 이때의 정보를 저장한다. 상기 가장 작은 패스 메트릭을 갖는 경로를 생존자 경로로 정의하며 일정한 시간(T : Truncation depth)이 지난 후에 현재 시간 축에서 생존자 경로를 역추적(trace back)함으로써 디코딩 출력을 결정하게 된다.
이러한 비터비 알고리즘을 구현하기 위한 방법으로는 레지스터 교환(register exchange) 방법과 역추적(trace back) 방법이 있다.
이 중, 상기 레지스터 구현 방법은 빠른 동작 특성을 갖게 하기 위하여 추가적인 메모리와 하드웨어가 필요하며 이에 따라 요구되는 전력 소비량도 크다는 특징이 있으며, 상기 역추적 방법은 요구되는 전력 소모는 적으나 최초의 값이 복호될때까지 일정한 지연 시간이 걸린다는 특징이 있다.
따라서, 본 발명에서는 저전력에 초점을 맞추고 전체적인 시스템을 구성하기 위해, 상기 역추적 방식을 사용하여 비터비 디코더를 구현한다.
도 2는 하나의 포인터를 사용하는 방식의 역추적 알고리즘을 간략하게 나타낸 도면으로, 상기 하나의 포인터(One-pointer) 방식은 기록(write)과 읽기(read) 시점을 각각의 포인터(pointer)로 보고 역추적을 효율적으로 수행하기 위한 알고리즘이다.
도 2와 같이, 역추적 방식으로 생존자 경로를 찾아가는 비터비 디코딩 구현 방법은 메모리를 사용하며, 기록(write) 하는 부분과 읽기(read) 위한 부분이 필요하다.
즉, 도 2의 Bank0, Bank1, Bank2, Bank3는 메모리 블록을 나타내며 모두 같 은 크기이고, T는 Truncation depth를 나타낸다. 'tb'는 역추적(trace back) 구간을 나타내며, 'dc'는 결정(decision) 구간을, 'wr'은 기록(write)하는 블록을 나타낸다.
올바른 디코딩 값을 얻기 위해서는 Truncaton depth 만큼의 길이를 역추적하여야 하며 상기 'tb','dc'블록 부분은 모두 읽기 동작이 수행되는 부분이다.
하나의 포인터 방식의 역추적 알고리즘은 기록 포인터(write pointer)와 읽기 포인터(read pointer)가 동시에 동작하기 시작하되, 상기 읽기 포인터는 기록 포인터가 움직이는 속도의 정확히 3배로 동작하여야 한다.
이는, 상기 메모리에서 기록 포인터와 읽기 포인터가 충돌하지 않고 정확한 값을 디코딩하기 위함이다.
본 발명에 따르면, 상기 하나의 포인터 알고리즘을 실제 하드웨어로 구현하는데 있어, 기록 포트(write port)와 읽기 포트(read port)의 두 개의 포트를 사용하는 것이 아니라 하나의 포트를 사용하여 구현한다.
즉, 적은 전력 소비를 위해 메모리 어드레싱 방법을 효율적으로 구성하여, 듀얼 포트 메모리(dual port memory)가 아닌 싱글 포트 메모리(single port memory)를 사용하는 것이다.
상기 싱글 포트 메모리를 사용하기 위해서는 메모리에 접근(access)하는 클럭도 하나의 클럭만을 사용해야 하는데, 기록과 읽기의 속도 차이를 반영하기 위해서 데이터 클럭의 4배에 해당하는 클럭을 사용한다.
이와 같은 관계를 좀 더 자세히 알아보기 위해 첨부한 도면을 통해 설명하면 다음과 같다.
도 3은 본 발명에 따른 싱글 포트 메모리를 사용할 때 메모리 어드레싱 방법과 클럭과의 관계를 나타낸 도면이다.
도 3과 같이, 기록 어드레스(write address)는 데이터 클럭에 따라 증가(0,1,2,3,‥·)되고, 읽기 어드레스(read address)는 메모리 접근 클럭에 따라 감소(2T-1,2T-2,2T-3,‥·)된다.
또한, 한번 기록한 후 세 번 읽을 수 있도록 기록 인에이블(write_enb) 신호와 읽기 인에이블(read_enable) 신호를 도 3과 같이 조절하여 싱글 포트 메모리만으로도 원하는 동작을 구현하게 된다. 이러한 동작 관계는 비터비 디코더 내 제어부(미도시)의 제어를 통해 이루어진다.
이러한 하나의 포인터 알고리즘을 이용하여 역추적을 수행하는 경우 역방향으로 역추적을 수행하여 디코딩 되어지므로, 출력되는 결과 값도 메모리 뱅크(memory bank) 단위로 역순서의 값이 출력되어 진다.
따라서, 이를 올바른 순서로 출력값을 얻기 위해서는 T/2의 메모리 뱅크에 해당하는 추가 버퍼가 필요하다. 이때, 추가 버퍼에 입력되는 값은 읽는 속도(4배 클럭)와 같은 값으로 입력이 되며, 버퍼에 입력되는 값이 겹쳐쓰이는(overwrite) 경우를 방지하기 위해서 버퍼의 출력값 또한 상기 읽는 속도와 같은 속도로 출력되어야 한다.
그러나, DMB 수신기의 경우, 상기 채널 분배기1(10) 이후의 역변조(demodulation) 블록에서 I, Q 값을 나누어 전달해 주기 위해서 원래 수신기 클럭의 두배의 클럭으로 데이터를 전달하며, 이 두배 클럭 속도로 비터비 디코더에 입력된다.
때문에, 상기 비터비 디코더에서 하나의 포인터 방식의 역추적을 수행하기 위해서는 상기 4배의 속도와 2배의 속도가 곱해진 8배속에 해당하는 클럭 속도가 된다.
상기 8배속의 속도로 버퍼로 입력된 데이터가 겹쳐쓰기(overwrite) 되는 것을 방지하기 위해 버퍼의 출력은 버퍼 입력 속도와 같은 8배의 속도로 출력되어야 한다.
그러나, 높은 주파수의 클럭 사용은 전력의 소모량을 증가시키고, 비터비 디코더 후단부터는 원래의 시스템 클럭만으로도 동작이 가능하므로, 버퍼의 입력을 위해서는 8배속의 클럭을, 출력을 위해서는 1배속의 클럭을 사용하는 것이 효율적이다.
이를 위해서는 추가로 요구되는 버퍼의 크기가 메모리 뱅크의 8배에 해당하는 버퍼가 요구된다. 이를 첨부한 도 4에 나타내었다.
도 4는 본 발명에 따른 하나의 포인터 방식으로 비터비 역추적 알고리즘을 구현하는데 필요한 메모리와 추가되는 버퍼의 크기를 나타낸 도면이다.
도 4와 같이, 싱글 포트 메모리는 하나의 포인터(One-pointer) 알고리즘에 따라 (2T * state수)에 해당하는 메모리가 필요하며, 추가로 요구되는 버퍼의 크기는 (T/2 * 1 * 8)의 크기이다.
즉, 상기 추가로 요구되는 버퍼는 0부터 7까지의 8개의 버퍼가 필요하며, 첫 번째 들어간 데이터가 가장 마지막에 나오는 FILO(First Input Least Output)인 동작을 수행한다.
상기 추가되는 버퍼의 동작 과정을 살펴보면, 최초, 8배속의 클럭으로 첫 번째 버퍼에 0번지부터 역추적한 결과 값이 쓰여져서 첫 번째 버퍼가 다 차면 계속해서 두 번째 버퍼의 0번지부터 채워 나간다.
상기 첫 번째 버퍼의 마지막 번지 T/2가 다 채워지고, 두 번째 버퍼의 0번지에 값이 쓰여지는 순간부터 첫 번째 버퍼의 마지막 번지인 T/2에서부터 역방향으로 값을 읽어 내오면 올바로 디코딩된 비터비 결과 값을 얻게 된다.
이상의 설명에서와 같이 본 발명에 따른 DMB 수신기의 비터비 디코딩 장치 및 방법은 비터비 디코더를 구현하는데 있어, 메모리의 효율적인 사용과 클럭 주파수를 낮춰 줌으로써 전체 시스템이 저전력으로 동작하는 효과가 있다.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.
따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정하는 것이 아니라 특허 청구 범위에 의해서 정해져야 한다.

Claims (6)

  1. DMB 수신기의 전송 에러를 보정하기 위해 길쌈 부호화된 데이터를 입력받아 트랠리스상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 생존자 경로로써 역추적하여 디코딩하는 비터비 디코딩 장치에 있어서,
    데이터를 읽고 쓰기 위한 포트가 하나로 구성된 싱글 포트 메모리;
    상기 싱글 포트 메모리에 상기 길쌈 부호화되어 전송된 데이터를 상기 하나의 포트를 통해 쓰고, 상기 쓰여진 데이터를 상기 포트를 통해 역추적하여 읽어오도록 제어하는 제어부; 및
    상기 메모리에서 출력되는 데이터를 상기 DMB 수신기의 시스템 클럭 속도로 낮추어 출력하기 위해 상기 데이터를 임시 저장하는 다수의 추가 버퍼;
    를 포함하는 하며,
    상기 제어부는, 상기 하나의 포트를 통해 데이터가 한번 기록되고, 세 번 읽혀지는 주기를 반복하도록 제어하는 것을 특징으로 하는 DMB 수신기의 비터비 디코딩 장치.
  2. 제 1 항에 있어서,
    상기 추가 버퍼에 쓰여진 데이터는 쓰여진 방향과 반대 방향으로 읽혀짐을 특징으로 하는 DMB 수신기의 비터비 디코딩 장치.
  3. DMB 수신기의 전송 에러를 보정하기 위해 길쌈 부호화된 데이터를 입력받아 트랠리스상의 각 상태로 들어오는 분기 중 가장 작은 패스 메트릭을 생존자 경로로써 역추적하여 디코딩하는 비터비 디코딩 방법에 있어서,
    상기 전송된 길쌈 부호화된 데이터가 하나의 포트를 갖는 메모리에 쓰여지는 단계;
    상기 쓰여진 데이터를 상기 포트를 통해 역추적하여 읽어오는 단계;
    상기 읽혀진 데이터를 다수개의 버퍼에 임시 저장하는 단계; 및
    상기 임시 저장된 데이터를 다수개의 버퍼에서 상기 DMB 수신기의 시스템 클럭 속도에 맞추어 다시 역방향으로 읽어오는 단계;
    를 포함하며,
    여기서, 상기 하나의 포트를 갖는 메모리에 쓰여진 데이터를 읽어오는 속도는 상기 쓰는 속도의 3배인 것을 특징으로 하는 DMB 수신기의 비터비 디코딩 방법.
  4. 제 3 항에 있어서,
    상기 임시 저장된 데이터를 역방향으로 읽어오는 속도는 전체 DMB 수신기의 시스템 클럭과 같은 속도임을 특징으로 하는 DMB 수신기의 비터비 디코딩 방법.
  5. 삭제
  6. 삭제
KR1020030086340A 2003-12-01 2003-12-01 Dmb 수신기의 비터비 디코딩 장치 및 방법 KR101029803B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030086340A KR101029803B1 (ko) 2003-12-01 2003-12-01 Dmb 수신기의 비터비 디코딩 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030086340A KR101029803B1 (ko) 2003-12-01 2003-12-01 Dmb 수신기의 비터비 디코딩 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20050052787A KR20050052787A (ko) 2005-06-07
KR101029803B1 true KR101029803B1 (ko) 2011-04-20

Family

ID=37248623

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030086340A KR101029803B1 (ko) 2003-12-01 2003-12-01 Dmb 수신기의 비터비 디코딩 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101029803B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100946266B1 (ko) * 2008-01-28 2010-03-09 (주)블루버드 소프트 이미지 처리 장치 및 이를 이용한 이미지 처리 방법
JP5391816B2 (ja) 2009-05-08 2014-01-15 ソニー株式会社 通信装置及び通信方法、コンピューター・プログラム、並びに通信システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHIEN-PIAO LAN, CHARNG L. LEE, "AN AREA-EFFICIENT SURVIVOR PATH ARCHITECTURE FOR VITERBI DECODERS", IEEE, 1998.
I. Bogdan, M. Munteanu, P.A. Ivey, N.L. Seed, N. Powell "Power Reduction Techniques for a Viterbi Decoder Implementation" in ESPLD 2000 Third International Workshop, 28 July 2000

Also Published As

Publication number Publication date
KR20050052787A (ko) 2005-06-07

Similar Documents

Publication Publication Date Title
KR101191181B1 (ko) 디지털 방송의 송/수신 시스템 및 데이터 구조
US6985092B2 (en) Robust system for transmitting and receiving map data
US20050226354A1 (en) Memory control method for time deinterleaving in DMB receiver
KR100811184B1 (ko) 아우터 인코더 및 그 방법
US6927708B2 (en) Mapping system for transmission and reception of multiple data types
KR101370889B1 (ko) 디지털 방송 시스템 및 처리 방법
KR101208509B1 (ko) 디지털 방송 시스템 및 처리 방법
US8413012B2 (en) Burst-error correction methods and apparatuses for wireless digital communications systems
KR101463623B1 (ko) 데이터 처리 장치 및 방법
KR20070055671A (ko) 디지털 방송 시스템 및 처리 방법
JP2004208269A (ja) パリティビットを再循環させる連続コードデコーダ及びその方法
US20070121491A1 (en) Digital demodulating apparatus, digital receiver, controlling method of the apparatus, computer program product for the apparatus, and recording medium recording thereon the product
US20110138247A1 (en) Frequency-diversity 8-VSB am broadcasting to mobile/handheld receivers
US6563436B2 (en) Kerdock coding and decoding system for map data
KR101029803B1 (ko) Dmb 수신기의 비터비 디코딩 장치 및 방법
US10924213B2 (en) Device and method for receiving broadcast signal
US6762698B2 (en) Robust system for transmitting and receiving map data
US20040104828A1 (en) Robust system for transmitting and receiving map data
KR100565673B1 (ko) 디지털 멀티미디어 방송 수신기에서 시간 역인터리버메모리 감소 방법
EP1553711A2 (en) Deinterleaving device for digital broadcast receivers having a downsized deinterleaver memory and deinterleaving method thereof
US8441581B2 (en) Slot-interleaved decoding of concatenated convolutional coding in mobile/hand-held digital television receivers
KR20050052855A (ko) 디지털 멀티미디어 방송 수신기에서 시간 역인터리버메모리 감소 방법
CN100531164C (zh) Dmb信号接收器的时间反交错存储器减少方法
KR102130739B1 (ko) 송신 장치, 수신 장치 및 그 제어방법
KR19990000725A (ko) 고화질 tv용 격자복호기의 복호 데이타 재배열 방법

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160324

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee