KR20070058430A - 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치 - Google Patents

블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20070058430A
KR20070058430A KR1020077000620A KR20077000620A KR20070058430A KR 20070058430 A KR20070058430 A KR 20070058430A KR 1020077000620 A KR1020077000620 A KR 1020077000620A KR 20077000620 A KR20077000620 A KR 20077000620A KR 20070058430 A KR20070058430 A KR 20070058430A
Authority
KR
South Korea
Prior art keywords
value
analog
analog weight
word
bit
Prior art date
Application number
KR1020077000620A
Other languages
English (en)
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 썽트르 나시오날 드 라 르쉐이쉬 씨엉띠피끄(씨.엔.에르.에스.) 에따블리스망 쀠블릭
Publication of KR20070058430A publication Critical patent/KR20070058430A/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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • H03M13/2909Product codes
    • 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/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • 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
    • 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/3784Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 for soft-output decoding of block codes
    • 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/45Soft decoding, i.e. using symbol reliability information
    • 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/45Soft decoding, i.e. using symbol reliability information
    • H03M13/451Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD]
    • H03M13/453Soft decoding, i.e. using symbol reliability information using a set of candidate code words, e.g. ordered statistics decoding [OSD] wherein the candidate code words are obtained by an algebraic decoder, e.g. Chase decoding

Landscapes

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

Abstract

본 발명은 블록 부호를 부호화하기 위한 방법 및 장치에 관한 것이다. 본 발명의 방법은, 각각의 수신된 워드(R)는 SISO 터보 디코딩되며, 재귀반복 알고리즘을 이용하여 복호된 테스트 워드를 생성하는 단계(A)와; 복호된 테스트 워드의 아날로그 가중치를 계산하는 단계(B)를 포함하는데, 이 가중치는 복호된 테스트 워드의 ±1 내에 매핑된 각각의 비트의 값에 대한 곱의 절반 합(half-sum) 및 상기 비트의 로그 우도인 단계(B)와; 랭크 j의 비트가 제1 값인, 복호된 테스트 워드의 아날로그 가중치 성분을 구비하는 제1 아날로그 가중치 벡터(V1)와, 랭크 j의 비트가 제2 값인 복호된 테스트 워드의 아날로그 가중치 성분을 구비하는 제2 아날로그 가중치 벡터(V2)에 따라 공존의 워드의 아날로그 가중치를 분류하는 단계(C)와; SISO 복호 소프트 판정 출력 값이 제1 및 제2 벡터(V1, V2)의 가중치 성분들 사이의 차가 되도록 계산하는 단계(D)를 포함한다. 본 발명의 방법은 전송 또는 저장된 블록 부호를 복호화하는데 이용하는 장점을 가진다.

Description

블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치{METHOD FOR ITERATIVELY DECODING BLOCK CODES AND DECODING DEVICE THEREFOR}
본 발명은 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 블록 부호를 재귀반복적으로 복호하기 위한 장치에 관한 것이다.
디지털 신호에 의해 운반되는 디지털 데이터를 효과적으로 전송하기 위해, 디지털 신호를 부호화/복호화하기 위한 방법이 도입되었다.
원칙적으로, 이러한 방법은, 전송과 전송 처리에 고유한 오류의 도입 이후, 중요 비트를 양호한 우도 확률(likelihood probability)로 복호 및 재구성하기 위하여, 주지된 비트의 용장도(redundancy)를, 디지털 신호에 의해 운반되는 데이터용의 매체에 해당하는 중요 비트(significant bits)에 추가하는 과정을 포함한다.
곱 부호(product codes)를 포함하는 블록 부호의 보다 구체적인 경우로서, 도 1a를 참조하면, 2개의 블록 부호 C1(n1, k1, d1) 및 C2(n2, k2, d2)가 있으며, 이들의 n개의 비트(즉, n= n1×n2 )가, k1 행 및 k2 열로 이루어지는 매트릭스 내에 배치되고, k1×k2는 k1 행 및 k2 열로 이루어지는 매트릭스 내에 배치된 중요 비트를 나타내고 있으며, n1 행은 부호 C2에 의해 부호화되고, n2 열은 C1에 의해 부호화된다.
곱 부호 P(n, k, d)의 파라미터는 n=n1×n2, k=k1×k2, d=d1×d2 이며, 곱 부호의 레이트는 r=r1×r2 이고, 이 값은 부호 C1 및 C2 의 레이트의 곱에 해당한다.
부호 C1 또는 C2에 의해 부호화된 단일 행 또는 단일 열 E={e1, ..., en}의 수신된 곱 부호 워드 R={r1, ..., rn}을 수신한 후의 복호화는 R=E+G의 형태로 표현되며, G={g1, ..., gn}는 전송 채널을 통해 도입되는 추가의 백색 가우스 잡음(white Gaussian noise)을 나타낸다.
곱 부호 워드에 대한 수신된 부호 워드 R의 최대 우도(maximum likelihood)는, 다음의 등식을 증명하는 최적 결정 D={d1, ..., dn}에 의해 얻어진다.
이 등식에서, Ci={c1, ..., cn}은 부호 워드를 나타내며,
는 수신된 부호 워드 R로부터 고려된 워드 Ci의 유클리디언 거리(Euclidian distance)를 나타낸다.
모든 부호 워드의 철저한 조사는 실질적으로 불가능하기 때문에, 최적 결정을 발견하기 위해서는, 파인디어(R. Pyndiah)에 의해 제안된 복호화 처리는 체이스 알고리즘(Chase algorithm)을 이용하는 과정을 포함한다.
임의의 어려운 결정의 경우, Y={y1, ..., yn}는 수신된 워드 R에 관련되며, 상기 언급한 알고리즘은 이하의 동작을 수행하는 과정을 포함한다.
- p=d/2의 선택, d는 행 또는 열의 낮은 절대값의 로그 우도(log-likelihoods) rj로부터 최악 신뢰도 비트(least reliable bits)의 번호를 나타낸다.
- Tq 테스트 벡터의 구성, Tq는 p개의 최악 신뢰도 위치에서의 이진 값과 다른 위치에 대한 제로 값의 모든 조합을 나타낸다.
- 테스트 워드 Zq=YTq의 구성, 기호 는 벡터의 성분에 대한 배타적 논리합(OR) 연산을 나타낸다.
- 상기 부호에 관련된 워드 Cq를 얻기 위한, 테스트 워드 Zq의 하드 디코딩(hard decoding).
- 수신된 워드로부터 최소 유클리디안 거리의 부호와 관련되며, 최적 결정 D의 취득을 위한, 부호 워드 Cd의 선택.
다음으로, 최적 결정의 신뢰도가 산출되어야 한다.
로그 우도(LLR)와 관련하여 상기 언급한 신뢰도는, 다음의 등식에 의해, 최적 결정 D의 각각의 비트 dj에 대해 주어진다.
여기서, 는, 수신된 코드 워드 R이 주어진 경우, 비트 ej가 매핑 값에 대응하는 조건 확률을 나타낸다.
ln은 나퍼리안 로가리즘(Naperian logarithm)을 나타낸다.
정확한 LLR 계산은, 최적 결정 D가 부호 C의 2k(k1=k2인 경우) 워드 중에서의 하나의 워드인 사실이 허용되어야 한다.
파인디어(R. Pyndiah)에 의해 제안된 해결책에 있어서, 높은 신호대 잡음비(SNR)를 갖는 신호에 대한 LLR 근사값은 다음의 등식에 의해 주어진다.
을 가진
여기서,
는 R로부터의 최소 거리에서 부호의 공존하는 워드로서, 이들 워드의 랭크 j의 비트가 값 +1 또는 -1에 각각 매핑하는 경우에 해당한다. 체이스 알고리즘에 의하면, 상기 언급한 공존의 워드가 발견될 수 있다. 하나의 워드라도 존재하지 않는다면, 신뢰도는 미리 정해진 상수 값 β로 고정되며, 이 값의 부호(sign)는 체이스 판정(Chase decision)에 의해 주어진다. p를 증가시키면, 랭크 j의 비트에 대해, D와 공존하는 워드를 발견할 확률도 증가한다.
도 1b에 있어서, SISO 부호화기로부터 터보 디코딩(turbo decoding)을 실행시키기 위하여, 데이터가 다음과 같이 처리된다. 수신된 곱 부호 워드 [R]에 대하여, 이전의 재귀반복에 의해 생성되는 복호화된 곱 부호 워드 [R(m)]와 현재의 재귀반복에 의해 생성되는 복호화된 곱 부호 워드 [R(m)]은 SISO 부호화기에 의해 제공되며, 다음의 재귀반복에 대해 터보 디코딩 T의 입력 워드 [W(m+1)]는 다음 등식을 증명한다.
[R(m+1)]=[R]+α(m+1)[W(m+1)]인 경우, [W(m+1)]=[R'm)-R(m)]
제1 재귀반복에 대해서, [R(1)]=[R]
상기 등식에서, W(m)는 각각의 재귀반복에서 1로 정규화되는 부가 데이터(extrinsic data)를 나타내며, α(m)은 현재의 재귀반복에 의존하는 랭크 m의 계수를 나타낸다.
이것이, 하나의 부호화 재귀반복으로부터 다음의 부호화 재귀반복까지 순환하는 데이터가 이러한 재귀반복에 의해서 제공되는 데이터만을 포함하는 경우에 한해서는 가장 최적의 부호화 처리 과정이다. 이 경우, 부가 데이터만이 전송된다.
터보 부호화 처리 과정의 더 구체적인 설명에 대해서는, 1998년 3월 4일 공개된 유럽 특허출원 EP 0 827 284를 참조하라.
행 또는 열에 대해, 상기 언급한 부호화 처리 과정이 수행되는 방식은 다음과 같은 단계를 포함하는 것으로 요약할 수 있다.
a) 벌레캄프-메세이(berlekamp-massey) 또는 PGZ형 알고리즘을 이용하는 부호화가 포함된 체이스 알고리즘에 따른 재귀반복적 처리, 획득된 워드의 저장 및 그 가중 처리;
b) 최소 유클리디안 거리에서의 최적 결정에 해당하는 하드 판정(hard decision) Cd=d를 이들 워드 중에서 검색;
c) 랭크 j의 각각의 비트에 대해, 로그 우도에 의하여, 근사치 로부터, cj d cjc와 신뢰도의 산출을 위해, R로부터 최소 거리에서 공존의 워드 Cc를 검색;
d) 다음의 등식에 의해, 단계 c)에 포함된 랭크 j의 공존의 워드에 대해 부가 데이터의 계산.
상기 등식에서, cj d는 Cd=D의 랭크 j의 비트를 나타내며, r'j는 SISO 부호화기에 의해 전달된 소프트 판정(soft decision) R'의 로그 우도를 나타낸다.
본 방법에 따른 실시예는 R로 기술한다. 파인디어(R. Pyndiah)에 의해 제안된 방법은 각각 복호화된 행 또는 열에 대해 단계 a에서 n비트의 2p 워드의 실제 저장을 필요로 한다.
또한, 상기 언급한 단계가 실행되었으면, 단계 c) 및 d)의 구현은, 각 단계에 대해, 수신된 곱 부호 워드 R로부터 최소 거리에서, 하드 판정(hard decision) 부호 워드 또는 공존의 워드를 각각 구분하기 위하여, 루프 연산이 수행되어야 한다.
이러한 유형의 연산은, 자원과 연산 시간의 관점에서 비용이 많이 들며, 성능이 높은 계산 수단을 이용해서만 용이하게 수행될 수 있다.
본 방법과 장치는, 종래 기술과 관련된 도 1a 및 1b에 추가하여, 이하의 도면을 참조하고 이하의 상세한 설명에 의해 더 잘 이해될 수 있을 것이다.
도 1a 및 도 1b는 종래 기술을 나타내는 도면.
도 2는 본 발명에 따른 재귀반복 복호화 방법을 수행하기 위한 필수 단계를 예로서 나타내는 흐름도.
도 3a는 도 2에 나타낸 복호화된 테스트 워드의 아날로그 가중치를 분류하는 단계의 상세한 흐름도를 예로서 나타낸 도면.
도 3b는 도 2에 도시된 소프트 판정 값을 산출하는 단계의 상세한 흐름도를 예로서 나타낸 도면.
도 4는 본 발명의 블록 부호를 재귀반복적 복호하기 위한 장치를 나타내는 도면.
본 발명은 상기 설명한 종래 기술의 방법에 관한 문제점을 극복하는 것을 목적으로 한다.
특히, 본 발명은, 휴대형 컴퓨터, 이동 전화 단말 또는 개인휴대 정보 단말기(PDA) 또는 디지털 데이터 저장 시스템의 용량을 초과하지 않으면서, 훨씬 낮은 계산 용량을 갖는 장비에 복호용 장치를 탑재하도록 하기 위하여, 예컨대, 체이스 패스트 알고리즘에 따라, 재귀반복 처리를 구현함으로써, 곱 부호 워드를 저장하는 연산을 실질적으로 제거하기 위한 것이다.
결국, 본 발명은, 블록 부호를 재귀반복적으로 복호하는 방법 및 장치의 이용을 위해 단순화를 도입하고자 한 것으로서, 재귀반복 처리는 단일 루프로 감소시킬 수 있으며, 종래 기술의 방법의 단계 c) 및 d)를 처리하는 루프가 실질적으로 제거되기 때문에, 복호화를 위해 이용되는 테스트 부호 워드의 수를 증가시키거나 처리되는 부호의 길이를 증가시키게 되는 복호화를 수행하기 위한 계산 시간을 크게 감소시키게 된다.
본 발명의 방법은, 본 발명에 따라 복호된 테스트 워드로부터 수신된 곱 부호 워드의 SISO 복호에 의해 블록 부호를 재귀반복적으로 부호화하기 위한 것으로서, 재귀반복 처리를 이용하여 복수 개의 복호된 테스트 워드를 생성하는 단계와, 각각의 복호된 테스트 워드에 대하여, 이 복호된 테스트 워드의 +1 또는 -1 내에 매핑된 각 비트의 값의 곱의 절반 합으로 표현되는 아날로그 가중치를, 로그 우도에 의하여 계산하는 단계와, 랭크 j의 비트가 제1 값인, 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제1 아날로그 가중치 벡터와, 랭크 j의 비트가 제2 값인, 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제2 아날로그 가중치 벡터를 산출하기 위하여, 아날로그 가중치를 분류 및 저장하는 단계와, 제1 및 제2 아날로그 가중치 벡터의 아날로그 가중치 성분들 사이의 차로서 표현되는 SISO 복호 소프트 판정 출력 값을 계산하는 단계를 포함한다.
본 발명의 장치는, 복호된 테스트 워드로부터, 수신된 곱 부호 워드의 SISO 복호에 의해 블록 부호를 재귀반복적으로 부호화하기 위한 장치로서, 각각의 수신된 곱 부호 워드의 처리를 위하여, 재귀반복 알고리즘으로부터 복수 개의 복호된 테스트 워드를 생성하기 위한 수단; 각각의 복호된 테스트 워드에 대하여, 복호된 테스트 워드의 +1 또는 -1에 매핑된 각각의 비트의 값에 대한 곱의 절반 합(half-sum)으로 표현되는 아날로그 가중치와, 그 값의 확률을, 로그 우도(log-likelihood)에 의하여 계산하기 위한 수단; 랭크 j의 비트가 제1 값을 갖는 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제1 아날로그 가중치 벡터와, 랭크 j의 비트가 제2 값을 갖는 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제2 아날로그 가중치 벡터를 산출하기 위해, 복호된 테스트 워드에 대한 아날로그 가중치를 분류하여 정렬시키기 위한 수단; 분류된 아날로그 가중치를, 제1 아날로그 가중치 벡터 또는 제2 아날로그 가중치 벡터의 각각에 따라 저장되도록 하는 제1 레지스터 및 제2 레지스터; SISO 복호 소프트 판정(soft-decision) 출력 값을 계산하며, 제1 아날로그 가중치 벡터 및 제2 아날로그 가중치 벡터로부터 아날로그 가중치 성분을 감산하기 위한 적어도 하나의 모듈을 구비하는 수단을 포함한다.
본 발명에 따라 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치는, 집적 회로의 형태로, 디지털 신호를 수신하기 위한 임의의 장비에, 특히 전체 사이즈가 작고 제한된 계산 자원을 갖는 경량의 장비에 사용될 수 있다.
본 발명에 따른 블록 부호 재귀반복 복호화 방법을 실제로 설명하기 전에, 체이스 패스트 재귀반복 방법(Chase fast iterative method)의 실시예에 대하여 먼저 언급할 것이다. 체이스 패스트 재귀반복 방법은 본 발명에 따른 방법을 수행하기 위한 복호화된 테스트 워드를 생성하기 위한 재귀반복 알고리즘의 제한 없는 실시예로서 간주된다.
상기 언급한 방법 또는 체이스 패스트 재귀반복 알고리즘은, 명세서에서 앞서 언급했던, 체이스 처리 과정의 동작을, 그레이 타입 카운팅(Gray-type counting)을 이용하는 테스트 벡터(test vextors)를 스캐닝함으로써, 단순화한다. 이러한 동작 방식은, 각 재귀반복에 대해 산출된 신드롬(syndrome)의 표현, 즉 부호화 이후 오류 위치(error location)의 개념에 대응하는 신드롬의 개념을, 선형 블록 부호의 특성의 장점을 취함으로써, 단순화한다. 각 테스트 벡터에 대한 가중치의 계산은, 단일 비트가 변경되어야 하는 경우, 갱신의 단순화에 의해 단순화된다.
체이스 패스트 방법에서 사용되는 변수의 소개
상기 언급한 실시예에서,
● H는 실시예에서 사용된 BCH 1 보정 부호의 제어 매트릭스를 나타낸다. m은 갈로아체(Galois Field)의 위수(order)를 나타내며, H는 m개의 열과 2m-1=n개의 행을 갖는다. 계산된 신드롬은 등식 S=YH에 의해 주어지며, Y는 입력 워드에 대해 하드 디코딩함으로써 얻어진 판정을 나타낸다. Hi는 매트릭스 H의 i번째 행을 나타낸다. 부호는 y0로 표시된 패리티 비트에 의해 확장된 해밍 부호(Hamming code)이다. 패리티 비트는 신드롬의 계산에서는 고려되지 않지만, 나중에 제어된다.
임의 랭크 Y의 단일 비트가 변경되면, 이전의 신드롬에, 랭크 i의 비트에 대응하는 상기 언급한 벡터 Hi의 모듈로-2 부가에 단순히 추가함으로써 새로운 신드롬이 얻어진다는 것에 주의하라. 텍스트 벡터를 구분하기 위해 도입한 그레이 카운팅(Gray counting)에 의해 단일의 비트가 재귀반복마다 변경될 수 있으며, 특별히 중요한 방식으로 신드롬 S의 연산을 단순하게 한다.
● R={r0, ..., rn}은 SISO 복호화로부터 수신된 워드의 소프트 입력을 나타내며, R'={r'0, ..., r'n}은 SISO 복호화의 소프트 출력을 나타낸다.
● Y={y0, ..., yn}는 SISO 복호기로부터 소프트 입력 워드 R의 하드 판정을 나타내며, yi {0, 1}이다. 이러한 조건에서, Ybm={y0 bm, ..., yn bm}은 체이스 패스트 알고리즘의 각각의 재귀반복에서 테스트된 벡터를 나타내며, 이에 의하여, 이전에 도입한 그레이 카운팅에 의해 수신된 워드 주위의 가능한 모든 워드의 스페이스의 스캐닝이 가능하게 되며, Yt={yt o, ..., yt n}은 하드 디코딩에 의해 얻어진 워드를 나타낸다.
Weight bmWeight는 각각 Ybm 및 Yt의 아날로그 가중치를 나타내며, 이 값은 각 재귀반복에서 테스트된 벡터와 하드 디코딩에 의해 얻어진 워드이다.
● Bm={Bm1, ..., Bm2p -1}은 체이스 패스트 알고리즘을 이용할 때 수신된 워드 주의의 스페이스를 스캐닝하기 위하여 수신된 워드로부터 후속하는 테스트 워드의 변경된 비트의 번호의 세트를 나타낸다. 이 연산은 테스트 벡터에서의 그레이 이진 카운팅과 등가이다. p는 체이스 패스트 알고리즘에서 고려되는 최악 신뢰도 위치(least reliable positions)의 번호를 나타낸다. 예를 들어, p=3이면, 최악 신뢰도 위치는 {3, 5, 9}이고, Bm={3, 5, 3, 9, 5, 3}이다.
는 모듈로-2 비트의 가산(배타적 OR)을 나타내며, 이 연산은 비트 단위로 수행된다. 이 체이스 패스트 방법의 전개는 다음의 표에서 나타낸다.
A) 초기화 변수상기 언급한 변수들은 다음과 같이 개시된다Ybm=Y, Weight bm=0 (알고리즘에 의해 테스트되는 제1 워드는 수신된 워드이며, 가중치는 수신된 워드에 대해 제로로 간주된다)Yt=Y, Weight=0 (Yt는 다음 단계에서 복호화되기 전에 테스트되는 제1 워드의 값에서 시작된다) 하드 디코딩(Hard decoding)신드롬의 계산: S=YtH S≠0 이면, 대응표에 의해 에러 e의 위치의 판정, 그리고 yt e 1 →yt e 에 의해 보정 그리고, Weight - (2yt e-1)reWeight 에 의해 가중치의 갱신.
패리티 비트의 보정 b=yt 1 ... yt n의 계산 b≠yt 0 이면, yt 0 1 → yt 0에 의해 보정 그리고, Weight - (2yt 0-1)r0Weight 에 의해 가중치의 갱신. 이때 얻어진 것은, 수신된 워드 Y의 하드 디코딩에 의해 얻어진 워드 Yt와 그 아날로그 가중치가다. 이것은 제1 테스트 워드이고 저장된다. B) 알고리즘의 재귀반복각각의 새로운 재귀반복에서, 변수는 이전의 재귀반복의 끝에서 가졌던 값을 유지하며, t=1 내지 t=2p-1에 대해, 다음의 연산이 수행된다. 후속하는 워드를 얻기 위한 비트의 변경현재의 재귀반복에 대해 테스트될 워드는 벡터 Bm에 의해 결정된 단일 비트의 변경에 의해 이전의 재귀반복의 워드로부터 얻어진다. ybm Bm (t) 1 → ybm Bm (t)테스트된 벡터의 가중치는 갱신된다:Weightbm - (2yt Bm (t) -1)rBm (t)Weight bmYt=Ybm, Weight=Weight bm (Yt는 복호되기 전에 테스트되는 제1 워드의 값에서 시작된다) 하드 디코딩 새로운 신드롬이, 단일의 비트가 변경됨에 따라, 이전의 신드롬으로부터 매우 단순하게 구할 수 있다. S HBm (t) →S S≠0이면, 대응표에 의해 에러 e의 위치의 판정, 그리고 yt e 1 → yt e 에 의해 보정 그리고, Weight - (2yt e-1)reWeight 에 의한 가중치의 갱신. 패리티 비트의 보정 b=yt 1 ... yt n의 계산 b≠yt 0 이면, yt 0 1 → yt 0에 의해 보정 그리고, Weight - (2yt 0-1)r0Weight 에 의해 가중치의 갱신. 테스트된 벡터 Ybm의 하드 디코딩에 의해 산출된 워드 Yt와 그 아날로그 가중치가 얻어진다. 현재의 테스트 워드 Yt와 그 가중치가 저장된다. 인덱스 i는 증가하고, "알고리즘의 재귀반복" 단계로 복귀한다. 후속하는 워드를 얻기 위한 비트의 변경 이전에 기억된 벡터를 이용하여, 이전에 설명한 바와 같은 방법으로 신뢰도가 계산된다. 이 표의 등식에서, 심볼 →는 값을 변수에 할당하는 동작을 나타낸다.
본 발명에 따라 블록 부호를 재귀반복적으로 복호하기 위한 방법에 대하여 도 2를 참조하여 설명한다.
도 2를 참조하면, 본 발명에 따른 복호 방법은, 임의의 수신된 곱 부호 워드 R의 성분 aj가 전송 또는 판독 이후에 검출된 R의 아날로그 값을 나타내는 경우, 이 부호 워드 R이 R={a1, ..., aj, ..., an}을 갖는 경우, 체이스 패스트 알고리즘과 같은 재귀반복 처리 과정에 의해, 단계 A에서 생성하는 단계를 포함한다. 복수 개의 복호된 테스트 워드는 Yt={yt 1, ..., yt j,..., yt n}으로 표시된다.
복호된 테스트 워드 Yt는 수신된 곱 부호 워드 R의 행 또는 열로부터 얻어진다. 이들 연산은 문제의 재귀반복에 따르는 모든 열 또는 모든 행에 순차적으로 적용된다.
첫째, 수신된 곱 부호 워드 R에 대해 하드 판정 Y가 수행되며, Y, 0 또는 1(또는 종래에 따라 -1 또는 +1)의 비트에 대한 값은 복호 없이 소프트 값으로부터 결정된다.
예에 의하면, 수신된 행 또는 열 벡터 VR={-0.1; 0.55; 0.2; -0.6}에 대해, 하드 판정 Y는 선택된 컨벤션에 따라 Y={0; 1; 1; 1} 또는 {-1; +1; +1; -1}이다.
두 번째, 상기 언급된 복호되지 않은 하드 판정 Y에 대해, 가능한 모든 이진 조합에 따라, 테스트 벡터가 최악의 신뢰도인 것으로 선택된 p 비트를 변경함으로써 생성된다. 복호된 테스트 워드 Yt는 상기 언급한 테스트 벡터를 하드 디코딩함으로써 얻어진다.
이들 모든 조합 중에서, p개의 최악 신뢰도 비트가 변경되지 않은 조합이 하드 판정 Y의 직접 복호화에 의해 얻어진 복호된 테스트 워드 Yt에 대응한다.
후속하는 복호된 테스트 워드는 하드 판정 Y로부터 얻어지는데, 여기서 p개의 최악 신뢰도 비트는 하드 디코딩되는 테스트 벡터를 얻기 위하여 변경된다.
본 발명에 따른 방법은, 특히 하드 디코딩으로부터 유도된 수신된 복호 워드 Y의 2p 비트에 대해 2p의 복호된 테스트 워드를 생성하는 단계를 포함한다. 이 값은 최소 신뢰도이다.
특히, 상기 언급한 체이스 패스트 알고리즘을 수행하는 것은 상기 언급한 테스트 워드에 대응하는 상기 설명한 복호된 테스트 워드 Yt를 제공하는 것을 알 수 있다.
단계 A의 다음에 수행되는 단계 B가 도 2에 표시되어 있으며, 단계 B는, 각각의 복호된 테스트 워드 Yt에 대해, 로그 우도에 의하여, 복호된 테스트 워드의 값±1 내에 매핑되는 각 비트의 값의 곱의 절반 합(half-sum)으로서 표현된 아날로그 가중치와 이 값의 확률을 산출하는 단계를 포함한다.
앞서 소개한 표를 참조하여, 복호된 테스트 워드 Yt의 아날로그 가중치가, 상기 표에서 나타낸 바와 같이, 얻어진다는 것에 주의하라.
복호된 테스트 워드에 대한 Weight에 의해 일반적으로 표시된 아날로그 가중치가 등식 15를 증명한다.
[등식 15]
상기 등식에서,
ri는 랭크 i의 대응 비트의 로그 우도 값을 나타내며, i는 값 +1 또는 -1 내에 매핑되는 비트의 인덱스에 대응하는 계산 인덱스이며, ci는 각 복호된 테스트 워드 Yt에 대해 매핑된 값을 나타낸다.
단계 B에서 아날로그 가중치를 계산하는 방식과 본 발명에 따른 재귀반복 복호 방법을 수행하기 위한 상기 가중치의 표현은 정당할 것이다.
공존의 워드 C+1(j) 및 C-1(j), 즉 파인디어(R. Pyndiah)의 종래 기술의 복호 방법에 따른 수신된 곱 부호 워드 R로부터의 최소 거리에서의 공존 워드에 대하여, 아날로그 가중치의 정의는 다음과 같다.
각 공존하는 워드에 대한 로그 우도의 값은 다음 등식에 의해 주어진다.
그러나, 이들 동일한 값들은 다음 등식에 의해 표현된다.
따라서, 로그 우드의 값은 다음의 등식 16의 형태로 표현될 수 있다.
[등식 16]
앞서 설명에서 주어진 등식 15에 의해 각각의 복호된 테스트 워드에 대한 새로운 아날로그 가중치 Weight에 의하면, 종래 기술의 컨벤션 정의가 가졌던 동일한 분류 순서가 유지될 수 있다.
그 결과, 등식 15에서 앞서 언급된 아날로그 가중치의 표현은, 체이스 패스트 알고리즘에 의해 생성된 복호된 테스트 워드를 분류시키는데 이용될 수 있는 장점을 가질 수 있다.
체이스 패스트 처리 과정의 특별한 경우에, 아직 복호되지 않은, 테스트 벡터의 모든 가능한 조합은, 현재의 재귀반복 t+1 등의 후속하는 테스트 벡터를 얻기 위하여, 제1 테스트 벡터로부터, 선택된 위치에 대해 이들 비트의 모든 가능한 조합을 얻기 위하여, 이전의 재귀반복 t의 테스트 벡터의 단일 비트를 변경함으로써 얻어진다.
동일한 벡터로 여러 번 복귀시키지 않도록 또는 벡터를 잊지 않도록, 이전 재귀반복의 테스트 벡터의 비트가, 그레이 카운팅으로부터 특정의 시퀀스에 따라 상기 비트 중 단일 비트에 비례하여 변경됨으로써, 가능한 모든 비트 조합이 검토될 수 있다. 비트가 변경되는 순서는 이러한 카운팅 방식에 부가되는 벡터에 포함된다.
단일의 비트만이 각각의 재귀반복에서 변경된다는 사실에 의해, 현재의 재귀반복 t+1에 대한 새로운 테스트 벡터의 가중치 P'를 다음 등식에 따른 이전의 재귀반복 t로부터 얻을 수 있다.
[등식 17]
P' = P - rkc'k
여기서, P는 이전의 재귀반복의 테스트 벡터의 가중치를 나타내며, rk는 랭크 k의 변경된 비트의, 로그 우도에 의한 신뢰도를 나타내고, c'k는 랭크 k의 변경된 비트의 ±1 내에 매핑되는 새로운 값이다.
현재 재귀반복의 복호된 테스트 워드는 이러한 동일한 재귀반복의 논점에서 테스트 벡터를 하드 디코딩함으로써 얻어진다.
하드 디코딩이, 적절한 경우, 복호된 테스트 워드가 그 부호를 포함하지 않으면, 한번에 하나의 비트만을 변경한다는 사실로부터, 등식 17에 따른 가중치의 갱신은 복호된 테스트 워드 Yt의 아날로그 가중치를 획득하는데 이용될 수 있다.
단계 B와 관련한 설명 부분에서 앞서 언급한 아날로그 가중치를 계산하기 위한 방법에 의하면, 본 발명에 따른 방법의 특히 주목할만한 특징에 따라, SISO 복호 소프트 출력값이 본 명세서에서 이전에 언급한 등식 16에 따라 산출되고, 공존하는 워드의 j번째 비트가 j=0 내지 n에 대해 값 +1 또는 -1 내에 매핑되는 값인 경우의 최소 거리를 각 시간마다 보존한다.
따라서, 도 2의 단계 B이후, 본 발명에 따른 재귀반복 복호 방법은, 복호된 테스트 워드의 아날로그 가중치 성분 PMj+에 의해 형성된 제1 아날로그 가중치 백터 V1,제1 값 +1 내에 매핑되는 랭크 j의 비트, 및 복호된 테스트 워드의 아날로그 가중치 성분 PMj -에 의해 형성되는 아날로그 가중치 벡터 V2를 산출하기 위하여 복호된 테스트 워드에 대한 아날로그 가중치를 분류하는 단계와 저장하는 단계를 포함한다.
분류 동작은 다음 등식에 의해 도 2의 단계 C에서 기호로 표시되어 있다.
Weight → V1(PMj+) or V2(PMj-)
도 2에 나타낸 단계 A, B, C, 특히 단계 B 및 C는 체이스 패스트 알고리즘의 재귀반복 방법에 통합될 수 있다는 것을 알 수 있을 것이며, 이 재귀반복 처리는 단계 C에서 단계 A로 복귀하는 단계로 나타내어 지며, 도 2에 t=t+1로 표시되어 있다. 인덱스 t는 현재의 재귀반복에서 생성된 복호된 테스트 워드로부터 2개의 복호된 테스트 워드의 이용을 위한 후속하는 재귀반복의 복호된 테스트 워드까지 진행하는 것을 나타낸다.
일단 모든 아날로그 가중치 PMj + 및 PMj -이 벡터 V1 및 V2의 형태로 분류되었으면, 소프트 판정(soft-decision) 계산, 즉 SISO 복호화가 호출될 수 있다. 단계 D는 제1 및 제2 아날로그 가중치 벡터 V1 및 V2의 아날로그 가중치 성분들 사이의 차로서 표현된다.
복호된 테스트 워드에 대해 아날로그 가중치를 분류하기 위한 과정인, 도 2의 단계 C에 대하여, 도 3a를 참조하여 더 상세하게 설명한다.
도 3a를 참조하면, 본 발명에 따른 방법의 분류 과정은, 제1 아날로그 가중치 벡터 V1과 제2 아날로그 가중치 벡터 V2를 초기화하는 단계를 포함하는데, 이에 따라, 랭크 j의 비트가 제1 값인, 복호된 테스트 워드의 아날로그 가중치 성분에 관련된 제1 벡터 V1에 대한 각각의 아날로그 가중치 성분 PMj +와, 랭크 j의 비트가 제2 값인, 복호된 테스트 워드의 아날로그 가중치 성분에 관련된 제2 벡터 V2에 대한 각각의 아날로그 가중치 성분 PMj -가, 0 ... n을 포함하는 j의 모든 값에 대해, 각각 값 PMj + = +∞ 또는 PMj - = +∞에서 시작한다.
초기화 동작은 다음과 같이 기호로 표현된다.
V1 = Weight min+ = {PM0+, ..., PMj+, ..., PMn+}
V2 = Weight min- = {PM0-, ..., PMj-, ..., PMn-}
복호된 테스트 워드 Yt의 아날로그 가중치의 리스트를 나타내는 벡터 V1 및 V2는 수신된 워드로부터 유도되며, j번째 비트는 제1 값에서 1이고 제2 값에서 0이다.
j=0 ... n에 대해, 실제의 개시는 PMj + = +∞ 및 PMj - = +∞로서 기재되어 있다.
최소 가중치를 포함하는 리스트는, 초기화 단계 C0까지 그리고 도 3a에서의 C1로서 표시된 체이스 패스트 알고리즘의 제1 재귀반복까지 호출된 다음의 단계 C1 및 C2에 의해 구현되는 과정인 것으로 이해되어야 한다.
본 동작은, 아날로그 가중치를 분류하고 저장하는 단계를 포함하며, 따라서 최소 가중치의 아날로그 가중치 벡터에서 상기 테스트 워드의 비트 값의 함수로서 획득된 제1 테스트 워드의 아날로그 가중치를 분류하는 단계를 포함하고, 테스트된 제1 테스트 워드는 개시 임의 가중치에 대한 최소 가중치를 갖는다.
문제가 되는 복호된 테스트 워드는 테스트 워드 Yt이다.
단계 C1에서 제1 재귀반복의 끝에서 수행되는, 런칭 동작으로서 알려진 것이 다음과 같이 표시된다.
j=0...n에서,
yt j = 0 → PMj -= Weight 이면, 복호된 테스트 워드 Yt는 수신된 워드 R로부터의 최소 거리에서 랭크 j의 비트 = 0을 갖는 것으로서의 시간으로 고려된다.
yt j = 1 → PMj += Weight 이면, 테스트 워드 Yt는 수신된 워드로부터의 최소 거리에서 랭크 j의 비트 = 1을 갖는 워드로서 고려된다.
런칭 단계 C1 다음에 단계 C2가 수행되며, 이 단계 C2는 트래킹 단계로서 알려져 있고, 모든 복호된 테스트 워드 Yt를 재귀반복적으로 조사하기 위한 것이다. 따라서, 도 3a의 단계 C2를 참조하면, 분류 과정은, 현재의 가중치 Weight가 바로 이전의 재귀반복에서 또는 더 이전의 재귀반복에서 저장된 동일한 랭크의 성분에 대해 제공된 가중치보다 작은 경우에, 최소의 제1 아날로그 가중치 벡터 V1 또는 최소의 제2 아날로그 가중치 벡터 V2에서 체이스 패스트 알고리즘의 현재의 재귀반복 동안 취득된 실제 가중치를 분류하는 단계를 포함한다.
실제 분류 동작을 다음과 같이 나타낼 수 있다.
j=0...n인 경우,
yt j=0 이고 Weight < PMj - 이면 → PMj - = Weight
yt j=1 이고 Weight < PMj + 이면 → PMj + = Weight
단계 C1 및 C2 설명에서 개시된 등식에서, 기호 = 는 열등 조건이 만족될 때 가중치를 변수에 할당하는 것을 의미한다.
마지막으로, 도 2의 단계 D는, SISO 복호 출력 값이 산출되는 단계로서, 도 3b를 참조하여 상세하게 설명한다.
도 3a를 참조하면, 단계 C2의 끝에서, 벡터 V1 및 V2, 즉 1(제1 값)과 0(제2 값)에서 j번째 비트를 갖는 복호된 테스트 워드의 아날로그 가중치의 리스트가 취득된다.
도 2의 단계 D에 개시된 계산 동작은, 아날로그 가중치 성분의 값이 초기화 값, 즉 실제의 아날로그 가중치 PMj - 및 PMj + 사이의 차로서의 랭크 j의 대응 비트의 값의 확률인 +∞과 다른 경우, 각각의 복호된 테스트 워드를, 값 PMj + 및 PMj -로부터, 0, n을 포함하는 랭크 j의 임의의 비트에 대해, 산출하는 단계를 포함한다.
상기 조건은, 상기 언급한 초기화 값 +∞에서 값 PMj + 및 PMj - 사이의 차의, 도 3b에 표시된, 테스트 D1 및 D2에 의해, 제한 없는 예로서, 부합될 수 있다.
값 +∞는, 임의의 큰 크기를 갖는 임의의 값으로 표현될 수 있으며, 아날로그한 아날로그 가중치의 실제 값과 부합하지 않는다는 것을 이해할 수 있을 것이다. 차 테스트(difference test)는, 이 경우 예컨대 열등 테스트(inferiority test)의 형태를 취할 수 있다.
아날로그 가중치들 간의 차의 계산은 단계 D4에 제시하고 있다.
그렇지 않고, 복호된 테스트 워드의 아날로그 가중치 성분 PMj -의 값, 랭크 j의 비트가 하나의 값, 예컨대 값 0이, 초기화 값 +∞와 다른 것이면, 소정의 제1 음의 값이 랭크 j의 비트의 값의 확률에 할당된다. 이 동작은, 단계 D3에서 테스트 D1에 대한 음의 응답의 경우에, 도 3b에 제시된 것과 같이, 수행될 수 있다.
그렇지 않고, 복호된 테스트 워드의 아날로그 가중치 성분 PMj +의 값, 랭크 j의 비트가 다른 값, 예컨대 값 1이, 초기화 값과 다른 것이면, 소정의 제1 값과 반대인 소정의 값은 랭크 j의 비트의 값의 확률에 할당된다. 이 동작은, 단계 D5에서 테스트 D2에 대한 음의 응답의 경우에 수행된다.
소정의 제1 값 및 제2 값은, 각각 음의 값과 양의 값이며, 값 β이고, 터보 디코딩 가중 계수이다.
Y, 즉 알고리즘을 수행하기 위한 복호된 테스트 워드를 형성하는 하드 디코딩 이후의 복호된 테스트 워드를 제거함으로써 생성된 부호 복호 방법을 수행하기 위하여, 추가의 메모리가 보존될 수 있다. 이러한 상황에서, 테스트 워드를 나타내는 테스트 벡터 Ybm만이 이용된다. 이 테스트 워드는, 대응하는 테스트 워드를 산출하기 위해 하드 디코딩하게 되면, 테스트 워드의 리스트를 변경하지 않기 위하여, 임의의 패리티 오류를 나타내는 변수와 에러 비트의 값이 보존되었으면, 재귀반복 시작의 참값에 재할당될 수 있다. 이 동작 과정에 의해, 하드 디코딩 이후 테스트 워드의 값 Yt, 즉 테스트 워드가 값 Ybm에서 복호될 때마다 재할당할 필요가 없다.
최종적으로, 각 테스트 워드의 패리티 비트는 랭크 j의 비트가 변경될 때마다 갱신될 수 있기 때문에, 패리티 비트를 재계산하기 위하여 각 시간마다 모든 비트를 가산할 필요가 없게 된다.
본 발명에 따른 방법은, 종래 기술의 방법에 비하여, 이용되는 논리 게이트의 수와 요구되는 실제 계산 시간의 관점에서 상당한 장점을 가지면서, 동일한 계산 결과를 보존할 수 있다는 장점을 가진다.
첫째, 체이스 패스트 알고리즘 내의 블록 부호의 신드롬의 특성을 이용하는 것은 문제가 되는 신드롬의 계산 시간을 n으로 나누게 된다. 사실상, 아날로그 가중치를 계산하는데 필요한 동작의 수는 동일한 계수만큼 나누어지고, 그래서 전체적으로, 체이스 패스트 알고리즘을 이용하는 모든 테스트 벡터를 이용하기 위한 과정의 계산 시간이 n으로 나누어진 시간이 된다.
두 번째, 본 발명에 따라 이용되는 신뢰도를 계산하기 위한 새로운 동작 방식에 의해, 재귀반복적인 체이스 패스트 알고리즘 단계에 의해 조사되는 복호된 테스트 워드를 저장할 필요도 없게 된다. 이러한 동작 방식에 의해, 곱 부호의 각 행 또는 열에 대해, n×2p 비트에 대응하는 메모리 용량을 이용할 필요가 없게 되며, 절반 재귀반복(half-iteration)에 대해 완전한 곱 부호의 복호화를 위한 전체 n2×2p 비트를 보존하게 된다. 따라서, 아날로그 가중치 PMj - 및 PMj +를 저장하기 위해 필요한 메모리 용량은 수량의 비트 수와 부호의 길이에만 의존하며, 공존하는 워드 또는 선택된 테스트 워드의 수에는 의존하지 않는다.
또한, 도 2에 도시된 바와 같이, 모든 동작은 부호의 행 또는 열의 모든 비트에 대해 단일 루프에서 수행된다. 따라서, 본 실시예에 의하면, 본 발명에 따른 복호 방법의 단순한 도입이 가능하게 되고, 터보 디코딩의 성능 수준을 향상시키기 위해 복호된 테스트 워드의 수를 증가시키는 것도 가능하게 된다.
수신된 부호 워드 R의 SISO 복호화에 의해 블록 부호를 재귀반복적으로 복호하기 위한 장치는, 본 발명에 따른 방법에 의하여, 복호된 테스트 워드로부터의 n개의 비트로 구성되며, 도 4를 참조하여 설명한다.
본 발명에 따른 장치는, 예컨대 이동 전화 단말, 개인휴대 정보 단말기(PDA) 또는 휴대형 컴퓨터에, 비제한적인 방식으로 탑재될 수 있다.
이러한 종류의 장비는, 마이크로프로세서에 의해 형성되는 중앙 처리 장치(CPU), 작업 메모리로서 작용을 하는 RAM, 및 예컨대 비휘발성 메모리인 ROM 등의 영구 메모리를 포함한다.
도 4에 도시된, 본 발명에 따른 장치는, 또한 체이스 패스트 알고리즘과 같은 재귀반복 알고리즘으로부터 복수 개의 복호된 테스트 워드를 생성하기 위한 모듈을 구비한다.
상기 생성기 모듈은, 영구 메모리 ROM1 내에 기록되며, 도 2의 단계 A에 따른 표와 관련하여 앞서 설명된 체이스 패스트 알고리즘을 실행하기 위한 작업 메모리 RAM에서 호출되는 프로그램 모듈을 구비할 수 있다는 것을 알 수 있을 것이다.
본 발명의 장치는, 도 2의 단계 B에 따른 각각의 복호된 테스트 워드 Yt의 아날로그 가중치를 계산하기 위한 모듈을 더 포함할 수 있다. 이 계산용 모듈은, 영구 메모리 ROM2에 기록되며, 도 2의 단계 B에 나타낸 등식에 따른 실행을 수행하기 위한 작업 메모리에서 호출되는 프로그램 모듈을 구비할 수 있다.
본 발명의 장치는, 복호된 테스트 워드 Yt에 대한 아날로그 가중치를 분류함으로써 정렬시키기 위한 모듈을 더 포함할 수 있다. 이 정렬용 모듈은 도 2(단계 C)와 도 3a에 제시된 본 발명에 따른 방법에 따라 실행시키기 위한 작업 메모리 RAM에서 호출하는 프로그램 모듈 ROM3을 구비할 수 있다.
본 발명의 장치는, 본 발명의 장치에 따른 주목할만한 특징에 따라, 복호된 테스트 워드의 아날로그 가중치 성분에 각각 관련된 제1 아날로그 가중치 벡터 V1과 제2 아날로그 가중치 벡터 V2에 따라 분류된 아날로그 가중치를 저장하기 위한 제1 레지스터 R1과 제2 레지스터 R2를 구비한다.
제한 없는 예에 의하면, 상기 레지스터는 작업 메모리 RAM의 보호 메모리 존으로 구성되거나, 각각의 레지스터 R1, R2의, 복호화를 수행하기 위해 최종적으로 보유하는 복호된 테스트 워드의 수의 함수로서 재구성을 허용하기 위하여, 전기적으로 재프로그램 가능한 비휘발성 메모리로서 구성될 수 있다.
전기적으로 재프로그램 가능한 비휘발성 메모리는, RAM 내에서 처리되는 데이터 및 아날로그 가중치 벡터 데이터의 분리, 이에 따른 물리적 보호를 제공한다.
결국, 본 발명에 따른 장치는, 도 4에 도시된 바와 같이, 레지스터 R1 및 R2에 저장된 제1 및 제2 아날로그 벡터로부터 아날로그 가중치 성분을 감산하기 위한 적어도 하나의 모듈을 구비하는 SISO 복호 소프트 판정 출력 값을 계산하기 위한 모듈을 구비한다.
이 계산용 모듈은 도 2(단계 D)와 도 3b에 제시된 본 발명에 따른 방법에 의하여 실행하기 위한 작업 메모리에서 호출되는 프로그램 모듈 ROM4를 구비할 수 있다.
최종적으로, 본 발명에 따른 복호 장치의 실시예는 칩 형태(전용의 집적 회로)로 구현될 수 있다는 장점을 가질 수 있다.
본 발명에 따른 복호 방법 및 복호 장치는, 특히 부호화된 데이터를 저장하고 부호화 데이터를 복호화된 형태로 저장하기 위한 시스템 또는 장비의 구현에 이용된다.

Claims (5)

  1. 복호된 테스트 워드로부터, n비트로 구성되는 수신된 곱 부호 워드(product code word)(R)의 SISO 복호에 의해 블록 부호(block code)를 재귀반복적으로(iteratively) 복호화하기 위한 방법으로서,
    재귀반복 처리(iterative process)를 이용하여 복수 개의 상기 복호된 테스트 워드를 생성하는 단계;
    각각의 상기 복호된 테스트 워드에 대하여, 상기 복호된 테스트 워드의 ±1 내에 매핑된 각각의 비트의 값에 대한 곱의 절반 합(half-sum)으로 표현되는 아날로그 가중치와, 상기 값의 확률을, 로그 우도(log-likelihood)에 의하여 계산하는 단계;
    랭크 j의 비트가 제1 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제1 아날로그 가중치 벡터와, 랭크 j의 비트가 제2 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제2 아날로그 가중치 벡터를 산출하기 위해, 상기 복호된 테스트 워드에 대한 아날로그 가중치를 분류 및 저장하는 단계;
    제1 아날로그 가중치 벡터 및 제2 아날로그 가중치 벡터의 아날로그 가중치 성분들 간의 차가 되는 SISO 복호 소프트 판정(soft-decision) 출력 값을 계산하는 단계
    를 포함하는 블록 부호의 재귀반복적 복호 방법.
  2. 제1항에 있어서,
    상기 제1 아날로그 가중치 벡터 및 상기 제2 아날로그 가중치 벡터를 초기화하는 단계를 포함하며,
    상기 랭크 j의 비트가 제1 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 관련되는 상기 제1 아날로그 가중치 벡터에 대한 아날로그 가중치 성분 PMj +, 또는 랭크 j의 비트가 제2 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 관련되는 상기 제2 아날로그 가중치 벡터에 대한 아날로그 가중치 성분 PMj -가, j=0...n 중 임의의 값에 대해, 각각 값 PMj + = +∞ 또는 PMj - = +∞에서 초기화되고, 상기 초기화된 제1 아날로그 가중치 벡터 및 제2 아날로그 가중치 벡터는 최소 가중치를 포함하는, 블록 부호의 재귀반복적 복호 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 초기화 단계와, 상기 복호된 테스트 워드를 제공하는 알고리즘의 첫 번째 재귀반복 이후에,
    상기 아날로그 가중치를 분류 및 저장하는 단계는,
    임의의 초기 가중치에 대한 최소의 아날로그 가중치를 갖는, 첫 번째 테스트된 복호된 제1 테스트 워드의 비트의 값의 함수로서, 최소 가중치의 아날로그 가중치 벡터에서 취득된 상기 복호된 제1 테스트 워드의 아날로그 가중치를 분류하는 단계;
    현재 이후의 후속하는 각각의 재귀반복에 대해서는, 현재의 아날로그 가중치가 직전의 재귀반복 또는 그 이전의 재귀반복에서 저장된 동일한 랭크의 성분에 대해 제공된 아날로그 가중치보다 작은 경우에, 상기 현재의 재귀반복 동안 취득된 현재의 아날로그 가중치를 상기 제1 아날로그 가중치 벡터 또는 상기 제2 아날로그 가중치 벡터로 분류하는 단계를 포함하는, 블록 부호의 재귀반복적 복호 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 랭크 j의 임의의 비트가 [0, n]인 경우, 상기 SISO 복호 출력 값을 계산하는 단계는,
    상기 제1 및 제2 아날로그 가중치 벡터의 아날로그 가중치 성분의 값이 상기 초기화 값 +∞와 다른 경우, 상기 아날로그 가중치들 간의 차로서 표현되는 랭크 j의 대응 비트의 값의 확률을 산출하는 단계;
    상기 제1 및 제2 아날로그 가중치 벡터의 하나의 상기 아날로그 가중치 성분의 값이 상기 초기화 값 +∞과 하나만 상이한 경우, 소정의 제1 값을 랭크 j의 비트의 값의 확률에 할당하는 단계;
    상기 제1 및 제2 아날로그 가중치 벡터의 다른 하나의 상기 아날로그 가중치 성분의 값이 상기 초기화 값 +∞과 하나만 상이한 경우, 상기 소정의 제1 값과 다른, 소정의 제2 값을, 상기 랭크 j의 비트의 값의 확률에 할당하는 단계를 포함하는, 블록 부호의 재귀반복적 복호 방법.
  5. 테스트 워드로부터 n비트로 구성되는, 수신된 곱 부호 워드의 SISO 복호에 의해 블록 부호를 재귀반복적으로 부호화하기 위한 장치로서,
    상기 장치는, 각각의 수신된 곱 부호 워드의 처리를 위하여,
    a) 재귀반복 알고리즘으로부터 복수 개의 복호된 테스트 워드를 생성하기 위한 수단;
    b) 각각의 상기 복호된 테스트 워드에 대하여, 상기 복호된 테스트 워드의 ±1에 매핑된 각각의 비트의 값에 대한 곱의 절반 합(half-sum)으로 표현되는 아날로그 가중치와, 상기 값의 확률을, 로그 우도(log-likelihood)에 의하여 계산하기 위한 수단;
    c) 랭크 j의 비트가 제1 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제1 아날로그 가중치 벡터와, 랭크 j의 비트가 제2 값을 갖는 상기 복호된 테스트 워드의 아날로그 가중치 성분에 의해 형성된 제2 아날로그 가중치 벡터를 산출하기 위해, 상기 복호된 테스트 워드에 대한 아날로그 가중치를 분류하여 정렬시키기 위한 수단;
    d1) 상기 분류된 아날로그 가중치를, 상기 제1 아날로그 가중치 벡터 또는 상기 제2 아날로그 가중치 벡터의 각각에 따라 저장되도록 하는 제1 레지스터 및 제2 레지스터;
    d2) SISO 복호 소프트 판정(soft-decision) 출력 값을 계산하며, 제1 아날로그 가중치 벡터 및 제2 아날로그 가중치 벡터로부터 아날로그 가중치 성분을 감산하기 위한 적어도 하나의 모듈을 구비하는 수단
    을 포함하는 장치.
KR1020077000620A 2004-06-10 2005-06-06 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치 KR20070058430A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0406291A FR2871631B1 (fr) 2004-06-10 2004-06-10 Procede de decodage iteractif de codes blocs et dispositif decodeur correspondant
FR0406291 2004-06-10

Publications (1)

Publication Number Publication Date
KR20070058430A true KR20070058430A (ko) 2007-06-08

Family

ID=34946340

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077000620A KR20070058430A (ko) 2004-06-10 2005-06-06 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US20080046799A1 (ko)
EP (1) EP1766785A1 (ko)
JP (1) JP2008502247A (ko)
KR (1) KR20070058430A (ko)
FR (1) FR2871631B1 (ko)
WO (1) WO2006003288A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130068171A (ko) * 2011-12-14 2013-06-26 한국전자통신연구원 무선 통신 시스템에서의 반복적 검출 및 복호 방법 및 이의 장치
KR20150105206A (ko) * 2014-03-06 2015-09-16 삼성전자주식회사 초 저전력 디코더 및 디코딩 방법

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7752523B1 (en) * 2006-02-13 2010-07-06 Marvell International Ltd. Reduced-complexity decoding of parity check codes
DE102008040797B4 (de) 2008-07-28 2010-07-08 Secutanta Gmbh Verfahren zum Empfangen eines Datenblocks
US8332810B2 (en) * 2008-11-24 2012-12-11 Sap Aktiengeselleschaft Optimal code generation for derivation tables
DE102008055139B4 (de) 2008-12-23 2010-12-09 Secutanta Gmbh Verfahren zum Empfangen eines Datenblocks
EP2916460B1 (en) * 2014-03-06 2017-08-23 Samsung Electronics Co., Ltd Ultra low power consumption (ulp) decoder

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3275986A (en) * 1962-06-14 1966-09-27 Gen Dynamics Corp Pattern recognition systems
FR2712760B1 (fr) * 1993-11-19 1996-01-26 France Telecom Procédé pour transmettre des bits d'information en appliquant des codes en blocs concaténés.
FR2753025B1 (fr) * 1996-08-28 1998-11-13 Pyndiah Ramesh Procede de transmission de bits d'information avec codage correcteur d'erreurs, codeur et decodeur pour la mise en oeuvre de ce procede
US6499128B1 (en) * 1999-02-18 2002-12-24 Cisco Technology, Inc. Iterated soft-decision decoding of block codes
US6460160B1 (en) * 2000-02-14 2002-10-01 Motorola, Inc. Chase iteration processing for decoding input data
JP4389373B2 (ja) * 2000-10-11 2009-12-24 ソニー株式会社 2元巡回符号を反復型復号するための復号器
JP3876662B2 (ja) * 2001-08-03 2007-02-07 三菱電機株式会社 積符号の復号方法および積符号の復号装置
JP2003283341A (ja) * 2002-03-22 2003-10-03 Sony Corp 線形ブロック符号に従って符号化されたデータを訂正するための装置
US20040019842A1 (en) * 2002-07-24 2004-01-29 Cenk Argon Efficient decoding of product codes
US7058873B2 (en) * 2002-11-07 2006-06-06 Carnegie Mellon University Encoding method using a low density parity check code with a column weight of two

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130068171A (ko) * 2011-12-14 2013-06-26 한국전자통신연구원 무선 통신 시스템에서의 반복적 검출 및 복호 방법 및 이의 장치
KR20150105206A (ko) * 2014-03-06 2015-09-16 삼성전자주식회사 초 저전력 디코더 및 디코딩 방법

Also Published As

Publication number Publication date
US20080046799A1 (en) 2008-02-21
EP1766785A1 (fr) 2007-03-28
FR2871631A1 (fr) 2005-12-16
FR2871631B1 (fr) 2006-09-22
WO2006003288A1 (fr) 2006-01-12
JP2008502247A (ja) 2008-01-24

Similar Documents

Publication Publication Date Title
US6421804B1 (en) Generating reliability values for iterative decoding of block codes
US7631241B2 (en) Apparatus and method for decoding low density parity check codes
Lin et al. A high throughput list decoder architecture for polar codes
US10348336B2 (en) System and method for early termination of decoding in a multi user equipment environment
KR20070058430A (ko) 블록 부호를 재귀반복적으로 복호하기 위한 방법 및 장치
US8468438B2 (en) Method and apparatus for elementary updating a check node during decoding of a block encoded with a non-binary LDPC code
CN104242957B (zh) 译码处理方法及译码器
JP3876662B2 (ja) 積符号の復号方法および積符号の復号装置
Scholl et al. Hardware implementation of a Reed-Solomon soft decoder based on information set decoding
Lee et al. A node-reliability based CRC-aided successive cancellation list polar decoder architecture combined with post-processing
US11381260B2 (en) Architecture for guessing random additive noise decoding (GRAND)
KR102269322B1 (ko) 비트 매칭 기반으로 선형 부호를 고속 복호화하는 방법 및 장치
US7681110B2 (en) Decoding technique for linear block codes
KR20040060951A (ko) 신호 디코딩 방법 및 디코딩 시스템, 기계 액세스가능한매체를 포함하는 제품
KR20190019798A (ko) 채널 편파 코드의 연속 제거 리스트 디코딩을 위한 효율적인 생존 메모리 아키텍처
CN116505958A (zh) 一种噪声辅助bpl级联osd的极化码译码方法、系统、设备及介质
US11616515B2 (en) Method and apparatus for fast decoding linear code based on soft decision
KR102144732B1 (ko) 연판정 기반으로 선형 부호를 고속 복호화하는 방법 및 장치
US20210203364A1 (en) Apparatuses and methods for mapping frozen sets between polar codes and product codes
CN110708077B (zh) Ldpc码大数逻辑译码方法、装置和译码器
JP2010535459A (ja) 線形計画法復号のための座標上昇法
US20240178938A1 (en) Polar code-based decoding method and apparatus
CN113556136B (zh) 一种gn陪集码译码方法及装置
KR102189920B1 (ko) 비트 매칭 기반으로 선형 부호를 고속 복호화하는 방법 및 장치
CN114978195B (zh) 一种极化码串行抵消列表译码码字相关的错误图样集搜索方法及系统

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid