KR100478835B1 - 고속 비터비 디코딩 장치 - Google Patents

고속 비터비 디코딩 장치 Download PDF

Info

Publication number
KR100478835B1
KR100478835B1 KR10-2000-0063844A KR20000063844A KR100478835B1 KR 100478835 B1 KR100478835 B1 KR 100478835B1 KR 20000063844 A KR20000063844 A KR 20000063844A KR 100478835 B1 KR100478835 B1 KR 100478835B1
Authority
KR
South Korea
Prior art keywords
unit
bmg
memory
distance
viterbi decoding
Prior art date
Application number
KR10-2000-0063844A
Other languages
English (en)
Other versions
KR20020033228A (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-2000-0063844A priority Critical patent/KR100478835B1/ko
Publication of KR20020033228A publication Critical patent/KR20020033228A/ko
Application granted granted Critical
Publication of KR100478835B1 publication Critical patent/KR100478835B1/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
    • H03M13/4107Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 Viterbi 디코딩시 4-D 16 state의 TCM(Trellis Code Modulation)으로 인코딩된 신호를 복원하는 하드웨어 구조에 있어서, 수신된 신호에 대한 Viterbi 디코딩을 고속으로 처리하도록 메모리의 구성과 그에 대한 제어신호를 생성하기에 적당하도록 한 고속 비터비 디코딩 장치를 제공하기 위한 것으로, 이러한 본 발명은, 비터비 알고리즘에 따라 입력 심볼에 대한 비터비 디코딩을 수행하도록 각 기능부를 제어하기 위한 중앙 제어부와; 상기 제어부의 제어를 받아 레지스터부로부터 심볼을 읽고 준거점과의 거리를 계산하여 오류치를 산출함으로써 분기 메트릭을 생성하기 위한 BMG부와; 비터비 디코더로 입력되는 심볼을 일시저장하기 위한 레지스터부와; 상기 제어부의 제어를 받아 최소 경로 메트릭을 갖는 경로를 선택하기 위한 ACS부와; 상기 최소 경로 메트릭을 갖는 상태를 선택하여 서바이버를 찾아 상기 서바이버를 역추적하여 디코딩하는 STD부와; 상기 BMG부와 ACS부 및 STD부의 동작수행에 따라 생성되는 데이터를 저장하기 위한 복수의 메모리로 이루어져, 심볼율로 디코더에 입력되는 데이터를 레지스터부에 일시저장 하였다가 상기 데이터를 주클럭에 맞춰 직렬로 읽어 처리할 수 있게 됨으로써, 비터비 디코딩 속도의 고속화 및 디코더의 구조를 단순화시킬 수 있게 된다.

Description

고속 비터비 디코딩 장치 {Apparatus for high speed Viterbi decoding}
본 발명은 비터비 디코딩(Viterbi Decoding)에 관한 것으로, 특히 4 차원 16 상의 TCM(Trellis Code Modulation)으로 인코딩(Encoding)된 신호를 복원하는 하드웨어 구조에 있어서, 수신된 신호에 대한 Viterbi 디코딩을 고속으로 처리하도록 메모리의 구성과 그에 대한 제어신호를 생성하기에 적당하도록 한 고속 비터비 디코딩 장치에 관한 것이다.
일반적으로 비터비(Viterbi) 디코딩은 포선 인코딩과 함께 사용되는 디코딩 알고리즘의 일종으로, IEEE volume IT-13 pp. 260-269 등에 그 기술적 사상이 기술되어 있다.
상기 비터비 디코딩은 디코딩 하드웨어의 구현이 용이하고 고정된 디코딩 시간을 갖게 되는 장점이 있다.
본 발명은 이러한 비터비 디코딩을 위한 하드웨어 구조의 개선을 위한 것으로, 이에 대비되는 종래기술을 설명하면 다음과 같다.
먼저, 도1은 종래기술에 의한 비터비 디코딩 장치의 블록구성도이다.
상기 도1에 도시된 바와 같이 비터비 디코딩을 위한 종래의 프로세서는, 중앙 제어부(11)와; BMG부(Branch Metric Generation)(13)와; ACS부(Add-Compare Select)(16)와; STD부(Survivor-Trace and Decoding)(18)와; 상기 각 BMG/ACS/STD부의 제어를 각각 담당하는 복수의 제어부(12, 15, 17)와; 복수의 메모리(19, 20)로 구성된다.
이러한 프로세서의 구조에서 각 제어부(12, 15, 17)는 각 BMG/ACS/STD부에 대한 인스트럭션 세트(Instruction Set)를 주는 기능을 담당한다.
종래의 비터비 디코더는 비터비 디코딩을 효율적으로 수행하기 위하여 전용의 DSP(Digital Signal Processor)로써 프로그램 가능한 비터비 신호처리 프로세서이다.
상기 각 BMG/ACS/STD부(13, 16, 18)는 각자 독립적으로 프로그램 할수 있다. 그리고 중앙 제어부(11)는 각 유니트의 동작들간 동기화를 담당하게 된다.
각 BMG/ACS/STD부(13, 16, 18)는 동시에 독립적으로 신호처리를 수행할 수 있다. 그래서 BMG부(13)의 경우에는 BMG 제어부(12)로부터 인스트럭션 세트를 전달받아 분기 메트릭(Branch Metric)을 계산하는 기능을 담당한다.
그리고 ACS부(16)는 ACS 제어부(15)의 제어를 받아 경로 메트릭(Path Metric)을 비교 선택하는 기능을 담당하게 된다.
STD부(18)는 서바이버(Survivor)를 역추적하여 디코딩하게 된다.
한편, 복수개 구비되는 메모리는 상기 각 BMG/ACS/STD부(13, 16, 18)의 처리결과를 저장하기 위한 저장매체이다.
그런데 상기 설명한 종래의 비터비 디코더의 경우, 메모리가 여러 기능에 맞도록 적절히 배치되어 있음에도 불구하고 각 메모리를 엑세스할 때, 한번에 하나씩의 메모리 데이터를 엑세스하기 때문에 디코딩에 필수적인 동작들을 수행하는데 있어 매우 많은 시간이 소요되는 기술적 한계점이 있었다.
이에 본 발명은 상기와 같은 종래의 제반 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은 비터비 디코딩(Viterbi Decoding)시 4 차원 16 상(4-D 16 state)의 TCM(Trellis Code Modulation)으로 인코딩(Encoding)된 신호를 복원하는 하드웨어 구조에 있어서, 수신된 신호에 대한 Viterbi 디코딩을 고속으로 처리하도록 메모리의 구성과 그에 대한 제어신호를 생성하기에 적당하도록 한 고속 비터비 디코딩 장치를 제공하는 데 있다.
상기와 같은 목적을 달성하기 위하여 본 발명에 의한 고속 비터비 디코딩 장치는, 비터비 알고리즘에 따라 입력 심볼에 대한 비터비 디코딩을 수행하도록 각 기능부를 제어하기 위한 중앙 제어부와; 상기 제어부의 제어를 받아 레지스터부로부터 심볼을 읽고 준거점과의 거리를 계산하여 오류치를 산출함으로써 분기 메트릭을 생성하기 위한 BMG부와; 비터비 디코더로 입력되는 심볼을 일시저장하기 위한 레지스터부와; 상기 제어부의 제어를 받아 최소 경로 메트릭을 갖는 경로를 선택하기 위한 ACS부와; 상기 최소 경로 메트릭을 갖는 상태를 선택하여 서바이버를 찾아 상기 서바이버를 역추적하여 디코딩하는 STD부와; 상기 BMG부와 ACS부 및 STD부의 동작수행에 따라 생성되는 데이터를 저장하기 위한 복수의 메모리로 이루어짐을 그 기술적 구성상의 특징으로 한다.
이하, 상기와 같은 고속 비터비 디코딩 장치의 기술적 사상에 따른 실시예에 의거 본 발명의 구성 및 동작을 설명한다.
먼저, 도2는 본 발명의 일실시예에 의한 고속 비터비 디코딩 장치의 블록구성도이고, 도3은 도2에서 BMG부의 블록상세도이며, 도4는 도2에서 메모리부의 분산구조를 보인 블록상세도이며, 도5는 도2에 의한 장치의 각 신호간 타이밍도이다.
상기 도2에 도시된 바와 같이 본 발명의 적절한 실시예는, 비터비 알고리즘에 따라 입력 심볼에 대한 비터비 디코딩을 수행하도록 각 기능부를 제어하기 위한 중앙 제어부(21)와; 상기 제어부(21)의 제어를 받아 레지스터부(23)로부터 심볼을 읽고 준거점과의 거리를 계산하여 오류치를 산출함으로써 분기 메트릭을 생성하기 위한 BMG부(Branch Metric Generation)(22)와; 비터비 디코더로 입력되는 심볼을 일시저장하기 위한 레지스터부(23)와; 상기 제어부(21)의 제어를 받아 최소 경로 메트릭을 갖는 경로를 선택하기 위한 ACS부(Add-Compare Select)(24)와; 상기 최소 경로 메트릭을 갖는 상태를 선택하여 서바이버를 찾아 상기 서바이버를 역추적하여 디코딩하는 STD부(Survivor-Trace and Decoding)(25)와; 상기 BMG부(22)와 ACS부(24) 및 STD부(25)의 동작수행에 따라 생성되는 데이터를 저장하기 위한 복수의 메모리(26, 27)로 구성된다.
이와 같이 구성되는 장치의 동작을 설명하면 다음과 같다.
본 발명이 제안하는 비터비 디코더(Viterbi Decoder)의 구조가 도2에 도시되어 있다.
도2에서 레지스터부(23)는 복조기(Demodulator)로부터 매 심볼 전송율 마다 디코드할 데이터를 전송받아 임시로 저장하기 위한 버퍼로 이루어진다.
BMG부(22)는 레지스터부(23)로부터 데이터를 직렬로 읽어 일정한 준거점(reference constellation point)과의 거리를 계산하여 오류치를 산출해 내는 기능을 담당한다. 이때 BMG부(22)의 계산결과치는 제1 메모리(26)에 저장된다.
ACS부(24)는 경로 메트릭을 생성하고 각 노드 또는 각 상태마다 해당 노드로 들어오는 경로 중에서 가장 작은 경로 메트릭을 가지는 경로를 비교 선택한다. ACS부(24)의 경로 메트릭에 대한 계산 결과는 제2 메모리(27)에 저장된다.
STD부(25)는 디코드 출력을 전달하는 시점, 예를 들어 디코드 깊이(Decode Depth)가 20이면 처음으로부터 20번째의 시점에서 시작하여 경로 메트릭을 비교해 나가면서 상기 비교되는 경로 메트릭 중 가장 작은 값을 가지는 상태를 선택한다. 이어서 상기 선택된 상태로부터 서바이버(survivor)를 찾아 이를 역추적함으로써 디코딩을 수행하게 된다.
상기 디코딩을 위한 각 BMG/ACS/STD부(22, 24, 25)는 각각 중앙 제어부(21)의 제어를 받아 동작하게 된다.
도3에는 BMG부(22)의 상세블록이 도시되어 있으며, BMG부(22)내 각 기능부는 클럭신호(ck)에 따라 동기되어 동작한다.
도3에서 RPG부(31)는 수신된 점들과 거리를 계산한 준거점을 카운터를 이용하여 생성시키는 기능을 수행하며, DC부(32)는 수신된 점과 준거점간의 거리를 2차원 또는 4차원으로 계산하는 기능을 수행한다.
메모리 제어부(33)는 DC부(32)의 거리 계산 결과를 분산된 메모리에 저장할 수 있도록 하기 위하여 메모리 어드레스와 제어신호를 발생시키게 된다.
도4에는 메모리(26, 27)의 상세블록이 도시되어 있다.
각 메모리(26, 27)는 분산구조(Distributed Structure)를 갖는 것으로써, 블록 a(40)와 블록 b(50)로 나뉘어져 각각 다른 역할을 담당한다.
즉, 블록 a(40)는 TCM n 구간에서 BMG부(22)로부터 계산된 거리를 저장하고, TCM n+1 구간에서 ACS부(24)를 위한 데이터가 읽혀지도록 한다. 그리고 블록 b(50)는 TCM n+1 구간에서 BMG부(22)로부터 계산된 거리를 저장하게 된다.
이때 블록 a(40)와 블록 b(50)는 TCM 구간별로 상호전환(toggle) 되는 체계로 동작한다.
상기 블록 a(40)와 블록 b(50)의 구체적인 구성을 설명하기로 한다.
블록 a(40)에 있어, v1부(41)에는 비트 변환 블록으로 들어오는 입력 v 평면에서 u_3가 0이라는 가정하에 만들어 진 준거점과의 거리가 계산되어 저장되고, v2부(42)에는 비트 변환 블록으로 들어오는 입력 v평면에서 u_3가 1이라는 가정하에 만들어 진 준거점과의 거리가 계산되어 저장된다.
그리고 블록 a(40)의 w1부(43)에는 비트 변환 블록으로 들어오는 입력 w평면에서 u_3가 0이라는 가정하에 만들어 진 준거점과의 거리가 계산되어 저장되고, w2부(44)에는 비트 변환 블록으로 들어오는 입력 v평면에서 u_3가 1이라는 가정하에 만들어 진 준거점과의 거리가 계산되어 각각 저장된다.
이러한 체계로 메모리(26, 27)의 블록 a(40)가 구성되는데, 블록 b(50)는 상기 블록 a(40)와 상호전환 되므로 동일한 체계로 구성되어 있게 된다.
이때 메모리의 데이터 저장을 위한 블록을 제어하기 위한 제어신호로는 sel_v_w, sel_1_2 등이 있으며, 상기 제어신호도 상호전환하는 체계로 되어 있다. 예를 들어 sel_v_w가 v를 지시하고 있는 상태에서 전환되면 w를 지시하게 되는 것이며, 이러한 체계로 sel_1_2가 1을 지시하고 있는 상태일 경우에는 w1부에 데이터가 저장되도록 제어할 수 있게 되는 것이다.
도5에는 본 발명에 의한 장치의 운용에 따른 각 신호의 타이밍도가 도시되어 있다. 도5에 도시된 타이밍도는 BMG부(22)와 ACS부(24)를 위하여 분산된 메모리 구조에 결과치를 저장하고 읽어 들이는 과정에 대한 것이다.
도5에 표기된 각 신호들을 설명하면, cnt는 각 TCM 구간별로 할당된 비트수에 따라 그에 해당하는 준거점을 생성하기 위하여 2^m `-`1(m: 할당 비트수)까지 카운트되는 값을 지시하며, allocated_bit는 각 톤(tone) 마다 할당되는 비트수를 지시한다.
기타 신호들의 의미는 다음과 같다.
aaddrv1, aaddrv2, aaddrw1, aaddrw2, : 메모리의 블록 a에서 v1부(41), v2부(42), w1부(43), w2부(44)를 각각 엑세스하기 위한 어드레스
baddrv1, baddrv2, baddrw1, baddrw2, : 메모리의 블록 b에서 v1부(51), v2부(52), w1부(53), w2부(54)를 각각 엑세스하기 위한 어드레스
aaddrv1_we, aaddrv2_we, aaddrw1_we, aaddrw2_we : 메모리의 블록 a에서 v1부(41), v2부(42), w1부(43), w2부(44)를 각각 쓰고 읽기 위한 제어신호
baddrv1_we, baddrv2_we, baddrw1_we, baddrw2_we : 메모리의 블록 b에서 v1부(51), v2부(52), w1부(53), w2부(54)를 각각 쓰고 읽기 위한 제어신호
sel_a_b : 메모리의 블록 a 또는 블록 b를 선택하기 위한 신호
sel_v_w : 메모리의 각 블록에서 v 또는 w를 선택하기 위한 신호
sel_1_2 : 메모리의 각 v, w중 1, 2를 선택하기 위한 신호
상기와 같은 각 첨부도면을 참조하여 비터비 디코더의 동작을 설명하기로 한다.
우선, 매 심볼율마다 하나의 프레임에 해당하는 코드된 신호가 복조기로부터 비터비 디코더로 전달된다. 그러면 하나의 프레임이 끝나기 전에 비터비 디코더는 각 서브 캐리어(subcarrier)마다 수신된 코딩 신호를 복원해내야 한다.
수신된 신호의 오류를 계산하여 분기 메트릭을 생성하기 위하여 준거점과 수신신호 간에 유클리드 거리(Euclidean Distance)를 계산한다. 이때 비터비 디코더는 4차원 16상을 갖는 TCM으로 코딩된 신호에 대한 복원이므로, BMG부(22)가 분기 메트릭을 생성하게 된다.
BMG부(22)에 있어서, RPG부(31)는 수신점의 거리를 계산하기 위한 준거점을 생성하며, DC부(32)는 상기 RPG부(31)로부터 준거점을 전달받아, FEQ(Frequency Equalizer)(도시되지 않음)로부터 오고 슬라이서(Slicer)를 거치기 전단에서 받는 매 수신점과 우선적으로 2차원 상에서의 유클리드 거리를 계산한다.
상기 계산된 유클리드 거리값은 메모리에 저장되는데, 이때 메모리 제어부(33)가 메모리의 읽기/쓰기 어드레스를 발생시키고, 읽기 활성신호(read enable)/쓰기 활성신호(write enable)를 각각 생성하게 된다. 이러한 메모리 제어부(33)의 제어신호에 의해 분산구조를 갖는 각 메모리(26, 27)에 대한 데이터 쓰기와 읽기 동작이 체계적으로 제어된다.
그리고 고속의 비터비 디코딩을 가능케 하기 위해서는 분산구조의 메모리(26, 27)가 다음과 같이 동작하여야 한다.
4차원의 coset을 구성하기 위해서는 2개의 2차원 coset을 Cartesian Product로 집합연산하여 그 합을 구하게 된다. 또한, 4차원 수신신호를 해독하기 위해서는 2차원 상의 거리가 계산된 4개의 값이 필요하다. 예를 들어, 의 경우에는 각 2차원 평면을 v, w라 할 때 v평면에서 0 또는 3 준거점과의 거리가 계산된 v 0 와 v 3 , w평면에서 0 또는 3 준거점과의 거리가 계산된 w 0 과 w 3 필요하다.
상기 거리에 대한 계산값들을 처리하는데 있어, 메모리 하나를 두어 직렬로 한번씩 읽어 처리하는 경우를 고려할 수도 있으나, 이러한 경우에는 한꺼번에 병렬하게 불러서 처리하는 것에 비해 적어도 4배 이상의 시간이 소요되는 단점이 있게 된다.
그러므로 본 발명의 바람직한 실시예는 상기 4개의 거리 계산값들을 한꺼번에 처리해 주기 위해 메모리(26, 27)를 원하는 수만큼 분산시키게 된다. 즉, 도5의 타이밍도에 예시된 바와 같이 TCM0에서는 거리가 계산된 값들을 메모리(26, 27)의 블록 a(40)에 직렬로 쓰고, TCM1에서는 TCM0에서와 같이 TCM1 단계에서의 거리 계산값을 블록 b(50)에 직렬로 쓰는 한편, TCM0에서 블록 a에 저장되었던 값들이 ACS부(24)를 위해 동시에 읽혀지게 된다.
도5에 있어서, TCM0에서는 BMG부(22)의 계산 결과값이 메모리(26, 27)의 블록 a에 저장되어야 하므로, 쓰기 어드레스와 상기 쓰기 동작을 활성화시키기 위한 제어신호(read enable)가 필요하다. 이러한 읽기/쓰기 어드레스와 읽기/쓰기 활성화 신호는 메모리 제어부(33)에 의해 생성된다.
이때 메모리(26, 27)에 대한 쓰기 동작은 계산된 결과를 직렬로 써나가는 체계로 수행된다.
TCM1에서도 해당 구간내에서 계산되어진 결과치는 메모리의 블록 b에 저장되고, 블록 a의 값들을 ACS부(24)가 처리하기 위하여 읽혀지게 된다. 그래서 TCM1 구간에는 읽기 어드레스와 읽기 활성화 신호가 생성된다.
이처럼 본 발명은 비터비 디코더의 메모리 구조와 상기 구조화된 메모리의 제어를 위한 신호체계를 개선함으로써, 고속의 비터비 디코딩을 가능케 할 수 있게 되는 것이다.
이상에서 본 발명의 바람직한 실시예를 설명하였으나, 본 발명은 다양한 변화와 변경 및 균등물을 사용할 수 있다. 본 발명은 상기 실시예를 적절히 변형하여 동일하게 응용할 수 있음이 명확하다. 따라서 상기 기재 내용은 하기 특허청구범위의 한계에 의해 정해지는 본 발명의 범위를 한정하는 것이 아니다.
이상에서 살펴본 바와 같이 본 발명에 의한 고속 비터비 디코딩 장치는, 심볼율로 디코더에 입력되는 데이터를 레지스터부에 일시저장 하였다가 상기 데이터를 주클럭에 맞춰 직렬로 읽어 처리할 수 있게 됨으로써, 다음의 장점 또는 작용 효과를 갖게 된다.
우선, 상기 레지스터부에 일시 저장된 데이터를 읽어가는 동작에 있어서 부가적인 버퍼를 추가할 필요가 없으므로 종래기술에 비해 공간적 손실, 소자의 낭비 등을 방지할 수 있는 장점이 있다.
또한, 동일한 용량의 메모리를 이용하는 경우에도 종래기술에 비해 고속의 비터비 디코딩이 가능하게 되는 효과가 있다.
더불어, 종래기술과 같이 인스트럭션 세트를 디코딩하기 위한 로직이 필요없게 되어 비터비 디코더의 구조를 단순화시킬 수 있는 효과를 갖는다.
도1은 종래기술에 의한 비터비 디코딩 장치의 블록구성도이고,
도2는 본 발명의 일실시예에 의한 고속 비터비 디코딩 장치의 블록구성도이고,
도3은 도2에서 BMG부의 블록상세도이며,
도4는 도2에서 메모리부의 분산구조를 보인 블록상세도이고,
도5는 도2에 의한 장치의 각 신호간 타이밍도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
21 : 중앙 제어부 22 : BMG부 23 : 레지스터부
24 : ACS부 25 : STD부 26, 27 : 메모리
31 : RPG부 32 : DC부 33 : 메모리 제어부
40 : 블록 a 50 : 블록 b

Claims (5)

  1. 비터비 알고리즘에 따라 입력 심볼에 대한 비터비 디코딩을 수행하도록 각 기능부를 제어하기 위한 중앙 제어부와;
    상기 제어부의 제어를 받아 레지스터부로부터 심볼을 읽고 준거점과의 거리를 계산하여 오류치를 산출함으로써 분기 메트릭을 생성하기 위한 BMG부와;
    비터비 디코더로 입력되는 심볼을 일시저장하기 위한 레지스터부와;
    상기 제어부의 제어를 받아 최소 경로 메트릭을 갖는 경로를 선택하기 위한 ACS부와;
    상기 최소 경로 메트릭을 갖는 상태를 선택하여 서바이버를 찾아 상기 서바이버를 역추적하여 디코딩하는 STD부와;
    상기 BMG부와 ACS부 및 STD부의 동작수행에 따라 생성되는 데이터를 저장하기 위한 복수의 메모리로 구성되며,
    상기 메모리는, 다수의 영역으로 분리되어 일정한 신호에 따라 각 영역에의 엑세스가 결정되는 분산구조를 갖도록 구현되어, 상기 메모리 제어부에서 출력되는 제어신호에 따라 상기 분산구조의 어느 영역에 데이터를 쓰고 읽을 것인지 결정되고,
    상기 분산구조의 메모리는, 인코딩된 심볼의 TCM n 구간(n: 정수)에서 상기 BMG부에 의해 계산된 거리를 저장하고, TCM n+1 구간에서 ACS부에 의해 읽혀지게 되는 블록 a와; TCM n+1 구간에서 BMG부에 의해 읽혀지는 블록 b를 포함하여 구성되는 것을 특징으로 하는 고속 비터비 디코딩 장치.
  2. 제 1항에 있어서, 상기 BMG부는,
    상기 레지스터부로부터 수신되는 점들과의 거리를 계산하기 위한 준거점을 카운터를 이용하여 생성시키는 RPG부와; 상기 수신된 점과 준거점간의 거리를 2차원 또는 4차원으로 계산하기 위한 DC부와; 상기 DC부의 거리 계산 결과를 상기 메모리에 저장하기 위한 어드레스와 제어신호를 생성하기 위한 메모리 제어부를 포함하여 구성된 것을 특징으로 하는 고속 비터비 디코딩 장치.
  3. 삭제
  4. 삭제
  5. 제 2항에 있어서, 분산구조의 메모리를 제어하는 상기 메모리 제어부는,
    상기 BMG부에서 계산된 거리값을 저장하거나 기 저장된 값을 읽기 위한 어드레스를 주클럭의 일정 카운트수마다 생성하는 한편,
    2차원 평면을 v, w라 할 때 TCM n 구간마다에 있어서, 블록 a와 블록 b간의 전환을 위한 신호를 생성하고, v평면과 w평면간의 1주기 전환시키기 위한 신호를 생성하며, 상기 각 v, w평면에서 하위 2개의 저장영역간을 1주기 상호전환시키기 위한 신호를 생성하는 것을 특징으로 하는 고속 비터비 디코딩 장치.
KR10-2000-0063844A 2000-10-30 2000-10-30 고속 비터비 디코딩 장치 KR100478835B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2000-0063844A KR100478835B1 (ko) 2000-10-30 2000-10-30 고속 비터비 디코딩 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0063844A KR100478835B1 (ko) 2000-10-30 2000-10-30 고속 비터비 디코딩 장치

Publications (2)

Publication Number Publication Date
KR20020033228A KR20020033228A (ko) 2002-05-06
KR100478835B1 true KR100478835B1 (ko) 2005-03-25

Family

ID=19696030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0063844A KR100478835B1 (ko) 2000-10-30 2000-10-30 고속 비터비 디코딩 장치

Country Status (1)

Country Link
KR (1) KR100478835B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970013799A (ko) * 1995-08-23 1997-03-29 사와무라 시꼬 비터비 복호방법 및 비터비 복호장치
KR20000049852A (ko) * 2000-05-03 2000-08-05 정지원 비터비복호기

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970013799A (ko) * 1995-08-23 1997-03-29 사와무라 시꼬 비터비 복호방법 및 비터비 복호장치
KR20000049852A (ko) * 2000-05-03 2000-08-05 정지원 비터비복호기

Also Published As

Publication number Publication date
KR20020033228A (ko) 2002-05-06

Similar Documents

Publication Publication Date Title
US4777636A (en) Path trace viterbi decoder
JP3900637B2 (ja) ビタビ復号装置
KR100195745B1 (ko) 비터비 복호화기의 가산 비교 선택 장치
JPH10107651A (ja) ビタビ復号装置
JPS584502B2 (ja) ビテルビ復号器
US6810094B1 (en) Viterbi decoder with pipelined parallel architecture
JP3008685B2 (ja) 可変長符号の復号化回路
US5796756A (en) Survivor memory device in viterbi decoder using trace deletion method
JPH09191258A (ja) ビタビ復号装置及びその方法
JP2755045B2 (ja) ビタビ復号器
US5257263A (en) Circuit for decoding convolutional codes for executing the survivor path storage and reverse scanning stage of a Viterbi algorithm
US6591395B1 (en) Memory reduction techniques in a viterbi decoder
US5878060A (en) Viterbi decoding apparatus and viterbe decoding method
US20040243916A1 (en) Method and apparatus for decoding multi-level trellis coded modulation
KR100478835B1 (ko) 고속 비터비 디코딩 장치
KR100311504B1 (ko) 비터비디코더의스태이트메트릭메모리및이를이용한복호화방법
US6304617B1 (en) Viterbi decoder
JP2904271B2 (ja) ビタビ復号器用パスメモリユニットおよび復号方法
JPH0964756A (ja) ビタビ復号回路
KR100410995B1 (ko) 즉시역추적 알고리즘을 이용한 비터비 복호기용 생존경로메모리 관리 방법 및 그 장치
US5473634A (en) Signal converter and communication system
JPH10200419A (ja) ビタビ復号方法および装置
KR0148060B1 (ko) Viterbi 복호기의 ACS를 위한 메모리 최적 구조
JPH08181869A (ja) 符号化装置及び復号化装置
KR100359805B1 (ko) 비터비 디코더 및 비터비 디코더의 디코딩 방법

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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: 20120220

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee