KR100627714B1 - 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법 - Google Patents

연판정 출력 비터비 알고리즘을 이용한 반복 복호방법 Download PDF

Info

Publication number
KR100627714B1
KR100627714B1 KR1019990035893A KR19990035893A KR100627714B1 KR 100627714 B1 KR100627714 B1 KR 100627714B1 KR 1019990035893 A KR1019990035893 A KR 1019990035893A KR 19990035893 A KR19990035893 A KR 19990035893A KR 100627714 B1 KR100627714 B1 KR 100627714B1
Authority
KR
South Korea
Prior art keywords
soft decision
decision output
code
paths
value
Prior art date
Application number
KR1019990035893A
Other languages
English (en)
Other versions
KR20010019469A (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 KR1019990035893A priority Critical patent/KR100627714B1/ko
Publication of KR20010019469A publication Critical patent/KR20010019469A/ko
Application granted granted Critical
Publication of KR100627714B1 publication Critical patent/KR100627714B1/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/4138Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
    • 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

Abstract

본 발명은 블록 부호에 대하여 복잡도가 감소된 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법에 관한 것이다. 블록 부호에 대하여 연판정 출력 비터비 복호방식을 사용하여 반복 복호를 수행함에 있어서 미터릭의 통계치를 이용하여 복잡도를 감소시키고, 이에 따라 연판정 출력 값을 효율적으로 계산하여 간단한 방법으로 원하는 만큼의 복잡도로 블록부호에 대한 반복 복호를 구현하고자 한다.
이러한 본 발명은, 송신단에서 블록부호를 구성하는 제 1 단계와; 수신단에서 수신된 프레임에 대하여 행별로 복잡도 감소 연판정 출력 비터비 알고리즘을 이용하여 복호를 수행하는 제 2 단계; 행별 복호에서 출력된 연판정 출력 정보를 추가하여 열별로 복잡도 감소 연판정 출력 비터비 알고리즘을 이용하여 복호를 수행하는 제 3 단계; 및 열별 복호에서 출력된 연판정 출력 정보를 추가하여 제 2 단계부터 반복적으로 복호를 수행하는 제 4 단계를 포함한다.

Description

연판정 출력 비터비 알고리즘을 이용한 반복 복호방법{ Iterative decoding of block codes using reduced search soft output Viterbi algorithm }
도 1은 부호화율이 1/2이고 구속장이 3인 길쌈 부호화기의 구조도,
도 2는 부호화율이 1/2이고 구속장이 3인 길쌈 부호에 대한 트렐리스도,
도 3은 여러 가지 부호화 방식의 경우에 대한 임의의 한 레벨에서의 경로미터릭의 분포도,
도 4는 경로미터릭의 통계치를 이용한 경로 수 감소기법 흐름도,
도 5는 (7,4) BCH 부호에 대한 부호화 과정과 이를 유한 임펄스 필터링과정으로 모델링한 예시도,
도 6은 (7,4) BCH 부호에 대한 트렐리스도,
도 7은 (7,4) BCH 부호에 대한 연판정 출력 비터비 알고리즘 적용 예시도,
도 8은 (7,4) BCH 부호에 대한 복잡도 감소 연판정 출력 비터비 알고리즘 적용 예시도,
도 9는 블록 부호에 대하여 연판정 출력 비터비 알고리즘을 적용하여 반복 복호를 수행하는 개념도,
도 10은 블록 부호에 대하여 연판정 출력 비터비 알고리즘을 적용하여 반복 복호를 수행하기 위한 부호화 과정의 동등 모델도,
도 11은 본 발명의 한 실시예에 따른 복잡도가 감소된 연판정 출력 비터비 알고리즘을 이용한 반복 복호기법의 흐름도,
도 12는 도 11에 적용된 복잡도 감소 연판정 출력 비터비 알고리즘 서브루틴을 도시한 흐름도이다.
본 발명은 블록 부호에 대하여 트렐리스(trellis) 복호방식을 적용한 연판정 출력 비터비 복호 알고리즘(Soft Output Viterbi Algorithm; 일반적으로 SOVA라고 부름)을 이용하여 반복 복호를 수행하는 방법에 관한 것이다.
일반적으로, 종래의 연판정 출력을 이용한 반복 복호방법(일반적으로 터보 코드라고 부름)은 길쌈부호를 이용하는 방법과 블록부호를 이용한 방법이 있다. 이 블록부호를 이용하는 방법에서는 연판정 출력을 대수적인 방법에 의해 산출하고 이를 이용하여 반복 복호를 수행한다. 즉, 연판정 출력을 제공하기 위하여 부가적인 작업이 요구되었다.
길쌈부호를 이용하는 방법은 미국특허 제 5,446,747 호에 개시되어 있는 바, 이는 트렐리스를 종결시키는 어려움이 존재하며, 또한 이러한 어려움때문에 효율적인 복잡도 감소기법을 적용하기가 힘들다는 단점이 있다. 블록부호를 이용하는 방법은 미국특허 5,563,897 호에 개시되어 있는 바, 이는 연판정값을 계산하기 위한 부가적인 작업이 요구된다는 단점이 있다.
여러 연구에서 밝혀진 바에 따르면, 이러한 블록부호를 이용하는 방식은 트렐리스 복호 방식을 이용할 경우, 한 비트를 복호하기 위하여 계산해야 하는 총 경로의 수보다 더 적은 경로만을 고려하고서도 최대근사복호기(Maximum likelihood decoder)와 거의 동일한 성능을 얻을 수 있다.
이러한 방식은 총 S개의 경로 중에서 가장 우수한 A개의 경로를 선정하는데 S의 값이 커지면 A개를 선정하는 알고리즘 자체를 수행하는데 많은 시간이 소요되기 때문에, 최대근사복호기보다도 더 비효율적인 알고리즘이 될 수도 있다는 단점을 가진다.
따라서, 본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 블록 부호에 대하여 트렐리스 복호방식 중 연판정 출력 비터비 복호방식을 이용하여 반복 복호를 수행함에 있어서 경로 미터릭 통계치를 이용하여 복잡도를 감소시키고, 이에 따라 연판정 출력값을 효율적으로 계산하여 간단한 방법으로 원하는 복잡도로 블록부호에 대한 반복복호를 실현하는 방법 을 제공하는 데 있다.
상기한 목적을 달성하기 위한 본 발명에 따른 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법은, 블록부호에 대하여 복잡도가 감소된 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법에 있어서,
송신단으로부터 반복 복호 기법을 적용하기 위한 블록 부호 프레임이 수신되면, 수신단의 복호기는 상기 블록 부호 프레임에 대하여 행별로 연판정 출력 비터비 알고리즘을 적용하여 행 부호를 복호하여 행 부호에 대한 연판정 출력값을 얻는 행부호연판정단계와;
상기 행 부호에 대한 연판정 출력값을 추가하여 열별로 연판정 출력 비터비 알고리즘을 적용하여 열 부호를 복호하여 열 부호에 대한 연판정 출력값을 얻는 열부호연판정단계와;
상기 열 부호에 대한 연판정 출력값을 추가하여 상기 행부호연판정단계부터 반복 수행하는 반복단계를 포함한 것을 특징으로 한다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
삭제
이하, 첨부된 도면을 참조하여 본 발명의 한 실시예에 따른 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법을 보다 상세하게 설명하면 다음과 같다.
본 발명은 블록부호에 대한 연판정 비터비 복호기법을 이용하여 반복 복호를 수행함에 있어서, 트렐리스의 각 시점에서의 경로 미터릭의 통계치를 이용하여 복 잡도를 감소시키고, 복잡도가 감소됨에 따라 연판정 출력값을 적절히 정의함으로써 복잡도를 감소시키는 동시에 성능은 복잡도를 감소시키지 않았을 때와 거의 근사하게 유지시킬 수 있다.
길쌈부호뿐만 아니라 모든 종류의 선형 블럭부호는 트렐리스로 표현할 수 있으므로 비터비 복호와 같은 트렐리스 복호기법을 적용할 수 있고, 따라서 연판정 복호를 쉽게 적용함으로써 이로인한 부가적인 부호화 이득을 얻을 수 있다.
도 1은 구속장이 3이고 부호화율이 1/2인 길쌈 부호화기를 도시한 구조도인데, 1개의 정보 비트당 2개의 부호화 비트가 출력된다. 구속장이란 한 개의 정보비트가 출력 부호화 비트에 영향을 미치는 길이를 말하며, 이는 부호화기 내부의 메모리 개수에 의존한다. 이 메모리의 개수에 따라 트렐리스의 상태수가 결정되는데, 도 1에서 메모리 개수는 2개이고 메모리에 저장될 수 있는 값이 이진수, 즉 두 가지 종류이므로 트렐리스의 상태 수는 22=4개이다.
즉, 부호화율이 1/2이므로 입력 정보비트가 한 개씩 입력됨에 따라 그 전 시점에서 입력되어 현재 메모리에 저장되어 있는 비트와의 연산에 의해 부호화 비트가 2개씩 출력된다. 그 다음 시점에는 현재 입력된 비트가 메모리로 쉬프트되면서 이러한 과정을 반복하게 된다.
도 2는 도 1과 같이 부호화율이 1/2이고 구속장이 3인 길쌈 부호에 대한 트렐리스도이다. 트렐리스의 각 상태에서 다음 상태로 천이되는 것은 메모리에 새로이 입력되는 정보 비트값이 무엇인지에 따라 결정되는데 여기서는 정보 비트가 1 비트씩 즉, 2가지 종류가 입력되기 때문에 한 상태에서 다음 상태로 가는 가지(branch)가 2개가 된다.
부호화율이 1/2이므로 1개의 정보화 비트가 부호화기에 입력될 때마다 2개의 복호화된 비트가 출력되는데, 트렐리스 다이어그램에서 검은 점으로 표시된 각 노드는 한 시점에서 부호화기의 상태를 나타낸다. 노드와 노드를 연결시켜주는 선을 "가지(branch)"라고 하는데, 이는 현 시점에서 부호화기의 상태에서 다음 시점으로의 천이를 나타낸다. 트렐리스의 각 시점들, 즉 x축을 트렐리스의 "레벨(level)"이라고 한다. 노드를 연결시켜주는 가지들이 연결된 선을 "경로(path)"라고 하며 이 경로가 결국은 부호어들을 나타낸다.
비터비 복호방식은 수신된 비트에 대하여 트렐리스 상에 존재하는 모든 경로, 즉 부호어들과의 미터릭을 계산하여 그 미터릭 값이 가장 적은 혹은 큰 경로를 복호어로 결정한다. 여기서 미터릭을 가장 큰 값을 선택하느냐 가장 적은 값을 선택하느냐는 미터릭을 어떻게 정의하여 사용하느냐에 따라 다른데, 유클리디언(Euclidean) 미터릭을 사용한다고 가정하면 가장 적은 값을 선택하여 사용한다. 여기서 설명되는 예에서는 모두 유클리디언 미터릭을 사용하는 가정하에 이루어질 것이다.
연판정 출력 비터비 복호방식은 복호된 값이 0 또는 1의 경판정 값으로 출력되는 것이 아니라 어느 정도의 신뢰도를 가지고 0 또는 1인지를 출력한다. 이러한 신뢰도 값을 연판정 출력이라고 한다. 연판정 출력 비터비 복호 알고리즘(SOVA)에서는 이러한 신뢰도를 임의의 노드로 유입되는 여러 경로들 중 경로 미터릭이 가장 큰 경로와 경로 미터릭이 가장 적은 경로와의 미터릭 차이 값으로 정한다.
여기서 노드로 유입되는 여러 경로 중 미터릭 값이 가장 우수하여 계속 존재하는 경로를 생존 경로(surviving path)라고 하고, 미터릭 값이 불량하여 더 이상 고려되지 않고 무시되는 경로를 경쟁 경로(contending path)라고 한다. 즉, 임의의 노드로 유입되는 경로가 두 개일 경우 각 시점에서 복호되는 값에 대한 연판정 출력은 생존 경로와 경쟁 경로의 차이값이 된다. 또한 SOVA에서는 복호가 진행되면서 이전 시점에서 계산된 신뢰도는 현 시점에서 계산된 출력과 비교하여 계속해서 갱신해 주어야 한다.
블록 부호에 대하여 적용되는 SOVA를 정리하면 다음과 같다.
첫째, 트렐리스의 k번째 레벨에서 모든 경로에 대한 정보를 계산하고 기록한다. 둘째, 각 노드에서 생존 경로를 선택한다. 이러한 첫째와 둘째 사항은 일반적인 비터비 알고리즘에서 수행되는 작업이다. 셋째, 생존 경로와 경쟁 경로와의 미터릭의 차이 값, 즉 신뢰도를 저장하는데, 이 신뢰도가 연판정 출력값이 된다.
넷째, 트렐리스의 시점 0에서 k-1번째 시점까지 경로에 저장된 신뢰도 값과 현재 경쟁 경로의 신뢰도 값을 비교하여 다음과 같은 규칙에 의하여 신뢰도 값을 갱신한다. 여기서, k시점에서 트렐리스의 상태 m으로 들어오는 생존 경로와 경쟁 경로와의 미터릭 차이값이
Figure 112004000572811-pat00004
이라고 하고, 생존 경로에서 계산된 정보 비트를
Figure 112004000572811-pat00029
라고 하고, 경쟁 경로에서 계산된 정보 비트를
Figure 112004000572811-pat00030
라고 하면,
if
Figure 111999010265644-pat00005
then
Figure 111999010265644-pat00006
if
Figure 112004000572811-pat00031
then
Figure 112004000572811-pat00007
다섯째, 최종 마지막 복호어로 선택된 경로에 대한 연판정 출력은 이 신뢰도에 polarity를 첨가한 값이 된다.
상기한 SOVA에 복잡도 감소기법을 적용하는데 그 원리는 다음과 같다.
트렐리스의 각 레벨에서는 항상 여러 개의 경로가 존재하는데, 한 레벨에서의 경로의 수는 일반적으로 그 부호의 오류정정능력이 클수록 많아지게 된다. 또한, 경로의 수가 많아지면 각 레벨에서 경로 미터릭 값의 확률 분포가 가우시안에 가까워지게 된다. 도 3은 여러 가지 경우에서의 경로 미터릭의 개수 분포를 나타내는 그래프인데, 경로 미터릭의 확률 분포가 거의 가우시안을 따르게 됨을 알 수 있다.
따라서, 복호 단계에서 총 S개의 경로 중 A개의 경로만을 항상 유지하려고 한다면 경로 미터릭의 확률 분포가 가우시안 분포를 따른다는 것을 알기 때문에 경로 미터릭의 평균과 분산값을 알면 A개 경로들의 최대 미터릭 값을 알 수 있다. 즉, 이 A개의 경로들의 미터릭은 기준 경로 미터릭(reference pathmeric)(Pmr)보다는 크며, Pmr은 다음 [수학식 1]에 의하여 구할 수 있다.
Figure 112004000572811-pat00032
여기서, A는 각 레벨에서 유지하고자 하는 경로의 수, Si는 i번째 레벨에서의 총 경로의 수,
Figure 112004000572811-pat00033
는 i번째 레벨에서의 경로 미터릭의 평균,
Figure 112004000572811-pat00034
은 i번째 레벨에서의 경로 미터릭의 표준 편차값이다. 따라서, 복호기는 가장 우수한 A개의 경로를 선정하기 위하여 단지 기준 경로 미터릭 값(Pmri) 만을 계산하여 경로 미터릭 값이 이보다 큰 경로들을 제거한다. 실제 시스템에 있어서는 위의 적분값을 테이블화하여 간단히 구현할 수 있다.
부호화율이 1/2이고 구속장이 7인 길쌈부호를 예로 들어 상기에서 언급한 복잡도 감소기법을 설명하기로 한다. 이 부호화 방식의 경우에 각 레벨에서 총 경로의 수는 64이다. 예를들어 이 64개의 경로들 중 12개의 경로만을 항상 유지하려고 한다고 하자. 초기 상태에서 경로의 수는 2개, 4개, 8개로 점점 증가하여 16개가 되면 원하는 경로의 수 12보다 커지게 된다. 이때 A/Si는 0.75가 되며, 총 16 경로에 대한
Figure 112004000572811-pat00035
Figure 112004000572811-pat00036
을 이용하여 위의 [수학식 1]로부터 Pmri을 구한다.
구해진 Pmri을 이용하여, Pmri보다 큰 경로 미터릭을 가진 경로들은 제외시킨다. 그러면 그 다음 레벨에서는 16개의 경로에서 두 배 증가한 32경로가 아니라 12경로에서 2배가 증가한 24경로가 존재하게 되고, 여기서 다시 같은 방법을 이용하면 경로의 수를 줄일 수 있게 된다.
도 4는 경로 미터릭 통계치를 이용한 복잡도 감소 알고리즘을 도시한 흐름도이다. 각 레벨에서 경로 수의 확장이 끝나면 총 확장된 경로 수와 이들 경로의 평균과 표준 편차값을 구한다. 그 다음 이 값들을 이용하여 기준 경로 미터릭 값을 구하고 기준 경로 미터릭 값보다 큰 경로 미터릭을 가진 경로들을 제외시킨다.
그러나, 상기의 방식을 SOVA에 적용할 경우 원래 SOVA에서 신뢰도 값을 계산하는 방식으로는 신뢰도 값을 계산할 수 없는 상황이 발생할 수 있다. 즉, 상기의 복잡도 감소 방식을 사용하게 되면 임의의 시점에서 항상 총 경로의 수보다 적은 경로가 존재하며, 임의의 노드에서 단 한 개의 경로만이 유입되어 경로 미터릭의 비교없이 생존 경로가 저절로 결정되는 경우가 발생하게 되는 것이다.
여기서 SOVA를 적용할 때의 문제가 발생한다. 즉, SOVA에서 연판정 출력 정보를 생산하는 기본 원리는 임의의 노드에서 생존 경로와 경쟁 경로와의 차이 값을 연판정 출력으로 정의하는데 경쟁 경로가 존재하지 않게 되면 연판정 출력값을 정의하는데 어려움이 있게 되는 것이다. 이러한 과정을 간단한 BCH 부호에 대한 비터비 복호 과정을 이용하여 살펴보도록 하자.
우선, BCH 부호와 같은 블록부호는 부호화 과정 자체를 유한 임펄스(Finite Impulse Response;FIR) 필터링과정으로 모델링하면 트렐리스를 쉽게 구성할 수 있다. 도 5는 (7,4) BCH 부호에 대한 부호화 과정을 유한 임펄스 필터링과정으로 모델링한 예시도이며, 도 6은 도 5에 도시된 (7,4) BCH 부호에 대한 트렐리스도이다. 도 7은 (7,4) BCH 부호에 대하여 SOVA를 적용한 예시도이다.
여기서, 3 비트로 양자화된 연판정 정보를 이용하여 복호를 수행한다고 가정하자. 그림에서 si는 트렐리스의 각 상태를 나타내며, pmi는 i번째 상태로 들어오는 경로의 미터릭 값을 나타낸다. 트렐리스의 x축은 시간의 진행을 나타내는데 시점 4에서부터 각 노드에 여러 개의 경로가 동시에 유입된다.
도 7의 (c)에 도시된 바와 같이 각 노드에 두 개의 경로가 동시에 유입되면 경로 미터릭 값이 적은 경로가 생존 경로가 되며, 이 생존 경로의 미터릭 값을 저장한다. Ri는 i번째 상태로 들어오는 경로의 그 시점에서의 신뢰도(즉, 연판정 출력)를 나타내는데, 그 값은 도 7의 (c)에 나타나 있는 바와 같이 한 노드로 유입되는 두 경로의 미터릭의 차이값이 된다.
여기에, 전체 경로 중 일부의 경로만을 선택하여 유지하는 복잡도 감소기법을 적용해보자. (7,4) BCH부호에 대한 트렐리스에는 총 8개의 경로가 존재하게 되는데 예를 들어 이중 6개의 경로만을 선택하여 유지하는 복잡도 감소기법을 적용한다고 가정해 보자. 도 8에는 도 7과 동일한 경우에서 복잡도 감소기법을 적용하여 전체 경로 중 가장 우수한 6개의 경로만을 선택하여 유지하는 경우를 보여준다.
도 8의 (a)에 나타난 바와 같이 시점 3에서부터는 전체 경로의 수가 유지하고자 하는 경로의 수 6보다 크므로 경로 미터릭 값이 큰 경로 두 개를 제거한다. 여기서는 상태 2로 들어오는 경로와 상태 6으로 들어오는 두 경로를 제거하였다고 가정한다. 따라서 도 8의 (b)에는 시점 3에서 총 6개의 경로만이 존재한다.
복호를 진행하여 시점 4에 이르면 시점 3에서의 6개 경로로부터 다시 경로를 확장하게 되는데, 시점 3에서 확장하지 않은 두 경로로 인하여 도 8의 (c)에 나타난 바와 같이 시점 4에서는 두 개의 경로가 동시에 유입되지 않고 한 개의 경로만이 유입되는 노드가 발생한다. 이러한 경우에는 일반적인 SOVA에서와는 달리 경쟁 경로가 존재하지 않기 때문에 신뢰도 값을 정의할 수가 없다. 이러한 노드를 신뢰 도 정의 불가능 노드라고 하자.
상기의 문제점을 해결하기 위하여 본 발명에서는 다음과 같은 방식을 사용하여 신뢰도를 정의한다. 신뢰도 정의 불가능 노드로 유입될 예정인 경로의 미터릭 값이 적어도 복잡도 감소 기법에서 경로를 제거하기 위하여 사용되는 기준 경로 미터릭(pmr) 보다는 클 것이라는 것을 이용하는데, 신뢰도 값을 유입 경로 미터릭과 기준 경로 미터릭의 차이값으로 정의한다.
즉, 도 8의 예에서 이러한 방식으로 신뢰도 정의 불가능 노드에 대한 신뢰도를 정의하면 다음과 같다. 시점 4에서 8개의 경로 중 6개만을 선택하기 위해서는 기준 경로 미터릭, pmr=13이 될 것이다. 따라서, 신뢰도 정의 불가능 노드 네 개에 대한 신뢰도 값을 복잡도 감소기법을 적용하지 않았을 때의 신뢰도 값과 비교해보면 [표 1]과 같다.
신뢰도값 상태수 복잡도 감소기법 적용 R* R
1 13-8 = 5 10
3 13-10 = 3 10
5 13-7 = 6 10
7 13-11 = 2 10
상기에 설명된 복잡도 감소기법을 적용한 SOVA를 이용하여 블록 부호에 대한 반복 복호를 수행하기 위하여 본 발명에서는 도 9에 나타나 있는 것과 같은 구조를 사용한다. 도 10은 도 9의 동등 모델도이다. 도 11은 본 발명의 한 실시예에 따른 복잡도가 감소된 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법을 도시한 흐름도이다.
상기한 도면에서 사용되는 변수들을 정의하면 다음과 같다.
L(u) : systematic 심볼에 대한 채널에서의 신뢰도 정보
L(y) : 패리티 심볼에 대한 채널에서의 신뢰도 정보
Le(uR) : 열 부호에 대한 외부 신뢰도 정보
L(uC) : 행 부호에 대한 비터비 복호의 연판정 출력값
Le(uC) : 행 부호에 대한 외부 신뢰도 정보
L(uR) : 열부호에 대한 비터비 복호의 연판정 출력값
도 11을 참조하면, 행 부호에 대한 복호기에 L(u), L(yR) 및 Le(uR)을 입력하여 연판정 출력 비터비 복호를 수행한다. 초기의 Le(uR) 값은 모두 0으로 정해져 있다(S11). 이때 L(u), L(yR) 및 Le(uR)값을 이용한 도 12의 SOVA를 적용함에 있어서 원하는 경로의 수보다 전체 경로의 수가 적을 경우에는 다음과 같은 복잡도 감소기법을 적용한다.
즉, 각 시점에서 경로 미터릭의 평균과 분산값을 구하여 [수학식 1]에 따라 기준 경로 미터릭을 구한다. 기준 경로 미터릭을 기점으로 경로를 제거한다. 신뢰도 정의 불가능 노드가 존재하면 이에 해당하는 신뢰도를 생존 경로의 미터릭과 기준 경로 미터릭 값으로 정의하고, 이전 시점에서의 신뢰도를 갱신한다(도 12).
다음, 행 부호에 대한 복호의 결과로 연판정 출력 L(uR)'을 얻는다.
다음, L(uR)'의 절대값에 대한 평균(
Figure 112004000572811-pat00009
)과 분산(
Figure 112004000572811-pat00037
)을 구하여 (
Figure 112004000572811-pat00010
)을 각 연판정 출력에 곱하여 줌으로써 연판정 출력을 정규화시킨다(S12).
다음, 행 부호에 대한 연판정 출력(L(uR)')을 이용하여 열 부호에 대한 외부 신뢰도 정보를 아래의 [수학식 2]로부터 구한다(S13).
Figure 111999010265644-pat00011
다음, 열 부호에 대하여 다시 L(u), L(yC) 및 Le(uC)을 입력하여(S14) 연판정 출력 비터비 복호를 수행한다(도 12). 이때, 원하는 경로의 수보다 전체 경로의 수가 적을 경우에는 복잡도 감소 SOVA를 적용한다.
다음, 열 부호에 대한 복호의 결과로 연판정 출력(L(uC)')을 얻는다.
다음, L(uC)의 절대값에 대한 평균(
Figure 112004000572811-pat00012
)과 분산(
Figure 112004000572811-pat00038
)을 구하여 (
Figure 112004000572811-pat00013
)을 각 연판정 출력에 곱하여 줌으로써 연판정 출력을 정규화시킨다(S15).
다음, 열 부호에 대한 연판정 출력 L(uC)'을 이용하여 행 부호에 대한 외부 신뢰도 정보를 [수학식 2]로부터 구한다(S16).
다음, 위의 과정을 반복 수행한다.
도 12는 복잡도 감소 연판정 출력 비터비 알고리즘을 도시한 흐름도이다. 먼저, 모든 시점 i에서 존재하는 모든 경로에 대하여 외부 정보를 활용하여 경로 확장을 하고, 신뢰도를 계산한다(S21).
다음, 도 4의 복잡도 감소기법을 수행한다(S22). 즉, 각각의 행(또는 열) 부호의 트렐리스 전체의 현재 시점에서 총 경로수가 유지하고자 하는 최대 경로수보다 큰 경우에 대해 경로 미터릭의 통계치를 구한다. 이때, 현재 레벨에서 확장된 모든 경로수, 경로 미터릭의 평균값 및 표준편차를 구한다. 다음, 경로 미터릭의 통계치를 이용하여 복호기에서 유지하고자 하는 최대 경로수와 복호기에서 유지하고자 하는 최대 경로수에 대한 현재 시점에서 확장된 모든 경로수의 비를 구하고, 기준 경로 미터릭을 구한 후, 기존 경로 미터릭을 기준으로 더 우수한 경로 미터릭을 가진 경로만을 선정하여 저장한다(S23).
다음, 현재 경로의 시점 i에서의 신뢰도가 정의되어 있는 지를 판단한 후(S24), 기준 경로 미터릭을 이용하여 선택된 경로 중 현 시점의 신뢰도를 정의할 수 없는 경로에 대해서는 현 시점의 신뢰도를 기준 경로 미터릭과 현 시점의 경로 미터릭과의 차이값으로 할당한다(S25). 이러한 신뢰도 할당방법으로 신뢰도를 할당한 경우에, 이전 시점의 신뢰도를 현 시점에 할당된 신뢰도와 비교하여 최소값으로 할당한다.
위에서 양호한 실시예에 근거하여 이 발명을 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이다. 이 발명이 속하는 분야의 숙련자에게는 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.
이상과 같이 본 발명에 의하면, 블록 부호에 대한 반복 복호방식 중 트렐리스 방식인 연판정 출력 비터비 복호방식을 사용함으로써 연판정 출력 반복 복호를 쉽게 구현할 수 있을 뿐만 아니라, 경로 미터릭의 통계치를 이용하여 경로의 수를 감소시킴으로서 복호기의 복잡도를 감소시킬 수 있다. 따라서, 성능은 우수하지만 복잡도가 너무 커서 구현이 불가능하였던 블록 부호에 대한 트렐리스 복호기를 손쉽게 구현할 수 있기 때문에 부호화 이득을 크게 증대시킬 수 있는 효과가 있다.

Claims (9)

  1. 블록부호에 대하여 복잡도가 감소된 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법에 있어서,
    송신단으로부터 반복 복호 기법을 적용하기 위한 블록 부호 프레임이 수신되면, 수신단의 복호기는 상기 블록 부호 프레임에 대하여 행별로 연판정 출력 비터비 알고리즘을 적용하여 행 부호를 복호하여 행 부호에 대한 연판정 출력값을 얻는 행부호연판정단계와;
    상기 행 부호에 대한 연판정 출력값을 추가하여 열별로 연판정 출력 비터비 알고리즘을 적용하여 열 부호를 복호하여 열 부호에 대한 연판정 출력값을 얻는 열부호연판정단계와;
    상기 열 부호에 대한 연판정 출력값을 추가하여 상기 행부호연판정단계부터 반복 수행하는 반복단계를 포함한 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
  2. 제 1 항에 있어서, 상기 행부호연판정단계와 열부호연판정단계에서,
    상기 블록 부호 프레임의 전체 경로의 수가 상기 복호기에서 유지하고자 하는 경로의 수보다 크면 복잡도 감소 연판정 출력 비터비 알고리즘을 적용하는 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
  3. 제 2 항에 있어서, 상기 복잡도 감소 연판정 출력 비터비 알고리즘은,
    각각의 행(열) 부호의 트렐리스 전체의 현재 시점에서 전체 경로의 수가 상기 복호기에서 유지하고자 하는 경로의 수보다 큰 경우에 대해, 경로 미터릭의 통계치를 구하는 경로미터릭통계치계산단계와;
    상기 경로 미터릭의 통계치를 이용하여 상기 복호기에서 유지하고자 하는 최대 경로수와, 상기 복호기에서 유지하고자 하는 최대 경로수에 대한 현재 시점에서 확장된 모든 경로수의 비를 구하고 기준 경로 미터릭을 구하는 기준경로미터릭계산단계와;
    상기 기준 경로 미터릭을 기준으로 하여 상대적으로 우수한 경로 미터릭을 가진 경로만을 선정하는 우수경로선정단계와;
    상기 기준 경로 미터릭을 이용하여 선택된 경로 중 현 시점의 신뢰도를 정의할 수 없는 경로에 대해서는 현 시점의 신뢰도를 기준 경로 미터릭과 현 시점의 경로 미터릭과의 차이값을 현 시점의 신뢰도값으로 할당하는 신뢰도값할당단계와;
    상기 신뢰도가 할당된 경로에 대하여 이전 시점의 신뢰도를 현 시점에 할당된 신뢰도와 비교하여 최소값으로 할당하는 최소값할당단계를 포함하여 이루어진 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
  4. 제 3 항에 있어서, 상기 기준경로미터릭계산단계는,
    상기 경로 미터릭의 통계치를 아래의 수식에 적용하여 기준 경로 미터릭을 구하는 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
    [수식]
    Figure 112004000572811-pat00039
    여기서, A는 각 레벨에서 유지하고자 하는 경로의 수, Si는 i번째 레벨에서의 총 경로의 수,
    Figure 112004000572811-pat00040
    는 i번째 레벨에서의 경로 미터릭의 평균,
    Figure 112004000572811-pat00041
    은 i번째 레벨에서의 경로 미터릭의 표준 편차값, Pmri는 i번째 레벨에서의 기준 경로 미터릭이다.
  5. 제 3 항에 있어서, 상기 미터릭은 유클리디언 미터릭이고,
    상기 우수경로선정단계는 기준 경로 유클리디언 미터릭보다 적은 유클리디언 미터릭을 가진 경로를 선정하는 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
  6. 제 1 항에 있어서, 상기 열부호연판정단계와 반복단계에서 행(열) 부호에 대한 연판정 출력값을 추가하는 단계는,
    상기 연판정 출력값의 절대값에 대한 평균과 분산을 구하여 정규화상수를 구하고 상기 연판정 출력값을 정규화하는 연판정출력값정규화단계와,
    상기 정규화된 행(열) 부호의 연판정 출력값을 이용하여 열(또는 행) 부호의 외부 입력정보를 구하는 외부입력정보계산단계, 및
    상기 행(열) 부호의 외부 입력정보와 원래 채널에서 수신된 정보를 이용하여 복호를 반복하는 복호단계를 포함하여 이루어진 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
  7. 제 6 항에 있어서, 상기 연판정출력값정규화단계의 정규화 상수는,
    상기 연판정 정보의 절대값에 대한 평균과 분산을 이용하여 아래의 수식에 의해 구해지는 것을 특징으로 하는 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법.
    [수식]
    Figure 112004000572811-pat00015
    여기서,
    Figure 112004000572811-pat00016
    는 연판정 출력의 절대값의 평균,
    Figure 112004000572811-pat00042
    는 출력된 연판정 출력의 절대값의 분산, C는 정규화 상수이다.
  8. 삭제
  9. 삭제
KR1019990035893A 1999-08-27 1999-08-27 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법 KR100627714B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990035893A KR100627714B1 (ko) 1999-08-27 1999-08-27 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990035893A KR100627714B1 (ko) 1999-08-27 1999-08-27 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법

Publications (2)

Publication Number Publication Date
KR20010019469A KR20010019469A (ko) 2001-03-15
KR100627714B1 true KR100627714B1 (ko) 2006-09-27

Family

ID=19608956

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990035893A KR100627714B1 (ko) 1999-08-27 1999-08-27 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법

Country Status (1)

Country Link
KR (1) KR100627714B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3730885B2 (ja) * 2001-07-06 2006-01-05 株式会社日立製作所 誤り訂正ターボ符号の復号器
KR100449578B1 (ko) * 2001-09-14 2004-09-21 한국전자통신연구원 3차원 이상의 블럭터보 부호에 대한 반복 복호 방법
KR100456474B1 (ko) * 2001-12-08 2004-11-09 한국전자통신연구원 블록터보 부호의 반복 복호 방법 및 블록터보 부호의 반복복호 프로그램을 저장한 기록매체

Also Published As

Publication number Publication date
KR20010019469A (ko) 2001-03-15

Similar Documents

Publication Publication Date Title
US5537444A (en) Extended list output and soft symbol output viterbi algorithms
US6597743B1 (en) Reduced search symbol estimation algorithm
JP4701343B2 (ja) トレリスに基づく受信器
US5721746A (en) Optimal soft-output decoder for tail-biting trellis codes
US6891484B2 (en) Method of decoding a variable-length codeword sequence
US8122327B2 (en) Symbol-level soft output viterbi algorithm (SOVA) and a simplification on SOVA
JP3279579B2 (ja) 畳込み符号化データの幅優先復号におけるメトリック移動
JPH07221655A (ja) 通信システムおよび情報処理方法
US5930298A (en) Viterbi decoder for decoding depunctured code
US6222889B1 (en) Trellis decoder with soft decision outputs
KR100456474B1 (ko) 블록터보 부호의 반복 복호 방법 및 블록터보 부호의 반복복호 프로그램을 저장한 기록매체
PL185386B1 (pl) Sposób oraz urządzenie do dekodowania sygnałów dacyjnych z zastosowaniem okna decyzyjnego o stałej długości
KR100627714B1 (ko) 연판정 출력 비터비 알고리즘을 이용한 반복 복호방법
US7500173B2 (en) Method of decoding a data word
US7975212B2 (en) Sequential decoding method and apparatus thereof
JP3497399B2 (ja) ビタビ復号器
US7031406B1 (en) Information processing using a soft output Viterbi algorithm
US5751734A (en) Decoding method and apparatus using trace deletion for Viterbi algorithm
KR100490815B1 (ko) 비터비 복호기
US20030192002A1 (en) Error correcting decoder
US7143334B2 (en) Method for decoding data sequence encoded with aid of binary convolution code
EP1456958B1 (en) Method and arrangement for enhancing search through trellis
CN113872609B (zh) 一种部分循环冗余校验辅助的自适应置信传播译码方法
KR100681122B1 (ko) 디지털 통신시스템의 비터비 디코딩 장치에서의 최적의디스카딩 임계치의 결정 방법
Handlery et al. Distance Approach to Window Decoding

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
LAPS Lapse due to unpaid annual fee