KR101874537B1 - 극 부호의 병렬 복호화 방법 및 장치 - Google Patents

극 부호의 병렬 복호화 방법 및 장치 Download PDF

Info

Publication number
KR101874537B1
KR101874537B1 KR1020170085808A KR20170085808A KR101874537B1 KR 101874537 B1 KR101874537 B1 KR 101874537B1 KR 1020170085808 A KR1020170085808 A KR 1020170085808A KR 20170085808 A KR20170085808 A KR 20170085808A KR 101874537 B1 KR101874537 B1 KR 101874537B1
Authority
KR
South Korea
Prior art keywords
code
error
decoding
decoded
polarity
Prior art date
Application number
KR1020170085808A
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 연세대학교 산학협력단
Priority to KR1020170085808A priority Critical patent/KR101874537B1/ko
Application granted granted Critical
Publication of KR101874537B1 publication Critical patent/KR101874537B1/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/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
    • H03M13/13Linear 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/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 실시예들은 수신한 부호어를 상위 극 부호 및 하위 극 부호로 분해하며 병렬적으로 복호화하고, 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고, 오류 검사 결과에 따라 복호화를 완료하거나 하위 극 부호를 다시 복호화함으로써, 프레임 오류율은 유지하면서 지연을 최소화하는 극 부호 복호화 방법 및 장치를 제공한다.

Description

극 부호의 병렬 복호화 방법 및 장치 {Method and Apparatus for Parallel Decoding of Polar Codes}
본 실시예가 속하는 기술 분야는 극 부호를 복호화하는 방법 및 장치에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 실시예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.
채널 용량(Channel Capacity)은 오류 없는 상태로 유지할 수 있는 통신 속도의 이론적 한계, 즉, 신뢰성 있는 통신이 가능한 최고 전송률을 의미한다. 채널 부호화는 채널을 통하여 정보를 전송하는 과정에서 발생한 오류를 수신측에서 검출하고 정정하기 위하여, 송신측에서 신호를 변환하는 것이다.
정보의 왜곡을 효율적으로 복원하여 통신의 신뢰도를 높이기 위한 방법으로서 오류 정정 부호(Error Correcting Code)를 사용한다. 순환 중복 검사(Cyclic Redundancy Check, CRC) 부호는 송신하는 블록의 데이터에 부가되어 전송됨으로써 수신측에서의 오류 판정에 사용된다. 극 부호(Polar Code)는 이론적으로 이진 입력 무기억 대칭 채널(Binary-input Memoryless Symmetric Channel)의 용량을 달성하는 것이 증명된 부호이다.
극 부호(Polar Code)는 낮은 부호화/복호화 복잡도로 이진 입력 이산 무기억 채널에서 부호 길이가 무한한 길이일 때 이론적 용량 한계에 근접하는 부호이다. 극 부호의 복호화 방식으로는 연속 제거(Successive Cancellation, SC) 방식, 연속 제거 리스트(Successive Cancellation List, SCL) 방식, 신뢰 전파(Belief Propagation) 방식 등이 있다.
극 부호는 기본적으로 CRC 부호를 연접하지 않고 독립적으로 동작하는 부호이나, 극 부호의 복호를 위해 연속 제거 리스트 복호기를 사용하는 경우에는 극 부호를 독립적으로 사용하여 부호화하는 것보다 CRC 부호와 극 부호를 연접하여 사용하면 큰 오율(Error Rate) 성능 이득을 얻을 수 있다.
CRC 부호가 연접되지 않은 극 부호의 경우, SCL 복호기는 수신 신호 벡터를 받아 L(L은 자연수) 개의 부호어 후보들을 생성하고, 부호어 후보들의 집합인 리스트에 속한 부호어들 중에서 가장 우도(Likelihood)가 높은 부호어 1개를 선택한다.
CRC 부호가 연접된 극 부호의 경우, SCL 복호기는 수신 신호 벡터를 받아 L 개의 부호어 후보를 생성하고, 리스트에 속한 부호어들 모두에 대하여 CRC 부호로 오류가 있는지 여부를 검사하고, 오류가 없는 부호어들 중 가장 우도가 높은 부호어 1개를 선택한다.
그러나, 연속 제거 복호화 방식 및 연속 제거 리스트 복호화 방식은 직렬 또는 재귀적 처리에 기반하므로, 높은 지연(Latency)이 문제된다.
본 발명의 실시예들은 수신한 부호어를 상위 극 부호 및 하위 극 부호로 분해하며 병렬적으로 복호화하고, 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고, 오류 검사 결과에 따라 복호화를 완료하거나 하위 극 부호를 다시 복호화함으로써, 프레임 오류율은 유지하면서 지연을 최소화하는 데 발명의 주된 목적이 있다.
본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.
본 실시예의 일 측면에 의하면, 극 부호(Polar Code) 복호화 장치에 의한 극 부호 복호화 방법에 있어서, 통신 채널을 통하여 상기 극 부호를 포함한 부호어를 수신하는 단계, 상기 수신한 부호어를 상위 극 부호(Upper Polar Code) 및 하위 극 부호(Lower Polar Code)로 분해하며 병렬적으로 복호화하는 제1 복호화 단계, 및 상기 복호화된 상위 극 부호 및 상기 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 오류 검사 단계를 포함하는 극 부호 복호화 방법을 제공한다.
본 실시예의 다른 측면에 의하면, 통신 채널을 통하여 극 부호를 포함한 부호어를 수신하는 수신부, 상기 수신한 부호어를 상위 극 부호(Upper Polar Code)로 분해하여 복호화하는 상위 복호화부, 상기 수신한 부호어를 하위 극 부호(Lower Polar Code)로 분해하여 복호화하는 하위 복호화부, 및 상기 복호화된 상위 극 부호 및 상기 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 외부 복호화부를 포함하는 극 부호 복호화 장치를 제공한다.
본 실시예의 또 다른 측면에 의하면, 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 비일시적(Non-Transitory) 컴퓨터 판독 가능한 매체에 기록되어 극 부호(Polar Code) 복호화를 위한 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 컴퓨팅 디바이스의 프로세서에 의해 실행되는 경우에, 통신 채널을 통하여 상기 극 부호를 포함한 부호어를 수신하는 단계, 상기 수신한 부호어를 상위 극 부호(Upper Polar Code) 및 하위 극 부호(Lower Polar Code)로 분해하며 병렬적으로 복호화하는 제1 복호화 단계, 및 상기 복호화된 상위 극 부호 및 상기 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 오류 검사 단계를 포함한 동작들을 수행하는 컴퓨터 프로그램을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예들에 의하면, 수신한 부호어를 상위 극 부호 및 하위 극 부호로 분해하며 병렬적으로 복호화하고, 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고, 오류 검사 결과에 따라 복호화를 완료하거나 하위 극 부호를 다시 복호화함으로써, 프레임 오류율은 유지하면서 지연을 최소화할 수 있는 효과가 있다.
여기에서 명시적으로 언급되지 않은 효과라 하더라도, 본 발명의 기술적 특징에 의해 기대되는 이하의 명세서에서 기재된 효과 및 그 잠정적인 효과는 본 발명의 명세서에 기재된 것과 같이 취급된다.
도 1은 본 발명의 실시예들에 따른 극 부호 부호화/복호화 시스템을 예시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 극 부호 복호화 장치가 처리하는 상위 극 부호 및 하위 극 부호를 예시한 도면이다.
도 3 및 도 4는 본 발명의 실시예들에 따른 극 부호 복호화 장치의 동작을 예시한 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 극 부호 복호화 방법을 예시한 흐름도이다.
도 6 및 도 7은 본 발명의 실시예들에 따라 수행된 모의실험 결과를 도시한 것이다.
이하, 본 발명을 설명함에 있어서 관련된 공지기능에 대하여 이 분야의 기술자에게 자명한 사항으로서 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하고, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다.
본 발명의 실시예들은 극 부호의 복호화 방법 및 장치에 관한 것으로서, 다수의 송신장치 및 수신장치로 연결된 네트워크 환경에서 구현된 통신 시스템에 적용된다. 예컨대, 3G, 4G, 5G 등의 이동통신, 디지털 위성방송, 무선랜, 고속 케이블 통신 등에 적용될 수 있다.
도 1은 본 발명의 실시예들에 따른 극 부호 부호화/복호화 시스템을 예시한 블록도이다. 도 1에 도시한 바와 같이, 극 부호 부호화/복호화 시스템은 극 부호 부호화 장치(100), 극 부호 복호화 장치(200), 및 통신 채널(300)을 포함한다. 극 부호 부호화/복호화 시스템은 도 1에서 예시적으로 도시한 다양한 구성요소들 중에서 일부 구성요소를 생략하거나 다른 구성요소를 추가로 포함할 수 있다.
극 부호 부호화 장치(100)는 외부 부호화부(110) 및 극 부호 부호화부(120)를 포함한다. 외부 부호화부(110)는 메시지 비트열을 오류 정정 부호를 이용하여 부호화한다. 오류 정정 부호로는 순환 중복 검사(Cyclic Redundancy Check, CRC) 부호가 사용될 수 있다. 극 부호 복호화부(120)는 메시지 비트열 또는 오류 정정 부호가 연접된 메시지 비트열을 극 부호를 이용하여 부호화한다. 극 부호는 여러 개의 채널을 결합한 후 적절히 분리했을 때 발생하는 채널 양극화(Channel Polarization) 현상을 이용하여 채널 용량을 달성하는 부호이다. 극 부호 부호화 장치(100)는 부호어를 변조하고 통신 채널(300)을 통하여 전송할 수 있다.
극 부호 복호화 장치(200)는 통신 채널(300)을 통하여 신호를 수신하고 복조할 수 있다. 극 부호 복호화 장치(200)는 수신한 부호어를 극 부호를 이용하여 복호화한다. 극 부호 복호화 장치(200)는 상위 복호화부(210), 하위 복호화부(220), 및 외부 복호화부(230)를 포함한다. 상위 복호화부(210)는 수신한 부호어를 상위 극 부호(Upper Polar Code)로 분해하여 복호화한다. 하위 복호화부(220)는 수신한 부호어를 하위 극 부호(Lower Polar Code)로 분해하여 복호화한다. 외부 복호화부(230)는 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 오류 검사 결과에 따라 복호화를 완료하거나 하위 극 부호를 다시 복호화할지 여부를 결정한다.
도 2를 참조하여, 본 발명의 일 실시예에 따른 극 부호 복호화 장치의 동작을 구체적으로 설명한다. 도 2는 본 발명의 일 실시예에 따른 극 부호 복호화 장치가 처리하는 상위 극 부호 및 하위 극 부호를 예시한 도면이다.
극 부호는 부호 길이(Code Length, N, 상기 N은 자연수) 및 정보 비트(Information Bit)의 개수(K, K는 자연수)를 포함하며, 데이터 비트열(U) 중에서 채널 양극화 현상에 따라 채널 용량에 해당하는 비율로 K 개를 선택하여 정보를 입력하고, R(상기 R은 자연수) 개의 오류 정정 비트열을 입력하고, 나머지 (N-K-R) 개의 프로즌 비트(Prozen Bit)에 고정된 값을 입력한 비트열이다. 부호어는 극 부호를 부호화한 부호 비트열(Code Bit Sequence, X)이다. 부호 비트열 X는
Figure 112017064714408-pat00001
과 같이 표현된다. 여기서 GN
Figure 112017064714408-pat00002
과 같고, BN은 비트 역 순열(Bit Reversal Permutation Matrix)을 나타내고,
Figure 112017064714408-pat00003
Figure 112017064714408-pat00004
의 n차 크로네커 파워(Kronecker Power)를 나타낸다.
도 2에서는 부호 길이가 8(N=8)인 극 부호의 상위 극 부호 및 하위 극부호가 예시되어 있다. 극 부호의 인덱스는 1부터 N(N은 자연수)까지이고, 상위 극 부호(10)의 인덱스는 1부터 N/2까지이고, 하위 극 부호(20)의 인덱스는 N/2부터 N까지이고, 상위 극 부호(10) 및 하위 극 부호(20)가 동일한 구조를 갖는다.
극 부호 복호화 장치는 수신한 부호어를 상위 극 부호(Upper Polar Code) 및 하위 극 부호(Lower Polar Code)로 분해하며 병렬적으로 복호화(제1 복호화)한다. 제1 복호화 과정은 1부터 N까지의 인덱스를 갖는 부호어(
Figure 112017064714408-pat00005
)로부터 1부터 N/2까지의 인덱스를 갖는 상위 극 부호(
Figure 112017064714408-pat00006
)로 복호화하고, N/2부터 N까지의 인덱스를 갖는 하위 부호어(
Figure 112017064714408-pat00007
)로부터 N/2부터 N까지의 인덱스를 갖는 하위 극 부호(
Figure 112017064714408-pat00008
)로 복호화한다.
극 부호 복호화 장치는 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 오류가 검출되지 않으면 복호화를 성공적으로 종료한다.
극 부호 복호화 장치는 오류 검사 단계에서 오류가 검출되면, 수신한 부호어 및 복호화된 상위 극 부호를 하위 극 부호로 복호화(제2 복호화)한다. 제2 복호화 과정은 1부터 N까지의 인덱스를 갖는 부호어(
Figure 112017064714408-pat00009
) 및 1부터 N/2까지의 인덱스를 갖는 상위 극 부호(
Figure 112017064714408-pat00010
)로부터 N/2부터 N까지의 인덱스를 갖는 하위 극 부호(
Figure 112017064714408-pat00011
)로 복호화한다.
본 실시예는 기술적 차이가 있는 범위를 제외한 나머지 범위에서 SC 복호화 방식, SCL 복호화 방식, 또는 CA-SCL 복호화 방식의 일부를 적용할 수 있다.
SC 복호화 방식은 수학식 1과 같이 동작한다.
Figure 112017064714408-pat00012
SC 복호화 방식은 조건부 우도 함수(Conditional Likelihood Function)를 차례로 계산하며 복호화한다.
SCL 복호화 방식은
Figure 112017064714408-pat00013
를 고정하지 않으며, SCL 복호화 방식은 경로 메트릭을 사용하여 2L 개의 후보를 생성한다. L은 리스트의 크기를 나타낸다. SCL 복호화 방식은 수학식 2를 이용하여 후보들을 획득한다.
Figure 112017064714408-pat00014
SCL 복호화 방식은 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택한다.
CA-SCL 복호화 방식에 따르면, 본 실시예의 상위 복호화부 및 하위 복호화부가 l 개의 리스트를 생성하며, l*l 후보가 생성된다. 본 실시예에서의 CRC 검사는 오류 감지 과정에서 리스트 선택이 아닌 오류 검출을 위해 동작한다. CRC의 오류가 검출되지 않을 확률은 테스트 패턴의 수에 비례하기 때문에, 본 실시예는 상위 및 하위 극 부호의 가장 신뢰할 수 있는 리스트에 해당하는 단 하나의 후보만을 고려한다.
도 3 및 도 4는 본 발명의 실시예들에 따른 극 부호 복호화 장치의 동작을 예시한 흐름도이다.
도 3을 참조하여, 일 실시예에 따른 극 부호 복호화 장치의 동작을 설명한다. 단계 S310에서, 수신부는 부호어를 수신한다. 단계 S320에서, 상위 복호화부는 수신한 부호어를 상위 극 부호로 분해하여 복호화한다. 단계 S330에서, 하위 복호화부는 수신한 부호어를 하위 극 부호로 분해하여 복호화한다. 즉, 극 부호 복호화 장치는 단계 S320 및 단계 S330을 병렬적으로 동시에 수행한다.
단계 S340에서, 외부 복호화부는 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사한다. 예컨대, 오류 정정 비트열로 CRC 부호를 사용할 수 있다. 단계 S350에서, 외부 복호화부가 오류를 검출하지 않으면 복호화를 성공적으로 종료한다.
단계 S360에서, 외부 복호화부가 오류를 검출하면, 하위 복호화부는 수신한 부호어 및 복호화된 상위 극 부호를 상기 하위 극 부호로 복호화한다.
단계 S370에서, 하위 복호화부는 수신한 부호어 및 복호화된 상위 극 부호에 기반하여, 복수의 신뢰 경로를 생성하고, 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택한다.
단계 S380에서, 외부 복호화부는 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없는 신뢰 경로가 없으면, 복호화를 실패로 종료한다.
도 4를 참조하여, 다른 실시예에 따른 극 부호 복호화 장치의 동작을 설명한다. 본 실시예는 극 부호 부호화 장치가 극 부호를 상위 극 부호 및 하위 극 부호로 분해하여 부호화한 부호어를 복호화할 수 있다. 단계 S410에서, 수신부는 부호어를 수신한다. 단계 S420에서, 상위 복호화부는 수신한 부호어를 상위 극 부호로 분해하여 복호화한다. 단계 S430에서, 하위 복호화부는 수신한 부호어를 하위 극 부호로 분해하여 복호화한다. 즉, 극 부호 복호화 장치는 단계 S420 및 단계 S430을 병렬적으로 동시에 수행한다.
단계 S440 및 단계 S450에서, 외부 복호화부는 상위 복호화된 극 부호의 오류 정정 비트열 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 각각 검사한다. 단계 S440에서 복호화된 상위 극 부호의 오류 정정 비트열에서 오류가 검출되지 않으면, 단계 S450에서 복호화된 하위 극 부호의 오류 정정 비트열의 오류를 검출한다. 예컨대, 오류 정정 비트열로 CRC 부호를 사용할 수 있다.
단계 S460에서, 외부 복호화부는 복호화된 상위 극 부호의 오류 정정 비트열 및 복호화된 하위 극 부호의 오류 정정 비트열 각각에서 오류가 검출되지 않으면 복호화를 성공적으로 종료한다. 단계 S490에서, 외부 복호화부는 복호화된 상위 극 부호에 대하여 오류가 검출되면 복호화를 중단한다.
단계 S470에서, 외부 복호화부가 복호화된 하위 극 부호에 대하여 오류를 검출하면, 하위 복호화부는 수신한 부호어 및 복호화된 상위 극 부호를 하위 극 부호로 복호화한다.
단계 S470에서, 하위 복호화부는 수신한 부호어 및 복호화된 상위 극 부호에 기반하여, 복수의 신뢰 경로를 생성하고, 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택한다.
단계 S490에서, 외부 복호화부는 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없는 신뢰 경로가 없으면, 복호화를 실패로 종료한다.
실시예들은 (T+1) 클록 내지 (2T+2) 클록에서 복호화 과정을 수행할 수 있다. 여기서 T는 부호 길이가 N/2인 극 부호를 복호화하는데 필요한 클록이고, 1은 복호화부의 입력 벡터를 생성하는데 필요한 클록이다. 오류 정정 비트열의 개수가 기 설정된 값보다 큰 것일수록 시간 측면에서 유리하다. 오류 정정 비트열의 개수는 구현되는 설계에 따라 적합한 수치가 사용될 수 있다.
극 부호 복호화 장치에 포함된 구성요소들이 도 1에서는 분리되어 도시되어 있으나, 복수의 구성요소들은 상호 결합되어 적어도 하나의 모듈로 구현될 수 있다. 구성요소들은 장치 내부의 소프트웨어적인 모듈 또는 하드웨어적인 모듈을 연결하는 통신 경로에 연결되어 상호 간에 유기적으로 동작한다. 이러한 구성요소들은 하나 이상의 통신 버스 또는 신호선을 이용하여 통신한다.
극 부호 복호화 장치 내에서 상위 복호화부, 하위 복호화부, 외부 복호화부 등의 배치 구조는 임의 변경될 수 있다. 극 부호 복호화 장치 내에서 상위 복호화부, 하위 복호화부, 외부 복호화부 등의 위치와 연결 관계는 데이터나 신호의 흐름에 최적화된 설계 구조를 가질 수 있다.
극 부호 복호화 장치는 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합에 의해 로직회로 내에서 구현될 수 있고, 범용 또는 특정 목적 컴퓨터를 이용하여 구현될 수도 있다. 장치는 고정배선형(Hardwired) 기기, 필드 프로그램 가능한 게이트 어레이(Field Programmable Gate Array, FPGA), 주문형 반도체(Application Specific Integrated Circuit, ASIC) 등을 이용하여 구현될 수 있다. 또한, 장치는 하나 이상의 프로세서 및 컨트롤러를 포함한 시스템온칩(System on Chip, SoC)으로 구현될 수 있다.
극 부호 복호화 장치는 하드웨어적 요소가 마련된 컴퓨팅 디바이스 또는 서버에 소프트웨어, 하드웨어, 또는 이들의 조합하는 형태로 탑재될 수 있다. 컴퓨팅 디바이스 또는 서버는 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신장치, 프로그램을 실행하기 위한 데이터를 저장하는 메모리, 프로그램을 실행하여 연산 및 명령하기 위한 마이크로프로세서 등을 전부 또는 일부 포함한 다양한 장치를 의미할 수 있다.
도 5는 본 발명의 다른 실시예에 따른 극 부호 복호화 방법을 예시한 흐름도이다. 극 부호 복호화 방법은 극 부호 복호화 장치에 의하여 수행될 수 있다.
단계 S510에서, 극 부호 복호화 장치는 통신 채널을 통하여 극 부호를 포함한 부호어를 수신한다. 극 부호는 부호 길이(Code Length, N, N은 자연수) 및 정보 비트(Information Bit)의 개수(K, K는 자연수)를 포함한다. 데이터 비트열(U)은 채널 양극화 현상에 따라 채널 용량에 해당하는 비율로 K 개를 선택하여 정보(메시지 비트)를 입력하고, R(R은 자연수) 개의 오류 정정 비트열을 입력하고, 나머지 (N-K-R) 개의 프로즌 비트(Prozen Bit)에 고정된 값을 입력한 비트열이다. 부호어는 극 부호를 이용한 데이터 비트열을 부호화한 부호 비트열(Code Bit Sequence, X)이다.
단계 S520에서, 극 부호 복호화 장치는 수신한 부호어를 상위 극 부호 및 하위 극 부호로 분해하며 병렬적으로 복호화한다. 이를 제1 복호화 단계라고 한다. 극 부호의 인덱스는 1부터 N까지이고, 상위 극 부호의 인덱스는 1부터 N/2까지이고, 하위 극 부호의 인덱스는 N/2부터 N까지이다. 상위 극 부호 및 하위 극 부호가 동일한 구조를 갖는다. 제1 복호화 단계는 1부터 N까지의 인덱스를 갖는 부호어(
Figure 112017064714408-pat00015
)로부터 1부터 N/2까지의 인덱스를 갖는 상위 극 부호(
Figure 112017064714408-pat00016
)로 복호화하고, N/2부터 N까지의 인덱스를 갖는 하위 부호어(
Figure 112017064714408-pat00017
)로부터 N/2부터 N까지의 인덱스를 갖는 하위 극 부호(
Figure 112017064714408-pat00018
)로 복호화한다.
단계 S530에서, 극 부호 복호화 장치는 복호화된 상위 극 부호 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 검사하고 오류가 검출되지 않으면 복호화를 성공적으로 종료한다. 이를 오류 검사 단계라고 한다. 극 부호 부호화/복호화 장치는 오류 정정 비트열의 개수를 기 설정된 값보다 큰 값으로 설정한다.
극 부호 복호화 방법은 오류 검사 단계에서 오류가 검출되면, 수신한 부호어 및 복호화된 상위 극 부호를 하위 극 부호로 복호화하는 단계를 추가로 포함할 수 있다. 이를 제2 복호화 단계라고 한다. 제2 복호화 단계는 1부터 N까지의 인덱스를 갖는 부호어(
Figure 112017064714408-pat00019
) 및 1부터 N/2까지의 인덱스를 갖는 상위 극 부호(
Figure 112017064714408-pat00020
)로부터 N/2부터 N까지의 인덱스를 갖는 하위 극 부호(
Figure 112017064714408-pat00021
)로 복호화한다.
제2 복호화 단계는 수신한 부호어 및 복호화된 상위 극 부호에 기반하여, 복수의 신뢰 경로를 생성하고, 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택한다. 제2 복호화 단계는 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없는 신뢰 경로가 없으면, 복호화를 실패로 종료한다.
또 다른 실시예인 극 부호 부호화 방법은 극 부호를 상위 극 부호 및 하위 극 부호로 분해하여 부호화한 부호어를 복호화할 수 있다. 다른 과정은 본 실시예에서 오류 검사 단계는 복호화된 상위 극 부호의 오류 정정 비트열 및 복호화된 하위 극 부호의 오류 정정 비트열을 이용하여 오류를 각각 검사하고, 오류가 검출되지 않으면 복호화를 성공적으로 종료하고, 복호화된 상위 극 부호에 대하여 오류가 검출되면 복호화를 중단한다.
본 실시예는 오류 검사 단계에서 복호화된 하위 극 부호에 대하여 오류가 검출되면, 수신한 부호어 및 복호화된 상위 극 부호를 하위 극 부호로 복호화하는 제3 복호화 단계를 추가로 포함할 수 있다. 본 실시예는 기술적 차이가 있는 범위를 제외한 나머지 범위에서 다른 극 부호 부호화 방법의 일부 단계를 적용할 수 있다.
도 6 및 도 7은 본 발명의 실시예들에 따라 수행된 모의실험 결과를 도시한 것이다. 도 6에서는 부호 길이 및 CRC 부호 길이에 따라 CA-SCL, Proposed, Multi-CRC, Joint 간의 프레임 오류율(FER) 성능이 도시되어 있다. 도 7에서는 부호 길이 및 CRC 부호 길이에 따라 CA-SCAL, Multi-CRC, Proposed, Joint 간의 관련 지연(Relative Latency)이 도시되어 있다.
CA-SCL은 CRC 부호가 연접된 SCL 복호화 방식이고, Multi-CRC는 극 부호를 서브 블록으로 분해하여 부호화하는 방식이다. Multi-CRC는 SCL 복호화 방식과 거의 유사한 방식으로 복호화한다. Proposed 및 Joint는 본 발명에 따른 실시예들이며, Proposed는 극 부호를 서브 블록으로 분해하여 복호화하는 방식이고, Joint는 서브 블록으로 분해하여 복호화된 극 부호를 서브 블록으로 분해하여 복호화하는 방식이다.
도 6에 도시된 바와 같이, Proposed 및 Joint의 성능은 CA-SCL 및 Multi-CRC과 유사하면서도, 도 7에 도시된 바와 같이, Proposed 및 Joint는 CA-SCL 및 Multi-CRC과 비교하여 지연을 최소화함을 쉽게 파악할 수 있다.
관련 지연에 관한 식은 수학식 3 및 수학식 4와 같이 표현된다.
Figure 112017064714408-pat00022
Figure 112017064714408-pat00023
Figure 112017064714408-pat00024
는 오류 검사 단계에서 하위 극 부호의 프레임 오류율이고,
Figure 112017064714408-pat00025
는 평균 지연이고,
Figure 112017064714408-pat00026
는 관련 지연을 나타낸다.
도 5에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나 이는 예시적으로 설명한 것에 불과하고, 이 분야의 기술자라면 본 발명의 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 도 5에 기재된 순서를 변경하여 실행하거나 또는 하나 이상의 과정을 병렬적으로 실행하거나 다른 과정을 추가하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이다.
본 실시예들에 따른 동작은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능한 매체에 기록될 수 있다. 컴퓨터 판독 가능한 매체는 실행을 위해 프로세서에 명령어를 제공하는 데 참여한 임의의 매체를 나타낸다. 컴퓨터 판독 가능한 매체는 프로그램 명령, 데이터 파일, 데이터 구조 또는 이들의 조합을 포함할 수 있다. 예를 들면, 자기 매체, 광기록 매체, 메모리 등이 있을 수 있다. 컴퓨터 프로그램은 네트워크로 연결된 컴퓨터 시스템 상에 분산되어 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 본 실시예를 구현하기 위한 기능적인(Functional) 프로그램, 코드, 및 코드 세그먼트들은 본 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있을 것이다.
본 실시예들은 본 실시예의 기술 사상을 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 극 부호 부호화 장치 110: 외부 부호화부
120: 극 부호 부호화부 200: 극 부호 복호화 장치
210: 상위 복호화부 220: 하위 복호화부
230: 외부 복호화부 300: 통신 채널

Claims (18)

  1. 극 부호(Polar Code) 복호화 장치에 의한 극 부호 복호화 방법에 있어서,
    통신 채널을 통하여 순환 중복 검사(Cyclic Redundancy Check, CRC) 부호를 사용하는 오류 정정 부호를 연접한 극 부호를 포함한 부호어를 수신하는 단계;
    상기 수신한 부호어로부터 상위 극 부호(Upper Polar Code)를 추출하여 복호화하고, 상기 수신한 부호어로부터 하위 극 부호(Lower Polar Code)를 추출하여 복호화하여, 상기 수신한 부호어를 병렬적으로 복호화하는 제1 복호화 단계; 및
    상기 복호화된 상위 극 부호에 포함된 오류 정정 부호 및 상기 복호화된 하위 극 부호에 포함된 오류 정정 부호를 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 오류 검사 단계
    를 포함하는 극 부호 복호화 방법.
  2. 제1항에 있어서,
    상기 극 부호는 부호 길이(Code Length, N, 상기 N은 짝수의 자연수) 및 정보 비트(Information Bit)의 개수(K, K는 자연수)를 포함하며, 데이터 비트열(U) 중에서 채널 양극화 현상에 따라 채널 용량에 해당하는 비율로 K 개를 선택하여 정보 비트를 입력하고, R(상기 R은 자연수) 개의 오류 정정 부호를 입력하고, 나머지 (N-K-R) 개의 프로즌 비트(Prozen Bit)에 고정된 값을 입력한 비트열이고,
    상기 부호어는 상기 극 부호를 부호화한 부호 비트열(Code Bit Sequence, X)인 것을 특징으로 하는 극 부호 복호화 방법.
  3. 제1항에 있어서,
    상기 극 부호의 인덱스는 1부터 N(상기 N은 짝수의 자연수)까지이고, 상기 상위 극 부호의 인덱스는 1부터 N/2까지이고, 상기 하위 극 부호의 인덱스는 N/2+1부터 N까지인 것을 특징으로 하는 극 부호 복호화 방법.
  4. 제3항에 있어서,
    상기 제1 복호화 단계는,
    1부터 N(상기 N은 짝수의 자연수)까지의 인덱스를 갖는 상기 부호어로부터 1부터 N/2까지의 인덱스를 갖는 상기 상위 극 부호를 추출하여 복호화하고, 상기 1부터 N까지의 인덱스를 갖는 상기 부호어 중에서 N/2+1부터 N까지의 인덱스를 갖는 하위 부호어로부터 N/2+1부터 N까지의 인덱스를 갖는 상기 하위 극 부호를 추출하여 복호화하는 것을 특징으로 하는 극 부호 복호화 방법.
  5. 제2항에 있어서,
    상기 오류 정정 부호의 개수인 R이 기 설정된 값보다 큰 것을 특징으로 하는 극 부호 복호화 방법.
  6. 제1항에 있어서,
    상기 오류 검사 단계에서 상기 오류가 검출되면, 상기 수신한 부호어 및 상기 복호화된 상위 극 부호로부터 하위 극 부호를 추출하여 재 복호화하는 제2 복호화 단계
    를 추가로 포함하는 극 부호 복호화 방법.
  7. 제6항에 있어서,
    상기 제2 복호화 단계는,
    상기 수신한 부호어 및 상기 복호화된 상위 극 부호에 기반하여, 복수의 신뢰 경로를 생성하고, 상기 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택하는 것을 특징으로 하는 극 부호 복호화 방법.
  8. 제7항에 있어서,
    상기 제2 복호화 단계는,
    상기 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없는 신뢰 경로가 없으면, 복호화를 실패로 종료하는 것을 특징으로 하는 극 부호 복호화 방법.
  9. 제1항에 있어서,
    상기 오류 검사 단계는,
    상기 복호화된 상위 극 부호에 포함된 오류 정정 부호 및 상기 복호화된 하위 극 부호에 포함된 오류 정정 부호를 이용하여 오류를 각각 검사하고, 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하고, 상기 복호화된 상위 극 부호에 대하여 오류가 검출되면 복호화를 중단하는 것을 특징으로 하는 극 부호 복호화 방법.
  10. 제9항에 있어서,
    상기 오류 검사 단계에서 상기 복호화된 하위 극 부호에 대하여 오류가 검출되면, 상기 수신한 부호어 및 상기 복호화된 상위 극 부호로부터 하위 극 부호를 추출하여 재 복호화하는 제3 복호화 단계를 추가로 포함하는 극 부호 복호화 방법.
  11. 통신 채널을 통하여 순환 중복 검사(Cyclic Redundancy Check, CRC) 부호를 사용하는 오류 정정 부호를 연접한 극 부호를 포함한 부호어를 수신하는 수신부;
    상기 수신한 부호어로부터 상위 극 부호(Upper Polar Code)를 추출하여 복호화하는 상위 복호화부;
    상기 수신한 부호어로부터 하위 극 부호(Lower Polar Code)를 추출하여 복호화하는 하위 복호화부; 및
    상기 복호화된 상위 극 부호에 포함된 오류 정정 부호 및 상기 복호화된 하위 극 부호에 포함된 오류 정정 부호를 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 외부 복호화부
    를 포함하는 극 부호 복호화 장치.
  12. 제11항에 있어서,
    상기 상위 복호화부는 1부터 N(상기 N은 짝수의 자연수)까지의 인덱스를 갖는 상기 부호어로부터 1부터 N/2까지의 인덱스를 갖는 상기 상위 극 부호로 복호화하고, 상기 하위 복호화부는 N/2+1부터 N까지의 인덱스를 갖는 하위 부호어로부터 N/2+1부터 N까지의 인덱스를 갖는 상기 하위 극 부호로 복호화하는 것을 특징으로 하는 극 부호 복호화 장치.
  13. 제11항에 있어서,
    상기 외부 복호화부가 상기 오류를 검출하면, 상기 하위 복호화부는 상기 수신한 부호어 및 상기 복호화된 상위 극 부호로부터 하위 극 부호를 추출하여 재 복호화하는 것을 특징으로 하는 극 부호 복호화 장치.
  14. 제13항에 있어서,
    상기 하위 복호화부는,
    상기 수신한 부호어 및 상기 복호화된 상위 극 부호에 기반하여, 복수의 신뢰 경로를 생성하고, 상기 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없고 가장 우도(Likelihood)가 높은 신뢰 경로를 선택하는 것을 특징으로 하는 극 부호 복호화 장치.
  15. 제14항에 있어서,
    상기 외부 복호화부는,
    상기 복수의 신뢰 경로의 집합인 리스트 중에서 오류가 없는 신뢰 경로가 없으면, 복호화를 실패로 종료하는 것을 특징으로 하는 극 부호 복호화 장치.
  16. 제11항에 있어서,
    상기 외부 복호화부는,
    상기 복호화된 상위 극 부호에 포함된 오류 정정 부호 및 상기 복호화된 하위 극 부호에 포함된 오류 정정 부호를 이용하여 오류를 각각 검사하고, 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하고, 상기 복호화된 상위 극 부호에 대하여 오류가 검출되면 복호화를 중단하는 것을 특징으로 하는 극 부호 복호화 장치.
  17. 제16항에 있어서,
    상기 외부 복호화부가 상기 복호화된 하위 극 부호에 대하여 오류를 검출하면, 상기 하위 복호화부는 상기 수신한 부호어 및 상기 복호화된 상위 극 부호로부터 하위 극 부호를 추출하여 재 복호화하는 것을 특징으로 하는 극 부호 복호화 장치.
  18. 프로세서에 의해 실행 가능한 컴퓨터 프로그램 명령어들을 포함하는 비일시적(Non-Transitory) 컴퓨터 판독 가능한 기록매체에 기록된 극 부호(Polar Code) 복호화를 위한 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램 명령어들이 컴퓨팅 디바이스의 프로세서에 의해 실행되는 경우에,
    통신 채널을 통하여 순환 중복 검사(Cyclic Redundancy Check, CRC) 부호를 사용하는 오류 정정 부호를 연접한 극 부호를 포함한 부호어를 수신하는 단계;
    상기 수신한 부호어로부터 상위 극 부호(Upper Polar Code)를 추출하여 복호화하고, 상기 수신한 부호어로부터 하위 극 부호(Lower Polar Code)를 추출하여 복호화하여, 상기 수신한 부호어를 병렬적으로 복호화하는 제1 복호화 단계; 및
    상기 복호화된 상위 극 부호에 포함된 오류 정정 부호 및 상기 복호화된 하위 극 부호에 포함된 오류 정정 부호를 이용하여 오류를 검사하고 상기 오류가 검출되지 않으면 복호화를 성공적으로 종료하는 오류 검사 단계
    를 포함한 동작들을 수행하는 비일시적 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020170085808A 2017-07-06 2017-07-06 극 부호의 병렬 복호화 방법 및 장치 KR101874537B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170085808A KR101874537B1 (ko) 2017-07-06 2017-07-06 극 부호의 병렬 복호화 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170085808A KR101874537B1 (ko) 2017-07-06 2017-07-06 극 부호의 병렬 복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
KR101874537B1 true KR101874537B1 (ko) 2018-07-04

Family

ID=62912656

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170085808A KR101874537B1 (ko) 2017-07-06 2017-07-06 극 부호의 병렬 복호화 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101874537B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200044523A (ko) * 2018-10-19 2020-04-29 삼성전자주식회사 경로 메트릭을 이용하여 입력 데이터를 디코딩하는 장치 및 이를 이용하는 디코딩 방법
WO2021185380A1 (en) 2020-03-20 2021-09-23 Huawei Technologies Co., Ltd. Method, system, and apparatus for a segmented polarization-adjusted convolutional (pac) code
KR20220105388A (ko) 2021-01-20 2022-07-27 아주대학교산학협력단 오류 정정 부호 삽입 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101643976B1 (ko) 2011-10-27 2016-08-10 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 낮은 복잡성 및 전력 효율적인 오류 정정 코딩 방식

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101643976B1 (ko) 2011-10-27 2016-08-10 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 낮은 복잡성 및 전력 효율적인 오류 정정 코딩 방식

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200044523A (ko) * 2018-10-19 2020-04-29 삼성전자주식회사 경로 메트릭을 이용하여 입력 데이터를 디코딩하는 장치 및 이를 이용하는 디코딩 방법
KR102632560B1 (ko) 2018-10-19 2024-02-02 삼성전자주식회사 경로 메트릭을 이용하여 입력 데이터를 디코딩하는 장치 및 이를 이용하는 디코딩 방법
WO2021185380A1 (en) 2020-03-20 2021-09-23 Huawei Technologies Co., Ltd. Method, system, and apparatus for a segmented polarization-adjusted convolutional (pac) code
EP4122130A4 (en) * 2020-03-20 2023-05-03 Huawei Technologies Co., Ltd. METHOD, SYSTEM AND APPARATUS FOR A POLARIZATION ADJUSTED CONVOLUTIONAL SEGMENTED (PAC) CODE
KR20220105388A (ko) 2021-01-20 2022-07-27 아주대학교산학협력단 오류 정정 부호 삽입 방법 및 장치
US11632134B2 (en) 2021-01-20 2023-04-18 Ajou University Industry-Academic Cooperation Foundation Method and apparatus for inserting error correction code

Similar Documents

Publication Publication Date Title
CN109196800B (zh) 一般化极化码构建
KR102601215B1 (ko) 폴라 코딩 장치
KR102349209B1 (ko) 멀티-스테이지 소프트 입력 디코딩을 위한 방법 및 시스템
KR101216735B1 (ko) 프로덕트 부호의 복호 방법 및 장치
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
US11171741B2 (en) Polar code transmission method and apparatus
KR101874537B1 (ko) 극 부호의 병렬 복호화 방법 및 장치
US7990290B1 (en) Efficient rateless distributed compression of non-binary sources
EP3713096B1 (en) Method and device for decoding staircase code, and storage medium
US20070168835A1 (en) Serial communications system and method
KR20230079159A (ko) 외부 블록 코드 및 내부 편극 조정 컨볼루션 코드가 있는 직렬 연접 코드
WO2018146552A1 (en) Crc aided decoding of polar codes
CN109644006B (zh) 编码数据和解码数据的装置及方法
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
CN114073024B (zh) 极性码的卷积预编码和解码
US8397150B1 (en) Method, apparatus and computer program for calculating a branch metric
US8375269B2 (en) Data transmission system and method of correcting an error in parallel data paths of a data transmission system
US8365053B2 (en) Encoding and decoding data using store and exclusive or operations
KR20100008849A (ko) 통신 시스템에서 순환중복검사 방법 및 장치
KR101856417B1 (ko) 극 부호­crc 연접 부호를 이용한 병렬 연속 제거 극 부호화-복호화 방법 및 장치
US20140040675A1 (en) Data processing method and apparatus
EP3737013B1 (en) Encoding method, decoding method and device
KR102111678B1 (ko) 인터리버를 이용한 극 부호 장치, 극 부호의 반복 복호 장치 및 이를 이용한 부호 방법과 복호 방법
RU2485683C1 (ru) Устройство декодирования с мягкими решениями для двухступенчатого каскадного кода
US8745465B1 (en) Detecting a burst error in the frames of a block of data bits

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant