KR0144837B1 - 최적의 복호경로를 갖는 복호화방법 및 그 장치 - Google Patents

최적의 복호경로를 갖는 복호화방법 및 그 장치

Info

Publication number
KR0144837B1
KR0144837B1 KR1019930004815A KR930004815A KR0144837B1 KR 0144837 B1 KR0144837 B1 KR 0144837B1 KR 1019930004815 A KR1019930004815 A KR 1019930004815A KR 930004815 A KR930004815 A KR 930004815A KR 0144837 B1 KR0144837 B1 KR 0144837B1
Authority
KR
South Korea
Prior art keywords
decoding
data
depth
symbols
window
Prior art date
Application number
KR1019930004815A
Other languages
English (en)
Other versions
KR940023051A (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 KR1019930004815A priority Critical patent/KR0144837B1/ko
Priority to US08/219,293 priority patent/US5488637A/en
Priority to JP6057020A priority patent/JP2859535B2/ja
Publication of KR940023051A publication Critical patent/KR940023051A/ko
Application granted granted Critical
Publication of KR0144837B1 publication Critical patent/KR0144837B1/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/3972Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03178Arrangements involving sequence estimation techniques
    • H04L25/03203Trellis search techniques
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/23Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes

Landscapes

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

Abstract

본 발명은 최적의 복호경로를 갖는 복호화방법 및 그 장치에 관한 것으로서, 특히 하나의 심볼 내지 임의의 N심볼의 원도우 이동거리만큼씩 이동하여 복호화깊이씩 부호열을 복호화하므로써 복호화데이타의 겹침이 발생하도록 하는 오버랩기능이 구비된 비터비복호화기와, 오버랩비터비복호화기의 출력을 메모리에 저장하고 카운터의 출력에 따라 제어신호 발생기에서는 메모리에서 출력될 데이타의 위치를 제어하며 비교부로 출력된 데이타중 가장 빈도가 높은 데이타를 최적의 복호경로로 선정하는 것에 관한 것이다. 따라서, 본 발명은 전송시 부가되는 잡음에 의해 발생하는 에러로 인하여 데이타가 잘못 복호화 되었을 때의 잘못된 경로 산정의 오차를 줄일 수 있는 효과를 제공한다.

Description

최적의 복호경로를 갖는 복호화방법 및 그 장치
제1도는 종래의 길쌈부호화기를 나타내는 블록도,
제2도는 제1도 장치에 의해 부호화된 데이타의 복호화과정을 설명하기 위한 개념도,
제3도는 종래의 비터비알고리듬에 의한 복호화과정을 나타낸 도면,
제4(a) 및 제4(b)도는 본 발명의 일실시예에 따른 오버랩(overlap)기능을 구비한 비터비복호화기의 복호화과정을 각각나타낸 도면,
제5도는 본 말명에 따른 최적의 복호경로를 갖는 복호화장치를 나타내는 블록도,
제6(a) 내지 6(f)도는 제5도의 제어신호발생기에 대한 동작을 설명하기 위한 도면.
*도면의 주요부분에 대한 부호의 설명
41:비터비복호화기 42:메모리
43:카운터 44:제어신호발생기
45:비교부
본 발명은 디지탈통신기기에 이용되는 길쌈부호화 및 TCM(Trellis Coded Modulation)신호의 복조에 사용되는 복조화방법 및 그 장치에 관한 것으로서, 특히 오버랩비터비복호화기(Overlapped Viterbi Decorder)를 이용하여 수신데이타를 복호화시켜 출력하는 최적의 복호경로를 갖는 복호화방법 및 그 장치에 관한 것이다.
일반적으로 디지탈 통신의 경우, 송신부에서 전송된 신호는 채널상에서 부과되는 잡음의 영향으로 원래의신호와는 다른 신호로 바뀌어 수신부에 수신된다. 디지탈통신에서는 전송로상에서 발생하는 에러를 줄이는 방법으로 에러정정부호(Error Correcting Code)를 사용한다. 이러한 채널 부호화에는 리스-솔로몬 부호(Reed-Solomon Code), 길쌈부호(Convolutional Code)등이 많이 쓰인다. 길쌈부호는 랜덤에러(Random Error)에 강하며, 그 복호화방법으로 비터비(Viterbi)에 의해 제안된 최우복호법(Maximum Likelihood Decoding)이 많이 사용된다. 길쌈부호화기의 일실시예를 나타내는 블록도가 제1도에 도시되어 있다.
제1도의 장치는 (2,1,2)길쌈부호를 사용하는 부호기로써, 외부 정보원으로부터 입력되는 비트데이타(DIN)를 인가받아 저장함과 동시에 저장되어 있던 이전비트데이타를 출력하는 제1지연부(11)를 구비한다. 제 1지연부(11)의 출력단에는 제1지연부(11)로부터 인가되는 데이타를 저장함고 동시에 자장되어 있던 이전비트데이타를 출력하는 제2지연부(12)가 연결된다. 뿐만 아니라, 이 장치는 제1지연부(11)로 인가되는 비트데이타와 제2지연부(12)의 출력데이타를 배타논리합(Exclusive OR)하는 제1배타논리합게이트(13)와, 제1지연부(11)로 인가되는 비트데이타와 제1 및 제2지연부(11,12)의 출력데이타들을 배타논리합하여 출력하는 제2배타논리합게이트(14)를 구비한다. 제1 및 제2배타논리합게이트(13,14)의 출력단에는 출력데이타를 순차적으로 2비트데이타로 전송하는 스위청소자(15)가 접속된다.
제1도에서, 제1지연부(11) 및 제2지연부(12)의 초기상태를 '0,0'이라 정하고, 외부정보원으로부터 입력되는 비트데이타들이 '1,0,1,1,1'인 경우를 설명한다. 우선, 첫번째 비트데이타 '1'은 제1지연부(11)와 제1 및 제2배타논리합게이트(13,14)로 각각 공급된다. 제1지연부(11)는 들어오는 데이타 '1'을 저장함과 동시에 저장되어 있던 이전 데이타 '0'을 제2지연부(12)와 제2배타논리합게이트(14)로 각각 공급한다. 제2지연부(12)는 제1지연부(11)로부터 공급되는 데이타 '0' 를 인가받아 저장하고, 이전의 저장데이타 '0'를 제1 및 제2배타논리합게이트(13,14)로 각각 공급한다. 따라서, 제1지연부(11)는 비트데이타 '1'을 저장하고, 제2지연부(12)는 비트데이타 '0'를 저장하게 된다. 그 결과, 제1지연부(11)로 비트데이타 '1'인가되는 경우, 제1 및 제2배타논리합게이트(13,14)는 각각 비트데이타 '1'을 출력한다. 그 다음, 스위칭소자(15)는 제1배타논리합게이트(13)의 출력비트값을 출력한 다음 제2배타논리합게이트(14)의 출력비트값을 출력하는 순서로 입력되는 신호를 순차적으로 출력한다. 이와 같은 과정을 반복 수행하면, 길쌈부호기의 출력(DOUT) 및 지연부(11, 12)의 상태는 다음 표1과 같게 된다.
여기서, 전체 입력이 5비트인데 출력은 10비트가 아닌 14비트가 되는 것은 10비트 출력 후 지연부(11,12)에 남아 있는 데이타를 출력시키기 위해 2비트의 널(Null)데이타인 '0,0'을 입력시켰기 때문이다. 이 널데이타는 제2도에서 설명할 비터비복호화(Viterbi Decoding)의 격자상도(Trellis Diagram)에서 최종상태를 초기상태인 '0,0'으로 수렴(Converge)시키는 역할을 한다. 길쌈부호의 특징은 부호기에 구비되어 있는 지연부로 인하여 과거에 입력된 정보가 현재 입력되는 정보의 부호화에 영향을 준다는 것이다. 이전 단계의 부호화된 정보와 현 단계의 부호화되는 정보의 상관성으로 인하여 길쌈부호의 복호화에는 비터비알고리듬에 의한 최우복호법(Maximum Likelihood Decoding)이 많이 사용되고 있다. 이 최우복호법은 가능한 모든 부호화에 대한 격자상도를 작성하고, 격자상도에서 복호기로 입력되는 데이타에 대한 각 노드(Node)의 해밍거리(Hamming distance)를 계산한다. 그리고, 가능한 경로(Path)들 각각에 대한 해밍거리를 누적시켜 누적된 해밍거리가 가장 작은 경로만을 생존경로(Survival Path)로 남겨두는 방식이다· 최종적으로 남는 생존경로는 전체 입력된 데이타에 대한 복호경로가 된다. 이러한 생존경로결정은 공지된 기술이지만, 제2도에서 보인 (2,1,2)길쌈부호의 격자상도를 이용하여 간단히 설명한다.
제2도는 제1도장치에 의해 부호화된 데이타의 복호화를 설명하기 위한 격자상도이다. 제2도에서, 각 단계(Stage)의 노드는 2개의 경로를 갖는다. 상대적으로 위에 위치한 경로인 윗경로는 부호기의 입력 '0'일때의 경로이고, 상대적으로 아래에 위치한 아래경로는 부호기로 '1'이 입력되었을 때의 경로이다. 또한, 각 경로위의 2비트는 각 입력에 대한 부호기의 출력 즉, 복호기의 입력을 나타낸다. 제1도의 부호기에서 부호화된 출력(D)에 2비트 에러가 발생하여 복호기에 입력되면, 복호기는 입력신호의 에러를 정정하여 원래의 신호로 복원시킨다. 수신체이타()중에서 'x'표시가 된 비트는 에러가 발생한 비트이다. 예러가 발생된 데이타의 복호화과정은 다음과 같다. 초기단계(제2도의 단계0)에서 복호기에 데이타 '11'이 입력되면, 각 경로상의 2비트 기준데이타(DREF)와의 해밍거리 즉, 서로 다른 대응 비트의 갯수를 구하여 제1단계의 각 노드에 저장한다. 동일한 방법으로, 두번째의 입력데이타 '11'에 대해 계산된 해밍거리는 이전단계의 해밍거리와 합산되어 제2단계의 각 노드에 저장된다. 이런 과정을 반복수행하면 어느 순간부터 하나의 노드에 복수개의 경로가 들어오는 경우가 있는데, 이런 경우에는 여러 경로중 누적된 해밍거리가 가장 작은 경로를 생존경로로 남기고 나머지 경로는 무시하게 된다. 이러한 과정을 반복 수행하면 마지막 단계에서는 오직 하나의 생존경로만이 남게 된다. 이 생존경로를 구성하는 각 노드간의 경로방향이 윗방향인지 아래방향인지에 따라 결정되는 1비트 데이타들은 복호화된 데이타를 구성한다. 제2도에 굵게 표시된 부부은 수신데이타(r)에 대한 최종복호경로이며, 그때의 복호화된 데이타는 부호기의 입력(DIN)과 동일함을 알 수 있다. 그러나, 일반적으로 부호기에 입력되는 데이타(DIN)는 거의 무한길이의 비트열(Bit Stream)이다. 이 경우 부호화된 전체 데이타에 대하여 전술한 복호화를 실행하면, 거의 무한대의시간지연이 생기게 된다. 따라서, 일반적으로 부호기에서는 계속적으로 부호화를 실행하고, 복호기에서는 일정길이만큼씩 잘라서 복호화하여 출력한다. 이러한 일정한 복호길이를 복호화 깊이(decoding depth) 또는 절단(truncation)깊이라 한다. 제2도의 경우, 초기단계에서 제5단계까지의 길이를 복호화깊이라 한다. 이러한 방법으로 복호화하면, 오직 하나의 생존 경로가 남는 것이 아니라, 마지막 단계의 각 노드마다 하나씩의 생존경로가 남게 된다. 그러므로, 마지막 단계에서는 각 노드의 생존경로에 대한 해밍거리를 비교하여 가장 작은 경로를 최종복호경로로 결정한다.
하나의 복호화깊이에 대한 복호화는 복호화 시작시의 초기상태를 어떻게 설정하느냐에 따라 두가지방법으로 나룰 수 있다. 첫번째 방법은, 복호화갚이의 초기상태를 이전 복호화깊이의 최종복호경로의 마지막 상태가 되도록 하는 것이다. 이 경우, 이전 복호화 정보는 그대로 이용할 수 있지만, 만약 앞서의 복호경로가 잘못된 경로일 경우 복호화 할려는 복호화깊이 데이타의 복호화도 잘못될 수 있다. 또한, 이 방법은 이전의 최종복호경로의 마지막 상태를 저장하고 있어야 한다. 두번째 방법은 이전 복호경로의 마지막 상태를 저장하지 않고 모든 상태에서 동시에 시작하는 방법이다. 이 경우 이전의 복호화 정보를 전혀 이용하지 않기 때문에 이전 복호경로가 잘못 되었을 경우에도 독립적으로 복호화를 수행할 수 있다. 하지만, 이전 경로가 옳았을 경우에는 잘못된 복호경로를 선택할 가능성이 전술한 방법보다 커질 수 있는 문제점이 있었다.
따라서, 본 발명의 최적의 복호경로를 갖는 복호화방법은 상술의 문제점을 해결하기 위하여 복호화깊이씩 이동하면서 복호화하는 종래의 방법과는 달리 복호화깊이보다 짧은 임의의 이동거리인 '원도우 이동거리'를 설정한다. 복호화깊이를 구성하는 심볼들은 원도우이동거리만큼씩 이동되는 복호화깊이단위로 여러번 복호화된다. 각 심볼에 대한 정보는 여러번 복호화되는 데이타들중에서 가장 빈도가 높은 데이타가 선택된다.
이러한 본 발명은 심볼들로 이루어진 부호열을 복호화하는 디지탈통신 방법에 있어서, 상기 부호열을 인가받아 복호화깊이단위로 형성되는 원도우내의 심볼들을 복호화하여 복호화데이타를 발생하는 단계와, 상기 원도우에 대한 복호화가 완료될 때마다 기설정된 이동거리만큼 부호열상의 상기 원도우를 이동하여 재위치시키는 단계와, 상기 각각의 개별 원도우에 대하여 발생되는 복호화데이타를 저장하는 단계와, 상기 저장된 복호화데이타중에서 동일한 심볼에 대응하는 저장된 복화데이타를 읽어내는 독출단계, 및 상기 읽어낸 복호화데이타를 서로 비교하여 대응 심볼에 대한 발생빈도수가 최대인 복호화데이타를 출력하는 단계를 포함하는 최적의 복호경로를 갖는 복호화방법에 의해 달성된다.
또한, 본 발명의 최적의 복호경로를 갖는 복호화장치는 전술한 최적의 복호경로를 갖는 복호화방법을 구현하여 복호화깊이를 구성하는 심볼들을 원도우이동거리만큼씩 이동시키면서 복호화깊이단위로 복호화하여 메모리에 저장하고, 동일한 심볼에 대한 여러번의 복호화에 의해 발생되는 여러 데이타들 중 가장 빈도가 높은 데이타를 심볼의 복호화된 정보로 출력한다.
이러한 본 발명은 심볼들로 이루어진 부호열을 복호화하는 디지탈통신 장치에 있어서, 상기 부호열을 인가받아 복호화깊이단위로 형성되는 원도우내의 심볼들을 복호화하여 복호화데이타를 발생하며, 상기 원도우에 대한 복호화가 완료될 때마다 기설정된 이동거리만큼 부호열상의 원도우를 이동하여 재위치시키는 복호기와, 상기 복호기에서 발생된 복호화데이타를 저장하고, 개별 번지신호들에 응답하여 개별적으로 저장하고 있던 복호화데이타를 출력하는 메모리와, 상기 복호기로부터 복호화데이타를 인가받아 상기 메모리로부터의 동일 심볼에 대응하는 상기 저장된 복호화데이타들을 상기 메모리로부터 출력시키기 위한 각각의 상기 번지신호들을 발생하는 제어수단 및 상기 메모리로부터 인가되는 동일 심볼에 대응하는 상기 복호화데이타중에서 빈도가 높은 복호화데이타를 출력하기 위한 비교부를 포함하는 최적의 복호경로를 갖는 복호화장치에 의해 달성된다.
이러한 본 발명에 의하여 복화깊이단위로 복호화되는 심볼들은 잘못된 경로선정으로 인해 발생하는 오차를 줄일 수 있다.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예를 상세히 기술하기로 한다.
먼저, 종래의 비터비알고리듬과 심볼들이 오버랩되는 본 발명을 각각 제3도와 제4(a) 및 4(b)도를 참조하여 간단히 설명한다.
제3도는 종래의 비터비알고리듬에 의한 복호화과정을 도시한 것이다.
제3도에서, 길쌈부호화된 부호열(code sequence)이 비터비복호기에 입력되면, 복호기는 일정길이 즉, 복호화길이(decoding depth)만큼씩 복호화를 수행한다. 먼저, 제1시간(T1)동안 복호화깊이(M)만큼 부호열을 복호화하여 출력하고, 제2시간(T2)에 부호열을 이루는 다음 심볼들을 복호화깊이(M)만큼 일거 복호화를 수행한다. 이러한 과정은 동일한 시간간격(T1,T2,…)에 대하여 반복된다. 그 결과, 전송시의 부가잡음에 의해 발생하는 에러로 인하여 데이타가 잘못 복호화되었을 경우, 복호화깊이만큼의 데이타가 모두 쓸모없게 된다.
제 4(a) 및 4(b)도는 본 발명의 일실시예에 따른 오버랩기능을 구비한 비터비복호기의 복호화과정을 각각 도시한 것이다. 본 발명의 비터비복호화기는 복호화깊이단위로 복호화를 수행하는 것으로서, 복호화초기인 제1시간(T1)동안 종래와 동일한 복호화를 수행한다. 그러나, 다음의 제2시간(T2)동안은 그 다음의 심볼들에 대한 복호화를 수행하지 않고, 제1시간(T1)에 복호화되는 심볼들을 기준으로 제 4(a)도에 보여진 것과 같이 1심볼만큼 우측으로 이동한 곳에 위치한 심볼들에 대해 복호화깊이만큼이 복호화를 수행한다. 이런 경우, 원도우이동거리(N)는 1이 된다. 이를 반복해서 수행하면, 복호화되는 심볼들은 초기의 9심볼을 제외하고는 모두 10회씩 복호화한다. 또한, 제4(b)도와 같이 원도우이동거리(N)가 2인 경우는 각 복호화단계마다 2심볼씩 이동하게 되며 초기 8심볼을 제외하고는 모두 5회씩 복호화된다. 따라서, 동일한 심볼에 대한 복호화횟수인 겹침회수는 일반적으로 M/N으로 표기된다.
제5도는 본 발명에 따른 최적의 복호경로를 갖는 복호화장치를 나타내는 블록도이다. 제5도의 장치는 부호화된 부호열을 수신받아 사전 설정된 원도우이동거리에 맞춰 비터비알고리듬을 수행하여 복호화정보를 출력하는 비터비복호화기(41)를 구비한다. 비터비복호화기(41)의 출력단에는 복호화깊이만큼씩의 복호화된 데이타를 인가받아 저장하는 메모리(42)가 연결된다. 카운터(43)는 비터비복호화기(41)의 출력단에 연결되어 복호화되어 출력되는 심볼들을 복호화깊이단위로 카운트한다. 제어신호발생기(44)는 카운터(43)와 메모리(42)사이에 위치하여 카운터(43)로부터 인가되는 카운트값(COOUT)에 응답하여 제어신호를 메모리(42)로 인가한다. 메모리(42)에 연결된 비교부(45)는 메모리(42)로부터 인가되는 동일한 심볼에 대한 복호화데이타들의 발생횟수를 비교하여 가장 빈도가 높은 데이타를 복호화된 정보(d)로 출력하도록 연결된다.
제5도에서, 오버랩기능을 구비한 비터비복호화기(41)는 부호화된 부호열(r)을 인가받아 사전 설정된 원도우 이동거리 만큼씩 부호열(r)의 심볼들은 이동하여 복호화깊이단위로 복호화한다. 구체적인 복호화과정은 제4(a) 및 4(b)도에서 설명되었다. 복호회된 데이타는 복호화깊이만큼씩 메모리(42)와 카운데(43)에 각각 공급된다. 메모리(42)는 복호화깊이(M)×부호의 겹침횟수(M/N)만큼의 저장크기를 갖으며, 복호화깊이만큼씩 입력되는 복호화데이타를 순서적으로 저장한다. 메모리(42)가 다 채워졌을 경우 즉, 카운터값(COOUT)이 부호의 겹침횟수(M/N)와 동일한 경우 (COOUTmodulo M/N = 0, 단 COOUT≥M )에는 낮은 번지부터 다시 저장된다. 카운터(43)는 복호화깊이만큼의 복호화된 데이타가 입력될 때 마다 카운트값을 1씩 증가시키고, 그 카운트값(COOUT))을 제어신호기발생기(44)로 공급한다. 제어신호발생기(44)는 카운터(43)로부터 인가되는 카운트값(COOUT))을 부호의 겹침횟수(M/N)와 비교하고 비교된 결과에 따라 메모리 저장번지를 계산하여 메모리 (42)의 해당 번지에 저장되어 있는 복호화데이타를 출력시킨다. 즉, 제어신호발생기(44)는 비교부(45)로 출력될 동일 위치의 부호지정을 카운트값(COOUT)) 및 원도우 이동거리(N)에 따라 행하게 되는데 메모리(42)에 저장된 전체 부호의 겹침횟수(M/N)만큼의 부호열에 대하여 각 부호열중 이동거리(N)와 같은 크기씩 비교부(45)로 출력된다. 원도우이동거리(N)가 1인 경우 비교부(45)로 출력되는 복호화데이타들은 복호화깊이(M)에 대응하는 각 부호열에 들어 있으며 동일한 심볼에 대응하는 데이타가 된다. 반면에 원도우이동거리(N)가 2인 경우는 복호화깊이(M)/2에 대응하는 부호열에서 각 2개씩의 심볼에 대한 복호화데이타가 비교부(45)로 인가된다. 비교부(45)는 메모리(42)로부터 인가되는 복호화데이타들을 비교하여 가장 많은 빈도를 갖는 복호화데이타를 해당 심볼의 복호화정보(d)로 출력한다. 원도우 이동거리가 1인 경우 1심볼에 대하여 가장 빈도수가 높은 복호화데이타를 출력하게 된다. 원도우이동거리가 2인 경우는 2심볼에 대하여, 이동거리가 N인 경우는 N심볼에 대하여 가장 빈도수가 높은 복호화데이타를 출력하게 된다. 따라서, 비교부(45)는 각 원도우이동거리에 대하여 원도우이동 거리만큼씩 최적의 복호경로를 갖는 보호하데이타를 출력하게 된다.
제6(a) 내지 6(f)도는 제5도의 제어신호발생기(44)에 대한 동작을 설명하기 위한 개념이다.
제어신호발생기(44)는 카운터(43)로부터 인가되는 카운트값(COOUT))을 부호의 겹침횟수(M/N)와 비교해서 메모리(42)의 저장상태를파악한다. 제어신호발생기(44)는 메모리(42)의 저장상태에 응답하여 메모리(42)에 저장되어 있는 데이타의 출력을 제어한다. 첫번째로, 메모리가 다 채워지지 못한 경우(COOUT〈 M/N)에는 제어신호발생기(44)에서 하기와 같은 식(1)을 만족하는 번지에 저장된 복호화데이타들을 비교부(45)로 공급할 수 있도록 제어한다.
여기서 , i=0,1,…,(COOUT-1)이고, j=0,1,…,(N-1)이다.
예를 들어, 제 6(s)도와 같이 카운트값(COOUT)이 3이고, 원도우이동 거리(N)는 1, 복호화깊이(M)는 10인 경우 b영역은 데이타가 채워지지 않은 영역이고, a 와 같이 검은 블록은 비교부(45)로 출력된 부호들이다. 즉, 출력되는 부호의번지는 각각 (2),(11),(20)이다. 또한, 제6(라)도와 같이 카운트값(COOUT)이 3, 원도우이동거리(N) 2인 경우 이때 출력되는 부호의번지는 각각 (5,6), (12,13), (20,21)이 된다. 두번째, 메모리가 다 채워진 경우 (COOUTmodulo M/N)=0 단 COOUT≥ M/N)에는 하기 식(2)를 만족하는 번지의 데이타를 출력시킨다.
여기서,i=0,1,…,(M/N)-1이고, j=0,1,…,(N-1)이다.
예를 들어, 제어신호발생기(44)는 제6(b)도와 같은 경우에는 (9), (18), (27), (36), (45), (54), (63), (72), (81), (90)번지에 저장되어 있는 부호들을 비교부(45)로 출력할 수 있도록 제어한다. 제6(e)도의 경우에는 (8, 9), (16, 17), (24, 25), (32, 33), (40, 41)번지에 저장되어 있는 데이타들을 출력하도록 제어한다. 세번째, 메모리(42)가 다 채워져 이후에 입력되는 복호화데이타들을 낮은 번지에서부터 다시 저장시키는 경우 (COOUTmodulo M/N)≠0 단, (COOUT≥ M/N)에는 하기 식(3) 및 (4)를 만족하는 번지에 저장된 데이타들을 비교부(45)로 공급할 수 있도록 제어한다.
여기서 i=0,1,…,(COOUTmodulo M/N)-1이고, j=0,1,…,(N-1)이다.
여기서 , i=(COOUTmodulo M/N), … , (M/N-1)이고, j=0,1,…,(N-1)이다.
예를 들어, 제6(c)도와 같이 카운트값(COOUT)13, 원도우 이동거리(N) 1인 경우, 제어신호발생기(44)로부터 출력되는 동일 심볼에 대한 복호화데이타의 번지는 각각 (2), (11), (20), (39), (48), (57), (66), (75), (84), (93)이 된다. 또한, 제6(f)도와 같이 카운트값(COOUT) 7 윈도우이동거리(N) 2인 경우 출력되는 부호의 번지는 각각 (2, 3), (10, 11), (28, 29), (36, 37), (44, 45)이다.
상술한 바와 같이, 본 발명의 최적의 복호경로를 갖는 복호화 방법 및 그 장치는, 임의의 심볼간격으로 자리이동하며 복호화깊이씩 복호화하고, 겹쳐진 복호화데이타들을 비교하여 가장 빈도가 높은 부호를 선택하여 출력하므로 잘못된 경로선정으로 인하여 발생되는 에러를 줄일 수 있어 복호성능을 향상시킬 수 있는 효과를 갖는다.

Claims (18)

  1. 심볼들로 이루어진 부호열을 복호화하는 디지탈통신장치에 있어서, 상기 부호열을 인가받아 복호화깊이단위로 형성되는 원도우내의 심볼들을 복호화하여 복호화데이타를 발생하며, 상기 원도우에 대한 복호화가 완료될 때마다 기설정된 이동거리만큼 부호열상의 원도우를 이동하여 재위치시키는 복호기;상기 복호기에서 발생된 복호화데이타를 저장하고, 개별 번지신호들에 응답하여 개별적으로 저장하고 있던 복호화데이타를 출력하는 메모리;상기 복호기로부터 복호화데이타를 인가받아 상기 메모리로부터의 동일 심볼에 대응하는 상기 저장된 복호화데이타들을 상기 메모리로부터 출력시키기 위한 각각의 상기 번지신호들을 발생하는 제어수단; 및 상기 메모리로부터 인가되는 동일 심볼에 대응하는 상기 복호화데이타 주에서 빈도가 높은 복호화데이타를 출력하기 위한 비교부를 포함하는 치적의 복호경로를 갖는 복호화장치.
  2. 제1항에 있어서, 복호기의 상기 이동거리는 상기 복호화 깊이에 해당하는 심볼갯수보다 적은 심볼갯수로 설정됨을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  3. 제1항에 있어서, 상기 복호기는 기설정된 이동거리에 이해 상기 복호화깊이를 나누어 얻어지는 겹침갯수와 일치하는 심볼들에 대하여 복호화데이타를 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  4. 제3항에 있어서, 상기 메모리의 저장용량은 상기 복호화깊이와 상기 겹침수에 의해 결정됨을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  5. 제1항에 있어서, 상기 제어수단은 상기 복호기로부터 인가되는 복호화데이타들을 상기 복호화깊이단위로 카운트하고, 그 카운값을 출력하는 카운터; 및 상기 카운트값을 인가받아 윈도우겹침을 나타내는 기설정된 기준겹침수와 비교하여 상기 메모리의 저장상태를 판단하고, 판단되는 메모리의 저장상태에 대응하는 개별 상기 번지신호들을 발생하는 제어신호발생기를 구비함을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  6. 제5항에 있어서, 상기 제어신호발생기는 개별 기설정된 이동거리에 대응하는 단위로 동일 심볼에 대한 상기 저장된 복호화데이타를 출력하기 위한 제어신호를 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  7. 제6항에 있어서, 상기 제어신호발생기는 카운트값(COOUT)이 기설정된 기준겹침수보다 적은 경우, 다음의 식을 만족하는 개별 상기 번지 신호들(ADDR)을 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
    여기서, i=0,1,…,(COOUT-1)이고, j=0,1,…,(N-1)이며, N은 개별 기설정된 이동거리, M은 복호화깊이이다.
  8. 제8항에 있어서, 상기 제어신호발생기는 상기 카운트값이 기설정된 기준겹침수보다 크거나 같은 경우, 카운트값을 기설정된 기준겹침수로 나누어 얻어진 결과에 따라 대응 개별 번지신호들을 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  9. 제6항에 있어서, 상기 제어신호발생기는 상기 나눈 결과가 나머지가 없는 경우, 다음의 식을 만족하는 개별 상기 번지신호들 (ADDR)을 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
    여기서, i=0,1,…,(M/N)-1이고, j=0,1,…,(N-1)이며, N은 개별 기설정된 이동거리, M은 복호화깊이이다.
  10. 제8항에 있어서, 상기 제어신호발생기는 상기 나눈 결과가 기설정된 나머지를 갖는 경우, 다음의 식들을 만족하는 개별 상기 번지신호들(ADDR)을 발생하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
    여기서, i=0,1,…,(COOUTmodulo M/N)-1이며,
    여기서, i=(COOUTmodulo M/N),…,(M/N-1이고, j=0,1,…,(N-1)
    N은 개별 기설정된 이동거리
    COOUT는 카운트값
    M은 복호화깊이이다.
  11. 제6항에 있어서, 상기 비교부는 개별 기설정된 이동거리의단위로 동일 심볼들에 대한 복호화데이타를 비교하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화장치.
  12. 심볼들로 이루어진 부호열을 복호화하는 디지탈통신방법에 있어서, 상기 부호열을 인가받아 복호화깊이단위로 형성되는 원도우내의 심볼들을 복호화하여 복호화데이타를 발생하는 단계;상기 윈도우에 대한 복호화가 완료될 때마다 기설정된 이동거리만큼 부호열상의상기 원도우를 이동하여 재위치시키는 단계;상기 각각의 개별 원도우에 대하여 발생되는 복호화데이타를 저장하는 단계;상기 저장된 복호화데이타중에서 동일한 심볼에 대응하는 저장된 복호화데이타를 읽어내는 독출단계; 및 상기 읽어낸 복호화데이타를 서로 비교하여 대응 심볼에 대한 발생빈도수가 최대인 복호화데이타를 출력하는 단계를 포함하는 최적의 복호경를 갖는 복호화방법.
  13. 제12항에 있어서, 상기 기설정된 이동거리는 상기 복호화 깊이에 해당하는 심볼갯수보다 적은 심볼갯수로 이루어지며, 상기 재위치단계는 상기 부호열상의 동일 심볼에 대해 윈도우겹침(overlap)을 위해, 기설정된 이동거리만큼 윈도우를 이동시키는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화방법.
  14. 제12항에 있어서, 상기 재위치단계는 상기 복호화깊이를 상기 기설정된 이동 거리로 나누어 얻어지는 겹침갯수만큼의 심볼을 복호화하기 위한 단계를 더 포함하는 최적의 복호경로를 갖는 복호화방법.
  15. 제12항에 있어서, 상기 저장단계는 상기 복호화깊이와 상기 겹침갯수에 의해 결정되는 저장용량을 갖는 메모리에 상기 복호화데이타를 저장하는 단계를 더 포함하는 최적의 보호경로를 갖는 복호화방법.
  16. 제15항에 있어서, 상기 독출단계는 상기 재위치단계에 의해 발생되는 복호화데이타를 상기 복호화깊이단위로 카운트하여 카운트값을 발생하는 단계;상기 발생되는 카운트값을 윈도우겹침을 나타내는 기설정된 기준겹침수와 비교화는 단계; 및 상기 저장된 복호화데이타중에서 동일 심볼에 대응하는 저장된 하나의 복호화데이타를 읽어내는 단계를 구비함을 특징으로 하는 최적의 복호경로를 갖는 복호화방법.
  17. 제16항에 있어서, 상기 독출단계는 상기 기설정된 이동거리단위로 상기 저장된 복호화데이타를 출력하는 것을 특징으로 하는 최적의 부호경로를 갖는 복호화방법.
  18. 제16항에 있어서, 상기 비교단계는 상기 기설정된 이동기리만큼의 원도우이동단위로 동일 심볼에 대한 복호화데이타를 서로 비교하는 것을 특징으로 하는 최적의 복호경로를 갖는 복호화방법.
KR1019930004815A 1993-03-26 1993-03-26 최적의 복호경로를 갖는 복호화방법 및 그 장치 KR0144837B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1019930004815A KR0144837B1 (ko) 1993-03-26 1993-03-26 최적의 복호경로를 갖는 복호화방법 및 그 장치
US08/219,293 US5488637A (en) 1993-03-26 1994-03-28 Decoding method and apparatus having optimum decoding paths
JP6057020A JP2859535B2 (ja) 1993-03-26 1994-03-28 最適な復号経路を有する復号方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930004815A KR0144837B1 (ko) 1993-03-26 1993-03-26 최적의 복호경로를 갖는 복호화방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR940023051A KR940023051A (ko) 1994-10-22
KR0144837B1 true KR0144837B1 (ko) 1998-08-17

Family

ID=19352847

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930004815A KR0144837B1 (ko) 1993-03-26 1993-03-26 최적의 복호경로를 갖는 복호화방법 및 그 장치

Country Status (3)

Country Link
US (1) US5488637A (ko)
JP (1) JP2859535B2 (ko)
KR (1) KR0144837B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3171772B2 (ja) * 1995-08-23 2001-06-04 沖電気工業株式会社 ビタビ復号方法及びビタビ復号装置
US5889823A (en) * 1995-12-13 1999-03-30 Lucent Technologies Inc. Method and apparatus for compensation of linear or nonlinear intersymbol interference and noise correlation in magnetic recording channels
US7673224B2 (en) * 2006-09-12 2010-03-02 Agere Systems Inc. Low power viterbi decoder using a novel register-exchange architecture

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61128632A (ja) * 1984-11-28 1986-06-16 Fujitsu Ltd ビタビデコ−ダ
US4677625A (en) * 1985-03-01 1987-06-30 Paradyne Corporation Distributed trellis encoder
US5321705A (en) * 1990-11-21 1994-06-14 Motorola, Inc. Error detection system
JP3007228B2 (ja) * 1992-06-18 2000-02-07 沖電気工業株式会社 最尤系列推定器
US5335250A (en) * 1992-10-22 1994-08-02 Ericsson Ge Mobile Communications Inc. Method and apparatus for bidirectional demodulation of digitally modulated signals

Also Published As

Publication number Publication date
KR940023051A (ko) 1994-10-22
JP2859535B2 (ja) 1999-02-17
JPH0730440A (ja) 1995-01-31
US5488637A (en) 1996-01-30

Similar Documents

Publication Publication Date Title
KR100554322B1 (ko) 복수의 코딩 버스트내에 배치된 crc 비트에 의해 종료 상태가결정되는 컨벌루셔널 디코딩
KR100203722B1 (ko) 코드화된 정보 시퀀스 처리 방법
US5537444A (en) Extended list output and soft symbol output viterbi algorithms
US5230003A (en) Decoding system for distinguishing different types of convolutionally-encoded signals
US5436918A (en) Convolutional encoding/decoding apparatus with fixed bit insertion
KR850700196A (ko) 오차 정정 부호의 복호방법 및 복호장치
JPS6356728B2 (ko)
US4715037A (en) Viterbi decoder comprising a majority circuit in producing a decoded signal
US20030188248A1 (en) Apparatus for iterative hard-decision forward error correction decoding
GB2315001A (en) Viterbi decoder for depunctured codes
KR0144837B1 (ko) 최적의 복호경로를 갖는 복호화방법 및 그 장치
JP2715398B2 (ja) 誤り訂正符復号化装置
US7035356B1 (en) Efficient method for traceback decoding of trellis (Viterbi) codes
KR20010034431A (ko) 천공 비블록형 코드의 비트 에러율을 낮추는 프리코딩 기술
RU2608872C1 (ru) Способ кодирования и декодирования блокового кода с использованием алгоритма Витерби
Heller Feedback decoding of convolutional codes
JPH06284018A (ja) ビタビ復号方法および誤り訂正復号化装置
EP1024603A2 (en) Method and apparatus to increase the speed of Viterbi decoding
KR0144846B1 (ko) 콘벌루션부호화기 및 복호화방법
US6842490B1 (en) Viterbi decoder with adaptive traceback
Lin et al. Linear block codes
KR100600310B1 (ko) 2차원 페이지의 인코딩 및 디코딩 방법
KR100811376B1 (ko) 통신시스템에서의 부호화 및 복호화 방법
MATSUNAGA et al. Unequal error protection scheme using several convolutional codes
KR0141199B1 (ko) 길쌈 부호를 이용한 디지탈 통신방법 및 그 장치

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: 20110330

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee