KR0180305B1 - 비터비 디코더의 분기 메트릭 계산회로 - Google Patents
비터비 디코더의 분기 메트릭 계산회로 Download PDFInfo
- Publication number
- KR0180305B1 KR0180305B1 KR1019950043496A KR19950043496A KR0180305B1 KR 0180305 B1 KR0180305 B1 KR 0180305B1 KR 1019950043496 A KR1019950043496 A KR 1019950043496A KR 19950043496 A KR19950043496 A KR 19950043496A KR 0180305 B1 KR0180305 B1 KR 0180305B1
- Authority
- KR
- South Korea
- Prior art keywords
- branch metric
- viterbi decoder
- combinational logic
- value
- branch
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction 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
본 발명은 비터비 디코더의 분기 메트릭 계산회로를 공개한다. 그 회로는 (n, k, m)상승 부호화기에 의해서 부호화된 데이터를 수신하여 전송 데이터와 수신데이터와의 오차 정도를 나타내는 분기 메트릭 값을 계산하는 비터비 디코더의 분기 메트릭 계산회로에 있어서 , 상기 n비트의 수신 데이터를 나누어서 각각 입력하고 2m개의 각각의 상태에 대한 소프트 결정한 소정 비트의 2m+1개의 분기 메트릭 값들을 각각 발생하기 위한 제1, 2조합 논리수단들, 및 상기 제1, 2조합 논리수단들에 의해서 발생된 분기 매트릭 값들을 가산하여 최종적인 분기 메트릭 값을 발생하기 위한 분기 메트릭 값 가산수단으로 구성되어 있다. 따라서, 각각의 분기 메트릭 발생수단에서 각각의 채널을 통해 입력되는 신호와 조합 논리부에 의해 발생되는 상승 부호화기의 천이의 경우의 값들과의 차이를 입력 채널에 맞추어 따로 구현하고, 분기 메트릭 가산수단에서 이 출력 값들을 모두 더하여 얻도록 함으로써 이는 고속의 처리 속도를 요하는 회로에 유용하게 사용할 수 있는 장점이 있다.
Description
본 발명은 비터비 디코더에서의 분기 메트릭(Branch Metric) 계산회로에 관한 것으로, 특히 비터비 디코더중 분기 메트릭을 계산하는 과정중에서 상승 부호화기(convolutional encoder)에서 부호화된 데이터들의 천이가능한 모든 경우에 해당하는 분기의 값들을 디코디에서 사용하도록 하기 위하여 각 분기를 계산하는 부분에 이 값들을 조합 논리를 이용하여 발생하도록 함으로써 칩 크기를 감소하고 불필요한 연산수를 줄일 수 있도록 하는 비터비 디코더의 분기 메트릭 계산회로에 관한것이다.
일반적으로, 비터비 더코더는 임의의 오류를 검출하여 정정하는데 좋은 성능을 갖는 채널 코딩의 한 디코딩 방법중의 하나로서 위성방송이나 우주통신분야등에시 널리 사용되고 있는데 이러한 비터비 디코더는 분기 메트릭, 경로(path) 메트릭 , 최소경로(상태) 메트릭 선택, 역추적 및 출력 등으로 구성되어 있으며, 주된 연산은 가산, 비교, 및 선택이다. 이중에서 분기 메트릭 계산부는 수신된 신호와 상승부호화에 의해 송신기에서 부호화된 신호와 비교를 하여 수신신호와 전송신호와의 차이를 계산하는 것으로서, 이전 신호까지의 경로 메트릭값과 현재 계산된 분기 메트릭의 값을 더하여 구할 수가 있다. 이러한 계산은 분기 메트릭의 경우 상승부호화기(n, k, m)중의 m의 값으로부터 구할 수 있으며, 계산량은 2m+1번이며, 주된 연산은 감산이다 경로 메트릭 역시 m의 값으로부터 계산량은 2m번이며 주된 연산은 가산과 비교이다. 또한, 경로 메트릭은 한 상태로 천이하는 이전 상태들의 경로 메트릭값을 구하여 이중 가장 작은 값을 선택하여 상태의 경로 메트릭 값으로 사용하게 된다. 이러한 경로 메트릭을 구하는 연산이 종료되면 최소경로 메트릭 선택부에서는 계산된 상태(상태들의 총수는 m으로부터 구하며, 경로 메트릭의 수 2m과 동일하다. )들을 비교하여 이중에서 가장 작은 값을 갖는 상태를 선택하는데, 그 이유는 이 상태의 값이 수신된 신호와 전송된 신호와의 오차가 가장 적음을 나타내기 때문이다. 이 값은 최소거리(또는, 해밍 거리(Hamming distance))라 한다. 이러한 최소경로 메트릭이 선택되면, 역추적 및 출력 부에서는 역추적 알고리즘(traceback algorithm)에 의해 비터비 디코더의 출력을 얻을 수 있게 된다.
그러나, 상술한 바와 같은 연산을 수행하는 비터비 디코더는 상승 부호화기에서 부호화된 데이터들의 천이할 수 있는 로든 경우의 분기값을 메모리 소자(ROM; read only memory)를 사용하여 저장하도록 하였으므로 분기 메트릭과 경로 메트릭, 역추적을 수행하기 위한 역추적 메트릭을 위하여 많은 양의 메모리 소자를 필요로 하게 되며 , 이는 필연적으로 칩 크기를 증대시키고 또한 이러한 메모리 소자들에 저장된 데이터를 이용하기 위하여 디코딩 시간이 길어져 많은 양의 동작 시간을 필요로 하게 되므로 동작 주파수가 높은 경우에는 회로 구현이 어렵게 되는 단점이 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서 , 비터비 디코더중 분기 메트릭의 각 분기를 계산하는 부분에 입력에 대하여 시간적인 지연없이 바로 연산을 수행하여 회로속에 기억되어 있는 정보를 출력하는 조합논리를 이용하여 상승 부호화기에서 부호화된 데이터들의 천이할 수 있는 모든 경우의 분기값을 발생시키도록함으로써 칩 크기의 감소와 불필요한 연산수를 줄이도록 하는 비터비 디코더의 분기 메트릭 계산회로를 제공하는데 있다.
이와같은 목적을 발성하기 위한 본 발명의 비터비 디코더의 분기 메트릭 계산회로는 (n, k, m)상승 부호화기에 의해서 부호화된 데이터를 수신하여 전송 데이터와 수신 데이터와의 오차 정도를 나타내는 분기 메트릭 값을 계산하는 비터비 디코더의 분기 메트릭 계산회로에 있어서 , 상기 n비트의 수신 데이터를 나누어서 각각 입력하고 2m개의 각각의 상태에 대한 소프트 결정한 소정 비트의 2m+1개의 분기헤트릭 값들을 각각 발생하기 위한 제1, 2조합 논리수단들, 및 상기 제1, 2조합 논리수단들에 의해서 발생된 분기 메트릭 값들을 가산하여 최종적인 분기 메트릭 값을 발생하기 위한 분기 매트릭 값 가산수단을 구비한 것을 특징으로 한다.
제1도는 일반적인 비터비 디코더 회로의 블록도이다.
제2도는 본 발명에 의한 분기 메트릭 계산회로의 일실시예의 블록도이다.
제3도는 본 발명에 의한 분기 메트릭 계산회로의 다른 실시예의 블록도이다.
제4도는 (2, i, 6)상승 부호화기를 사용한 경우 본 발명의 분기 메트릭값의 출
력을 나타낸 표이다.
이하, 첨부한 도면을 참고로 하여 본 발명의 비터비 디코더의 분기 메트릭 계산회로의 바람직한 실시예를 설명하면 다음과 같다.
제1도는 일반적인 비터비 디코더의 블록도로서 , 도면에 나타낸 바와 같이 분기메트릭 계산회로(100)와 경로 메트릭 계산회로(200)와 최소경로 메트릭 선택회로(300)와 역추적 및 출력회로(400)로 구성되어 있다. 분기 메트릭 계산회로(100)는 빠른 연산을 위하여 조합 논리부를 이용하여 구성한 것으로서 , 수신된 신호와 전송된 신호와의 차이를 나타내며 이것은 사용되는 상승 부호화기의 요소(m)에 따라 2m+1로 계산량이 증가하게 된다.
제2도는 본 발명에 의한 분기 메트릭 계산회로(1)의 일실시예의 블록도로서, 도면에 나타낸 바와 같이 , 비터비 디코더의 2개의 입력 채널(X, Y) 각각에 대하여 고정된 논리로 개별적인 분기 메트릭을 계산하여 발생시키는 각각의 분기 메트릭발생부(10, 20), 분기 메트릭 발생부(10, 20)의 출력을 받아서 그 총 합을 계산하여 전체의 분기 메트릭을 계산하는 분기 메트릭 가산수단(30)으로 구성되며, 분기 메트릭 발생수단(10, 20)은 n비트의 채널을 개별적으로 각각 입력받기 위한 X, Y채널 입력부(11, 21), X, Y채널 입력부(11, 21)를 통하는 입력에 대하여 시간적인 지연없이 바로 연산을 수행하여 회로속에 기억되어 있는 정보를 출력하는 조합 논리부(12, 22), X, Y채널 입력부와 조합 논리부의 출력신호들을 이용하여 한 채널의 분기 메트릭을 계산하는 채널 분기 메트릭 계산부(13, 23)로 구성되어 있다.
이때, 비터비 디코더에서 사용되는 분기값은 상승 부호화기에서 부호화되는 입력에 대한 출력의 모든 경우의 값에서부터 수신된 데이터를 감산하여 줌으로써 이 차이를 가지고 해밍(Hamming) 거리를 구하여 디코딩을 수행하게 되며, 부호화되는 데이터의 출력의 경우의 값은 데이터 종속성을 가지므로 수신되는 데이터의 순서로부터 유추해낼 수가 있게 되며, 이는 다시 말하여 입력되는 데이터에 대한 분기값은 항상 일정함을 알 수가 있으므로 이러한 성질을 이용하여 조합 논리를 이용하여 구현할 수가 있게 된다.
제3도는 본 발명에 의한 분기 메트릭 계산회로의 다른 실시예의 블록도로서, 도면에 도시한 바와 같이 , 비터비 디코더에서 각각의 입력채널(X, Y)에 대하여 2m+1개의 병렬 구조를 갖는 조합 논리부들(CL(1) - CL(2m+1))와 분기 메트릭 계산부(B(1)∼ B(2m+1)를 사용하는 경우를 나타내고 있다. 여기서, 다수의 조합 논리부(CL(1) ∼CL(2m+1))의 출력 논리는 1비트로서, 1 또는 0'의 값을 나타내게 되므로 분기 메트릭 계산부(B(1) ∼ B(2m+1))는 조합 논리 부에서 발생하는 1비트의 출력 논리에 대하여 각각 1은 VDD로, 0은 접지로 연결하여 출력할 수도 있으며, 또한, 1비트의 출력 논리에 대하여 n비트로 소프트 결정한 데이터 형태로 변환하기 위하여 0은 n번의 0으로, 1은 n번의 1로 확장하여 출력할 수도 있고, 1비트의 출력 논리에 대하여 0은 최하위 비트의 값으로, 1은 최상위 비트로 확장하여 출력할 수도 있다 이중 다수의 조합 논리부(CL(1) - CL(2m+1))의 출력 논리는 1 또는 0의 값은 1비트이므로 n비트 소프트 결정을 사용하여 비터비 디코딩을 수행할 경우 조합 논리부에 의해 출력된 1비트의 값을 n비트로 확장하여 사용하는데, 예를 들어 설명하면, 3비트 소프트 결정을 수행할 경우에 1은 111로, 0은 0으로 확장하여 사용한다. 이처럼 , 1이 7로 0이 0으로 대응되는 이유는 이 값이 채널의 잡음이 없는 경우에 수신되는 값(상승 부호화기의 부호화된 출력값)이므로 n비트 소프트 결정의 경우에 그 최대, 최소값만을 사용하게 되는 것이다. 즉, 잡음이 발생하지 않으며 , n비트 소프트 결정의 경우에 모든 출력에 대한 경우의 수 2n개중 2개의 경우의 수만이 존재하고, 나머지는 2n-1개의 경우의 수는 존재하지 않게 된다. 각 입력 채널(X, Y)을 통해 수신된 입력신호와 조합 논리부에 의하여 발생된 신호(잡음이 없는 채널의 경우에 전송될 수 있는 상승 부호화기의 부호화된 데이터)와의 차이를 계산하여(이 경우에, 1기호는 2비트로 구성되어 있으므로, 제2도에서와 같이 X, Y의 2개의 입력 채널과 입력 채널에 대한 분기 메트릭의 값을 얻을 수 있다.) 분기 메트릭을 얻을 수 있으며, 이러한 분기 메트릭은 2m+1개가 존재하며, 병렬 구조인 경우 직접 분기 메트릭의 값을 얻을 수 있게 된다.
제4도는 (2, 1, 6)상승 부호화기를 사용한 경우에 본 발명의 분기 메트릭 계산회로에서 출력되는 2(6+1)개의 분기 메트릭의 값을 나타낸 참고표로서, 도면에 도시된 바와 같이 각 상태에서는 2개의 분기가 발생되는데, n번째와 n+64번째에 있는 것이 한 상태에서 발생되는 분기들의 값이 되며, 이 경우 상태의 천이는 초기에 0이 입력된 경우 S0에서 S0로, 1이 입력된 경우는 S32로 천이가 발생하도록 상태 수를 설정하여 얻은 값이다. 즉, 제4도에 있는 값들은 모두 0, 1, 2, 3이 발생할 수 있는데 0은 0을, 1은 1을,'2는 10을, 3은 11을 각각 나타내는 것으로, 이는 십진수 0부터 3의 값을 2진수로 표현한 것이며, 이중 앞의 1비트는 X채널에 사용하게 되며 , 뒤의 1비트는 Y채널에 사용하게 되고, 역시 이 값들은 '0은 0(000)으로. 1은 7(111)로 확장하여 n비트 소프트 결정을 한 데이터로 변형되어 사용하게 된다. 즉, 기존의 메모리 소자를 사용하게 되는 경우에 계산되는 분기의 총수(Bm)와 각 분기당 사용되는 비트수(Nb)와 n비트 소프트 결정된 데이터를 사용하는 경우 n의 총 개수만큼의 메모리 수(=Bm × Nb × n(비트))가 필요하게 되므로 결과적으로 기존 방식과 비교하면 분기 메트릭의 연산에 있어서는 메모리를 사용하는 경우에 발생하는 메모리 억세스의 단계가 생략되어 빠른 동작속도를 얻을 수 있으며, 더불어 메모리를 사용하는 경우보다 70%정도의 회로 감소를 얻을 수 있게 된다.
이상에서 살펴본 바와 같이 , 본 발명의 비터비 디코더의 분기 메트릭 계산회로는 각각의 분기 메트릭 발생수단에서 각각의 채널을 통해 입력되는 신호와 조합논리부에 의해 발생되는 상승 부호화기의 천이의 경우의 값들과의 차이를 입력 채널에 맞추어 따로 구현하고, 분기 메트릭 가산수단에서 이 출력 값들을 모두 더하여 얻도록 함으로써 이는 고속의 처리 속도를 요하는 회로에 유용하게 사용할 수 있는 장점이 있다 .
Claims (2)
- (n, k, m)상승 부호화기에 의해서 부호화된 데이터를 수신하여 전송데이터와 수신 데이터의 오차 정도를 나타내는 분기 메트릭 값을 발생하는 비터비 디코더의 분기 메트릭 계산회로에 있어서, 상기 n비트의 수신 데이터를 나누어서 각각 입력하고 2m개의 각각의 상태에 대한 소프트 결정한 소정 비트의 2m+1개의 분기 메트릭 값들을 각각 발생하기 위한 제1, 2조합 논리수단들, 및 상기 제1, 2조합 논리수단들에 의해서 발생된 분기 메트릭 값들을 가산하여 최종적인 분기 메트릭 값을 발생하기 위한 분기 떼트릭 값 가산수단을 구비한 것을 특징으로 하는 비터비 디코더의 분기 메트릭 계산회로.
- 제1항에 있어서, 상기 제1, 2조합 논리수단들 각각은 상기 2m개의 각각의 상태에 대한 상기 소프트 결정한 소정비트의 값을 발생하기 위하여 1은 전원전압에 0은 접지전압에 각각 연결하여 구성하는 것을 특징으로 하는 비터비 디코더의 분기 메트릭 계산회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950043496A KR0180305B1 (ko) | 1995-11-24 | 1995-11-24 | 비터비 디코더의 분기 메트릭 계산회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950043496A KR0180305B1 (ko) | 1995-11-24 | 1995-11-24 | 비터비 디코더의 분기 메트릭 계산회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970031390A KR970031390A (ko) | 1997-06-26 |
KR0180305B1 true KR0180305B1 (ko) | 1999-04-01 |
Family
ID=19435568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950043496A KR0180305B1 (ko) | 1995-11-24 | 1995-11-24 | 비터비 디코더의 분기 메트릭 계산회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0180305B1 (ko) |
-
1995
- 1995-11-24 KR KR1019950043496A patent/KR0180305B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR970031390A (ko) | 1997-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5446746A (en) | Path memory apparatus of a viterbi decoder | |
KR100580160B1 (ko) | 변형된 역추적 방식의 2단 연출력 비터비 알고리즘 복호화기 | |
US4614933A (en) | Viterbi decoder with the pipeline processing function | |
US5436918A (en) | Convolutional encoding/decoding apparatus with fixed bit insertion | |
US4606027A (en) | Error correction apparatus using a Viterbi decoder | |
CA2293079C (en) | A repeatable data error correction system | |
KR100195745B1 (ko) | 비터비 복호화기의 가산 비교 선택 장치 | |
US4500994A (en) | Multi-rate branch metric processor for maximum-likelihood convolutional decoder | |
US4763328A (en) | Viterbi decoder and method for testing the viterbi decoder | |
US6813744B1 (en) | ACS unit for a viterbi decoder | |
US5150369A (en) | High-speed convolutional decoder | |
JPH0316046B2 (ko) | ||
US5450338A (en) | Add-compare-select device | |
KR100737648B1 (ko) | 비터비 복호장치 및 비터비 복호방법 | |
US5809044A (en) | Method of and circuit for detecting synchronism in viterbi decoder | |
US6697442B1 (en) | Viterbi decoding apparatus capable of shortening a decoding process time duration | |
US6792570B2 (en) | Viterbi decoder with high speed processing function | |
KR100387089B1 (ko) | 브랜치 메트릭 계산 처리에서 감소된 비트수를 갖는비터비 디코더 | |
KR0180305B1 (ko) | 비터비 디코더의 분기 메트릭 계산회로 | |
US20070201586A1 (en) | Multi-rate viterbi decoder | |
US7062000B1 (en) | Viterbi decoder | |
FI100564B (fi) | Menetelmä transitiometriikan muodostamiseksi ja solukkoradiojärjestelm än vastaanotin | |
US7852960B2 (en) | Method of computing path metrics in a high-speed Viterbi detector and related apparatus thereof | |
KR0180303B1 (ko) | 비터비 디코더의 정규화 방법 및 장치 | |
US6411663B1 (en) | Convolutional coder and viterbi decoder |
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: 20061128 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |