KR100218370B1 - 비터비 디코더 - Google Patents

비터비 디코더 Download PDF

Info

Publication number
KR100218370B1
KR100218370B1 KR1019970015094A KR19970015094A KR100218370B1 KR 100218370 B1 KR100218370 B1 KR 100218370B1 KR 1019970015094 A KR1019970015094 A KR 1019970015094A KR 19970015094 A KR19970015094 A KR 19970015094A KR 100218370 B1 KR100218370 B1 KR 100218370B1
Authority
KR
South Korea
Prior art keywords
value
gate
exclusive
receives
difference
Prior art date
Application number
KR1019970015094A
Other languages
English (en)
Other versions
KR19980077829A (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 KR1019970015094A priority Critical patent/KR100218370B1/ko
Publication of KR19980077829A publication Critical patent/KR19980077829A/ko
Application granted granted Critical
Publication of KR100218370B1 publication Critical patent/KR100218370B1/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/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/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code

Landscapes

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

Abstract

본 발명은 비터비 디코더에 관한 것으로, 종래 비터비 디코더는 패스 메트릭스 값은 브랜치 메트릭 값을 계속 누적함으로써 오버플로우가 발생하여 비터비 디코더의 성능을 저하시키는 문제점이 있었다. 따라서, 본 발명은 다수의 차이값회로와 다수의 가산기로 구성된 브랜치메트릭발생부와, 가산 및 비교선택부, 백트레이스부로 이루어진 비터비 디코더에 있어서, 상기 브랜치메트릭발생부의 차이값회로는 제1 양자화된 입력값을 기준값(REF)과 배타적 오아 연산하여 차이값을 출력하는 제1 익스쿨씨브오아게이트와; 상기 제1 익스쿨씨브오아게이트에서 출력된 신호를 입력받아 제2 양자화된 입력과 앤드 연산하는 제1 앤드게이트와, 상기 제1 앤드게이트에서 출력된 신호를 입력받아 기준값(REF)과 배타적 오아 연산하여 차이값을 출력하는 제2 익스쿨씨브오아게이트와, 상기 제1 익스쿨씨브오아게이트에서 신호를 입력 받아 제3 양자화된 입력과 앤드 연산하는 제2 앤드게이트와, 상기 제2 앤드게이트에서 출력된 신호를 입력 받아 기준값(REF)과 배타적 오아 연산하여 차이값을 출력하는 제3 익스쿨씨브오아게이트로 구성하여 브랜치 메트릭스 값을 계산할때 입력값과 기준값(REF)의 차이를 상대적으로 구함으로써 가산 및 비교선택부에서 발생하는 오버플로우를 최소화하여 비터비 디코더의 성능을 향상 시킬 수 있는 효과가 있다.

Description

비터비 디코더
본 발명은 비터비 디코더에 관한 것으로, 특히 브랜치 메트릭스의 값을 최소화함으로써 가산 및 비교선택부 블록에서의 오버플로우 빈도를 줄일 수 있도록 한 비터비 디코더에 관한 것이다
도 1은 종래 비터비 디코더의 블록구성도로서, 이에 도시된 바와같이, 양자화된 입력값(Q)과 기준값(REF)과의 차이를 계산하여 브랜치 메트릭스(BM) 값을 출력하는 브랜치메트릭스발생부(10)와, 상기 브랜치 메트릭스발생부(10)에서 출력된 브랜치 메트릭스(BM) 값을 입력 받아 이전 패스 메트릭스(PM)의 값에 누적하고, 하나의 누적된 패스 메트릭스 값과 다른 누적된 패스 메트릭스 값을 비교하여 작은 에러를 가진 패스 메트릭스(CM) 값을 선택하여, 그 패스매트릭스(CM) 값을 출력하는 가산 및 비교선택부(11)와, 상기 가산 및 비교선택부(11)로부터 패스 메트릭스(CM) 값을 입력 받아 역순으로 특정 스테이지를 트레이스하여 디코딩출력을 결정하는 백트레이스부(12)로 구성된다.
도 2는 상기 브랜치메트릭스발생부(10)의 블록구성도로서, 이에 도시된 바와같이 기준값(REF)과 양자화된 입력값(Q1),(Q2)의 차이를 계산하는 다수의 차이값회로(20a∼20d)로 이루어진 차이값부(20)와, 상기 차이값부(20)에서 출력된 신호를 가산하여 브랜치 메트릭스(BM1∼BM4) 값을 출력하는 다수의 가산기(21a∼21d)로 이루어진 가산부(21)로 구성된다.
도 3은 도 2에 있어서, 차이값부(20)에 구비되는 다수의 차이값회로(20a∼20d)의 회로도로서, 이에 도시된 바와같이 기준값(REF)과 양자화된 입력값(q0∼q2)을 배타적 오아 연산하여 차이값(d0∼d2)을 출력하는 익스쿨씨브오아게이트(30),(31),(32)로 각기 구성된다.
도4는 상기 가산 및 비교선택부(11)의 블록 구성도로서, 이에 도시된 바와같이 브랜치 메트릭스(BM1/BM3, BM2/BM4)의 값과 패스 메트릭스(PM1/PM3,PM2/PM4)의 값을 각기 가산하는 가산기(41),(42)와; 상기 가산기(41),(42)로부터 입력된 신호(CM1/CM3, CM2/CM4)를 각각 출력함과 아울러 상기 가산기(41),(42)로 출력된 신호(CM1/CM3, CM2/CM4)를 서로 비교하여 가장 작은 에러를 가진 신호(CM)를 패스선택신호(SEL)로하여 출력하는 비교기(43)와, 상기 비교기(43)로부터 입력되는 패스선택신호(SEL)에 따라 비교기(43)로부터 출력된 신호(CM1/CM3, CM2/CM4)중 작은 값을 갖는 신호(CMs)를 선택하여 출력하는 멀티플렉서(44)로 구성한다.
이와같이 구성된 종래 장치의 일 실시예의 동작은 다음과 같다.
먼저, 브랜치메트릭스발생부(10)는 양자화된 입력값(Q1),(Q2)과 기준값(REF)과의 차이를 차이값부(20)에서 계산하여 차이값(d0∼d11)을 출력하고, 이 차이값(d0∼d11)은 가산부(21)에서 가산하여 브랜치메트릭스(BM1∼BM4) 값을 출력한다.
상기 브랜치메트릭스(BM1∼BM4) 값을 입력받은 가산 및 비교선택부(11)의 가산기(41),(42)는 각기 패스메트릭스(PM1/PM3, PM2/PM4) 값에 브랜치메트릭스(BM1/BM3, BM2/BM4) 값을 누적한다.
상기 누적된 패스메트릭스(CM1/CM3, CM2/CM4) 값들은 가산 및 비교선택부(11)의 비교기(43)에서 출력됨과 아울러 서로 비교하여 가장 작은 에러를 가진 패스메트릭스(CM1/CM3, CM2/CM4) 값을 패스선택신호(SEL)로하여 출력한다.
그리고, 멀티플렉서(44)는 상기 비교기(43)에서 출력된 패스메트릭스(CM1/CM3, CM2/CM4) 값을 패스선택신호(SEL)에 따라 선택하여 출력한다.
상기 멀티플렉서(44)로부터 패스메트릭스(CMs) 값을 입력받은 백트레이스부(12)는 역순으로 특정 스테이지를 트레이스하여 디코딩출력을 결정한다.
상기 브랜치메트릭스발생부(10)의 차이값회로(20a∼20d)는 양자화된 입력값(q2,q1,q0)과 기준값(REF) '0' 또는 '1'의 차이값(d2,d1,d0)을 절대적으로 계산하며, 그 차이값회로(20a∼20d)의 작용을 일 실시예로써 도5을 참조하여 설명하면 다음과 같다.
기준값(REF)이 '0' 이고 양자화된 입력값(q2,q1,q0)이 순차적으로 '0','1','1'이라면 제1 익스쿨씨브오아게이트(30)는 기준값(REF)을 '0'으로 입력값(q2)을 '0'으로 입력받아 배타적 오아 연산하여 차이값(d2)을 '0'으로 출력한다.
제2 익스쿨씨브오아게이트(31)는 기준값(REF) '0'과 입력값(q1)을 '1'로 입력받아 배타적 오아 연산하여 차이값(d1)을 '1'로 출력한다.
제3 익스쿨씨브오아게이트(32)는 기준값(REF) '0'과 입력값(q0)을 '1'로 입력받아 배타적 오아 연산하여 차이값(d0)을 '1'로 출력한다.
이와는 반대로 기준값(REF)은 '1'이고 양자화된 입력값(q2,q1,q0)이 순차적으로 '0','1','1'이면, 제1 익스쿨씨브오아게이트(30)는 기준값(REF) '1'과 입력값(q2) '0'을 입력받아 배타적 오아 연산하여 차이값(d2)을 '1'로 출력한다.
제2 익스쿨씨브오아게이트(31)는 기준값(REF) '1'과 입력값(q1)을 '1'로 입력받아 배타적 오아 연산하여 차이값(d1)을 '0'으로 출력한다.
제3 익스쿨씨브오아게이트(32)는 기준값(REF) '1'과 입력값(q0)을 '1'로 입력받아 배타적 오아 연산하여 차이값(d0)을 '0'으로 출력한다.
그러나, 상기와 같이 동작하는 종래 비터비 디코더는 가산 및 비교선택부에서 패스메트릭스 값과 브랜치메트릭스 값이 계속 누적되기 때문에 오버플로우가 발생되어
비터비 디코더의 성능을 저하시키는 문제점이 있었다.
따라서, 본 발명의 목적은 브랜치 메트릭스 값을 계산할 때 입력값과 기준값(REF)의 차이를 상대적으로 구함으로써 가산 및 비교선택부에서 발생하는 오버플로우를 최소화하여 성능이 향상된 비터비 디코더를 제공하는 데에 있다.
도1은 종래의 비터비 디코더 블록 구성도.
도2는 도1에서 종래 브랜치 메트릭스 발생부의 블록 구성도.
도3은 도2에서 차이값회로도.
도4은 도2에서 가산 및 비교선택부 블록 구성도.
도5는 도3에서 양자화된 입력값과 기준값(REF)과의 차이값에 대한 표.
도6은 본 발명에 따른 차이값 회로도.
도7은 도6에서 양자화된 입력값과 기준값(REF)과의 차이값에 대한 표.
* 도면의 주요부분에 대한 부호의 설명
10 : 브랜치 메트릭스발생부 11 : 가산 및 비교선택부
12 : 백트레이스부 60, 63, 64 : 익스쿨씨브오아게이트
61, 62 : 앤드게이트
상기 본 발명의 목적을 달성하기 위하여 다수의 차이값회로와 다수의 가산기로 구성된 브랜치매트릭스발생부와, 가산 및 비교선택부, 백트레이스부로 이루어진 비터비 디코더에 있어서, 상기 다수의 차이값회로는 제1 양자화된 입력값을 기준값(REF)과 배타적 오아 연산하여 제1 차이값을 출력하는 제1 익스쿨씨브오아게이트와; 상기 제1 익스쿨씨브오아게이트에서 출력된 신호를 입력받아 제2 양자화된 입력과 앤드 연산하는 제1 앤드게이트와; 상기 제1 앤드게이트에서 출력된 신호를 입력받아 기준값(REF)과 배타적 오아 연산하여 제2 차이값을 출력하는 제2 익스쿨씨브오아게이트와; 상기 제1 익스쿨씨브오아게이트에서 신호를 입력 받아 제3 양자화된 입력과 앤드 연산하는 제2 앤드게이트와; 상기 제2 앤드게이트에서 출력된 신호를 입력 받아 기준값(REF)과 배타적 오아 연산하여 제3 차이값을 출력하는 제3 익스쿨씨브오아게이트로 각기 구성하는 것을 특징으로 한다.
이하, 본 발명의 작용 및 효과에 관하여 일 실시예를 들어 설명한다.
도6은 비터비 디코더의 브랜치메트릭스발생부(10)에 적용되는 본 발명 차이값회로의 일 실시예시도로서, 양자화된 입력값(q2)을 기준값(REF) '0' 또는 '1'과 배타적 오아 연산하여 차이값(d0)을 출력하는 제1 익스쿨씨브오아게이트(60)와, 상기 제1 익스쿨씨브오아게이트(60)에서 출력된 신호를 입력 받아 양자화된 입력값(q1)과 앤드 연산하여 출력하는 제1 앤드게이트(61)와, 상기 제1 앤드게이트(61)에서 출력된 신호를 입력 받아 기준값(REF) '0' 또는 '1'과 배타적 오아 연산하여 차이값(d2)을 출력하는 제2 익스쿨씨브오아게이트(63)와, 상기 제1 익스쿨씨브오아게이트(60)에서 출력된 신호를 입력 받아 양자화된 입력값(q0)과 앤드 연산하는 제2 앤드게이트(62)와; 상기 제2 앤드게이트(62)에서 신호를 입력 받아 기준값(REF) '0' 또는 '1'과 배타적 오아 연산하여 차이값(d1)을 출력하는 제3 익스쿨씨브오아게이트(64)로 구성한다.
이와같이 구성한 본 발명이 적용되는 차이값회로의 동작을 도 7을 참조하여 상세히 설명하면 다음과 같다.
기준값(REF)이 '0' 이고 양자화된 입력값(q2,q1,q0)이 순차적으로 '0','1','1' 이라면 제1 익스쿨씨브오아게이트(60)는 기준값(REF) '0'과 입력값(q2)을 '0'으로 입력받아 배타적 오아 연산하여 차이값(d0)을 '0'으로 출력한다.
상기 제1 익스쿨씨브오아게이트에(60)서 출력된 값 '0'과 양자화된 입력값(q1)을 '1'로 입력받는 제1 앤드게이트(61)는 상기 두 값을 앤드하여 '0'을 출력한다.
이에따라, 상기 제1 앤드게이트(61)의 출력값 '0'과 기준값(REF) '0'을 입력받은 제2 익스쿨씨브오아게이트(63)는 상기 두 값을 배타적 오아 연산하여 차이값(d2)을 '0'으로 출력한다.
그리고, 상기 제1 익스쿨씨브오아게이트(60)에서 출력된 값'0'과 양자화된 입력값(q0)을 '1'로 입력받는 제2 앤드게이트(62)는 앤드하여 '0'을 출력한다.
이에따라, 상기 제2 앤드게이트(62)의 출력값 '0'과 기준값(REF) '0'을 입력받는 제3 익스쿨씨브오아게이트(64)는 상기 두 값을 배타적 오아 연산하여 차이값(d1)을 '0'으로 출력한다.
이와는 반대로, 기준값(REF)이 '1'이고 양자화된 입력값(q2),(q1),(q0)이 순차적으로 '0','1','1'이면, 제1 익스쿨씨브오아게이트(60)는 기준값(REF)'1'과 입력값(q2)을 '0'으로 입력받아 배타적 오아 연산하여 차이값(d0)을 '1'로 출력한다.
상기 제1 익스쿨씨브오아게이트에(60)서 출력된 값 '1'과 양자화된 입력값(q1)을 '1'로 입력받는 제1 앤드게이트(61)는 상기 두 값을 앤드 연산하여 '1'을 출력한다.
이에따라, 상기 제1 앤드게이트(61)의 출력값 '1'과 기준값(REF) '1'을 입력받은 제2 익스쿨씨브오아게이트(63)는 상기 두 값을 배타적 오아 연산하여 차이값(d2)을 '0'으로 출력한다.
그리고, 상기 제1 익스쿨씨브오아게이트(60)에서 출력된 값'1'과 양자화된 입력값(q0)을 '1'로 입력받는 제2 앤드게이트(62)는 앤드 연산하여 '1'을 출력한다.
이에따라, 상기 제2 앤드게이트(62)의 출력값 '1'과 기준값(REF) '1'을 입력받는 제3 익스쿨씨브오아게이트(64)는 상기 두 값을 배타적 오아 연산하여 차이값(d1)을 '0'으로 출력한다.
따라서, 기준값(REF)이 '0'이고 양자화된 입력값(q2,q1,q0)이 '011'일 때 종래 차이값회로에서의 차이값(d2,d1,d0)은 '011'이고 본 발명은 '000'이다. 반대로, 기준값(REF)이 '1'이면 종래기술에서 차이값(d2,d1,d0)은 '100'이고 본발명은 '001'이다. 결과적으로, 종래기술의 차이값(d2,d1,d0) 보다 본 발명의 차이값(d2,d1,d0)이 작으므로 오버플로우를 줄이기에 유리하다.
이상에서 상세히 설명한 바와같이 본 발명은 비터비 디코더의 브랜치 메트릭스 값을 계산할 때 입력값과 기준값과의 차이값을 상대적인 값으로 구함으로써 가산 및 비교선택부에서 발생하는 오버플로우를 최소화 하여 비터비 디코더의 성능을 향상 시킬 수 있다.

Claims (1)

  1. 다수의 차이값회로와 다수의 가산기로 구성된 브랜치 메트릭발생부와, 가산 및 비교선택부와, 백트레이스부로 이루어진 비터비 디코더에 있어서, 상기 다수의 차이값회로는 제1 양자화된 입력값을 기준값(REF)과 배타적 오아 연산하여 제1 차이값을 출력하는 제1 익스쿨씨브오아게이트와, 상기 제1 익스쿨씨브오아게이트에서 출력된 신호를 입력받아 제2 양자화된 입력과 앤드 연산하는 제1 앤드게이트와, 상기 제1 앤드게이트에서 출력된 신호를 입력받아 기준값(REF)과 배타적 오아 연산하여 제2 차이값을 출력하는 제2 익스쿨씨브오아게이트와; 상기 제1 익스쿨씨브오아게이트에서 신호를 입력 받아 제3 양자화된 입력과 앤드 연산하는 제2 앤드게이트와, 상기 제2 앤드게이트에서 출력된 신호를 입력 받아 기준값(REF)과 배타적 오아 연산하여 제3 차이값을 출력하는 제3 익스쿨씨브오아게이트로 각기 구성하는 것을 특징으로 하는 비터비 디코더.
KR1019970015094A 1997-04-23 1997-04-23 비터비 디코더 KR100218370B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970015094A KR100218370B1 (ko) 1997-04-23 1997-04-23 비터비 디코더

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970015094A KR100218370B1 (ko) 1997-04-23 1997-04-23 비터비 디코더

Publications (2)

Publication Number Publication Date
KR19980077829A KR19980077829A (ko) 1998-11-16
KR100218370B1 true KR100218370B1 (ko) 1999-09-01

Family

ID=19503632

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970015094A KR100218370B1 (ko) 1997-04-23 1997-04-23 비터비 디코더

Country Status (1)

Country Link
KR (1) KR100218370B1 (ko)

Also Published As

Publication number Publication date
KR19980077829A (ko) 1998-11-16

Similar Documents

Publication Publication Date Title
EP1049001B1 (en) Arithmetic apparatus
US6257756B1 (en) Apparatus and method for implementing viterbi butterflies
US6792570B2 (en) Viterbi decoder with high speed processing function
KR100737648B1 (ko) 비터비 복호장치 및 비터비 복호방법
KR100218370B1 (ko) 비터비 디코더
KR102415394B1 (ko) 비터비 디코더 매커니즘을 갖는 전자 시스템 및 그것의 동작 방법
US8943392B2 (en) Viterbi butterfly operations
US7852960B2 (en) Method of computing path metrics in a high-speed Viterbi detector and related apparatus thereof
JP3595191B2 (ja) 畳み込み符号化装置とビタビ復号化装置
KR100414152B1 (ko) 프로그래머블 프로세서에서의 비터비 디코딩 연산방법 및그 연산방법을 실행하기 위한 연산회로
JP2917577B2 (ja) 演算装置
CN117200809B (zh) 用于纠两个误码的rs码的低功耗钱搜索和错误估值电路
KR100729619B1 (ko) 고속 데이터 전송을 위한 비터비 디코딩 방법 및 장치
KR0179931B1 (ko) 에이씨에스 연산기
JPH10341170A (ja) 高速ビタビ復号装置
KR19990076528A (ko) 비터비 알고리즘 처리를 위한 가산 비교 선택 고속화 장치 및방법
KR100360926B1 (ko) 경로 메트릭값의 오버플로우를 방지하기 위한 리스케일링 동작을
JP3348086B2 (ja) ビタビ復号装置およびビタビ復号方法
US20110231741A1 (en) System and method for viterbi decoding using application specific extensions
KR100437818B1 (ko) 디코더의acs회로
KR19980072765A (ko) 비터비 디코더의 가산-비교-선택(acs)장치
JPH07147546A (ja) ビタビ復号器
KR100594214B1 (ko) 저전력 비터비 복호기
JP2002009636A (ja) ビタビ復号回路
JPH0816550A (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: 20050524

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee