KR20190052054A - 극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치 - Google Patents

극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20190052054A
KR20190052054A KR1020197010149A KR20197010149A KR20190052054A KR 20190052054 A KR20190052054 A KR 20190052054A KR 1020197010149 A KR1020197010149 A KR 1020197010149A KR 20197010149 A KR20197010149 A KR 20197010149A KR 20190052054 A KR20190052054 A KR 20190052054A
Authority
KR
South Korea
Prior art keywords
subchannels
bits
weight
sub
subchannel
Prior art date
Application number
KR1020197010149A
Other languages
English (en)
Other versions
KR102199298B1 (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20190052054A publication Critical patent/KR20190052054A/ko
Application granted granted Critical
Publication of KR102199298B1 publication Critical patent/KR102199298B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • 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/11Error 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 using multiple parity 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/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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • H04L1/0063Single parity check
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes

Abstract

실시예 기법들은 패리티 비트들을 그들의 행 가중치들에 기초하여 서브채널들에 매핑한다. 서브채널에 대한 행 가중치는 크로네커 행렬의 대응하는 행 내의 "1들"의 수로서 또는 (아래 추가로 설명되는) 서브채널 인덱스의 이진 표현 내의 "1들"의 수인 지수(즉, 해밍 가중치)를 갖는 2의 거듭제곱으로서 보여질 수 있다. 일 실시예에서, 특정 행 가중치 값들을 갖는 후보 서브채널들이 패리티 비트(들)에 대해 예약된다. 그 후, K 정보 비트들이 K 가장 신뢰성 있는 나머지 서브채널들에 매핑될 수 있고, 다수의 동결된 비트들(예를 들어, N-K)이 가장 덜 신뢰성 있는 나머지 서브채널들에 매핑될 수 있다. 패리티 비트들은 이어서 후보 서브채널들에 매핑될 수 있고, 패리티 비트 값들은 정보 비트들의 함수에 기초하여 결정된다.

Description

극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치
본 특허 출원은 2016년 9월 15일자로 출원되고 발명의 명칭이 "Method and device for assigning dynamic frozen bits and constructing a Parity Function on them in a Polar code"인 미국 가특허 출원 제62/395,312호, 2016년 9월 19일자로 출원되고 발명의 명칭이 "Method and device for assigning dynamic frozen bits and constructing a Parity Function on them in a Polar code"인 미국 가특허 출원 제62/396,618호, 2016년 9월 30일자로 출원되고 발명의 명칭이 "Method and Device For Parallel Polar Code Encoding/Decoding"인 미국 가특허 출원 제62/402,862호, 2016년 12월 9일자로 출원되고 발명의 명칭이 "Method for Constructing a Parity Check (Pc) Based Polar Code Using a Look-Up-Table"인 미국 가특허 출원 제62/432,448호, 2016년 12월 9일자로 출원되고 발명의 명칭이 "Method and system to parallelize parity check (PC)-Polar-Construction"인 미국 가특허 출원 제62/434,416호, 2016년 12월 13일자로 출원되고 발명의 명칭이 "Method for Constructing a parity check (PC) based Polar Code using a Look-up-Table"인 미국 가특허 출원 제62/433,127호, 및 2017년 9월 8일자로 출원되고 발명의 명칭이 "Method and Apparatus for Encoding Data Using a Polar Code"인 미국 특허 출원 제15/699,976호를 우선권 주장하며, 이 출원들 모두는 그 전체가 재현되는 것처럼 참조에 의해 본 명세서에 포함된다.
기술분야
본 발명은 일반적으로 데이터 전송을 위한 방법 및 장치에 관한 것으로, 특히, 인코딩을 위한 방법 및 장치에 관한 것이다.
극성 코드들은 전체 전송 용량을 개선하기 위해 채널 극성화(channel polarization)를 이용하는 선형 블록 오류 정정 코드들이다. 특히, 극성 코드들은 더 신뢰성 있는 서브채널들(예를 들어, 덜 잡음이 있는 서브채널들)을 통해 정보 비트들을 송신하고, 덜 신뢰성 있는 서브채널들(예를 들어, 더 잡음이 많은 서브채널들)을 통해 고정된(또는 동결된) 비트들을 송신하도록 설계된다. 극성 인코딩(polar encoding)은 "Channel Polarization and Polar codes"이라는 명칭의 학술 논문에 의해 더 상세히 설명되며, 이 학술 논문은 그 전체가 재현되는 것처럼 참조에 의해 본 명세서에 포함된다.
극성화 인코딩(polarization encoding)을 위한 방법 및 장치를 설명하는 본 개시내용의 실시예들에 의해 기술적 이점들이 일반적으로 달성된다.
실시예에 따르면, 극성 코드로 데이터를 인코딩하기 위한 방법이 제공된다. 본 실시예에서, 방법은 디바이스의 인코더에 의해 인코딩된 데이터를 획득하기 위해 정보 비트들 및 적어도 하나의 패리티 비트를 극성 인코딩하는 단계를 포함한다. 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널에 배치된다. 방법은 인코딩된 데이터를 다른 디바이스에 송신하는 단계를 추가로 포함한다. 일 예에서, 가중치 파라미터는 최소 가중치를 포함한다. 이러한 예에서, 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 중 적어도 하나에 또는 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치될 수 있다. 그 동일한 예에서, 또는 다른 예에서, 방법은 순서화된 서브채널들의 세그먼트(segment of ordered sub-channels)로부터, 최소 가중치를 갖는 적어도 하나의 서브채널을 선택하는 단계를 추가로 포함할 수 있다. 최소 가중치를 갖는 적어도 하나의 서브채널은 순서화된 서브채널들의 K 서브채널들의 세그먼트로부터 선택될 수 있고, K 서브채널들 각각은 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들보다 더 높은 신뢰성 메트릭(reliability metric)을 갖고, 여기서 K는 정보 블록 길이이고, N0은 마더 코드 길이(mother code length)이다. 그 동일한 예에서, 또는 다른 예에서, 순서화된 서브채널들의 세그먼트는, 최소 가중치를 갖는 적어도 하나의 서브채널이, K 서브채널들의 세그먼트에서 최소 가중치를 갖는 서브채널들의 수 n이 미리 결정된 값 F보다 큰 경우, K 서브채널들의 세그먼트로부터 선택하는 것을 포함하고, 최소 가중치를 갖는 F 서브채널들은 신뢰성 메트릭의 내림차순으로 되어 있다. 그 예에서, 또는 다른 예에서, 인코더는 패리티 검사 함수를 적용하여, 적어도 하나의 패리티 비트 각각에 대한 값을 결정할 수 있다. 이러한 예에서, 패리티 검사 함수는 소수 패리티 검사 함수(prime number parity check function)일 수 있다. 전술한 예 중 임의의 것에서, 또는 다른 예에서, 방법은 순서화된 서브채널들이 신뢰성 메트릭에 기초하여 순서화되는 것을 추가로 포함한다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 가중치 파라미터는 가장 낮은 행 가중치(row-weight)를 포함할 수 있다. 방법은 서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하는 단계를 추가로 포함할 수 있고, 서브채널의 행 가중치는 크로네커 행렬(Kronecker matrix)의 행 내의 1들의 수이고, 그 행은 서브채널에 대응한다. 이러한 예에서, K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하는 것은 K 가장 신뢰성 있는 서브채널들 중에서 가장 낮은 행 가중치를 갖는 서브채널들의 수가 미리 결정된 수 Fp보다 큰 경우에 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 Fp 서브채널들을 선택하는 것을 포함할 수 있다. 그 동일한 예에서, 또는 다른 예에서, 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택될 수 있다. 그 동일한 예에서, 또는 다른 예에서, 방법은, 정보 비트들에 대해 선택된 서브채널들의 수가 K에 도달할 때까지, 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널을 스킵함으로써, 서브채널들의 순서화된 시퀀스에서 정보 비트들에 대한 서브채널들을 선택하는 단계를 추가로 포함할 수 있다. 이러한 방법을 수행하기 위한 장치가 또한 제공된다.
또 다른 실시예에 따르면, 극성 코드로 데이터를 인코딩하도록 구성되는 디바이스가 제공된다. 이 실시예에서, 디바이스는 정보 비트들 및 적어도 하나의 패리티 비트를 극성 인코딩하여 인코딩된 데이터를 획득하도록 구성되는 인코더를 포함한다. 적어도 하나의 패리티 비트는 인코딩된 데이터를 다른 디바이스에 전송하도록 구성되는 인터페이스 및 가중치 파라미터에 기초하여 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널에 배치된다. 전술한 인코딩 실시예들 중 임의의 것의 일 예에서, 가중치 파라미터는 최소 가중치를 포함한다. 이러한 예에서, 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 중 적어도 하나에 또는 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치될 수 있다. 그 동일한 예, 또는 다른 예에서, 인코더는 순서화된 서브채널들의 세그먼트로부터, 최소 가중치를 갖는 적어도 하나의 서브채널을 선택하도록 추가로 구성될 수 있다. 그 동일한 예, 또는 다른 예에서, 최소 가중치를 갖는 적어도 하나의 서브채널은 순서화된 서브채널들의 K 서브채널들의 세그먼트로부터 선택될 수 있고, K 서브채널들 각각은 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들보다 더 높은 신뢰성 메트릭을 갖고, 여기서 K는 정보 블록 길이이고, N0는 마더 코드 길이이다. 그 동일한 예, 또는 다른 예에서, 디바이스/인코더는 순서화된 서브채널들의 세그먼트로부터 최소 가중치를 갖는 적어도 하나의 서브채널을 선택하고, K 서브채널들의 세그먼트에서 최소 가중치를 갖는 서브채널들의 수가 미리 결정된 값 F보다 큰 경우에 K 서브채널들의 세그먼트로부터 신뢰성 메트릭의 내림차순으로 된 최소 가중치를 갖는 F 서브채널들을 선택할 수 있다. 그 예에서, 또는 다른 예에서, 인코더는 패리티 검사 함수를 적용하여 적어도 하나의 패리티 비트 각각에 대한 값을 결정하도록 추가로 구성될 수 있다. 이러한 예에서, 패리티 검사 함수는 소수 패리티 검사 함수일 수 있다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 디바이스 순서화된 서브채널들은 신뢰성 메트릭에 기초하여 순서화될 수 있다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 가중치 파라미터는 가장 낮은 행 가중치를 포함할 수 있고, 인코더는 서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하도록 추가로 구성될 수 있다. 서브채널의 행 가중치는 크로네커 행렬의 행 내의 1들의 수이다. 행은 서브채널에 대응할 수 있다. 이러한 예에서, 디바이스는 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택할 수 있다. 인코더는 K 가장 신뢰성 있는 서브채널들 중에서 가장 낮은 행 가중치를 갖는 서브채널들의 수 n이 미리 결정된 수 Fp보다 클 때에 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 Fp 서브채널들을 선택하도록 추가로 구성될 수 있다. 그 동일한 예, 또는 다른 예에서, 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택될 수 있다. 그 동일한 예, 또는 다른 예에서, 인코더는, 정보 비트들에 대해 선택된 서브채널들의 수가 K에 도달할 때까지, 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널을 스킵함으로써, 서브채널들의 순서화된 시퀀스에서 정보 비트들에 대한 서브채널들을 선택하도록 추가로 구성될 수 있다.
또 다른 실시예에 따르면, 데이터를 인코딩하기 위한 다른 방법이 제공된다. 이 실시예에서, 방법은 서브채널들의 세트의 서브세트에서 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대해 하나 이상의 서브채널을 할당하는 단계, 및 하나 이상의 패리티 비트에 대해 할당된 하나 이상의 서브채널에 정보 비트들을 매핑하지 않고 나머지 서브채널들의 신뢰성에 기초하여 서브채널들의 세트에서 나머지 서브채널들에 정보 비트들을 매핑하는 단계를 포함한다. 방법은 극성 코드를 이용하여 정보 비트들 및 하나 이상의 패리티 비트를 인코딩하여 인코딩된 비트 스트림을 획득하고 인코딩된 비트 스트림을 전송하는 단계를 추가로 포함할 수 있다. 위의 인코딩 실시예들 중 임의의 것의 일 예에서, 서브채널에 대한 행 가중치는 크로네커 행렬의 행 내의 1들의 수를 나타내고, 행은 서브채널에 대응한다. 그 예에서, 또는 다른 예에서, 행 가중치들은 적어도 최소 행 가중치를 포함할 수 있다. 이러한 예에서, 방법은 서브채널들의 세트의 서브세트에서 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대해 하나 이상의 서브채널을 할당하는 단계, 및 하나 이상의 패리티 비트들에 대해, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 서브채널들의 수를 할당하는 단계를 포함할 수 있다. 그 동일한 예, 또는 다른 예에서, 할당된 서브채널들의 수는 하나일 수 있고, 세트에서의 서브채널들은 그것들의 신뢰성들에 기초하여 순서화되어 서브채널들의 순서화된 시퀀스를 형성할 수 있으며, 서브채널들의 서브세트는 순서화된 시퀀스에서의 서브채널들의 가장 신뢰성 있는 서브세트를 포함한다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 가장 신뢰성 있는 서브세트는 정보 비트들을 운반하기 위한 K 서브채널들을 포함할 수 있다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 가장 신뢰성 있는 서브세트는 K+FP 서브채널들을 포함할 수 있고, 여기서 K는 정보 비트들과 연관된 정보 블록 길이이고, Fp는 하나 이상의 패리티 비트의 수를 나타낸다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 가장 신뢰성 있는 서브채널이 하나 이상의 패리티 비트에 대해 할당될 수 있다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 하나 이상의 패리티 비트는 하나 이상의 패리티 검사(PC) 비트를 포함할 수 있다. 이러한 예에서, 극성 코드를 이용하여 정보 비트들 및 하나 이상의 PC 비트를 인코딩하여 인코딩된 비트 스트림을 획득하는 것은 정보 비트들의 값들의 함수로서 하나 이상의 PC 비트에 대한 하나 이상의 값을 결정하는 것, 및 PC 비트들에 대해 할당된 적어도 하나 이상의 서브채널에 하나 이상의 PC 비트를 매핑하는 것을 포함할 수 있다.
또 다른 실시예에 따르면, 극성 코드로 데이터를 인코딩하기 위한 장치가 제공된다. 이 실시예에서, 디바이스는 서브채널들의 세트의 서브세트에서의 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대해 하나 이상의 서브채널을 할당하고, 하나 이상의 패리티 비트에 대해 할당된 하나 이상의 서브채널에 정보 비트들을 매핑하지 않고 나머지 서브채널들의 신뢰성에 기초하여 서브채널들의 세트에서의 나머지 서브채널들에 정보 비트들을 매핑하도록 구성된다. 디바이스는 극성 코드를 이용하여 정보 비트들 및 하나 이상의 패리티 비트를 인코딩하여 인코딩된 비트 스트림을 획득하고; 인코딩된 비트 스트림을 전송하도록 추가로 구성된다. 위의 인코딩 실시예들 중 임의의 것의 일 예에서, 서브채널에 대한 행 가중치는 크로네커 행렬의 행 내의 1들의 수를 나타내고, 행은 서브채널에 대응한다. 그 예에서, 또는 다른 예에서, 행 가중치들은 적어도 최소 행 가중치를 포함한다. 그러한 예에서, 또는 다른 예에서, 디바이스는 서브채널들의 세트의 서브세트에서의 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대해 하나 이상의 서브채널을 할당할 수 있다. 디바이스는 하나 이상의 패리티 비트에 대해, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 서브채널들의 수를 할당하도록 추가로 구성될 수 있다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 할당된 서브채널들의 수는 하나일 수 있고, 세트에서의 서브채널들은 그것들의 신뢰성들에 기초하여 순서화되어 서브채널들의 순서화된 시퀀스를 형성할 수 있고, 여기서 서브채널들의 서브세트는 순서화된 시퀀스에서의 서브채널들의 가장 신뢰성 있는 서브세트를 포함한다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 서브채널들의 가장 신뢰성 있는 서브세트는 정보 비트들을 운반하기 위한 K 서브채널들을 포함할 수 있고, 서브채널들의 가장 신뢰성 있는 서브세트는 K+FP 서브채널들을 포함하고, 여기서 K는 정보 비트들과 연관된 정보 블록 길이이고, Fp는 하나 이상의 패리티 비트의 수를 나타낸다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 가장 신뢰성 있는 서브채널이 하나 이상의 패리티 비트에 대해 할당된다. 그 동일한 예, 또는 다른 예에서, 하나 이상의 패리티 비트는 하나 이상의 패리티 검사(PC) 비트를 포함한다.
또 다른 실시예에 따르면, 디바이스의 디코딩 방법이 제공된다. 이 실시예에서, 방법은 인코딩된 데이터에 기초하여 신호를 다른 디바이스로부터 수신하는 단계를 포함하고, 인코딩된 데이터는 정보 비트들 및 적어도 하나의 패리티 비트를 극성 코드로 인코딩함으로써 생성된다. 이 실시예에서, 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 선택된 적어도 하나의 서브채널에 배치된다. 방법은 또한 디바이스의 디코더에 의해, 극성 코드 및 적어도 하나의 패리티 비트를 이용하여 신호를 디코딩하여 정보 비트들을 획득하는 단계를 포함한다.
일 예에서, 가중치 파라미터는 최소 가중치를 포함한다. 이러한 예에서, 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 중 적어도 하나에 또는 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치될 수 있다. 그 동일한 예에서, 또는 다른 예에서, 선택된 적어도 하나의 서브채널은 최소 가중치를 가지며, 적어도 하나의 서브채널은 순서화된 서브채널들의 세그먼트로부터 선택된다. 최소 가중치를 갖는 적어도 하나의 서브채널은 순서화된 서브채널들의 K 서브채널들의 세그먼트로부터 선택될 수 있으며, K 서브채널들 각각은 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들보다 높은 신뢰성 메트릭을 갖고, K는 정보 블록 길이이고, N0은 마더 코드 길이이다. 그 예에서, 또는 다른 예에서, 적어도 하나의 패리티 비트 각각의 값은 패리티 검사 함수에 기초한다. 이러한 예에서, 패리티 검사 함수는 소수 패리티 검사 함수일 수 있다. 전술한 예 중 임의의 것에서, 또는 다른 예에서, 순서화된 서브채널들은 신뢰성 메트릭에 기초하여 순서화된다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 가중치 파라미터는 가장 낮은 행 가중치를 포함할 수 있고, 선택된 적어도 하나의 서브채널은 서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖고, 서브채널의 행 가중치는 크로네커 행렬의 행 내의 1들의 수이고, 행은 서브채널에 대응한다. 이러한 예에서. 그 동일한 예, 또는 다른 예에서, 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택된다. 그 동일한 예, 또는 다른 예에서, 정보 비트들에 대한 서브채널들은, 정보 비트들에 대해 선택된 서브채널들의 수가 K에 도달할 때까지, 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널을 스킵함으로써, 서브채널들의 순서화된 시퀀스에서 선택된다. 이러한 방법을 수행하기 위한 장치가 또한 제공된다.
또 다른 실시예에 따르면, 디바이스의 디코딩 방법이 제공된다. 이 실시예에서, 방법은 인코딩된 비트 스트림에 기초하여 신호를 다른 디바이스로부터 수신하는 단계를 포함하고, 인코딩된 비트 스트림은 정보 비트들 및 하나 이상의 패리티 비트를 극성 코드로 인코딩함으로써 생성된다. 하나 이상의 패리티 비트는 서브채널들의 세트의 서브세트에서 서브채널들에 대한 행 가중치들에 기초하여 할당된 하나 이상의 서브채널에 매핑되고, 정보 비트들은 나머지 서브채널들의 신뢰성에 기초하여 서브채널들의 세트에서의 나머지 서브채널들에 매핑된다. 방법은 또한 극성 코드 및 하나 이상의 패리티 비트를 이용하여 신호를 디코딩하여 정보 비트들을 획득하는 단계를 포함한다.
위의 디코딩 실시예들 중 임의의 것의 일 예에서, 서브채널에 대한 행 가중치는 크로네커 행렬의 행 내의 1들의 수를 나타내고, 행은 서브채널에 대응한다. 그 예에서, 또는 다른 예에서, 행 가중치들은 적어도 최소 행 가중치를 포함할 수 있다. 이러한 예에서, 하나 이상의 서브채널은 서브채널들의 세트의 서브세트에서의 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대해 할당된다. 다른 예에서, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 서브채널들의 수가 하나 이상의 패리티 비트에 대해 할당된다. 그 동일한 예, 또는 다른 예에서, 할당된 서브채널들의 수는 하나일 수 있고, 세트에서의 서브채널들은 그것들의 신뢰성들에 기초하여 순서화되어 서브채널들의 순서화된 시퀀스를 형성할 수 있으며, 서브채널들의 서브세트는 순서화된 시퀀스에서의 서브채널들의 가장 신뢰성 있는 서브세트를 포함한다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 가장 신뢰성 있는 서브세트는 정보 비트들을 운반하기 위한 K 서브채널들을 포함할 수 있다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 가장 신뢰성 있는 서브세트는 K+FP 서브채널들을 포함할 수 있고, 여기서 K는 정보 비트들과 연관된 정보 블록 길이이고, Fp는 하나 이상의 패리티 비트의 수를 나타낸다. 그 동일한 예, 또는 다른 예에서, 서브채널들의 서브세트에서 최소 행 가중치와 동일한 행 가중치를 갖는 가장 신뢰성 있는 서브채널이 하나 이상의 패리티 비트에 대해 할당될 수 있다. 전술한 예들 중 임의의 것에서, 또는 다른 예에서, 하나 이상의 패리티 비트는 하나 이상의 패리티 검사(PC) 비트를 포함할 수 있다. 그러한 예 또는 다른 예에서, 하나 이상의 PC 비트에 대한 하나 이상의 값은 정보 비트들의 값들의 함수이다.
본 개시내용 및 그 장점들에 대한 더욱 완벽한 이해를 위해, 이제 첨부 도면들과 함께 취해지는 다음의 설명에 대한 참조가 이루어진다.
도 1은 극성 코딩 생성기 행렬(polar coding generator matrix)이 커널로부터 생성될 수 있는 방법의 일 예를 도시하는 도면이다.
도 2는 코드워드들을 생성하기 위한 극성 코딩 생성기 행렬의 예시적인 사용 및 예시적인 극성 인코더의 개략적 예시를 도시하는 도면이다.
도 3은 그 폭이 최대 주어진 리스트 크기에 의해 제한되고 SCL(Successive Cancellation List) 극성 디코더에서 사용되는 예시적인 판정 리스트 트리의 일부를 도시하는 도면이다.
도 4는 2×2 커널(2-by-2 kernel)에 기초한 극성 인코더의 예를 예시하는 블록도이다.
도 5a 내지 도 5g는 패리티 검사(PC) 비트들을 예약(reserve)하기 위한 후보 서브채널들을 선택하기 위해 행 가중치들이 계산되고 사용되는 방법을 설명하는 표들이다.
도 6a 내지 도 6g는 패리티 검사(PC) 비트들을 예약하기 위한 후보 서브채널들을 선택하기 위해 해밍 가중치들(hamming weights)이 사용되는 방법을 설명하는 표들이다.
도 7은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법의 흐름도이다.
도 8은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법의 흐름도이다.
도 9는 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법의 흐름도이다.
도 10은 통신 시스템의 블록도이다.
도 11은 극성 인코딩 동안 동결된 비트들(frozen bits)을 선택하는 실시예 방법의 흐름도이다.
도 12는 극성 인코더/디코더에 구현된 레지스터의 블록도이다.
도 13a 내지 도 13d는 상이한 극성 코드들에 의해 달성되는 블록 에러 레이트(block error rate)(BLER)들의 그래프들이다.
도 14a 및 도 14b는 데이터 스트림들을 인코딩하기 위해 상이한 극성 코드들을 사용할 때 달성되는 추정된 잡음 레벨들의 그래프이다.
도 15는 일 실시예의 무선 디바이스의 블록도이다.
도 16은 PC 비트(들)에 대해 예약될 서브채널들을 식별하기 위해 병렬 비교 연산들을 사용하기 위한 일 실시예의 기술의 도면이다.
도 17은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법의 흐름도이다.
도 18은 정보 비트들의 시퀀스를 인코딩하기 위한 다른 실시예의 방법의 흐름도이다.
도 19는 정보 비트들의 시퀀스를 인코딩하기 위한 다른 실시예의 방법의 흐름도이다.
도 20은 다른 실시예의 인코더의 도면이다.
도 21은 서브채널들의 순서화된 시퀀스의 도면이다.
도 22는 패리티 검사 디코더에 의해 사용되는 일 실시예의 사이클 시프트 레지스터 동작의 도면이다.
도 23은 패리티 검사 함수의 도면이다.
도 24는 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법의 흐름도이다.
도 25는 일 실시예의 처리 시스템의 블록도이다.
도 26은 일 실시예의 송수신기의 블록도이다.
실시예들의 제작 및 사용이 상세하게 하기에 논의되어 있다. 그러나, 본 개시내용은 매우 다양한 구체적인 맥락들에서 구현될 수 있는 많은 적용 가능한 발명 개념들을 제공한다는 점이 이해되어야 한다. 논의되는 구체적인 실시예들은 단지 본 발명을 제조하고 사용하기 위한 구체적인 방식들의 예시일 뿐이고, 본 발명의 범위를 제한하는 것은 아니다.
패리티 비트들은 디코딩을 돕기 위해 극성 인코딩 동안 정보 비트들의 스트링에 추가되고 수신기에서의 에러 검출 또는 정정을 용이하게 할 수 있다. 용어들 "패리티 검사(PC) 비트들", "패리티 비트들" 및 동적 동결된 비트들(dynamic frozen bits)은 본 개시내용 전체에 걸쳐 교환 가능하게 사용된다. 본 개시내용의 대부분은 패리티 비트들의 맥락에서 본 발명의 실시예들을 논의하지만, 패리티 비트들은 특정 타입의 보조 비트이고, 본 명세서에 개시된 원리들은 다른 타입들의 보조 비트들, 예를 들어, 다른 에러 정정 비트들, 또는 CRC(Cyclic Redundancy Check) 비트들, 체크섬 비트들, 해시 함수 비트들, 암호 코드들, 반복 코드들, 또는 에러 검출 비트들 또는 코드들과 같은 코드들을 이용하여 적용될 수 있다는 점이 이해되어야 한다. 일부 실시예들에서, 파티 비트들은 패리티 검사(PC) 동결된 비트들(또는 줄여서 "PF 비트들")로서 지칭된다.
극성 인코딩 동안 (P) 패리티 비트들을 삽입할 때 발생하는 하나의 문제는 패리티 비트들을 송신할 서브채널(들)(N 서브채널들 중에서)을 선택하는 방법이다. 극성 인코딩 동안 패리티 비트들을 처리하기 위한 하나의 옵션은 인코딩될 (K) 정보 비트들(다른 보조 비트들을 또한 포함할 수 있음)을 가장 신뢰성 있는 서브채널들에 매핑하고 나서, 정보 비트들을 가장 신뢰성 있는 서브채널들에 매핑한 후에 이용가능한 다음으로 가장 신뢰성 있는 서브채널(들)에 패리티 비트(들)를 매핑하는 것이다. 다른 옵션은 패리티 비트(들)를 가장 신뢰성 있는 서브채널(들)에 매핑하고 나서, 패리티 비트(들)를 가장 신뢰성 있는 서브채널들에 매핑한 후에 이용가능한 다음으로 가장 신뢰성 있는 서브채널들에 정보 비트들을 매핑하는 것이다.
시뮬레이션들은 이들 2개의 옵션이 일반적으로 그들의 행 가중치들에 기초하여 패리티 비트들을 서브채널들에 매핑하는 실시예 기법들보다 더 낮은 성능 레벨들을 제공한다는 것을 보여주었다. 서브채널에 대한 행 가중치는 크로네커 행렬의 대응하는 행 내의 "1들"의 수로 또는 (아래 추가로 설명되는) 서브채널 인덱스의 이진 표현 내의 "1들"의 수인 지수(즉, 해밍 가중치)를 갖는 2의 거듭제곱으로 볼 수 있다. 일 실시예에서, 특정 행 가중치 값들(예를 들어, 최소 행 가중치 - wmin 또는 최소 행 가중치의 2배 2*wmin)을 갖는 후보 서브채널들이 패리티 비트(들)에 대해 설정되고 사용된다. 아래에 제공된 행 가중치들을 계산하기 위한 설명들에 기초하여 이해될 수 있는 바와 같이, 패리티 비트(들)에 대해 예약되는 후보 서브채널들은 반드시 가장 신뢰성 있는 서브채널들이 아니다. 후보 서브채널들이 식별된 후에, K 정보 비트들은 K 가장 신뢰성 있는 나머지 서브채널들에 매핑되고, 다수의 동결된 비트들(예를 들어, N-K)이 가장 덜 신뢰성 있는 나머지 서브채널들(the least reliable remaining sub-channels)에 매핑된다. 패리티 비트들은 후보 서브채널들에 매핑되고, 패리티 비트 값들은 정보 비트들의 함수에 기초하여 결정된다.
서브채널에 대한 행 가중치를 결정하는 많은 방법이 있다. 일 실시예에서, 행 가중치는 서브채널과 연관된 채널 인덱스의 해밍 가중치의 함수로서 계산될 수 있다. 해밍 가중치는 채널 인덱스를 나타내는 이진 시퀀스 내의 비-제로 요소들의 수이다. 일 예에서, 서브채널들(N)은 그들의 채널 신뢰성에 기초하여 순서화된 시퀀스(Q)로 정렬되고, 그에 따라서 순서화된 시퀀스(Q)는 그들의 신뢰성에 기초하여 오름차순으로(Q0, Q1, … QN) 서브채널들을 열거한다(QN는 가장 신뢰성 있는 서브채널임). 그 다음, 본 개시내용 전체에 걸쳐 wmin 또는 dmin로서 교환 가능하게 표시되는 최소 행 가중치 값은, 예를 들어, K 정보 비트들에 사용되는 가장 신뢰성 있는 K 서브세트(예를 들어, Q(N-K+1) … QN) 또는 K 정보 비트들 및 P 패리티 비트들에 사용되는 가장 신뢰성 있는 (K+P) 서브세트(예를 들어, Q(N-K-P) … QN)와 같은 가장 신뢰성 있는 채널들의 서브세트의 행 가중치들에 기초하여 식별될 수 있다. 그 다음, 그 가장 신뢰성 있는 서브세트 내의 최소 행 가중치는 패리티 비트들에 대한 서브채널들을 예약하는 데 사용될 수 있다.
일부 실시예들에서, wmin 파라미터를 동적으로 계산하는 프로세스가 인코딩 연산에 대한 레이턴시를 추가한다면, wmin 파라미터를 식별하기 위해 룩업 테이블(LUT)이 이용될 수 있다.
특히, LUT-기반 기술들은 극성 인코딩 동안 사용될 수 있는 정보 블록 길이들(K) 및 마더 코드 길이들(M)의 잠재적 조합들의 함수로서 가능한 wmin 파라미터들을 계산함으로써 오프라인으로 룩업 테이블을 생성한다. 그 다음, 룩업 테이블은 온라인 극성 인코딩 동안 wmin 파라미터를 결정하는 데 사용된다. 표 1은 코드 파라미터들을 결정하는 데 사용될 수 있는 룩업 테이블의 예를 제공하는데, 이는 wmin 파라미터, 및 패리티 비트들에 대해 예약될 후보 서브채널들의 수를 결정하는 데 사용되는 인덱스들(f 1 ,f 2 )을 포함한다(하기 추가 세부 사항 참조).
Figure pct00001
온라인 극성 인코딩 동안 wmin 파라미터를 식별하는 데 요구되는 시간은, 더 큰 테이블들이 통상적으로 더 긴 검색 시간들을 요구하므로, 룩업 테이블의 크기에 의해 크게 영향을 받는다. 그 결과, 인코더의 레이턴시 요건들은 룩업 테이블에서 이용가능한 인코딩 조합들의 입도(granularity)를 제약할 수 있고, 그에 의해 코딩 성능에 영향을 미칠 수 있다.
본 개시내용의 다른 실시예들은 최소 해밍 가중치(umin) 파라미터에 기초하여 패리티 비트들에 대한 서브채널들을 예약하거나 할당하는 낮은 레이턴시 기술들을 제공하며, 그에 의해 행 가중치들의 계산을 회피한다. 전술한 바와 같이, 행 가중치들은 해밍 가중치들의 함수로서 계산될 수 있다. 일 예에서, 수학식:
Figure pct00002
에 기초하고, 여기서 rw는 주어진 서브채널에 대한 행 가중치이고, hw는 주어진 서브채널에 대한 채널 인덱스의 이진 표현의 해밍 가중치이다. 심볼들 "hw" 및 "u"는 해밍 가중치를 지칭하기 위해 본 명세서에서 교환 가능하게 사용된다. 이로부터, 가장 낮은 해밍 가중치와 연관된 서브채널은 또한 가장 낮은 행 가중치를 가질 것이라는 것이 명백하다. 따라서, 가장 신뢰성 있는 채널들의 서브세트(예를 들어, Q(N-(K+Fp)), … QN)에서의 서브채널들과 연관된 해밍 가중치들에 기초하여 최소 해밍 가중치(umin)를 식별하고, 이후 최소 해밍 가중치를 사용하여 패리티 비트들에 대한 서브채널들을 예약하는 것이 가능하다.
이하에서 논의되는 바와 같이, 패리티 비트들에 대한 서브채널들을 예약하기 위해, wmin와 함께 최소 행 가중치 값의 2배(2*wmin)가 때때로 사용된다. 예를 들어, wmin와 동일한 행 가중치를 갖는 제1 개수의 가장 신뢰성 있는 서브채널들(예를 들어, f1)이 패리티 비트들에 대해 예약될 수 있고, 2*wmin와 동일한 행 가중치를 갖는 제2 개수의 가장 신뢰성 있는 서브채널들(예를 들어, f2)이 패리티 비트들에 대해 예약될 수 있다. 식:
Figure pct00003
으로부터, 2*wmin 파라미터는 1 더하기 최소 해밍 가중치에 대응한다는 것이 명백하다. 따라서, 본 개시내용의 실시예들은 패리티 비트들에 대한 최소 해밍 가중치와 동일한 해밍 가중치를 갖는 제1 개수의 가장 신뢰성 있는 서브채널들, 및 패리티 비트들에 대한 최소 해밍 가중치 더하기 1과 동일한 해밍 가중치를 갖는 제2 개수의 가장 신뢰성 있는 서브채널들을 예약할 수 있다.
후속하여 이하에서 더욱 상세히 설명되는 본 개시내용의 이들 및 다른 발명적 양태들을 이해하는 것을 돕기 위해 극성 코딩에 대한 간략한 논의가 하기에 제공된다. 도 1은 예시적인 예로서, 커널 G 2 (100)로부터 극성 코딩 생성기 행렬이 생성될 수 있는 방법을 도시하는 도면이다. 도 1은 예라는 점에 유의한다. 다른 형태의 커널도 가능하다. 극성화는 생성기 행렬이 커널(또는 커널들의 조합)로부터 생성되는 "네스팅된(nested)" 방식으로부터 나온다.
도 1의 2-폴드 크로네커 곱 행렬
Figure pct00004
(102) 및 3-폴드 크로네커 곱 행렬
Figure pct00005
(104)은 극성 코딩 생성기 행렬들의 예들이다. 도 1에 도시된 생성기 행렬 접근법은 m-폴드 크로네커 곱 행렬
Figure pct00006
을 생성하기 위해 확장될 수 있다.
극성 코드는 행렬 G 2 (100)에 기초한 크로네커 곱 행렬로부터 형성될 수 있다. 길이 N = 2m의 코드워드들을 갖는 극성 코드에 대해, 생성기 행렬은
Figure pct00007
이다. 도 2는 코드워드들을 생성하기 위한 극성 코딩 생성기 행렬의 예시적인 사용 및 예시적인 극성 인코더의 개략적 예시를 도시하는 도면이다. 도 2에서, 생성기 행렬
Figure pct00008
(104)이 길이 23= 8의 코드워드들을 생성하는 데 사용된다. 코드워드 <x는 200으로 표시된 바와 같이 입력 벡터
Figure pct00009
와 생성기 행렬
Figure pct00010
(104)의 곱에 의해 형성된다. 입력 벡터 u는 정보 비트들 및 고정 또는 동결된 비트들로 구성된다. 도 2에 도시된 특정 예에서, N=8이고, 따라서 입력 벡터 u는 8 비트 벡터이고, 코드워드 x는 8 비트 벡터이다. 입력 벡터는 위치 0, 1, 2 및 4에서 동결된 비트들을 가지며, 위치 3, 5, 6 및 7에서 정보 비트들을 갖는다. 코드워드들을 생성하는 인코더의 예시적인 구현은 212로 표시되고, 동결된 비트들은 모두 0으로 설정되고, 원으로 둘러싼 "+" 심볼들은 모듈로 2 덧셈(modulo 2 addition)을 나타낸다. 도 2의 예에 대해, N=8 비트 입력 벡터는 K=4 정보 비트들 및 N-K=4 동결된 비트들로부터 형성된다. 이 형태의 코드들은 극성 코드들로서 지칭되고, 인코더는 극성 인코더로서 지칭된다. 극성 코드들을 디코딩하기 위한 디코더들은 극성 디코더들로서 지칭된다. 도 2에 도시된 예에서 동결된 비트들은 0으로 설정된다. 그러나, 동결된 비트들은 인코더와 디코더 둘 다에 알려진 다른 고정 비트 값들로 설정될 수 있다. 설명의 용이함을 위해, 모두 제로 동결된 비트들(all-zero frozen bits)이 본 명세서에서 고려되며, 일반적으로 바람직할 수 있다.
도 3은 그 폭이 최대 주어진 리스트 크기에 의해 제한되고 SCL 극성 디코더에서 사용되는 예시적인 판정 리스트 트리의 일부를 도시하는 도면이다. 도 3에서, 리스트 크기 L은 4이다. 판정 트리의 5개의 레벨(302, 304, 306, 308, 310)이 도시되어 있다. 5개의 레벨이 예시되어 있지만, N 비트들을 디코딩하기 위한 판정 트리가 N+1개의 레벨을 가질 것이라는 점을 이해해야 한다. 루트 레벨(302) 이후의 각각의 레벨에서, 최대 4개의 잔존하는 디코딩 경로들 각각은 1 비트씩 확장된다. 루트 노드(320)의 리프 또는 자식 노드들은 제1 비트에 대한 가능한 선택들을 나타내고, 후속 리프 노드들은 후속 비트들에 대한 가능한 선택들을 나타낸다. 루트 노드(320)로부터 리프 노드(330a)로의 디코딩 경로는 예를 들어 추정된 코드워드 비트 시퀀스: 0, 1, 0, 0을 나타낸다. 레벨(308)에서, 가능한 경로들의 수는 L보다 크고, 따라서 가장 높은 가능성(최상의 경로 메트릭들 또는 PM들)을 갖는 L개의 경로가 식별되고, 나머지 경로들이 폐기된다. 레벨(306)에서의 경로 정렬 및 가지치기(path sort and prune) 후에 존속하는 디코딩 경로들은 도 3에서 볼드체로 도시되어 있다. 유사하게, 레벨(310)에서, 가능한 경로들의 수는 다시 L보다 크고, 따라서 가장 높은 가능성(최상의 PM들)을 갖는 L개의 경로가 식별되고, 나머지 경로들이 다시 폐기된다. 도시된 예에서, 리프 노드들(330a, 330b, 330c, 및 330d)에서 종단되는 경로들은 가장 높은 가능성 경로들을 나타낸다. 리프 노드들(340a, 340b, 340c, 340d)에서 종단되는 경로들은 폐기되는 더 낮은 가능성 경로들이다.
SCL 디코딩은 CRC 보조 리스트 디코딩 및 순수 리스트 디코딩으로 더 분할될 수 있다. 후자에서, 가장 높은 가능성을 갖는 생존 경로들(survivor paths)이 선택된다. SC 디코딩은 리스트 크기 L=1인 순수 리스트 디코딩의 특수한 경우이다. CRC 검사는 최종 경로 선택에서 더 나은 에러 정정 성능을 제공할 수 있지만, SCL 디코딩에서 선택적이다. 입력 벡터에 포함되는 패리티 또는 "PC" 비트들에 기초한 패리티 검사와 같은 다른 동작들은 디코딩 동안 최종 경로 선택에서 CRC를 대신하여 및/또는 CRC와 함께 사용될 수 있다.
SCL 디코딩은 제한된 코드 크기에 대한 극성 코드의 성능을 개선할 수 있다. 그러나, LDPC(Low Density Parity Check) 코드들 및 터보 코드들의 유사한 코드 길이 및 코드 레이트들과 비교하여, SCL 디코딩은 잘 설계된 LDPC 및 터보 코드들보다 더 불량한 BLER(Block Error Rate)을 가질 수 있다. CRC-보조 SCL(CRC-aided SCL)(CA-SCL) 디코딩은 제한된 코드 길이를 갖는 극성 코드의 BLER 성능을 개선할 수 있다. 예를 들어, 리스트 크기 L=32를 갖는 CA-SCL 디코더는 유사한 계산 복잡성을 갖는 LDPC 및 터보 코드들보다 훨씬 더 양호한 성능을 제공할 수 있다.
SC-타입 디코더들에 의해, 극성 코드는 사실상 채널을 N개의 서브채널로 분할한다. N은 마더 코드 길이로서 지칭되고, 항상 2×2 행렬인 극성 커널(polar kernel)에 기초하는 아리칸 극성 코드(Arikan polar code)에서 2의 거듭제곱이다. 극성 코드에 대한 코드 구성의 핵심은, 어느 비트 채널들(bit-channels)(본 명세서에서 서브채널들로도 지칭됨)이 정보 비트들에 대해 선택 또는 할당되고 어느 서브채널들이 동결된 비트들에 대해 할당되는지를 결정하는 것이다. 일부 실시예들에서, 하나 이상의 서브채널은 또한 PC, CRC, 및/또는 본 명세서에서 보조 비트들로 지칭되는 디코딩을 보조하는 데 사용되는 다른 타입들의 비트들에 할당된다. 극성화 이론에 관하여, 동결된 비트들에 대해 할당되는 서브채널들은 동결 서브채널들로 불리고, 정보 비트들에 대해 할당되는 서브채널들은 정보 서브채널들로 불리고, 추가적인 보조 서브채널들은 디코딩을 보조하는 데 사용되는 보조 비트들에 할당될 수 있다. 일부 실시예들에서, 보조 비트들은 더 신뢰성 있는 서브채널들이 선택되거나 할당되는 정보 비트들의 형태인 것으로 간주된다.
2×2 아리칸 커널 G2의 크로네커 곱들에 기초한 극성 인코더들이 전술되었다. 도 4는 2×2 커널에 기초한 극성 인코더의 예를 예시하는 블록도이다. 서브채널들 및 코딩된 비트들은 도 4에서 라벨링되고, 채널은 전술한 바와 같이 극성 코드에 의해 N개의 서브채널로 분할된다. 정보 블록 및 동결된 비트들이 N개의 서브채널에 할당되고, 결과적인 N-크기의 벡터는 극성 인코더에 의해 NxN 크로네커 행렬과 곱해져서 N개의 코딩된 비트들을 포함하는 코드워드를 생성한다. 정보 블록은 적어도 정보 비트들을 포함하고, CRC 비트들 또는 패리티 비트들과 같은 보조 비트들을 또한 포함할 수 있다. 서브채널 선택기는 극성 인코더에 결합되어 정보 비트들 및 임의의 보조 비트들에 대한 적어도 서브채널들을 선택할 수 있고, 임의의 나머지 서브채널들은 동결된 서브채널들이다.
2×2 커널 및 N×N 크로네커 행렬에 기초하는 극성 코드들에 대해, N은 2의 거듭제곱이다. 이러한 타입의 커널 및 이러한 커널에 기초한 극성 코드들은 본 명세서에서 예시적인 예들로서 논의된다. 고차 커널들(higher-order kernels)을 생성하기 위한 소수 커널들(예를 들어, 3x3 또는 5x5) 또는 (소수 또는 비-소수) 커널들의 조합들과 같은 다른 형태들의 극성화 커널들은 코드 서브채널들 간의 극성화를 산출할 수 있다. 펑처링, 단축, 제로 패딩, 및/또는 반복과 같은 코딩된 비트 처리는 예를 들어 레이트 매칭 또는 다른 목적들을 위해 2×2 커널들 또는 다른 타입들의 커널들에 기초하는 극성 코드들과 함께 사용될 수 있다는 점에 또한 유의해야 한다.
SC, SCL, 또는 CA-SCL 디코딩의 결과로서, 극성화 현상이 서브채널들에 대해 나타난다. 일부 서브채널들은 높은 용량을 갖고, 일부 서브채널들은 낮은 용량을 갖는다. 달리 말하면, 일부 서브채널들은 동등하게 높은 신호 대 잡음비(Signal-to-Noise Ratio)(SNR)를 가지며, 다른 서브채널들은 낮은 SNR을 갖는다. 이러한 메트릭들은 서브채널 "신뢰성"을 정량화하거나 분류하는 데 사용될 수 있는 특성들의 예들이다. 서브채널 신뢰성을 나타내는 다른 메트릭들도 사용될 수 있다.
코드 구성은 코드 레이트(정보 비트들의 수 K, 또는 얼마나 많은 서브채널들이 정보 비트들을 운반하는지)를 결정하는 것 및 N개의 이용가능한 서브채널들 중에서 정보 비트들을 운반할 특정 K개의 서브채널을 선택하는 것을 수반한다. 본 명세서에서 참조를 용이하게 하기 위해, 정보 비트들은 인코딩될 입력 비트들, 및 가능하게는 CRC 비트들, 패리티 비트들, 및/또는 디코딩을 돕는 데 사용되는 다른 보조 비트들을 포함할 수 있다. 서브채널 선택은 서브채널들의 신뢰성들에 기초하고, 통상적으로는 가장 높은 신뢰성 서브채널들은 정보 비트들을 운반하기 위한 정보 서브채널들로서 선택된다.
서브채널 신뢰성들은 예를 들어 하나 이상의 순서화된 시퀀스로 특정될 수 있다. 서브채널들의 단일 네스팅된 SNR-독립적 순서화된 시퀀스가 코드 길이 Nmax에 대해 계산될 수 있고, 더 짧은 코드 길이들 N에 대한 순서화된 시퀀스들은 더 긴 Nmax 시퀀스로부터 선택된다. 상이한 마더 코드 길이들 Ni의 관점에서 다수의 순서화된 시퀀스들이 대신 계산될 수 있고, 마더 코드 길이 시퀀스들 중 하나가 선호되는 코드 길이에 기초하여 특정 코드에 대해 선택될 수 있다. 다른 가능한 옵션은, 예를 들어, SNR 값들의 관점에서 다수의 순서화된 시퀀스들을 계산하는 것, 및 측정된 SNR에 기초하여 순서화된 시퀀스를 선택하는 것을 수반한다.
서브채널 신뢰성들을 계산하는 여러 방법이 또한 존재한다. 예를 들어, [R. Pedarsani, "Polar Codes: Construction and Performance Analysis", June 2011, EPFL master project]에서 제안된 유전자-보조 방법(genie-aided method)에 따르면, 인코더는 상이한 서브채널들에서 디코더에 알려진 트레이닝 시퀀스(training sequence)를 인코딩한다. 디코더는 디코딩 결과들을 인코더에 피드백하여, 인코더가 모든 서브채널에 대한 신뢰성 통계를 계산할 수 있게 하고, 서브채널들에 걸쳐 잘 적응된 신뢰성 벡터(well-adapted reliability-vector)가 획득되게 한다.
비-특허 문헌 공개[명칭 "Evaluation and Optimization of Gaussian Approximation for Polar Codes", May 2016]에서 제안된 가우스 근사(Gaussian-approximation)(GA) 방법은 모든 코딩된 비트가 동일한 에러 확률을 갖는다고 가정한다. 에러 확률로부터, 서브채널들에 대한 신뢰성들은 밀도 에볼루션(density evolution)(DE) 알고리즘으로 획득된다. 코딩된 비트들에 대한 이러한 에러 확률은 수신 SNR과 관련되므로, 이 방법은 SNR-관련되고 계산적으로 복잡하다.
커널 및 그것의 생성기 행렬로부터 순서화된 시퀀스를 생성하는 여러 방법들이 존재한다. 모든 방식이 반드시 네스팅된 시퀀스를 초래할 필요는 없고, 이러한 네스팅된 시퀀스는 반드시 고유하지는 않을 수 있다. 네스팅된 순서화된 시퀀스들은, 예를 들어, 2016년 7월 29일자로 출원된 중국 특허 출원 번호 CN 201610619696.5에 개시된 바와 같은 극성화 가중치에 기초하여, 또는 2016년 12월 23일자로 출원된 미국 특허 출원 번호 62/438565에 개시된 바와 같은 해밍 가중치에 기초하여 생성될 수 있고, 이 출원들 둘 다는 본 명세서에서 참조로 완전히 포함된다. 다른 기술들이 또한 또는 그 대신에 사용될 수 있다.
해밍 가중치가 보조 서브채널들을 선택하기 위해 제2 메트릭으로서 사용될 수 있는 방법의 예가 본 명세서에서 참조로 포함되는 2016년 12월 12일자로 출원된 미국 가출원 번호 62/433127에 더욱 상세히 논의되어 있다. 해밍 가중치는 제2 메트릭으로서 사용될 수 있는 메트릭의 예에 불과하다는 점에 유의한다. 다른 예들은 해밍 가중치(예를 들어, 2016년 12월 9일자로 출원되고 본 명세서에서 참조로 포함되는 미국 가출원 번호 62/432448에 개시된 바와 같은 행 가중치들의 함수를 포함한다. 일반적으로, (극성화) 신뢰성을 또한 나타내는 임의의 다른 메트릭이 제2 메트릭으로서 사용될 수 있다. 추가의 대안에서, 제2 메트릭은 제1 메트릭과 상이하지만, 또한 극성화 신뢰성과 관련되거나 극성화 신뢰성을 나타낸다. 그러나, 또 다른 대안에서, 서브채널들의 자연적인 순서(natural order of sub-channels)는, 예를 들어, 정보 서브채널들의 끝에서의(예를 들어, 자연수 오름차순으로) 서브채널들이 보조 서브채널들로서 선택되도록 제2 메트릭으로서 이용될 수 있다.
일부 실시예들에서, 보조 서브채널들을 선택하기 위해 2개보다 많은 메트릭이 이용될 수 있다. 또한, 전술한 메트릭들을 이용하는 다양한 보조 서브채널 선택 알고리즘들 중 임의의 것이 이용될 수 있다. 보조 서브채널들을 선택하기 위한 다른 가능성들이 존재한다.
앞서 언급한 바와 같이, 수신기에서의 에러 정정 또는 검출을 용이하게 하고 디코딩을 돕기 위해, CRC 또는 패리티 비트들과 같은 보조 비트들이 입력 비트 스트림에 포함될 수 있다. 극성 인코딩 동안 보조 비트들을 삽입할 때 발생하는 하나의 문제는 보조 비트들을 송신할 서브채널(들)을 선택하는 방법이다. 특히, 극성 인코더들은 일반적으로 가장 신뢰성 있는 서브채널들에 정보 비트들을 매핑하거나, 또는 그렇지 않으면 가장 신뢰성 있는 서브채널들을 통해 정보 비트들을 송신하고, 덜 신뢰성 있는 서브채널들에 동결된 비트들을 매핑하거나, 또는 그렇지 않으면 덜 신뢰성 있는 서브채널들을 통해 동결된 비트들을 전송한다. 보조 비트들이 인코딩된 비트 스트림에도 도입될 때, 질문은 가장 신뢰성 있는 채널들이 패리티 비트들 또는 정보 비트들에 대해 사용되어야 하는지 여부가 된다.
극성 인코딩 동안 패리티 비트들을 처리하기 위한 하나의 옵션은 정보 비트들을 가장 신뢰성 있는 서브채널들(예를 들어, 순서화된 시퀀스에 기초함)에 매핑하고 나서, 정보 비트들을 가장 신뢰성 있는 서브채널들에 매핑한 후에 이용가능한 다음으로 가장 신뢰성 있는 서브채널(들)에 패리티 비트(들)를 매핑하는 것이다. 이러한 방식으로, 정보 비트들은 패리티 비트들보다 더 신뢰성 있는 채널들을 통해 송신된다. 다른 옵션은 패리티 비트(들)를 가장 신뢰성 있는 서브채널(들)에 매핑하고 나서, 패리티 비트(들)를 가장 신뢰성 있는 서브채널들에 매핑한 후에 이용가능한 다음으로 가장 신뢰성 있는 서브채널들에 정보 비트들을 매핑하는 것이다. 이러한 방식으로, 패리티 비트들은 정보 비트들보다 더 신뢰성 있는 채널들을 통해 송신된다.
시뮬레이션들은 더 높은 레벨들의 인코딩 성능이 사실상 패리티 비트들 및 정보 비트들이 가장 신뢰성 있는 채널들에 산재되는(interspersed) 하이브리드 접근법에 의해 달성될 수 있다는 것을 보여주었다. 정보 비트들에 대한 서브채널들의 선택은 (예를 들어, 순서화된 시퀀스에 의해 지시되는 바와 같이) 서브채널 극성화 신뢰성에 기초할 수 있지만, 패리티 비트들에 대한 서브채널들의 선택은 예를 들어, 이러한 패리티 서브채널들의 위치들이 정보 서브채널들 사이에 더 랜덤하게 또는 더 효율적으로 분배될 수 있게 하기 위해 극성화 신뢰성 메트릭보다 더 많이 기초할 수 있다.
일부 실시예에서, 패리티 또는 PC 서브채널 선택을 위해 2개의 상이한 메트릭이 사용된다. 예를 들어, 제1 메트릭은 극성화 신뢰성 메트릭(예를 들어, 순서화된 시퀀스)일 수 있고, 제2 메트릭은 서브채널들의 해밍 가중치(또는 행 가중치와 같은 해밍 가중치의 함수)와 같은 가중치일 수 있다. 일 실시예에서, 원하는 패리티 비트수를 운반하는 데 필요한 모든 서브채널들은 하나보다 많은 메트릭, 예를 들어, 극성화 신뢰성 메트릭 및 해밍/행 가중치에 기초하여 선택된다. 다른 실시예들에서, 패리티 비트들에 대한 서브채널들의 서브세트는 하나보다 많은 메트릭, 예를 들어, 극성화 신뢰성 메트릭 및 해밍/행 가중치에 기초하여 선택되고, 나머지 서브세트는 단일 메트릭, 예를 들어, 극성화 신뢰성 메트릭에 기초하여 선택된다.
해밍 가중치는, 부분적으로 RM(Reed-Muller) 코드에 의해 이용되기 때문에 그리고 부분적으로 그것의 단순성 때문에 선호될 수 있다. RM 코드는, 그것이 극성화 신뢰성보다는 해밍 가중치에 기초한다는 점과, 그것이 ML(Maximum-Likelihood) 디코딩 알고리즘을 사용하지만(해밍 가중치 기반 RM 코드는 코드 길이가 작은 경우 ML 성능 경계에 접근함), SC 또는 SCL 디코딩으로 디코딩될 수 있다는 점에서, 극성 코드들의 특별한 예로서 간주될 수 있다.
서브채널의 해밍 가중치는 본 명세서에서 생성기 행렬의 행의 해밍 가중치인 것으로 정의된다. 극성 코드에서, 서브채널의 해밍 가중치는 그것의 생성기 행렬에서의 이 서브채널의 행 가중치와 관련된다(행 가중치 = 2^(해밍 가중치)). 일부 실시예들에서, 행 가중치는 서브채널의 정보가 분산되어 있는 코딩된 비트들의 수를 나타낸다. 일반적으로 말하면, 서브채널에 입력된 정보 비트가 더 많은 코딩된 비트들에 분배될수록, 서브채널이 더 강건해지고, 따라서 신뢰성이 더 높아진다.
해밍 가중치, 또는 행 가중치와 같은 해밍 가중치의 함수를 제2 메트릭으로서 이용하여 패리티 비트들에 대한 서브채널들을 선택할 수 있는 방법의 예가 2016년 12월 12일자로 출원되고 명칭이 "Method for constructing a Parity Check (PC) Based Polar Code Using a Look-up-Table"인 미국 가특허 출원 62/433,127에서 더욱 상세히 설명되고 논의되어 있으며, 이는 그 전체가 재현되는 것처럼 참조에 의해 본 명세서에 포함된다. 이들은 제2 메트릭으로서 사용될 수 있는 메트릭의 예들에 불과하다는 점에 유의한다. 일반적으로, (극성화) 신뢰성을 또한 나타내는 임의의 다른 메트릭이 제2 메트릭으로서 사용될 수 있다. 추가의 대안에서, 제2 메트릭은 제1 메트릭과 상이하지만 또한 극성화 신뢰성과 관련되거나 극성화 신뢰성을 나타낸다. 그러나, 또 다른 대안에서, 서브채널들의 자연적 순서는, 예를 들어, 정보 서브채널들의 끝에 있는 서브채널들이 보조 서브채널들로서 선택되도록 제2 메트릭으로서 사용될 수 있다. 일부 실시예들에서, 보조 서브채널들을 선택하기 위해 2개보다 많은 메트릭이 이용될 수 있다. 또한, 전술한 메트릭들을 이용하는 다양한 보조 서브채널 선택 알고리즘들 중 임의의 것이 이용될 수 있다. 보조 서브채널들을 선택하기 위한 다른 가능성들이 존재한다.
미국 가특허 출원 62/433,127에 설명된 실시예 기법들은 정보 비트들을 서브채널들에 매핑하기 전에 패리티 비트(들)에 대한 후보 서브채널들을 예약 및/또는 선택한다. 후보 서브채널들이 예약된 후에, 정보 비트들은 가장 신뢰성 있는 나머지 서브채널들에 매핑되고, 다수의 동결된 비트들이 가장 덜 신뢰성 있는 나머지 서브채널들에 매핑된다. 그 후, 예약된 서브채널들에 대한 패리티 비트 값들은 정보 비트들의 함수에 기초하여 결정된다. 특히, 패리티 비트(들)에 대해 예약되는 후보 서브채널들은 반드시 가장 신뢰성 있는 서브채널들이 아니라, 정보 비트들이 송신되는 서브채널들 중 적어도 하나의 서브채널보다 신뢰성 있거나 더 신뢰성 있는 적어도 일부 서브채널들을 일반적으로 포함한다. 이러한 방식으로, 정보 비트들 및 패리티 비트들은 디코딩 확률을 개선하는 방식으로 가장 신뢰성 있는 채널들에 산재된다.
전술한 바와 같이, 일부 서브채널들은 극성 인코딩 동안 PC 비트들에 대해 예약되거나 설정될 수 있다. 도 5a 내지 도 5g는 4개의 정보 비트들의 시퀀스가 16의 마더 코드 길이로 인코딩될 때 인코딩 프로세스가 발생할 수 있는 방법의 예를 예시한다. 도 5a는 16의 마더 코드 길이에 대응하는 서브채널들 u0, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15을 열거하는 표를 도시한다. 표의 제2 행은 각각의 서브채널에 대한 채널 극성화 신뢰성을 열거한다. 그 다음, 서브채널들은 채널 신뢰성에 기초하여 정렬될 수 있다. 도 5b는 서브채널들 u0, u1, u2, u4, u8, u3, u5, u6, u9, u10, u12, u7, u11, u13, u14, u15의 순서화된 시퀀스(Q)를 열거하는 표를 도시한다. 이어서, 각각의 채널에 대한 행 가중치가 채널 인덱스의 함수로서 계산될 수 있다. 일 예에서, 행 가중치는 하기 수학식:
Figure pct00011
에 기초하여 계산되고, 여기서 rw는 주어진 서브채널에 대한 행 가중치이고, hw는 채널 인덱스의 이진 표현의 해밍 가중치이다. 도 5c는 서브채널들의 순서 시퀀스에서의 각각의 서브채널의 이진 표현, 해밍 가중치, 및 행 가중치를 열거하는 표를 도시한다.
다음으로, 서브채널들의 서브세트가 파라미터들의 세트 wmin, 2*wmin, f1, 및 f2를 결정하기 위해 식별되고, 이는 PC 비트들에 대한 서브채널들을 예약하는 데 사용될 것이다. 정보 및 패리티 비트들을 운반하기 위한 서브채널들의 서브세트는 K+Fp와 같고, 여기서 K는 정보 블록 길이(예를 들어, 인코딩할 정보 비트들의 수)이고, Fp은 채널을 통해 전송할 패리티 비트들의 수에 대응하는 파라미터이다. 일 실시예에서, Fp는 하기 함수:
Figure pct00012
에 따라 계산되고, 여기서, N은 마더 코드 길이이고, M은 (예를 들어, 펑처링 후에) 전송될 코드워드에서의 (코딩된) 비트들의 수이고, K/M은 달성된 코드 레이트이고, α는 정보 비트들에 대한 패리티 비트들의 비를 변화시키는 데 이용되는 가중 인자(weighting factor)이다. 그러나, Fp에 대한 상이한 함수가 사용될 수 있는데, 예를 들어, Fp = log2((M-K)/32이고, 이것은 비교적 적은 수의 패리티 비트들에 대해 잘 작동하는 것으로 보인다. 대안적으로, 함수는 예를 들어 (패리티 비트들 이외의) 상이한 타입의 보조 비트들 및/또는 (PC 함수 이외의) 상이한 타입의 검사 함수가 이용되는 경우에 상이할 수 있다. 일반적으로, PC 비트들의 수(Fp)는 일반적으로 K, N(그리고 M<N이고 단축 또는 펑처링이 사용되는 경우 M)의 임의의 함수일 수 있다. 또 다른 실시예에서, Fp는 K, N(및/또는 M)과 독립적인 고정된 값, 예를 들어, 3일 수 있다. 또 다른 실시예에서, Fp는 (최소 행 가중치 wmin로) 후보 서브채널들에 매핑되는 패리티 비트들의 총 개수(예를 들어, 3)의 원하는 세트 또는 서브세트(예를 들어, 1)를 나타낼 수 있고, 나머지 패리티 비트들(예를 들어, 2)은 상이한 메트릭에 따라 다른 서브채널들(예를 들어, K(또는 K+Fp) 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들)에 매핑된다. Fp에 대한 다른 가능성들이 존재한다.
PC 비트들 및 Fp에 대한 위의 함수를 이용하는 실시예들에서, α 파라미터는 1 내지 2의 값으로 설정된다. 다른 실시예들에서, α 파라미터는 1 내지 1.5의 값으로 설정된다. 더 높은 α 값은 일반적으로 더 높은 최소 코드 거리를 산출할 것이다. 이 예에서, Fp는 2와 같다. 이와 같이, 정보 비트들 및 패리티 비트들을 운반하기 위한 서브채널들의 서브세트는 6개의 가장 신뢰성 있는 서브채널들(즉, K+Fp= 4+2 = 6)을 포함하고, 이것들은 서브채널들 u12, u7, u11, u13, u14, 및 u15이다. 다음으로, 하나 이상의 행 가중치 값이 결정된다. 알 수 있는 바와 같이, K+Fp 서브세트 내의 최소 행 가중치 wmin는 4이다. 이 예에서, 행 가중치 값들은 최소 행 가중치(wmin)를 포함하고, 서브채널들 u12, u7, u11, u13, u14, 및 u15의 서브세트에서의 최소 행 가중치의 2배(2*wmin)가 결정되고, 이는 각각 4 및 8이다. 제1 인덱스(f1) 및 제2 인덱스(f2)가 또한 결정된다. 제1 인덱스(f1)는 wmin와 동일한 행 가중치를 갖는 얼마나 많은 서브채널들이 PC 비트들에 대해 예약되어야 하는지를 결정하고, 제2 인덱스(f2)는 2*wmin와 동일한 행 가중치를 갖는 얼마나 많은 서브채널들이 PC 비트들에 대해 예약되어야 하는지를 결정한다. 이 예에서, f1 및 f2는 각각 1 및 1과 같다.
그 후, 파라미터들 wmin, 2*wmin, f1, 및 f2에 기초하여 PC 비트들에 대해 서브채널들이 예약된다. 이 예에서, 행 가중치 wmin(즉, 4와 동일함)를 갖는 가장 신뢰성 있는 서브채널 및 2*wmin(즉, 8과 동일함)와 같은 행 가중치를 갖는 가장 신뢰성 있는 서브채널이 선택되고, 이는 서브채널들 u12 및 u14를 포함한다. 도 5d는 PC 비트들에 대해 예약된 서브채널들을 나타내는 표를 도시한다. 그 후, 정보 비트들은 나머지 가장 신뢰성 있는 채널들에 매핑된다. 도 5e는 서브채널들 u15, u13, u11, 및 u7이 4개의 정보 비트에 매핑되는 방법을 나타내는 표를 도시한다. 이 예에서, K=4 및 N=16이다. 다른 예들에서, 상이한 수의 정보 비트들이 서브채널들에 매핑될 수 있다. 그 후, 나머지 서브채널들은 동결된 비트들에 매핑된다. 도 5f는 서브채널들 u10, u9, u6, u5, u3, u8, u4, u2, u1, 및 u0이 동결된 비트들에 매핑되는 방법을 나타내는 표를 도시한다.
일부 실시예들에서, 인코더는 동결된 비트 세트가 매핑된 후에 PC 비트들을 운반하기 위해 동결된 비트 세트 내의 일부 서브채널들을 선택한다. 도 5g는 동결된 서브채널들이 PC 비트들을 운반하기 위해 선택될 수 있는 방법을 나타내는 표를 도시한다. 도시된 바와 같이, wmin 또는 2*wmin와 같은 행 가중치를 갖는 동결된 세트 내의 서브채널들이 PC 비트들을 운반하기 위해 선택된다. 이 예에서, 서브채널들 u10, u9, u6, u5, 및 u3은 추가적인 PC 비트들로서 매핑된다. 일부 다른 실시예들에서, 모든 동결된 서브채널들이 추가적인 PC 비트들로서 선택될 수 있다.
wmin, 2*wmin, f1 및 f2에 기초하여 Fp PC 비트들에 대해 Fp 서브채널들을 예약 또는 선택하는 대신에, 인코더는 이들 파라미터들의 상이한 세트 또는 서브세트를 이용하여 서브채널들을 예약할 수 있다. 일 실시예에서, Fp 서브채널들은 (오직) wmin에 기초하여 N 서브채널들 또는 M<N 서브채널들(펑처링 또는 단축이 이용되는 경우)의 (K+Fp) 가장 신뢰성 있는 서브세트 내에서 예약되고, 예를 들어, wmin 값과 동일한 행 가중치를 갖는 Fp 서브채널들(하기 추가 세부 사항 참조)이 예약된다. 일부 구현들에서, wmin와 같은 행 가중치를 갖는 (K+Fp) 서브세트에 더 많은 서브채널들이 존재하면, 가장 신뢰성 있는 Fp 서브채널들이 예약된다. 일부 구현들에서, 가장 신뢰성 있는 K+Fp 서브채널들 내에 2*wmin과 같은 행 가중치를 갖는 f2 서브채널들보다 더 많은 서브채널들이 존재하는 경우에 동일한 선택이 적용된다. 다른 구현들에서, wmin(또는 2*wmin)과 같은 행 가중치를 갖는 (K+Fp) 서브세트에서의 가장 덜 신뢰성 있는 Fp 서브채널들이 예약된다. 또 다른 구현들에서, PC 비트들의 수는, wmin와 같은 행 가중치를 갖는 서브채널들 전부가 PC 비트들에 대해 예약되도록 증가될 수 있다. 또 다른 구현들에서, Fp는 wmin 및/또는 2*wmin에 기초하여 예약될 PC 비트들에 대한 서브채널들의 총 개수(예를 들어, 3)의 세트 또는 서브세트(예를 들어, 1)를 나타내고, PC 비트들에 대한 서브채널들의 총 개수의 나머지 서브세트(예를 들어, 2)가 다른 메트릭, 예를 들어, K(또는 K+Fp) 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들에 기초하여 예약된다. 다른 구현들이 가능하다.
일부 실시예들에서, (K+Fp) 서브세트에서 Fp 서브채널들을 예약하는 것에 더하여, 인코더는 추가적인 PC 비트들을 운반하기 위해 동결된 비트 세트(N-K-Fp)에서 일부 서브채널들을 선택할 수 있다. 다른 실시예들에서, wmin과 같은 행 가중치를 갖는 (K+Fp) 서브세트의 Fp 서브채널들에 더하여 PC 비트들을 운반하기 위해 동결된 비트 세트 내의 서브채널들 전부가 선택된다.
일부 실시예들에서, PC 비트들이 서브채널들과 연관된 행 가중치들에 기초하여 매핑될 때, 행 가중치 계산들은 인코딩 프로세스에 레이턴시를 도입할 수 있다. 본 개시내용의 다른 실시예들은 그 해밍 가중치들에 기초하여 서브채널들을 예약함으로써 그 레이턴시를 완화하고, 그에 의해, 행 가중치들을 계산하는 추가적인 단계를 회피한다. 도 6a 내지 도 6g는 극성 인코딩 프로세스 동안 PC 비트들에 대한 서브채널들을 예약하기 위해 해밍 가중치들이 사용될 수 있는 방법의 예를 나타낸다. 이 예에서, 4개의 정보 비트들의 시퀀스는 16의 마더 코드 길이로 인코딩된다. 도 6a는 16의 마더 코드 길이에 대응하는 서브채널들 u0, u1, u2, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15을 열거하는 표를 도시한다. 표의 제2 행은 각각의 서브채널에 대한 채널 극성화 신뢰성을 열거한다. 서브채널들은 채널 신뢰성에 기초하여 정렬될 수 있다. 도 6b는 서브채널들 u0, u1, u2, u4, u8, u3, u5, u6, u9, u10, u12, u7, u11, u13, u14, u15의 순서화된 시퀀스(Q)를 열거하는 표를 도시한다. 각각의 채널 인덱스의 해밍 가중치는 각각의 서브채널에 대해 결정될 수 있다. 도 6c는 서브채널들의 순서화된 시퀀스에서의 각각의 서브채널의 해밍 가중치를 열거하는 표를 도시한다.
다음으로, 서브채널들의 서브세트가 최소 해밍 가중치(umin)뿐만 아니라 f1 및 f2 파라미터들을 결정하기 위해 식별되고, 이는 PC 비트들에 대한 서브채널들을 예약하는 데 사용될 것이다. 정보 및 패리티 비트들을 운반하기 위한 서브채널들의 서브세트는 K+Fp과 같고, 여기서 K는 정보 블록 길이이고, Fp는 하기 함수:
Figure pct00013
에 따라 계산된 파라미터이고, 여기서, N은 마더 코드 길이이고, M은 (예를 들어, 펑처링 후에) 전송될 코드워드에서의 코딩된 비트들의 수이고, K/M은 달성된 코드 레이트이고, α는 정보 비트들에 대한 패리티 비트들의 비를 변화시키는 데 사용되는 가중 인자이다. 그러나, 구현에 따라, Fp에 대한 상이한 함수가 사용될 수 있는데, 예를 들어, Fp = log2((M-K)/32이고, 이것은 비교적 적은 수의 PC 비트들에 대해 잘 작동하는 것으로 보인다. 대안적으로, 예를 들어 (PC 비트들 이외의) 상이한 타입의 보조 비트들 및/또는 (PC 함수 이외의) 상이한 타입의 검사 함수가 이용되는 경우에 상이한 함수가 이용될 수 있다. 일반적으로, PC 비트들의 수 Fp는 일반적으로 K, N, 그러나 또한 M(M<N이고 단축 또는 펑처링이 사용되는 경우)의 임의의 함수일 수 있다. 다른 실시예에서, Fp는 K, N(및/또는 M)에 독립적인 고정된 값, 예를 들어, 3일 수 있거나, 또는 최소 행 가중치 wmin로 후보 서브채널들에 매핑되는 패리티 비트들의 총 개수(예를 들어, 3)의 원하는 세트 또는 서브세트(예를 들어, 1)를 나타낼 수 있고, 나머지 패리티 비트들(예를 들어, 2)은 상이한 메트릭에 따라 다른 서브채널들(예를 들어, K(또는 K+Fp) 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들)에 매핑된다. 도 6a 내지 도 6g의 예에서, Fp는 2와 같고, 가장 신뢰성 있는 서브채널들의 서브세트는 서브채널들 u12, u7, u11, u13, u14, 및 u15인 6개의 가장 신뢰성 있는 서브채널들(즉, K+Fp=4+2=6)을 포함한다. 다음으로, 서브채널들의 서브세트에 대한 최소 해밍 가중치가 결정된다. 이 예에서, 최소 해밍 가중치는 서브채널 u12의 해밍 가중치에 기초하여 2이다. 제1 인덱스(f1) 및 제2 인덱스(f2)가 또한 결정된다. 제1 인덱스(f1)는 umin와 동일한 해밍 가중치를 갖는 얼마나 많은 서브채널들이 PC 비트들에 대해 예약되어야 하는지를 결정하고, 제2 인덱스(f2)는 1+umin와 동일한 해밍 가중치를 갖는 얼마나 많은 서브채널들이 PC 비트들에 대해 예약되어야 하는지를 결정한다. 이 예에서, f1 및 f2는 각각 1 및 1과 동일하다.
그 후, 파라미터들 umin, 1+umin, f1, 및 f2에 기초하여 PC 비트들에 대해 서브채널들이 예약된다. 이 예에서, umin와 동일한 해밍 가중치(즉, 2와 동일함)를 갖는 가장 신뢰성 있는 서브채널 및 1+umin 와 동일한 해밍 가중치(즉, 3과 동일함)를 갖는 가장 신뢰성 있는 서브채널이 선택되고, 이것은 서브채널들 u12 및 u14을 포함한다. 도 6d는 PC 비트들에 대해 예약된 서브채널들을 나타내는 표를 도시한다. 그 후, 정보 비트들은 나머지 가장 신뢰성 있는 서브채널들에 매핑된다. 도 6e는 서브채널들 u15, u13, u11, 및 u7이 4개의 정보 비트들에 매핑되는 방법을 나타내는 표를 도시한다. 그 후, 나머지 서브채널들은 동결된 비트들에 매핑된다. 도 6f는 서브채널들 u10, u9, u6, u5, u3, u8, u4, u2, u1, 및 u0이 동결된 비트들에 매핑되는 방법을 나타내는 표를 도시한다.
일부 실시예들에서, 인코더는 PC 비트들을 운반하기 위해 동결된 비트 세트로부터 추가적인 서브채널들을 선택한다. 도 6g는 umin 또는 1+umin와 동일한 해밍 가중치를 갖는 동결된 세트 내의 서브채널들이 PC 비트들을 운반하기 위해 선택되는 방법을 나타내는 표를 도시한다. 이 예에서, 서브채널들 u10, u9, u6, u5, 및 u3이 추가적인 PC 비트들을 운반하기 위해 예약된다. 일부 다른 실시예들에서, 모든 동결된 서브채널들이 추가적인 PC 비트들로서 선택될 수 있다.
umin, f1 및 f2에 기초하여 Fp PC 비트들에 대해 Fp 서브채널들을 예약 또는 선택하는 대신에, 인코더는 이들 파라미터들의 상이한 세트 또는 서브세트를 이용하여 서브채널들을 예약할 수 있다. 일 실시예에서, Fp 서브채널들은 (오직) umin에 기초하여 N(또는 펑처링 또는 단축이 이용되는 경우에 M < N) 서브채널들의 (K+Fp) 가장 신뢰성 있는 서브세트 내에서 예약되고, 예를 들어, umin 값과 동일한 해밍을 갖는 Fp 서브채널들(하기 추가 세부 사항 참조)이 예약된다. 일부 구현들에서, umin와 동일한 해밍 가중치를 갖는 (K+Fp) 서브세트에 더 많은 서브채널들이 존재한다면, 가장 신뢰성 있는 Fp 서브채널들이 예약된다. 일부 구현들에서, 가장 신뢰성 있는 K+Fp 서브채널들 내에 2*wmin와 동일한 행 가중치를 갖는 f2 서브채널들보다 더 많이 존재하는 경우에 동일한 선택이 적용된다. 다른 구현들에서, (K+Fp) 서브세트 내의 가장 덜 신뢰성 있는 Fp 서브채널들이 예약된다. 또 다른 구현들에서, PC 비트들의 수는 umin와 동일한 해밍 가중치를 갖는 서브채널들 전부가 PC 비트들에 대해 예약되도록 증가될 수 있다. 또 다른 구현들에서, Fp는 wmin 및/또는 2*wmin에 기초하여 예약될 PC 비트들에 대한 서브채널들의 총 개수(예를 들어, 3)의 서브세트(예를 들어, 1)를 나타내고, 나머지 서브세트(예를 들어, 2)는 다른 메트릭, 예를 들어, K(또는 K+Fp) 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들에 기초하여 예약된다. 다른 구현들이 가능하다.
일부 실시예들에서, (K+Fp) 서브세트에서 Fp 서브채널들을 예약하는 것에 더하여, 인코더는 추가적인 PC 비트들을 운반하기 위해 동결된 비트 세트(N-K-Fp)에서 일부 서브채널들을 선택할 수 있다. 다른 실시예들에서, wmin과 같은 행 가중치를 갖는 (K+Fp) 서브세트의 Fp 서브채널들에 더하여 PC 비트들을 운반하기 위해 동결된 비트 세트 내의 서브채널들 전부가 선택된다.
본 개시내용의 실시예들은 가중치 파라미터에 기초하여 패리티 비트들에 대한 하나 이상의 서브채널을 선택, 예약 또는 할당하는 기술들을 제공한다. 도 7은 무선 디바이스에 의해 수행될 수 있는 바와 같은, 극성 코드를 사용하여 데이터를 인코딩하기 위한 방법(700)의 흐름도이다. 단계(710)에서, 무선 디바이스는 신뢰성 메트릭에 기초하여 순서화될 수 있는 서브채널들의 세그먼트로부터, 가중치 파라미터에 기초하여 적어도 하나의 패리티 비트(예를 들어, 후보 서브채널)를 운반하기 위한 적어도 하나의 서브채널을 (미리) 선택한다. 가중치 파라미터는 최소 행 가중치(예를 들어, wmin, dmin) 파라미터일 수 있다. 일 예에서, 순서화된 서브채널들은 K 서브채널들의 세그먼트 및 N0-K 서브채널들의 세그먼트를 포함하고, 무선 디바이스는 K 서브채널들의 세그먼트로부터 최소 가중치(dmin)를 갖는 적어도 하나의 후보 서브채널을 선택한다. 이러한 예에서, K 서브채널들 각각은 N0-K 서브채널들 전부보다 더 높은 신뢰성 메트릭을 갖는다. 이 예에서, K는 다른 보조 비트들(예를 들어, CRC 비트들)을 포함하거나 포함하지 않을 수 있는 정보 블록 길이 또는 인코딩할 정보 비트들의 수를 지칭하고, N0은 마더 코드 길이를 지칭한다. 다른 예에서, 세그먼트 K에서의 최소 가중치를 갖는 서브채널들의 수 n이 미리 결정된 값 F보다 큰 경우, 무선 디바이스는 신뢰성 메트릭의 내림차순으로(예를 들어, 높은 신뢰성으로부터 낮은 신뢰성으로) 최소 가중치를 갖는 K 서브채널들의 세그먼트로부터 F 서브채널들을 선택한다. 다른 예에서, 무선 디바이스는 최소 가중치(dmin)에 기초하여 제1 개수의 서브채널들 및/또는 최소 가중치의 2배(2*dmin)에 기초하여 제2 개수의 서브채널들을 선택한다. 또 다른 예에서, 무선 디바이스는, 예를 들어, 극성 코드와 연관된 코드 길이 및 인코딩될 데이터의 정보 블록 길이의 함수에 기초하여 적어도 하나의 서브채널을 선택한다. 또 다른 예에서, 무선 디바이스는 적어도 하나의 패리티 비트를 운반하기 위한 서브채널들로서 동결된 비트들에 정상적으로 할당된 서브채널들을 전부 선택한다.
또 다른 예에서, 무선 디바이스는 (N) 서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택한다. 이 예에서, 서브채널의 행 가중치는 서브채널들에 대응하는 (N 크기의) 크로네커 행렬의 행 내의 1들의 수이다. 또 다른 예에서, K 가장 신뢰성 있는 서브채널들 중에서 가장 낮은 행 가중치를 갖는 서브채널들의 수 n이 미리 결정된 수 Fp보다 큰 경우, 무선 디바이스는 K 가장 신뢰성 있는 서브채널들의 서브세트 내의 n 서브채널들(예를 들어, 가장 낮은 행 가중치를 가짐) 중에서 Fp 서브채널들을 선택할 수 있다. 또 다른 예에서, 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택된다. 다시 말해서, 선택된 적어도 하나의 서브채널들은 가장 낮은 행 가중치를 갖는 K 서브세트 내의 가장 신뢰성 있는 서브채널들이다.
단계(720)에서, 무선 디바이스는 적어도 하나의 패리티 비트 각각에 대한 값을 결정하기 위해 패리티 검사 함수를 적용한다. 패리티 검사 함수는 적어도 하나의 패리티 비트에 대해 선택되는 서브채널들에 대해 수행될 수 있다. 패리티 검사 함수는 소수 패리티 검사 함수일 수 있다. 단계(730)에서, 무선 디바이스는 인코딩된 데이터를 획득하기 위해 선택된 서브채널들에 배치된 적어도 하나의 패리티 비트 및 정보 비트들을 극성 인코딩한다. 일 예에서, 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 및/또는 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치된다. 도시되지 않았지만, 무선 디바이스는 또한 정보 비트들에 대해 선택된 서브채널들의 수가 K(즉, 인코딩할 정보 비트들의 총 개수)에 도달할 때까지, 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널을 스킵함으로써, 서브채널들의 순서화된 시퀀스에서 정보 비트들에 대한 서브채널들을 선택할 수 있다. 단계(740)에서, 무선 디바이스는 인코딩된 데이터를 다른 무선 디바이스에 전송한다.
도 8은 무선 디바이스에 의해 수행될 수 있는 바와 같은, 극성 코드를 사용하여 데이터를 인코딩하기 위한 실시예 방법(800)의 흐름도이다. 단계(810)에서, 무선 디바이스는 예를 들어, 신뢰성 메트릭에 기초하여 순서화될 수 있는 (N) 서브채널들의 세트 또는 시퀀스의 서브세트 내의 서브채널들에 대한 행 가중치들에 기초하여 하나 이상의 패리티 비트에 대한 하나 이상의 (후보) 서브채널들을 예약하거나 또는 그렇지 않으면 할당할 수 있다. 행 가중치들은 최소 행 가중치 값(wmin) 및/또는 최소 행 가중치 파라미터(예를 들어, 2*wmin)의 정수배를 포함할 수 있다. 서브채널에 대한 행 가중치는 N 크기의 크로네커 행렬의 서브채널에 대응하는 행 내의 1들의 수를 나타낼 수 있다. 순서화된 서브채널들로부터 패리티 비트들에 대한 후보 서브채널들을 예약(즉, 할당)하기 위한 다양한 기술들이 존재한다. 예를 들어, 서브채널들의 세트가 그 신뢰성들에 기초하여 정렬된 후에, 무선 디바이스는 가장 높은 신뢰성의 서브채널로부터 시작하여 그 행 가중치들에 기초하여 세트 내의 서브채널들의 가장 신뢰성 있는 서브세트로부터 후보 서브채널들을 예약할 수 있다. 일 예에서, 최소 행 가중치 값과 동일한 행 가중치를 갖는 첫번째(즉, 가장 신뢰성 있는) f1 서브채널들(여기서 f1은 0보다 큰 정수임)이 패리티 비트들에 대해 예약된다. 이러한 예에서, 최소 행 가중치는 서브채널들의 순서화된 시퀀스에서 가장 신뢰성 있는 K 또는 K+Fp 서브채널들과 연관된 가장 낮은 행 가중치일 수 있고, 여기서 K는 정보 비트들의 시퀀스와 연관된 정보 블록 길이이고, Fp는 인코딩된 비트 스트림에 의해 운반되는 패리티 비트들의 수에 대응하는 파라미터 또는 함수이다. 이러한 실시예에서, Fp는 하기 함수:
Figure pct00014
에 따라 계산될 수 있고, M은 전송된 블록 길이이고, N은 마더 코드 길이이고, α는 정보 비트들에 대한 패리티 비트들의 비를 변화시키는 데 이용되는 가중 인자이다. Fp에 대한 다른 값들이 또한 가능하다. 다른 예에서, 최소 행 가중치 값의 2배와 동일한 행 가중치를 갖는 첫번째 f2 서브채널들이 또한 패리티 비트들에 대해 예약될 수 있다(여기서, f2는 또한 0 이상의 정수임). f1 파라미터는 하기 함수: f1=(Fp+min(Fp,n))/2에 따라 계산될 수 있고, 여기서, n은 최소 행 가중치와 동일한 행 가중치를 갖는, 서브채널들의 순서화된 시퀀스의 가장 신뢰성 있는 K+Fp 서브채널들에서, 서브채널들의 수이다. f2 파라미터는 하기 함수: f2=(Fp-min(Fp,n))/2에 따라 계산될 수 있다. f1 및 f2 파라미터들에 대해 다른 값들이 가능할 수 있다.
다른 실시예에서, Fp는 정보 블록 크기 및 코드 길이에 독립적인 고정된 값(예를 들어, 3)일 수 있다. 대안적으로, Fp는 사용될 패리티 비트들의 총 개수(예를 들어, 3)의 원하는 서브세트(예를 들어, 1)일 수 있고, 서브채널들(예를 들어, K 또는 (K+Fp))의 가장 신뢰성 있는 서브세트에서 최소 행 가중치 wmin를 갖는 후보 서브채널들에 매핑되고, 나머지 패리티 비트들(예를 들어, 2)은 상이한 메트릭에 따라 다른 서브채널들(예를 들어, K(또는 K+Fp) 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들)에 매핑된다.
단계(820)에서, 무선 디바이스는, 예를 들어, 하나 이상의 패리티 비트에 대해 예약된 하나 이상의 후보 서브채널들에 정보 비트들을 매핑하지 않고, 나머지 서브채널들의 신뢰성에 기초하여 서브채널들의 세트 내의 나머지 서브채널들의 서브세트에 정보 비트들을 매핑한다. 단계(830)에서, 무선 디바이스는 정보 비트들의 값들의 함수로서 적어도 하나 이상의 패리티 비트의 값들을 결정(예를 들어, 계산)하고, 하나 이상의 패리티 비트를 예약된 후보 서브채널들(도시되지 않음)에 매핑한다. 단계(840)에서, 무선 디바이스는 극성 코드를 이용하여 매핑된 정보 비트들 및 하나 이상의 패리티 비트를 인코딩하여 인코딩된 비트들 또는 인코딩된 비트 스트림을 획득한다. 단계(850)에서, 무선 디바이스는 (물리적) 채널을 통해 인코딩된 비트들을 송신한다.
본 개시내용의 실시예들은 인코딩 전에 패리티 검사 함수를 구현하기 위한 무선 디바이스와 같은 디바이스를 위한 방법을 제공한다. 제1 단계 동안, 무선 디바이스는 신뢰성의 순서화된 시퀀스(Q)를 획득 또는 검사하고, 코드 레이트(R) 및 마더 코드 길이(N)에 기초하여 펑처링된 비트 세트(P)를 결정한다.
제2 단계 동안, 디바이스는 순서화된 시퀀스로부터 동결된 비트 세트, PC 동결된 비트 세트 및 정보 비트 세트를 결정한다. 제2 단계는 여러 개의 서브단계 2.1-2.4(d)를 포함할 수 있다. 서브단계 2.1에서, 무선 디바이스는 시퀀스(Q)(좌측으로부터 우측으로 오름차순 신뢰성에 의해 순서화됨)를 3개의 서브세트, 즉, (N-M) 서브세트, (M-K) 서브세트, 및 (K) 서브세트로 분할할 수 있다. 이것의 예가 표 2에 도시되어 있다. 알 수 있는 바와 같이, K 서브세트는 시퀀스(Q)에서 가장 신뢰성 있는 비트 위치들(서브채널들)을 나타낸다. 서브단계 2.2 동안, 무선 디바이스는 (K) 서브세트에서 최소 또는 가장 낮은 행 가중치를 결정할 수 있고, 이를 dmin로 표시할 수 있고, 여기서 서브채널에 대한 행 가중치는 서브채널에 대응하는 크로네커 행렬의 행 내의 "1들"의 수를 나타낸다. 앞서 살펴본 바와 같이, 행 가중치는 또한 서브채널 인덱스의 이진 표현에서 "1들"의 수인 지수를 갖는 2의 거듭제곱이다. 무선 디바이스는 그 다음에 dmin와 동일한 행 가중치를 갖는 (K) 서브세트 내의 비트 위치들의 수(n)를 결정할 수 있다. 서브단계 2.3 동안, 무선 디바이스는 dmin에 따라 PC 동결된 비트들에 대해 K 서브세트에서 서브채널들의 세트를 선택 또는 플래그한다. 구체적으로, 무선 디바이스는 극성 코드의 마더 코드 길이 및 정보 비트들의 시퀀스 내의 정보 비트들의 수의 함수에 기초하여 패리티 검사(PC) 동결된(PC 동결된) 비트들의 수(FP)를 결정할 수 있다. 일 예에서, Fp은 하기 함수: Fp= ceil(Log2(N*K)/2)에 따라 계산된다. 그 후, 무선 디바이스는 PC 동결된 비트들에 대한 다수의 서브채널들을 선택 및/또는 플래그할 수 있다. n<Fp이면, 무선 디바이스는 내림차순 신뢰성 순서에 따라 행 가중치 dmin를 갖는 (Fp+n)/2 서브채널들을 PC 동결된 비트들로서 선택 및/또는 플래그할 수 있을 뿐만 아니라, 내림차순 신뢰성 순서에 따라 행 가중치 2×dmin를 갖는 (Fp-n)/2 서브채널들을 선택 및/또는 플래그할 수 있다. n≥Fp이면, 무선 디바이스는 내림차순 신뢰성 순서에 따라 행 가중치 dmin를 갖는 Fp 서브채널들을 PC 동결된 비트들로서 선택 및/또는 플래그할 수 있다. 다른 실시예에서, Fp는 정보 블록 크기 및 코드 길이와 독립적인 고정된 값, 예를 들어, 3일 수 있다. 대안적으로, Fp는 최소 행 가중치(dmin) 또는 최소 행 가중치의 2배(2×dmin)를 갖는 서브채널들에 매핑되는 패리티 비트들의 총 개수(예를 들어, 2)의 원하는 세트 또는 서브세트(예를 들어, 1)를 나타낼 수 있고, 나머지 패리티 비트들(예를 들어, 2)은 상이한 메트릭에 따라 다른 서브채널들(예를 들어, K 서브세트 또는 K+Fp 서브세트 내의 가장 덜 신뢰성 있는 서브채널들)에 매핑된다. 서브단계들 2.4(a)-2.4(d)에서, 무선 디바이스는 정보, PC 동결된 및 동결된 비트들에 대한 위치를 결정할 수 있다. 특히, 서브단계 2.4(a)에서, 무선 디바이스는, 정보 비트 위치들의 수가 K에 도달할 때까지, 플래그된 비트 위치들을 스킵함으로써, 정보 비트 위치들을 가장 우측으로부터 가장 좌측으로(신뢰성 내림차순으로) 하나씩 선택할 수 있게 한다. 서브단계 2.4(b)에서, 무선 디바이스는 나머지 비트 위치들을 동결된 비트들인 것으로 플래그할 수 있다. 서브단계 2.4(c)에서, 무선 디바이스는 추가적인 PC 동결된 비트들로서 일부 동결된 비트 위치들, 예를 들어, 미리 선택된 PC 동결된 비트들과 동일한 행 가중치를 갖는 동결된 비트 위치들, 또는 추가적인 PC 동결된 비트들로서 모든 동결된 비트 위치들을 선택할 수 있다. 단계 2.4(d)에서, 무선 디바이스는 예를 들어, 아리칸 커널을 이용하여 극성 인코딩을 위한 비트 시퀀스를 준비할 수 있다. 무선 디바이스는 K-정보 비트들을 삽입하고, PC 동결된 및 동결된 비트들을 마킹할 수 있다.
단계 3 동안, 무선 디바이스는 패리티 검사 함수에 기초하여 PC 동결된 비트들에 대한 값들을 설정할 수 있다. 일 예에서, 이것은 소수값(prime value)의 길이를 갖는 레지스터에 순환 시프트를 적용함으로써 달성된다.
Figure pct00015
도 9는, 무선 디바이스에 의해 수행될 수 있는 바와 같은, 극성 코드를 이용하여 데이터를 인코딩하기 위한 실시예 방법(900)의 흐름도이다. 단계(910)에서, 무선 디바이스는 서브채널들의 순서화된 시퀀스에서 가장 신뢰성 있는 K 서브채널들 중에서 가장 낮은 행 가중치(dmin)를 결정한다. 단계(920)에서, 무선 디바이스는 가장 낮은 행 가중치에 따라 패리티 검사(PC) 동결된(PC 동결된) 비트들에 대해, 가장 신뢰성 있는 K 서브채널들에서, 서브채널들의 세트를 선택 또는 플래그한다. 선택 또는 플래그되는 서브채널들의 세트가 하나 이상의 서브채널을 포함할 수 있다는 점이 이해되어야 한다. 선택적으로, 예를 들어, 미리 결정된 수의 PC 동결된 비트들, 예를 들어, Fp보다 적게 가장 낮은 행 가중치(dmin)를 갖는 서브채널들, 예를 들어, n이 존재하는 경우, 무선 디바이스는 내림차순 신뢰성 순서에 따라 순서화된 시퀀스에서 행 가중치 dmin를 갖는 (Fp+n)/2 서브채널들을 PC 동결된 비트들로서 선택 또는 플래그할 뿐만 아니라, 내림차순 신뢰성 순서에 따라 순서화된 시퀀스에서 행 가중치 2×dmin를 갖는 (Fp-n)/2 서브채널들을 플래그한다. 선택사항으로서, 가장 낮은 행 가중치 (dmin)를 갖는 서브채널들의 수 n이 Fp보다 크다면, 무선 디바이스는 내림차순 신뢰성 순서에 따라 순서화된 시퀀스에서 행 가중치 dmin를 갖는 Fp 서브채널들을 PC 동결된 비트들로서 선택 또는 플래그한다. 단계(930)에서, 무선 디바이스는 PC 동결된 비트들에 대해 플래그된 서브채널들의 세트를 스킵하면서 서브채널들의 순서화된 시퀀스에서 가장 신뢰성 있는 나머지 서브채널들에 정보 비트들의 시퀀스 K를 매핑한다. 단계(940)에서, 무선 디바이스는 PC 동결된 비트들에 대해 플래그된 적어도 서브채널들의 세트에서 PC 비트들에 대해 값들을 설정하고, 단계(950)에서 PC 동결된 비트들을 이용하여 K 정보 비트들을 극성 인코딩하여, 인코딩된 비트들 또는 인코딩된 비트 스트림을 획득한다. 단계(960)에서, 무선 디바이스는 인코딩된 비트들/비트 스트림의 적어도 일부를 송신한다.
도 10은 통신 시스템(1000)을 도시한다. 소스(1010)는 정보 데이터(베어러 데이터, 정보 블록들, 비트들)를 제공하고, (채널) 인코더(1020)는 정보 데이터를 인코딩하고, 인코딩된 정보 데이터는 채널(1030)을 통해 전송되고, 이어서 (채널) 디코더(1040)에서 디코딩되어, 정보 데이터가 목적지(1050)에서 최종적으로 수신되게 한다. 소스(1010) 및/또는 채널 인코더(1020)는 네트워크 컴포넌트 또는 사용자 장비와 같은 송신 포인트 또는 무선 디바이스에 내장되거나 포함될 수 있다. 네트워크 컴포넌트는 eNodeB(evolved NodeB), WiFi 액세스 포인트, 스몰 셀(피코 셀, 펨토 셀) 액세스 포인트 또는 네트워크에의 액세스를 제공하는 임의의 다른 액세스 포인트와 같은 액세스 포인트일 수 있다. 채널 인코더(1020)는 많은 상이한 방식으로 구현될 수 있다. 예를 들어, 채널 인코더(1020)는 (데이터를 인코딩하고/하거나, 인코더 또는 디바이스의 다른 컴포넌트(들)의 동작을 제어하고/하거나, 그렇지 않으면 본 명세서에 개시된 바와 같은 기능 및/또는 실시예들의 실행을 제어하도록 구성되는 프로세서와 같은 회로부에서) 하드웨어로만 구현될 수 있다. 인코더의 프로세서 기반 구현에서, 본 명세서에 설명된 바와 같은 인코딩 동작들을 수행하기 위한 프로세서 실행가능 명령어들이 송신 포인트 또는 디바이스의 내부 또는 외부에 있는 비일시적 메모리 또는 저장 매체에 저장된다. 비일시적 매체는, 예를 들어 메모리에서, 하나 이상의 고체 상태 메모리 디바이스 및/또는 이동식 및 가능하게는 착탈식 저장 매체를 갖는 메모리 디바이스들을 포함할 수 있다. 인코더(1020)는 개별 (무선 주파수-RF) 전송 모듈과 인터페이스하도록 구성될 수 있다. 예를 들어, 인코더(1020)는 개별 (RF) 유닛에 의한 전송을 위해 본 명세서에서 설명된 바와 같이 데이터를 인코딩하기 위해 하드웨어 또는 회로부에서(예를 들어, 하나 이상의 칩셋들, 마이크로프로세서들, 주문형 집적 회로들(ASIC), 필드-프로그램가능 게이트 어레이들(FPGA들), 전용 논리 회로부, 또는 이들의 조합들에서) 구현될 수 있다.
(채널) 디코더(1040) 및 목적지(1050)는 수신 포인트 또는 네트워크 컴포넌트 또는 사용자 장비(UE)와 같은 다른 무선 디바이스에 포함될 수 있고, 또한 예를 들어, 디코딩 동작들을 수행하기 위한 명령어들을 실행하도록 구성되는 칩셋 또는 프로세서와 같은 하드웨어 또는 회로부에서를 포함한, 많은 상이한 방식들로 네트워크 컴포넌트 또는 디바이스에서 구현될 수 있다. 디코더(1040)의 프로세서 기반 구현에서, 디코딩 동작들을 수행하기 위한 프로세서 실행가능 명령어들은 수신 포인트 또는 디바이스의 내부 또는 외부에 있는 비일시적 메모리 또는 저장 매체에 저장된다. 비일시적 매체는, 예를 들어 메모리에서, 하나 이상의 고체 상태 메모리 디바이스 및/또는 이동식 및 가능하게는 착탈식 저장 매체를 갖는 메모리 디바이스들을 포함할 수 있다. 디코더(1040)는 개별 (RF) 수신 모듈과 인터페이스하도록 구성될 수 있다. 예를 들어, 디코더(1040)는 정보 비트들을 획득하기 위해 본 명세서에서 설명되는 바와 같이 (예를 들어, 수신 모듈 또는 유닛을 통해) 수신된 신호들을 디코딩하기 위해 하드웨어 또는 회로부에서(예를 들어, 하나 이상의 칩셋들, 마이크로프로세서들, ASIC들, FPGA들, 전용 논리 회로부, 또는 이들의 조합들에서) 구현될 수 있다. UE는 무선 전화, 스마트폰, 태블릿, 개인 어시스턴트(personal assistant), 또는 임의의 다른 모바일 디바이스일 수 있다. 다양한 실시예들에서, 소스(1010) 및 채널 인코더(1020)는 UE에서 구현될 수 있고, 채널 디코더(1040) 및 목적지(1050)는 액세스 포인트에서 구현될 수 있거나, 그 반대일 수 있다. 채널(1030)은 공기 또는 케이블이나 버스와 같은 고정 라인을 통한 채널일 수 있다. 채널(1030)은 무선 인터페이스의 물리 계층일 수 있다. 채널(130)은 임의의 다른 전송 매체일 수 있다. 통신 시스템(1000)은 무선 데이터를 전송하기 위해서뿐만 아니라 유선 또는 임의의 다른 데이터를 전송하기 위해서도 사용될 수 있다.
일부 실시예들에서, 디코더(1040)는 채널(1030)을 통해 수신되는 인코딩된 데이터에 기초하여 신호들을 디코딩하도록 구성될 수 있다. 일 실시예에서, 디코더(1040)는 다른 디바이스, 예를 들어, 인코더(1020)로부터 극성 코드로 인코딩된 정보 비트들 및 하나 이상의 패리티 비트들을 갖는 인코더(1020)에서 생성된 인코딩된 데이터에 기초한 신호를 수신하도록 구성된다. 위에서 언급한 바와 같이, 디코더(1040)는 신호들을 직접(예를 들어, 내부 수신 유닛을 이용하여) 수신하거나 또는 적절한 인터페이스를 통해 별도의 수신 유닛을 이용하여 간접적으로 수신하도록 구성될 수 있다. 이 실시예에서, 패리티 비트(들)는 가중치 파라미터에 기초하여 선택된 서브채널들에 배치되고, 디코더(1040)는 정보 비트들을 획득하기 위해 극성 코드 및 패리티 비트들을 이용하여 신호를 디코딩한다.
일 예에서, 가중치 파라미터는 최소 가중치를 포함한다. 이러한 예에서, 패리티 비트들은 최소 가중치(예를 들어, dmin)를 갖는 또는 최소 가중치의 2배(2×dmin)를 갖는 다수의 서브채널들에 배치될 수 있다. 선택된 서브채널들 각각이 최소 가중치를 갖는 예에서, 서브채널들은 신뢰성 메트릭에 기초하여 순서화된 N0 서브채널들로부터의 K 가장 신뢰성 있는 서브채널들의 세그먼트로부터 선택된다. 이 예에서, K 서브채널들 각각은 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들의 신뢰성 메트릭보다 더 높은 신뢰성 메트릭을 갖고, 여기서 K는 정보 블록 길이이고, N0은 마더 코드 길이이다. 패리티 비트들 각각의 값을 결정하기 위해 소수 함수일 수 있는 패리티 검사 함수가 사용될 수 있다. 가중치 파라미터는 dmin와 같은 가장 낮은 행 가중치를 포함할 수 있고, 선택된 서브채널들은 K 서브세트 내에서 가장 낮은 행 가중치를 가질 수 있고, 여기서 서브채널의 행 가중치는 크로네커 행렬의 행 내의 1들의 수이고, 행은 서브채널에 대응한다. 가장 낮은 행 가중치를 갖는 서브채널들은 내림차순 신뢰성 순서에 따라 K 서브세트로부터 선택될 수 있다. 정보 비트들에 대한 서브채널들은 정보 비트들에 대해 선택된 서브채널들의 수가 K에 도달할 때까지, 패리티 비트들에 대해 선택된 서브채널들을 스킵함으로써, 서브채널들의 순서화된 시퀀스에서 선택될 수 있다.
다른 실시예에서, 디코더(1040)는 극성 코드로 인코딩된 정보 비트들 및 하나 이상의 패리티 비트를 갖는 다른 디바이스(예를 들어, 인코더(1020))에서 생성된 비트들 또는 비트 스트림에 기초하여 신호를 수신하도록 구성된다. 이 실시예에서, 패리티 비트들은 서브채널들의 세트의 서브세트 내의 서브채널들에 대한 행 가중치들에 기초하여 할당되는 서브채널들에 매핑되고, 정보 비트들은 나머지 서브채널들의 신뢰성에 기초하여 서브채널들의 세트 내의 나머지 서브채널들에 매핑된다. 디코더(1040)는 또한 정보 비트들을 획득하기 위해 극성 코드 및 패리티 비트들을 이용하여 신호를 디코딩하도록 구성된다.
일 예에서, 서브채널에 대한 행 가중치는 서브채널에 대응하는 크로네커 행렬의 행 내의 1들의 수를 나타낸다. 행 가중치들은 최소 행 가중치를 포함할 수 있다. 서브채널들의 서브세트에서의 최소 행 가중치 또는 최소 행 가중치의 2배와 동일한 행 가중치를 갖는 다수의 서브채널들이 패리티 비트들에 대해 할당된다. 할당된 서브채널들의 수는 1일 수 있고, 세트 내의 서브채널들은 서브채널들의 순서화된 시퀀스를 형성하기 위해 그 신뢰성들에 기초하여 순서화될 수 있고, 서브채널들의 서브세트는 순서화된 시퀀스에서 가장 신뢰성 있는 서브세트를 포함한다. 예를 들어, 가장 신뢰성 있는 서브세트는 정보 비트들을 운반하기 위한 K 서브채널들 또는 K+Fp 서브채널들을 포함할 수 있고, 여기서 K는 정보 비트들과 연관된 정보 블록 길이이고, Fp는 패리티 비트들의 수를 나타낸다. 그 예에서, 서브세트(예를 들어, K 또는 K + Fp) 서브채널들에서 최소 행 가중치와 동일한 행 가중치를 갖는 가장 신뢰성 있는 서브채널이 패리티 비트들에 대해 할당될 수 있다. 패리티 비트들은 패리티 검사(PC) 비트들을 포함할 수 있고, PC 비트들에 대한 값들은 정보 비트들의 값들의 함수일 수 있다.
극성 코드는 0들 또는 임의의 다른 알려진 값일 수 있는 정보 비트들에 대해 비교적 신뢰성 있는 서브채널들 및 동결된 비트들에 대해 비교적 신뢰성 없는 서브채널들을 이용하는 선형 블록 에러 정정 코드이다. 패리티 검사가 덜 신뢰성 없는 동결된 비트들 중 일부에 걸쳐 동작될 수 있다면 최소 코딩 거리(minimum-coding-distance)는 증가될 수 있다. 패리티 비트들에 사용되는 동결된 비트들은 동적 동결된 비트들로 불리는데, 그 이유는 그 비트 값들이 송신되는 데이터 정보에 따라 동적으로 변화하기 때문이다.
종래의 애플리케이션들에서, 디코더는 정보 블록(정보 비트들)을 송신하기 위한 최상의 서브채널들을 식별하기 위해 연속 소거(successive cancellation)(SC) 방법을 사용한다. 성능을 개선하기 위해, CRC 보조 SC 리스트 디코딩 알고리즘을 이용하여 다수의 SC 디코딩 경로를 허용하고, 이후 CRC를 이용하여 마지막 스테이지에서 올바른 경로를 선택한다. 이 방법은 CRC 비트들의 검출 능력을 소모(consume)하고, 그 후에 그것들은 블라인드 검출과 같은 다른 목적들을 위해 사용될 수 없다. 비 CRC 보조 리스트 디코더(non-CRC-aided list decoder)는 바람직하게는 CRC 비트들 이외의 소스에 기초하여 패리티 검사를 수행하는 일부 방법을 갖는다. 일부 극성 코드들에서, 패리티 비트들은 패리티 검사 능력을 제공하기 위해 동결된 비트들(동적 동결된 세트)의 일부에 놓인다. 그러나, 극성 코드 연산의 성능은 동적 동결된 세트 및 그것들에 대한 패리티 검사 방법의 선택에 의존하고, 그것들이 너무 많이 존재하기 때문에 결정론적 방식으로 적절한 동결된 세트(들)(비트 또는 심볼)를 선택하는 것은 매우 어렵다.
실시예들에서, 동적 동결된 비트 세트들을 선택하는 것은 최소 코딩 거리 또는 극성화 가중치와 같은 최소 신뢰성 있는 가중치(minimal reliable weight)의 함수이다. 다른 신뢰성 메트릭들도 이용될 수 있다. 실시예들은 양호하고 신뢰성 있는 블록 에러 레이트(BLER) 성능을 보여주는 적절히 선택된 동적 동결된 비트들에 기초한 극성 코드를 제공한다. 극성 코드는 순환 중복 검사(CRC) 없는 극성 코드(cyclic redundant check (CRC) less polar code)일 수 있다. 다양한 실시예들에서, 모든 동결된 비트들이 동적 동결된 비트들로서 선택되고, 소수 유도된 검사 함수(prime-number-derived check function)가 이것들 모두에 걸쳐 적용된다.
도 11은 극성 코드에 대한 동결된 비트 세트를 선택하기 위한 실시예 방법(1100)의 흐름도이다. 코딩 방법은 인코더와 디코더 둘 다에서 구현될 수 있다. 코딩 방법은, 단계(1110)에서, 다수의 후보 동결된 세트들(또는 다수의 후보 동결된 비트 세트들)을 미리 선택하고 나서, 단계(1150)에서, 선택된 동결된 비트 세트를 다수의 후보 비트 세트들로부터 선택하는 단계를 포함한다.
단계(1110)는 그 서브채널들에 적용된 신뢰성 메트릭에 따라 동결된 비트들의 미리 선택된 서브채널들을 정렬하는 단계를 포함한다. 일부 실시예들에서, 단계(1110)는 신뢰성 메트릭 함수에 따라 서브채널들 전부를 정렬하는 단계를 포함한다. 다양한 실시예들에서, 극성화 가중치 알고리즘과 같은 결정론적 함수가 이용될 수 있다. 대안적으로, 결정론적 함수는 극성화 거리 함수일 수 있다. 동결된 비트들의 서브채널들은 오름차순 방식으로, 즉, 낮은 극성화 가중치로부터 높은 극성화 가중치로(또는 그 반대로) 정렬될 수 있다. 이어서, 정렬된 채널들은 2개의 세그먼트와 같은 복수의 세그먼트로 분할된다. 다음 단계에서, 상부 세그먼트에서(또는 다시 말해서, 가장 신뢰성 있는 서브채널들을 갖는 세그먼트에서) 최소 가중치 dmin가 선택 또는 결정된다(이하의 예를 참조). 일 예에서, 서브채널의 가중치는 행 가중치, 즉, 서브채널에 대응하는 극성 코드 생성기 행렬 또는 크로네커 행렬의 행 내의 "1들"의 수, 또는 등가적으로 지수가 서브채널 인덱스의 이진 표현 내의 "1들"의 수인 2의 거듭제곱일 수 있다. 그 예에서, 최소 가중치 dmin는 최소 행 가중치일 수 있다. 최소 가중치 dmin에 대해, 최소 가중치 dmin를 갖는 채널들의 수는 n일 수 있다. 미리 결정된 값 F를 정의한다. 실시예에서, F는 F = ceil (LOG2(N*K)/2)일 수 있다. 다른 실시예들에서, F는 상이한 값을 가질 수 있다. 또 다른 실시예들에서, F는 dmin 및/또는 2*dmin에 기초하여 미리 선택되는 동적 동결된 비트들에 대한 서브채널들의 총 수(예를 들어, 3)의 세트 또는 서브세트(예를 들어, 1)를 나타내고, 동적 동결된 비트들에 대한 서브채널들의 총 수의 나머지 서브세트(예를 들어, 2)는 다른 메트릭, 예를 들어, K 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들에 기초하여 미리 선택된다. n<F일 때 가중치 dmin를 갖는 (F-n)/2 채널들을 미리 선택하고, 가중치 2×dmin를 갖는 (F+n)/2 채널들을 미리 선택한다. n≥F일 때 가중치 dmin를 갖는 F 채널들을 미리 선택한다. 미리 선택된 채널들을 역순으로 순서화한다. 예를 들어, 채널들은 내림차순 방식으로, 즉, 극성화 가중치 값이 높은 값으로부터 낮은 값으로 또는 신뢰성 내림차순으로 정렬된다. 다시 말해, K 가장 신뢰성 있는 세그먼트에서 가중치 dmin 및/또는 2*dmin를 갖는 가장 신뢰성 있는 서브채널들이 미리 선택된다. 따라서, 단계(1110)는, 일부 실시예들에서, 동적 동결된 비트들에 사용될 수 있는, 다수의 순서화된 미리 선택된 서브채널들(후보 비트 세트들)을 제공한다. 그러나, 일반적으로, 동적 동결된 비트들에 대한 미리 선택된 서브채널들의 수는 작거나 클 수 있다.
실제 예에서, N0는 마더 코드 길이이고, N은 레이트 매칭 후의 코드 길이이고, K는 정보 블록 길이이다. 실시예에서, N0은 N0 = 2^ceil(log2(N))로서 정의될 수 있다. 이어서, 표 3에 도시된 바와 같이, 동결된 비트 서브채널들이 정렬되어 2개의 세그먼트로 세그먼트화될 수 있거나, 다시 말해서, 동결된 비트 서브채널들을 포함하는 비트 서브채널들 모두가 정렬되어 2개의 세그먼트로 세그먼트화될 수 있다. 알 수 있는 바와 같이, 서브채널들은 오름차순 방식으로 정렬되는데, 즉, K 서브채널들은 가장 신뢰성 있는 것이고, (N0-K) 서브채널들은 가장 덜 신뢰성 있는 것이다.
Figure pct00016
다음 단계에서, 단계(1150)에서, 동결된 비트들의 세트(또는 다시 말해, 동결된 비트들에 대한 서브채널들)가 다수의 미리 선택된 후보 비트 세트들로부터 또는 그에 기초하여 선택된다. 동결된 비트들의 선택된 세트는 오름차순 극성화 가중치 순서에 따라 비트별로 선택될 수 있다. 비트들의 수가 N0-K일 때, 동결된 비트들의 선택된 세트 또는 동결된 비트들에 대한 서브채널들이 완료될 수 있다. 일부 실시예들에서, 동결된 비트들에 대해 선택된 서브채널들의 세트는 미리 선택된 서브채널들의 일부 또는 전부를 포함하고, 선택된 서브채널들의 일부 또는 전부는 동적 동결된 비트들에 대해 사용될 수 있다. 다른 실시예들에서, 동결된 비트들에 대해 선택된 서브채널들의 세트는 미리 선택된 서브채널들과 별개이고(즉, 포함하지 않음), 서브채널들의 수가 N0-K-F일 때 서브채널들의 선택된 세트가 완료될 수 있다. 나머지 (K) 서브채널들(즉, 동결된 및/또는 동적 동결된 비트들에 사용되지 않은 것들) 전부는 (K) 정보 비트들에 대한 서브채널들이다. 일부 실시예들에서, 선택된 동결된 서브채널들(예를 들어, 미리 선택된 후보 동결된 비트 세트들 또는 모든 동결된 서브채널들) 중 일부가 동적 동결된 비트들에 사용될 수 있다.
동결된 비트들의 선택된 세트를 선택하는 것은 소수 p를 결정하는 것을 포함한다. 다양한 실시예들에서, 고유 소수는 5, 7 또는 11일 수 있다. 동결된 비트 세트를 최종적으로 선택하기 위해, 인코더 및 디코더는 인코더 및 디코더에 구현된 p-길이 순환 시프트 레지스터를 동작시킬 수 있다. 순환 시프트 레지스터는 각각의 비트를 인코딩/디코딩 시에 좌측으로 시프트할 수 있다. 도 12는 인코더 및 디코더 중 적어도 하나에서의 길이 5(p-길이)를 갖는 이러한 순환 시프트 레지스터를 도시한다. 비트가 레지스터 내의 정보 비트인 경우, 그것은 무시되고(XOR), 비트가 동결된 비트인 경우, 이 비트의 비트 값이 사용되고 선택된다. 다양한 실시예들에서, 비트들은 레지스터에서 초기화될 때 0으로 설정된다. 일부 실시예들에서, 동결된 비트 세트는 코드 워드 간에 변화될 수 있다.
다른 실시예에서, 제3 단계는 패리티 검사 함수를 구성하고, 동적 동결된 비트들에 대한 비트 값들뿐만 아니라 정보 비트들 및 (정적) 동결된 비트들에 대한 비트 값들을 결정한다. 소수 p가 결정된다. 다양한 실시예들에서, 고유 소수는 5, 7 또는 11일 수 있다. 패리티 검사 함수를 구성하고 동적 동결된 비트 값들을 결정하기 위해, p-길이 순환 시프트 레지스터가 인코더(및 디코더)에서 구현될 수 있다. 순환 시프트 레지스터는 인코딩 동안 입력 비트 벡터에 대한 비트 값을 결정할 시에 또는 비트 값을 디코딩할 시에 좌측으로 시프트할 수 있다. 도 12는 인코더 및 디코더 중 적어도 하나에서의 길이 5(p-길이)를 갖는 이러한 순환 시프트 레지스터를 도시한다. 위의 2개의 단계에 의해 결정된 바와 같이, 비트가 정보 비트인 경우, 레지스터 내의 제1 비트는 현재 정보 비트 값과 XOR되고, 그 다음에 순환 시프트된다. 비트가 (정적) 동결된 비트인 경우, 비트 값은 인코더와 디코더 둘 다에 의해 알려진 고정된 값(예를 들어, 0)으로 설정되고, 그 다음에 순환 시프트된다; 비트가 동적 동결된 비트인 경우, 레지스터 내의 제1 비트의 값은 현재 동적 동결된 비트의 값으로서 할당된다. 다양한 실시예들에서, 비트들은 레지스터에서 초기화될 때 0으로 설정된다. 일부 실시예들에서, 동결된 비트 세트는 코드 워드 간에 변화될 수 있다.
방법(1100)은 복수의 장점을 제공할 수 있다: 인코더는 패리티 함수들의 온라인 컴퓨팅을 수행할 필요가 없을 수 있다. 인코더는 패리티 함수들을 저장할 필요가 없을 수 있다. 디코더는 패리티 함수들을 검색할 필요가 없을 수 있고, 따라서 더 적은 복잡성으로 동작될 수 있다.
도 13a 내지 도 13d는 실시예들에 따라 선택되는 동결된 비트들의 선택된 세트에 대한 극성 코드의 성능을 도시한다. 도 13a는 K=40 정보 비트들에 대한 성능 및 QPSK 변조에 대한 성능을 도시하고, 도 13b는 K=60 정보 비트들에 대한 성능 및 QPSK 변조에 대한 성능을 도시하고, 도 13c는 K=80 정보 비트들에 대한 성능 및 QPSK 변조에 대한 성능을 도시하고, 도 13d는 K=120 정보 비트들에 대한 성능 및 QPSK 변조에 대한 성능을 도시한다. 그래프들로부터 알 수 있는 바와 같이, 본 발명의 극성 코드는 다른 코드들을 나타내는 다른 그래프들과 비교하여 더 양호한 성능 및 더 적은 복잡성을 제공한다.
도 14a 및 도 14b는 주어진 블록 에러 레이트(BLER)에 대한 평균 수신된 Es/N0 포인트들을 도시한다. 도시된 그래프들에 나타난 바와 같이, (실시예에 따라 선택되는) 동결된 비트들의 선택된 세트를 갖는 극성 코드들은 다른 극성 코드들보다 우수한 성능을 제공한다.
도 15는 무선 디바이스, 전송 포인트 또는 수신 포인트, 예를 들어, 네트워크 컴포넌트 또는 사용자 장비와 같은 디바이스(1500)의 블록도이다. 디바이스(1500)는 CPU(1502), 대용량 스토리지 컴포넌트(1504), 네트워크 인터페이스(1506), 인코더/디코더(1508), 메모리(1510), 비디오 어댑터(1512), 및 I/O 인터페이스(1514)를 포함한다.
디바이스(1500)는 도시된 컴포넌트들 모두, 또는 컴포넌트들의 서브세트만을 이용할 수 있고, 통합의 레벨들은 구현에 따라 달라질 수 있다. 또한, 디바이스(1500)는 다수의 CPU들(1502) 등과 같은 컴포넌트의 다수의 인스턴스들을 포함할 수 있다. 디바이스(1500)는 네트워크 인터페이스(1506)를 이용하여 네트워크(1520)에 접속하고, 비디오 어댑터(1512)를 이용하여 디스플레이(1516)에 접속하고, I/O 인터페이스(1514)를 이용하여 스피커, 마이크로폰, 마우스, 터치스크린, 키패드, 키보드, 프린터 등과 같은 하나 이상의 입력/출력 디바이스(1518)에 접속할 수 있다.
일부 실시예들에서, CPU(1502)는 범용 컴퓨터 하드웨어 플랫폼의 컴포넌트일 수 있는 임의의 프로세서일 수 있다. 다른 실시예들에서, CPU(1502)(프로세서)는 특수 목적 하드웨어 플랫폼의 컴포넌트일 수 있다. 예를 들어, CPU(1502)는 내장형 프로세서일 수 있고, 명령어들은 펌웨어로서 제공될 수 있다. 일부 실시예들은 하드웨어만을 이용하여 구현될 수 있다. 일부 실시예들에서, 프로세서에 의한 실행을 위한 명령어들은 소프트웨어 제품의 형태로 구현될 수 있다. 소프트웨어 제품은 비휘발성 또는 비일시적 메모리 또는 저장 매체에 저장될 수 있는데, 이는 예를 들어 CD-ROM(compact disc read-only memory), USB(universal serial bus) 플래시 디스크, 또는 착탈식 하드 디스크일 수 있다.
인코더/디코더(1508)는 인코딩 컴포넌트, 디코딩 컴포넌트, 또는 둘 다를 포함할 수 있다. 일부 실시예들에서, 인코더/디코더(1508)는 본 명세서에 개시된 바와 같이 데이터를 인코딩하거나 선택, 매핑, 및/또는 인코딩 동작들을 수행하도록 구성되는 프로세서와 같은 회로부에 구현된다. 인코더/디코더(1508)의 프로세서 기반 구현에서, 인코딩 동작들을 수행하기 위한 프로세서 실행가능 명령어들은 비일시적 프로세서 판독가능 매체에 저장된다. 비일시적 매체는, 예를 들어 메모리(1510)에서, 하나 이상의 고체 상태 메모리 디바이스 및/또는 이동식 및 가능하게는 착탈식 저장 매체를 갖는 메모리 디바이스들을 포함할 수 있다.
버스는 메모리 버스 또는 메모리 제어기, 주변 버스, 비디오 버스 등을 포함하는 임의의 타입의 수개의 버스 아키텍처들 중 하나 이상일 수 있다. CPU(1502)는 임의의 타입의 전자 데이터 프로세서(electronic data processor)를 포함할 수 있다. 메모리(1510)는 SRAM(static random access memory), DRAM(dynamic random access memory), SDRAM(synchronous DRAM), ROM(read-only memory), 이들의 조합 등과 같은 임의의 타입의 시스템 메모리를 포함할 수 있다. 일부 실시예들에서, 메모리(1510)는 디바이스의 인코더/디코더(1508) 또는 다른 컴포넌트(들)의 동작을 구현 및/또는 제어하고/하거나 다른 방식으로 본 명세서에 설명된 기능 및/또는 실시예들의 실행을 제어하기 위한 프로세서에 의한 실행을 위한 명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체이다. 실시예에서, 메모리(1510)는 부트업 시에 이용하기 위한 ROM, 및 프로그램들을 실행하는 동안 이용하기 위한 프로그램 및 데이터 저장을 위한 DRAM을 포함할 수 있다.
대용량 스토리지 컴포넌트(1504)는 데이터, 프로그램들, 및 다른 정보를 저장하고, 버스를 통해 데이터, 프로그램들, 및 다른 정보에 액세스할 수 있게 하도록 구성되는 임의의 타입의 저장 디바이스를 포함할 수 있다. 대용량 스토리지 컴포넌트(1504)는 예를 들어 고체 상태 드라이브, 하드 디스크 드라이브, 자기 디스크 드라이브, 광학 디스크 드라이브 또는 그와 유사한 것 중 하나 이상을 포함할 수 있다.
비디오 어댑터(1512) 및 I/O 인터페이스(1514)는 외부 입력 및 출력 디바이스들을 처리 유닛에 결합하는 인터페이스들을 제공한다. 예시되는 바와 같이, 입력 및 출력 디바이스들의 예들은 비디오 어댑터(1512)에 결합되는 디스플레이(1516) 및 I/O 인터페이스(1514)에 결합되는 마우스/키보드/프린터를 포함한다. 다른 디바이스들이 처리 유닛에 결합될 수 있고, 추가적인 또는 더 적은 인터페이스 카드들이 활용될 수 있다. 예를 들어, 프린터에 대한 인터페이스를 제공하기 위해 USB(Universal Serial Bus)(도시되지 않음)와 같은 직렬 인터페이스가 이용될 수 있다.
네트워크 인터페이스(1506)는 이더넷 케이블 등과 같은 유선 링크들, 및/또는 노드들 또는 상이한 네트워크들에 액세스하기 위한 무선 링크들을 포함할 수 있다. 네트워크 인터페이스(1506)는, 예를 들어, 인코딩된 데이터 또는 비트들을 전송 및/또는 수신하는 것을 포함하여, 디바이스 및/또는 처리 유닛이 네트워크(1520)를 통해 원격 유닛들과 통신하는 것을 허용하도록 구성될 수 있다. 예를 들어, 네트워크 인터페이스(1506)는 하나 이상의 송신기/송신 안테나 및 하나 이상의 수신기/수신 안테나를 통해 무선 통신을 제공할 수 있다. 실시예에서, 처리 유닛은 다른 처리 유닛들, 인터넷, 원격 저장 설비들 등과 같은 원격 디바이스들과의 데이터 처리 및 통신들을 위한 근거리 네트워크 또는 광역 네트워크에 결합된다.
도시되지는 않았지만, 네트워크 인터페이스(1506)는 송신 체인의 변조기, 증폭기, 안테나 및/또는 다른 모듈들 또는 컴포넌트들, 및 추가적으로 또는 대안적으로 수신 체인의 복조기, 증폭기, 안테나 및/또는 다른 모듈들 또는 컴포넌트들을 포함할 수 있다. 대안으로, 네트워크 인터페이스(1506)는 개별 (RF) 송신 및/또는 수신 모듈과 인터페이스하도록 구성될 수 있다. 예를 들어, 인코더/디코더(1508)는, 개별 (RF) 송신 유닛에 의해 네트워크 인터페이스(1506)를 통한 송신을 위해 데이터를 인코딩(및/또는 디코딩)하기 위해 또는 개별 (RF) 수신 유닛에 의해 그리고 네트워크 인터페이스(1506)를 통해 수신된 신호들을 디코딩하여 여기서 설명된 바와 같은 정보 비트들을 획득하기 위해 하드웨어 또는 회로부에서(예를 들어, 하나 이상의 칩셋, 마이크로프로세서, ASIC, FPGA, 전용 논리 회로부, 또는 이들의 조합에서) 구현될 수 있다.
전술한 바와 같이, 패리티 비트들이 서브채널들과 연관된 행 가중치들에 기초하여 매핑될 때, 행 가중치 값(예를 들어, wmin, 2*wmin)을 서브채널들의 행 가중치들과 비교하여 어느 서브채널들이 패리티 비트(들)에 대해 예약되어야 하는지를 식별할 필요가 있을 수 있다. 본 개시내용의 실시예들은 행 가중치 값(예를 들어, wmin, 2*wmin)을 다수의 서브채널들의 행 가중치들과 병렬로 비교한다. 이것은 비교 동작들과 연관된 레이턴시를 감소시킬 수 있고, 그에 의해 인코딩 프로세스가 더 신속하고 효율적으로 수행될 수 있게 한다. 도 16은 PC 비트(들)에 대해 예약될 서브채널들을 식별하기 위해 병렬 비교 동작들을 사용하기 위한 기술의 도면이다. 이 예에서, 정보 비트들(1620), PC 비트들(1630) 및 동결된 비트들(1640)은 서브채널 신뢰성 오름차순으로 정렬되는 서브채널들(1611 내지 1619)에 매핑된다. 정보 비트들(1620)을 서브채널들(1611 내지 1619) 중 임의의 것에 매핑하기 전에, 적어도 2개의 서브채널(1618, 1619)의 행 가중치들은 하나 이상의 행 가중치 값(예를 들어, wmin, 2*wmin) 과 병렬로 비교되고, 하나 이상의 행 가중치 값과 매칭되는 행 가중치를 갖는 가장 신뢰성 있는 서브채널들은 PC 비트들(1630)에 대해 예약된다. 일부 실시예들에서, 제1 행 가중치 값(예를 들어, wmin)과 매칭되는 행 가중치를 갖는 특정 개수(f 1 )의 서브채널들이 PC 비트들에 대해 예약되고, 제2 행 가중치 값(예를 들어, 2*wmin)과 매칭되는 행 가중치를 갖는 특정 개수(f 2 )의 서브채널들이 PC 비트들에 대해 예약된다. 행 가중치 값들 중 하나 이상, 및 각각의 각자의 행 가중치 값에 대해 예약된 특정 개수들의 서브채널들을 정의하는 인덱스들이 코드 레이트 및/또는 블록 길이 파라미터에 기초하여 결정될 수 있다.
도 17은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법(1700)을 예시한다. 단계(1710)에서, 인코더는 PC 비트들에 대한 서브채널들을 예약하기 위한 적어도 행 가중치를 결정한다. 적어도 하나의 행 가중치 값은 인코딩될 정보 비트들의 시퀀스와 연관된 블록 길이 및 채널의 코드 레이트에 기초하여 결정될 수 있다. 단계(1720)에서, 인코더는 적어도 하나의 행 가중치 값을 2개 이상의 서브채널의 행 가중치들과 병렬로 비교하여 PC 비트(들)에 대한 서브채널들 중 하나 이상을 예약하는 것을 결정한다. 실시예에서, 인코더는 더 신뢰성 있는 서브채널들이 덜 신뢰성 있는 서브채널들 이전에 평가되도록 서브채널들의 순서화된 시퀀스에 따라 신뢰성 내림차순으로 서브채널들을 평가할 수 있다. 대안적으로, 정보 또는 PC 비트들(예를 들어, K+Fp 서브채널들)에 매핑될 서브채널들의 서브세트 내의 모든 서브채널들은 병렬로 평가된다.
단계(1730)에서, 인코더는 충분한 서브채널들이 PC 비트(들)에 대해 예약되었는지를 결정한다. 예로서, 인코더는 wmin와 동일한 행 가중치를 갖는 적어도 f1 서브채널들이 예약되었는지 및/또는 2*wmin와 동일한 행 가중치를 갖는 적어도 f2 서브채널들이 예약되었는지를 결정할 수 있다. 그렇지 않다면, 방법(1700)은 단계(1720)로 복귀하고, 여기서 인코더는 다음 2개 이상의 서브채널을 평가한다. 충분한 서브채널들이 PC 비트들에 대해 예약되었다고 인코더가 결정하였다면, 방법은 단계(1740)로 진행하고, 여기서 인코더는 정보 비트들을 가장 신뢰성 있는 나머지 서브채널들에 매핑한다. 단계(1750)에서, 인코더는 동결된 비트들을 가장 덜 신뢰성 있는 나머지 서브채널들에 매핑한다. 일부 실시예들에서, 동결된 비트 세트로부터 추가적인 PC 비트들이 선택될 수 있다. 일 구현에서, PC 비트들에 대해 서브채널들을 예약하기 위해 사용되는 적어도 하나의 행 가중치와 동일한 행 가중치들을 갖는 모든 동결된 서브채널들이 선택될 수 있다; 다른 구현에서, 모든 동결된 서브채널들이 선택될 수 있다. 단계(1760)에서, 인코더는 정보 비트들의 PC 함수에 기초하여 예약된 서브채널들에 대한 PC 비트 값들을 설정한다. 단계들(1740, 1750, 및 1760)은 임의의 순서로 수행될 수 있다. 또한, PC 비트들에 대한 서브채널들의 수는 많은 상이한 방식들로 결정될 수 있고, 앞서 살펴본 바와 같이, PC 비트들에 대한 예약된 서브채널들의 수는 고정, 예를 들어, 3일 수 있고, 및/또는 예약된 서브채널들 중 일부 또는 전부는 dmin에 기초할 수 있다.
도 18은 인코더에 의해 수행될 수 있는 바와 같이 극성 인코딩을 수행하기 위해 룩업 테이블을 사용하는 방법(1800)의 흐름도를 예시한다. 단계(1810)에서, 인코더는 코드 파라미터들을 결정하기 위해 코드 레이트 및 정보 블록 길이에 기초하여 룩업 테이블을 검색한다. 단계(1820)에서, 인코더는 서브채널들을 정보 비트들, 패리티 비트들, 및 동결된 비트들에 매핑한다. 단계(1830)에서, 인코더는 정보 비트들의 패리티 검사 함수에 기초하여 패리티 비트 값들을 설정한다.
도 19는 인코더에 의해 수행될 수 있는 바와 같이 최소 해밍 가중치 값을 결정하기 위한 방법(1900)의 흐름도를 예시한다. 단계(1910)에서, 인코더는 그들의 신뢰성에 기초하여 오름차순(Q0, Q1, … QN)으로 서브채널들을 열거하는 순서화된 시퀀스(Q)를 획득하기 위해 그들의 채널 신뢰성들에 기초하여 서브채널들을 정렬한다. 단계(1920)에서, 인코더는 가장 신뢰성 있는 서브채널들의 서브세트를 식별한다. 펑처링 단계가 극성 인코딩 단계 후에 수행되는 예들에서, 가장 신뢰성 있는 서브채널들의 서브세트는 펑처링된 서브채널들을 배제할 수 있다.
가장 신뢰성 있는 서브채널들의 세트 내의 서브채널들의 수는 다음의 수학식: min(length(UM),K+F p ))에 따라 결정될 수 있고, 여기서 UM는 펑처링 후에 유지되는 서브채널들의 세트이고, K는 정보 블록의 길이이고,
Figure pct00017
이고, 여기서 M은 마더 코드 길이이고, α는 1보다 큰 값으로 설정되고, 예를 들어, α=1.5이다. 일부 다른 실시예들에서, F p 는 고정된 값, 예를 들어, 3일 수 있다. 단계(1930)에서, 인코더는 가장 신뢰성 있는 서브채널들의 서브세트 내의 서브채널들의 최소 해밍 가중치(umin)를 결정한다.
단계(1940)에서, 가장 신뢰성 있는 서브채널들의 서브세트 내에서, 인코더는 PC 비트들에 대한 최소 해밍 가중치(umin)와 동일한 해밍 가중치를 갖는 제1 개수의 서브채널들, 및 PC 비트들에 대한 1 더하기 최소 해밍 가중치(1+umin)와 동일한 해밍 가중치를 갖는 제2 개수의 서브채널들을 예약한다. 인코더는, 예를 들어, 순차적인 방식으로 서브채널들의 순서화된 시퀀스를 스캐닝하는 것에 의해서를 포함하는, 다수의 상이한 방식으로 서브채널들을 예약할 수 있다. 다른 구현들에서, Fp 서브채널들의 서브세트만이 umin 및/또는 1+umin에 기초하여 예약되고, Fp 서브채널들의 나머지 서브세트는 다른 메트릭, 예를 들어, K+Fp 가장 신뢰성 있는 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들에 기초하여 예약된다. 서브채널들이 PC 비트들에 대해 예약되거나 다른 방식으로 할당되었다면, 나머지 서브채널들은 정보 및 동결된 비트들에 할당된다. 단계(1950)에서, 인코더는 정보 비트들을 가장 신뢰성 있는 나머지 서브채널들에 매핑하고, 동결된 비트들을 가장 덜 신뢰성 있는 나머지 서브채널들에 매핑한다. 일부 실시예들에서, 동결된 비트 세트로부터 추가적인 PC 비트들이 선택될 수 있다. 일 구현에서, PC 비트들에 대한 예약된 서브채널들의 해밍 가중치와 동일한 해밍 가중치를 갖는 동결된 서브채널들 중 일부 또는 전부가 선택될 수 있다. 다른 실시예들에서, 모든 동결된 서브채널들이 PC 비트들로서 선택될 수 있다. 단계(1960)에서, 인코더는 정보 비트들의 패리티 검사 함수에 기초하여 패리티 비트 값들을 설정한다. 구현에 따라, 서브채널들이 할당되는 순서는 변할 수 있다. 마찬가지로, PC 비트들, 정보 비트들 또는 동결된 비트들이 할당된 서브채널들에 매핑되는 순서도 변할 수 있다는 것이 이해된다.
일부 실시예들에서, 아리칸 인코더는 극성 인코딩을 달성하는 데 이용될 수 있다. 도 20은 실시예 인코더(2000)의 도면이다. 인코더는 코드 구성기(2010), 아리칸 인코더(2020), 및 펑처러(puncturer)(2030)를 포함한다. 코드 구성기(2010)는 서브채널 타입들의 세트를 결정할 수 있다. 각각의 서브채널은 정보 비트, PC 비트, 또는 동결된 비트(또는 그 반대로)에 매핑된다. 극성화 이론에 따르면, 각각의 서브채널에 대한 신뢰성(또는 상호 채널 용량)은 서로 상이하다. 높은 신뢰성을 갖는 서브채널들은 정보 비트들을 송신하도록 선택된다. 이러한 서브채널들의 위치들의 세트는 정보 세트(I)로 명명된다. 레이트 매칭에 의해 야기되는 신뢰성 없는 서브채널들을 포함하는 낮은 신뢰성을 갖는 서브채널들은 0으로 설정되고, 그들의 위치들의 세트는 동결된 세트(F)로서 표시된다. 일부 서브채널들은 PC 비트들을 송신하도록 선택되고, 그들의 위치들의 세트는 PC 동결된 세트(PF)로서 표시된다. 하나의 극성 블록의 서브채널들의 총 수(N)는 2의 거듭제곱 값일 수 있고, 마더 코드 블록 길이(N=I+F+PF)로서 지칭될 수 있다. 코드 구성기(2010)는 또한 정보 비트 값들 및 서브채널 타입들에 기초하여 서브채널 값들의 세트를 결정할 수 있다. 특히, 정보 비트들에 매핑되는 서브채널들은 정보 비트들의 값들에 기초하여 설정될 수 있고, PC 비트들에 매핑되는 서브채널들은 패리티 검사 함수에 기초하여 설정될 수 있고, 동결된 비트들에 대한 서브채널들은 0으로 설정된다. 아리칸 인코더(2020)는 N 크기의 서브채널 블록을 크로네커 행렬에 의해 곱하여 N 비트 코드워드를 획득할 수 있다. 아리칸 인코더(2020)는 다음의 수학식:
Figure pct00018
에 따라 곱셈을 수행할 수 있고, 여기서 가장 우측 행렬은 아리칸 극성 코드들에 대한 N×N 생성기 행렬이다. 펑처러(2030)는 펑처 비트 세트(P)에 의해 N 비트 코드워드를 M 크기의 코드 길이로 펑처링/단축시킬 수 있다. 코드 레이트(R)와 코드 길이(M)의 조합이 주어지면, 인코더와 디코더 둘 다는 동일한 결정론적 프로토콜을 이용하여 이러한 동결된 세트(F), PC 동결된 세트(PF) 및 단축/펑처 비트 세트(P)를 계산할 수 있다.
마더 코드 길이 N를 갖는 극성 코드는 길이 N/2의 2개의 극성 코드의 네스팅된 조합(nested combination)으로서 모델링될 수 있다. 따라서, 길이 N/2의 극성 코드들에 대한 순서화된 시퀀스가 길이 N의 극성 코드들에 대한 순서화된 시퀀스의 서브세트가 되도록 비트 위치들의 순서화된 시퀀스(인덱스 시퀀스)를 구성하는 것이 가능하다. 최대 코드 길이 Nmax의 극성 코드에 대해 이러한 시퀀스
Figure pct00019
(여기서 Nmax은 2의 거듭제곱임)는, 이후 네스팅된 방식으로 Nmax보다 작은 (2의 거듭제곱의) 코드 길이와 코드 레이트의 임의의 조합을 커버한다. 그 다음에, 레이트 매칭은 낮은 복잡성으로 그리고 비교적 미세한 입도(fine granularity)로 수행될 수 있다. 대안적으로, 상이한 길이 순서화된 시퀀스들의 생성은 오프라인으로(예를 들어, 인코딩 동작 전에) 생성될 수 있고, 각각의 순서화된 시퀀스에 대응하는 파라미터들은 룩업 테이블에 저장될 수 있다.
신호 대 잡음비(SNR) 독립적 신뢰성 추정은 각각의 서브채널의 신뢰성을 계산하고, 최대 코드 길이 Nmax의 극성 코드에 대한 순서화된 인덱스 시퀀스
Figure pct00020
를 저장하는 것에 의해 수행될 수 있다. 서브채널들의 신뢰성 순서는 가중치 시퀀스
Figure pct00021
를 통해 추정될 수 있고, 이것은 다음과 같이 계산될 수 있다:
Figure pct00022
일 때
Figure pct00023
,
Figure pct00024
를 가정하면,
Figure pct00025
이고, 여기서
Figure pct00026
이다.
일 예에서, Nmax=16의 마더 코드 길이, n=log2(16)=4 및 i=3(
Figure pct00027
)일 때, W3은 다음 식으로서 계산될 수 있다: W3 = 1*2 (0*(1/4)) + 1*2 (1*(1/4)) + 0*2(2*(1/4)) + 0*2 (3*(1/4)) = 2.1892. 전체 가중치 벡터는
Figure pct00028
=[0 1 1.1892 2.1892 1.4142 2.4142 2.6034 3.6034 1.6818 2.6818 2.8710 3.8710 3.0960 4.0960 4.2852 5.2852]이고, 여기서 더 큰 값은 더 높은 신뢰성을 제안한다.
Figure pct00029
이 획득되면, 서브채널들은
Figure pct00030
이 되도록 극성화 가중치에 의해 정렬될 수 있다. 저장될 결과적인 시퀀스는
Figure pct00031
=[0 1 2 4 8 3 5 6 9 10 12 7 11 13 14 15]이다.
Figure pct00032
은 모든 인코딩 및 디코딩 레이트 매칭 동작에 대해 계산할 필요가 없도록 온-더-플라이(on-the-fly)로 계산되거나 메모리로부터 직접 로딩될 수 있다는 점에 유의한다.
펑처링 패턴은 내림차순 이진 인덱스들 [N-1,N-2,…,1,0]을 비트 반전(bit-reversing)하고, 최고 비트 반전된 값을 갖는 N-M 인덱스들을 펑처링된 위치들로서 마킹함으로써 결정론적 방식으로 계산될 수 있다. 예로서, Nmax=16의 마더 코드 길이를 고려한다. 인코더와 디코더 둘 다는 시퀀스
Figure pct00033
=[0 1 2 4 8 3 5 6 9 10 12 7 11 13 14 15]를 저장한다. 코드 길이 M을 획득하기 위해 펑처링될 4 비트(4=N-M)가 있고, [12(1100), 13(1101), 14(1110), 15(1111)] (= [M, …N-3, N-2, N-1])의 시퀀스를 P = [3(0011), 11(1011), 7(0111), 15(1111) = [BitRev(M), …, BitRev(N-3), BitRev(N-2), BitRev(N-1)])로서 비트 반전하는 것에 의해 길이-4 펑처링 패턴 P를 계산한다.
PC 동결된 세트(PF)는 서브채널 인덱스 및 단축/펑처링 패턴(P)의 관점에서 극성화 신뢰성들, 크로네커 커널의 행 가중치들 및 해밍 가중치들에 따라 결정될 수 있다. 가장 신뢰성 있는 서브채널들의 서브세트 내의 최소 행 가중치(들)(wmin) 및 각각의 PC 동결된 세트(f1,f2)의 크기들은 코드 레이트 및 정보 블록 길이에 기초하여 결정될 수 있다.
다음은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 5 단계 기법의 예이다.
제1 단계에서, 인코더는
Figure pct00034
에 따라 후보 PC 동결된 서브채널들의 수를 계산할 수 있다. 미리 플래그된 PC 동결된 비트들의 총 수는 N-K보다 작거나 같을 수 있다(N-K와 같을 때, 모든 동결된 비트들은 PC 동결된 비트들로서 취급된다). 실제로, Fp는 (N-K)/2에 의해 상한이 정해질 수 있고, α는 1보다 큰 값으로 설정되며, 예를 들어, α=1.5이다. 일부 다른 실시예들에서, Fp는 N, M 및 K의 상이한 함수를 가질 수 있거나, 고정될 수 있다.
제2 단계에서, 인코더는 펑처링/단축된 서브채널들을 가장 좌측으로 이동시킨 다음, 나머지 서브채널들을 신뢰성들의 오름차순으로 2개의 서브세트로 분할할 수 있다. 이것의 예는 도 21에 의해 도시된다.
제3 단계에서, 인코더는 서브채널들의 (K+Fp) 서브세트 내의 가장 작은 행 가중치를 찾고, 이를 wmin로서 나타내며, f1=(Fp+min(Fp,n))/2, f2=(Fp-min(Fp,n))/2를 계산한다. (K+Fp) 서브세트에서 가중치 wmin를 갖는 서브채널들의 수가 f1보다 작으면, f1=n를 설정하고, f1의 나머지 양의 절반을 f2에 추가하고, 즉, f2=f2+(f1-n)/2이다.
제4 단계에서, 인코더는 (K+Fp) 서브세트에서 후보 PC 동결된 서브채널들을 선택할 수 있다. 그렇게 함에 있어서, 인코더는 후보 PC 동결된 서브채널들로서 우측에서 좌측으로 wmin의 행 가중치를 갖는 f1 서브채널들을 선택하고, 우측에서 좌측으로 2×wmin의 행 가중치를 갖는 f2 서브채널들을 선택할 수 있다. 일부 다른 실시예들에서, Fp 서브채널들의 서브세트는 행 가중치 wmin에 기초하여 결정될 수 있고, Fp 서브채널들의 나머지 서브세트는 (K+Fp) 서브세트 내의 가장 덜 신뢰성 있는 서브채널들과 같은 적어도 하나의 다른 메트릭에 기초하여 결정될 수 있다.
제5 단계에서, 인코더는 정보 세트, PC 동결된 세트, 및 동결된 세트를 결정할 수 있다. 그렇게 함에 있어서, 인코더는 정보 서브채널들을 가장 우측으로부터 가장 좌측으로 선택하고 K 서브채널들이 선택될 때까지 후보 PC 동결된 서브채널들을 스킵할 수 있다. 이어서, 인코더는 나머지 서브채널들을 동결된 서브채널들로서 선택할 수 있고, 추가적인 PC 동결된 서브채널들로서 후보 PC 동결된 서브채널들과 동일한 행 가중치(즉, wmin 및 2×wmin)를 갖는 동결된 서브채널 위치들로부터 선택할 수 있다. 일부 다른 실시예들에서, 모든 동결된 서브채널들은 추가적인 PC 동결된 서브채널들로서 선택될 수 있다. PC 동결된 비트가 첫번째 정보 비트 이전이면, 그것은 동결된 비트와 등가일 수 있다.
인코더는 레지스터 상의 순환 시프트에 기초하여 패리티 검사 함수를 수행할 수 있다. 레지스터의 길이는 소수일 수 있다. 인코더는 i = 0 내지 N-1에 대해 p-길이 순환 시프트 레지스터 y[0], …, y[p-1]를 0으로 초기화할 수 있다. 첫번째 비트로부터 자연수 순서로 시작하여, 인코더는 i번째 비트 ai를 판독하고, 레지스터를 비트 단위로(bit by bit) 순환 좌측 시프트할 수 있다. ai가 정보 비트이면, 비트 값은 변경되지 않은 채로 유지되고, 인코더는 y[0] = (ai XOR y[0])을 업데이트한다. ai가 PC 비트이면, 인코더는 ai=y[0]를 설정한다. ai가 동결된 비트이면, 인코더는 ai=0를 설정한다.
도 22는 PC(패리티 검사) SCL 디코더에 의해 이용되는 실시예 순환 시프트 레지스터 동작을 예시한다. PC 함수는 PC 행렬 W에 의해 정의될 수 있다. 다음의 예는 코드 블록 길이가 M=16이고, 정보 비트 길이가 K=8인 것으로 가정할 것이다. 이것으로부터, 다음과 같은 서브채널들의 순서화된 시퀀스 Q를 획득하는 것이 가능하다: [u0,u1,u2,u4,u8,u3,u5,u6,u9,u10,u12,u7,u11,u13,u14,u15]. 위에서 제공된 수학식들(예를 들어,
Figure pct00035
등)에 기초하여, Fp가 6으로서 계산되고, wmin 및 n이 각각 2 및 3이다. n<Fp이기 때문에, 행 가중치 wmin=2를 갖는 f1=3 서브채널들 및 행 가중치 2×dmin=4를 갖는 f2=3 서브채널들이 PC 동결된 비트들로서 존재한다. 내림차순 신뢰성 순서에 의해, 이들 PC 동결된 비트들은 [u2,u4,u8,u9,u10,u12]이다. 정보 및 추가적인 동결된 비트들은 Q에 따라 채널 신뢰성에 기초하여 매핑된다. 정보 비트 세트는 [u3,u5,u6,u7,u11,u13,u14,u15]이고, 동결된 비트 세트는 [u0,u1,u2,u4,u8,u9,u10,u12]이다. 행 가중치 2 및 4를 갖는 동결된 비트들을 선택함으로써, PC 동결된 비트 세트는 [u1,u2,u4,u8,u9,u10,u12]이다. 마지막으로, p=5인 소수-길이 순환 레지스터가 [u1,u2,u4,u8,u9,u10,u12]에서 각각의 PC 동결된 비트에 대한 패리티 함수들을 구축하기 위해 사용된다. 순환 레지스터는 일정한 간격 5로 비트들을 접속한다. 특히, u1, u2, u4 및 u9는 정적 동결된 비트들과 등가이다. 추가적으로, u8, u10 및 u12는 (각각) [u3,u8], [u5,u10] 및 [u7,u12]의 패리티 함수들에 기초하여 PC 비트들에 매핑되고, 여기서 u3, u5 및 u7은 정보 비트들이다. 도 23은 이 예에 대한 패리티 검사 행렬을 예시한다. 도시된 바와 같이, W는 u8=u3,u10=u5,u12=u7이 되도록 셀프 패리티 검사 함수들(self-parity-check functions)에 기초하여 정적 동결된 비트들로서 u0, u1, u2, u4를 설정하고, PC 비트들로서 u8, u10 및 u12를 설정함으로써 획득된다. 표 1은 본 개시내용 전체에 걸쳐 사용되는 표기법을 열거한다.
Figure pct00036
도 24는 인코더에 의해 수행될 수 있는 바와 같은 정보 비트들의 시퀀스를 인코딩하기 위한 실시예 방법(2400)을 예시한다. 단계(2410)에서, 인코더는
Figure pct00037
(여기서 i는 서브채널의 인덱스이고, Bj는 최소 중요 디지트(least important digit)로부터 카운팅하는 서브채널 i의 이진 표현의 (j+1)번째 디지트의 비트 값 {0 또는 1}임)에 따라 가중치 시퀀스를 계산하고, 오름차순으로 Wi을 정렬하며, 순서화된 인덱스 시퀀스 Qi를 세이브(save)한다. 단계(2420)에서, 인코더는, 예를 들어, P = [BitRev(M), BitRev(M+1), … BitRev(N-1)])에 따라 펑처링/단축 패턴을 계산한다. 다른 펑처링/단축 패턴들이 또한 가능할 수 있다. 단계(2430)에서, 인코더는 Fp
Figure pct00038
에 의해 계산하고, (가중치 또는 신뢰성의 오름차순으로 된) 서브채널들을 3개의 서브세트: N-M, M-K-Fp, K+Fp로 분할하고, 여기서, K+Fp 서브세트는 (펑처링/단축이 고려될 때) 가장 신뢰성 있는 서브채널들을 포함한다. 인코더는 또한 (K+Fp) 서브세트 내의 가장 작은 행 가중치로서 wmin를 발견하고, 동일한 wmin를 갖는 (K+Fp) 서브세트 내의 서브채널들의 수로서 n을 발견하고, f1=(Fp+min(Fp,n))/2를 계산하고, f2=(Fp-min(Fp,n))/2를 계산한다. 단계(2440)에서, 인코더는 가중치 wmin를 갖는 f1 서브채널들 및 가중치 2*wmin를 갖는 f2 서브채널들을 선택함으로써 K+Fp 서브세트에서 PC 비트들에 대해 후보 서브채널들을 예약하거나 다른 방식으로 할당한다. 일부 실시예들에서, Fp는 고정된 값, 예를 들어, 3일 수 있다. 다른 실시예들에서, PC 비트들에 대한 Fp 서브채널들의 서브세트만이 행 가중치 wmin 및/또는 2*wmin에 기초하여 선택되고, PC 비트들에 대한 Fp 서브채널들의 나머지 서브세트는 적어도 다른 메트릭들, 예를 들어, 가장 신뢰성 있는 K+Fp 서브채널들 내의 가장 덜 신뢰성 있는 서브채널들에 기초하여 선택된다. 후보 PC 서브채널들이 할당되었다면, 인코더는 또한 K+Fp 서브세트에서 K (가장 신뢰성 있는 나머지) 서브채널들을 할당하고(즉, 예약된 후보 PC 서브채널들을 스킵하고) 정보 비트들을 매핑하여 정보 세트(I)를 획득한다. 인코더는 또한 동결된 비트들을 나머지 서브채널들(예를 들어, N-M 및/또는 M-K-Fp 서브세트)에 매핑하여 동결된 세트(F)를 획득한다. 다른 실시예들에서, 인코더는 동결된 세트 F로부터 PC 비트들에 대한 추가적인 서브채널들을 예약하거나 할당한다. 동결된 세트 F로부터 선택된 추가적인 서브채널들은 wmin 및/또는 2*wmin와 동일한 행 가중치들을 가질 수 있거나, 또는 모든 동결된 세트 F는 PC 비트들에 대한 추가적인 서브채널들로서 취급될 수 있다. 예약된 서브채널들은 PC 비트들에 매핑되어 PC 동결된 세트 PF를 획득할 수 있다. 단계(2450)에서, 인코더는 레지스터에서의 순환 시프트를 이용하여 패리티 검사 함수에 기초하여 PC 비트들의 값들을 설정한다. 레지스터는 소수와 동일한 길이를 가질 수 있다. 구현에 따라, 서브채널들이 할당되는 순서는 변할 수 있다. 마찬가지로, PC 비트들, 정보 비트들 또는 동결된 비트들이 할당된 서브채널들에 매핑되는 순서도 변할 수 있다.
도 25는 본 명세서에 설명되는 인코딩 방법들을 수행하기 위한 실시예 처리 시스템(2500)의 블록도를 예시하고, 이는 호스트 디바이스에 설치될 수 있다. 도시된 바와 같이, 처리 시스템(2500)은 프로세서(2504), 메모리(2506), 및 인터페이스들(2510 내지 2514)을 포함하며, 그것들은 도 25에 도시된 바와 같이 배열될 수 있다(또는 배열되지 않을 수 있다). 프로세서(2504)는 본 명세서에 설명된 선택, 매핑 및/또는 다른 인코딩 동작들 또는 디코딩 동작들과 같은 계산들 및/또는 다른 처리 관련 작업들을 수행하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션일 수 있고, 메모리(2506)는 프로세서(2504)에 의한 실행을 위한 프로그래밍 및/또는 명령어들을 저장하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션일 수 있다. 실시예에서, 메모리(2506)는 비일시적 컴퓨터 판독가능 매체를 포함한다. 인터페이스들(2510, 2512, 2514)은 처리 시스템(2500)이 인코딩된 데이터의 송신 또는 인코딩된 데이터에 기초한 신호의 수신을 허용하는 것과 같은 다른 디바이스들/컴포넌트들 및/또는 사용자와의 통신을 허용하도록 구성되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션일 수 있다. 예를 들어, 인터페이스들(2510, 2512, 2514) 중 하나 이상은 데이터, 제어, 또는 관리 메시지들을 프로세서(2504)로부터 호스트 디바이스 및/또는 원격 디바이스 상에 설치되는 애플리케이션들로 통신하도록 적응될 수 있다. 다른 예로서, 인터페이스들(2510, 2512, 2514) 중 하나 이상은 사용자 또는 사용자 디바이스(예를 들어, 개인용 컴퓨터(PC) 등)가 처리 시스템(2500)과 상호작용/통신하는 것을 허용하도록 적응될 수 있다. 처리 시스템(2500)은 장기 스토리지(예를 들어, 비휘발성 메모리 등)와 같은 도 25에 도시되지 않은 추가적인 컴포넌트들을 포함할 수 있다.
일부 실시예들에서, 처리 시스템(2500)은 전기통신 네트워크를 액세스하고 있거나, 또는 그렇지 않으면 그의 일부인 네트워크 디바이스에 포함된다. 일 예에서, 처리 시스템(2500)은, 기지국, 중계국, 스케줄러, 제어기, 게이트웨이, 라우터, 애플리케이션 서버, 또는 전기통신 네트워크에서의 임의의 다른 디바이스와 같은, 무선 또는 유선 전기통신 네트워크에서의 네트워크측 디바이스에 존재한다. 다른 실시예들에서, 처리 시스템(2500)은, 이동국, 사용자 장비(UE), 무선 디바이스, 개인용 컴퓨터(PC), 태블릿, 웨어러블 통신 디바이스(예를 들어, 스마트워치 등), 또는 전기통신 네트워크를 액세스하도록 적응되는 임의의 다른 디바이스와 같은, 무선 또는 유선 전기통신 네트워크를 액세스하는 사용자측 디바이스에 존재한다.
일부 실시예들에서, 인터페이스들(2510, 2512, 2514) 중 하나 이상은 처리 시스템(2500)을 전기통신 네트워크를 통해 시그널링을 송신 및 수신하도록 적응되는 송수신기에 접속시킨다. 도 26은 전기통신 네트워크를 통해 시그널링 또는 인코딩된 데이터를 송신 및 수신하도록 적응되는 송수신기(2600)의 블록도를 예시한다. 송수신기(2600)는 호스트 디바이스에 설치될 수 있다. 도시된 바와 같이, 송수신기(2600)는 네트워크측 인터페이스(2602), 결합기(2604), 송신기(2606), 수신기(2608), 신호 프로세서(2610), 및 디바이스측 인터페이스(2612)를 포함한다. 네트워크측 인터페이스(2602)는 무선 또는 유선 전기통신 네트워크를 통해 시그널링을 송신 또는 수신하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션을 포함할 수 있다. 결합기(2604)는 네트워크측 인터페이스(2602)를 통해 양방향 통신을 용이하게 하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션을 포함할 수 있다. 송신기(2606)는 기저대역 신호를 네트워크측 인터페이스(2602)를 통한 송신에 적절한 변조된 캐리어 신호로 변환하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션(예를 들어, 업-컨버터, 전력 증폭기 등)을 포함할 수 있다. 수신기(2608)는 네트워크측 인터페이스(2602)를 통해 수신되는 캐리어 신호를 기저대역 신호로 변환하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션(예를 들어, 다운-컨버터, 저잡음 증폭기 등)을 포함할 수 있다. 신호 프로세서(2610)는 기저대역 신호를 디바이스측 인터페이스(들)(2612)를 통한 통신에 적절한 데이터 신호로, 또는 그 반대로 변환하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션을 포함할 수 있다. 디바이스측 인터페이스(들)(2612)는 신호 프로세서(2610)와 호스트 디바이스 내의 컴포넌트들(예를 들어, 처리 시스템(2500), 근거리 네트워크(local area network)(LAN) 포트들 등) 사이에서 데이터-신호들을 통신하도록 적응되는 임의의 컴포넌트 또는 컴포넌트들의 컬렉션을 포함할 수 있다.
송수신기(2600)는 임의의 타입의 통신 매체를 통해 시그널링을 송신 및 수신할 수 있다. 일부 실시예들에서, 송수신기(2600)는 무선 매체를 통해 시그널링을 송신 및 수신한다. 예를 들어, 송수신기(2600)는 셀룰러 프로토콜(예를 들어, 롱-텀 에볼루션(long-term evolution)(LTE) 등), 무선 근거리 네트워크(WLAN) 프로토콜(예를 들어, Wi-Fi 등), 또는 임의의 다른 타입의 무선 프로토콜(예를 들어, 블루투스, 근접장 통신(near field communication)(NFC) 등)과 같은 무선 통신 프로토콜에 따라 통신하도록 적응되는 무선 송수신기일 수 있다. 이러한 실시예들에서, 네트워크측 인터페이스(2602)는 하나 이상의 안테나/방사 엘리먼트를 포함한다. 예를 들어, 네트워크측 인터페이스(2602)는 멀티-레이어 통신, 예를 들어, SIMO(single input multiple output), MISO(multiple input single output), MIMO(multiple input multiple output) 등을 위해 구성되는 단일 안테나, 다수의 개별 안테나들, 또는 멀티-안테나 어레이를 포함할 수 있다. 다른 실시예들에서, 송수신기(2600)는 유선 매체, 예를 들어, 트위스트-페어 케이블(twisted-pair cable), 동축 케이블, 광 섬유 등을 통해 시그널링을 송신 및 수신한다. 구체적인 처리 시스템들 및/또는 송수신기들이 도시된 컴포넌트들 전부, 또는 컴포넌트들의 서브세트만을 이용할 수 있고, 통합의 레벨들은 디바이스마다 다를 수 있다.

Claims (28)

  1. 데이터를 극성 코드(polar code)로 인코딩하기 위한 디바이스를 위한 방법으로서,
    상기 디바이스의 인코더에 의해, 정보 비트들 및 적어도 하나의 패리티 비트를 극성 인코딩(polar encoding)하여 인코딩된 데이터를 획득하는 단계 - 상기 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 상기 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널에 배치됨 -; 및
    상기 인코딩된 데이터를 다른 디바이스에 전송하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서, 상기 가중치 파라미터는 최소 가중치(minimal weight)를 포함하는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 중 적어도 하나에 또는 상기 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치되는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 디바이스의 인코더에 의해, 순서화된 서브채널들의 세그먼트(a segment of ordered sub-channels)로부터, 최소 가중치를 갖는 적어도 하나의 서브채널을 선택하는 단계를 추가로 포함하는 방법.
  5. 제4항에 있어서, 최소 가중치를 갖는 상기 적어도 하나의 서브채널은 상기 순서화된 서브채널들의 K 서브채널들의 세그먼트로부터 선택되고, 상기 K 서브채널들 각각은 상기 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들보다 더 높은 신뢰성 메트릭(reliability metric)을 갖고, K는 정보 블록 길이이고, N0은 마더 코드 길이(mother code length)인 방법.
  6. 제5항에 있어서, 상기 순서화된 서브채널들의 세그먼트로부터, 최소 가중치를 갖는 적어도 하나의 서브채널을 선택하는 단계는,
    K 서브채널들의 세그먼트 내의 최소 가중치를 갖는 서브채널들의 수 n이 미리 결정된 값 F보다 큰 경우, 상기 K 서브채널들의 세그먼트로부터, 상기 신뢰성 메트릭의 내림차순으로 최소 가중치를 갖는 F 서브채널들을 선택하는 단계를 포함하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 인코더에 의해, 패리티 검사 함수(parity check function)를 적용하여 상기 적어도 하나의 패리티 비트 각각에 대한 값을 결정하는 단계를 추가로 포함하는 방법.
  8. 제7항에 있어서, 상기 패리티 검사 함수는 소수 패리티 검사 함수(prime number parity check function)인 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서, 상기 순서화된 서브채널들은 신뢰성 메트릭에 기초하여 순서화되는 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서, 상기 가중치 파라미터는 가장 낮은 행 가중치를 포함하고, 상기 방법은,
    서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하는 단계를 추가로 포함하고, 서브채널의 행 가중치는 크로네커 행렬(Kronecker matrix)의 행 내의 1들의 수이고, 상기 행은 상기 서브채널에 대응하는 방법.
  11. 제10항에 있어서, 상기 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 상기 적어도 하나의 서브채널을 선택하는 단계는, 상기 K 가장 신뢰성 있는 서브채널들 중에서 상기 가장 낮은 행 가중치를 갖는 서브채널들의 수 n이 미리 결정된 수 Fp보다 큰 경우, 상기 K 가장 신뢰성 있는 서브채널들의 서브세트에서 상기 가장 낮은 행 가중치를 갖는 Fp 서브채널들을 선택하는 단계를 포함하는 방법.
  12. 제10항에 있어서, 가장 낮은 행 가중치를 갖는 상기 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 상기 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택되는 방법.
  13. 제10항에 있어서, 상기 정보 비트들에 대해 선택된 상기 서브채널들의 수가 K에 도달할 때까지, 상기 적어도 하나의 패리티 비트에 대해 선택되는 상기 적어도 하나의 서브채널을 스킵함으로써, 상기 서브채널들의 순서화된 시퀀스에서 상기 정보 비트들에 대해 서브채널들을 선택하는 단계를 추가로 포함하는 방법.
  14. 극성 코드로 데이터를 인코딩하도록 구성되는 디바이스로서,
    정보 비트들 및 적어도 하나의 패리티 비트를 극성 인코딩하여 인코딩된 데이터를 획득하도록 구성되는 인코더 - 상기 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 상기 적어도 하나의 패리티 비트에 대해 선택되는 적어도 하나의 서브채널에 배치됨 -; 및
    상기 인코딩된 데이터를 다른 디바이스에 전송하도록 구성되는 인터페이스
    를 포함하는 디바이스.
  15. 제14항에 있어서, 상기 가중치 파라미터는 최소 가중치를 포함하는 디바이스.
  16. 제14항 또는 제15항에 있어서, 상기 적어도 하나의 패리티 비트는 최소 가중치를 갖는 제1 개수의 서브채널들 중 적어도 하나에 또는 상기 최소 가중치의 2배를 갖는 제2 개수의 서브채널들에 배치되는 디바이스.
  17. 제14항 내지 제16항 중 어느 한 항에 있어서, 상기 인코더는 순서화된 서브채널들의 세그먼트로부터, 최소 가중치를 갖는 상기 적어도 하나의 서브채널을 선택하도록 추가로 구성되는 디바이스.
  18. 제17항에 있어서, 최소 가중치를 갖는 상기 적어도 하나의 서브채널은 상기 순서화된 서브채널들의 K 서브채널들의 세그먼트로부터 선택되고, 상기 K 서브채널들 각각은 상기 순서화된 서브채널들의 N0-K 세그먼트의 서브채널들보다 더 높은 신뢰성 메트릭을 갖고, K는 정보 블록 길이이고, N0는 마더 코드 길이인 디바이스.
  19. 제18항에 있어서, 상기 순서화된 서브채널들의 세그먼트로부터, 최소 가중치를 갖는 상기 적어도 하나의 서브채널을 선택하기 위해, 상기 인코더는,
    상기 K 서브채널들의 세그먼트에서 최소 가중치를 갖는 서브채널들의 수 n이 미리 결정된 값 F보다 큰 경우, 상기 K 서브채널들의 세그먼트로부터, 상기 신뢰성 메트릭의 내림차순으로 최소 가중치를 갖는 F 서브채널들을 선택하도록 추가로 구성되는 디바이스.
  20. 제14항 내지 제19항 중 어느 한 항에 있어서, 상기 인코더는 패리티 검사 함수를 적용하여 상기 적어도 하나의 패리티 비트 각각에 대한 값을 결정하도록 추가로 구성되는 디바이스.
  21. 제20항에 있어서, 상기 패리티 검사 함수는 소수 패리티 검사 함수인 디바이스.
  22. 제14항 내지 제21항 중 어느 한 항에 있어서, 상기 순서화된 서브채널들은 신뢰성 메트릭에 기초하여 순서화되는 디바이스.
  23. 제14항 내지 제22항 중 어느 한 항에 있어서, 상기 가중치 파라미터는 가장 낮은 행 가중치를 포함하고, 상기 인코더는,
    서브채널들의 순서화된 시퀀스의 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하도록 추가로 구성되고, 서브채널의 행 가중치는 크로네커 행렬의 행 내의 1들의 수이고, 상기 행은 상기 서브채널에 대응하는 디바이스.
  24. 제23항에 있어서, 상기 K 가장 신뢰성 있는 서브채널들의 서브세트에서 가장 낮은 행 가중치를 갖는 적어도 하나의 서브채널을 선택하기 위해, 상기 인코더는, 상기 K 가장 신뢰성 있는 서브채널들 중에서 상기 가장 낮은 행 가중치를 갖는 서브채널들의 수 n이 미리 결정된 수 Fp보다 큰 경우, 상기 K 가장 신뢰성 있는 서브채널들의 서브세트에서 상기 가장 낮은 행 가중치를 갖는 Fp 서브채널들을 선택하도록 추가로 구성되는 디바이스.
  25. 제23항에 있어서, 가장 낮은 행 가중치를 갖는 상기 적어도 하나의 서브채널은 내림차순 신뢰성 순서에 따라 상기 K 가장 신뢰성 있는 서브채널들의 서브세트로부터 선택되는 디바이스.
  26. 제23항에 있어서, 상기 인코더는 상기 정보 비트들에 대해 선택되는 상기 서브채널들의 수가 K에 도달할 때까지, 상기 적어도 하나의 패리티 비트에 대해 선택되는 상기 적어도 하나의 서브채널을 스킵함으로써, 상기 서브채널들의 순서화된 시퀀스에서 상기 정보 비트들에 대한 서브채널들을 선택하도록 추가로 구성되는 디바이스.
  27. 디바이스를 위한 디코딩 방법으로서,
    다른 디바이스로부터, 인코딩된 데이터에 기초하여 신호를 수신하는 단계 - 상기 인코딩된 데이터는 정보 비트들 및 적어도 하나의 패리티 비트를 극성 코드로 인코딩함으로써 생성되고, 상기 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 선택되는 적어도 하나의 서브채널에 배치됨 -; 및
    상기 극성 코드 및 상기 적어도 하나의 패리티 비트를 이용하여 상기 신호를 디코딩하여 상기 정보 비트들을 획득하는 단계
    를 포함하는 디코딩 방법.
  28. 극성 코드로 디코딩하도록 구성되는 디바이스로서,
    다른 디바이스로부터, 인코딩된 데이터에 기초하여 신호를 수신하도록 구성되는 인터페이스 - 상기 인코딩된 데이터는 정보 비트들 및 적어도 하나의 패리티 비트를 극성 코드로 인코딩함으로써 생성되고, 상기 적어도 하나의 패리티 비트는 가중치 파라미터에 기초하여 선택된 적어도 하나의 서브채널에 배치됨 -; 및
    상기 극성 코드 및 상기 적어도 하나의 패리티 비트를 이용하여 상기 신호를 디코딩하여 상기 정보 비트들을 획득하도록 구성되는 디코더
    를 포함하는 디바이스.
KR1020197010149A 2016-09-15 2017-09-13 극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치 KR102199298B1 (ko)

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201662395312P 2016-09-15 2016-09-15
US62/395,312 2016-09-15
US201662396618P 2016-09-19 2016-09-19
US62/396,618 2016-09-19
US201662402862P 2016-09-30 2016-09-30
US62/402,862 2016-09-30
US201662432416P 2016-12-09 2016-12-09
US201662432448P 2016-12-09 2016-12-09
US62/432,448 2016-12-09
US62/432,416 2016-12-09
US201662433127P 2016-12-12 2016-12-12
US62/433,127 2016-12-12
US15/699,976 US10644829B2 (en) 2016-09-15 2017-09-08 Method and apparatus for encoding data using a polar code
US15/699,976 2017-09-08
PCT/CN2017/101531 WO2018050063A1 (en) 2016-09-15 2017-09-13 Method and apparatus for encoding data using a polar code

Publications (2)

Publication Number Publication Date
KR20190052054A true KR20190052054A (ko) 2019-05-15
KR102199298B1 KR102199298B1 (ko) 2021-01-06

Family

ID=61560541

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197010149A KR102199298B1 (ko) 2016-09-15 2017-09-13 극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치
KR1020197010597A KR102206307B1 (ko) 2016-09-15 2017-09-13 폴라 코드를 사용하여 데이터를 인코딩하는 방법 및 장치

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197010597A KR102206307B1 (ko) 2016-09-15 2017-09-13 폴라 코드를 사용하여 데이터를 인코딩하는 방법 및 장치

Country Status (11)

Country Link
US (7) US10644829B2 (ko)
EP (3) EP3940961A1 (ko)
JP (2) JP6859429B2 (ko)
KR (2) KR102199298B1 (ko)
CN (4) CN110855299B (ko)
AU (2) AU2017326022B2 (ko)
BR (2) BR112019004937A2 (ko)
CA (2) CA3036759C (ko)
MY (1) MY195393A (ko)
WO (2) WO2018050063A1 (ko)
ZA (2) ZA201901831B (ko)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016110275A1 (zh) * 2015-01-08 2016-07-14 上海交通大学 一种基于媒体内容的fec机制
US10784901B2 (en) 2015-11-12 2020-09-22 Qualcomm Incorporated Puncturing for structured low density parity check (LDPC) codes
US11043966B2 (en) 2016-05-11 2021-06-22 Qualcomm Incorporated Methods and apparatus for efficiently generating multiple lifted low-density parity-check (LDPC) codes
US10454499B2 (en) 2016-05-12 2019-10-22 Qualcomm Incorporated Enhanced puncturing and low-density parity-check (LDPC) code structure
US10469104B2 (en) 2016-06-14 2019-11-05 Qualcomm Incorporated Methods and apparatus for compactly describing lifted low-density parity-check (LDPC) codes
US10644829B2 (en) * 2016-09-15 2020-05-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding data using a polar code
WO2018058352A1 (en) * 2016-09-28 2018-04-05 Qualcomm Incorporated Sub-channel mapping
US10484130B2 (en) 2016-09-30 2019-11-19 Huawei Technologies Co., Ltd. Method and device for parallel polar code encoding/decoding
WO2018107430A1 (en) * 2016-12-15 2018-06-21 Qualcomm Incorporated Crc bits for joint decoding and verification of control information using polar codes
CN117375765A (zh) * 2017-01-05 2024-01-09 华为技术有限公司 速率匹配方法、编码装置和通信装置
CN115720128A (zh) 2017-01-09 2023-02-28 中兴通讯股份有限公司 一种数据处理方法和装置
CN108289010B (zh) * 2017-01-09 2022-04-15 中兴通讯股份有限公司 一种数据处理方法和装置
CN108575116B (zh) * 2017-01-09 2019-09-24 联发科技股份有限公司 比特映射方法及其发送装置
WO2018129695A1 (en) * 2017-01-12 2018-07-19 Qualcomm Incorporated Puncturing and repetition for data encoding
CN108365914B (zh) * 2017-01-26 2023-04-18 华为技术有限公司 Polar码编译码方法及装置
US10608786B2 (en) * 2017-02-24 2020-03-31 Huawei Technologies Co., Ltd. Apparatus and methods of specifying ordered sequences of coding sub-channels
US11070237B2 (en) * 2017-03-23 2021-07-20 Qualcomm Incorporated Parity bit channel assignment for polar coding
CN107342844B (zh) 2017-03-24 2022-09-02 华为技术有限公司 一种编码方法和装置
JP7357541B2 (ja) * 2017-04-20 2023-10-06 クアルコム,インコーポレイテッド ポーラ符号のための動的凍結ビットおよび誤り検出
CN108809486B (zh) * 2017-05-03 2020-09-04 华为技术有限公司 Polar码编译码方法及装置
EP3622646B1 (en) * 2017-05-08 2020-10-21 Coherent Logix, Inc. Enhanced polarization weighting to enable scalability in polar code bit distribution
CN107425857A (zh) 2017-06-19 2017-12-01 华为技术有限公司 一种极化码编译码方法及装置
CN109286402B (zh) * 2017-07-21 2022-01-14 华为技术有限公司 一种Polar码编码方法及装置
WO2019047206A1 (en) * 2017-09-11 2019-03-14 Qualcomm Incorporated PHYSICAL DIFFUSION CHANNEL DESIGN FOR POLAR CODES
CN111434042A (zh) * 2017-11-15 2020-07-17 Idac控股公司 利用极性码进行urllc传输
KR102438982B1 (ko) * 2017-11-16 2022-09-01 삼성전자주식회사 무선 통신 시스템에서 부호화 및 복호화를 위한 방법 및 장치
US10540379B2 (en) * 2017-12-11 2020-01-21 International Business Machines Corporation Searching base encoded text
KR102550075B1 (ko) * 2018-03-23 2023-06-30 삼성전자주식회사 무선 통신 시스템에서 순환 중복 검사를 이용한 복호화를 위한 장치 및 방법
KR102541319B1 (ko) 2018-03-29 2023-06-08 삼성전자주식회사 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
CN108809329B (zh) * 2018-05-03 2021-09-28 东南大学 一种能同时处理极化码和ldpc码的bp译码器的配置方法
EP3570442A1 (en) * 2018-05-17 2019-11-20 Industrial Technology Research Institute Compact transmission of polar encoded dci with repetition for 5g communication systems
CN110752891B (zh) * 2018-07-24 2022-04-29 中兴通讯股份有限公司 极化码译码方法及装置、存储介质、电子装置
CN109450457B (zh) * 2018-08-09 2022-05-24 山东科技大学 一种码长自由的极化码编码方法
US11050519B2 (en) * 2018-09-14 2021-06-29 Idac Holdings, Inc. Methods, apparatus, systems and procedures for hybrid automatic repeat requests (HARQs) using polar codes
US10644835B1 (en) 2018-10-12 2020-05-05 Samsung Electronics Co., Ltd. System and method for interleaving distributed CRC in polar codes for early termination
KR102632560B1 (ko) * 2018-10-19 2024-02-02 삼성전자주식회사 경로 메트릭을 이용하여 입력 데이터를 디코딩하는 장치 및 이를 이용하는 디코딩 방법
CN114172617A (zh) 2018-11-16 2022-03-11 华为技术有限公司 Polar码编码方法及装置
CN111385059B (zh) * 2018-12-27 2021-08-31 华为技术有限公司 极化编码调制的方法和装置
CN111446969B (zh) * 2019-01-17 2023-10-20 华为技术有限公司 一种级联crc码的极化码编码方法及装置
CN109889307B (zh) * 2019-01-24 2021-06-01 东南大学 一种基于组合极化码的打孔方法
CN111756384B (zh) * 2019-03-28 2022-08-26 华为技术有限公司 译码方法、装置及设备
KR20210006807A (ko) 2019-07-09 2021-01-19 삼성전자주식회사 통신 시스템에서 신호 송수신 장치 및 방법
CN110380737B (zh) * 2019-07-12 2020-10-02 北京邮电大学 一种极化码距离谱分析的方法及装置
EP3813278B1 (en) * 2019-10-22 2023-03-01 Mitsubishi Electric R&D Centre Europe B.V. Multilevel polar-coded modulation transmitting and receiving methods and devices
CN111130566B (zh) * 2019-12-18 2021-05-11 清华大学 Polar码译码器中寻找L个最大路径度量值的电路实现方法
US11418220B2 (en) 2020-03-20 2022-08-16 Huawei Technologies Co., Ltd. Method, system, and apparatus for a segmented polarization-adjusted convolutional (PAC) code
CN113541698B (zh) * 2020-04-22 2022-07-12 华为技术有限公司 编码、译码方法、装置及设备
CN112087285B (zh) * 2020-09-10 2021-07-20 西南交通大学 基于码距与极化信道可靠度的极化码比特反转译码方法
US11515964B2 (en) * 2021-01-29 2022-11-29 Huawei Technologies Co., Ltd. Systems and methods for using not perfectly polarized bit channels in parallel polar codes
CN113438023B (zh) * 2021-06-18 2022-08-05 重庆理工大学 一种自由空间光通信中极化码级联编码方法及装置
US11791844B2 (en) * 2021-12-22 2023-10-17 Huawei Technologies Co., Ltd. Systems and methods for using special nodes for polar encoding in polar codes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140077492A (ko) * 2012-12-14 2014-06-24 삼성전자주식회사 Crc 부호와 극 부호에 의한 부호화 방법 및 장치

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317715A (en) * 1987-12-15 1994-05-31 Advanced Micro Devices, Inc. Reduced instruction set computer system including apparatus and method for coupling a high performance RISC interface to a peripheral bus having different performance characteristics
US6307868B1 (en) * 1995-08-25 2001-10-23 Terayon Communication Systems, Inc. Apparatus and method for SCDMA digital data transmission using orthogonal codes and a head end modem with no tracking loops
US6625219B1 (en) 1999-02-26 2003-09-23 Tioga Technologies, Ltd. Method and apparatus for encoding/framing for modulated signals over impulsive channels
US20020194571A1 (en) 2001-06-13 2002-12-19 Michael Parr System and method of coding cyclic redundancy check bits to enhance frequency reuse in a communications network
US7406647B2 (en) 2001-12-06 2008-07-29 Pulse-Link, Inc. Systems and methods for forward error correction in a wireless communication network
US20040019845A1 (en) * 2002-07-26 2004-01-29 Hughes Electronics Method and system for generating low density parity check codes
US7392464B1 (en) * 2004-04-30 2008-06-24 Marvell International Ltd. Universal parity encoder
KR101102396B1 (ko) 2006-02-08 2012-01-05 엘지전자 주식회사 이동통신 시스템에서의 코드워드 크기 정합 방법 및 송신장치
US8312323B2 (en) * 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
CN101325474B (zh) * 2007-06-12 2012-05-09 中兴通讯股份有限公司 Ldpc码的混合自动请求重传的信道编码及调制映射方法
US8386879B2 (en) * 2007-08-23 2013-02-26 Nec Laboratories America, Inc. GLDPC encoding with Reed-Muller component codes for optical communications
US8233532B2 (en) 2007-09-21 2012-07-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal
US8776161B2 (en) 2008-02-12 2014-07-08 Ciena Corporation Systems and methods for video processing in network edge devices
US20090271686A1 (en) 2008-04-28 2009-10-29 Qualcomm Incorporated Communication signal decoding with iterative cooperation between turbo and reed-solomon decoding
US8327234B2 (en) * 2009-02-27 2012-12-04 Research In Motion Limited Code block reordering prior to forward error correction decoding based on predicted code block reliability
US8352827B2 (en) * 2009-06-25 2013-01-08 Nec Laboratories America, Inc. LDPC hard decision decoder for high-speed wireless data communications
EP2486697B1 (en) 2009-10-06 2013-12-11 Thomson Licensing A method and apparatus for hop-by hop reliable multicast in wireless networks
US9116826B2 (en) 2010-09-10 2015-08-25 Trellis Phase Communications, Lp Encoding and decoding using constrained interleaving
US8879640B2 (en) * 2011-02-15 2014-11-04 Hong Kong Applied Science and Technology Research Institute Company Limited Memory efficient implementation of LDPC decoder
CN102164025B (zh) * 2011-04-15 2013-06-05 北京邮电大学 基于重复编码和信道极化的编码器及其编译码方法
CN102122966B (zh) * 2011-04-15 2012-11-14 北京邮电大学 基于信道极化的交错结构重复码的编码器及其编译码方法
CN102694625B (zh) * 2012-06-15 2014-11-12 北京邮电大学 一种循环冗余校验辅助的极化码译码方法
CN103516476B (zh) 2012-06-29 2016-12-21 华为技术有限公司 编码方法和设备
CN103684477B (zh) * 2012-09-24 2017-02-01 华为技术有限公司 混合极性码的生成方法和生成装置
AU2013234368B2 (en) * 2012-10-01 2016-08-18 Hybrid Electronics Australia Pty. Ltd. Residual current device (rcd) with earth current sensing
CN108650057B (zh) * 2012-10-17 2023-10-13 华为技术有限公司 一种编译码的方法、装置及系统
CN107659384A (zh) 2012-11-16 2018-02-02 华为技术有限公司 数据处理的方法和装置
KR102007770B1 (ko) 2012-12-14 2019-08-06 삼성전자주식회사 패킷의 부호화 방법과 그 복호화 장치 및 방법
US9304859B2 (en) 2012-12-29 2016-04-05 Emc Corporation Polar codes for efficient encoding and decoding in redundant disk arrays
CN103023618B (zh) * 2013-01-11 2015-04-22 北京邮电大学 一种任意码长的极化编码方法
US9362956B2 (en) 2013-01-23 2016-06-07 Samsung Electronics Co., Ltd. Method and system for encoding and decoding data using concatenated polar codes
US9235467B2 (en) * 2013-03-15 2016-01-12 Pmc-Sierra Us, Inc. System and method with reference voltage partitioning for low density parity check decoding
CN104079370B (zh) 2013-03-27 2018-05-04 华为技术有限公司 信道编译码方法及装置
CN103281166B (zh) * 2013-05-15 2016-05-25 北京邮电大学 一种基于极化码的混合自动重传请求传输方法
CN104219019B (zh) * 2013-05-31 2021-06-22 华为技术有限公司 编码方法及编码设备
US9459956B2 (en) * 2013-07-19 2016-10-04 Seagate Technology Llc Data decoder with trapping set flip bit mapper
WO2015053788A1 (en) 2013-10-11 2015-04-16 Hewlett-Packard Development Company, L.P. Utilizing collected data from a software-defined networking network to diagnose a user experience
US9489256B2 (en) * 2013-11-07 2016-11-08 Seagate Technology Llc Device quality metrics using unsatisfied parity checks
KR101496182B1 (ko) * 2013-12-16 2015-03-09 성균관대학교산학협력단 최소거리가 확장된 극 부호 생성 방법 및 장치
JP6184603B2 (ja) 2013-12-24 2017-08-23 華為技術有限公司Huawei Technologies Co.,Ltd. Polarコード復号方法および復号装置
US10193578B2 (en) * 2014-07-10 2019-01-29 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
US9722651B2 (en) * 2015-01-09 2017-08-01 Qualcomm Incorporated Adaptive channel coding using polarization
US10298271B2 (en) 2015-02-03 2019-05-21 Infineon Technologies Ag Method and apparatus for providing a joint error correction code for a combined data frame comprising first data of a first data channel and second data of a second data channel and sensor system
CN105099622B (zh) * 2015-07-01 2018-10-19 北京邮电大学 极化编码调制中信道可靠度的确定方法及装置
CN105680883B (zh) * 2015-12-23 2017-11-14 华中科技大学 一种极化码和多比特奇偶校验码级联的纠错编码方法
CN105656604B (zh) * 2016-01-21 2019-03-26 北京邮电大学 一种比特交织极化编码调制方法及装置
CN105743621B (zh) * 2016-02-02 2019-03-26 北京邮电大学 基于极化码的harq信号发送、接收方法及装置
CN105811998B (zh) 2016-03-04 2019-01-18 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统
US10728080B2 (en) 2016-05-20 2020-07-28 Qualcomm Incorporated Polar codes and modulation mappings
EP3273602B1 (en) 2016-07-19 2022-01-26 MediaTek Inc. Low complexity rate matching design for polar codes
US10389484B2 (en) 2016-07-29 2019-08-20 Lg Electronics Inc. Method for performing polar coding and apparatus therefor
CN107666370B (zh) 2016-07-29 2023-09-22 华为技术有限公司 编码方法和设备
CN109661787A (zh) 2016-08-10 2019-04-19 Idac控股公司 用于控制信息的基于优先级的信道编码
US10644829B2 (en) 2016-09-15 2020-05-05 Huawei Technologies Co., Ltd. Method and apparatus for encoding data using a polar code
WO2018201409A1 (en) 2017-05-04 2018-11-08 Nokia Technologies Oy Coding apparatus for polar codes

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140077492A (ko) * 2012-12-14 2014-06-24 삼성전자주식회사 Crc 부호와 극 부호에 의한 부호화 방법 및 장치

Also Published As

Publication number Publication date
CA3036916A1 (en) 2018-03-22
CN109716662B (zh) 2024-01-30
EP3510699A1 (en) 2019-07-17
US20180076929A1 (en) 2018-03-15
EP3510699B1 (en) 2021-06-02
JP6881859B2 (ja) 2021-06-02
CN110855299A (zh) 2020-02-28
US10491326B2 (en) 2019-11-26
AU2017326021B2 (en) 2020-09-03
CA3036759C (en) 2022-05-10
WO2018050063A1 (en) 2018-03-22
AU2017326021A1 (en) 2019-04-11
US20230046507A1 (en) 2023-02-16
CA3036759A1 (en) 2018-03-22
AU2017326022A1 (en) 2019-04-11
EP3510700A4 (en) 2019-09-04
US20200295867A1 (en) 2020-09-17
ZA201901831B (en) 2021-05-26
US11509414B2 (en) 2022-11-22
JP6859429B2 (ja) 2021-04-14
US10637607B2 (en) 2020-04-28
US20190089481A1 (en) 2019-03-21
US10700808B2 (en) 2020-06-30
CN110808813A (zh) 2020-02-18
BR112019004937A2 (pt) 2019-06-25
BR112019005074A2 (pt) 2019-07-09
EP3510700A1 (en) 2019-07-17
US10644829B2 (en) 2020-05-05
US20200092035A1 (en) 2020-03-19
US20190068316A1 (en) 2019-02-28
US11923973B2 (en) 2024-03-05
KR102199298B1 (ko) 2021-01-06
CN110808813B (zh) 2020-12-25
CN109804566A (zh) 2019-05-24
CN110855299B (zh) 2021-02-12
JP2019533345A (ja) 2019-11-14
WO2018050062A9 (en) 2018-04-12
JP2019530333A (ja) 2019-10-17
WO2018050062A1 (en) 2018-03-22
EP3510699A4 (en) 2019-09-04
EP3510700B1 (en) 2022-02-23
KR20190053899A (ko) 2019-05-20
MY195393A (en) 2023-01-18
US20180076922A1 (en) 2018-03-15
CA3036916C (en) 2021-08-24
US11374682B2 (en) 2022-06-28
BR112019005074B1 (pt) 2023-02-14
EP3940961A1 (en) 2022-01-19
KR102206307B1 (ko) 2021-01-21
AU2017326022B2 (en) 2020-08-27
CN109716662A (zh) 2019-05-03
ZA201901830B (en) 2021-02-24

Similar Documents

Publication Publication Date Title
KR102199298B1 (ko) 극성 코드를 이용하여 데이터를 인코딩하기 위한 방법 및 장치
CN109716692B (zh) 用于并行极化码编码/解码的方法和设备
CN110089037B (zh) 用于极化码构造的装置和方法
CN111525980B (zh) 译码方法及装置
WO2022117061A1 (zh) 一种极化码辅助比特的确定方法和装置

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