KR0140779B1 - 비터비 복호기 - Google Patents

비터비 복호기

Info

Publication number
KR0140779B1
KR0140779B1 KR1019950018785A KR19950018785A KR0140779B1 KR 0140779 B1 KR0140779 B1 KR 0140779B1 KR 1019950018785 A KR1019950018785 A KR 1019950018785A KR 19950018785 A KR19950018785 A KR 19950018785A KR 0140779 B1 KR0140779 B1 KR 0140779B1
Authority
KR
South Korea
Prior art keywords
state
storage device
value
output
maximum likelihood
Prior art date
Application number
KR1019950018785A
Other languages
English (en)
Other versions
KR970004371A (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 KR1019950018785A priority Critical patent/KR0140779B1/ko
Priority to US08/672,076 priority patent/US5859861A/en
Priority to JP8170095A priority patent/JPH09181619A/ja
Priority to DE19626076A priority patent/DE19626076C2/de
Priority to CN96106939A priority patent/CN1142143A/zh
Publication of KR970004371A publication Critical patent/KR970004371A/ko
Application granted granted Critical
Publication of KR0140779B1 publication Critical patent/KR0140779B1/ko
Priority to US09/159,636 priority patent/US5960011A/en

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/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

Abstract

본 발명은 디지탈 전송 데이타에 순방향 오류 정정(Forward Error Correction)을 제공하기 위해 사용되어 잡음이 존재하는 전송선로상에서 디지탈 통신의 성능을 향상시키는 길쌈부호화(Convolutional Encoding) 및 비터비 복호법에 관한 것으로, 입력신호의 유사성(Branch Metric)을 연산하기 위한 유사성(Branch Metric)연산장치; 생존자경로 정보 및 상태값을 연산하기 위한 ACS연산장치; 최대 유사값을 검출하는 최대 유사값 검출장치; 상기 최대 유사값 검출장치로부터 얻어지는 최대 유사값을 저장하는 최대 유사값 저장장치; 상기 최대 유사값 검출장치로부터 얻어지는 최대 유사값을 가지는 상태의 주소를 입력으로 역추적을 제어하여 복호하는 역추적 제어장치; 상기 최대 유사값 저장장치로부터 얻어지는 최대 유사값을 이용하여 상태값을 정규화하는 정규화 연산장치; 상태값 저장을 위한 상태값 저장장치; 및 상기 ACS 연산장치로부터 출력되는 생존자경로 정보를 저장하기 위한 경로 저장장치로 구성된다.

Description

비터비 복호기
제1도는 일반적인 길쌈부호화기의 구성을 도시한 구성도
제2도는 제1도의 길쌈부호화기에 따른 격자도
제3도는 종래 비터비 복호기의 블럭도
제4도는 종래 비터비 복호기의 다른 구성예 1을 도시한 블럭도
제5도는 종래 비터비 복호기의 또 다른 구성예 2를 도시한 블럭도
제6도는 본 발명의 비터비 복호기의 구성예를 도시한 블럭도
제7도는 본 발명의 비터비 복호기의 다른 구성예를 도시한 블럭도
*도면의 주요부분에 대한 부호의 설명
2:유사성(Branch Metric)연산장치 3:ACS연산 장치
4:정규화 연산 장치 5:상태값 저장 장치
6:최대 유사값 검출 장치 7:최대 유사값 저장 장치
8:역추적 제어 장치 9:경로 저장 장치
본 발명은 디지탈 전송 데이타에 순방향 오류 정정(Forward Error Correction)을 제공하기 위해 사용되어 잡음이 존재하는 전송선로상에서 디지탈 통신의 성능을 향상시키는 길쌈부호화(Convolutional Encoding) 및 비터비 복호법에 관한 것이다. 특히, 본 발명은 고화질 텔레비젼, 디지탈 위성방송, 디지탈 이동통신, 디지탈 케이블 텔레비젼등 디지탈 데이타를 전송하는 시스템에서 사용되고 있으며, HDD 및 FDD등 디지탈 데이타를 기록/재생하는 분야에서도 사용 가능한 비터비 복호기에 관한 것이다.
상기와 같은 종류의 비터비 복호기가 참고 문헌; [1] G. D. Forney, The Viterbi algorithmProc. IEEE, Vol. 61, No.3, pp. 268-278, Mar. 1970, [2] G. Fettweis and H. Meyr, High speed Parallel Viterbi decoding:algorithm and VLSI-architecture,IEEE Comm., pp. 46-55, May 1991 [3] Japanese Patent Laid Open Publication No. Sho 59-19454 및 [4] US Patent No. 5295142에 공지되어있다.
간단한 비터비 복호 알고리듬을 부호화율(Code Rate)R=1/2, 구속장(Constraint Length)K=3, 생성다항식(Generating Polynomial)이
G1=1+X+X2
G2=1+X2
인 길쌈부호화기의 예를 이용하여 설명하면 다음과 같다.
길쌈부호화기는 제1도와 같이 2-bit쉬프트 레지스터(141)와, 모듈로(modulo)-2덧셈을 실행하는 2개의 덧셈기(142)로 구성되며, 복호기의 출력 G1,G2는 쉬프트 레지스터의 내용인 상태(State) 및 입력(143)에 의해 결정되며 그 출력을 시간에 따라 그림으로 나타낸 것이 제2도의 격자도(Trellis Diagram)이다.
격자도에서 각점은 쉬프트 레지스터가 가질 수 있는 각 상태를 나타내며, 굵은선의 가지(Branch)는 입력이 '0'일때의 천이(Transition)를, 가는선의 가지는 입력이 '1'일때의 천이를 나타낸다. 각 가지에 표시된 숫자는 그 가지의 천이가 일어났을 때 출력되는 G1,G2의 값을 나타낸다.
제2도에서 볼 수 있듯이 각 상태에는 2개의 경로(Path)가 합쳐지게 되며, 비터비 복호 알고리듬은 그 두 개의 경로중 가능성이 있는 경로만 선택하고 가능성이 없는 경로는 버리는 최우복호법(最尤復號法, Maximum Likelihood Decoding)을 기본으로 한다. 이렇게 선택되어진 경로를 생존자 경로(Survivor Path)라고 하며, 각 상태는 정해진 길이(Decision Depth 또는 Truncation Depth)만큼의 생존자경로에 대한 정보를 유지한다. 복호는 각 상태가 유지하고 있는 생존자경로중 가장 가능성이 있는 생존자경로를 선택하여 역추적(Traceback)함으로써 이루어진다.
비터비 알고리듬에 근거한 비터비 복호기는 기본적으로, 수신된 입력 부호와 제2도의 각 가지의 참고값(Reference Value)과 유사성(Branch Metric)을 계산하는 유사성(Branch Metric)연산 장치와 각 상태에서의 생존자경로를 선택하고 생존자경로의 상태값(State Metric)을 연산하는 ACS(Add-Compare-Select)연산장치, 상태값을 저장하는 상태값 저장 장치(State Metric Memory), 각 상태의 생존자경로에 대한 정보를 저장하는 경로 저장 장치(Path Memory), 각 상태의 생존자경로중 가장 가능성이 있는 생존자경로를 검출하는 최대 유사값 검출 장치(Maximum Likelihoo Value Detection), 경로 저장 장치를 제어하여 역추적을 실행하는 역추적 제어 장치(Maximum Likelihood Decision)로 구성된다.
비터비 복호기를 구현할 때 상태값 저장 장치를 구성하는 하드웨어-일반적으로 레지스터-의 크기를 무한정 크게 할 수 없으며, 각 상태의 상태값을 연산하는 ACS연산 장치는 매시간 반복적으로 실행되므로 상태값 저장 장치의 저장 능력을 초과하는 데이타 넘침 현상(Overflow)이 발생할 수 있어 복호된 출력에 오류가 발생할 수 있다.
이러한 오류를 방지하기 위해 상태값을 조정하는 연산(Normalization 또는 Rescaling)을 위한 정규화(Normalization)연산 장치가 필요하게 되며, 이러한 기능들을 포함하는 기존의 비터비 복호기는 제3도와 같고 각 장치의 동작은 다음과 같다.
입력 단자(101)에 입력되는 수신된 입력 부호는 유사성(Branch Metric)연산 장치(102)에서 각 가지의 (00),(01),(10),(11)참고값에 따른 유사성(Branch Metric)을 연산한다.
ACS 연산 장치(103)에서는 유사성(Branch Metric)연산 장치(102)의 출력과 상태값 저장 장치(104)에 저장되어 있는 전시간에서의 상태값을 입력으로 하여 생존자 경로 및 상태값을 연산한다. ACS 연산 장치(103)에서의 연산은 제2도의 격자도에 따라 실행된다.
ACS 연산 장치(103)의 출력중 생존자경로에 대한 정보는 경로 저장 장치(107)에 저장되고 상태값은 정규화 연산 장치(105) 및 최대 유사값 검출 장치(106)로 출력된다.
최대 유사값 검출 장치(106)에서는 ACS 연산 장치(103)로 부터 입력된 상태값중 최대 유사값을 검출하여 최대 유사값은 정규화 연산 장치(105)로 출력하며, 최대 유사값의 주소는 역추적 제어장치(108)로 출력하여 경로 저장 장치(107)를 제어한다.
정규화 연산 장치(105)는 ACS 연산 장치(103)로 부터 입력되는 각상태의 생존자 상태값으로 부터 최대 유사값 검출 장치(106)로 부터 입력되는 최대 유사값을 감하여 상태값 저장 장치(104)에 저장한다.
그러므로 상태값 저장 장치(104)에 저장되는 상태값은 항상 현재 시간의 ACS 연산 장치(103)의 출력에서 최대 유사값-예를 들어 가장 작은 상태값-을 감하여 저장하므로 데이타 넘침 현상은 발생하지 않으며, 상태값 저장 장치에 저장되어 있는 상태값중 하나는 반드시 0이 된다.
그러나 제3도와 같은 종래의 비터비 복호기에서는 수신된 입력 부호의 유사성(Branch Metric)연산을 실행한 후 새로운 상태값이 상태값 저장 장치(104)에 저장되기까지는 ACS 연산 장치(103)로 부터 최대 유사값 검출 장치(106), 정규화 연산 장치(105)로 구성되는 연산 경로를 경유하므로 고속 비터비 복호기의 구현에 장애가 된다. 그러므로 제4도와 같이 정규화 과정에서 현재 시간의 최대 유사값 대신 전시간에서의 최대 유사값을 사용하여 연산 경로를 단축하는 비터비 복호기가 제안되었다.
전시간에서의 최대 유사값을 사용한다면 현재 시간에서의 최대 유사값을 연산하는 과정없이 정규화 연산을 실행할 수 있어 비터비 복호기의 동작 속도를 개선할 수 있지만, 제4도와 같이 제안된 비터비 복호기에서는 정규화 연산에서 전시간의 최대 유사값을 사용하므로 상태값 저장 장치(124)에 저장되는 정규화된 상태값은 반드시 0이 아닐 수 있다.
제3도의 비터비 복호기와 같이 상태값저장 장치(104)에 저장되는 정규화 된 상태값중 하나는 반드시 0일 때는 0 검출기를 이용하여 최대 유사값을 가지는 상태의 주소를 검출할 수 있지만, 제4도의 비터비 복호기에서는 최대 유사값을 가지는 상태의 주소를 검출하기 위해서 비교적 복잡한 하드웨어를 필요로 하게 된다.
또한 동작 속도에 있어서도 ACS 연산 장치(123) 및 최대 유사값 검출 장치(126)로 연결되는 연산 경로가 제4도의 4의 비터비 복호기의 동작 속도 개선에 여전히 장애가 되고 있다. 제4도의 비터비 복호기의 결점을 보완하여 현시간의 최대 유사값을 사용하여 정규화를 실행하여 상태값 저장 장치에 저장되는 정규화된 상태값중 하나는 반드시 0이 되게하며, 제3도의 비터비 복호기의 동작 속도를 개선하는 제5도의 비터비 복호기가 제안되었다.
제5도의 비터비 복호기는 각 상태의 생존자 경로를 선택하는 연산이 항상 동일한 상태 쌍과 동일한 가지의 쌍을 이용하여 이루어짐에 착안, 각 상태의 생존자 경로를 선택하기 위하여 각각 사용되는 상태값 중 최대 유사값을 검출하는 상태 쌍 최대 유사값 검출 장치(142), 그 결과를 저장하는 상태 쌍 저장 장치(143), 가지 쌍중 최대 유사값을 검출하는 가지쌍 최대 유사값 검출 장치(140)로 구성되어 현시간에서의 최대 유사값으로 정규화 연산을 실행한다.
그러나, 제5도의 비터비 복호기는 동작 속도 측면에서 가지쌍 최대 유사값 검출 장치(140)의 출력과 상태쌍 저장 장치(143)에 저장되어 있는 전시간에서의 상태 쌍 최대 유사값으로 부터 현시간에서의 최대 유사값을 연산하는 최대 유사값 검출장치(141), 정규화 연산 장치(135), ACS 연산 장치(133), 상태 쌍 최대 유사값 검출장치(142)로 구성되는 경로가 동작 속도의 개선에 장애가 되고 있다.
하드웨어 복잡도 측면에서도 최대 유사값 연산 장치(141)에서 요구되는 덧셈기(소요되는 덧셈기의 수는 상태수의 1/2)로 인해, 제4도의 비터비 복호기에서의 최대 유사값을 가지는 상태의 주소를 검출하기 위해 사용되어진 하드웨어 복잡도를 오히려 능가하게 된다.
따라서 본 발명은 상기 종래의 비터비 복호기가 가지는 문제점인 복잡한 하드웨어, 동작 속도장해등의 문제를 해결한 비터비 복호기를 제공하는 것으로서, 본 발명의 비터비 복호기에서는 최대 유사값 검출장치를 ACS 연산 장치, 정규화 연산 장치 및 상태값 저장 장치로 구성되는 피드백 루프, 또는 ACS 연산 장치와 상태값 저장 장치로 구성되는 피드백 루프에서 분리함으로서 비터비 복호기의 동작 속도를 개선한다.
또한, 최대 유사값 검출장치를 상태값 저장 장치의 출력을 이용하여 검출함으로서 최대 유사값 검출에 필요한 시간을 최소화한다.
이러한 본 발명의 목적을 달성하기 위한 예로서, 입력신호의 유사성(Branch Metric)을 연산하기 위한 유사성(Branch Metric)연산장치와, 생존자경로 정보 및 상태값을 연산하기 위한 ACS 연산 장치와, 최대 유사값을 검출하는 최대 유사값 검출장치와, 상기 최대 유사값 검출장치로부터 얻어지는 최대 유사값을 저장하는 최대 유사값 저장장치와, 상기 최대 유사값 검출장치로부터 얻어지는 최대 유사값을 가지는 상태의 주소를 입력으로 역추적을 제어하여 복호하는 역추적 제어장치와, 상기 최대 유사값 저장장치로부터 얻어지는 최대 유사값을 이용하여 상태값을 정규화하는 정규화 연산장치와, 상태값 저장을 위한 상태값 저장장치, 및 상기 ACS 연산 장치로부터 출력되는 생존자 경로 정보를 저장하기 위한 경로 저장장치를 포함하여, 상기 상태값 저장장치의 출력을 상기 최대 유사값 검출장치의 입력에 연결하고, 상기 최대 유사값 검출장치의 출력을 상기 최대 유사값 저장장치의 입력에 연결하는 것을 특징으로 한다.
본 발명의 다른 예는, 유사성(Branch Metric)연산장치의 출력은 ACS 연산 장치의 입력에 연결되고; 상기 ACS 연산 장치는 상기 유사성(Branch Metric)연산장치의 출력 및 상기 상태값 저장장치의 출력을 입력받아 각 상태의 생존자 경로 정보와 상태값을 연산하여 생존자 경로 정보출력이 상기 경로 저장장치에 입력에 연결되고, 상태값 출력은 정규화 연산장치의 입력에 연결되고, 상기 정규화 연산 장치는 상기 ACS 연산 장치의 출력 및 상기 최대 유사값 저장장치의 출력을 입력으로 하여 정규화 연산을 실행한 후 그 출력을 상기 상태값 저장장치의 입력에 연결하는 것을 특징으로 한다.
본 발명의 또 다른 예는, 유사성(Branch Metric)연산장치의 출력은 정규화 장치에 연결되고; 상기 정규화 연산 장치는 상기 유사성 연산장치의 출력인 유사성을 입력받아 상기 최대 유사값 저장장치로부터 입력되는 최대 유사값을 이용하여 정규화 연산을 실행한 후 그 출력을 ACS 연산 장치의 입력에 연결하고; 상기 ACS 연산 장치는 상기 정규화 연산 장치의 출력 및 상기 상태값 저장 장치로부터 출력되는 상태값을 입력으로 생존자 경로 정보를 연산하여 상기 경로저장 장치에 출력하고 상태값은 상기 상태값 저장장치의 입력으로 출력하는 것을 특징으로 한다.
이하, 본 발명에 따른 실시예를 설명하기로 한다.
본 발명의 구성은 제6도의 본 발명에 따른 비터비 복호기의 블럭도와 같다. 예를 들어 8단계로 소프트 결정된 수신 부호 행렬은 입력 단자(1)로 입력되어 유사성(Branch Metric)연산 장치(2)에서 유사성(Branch Metric)이 연산된다. 유사성(Branch Metric)연산 장치(2)에서 연산된 유사성(Branch Metric)은 ACS 연산 장치(3)로 입력된다.
ACS 연산 장치(3)는 유사성(Branch Metric)연산장치(2)로부터 입력되는 유사성(Branch Metric)과 상태값 저장 장치(5)로부터 입력되는 전시간에서의 상태값을 입력 받아 현재 시간에서의 생존자 경로 정보와 상태값을 연산한다. ACS 연산 장치(3)로부터 출력되는 생존자 경로 정보는 경로 저장 장치(9)에 저장되며, 상태값은 정규화 연산 장치(4)로 입력한다.
정규화 연산 장치(4)에서는 상태값 데이타 넘침 현상을 방지하기 위해 ACS 연산 장치(3)로부터 입력되는 상태값으로부터 최대 유사값 저장 장치(7)로부터 입력되는 전 상태의 최대 유사값을 이용하여 정규화 연산을 실행하며, 정규화된 상태값을 출력한다.
상태값 저장 장치(5)에서는 정규화 연산 장치(4)에서 입력되는 정규화된 각 상태의 상태값을 저장하며, 상태값 저장장치(5)의 출력은 ACS 연산 장치(3)로 입력되어 각 상태의 생존자 경로 정보 및 생존자의 상태값 연산에 사용되고 최대 유사값 검출장치(6)로 입력되어 최대 유사값 검출에 사용한다.
최대 유사값 검출장치(6)에서는 상태값 저장 장치(5)로부터 입력되는 정규화된 상태값으로부터 최대 유사값 및 저장장치(7)로 출력하며, 최대 유사값을 가지는 상태의 주소는 경로 저장장치(9)의 역추적을 제어하는 역추적 제어장치(8)로 출력한다.
최대 유사값 저장 장치(7)는 최대 유사값 검출장치(6)로부터 전시간에서의 최대 유사값을 입력받아 저장하며, 정규화 연산을 위해 정규화 연산 장치(4)로 출력한다.
역추적 제어장치(8)는 유사값 검출장치(6)으로부터 입력되는 최대 유사값을 가지는 상태의 주소를 이용하여 경로 저장장치(9)를 제어하여 복호된 데이타를 출력하도록 한다.
최대 유사값 검출장치(6)는 ACS 연산 장치(3)의 출력대신 상태값 저장 장치(5)의 출력을 사용함으로서 ACS 연산 장치(3)로부터 출력되어 경로 저장 장치(9)에 입력되는 생존자 경로 정보와 최대 유사값 검출장치(6)로부터 출력되어 역추적 제어장치(8)에 입력되는 최대 유사값을 가지는 상태의 주소와는 한주기의 차이가 있으므로, 이를 보상하기 위한 메모리가 경로 저장 장치(9)의 내부에 포함되거나 ACS 장치(3)와 경로저장장치(9)의 사이에 삽입되어야 한다.
제7도에 도시된 비터비 복호기는 본 발명의 다른 실시예이다.
유사성(Branch Metric)연산장치(12)에서 연산된 유사성(Branch Metric)은 정규화 연산 장치(14)로 입력된다.
정규화 연산 장치(14)는 유사성(Branch Metric)연산장치(12)로부터 입력되는 유사성(Branch Metric)과 최대 유사값 저장장치(17)로부터 입력되는 전시간에서의 최대 유사값을 이용 정규화 연산을 실행하여 ACS 연산 장치(13)로 출력한다.
ACS 연산 장치(13)는 정규화 연산 장치(14)로부터 입력되는 정규화된 유사성(Branch Metric)과 상태값 저장장치(15)로부터 입력되는 전시간에서의 상태값을 이용하여 생존자경로 정보 및 상태값을 연산한다. 새로이 연산된 현시간에서의 상태값은 상태값 저장장치(15)에 출력하여 저장하며, 생존자 경로 정보는 경로 저장장치(19)로 출력하여 저장한다.
그밖의 장치들의 구성은 제6도에 도시된 발명의 구성과 동일하다.
일반적으로 비터비 복호기의 동작 속도는 ACS 연산 장치와 최대 유사값 검출장치의 연산 속도에 의해 결정된다.
ACS 연산 장치는 상태값 저장장치와 항상 피드백 루프를 구성하고 있으므로 ACS 연산 장치의 연산속도를 개선하기 위해 파이프라인 구조를 사용할 수 없다. 그러므로 덧셈기, 비교기, 선택기로 구성되는 ACS 연산 장치의 연산지연은 비터비 복호기의 동작속도를 결정하는데 결정적인 역할을 한다.
최대 유사값 검출장치는 각 상태의 상태값중 최대 유사값을 검출하는 장치로 비교기들을 다단으로 구성하여 연산한다. 구속장이 클수록 소요되는 비교기는 증가하며, 최대 유사값 검출장치는(K(구속장)-1)의 단으로 구성된다. 그러므로 구속장이 클 경우(K4일 경우)비터비 복호기의 동작속도는 ACS 연산 장치의 연산속도보다 최대 유사값 연산장치의 연산속도에 의해 결정된다.
제4도에 공지된 비터비 복호기와 비교할 때 하드웨어 복잡도 측면에서는 차이가 없으나, 동작속도 측면에서 볼 때 본 발명에서는 최대 유사값 검출을 상태값 저장장치의 출력을 이용함으로서 비터비 복호기의 동작속도에 가장 큰 영향을 주는 ACS 연산 장치와 최대 유사값 검출장치를 분리하여 제4도에 제안된 비터비 복호기에 비해 동작 속도를 개선할 수 있다. 즉, 제4도에 공지된 비터비 복호기의 동작속도는 ACS 연산 장치(123)의 연산속도와 최대 유사값 검출장치(126)의 연산속도의 합에 의해 결정되지만, 본 발명의 연산 속도는 ACS 연산 장치(3)의 연산속도와 정규화 연산 장치(4)의 연산속도의 합과 최대 유사값 검출장치(6)의 연산속도중 더 느린것에 의해 결정된다.
제5도에 공지된 비터비 복호기의 동작속도는 가지쌍 최대 유사값 검출장치(140)의 출력과 상태 쌍 저장 장치(143)에 저장되어 있는 전시간에서의 상태쌍 최대 유사값으로부터 현시간에서의 최대 유사값을 연산하는 최대 유사값 검출장치(141), 정규화 연산 장치(135), ACS 연산 장치(133), 상태 쌍 최대 유사값 검출장치(142)로 구성되는 경로의 연산속도에 의해 결정된다. 그러므로 제5도에 공지된 비터비 복호기의 동작속도는 본 발명의 동작속도보다 떨어진다.
본 발명은 최대 유사값을 가지는 상태의 주소를 검출하기 위해(K(구속장)-1)단의 비교기로 구성되는 최대 유사값 검출장치(6)에서 각 단의 비교결과를 저장하기 위한((상태수/2)*(K(구속장)-1))비트의 메모리가 필요한 반면, 제5도의 종래 비터비 복호기에서는 상태수 만큼의 0검출기와 논리회로가 필요하다.
또한 제5도에 도시된 비터쌍 최대 유사값과 (상태수/2)개의 상태쌍 최대 유사값을 합산한 후 비교연산을 실행해야 하므로 (상태수/2)개의 덧셈기가 필요하다.
그러므로 본 발명은 제5도에 공지된 비터비 복호기 보다 하드웨어 비용을 절약할 수 있다.

Claims (9)

  1. 입력 단자(1)로 입력되어 유사성(Branch Metric)을 연산하는 유사성 연산장치(2)와, 상기 유사성(Branch Metric)연산장치(2)로부터 입력되는 유사성과 상태값 저장 장치(5)로부터 입력되는 전시간에서의 상태값을 입력 받아 현재 시간에서의 생존자경로 정보와 상태값을 연산하는 ACS 연산 장치(3)와, 상태값 데이타 넘침 현상을 방지하기 위해 ACS 연산 장치(3)로부터 입력되는 상태값으로부터 최대 유사값 저장 장치(7)로부터 입력되는 전 상태의 최대 유사값을 이용하여 정규화 연산을 실행하며, 정규화된 상태값을 출력하는 정규화 연산 장치(4)와, 정규화 연산 장치(4)에서 입력되는 정규화된 각 상태의 상태값을 저장하며, 출력은 ACS 연산 장치(3)로 입력되어 각 상태의 생존자 경로 정보 및 생존자의 상태값 연산에 사용되는 상태값 저장 장치(5)와, 상태값 저장 장치(5)로부터 입력되는 정규화된 상태값으로부터 최대 유사값을 검출하는 최대 유사값 검출장치(6)와, 최대 유사값 검출장치(6)로부터 전시간에서의 최대 유사값을 입력받아 저장하며, 정규화 연산을 위해 정규화 연산 장치(4)로 출력하는 최대 유사값 저장 장치(7)와, 최대 유사값 검출장치(6)으로부터 입력되는 최대 유사값을 가지는 상태의 주소를 이용하여 복호된 데이타를 출력하는 역추적 제어장치(8), 및 상기 ACS 연산 장치(3)로부터 출력되는 생존자 경로 정보를 저장하기 위한 경로 저장장치(9)로 구성되는 것을 특징으로 하는 비터비 복호기.
  2. 제1항에 있어서, 상기 경로 저장 장치(9)의 내부에 주기차를 보상하기 위한 메모리가 포함되는 것을 특징으로 하는 비터비 복호기.
  3. 제1항에 있어서, 상기 ACS 장치(3)와 경로저장장치(9)의 사이에 주기차를 보상하기 위한 메모리가 포함되는 것을 특징으로 하는 비터비 복호기.
  4. 제1항에 있어서, 상기 ACS 연산장치는 상기 유사성 연산장치의 출력 및 상기 상태값 저장장치의 출력을 입력받아 각 상태의 생존자 경로 정보와 상태값을 연산하여 생존자 경로 정보출력을 상기 경로 저장 장치(9)의 입력에 연결되고, 상태값 출력은 정규화 연산 장치(4)의 입력에 연결되는 것을 특징으로 하는 비터비 복호기.
  5. 제1항에 있어서, 상기 정규화 연산 장치(4)는 상기 ACS 연산장치(3)의 출력 및 상기 최대 유사값 저장 장치(7)의 출력을 입력으로 하여 정규화 연산을 실행한 후 그 출력을 상기 상태값 저장 장치(5)의 입력에 연결하는 것을 특징으로 하는 비터비 복호기.
  6. 입력 단자(1)로 입력되어 유사성(Branch Metric)을 연산하는 유사성 연산 장치(12)와, 상기 유사성 연산 장치(12)의 출력인 유사성을 입력받고, 최대 유사값 저장 장치(7)로부터 입력되는 최대 유사값을 이용하여 정규화 연산을 실행하는 정규화 연산 장치(14)와, 상기 정규화 연산 장치(14)의 출력 및 상태값 저장장치(15)로부터 출력되는 상태값을 입력으로 생존자 경로 정보와 상태값을 연산하는 ACS 연산 장치(13)와, 상기 ACS 연산 장치(13)로 출력된 상태값을 입력받아 저장하며, 출력은 ACS 연산 장치(13)로 입력되어 각 상태의 생존자 경로 정보 및 생존자의 상태값 연산에 사용되는 상태값 저장 장치(15)와, 상태값 저장 장치(15)로부터 입력되는 정규화된 상태값으로부터 최대 유사값을 검출하는 최대 유사값 검출장치(16)와, 최대 유사값 검출장치(16)로부터 전시간에서의 최대 유사값을 입력받아 저장하며, 정규화 연산을 위해 정규화 연산 장치(14)로 출력하는 최대 유사값 저장장치(17)와, 최대 유사값 검출장치(16)으로부터 입력되는 최대 유사값을 가지는 상태의 주소를 이용하여 복호된 데이타를 출력하는 역추적 제어장치(18), 및 상기 ACS 연산 장치(13)로부터 출력되는 생존자 경로 정보를 저장하기 위한 경로 저장장치(19)로 구성되는 것을 특징으로 하는 비터비 복호기.
  7. 제6항에 있어서, 상기 경로 저장장치(19)의 내부에 주기차를 보상하기 위한 메모리가 포함되는 것을 특징으로 하는 비터비 복호기.
  8. 제6항에 있어서, 상기 ACS 장치(13)와 경로 저장장치(19)의 사이에 주기차를 보상하기 위한 메모리가 포함되는 것을 특징으로 하는 비터비 복호기.
  9. 제6항에 있어서, 상기 ACS 연산장치는 상기 정규화 연산 장치의 출력 및 상기 상태값 저장장치의 출력을 입력받아 각 상태의 생존자 경로 정보와 상태값을 연산하여 생존자 경로 정보출력을 상기 경로 저장장치(19)의 입력에 연결되고, 상태값 출력은 상태값 저장장치(15)의 입력에 연결되는 것을 특징으로 하는 비터비 복호기.
KR1019950018785A 1995-06-21 1995-06-30 비터비 복호기 KR0140779B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1019950018785A KR0140779B1 (ko) 1995-06-30 1995-06-30 비터비 복호기
US08/672,076 US5859861A (en) 1995-06-21 1996-06-26 High speed viterbi decoder
JP8170095A JPH09181619A (ja) 1995-06-30 1996-06-28 ビタービ復号器とその復号方法
DE19626076A DE19626076C2 (de) 1995-06-30 1996-06-28 Viterbi-Decodierer und Synchronisierungs-/Nichtsynchronisierungserkennungsgerät dafür
CN96106939A CN1142143A (zh) 1995-06-30 1996-07-01 维特比解码器
US09/159,636 US5960011A (en) 1995-06-30 1998-09-24 Viterbi decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950018785A KR0140779B1 (ko) 1995-06-30 1995-06-30 비터비 복호기

Publications (2)

Publication Number Publication Date
KR970004371A KR970004371A (ko) 1997-01-29
KR0140779B1 true KR0140779B1 (ko) 1998-07-15

Family

ID=19419202

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950018785A KR0140779B1 (ko) 1995-06-21 1995-06-30 비터비 복호기

Country Status (1)

Country Link
KR (1) KR0140779B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101134806B1 (ko) * 2005-01-19 2012-04-13 엘지전자 주식회사 부호 복호 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101134806B1 (ko) * 2005-01-19 2012-04-13 엘지전자 주식회사 부호 복호 방법

Also Published As

Publication number Publication date
KR970004371A (ko) 1997-01-29

Similar Documents

Publication Publication Date Title
US6148431A (en) Add compare select circuit and method implementing a viterbi algorithm
KR101478841B1 (ko) 소프트 출력 채널 검출기, map 검출기, 수신 신호 처리 방법 및 map 검출기를 사용한 수신 신호 처리 방법
US5295142A (en) Viterbi decoder
US5859861A (en) High speed viterbi decoder
US4583078A (en) Serial Viterbi decoder
US5349608A (en) Viterbi ACS unit with renormalization
JP3120511B2 (ja) ビタビ復号装置
US6697443B1 (en) Component decoder and method thereof in mobile communication system
EP1127411B1 (en) Efficient trellis state metric normalization
JP2000196469A (ja) デ―タ誤り訂正システム
US6070263A (en) Circuit for use in a Viterbi decoder
JP3264855B2 (ja) トーレス削除方法を用いるビタビ復号器における生存者メモリ
KR101212856B1 (ko) 통신 시스템에서 데이터를 복호하는 방법 및 장치
KR0140779B1 (ko) 비터비 복호기
US6134697A (en) Traceback processor for use in a trellis-coded modulation decoder
KR19980066172A (ko) 고화질 텔레비젼의 격자 복호기
US20040064781A1 (en) Viterbi decoder and Viterbi decoding method
KR0169777B1 (ko) 고속 비터비 복호기의 구현을 위한 정규화 방법 및 장치
EP1542370A1 (en) Method and system for branch label calculation in a Viterbi decoder
JP2757473B2 (ja) ヴィタビ復号器
KR100478462B1 (ko) 격자 코드 데이타의 생존 경로 역추적장치
JPH11500298A (ja) 遷移距離を形成する方法及びセルラー無線システムの受信器
KR0169775B1 (ko) 비터비 복호기에서의 동기 및 비동기/위상이동 검출 방법 및 장치
KR100333336B1 (ko) 비터비 복호기의 역추적 방법
JP2757474B2 (ja) ヴィタビ復号器

Legal Events

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

Payment date: 20050221

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee