KR20180134276A - 미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩 - Google Patents

미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩 Download PDF

Info

Publication number
KR20180134276A
KR20180134276A KR1020170181521A KR20170181521A KR20180134276A KR 20180134276 A KR20180134276 A KR 20180134276A KR 1020170181521 A KR1020170181521 A KR 1020170181521A KR 20170181521 A KR20170181521 A KR 20170181521A KR 20180134276 A KR20180134276 A KR 20180134276A
Authority
KR
South Korea
Prior art keywords
bits
decoding
bit
node
frozen
Prior art date
Application number
KR1020170181521A
Other languages
English (en)
Other versions
KR102452618B1 (ko
Inventor
김대선
김민구
김세형
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to DE102018113351.0A priority Critical patent/DE102018113351A1/de
Priority to US16/001,275 priority patent/US10833706B2/en
Priority to TW107119642A priority patent/TWI791023B/zh
Priority to CN201810582490.9A priority patent/CN109039344B/zh
Publication of KR20180134276A publication Critical patent/KR20180134276A/ko
Application granted granted Critical
Publication of KR102452618B1 publication Critical patent/KR102452618B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • H03M13/3753Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding using iteration stopping criteria

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

본 개시의 예시적 실시예에 따른 폴라(Polar) 코드로서 입력 데이터를 인코딩하는 방법은, 입력 데이터에 기초한 정보 비트들에 적어도 하나의 기정(旣定, predefined) 정보 비트를 추가함으로써 비동결(unfrozen) 비트들을 생성하는 단계, 비동결 비트들을 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들 보다 높은 신뢰도를 가지는 극성화된 서브채널들에 배정함으로써, 비동결 비트들 및 동결 비트들을 재배열하는 단계, 및 재배열된 비동결 비트들 및 동결 비트들을 폴라 코딩함으로써 코드워드를 생성하는 단계를 포함할 수 있고, 적어도 하나의 기정 정보 비트는 인코더 및 디코더 양측에 알려진 값을 가질 수 있다.

Description

미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩{POLAR ENCODING AND DECODING USING PREDEFINED INFORMATION}
본 개시의 기술적 사상은 데이터 인코딩 및 디코딩에 관한 것으로서, 자세하게는 폴라(Polar) 코드에 기초한 데이터 인코딩 및 디코딩에 관한 것이다.
무선 통신 시스템에서, 채널 인코딩은 데이터 송신의 신뢰도를 향상시키기 위해서 수행될 수 있다. 채널 인코딩 방식 중 하나로서 폴라 코드(Polar code)는 낮은 인코딩/디코딩 복잡도로서 섀넌 용량(Shannon capacity)을 달성할 수 있다. 폴라 코드는, 입력에서 관측되는 비트 채널(또는 서브채널)들이 양호(good) 비트 채널 및 불량(bad) 비트 채널로서 극성화되는 채널 극성화(polarization)를 이용하여, 양호 비트 채널을 통해서 정보 비트를 전송하는 한편, 불량 비트 채널을 통해서 인코더 및 디코더 양측에 알려진 값(예컨대, 영(zero))을 가지는 동결(frozen) 비트를 전송할 수 있다.
본 개시의 기술적 사상은, 미리 정의된 정보를 사용함으로써 향상된 효율성을 가지는 폴라 인코딩 및 디코딩을 위한 방법 및 장치를 제공한다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일측면에 따라 폴라(Polar) 코드로서 입력 데이터를 인코딩하는 방법은, 입력 데이터에 기초한 정보 비트들에 적어도 하나의 기정(旣定, predefined) 정보 비트를 추가함으로써 비동결(unfrozen) 비트들을 생성하는 단계, 비동결 비트들을 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들 보다 높은 신뢰도를 가지는 극성화된 서브채널들에 배정함으로써, 비동결 비트들 및 동결 비트들을 재배열하는 단계, 및 재배열된 비동결 비트들 및 동결 비트들을 폴라 코딩함으로써 코드워드를 생성하는 단계를 포함할 수 있고, 적어도 하나의 기정 정보 비트는 인코더 및 디코더 양측에 알려진 값을 가질 수 있다.
본 개시의 기술적 사상의 일측면에 따라 폴라 코드로서 입력 데이터를 인코딩하기 위한 장치는, 극성화된 서브채널들의 신뢰도에 기초하여, 입력 데이터에 기초한 정보 비트들 및 적어도 하나의 기정 정보 비트를 포함하는 비동결(unfrozen) 비트들, 및 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들을 재배열함으로써 비트 시퀀스를 생성하도록 구성된 서브채널 맵핑부, 및 비트 시퀀스를 폴라 코딩함으로써 코드워드를 생성하도록 구성된 인코더를 포함할 수 있고, 적어도 하나의 기정 정보 비트는 인코더 및 디코더 양측에 알려진 값을 가질 수 있다.
본 개시의 기술적 사상의 일측면에 따른 디코딩 방법은, 입력 비트들, 순환 중복 검사(Cyclic Redundancy Check; CRC) 비트들 및 미리 정의된 값을 가지는 적어도 하나의 기정 정보 비트를 포함하는 비동결(unfrozen) 비트들, 및 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들로부터 생성된, 폴라(polar) 인코딩된 코드워드를 수신하는 단계, 및 L이 양의 정수일 때, L개의 디코딩 경로들의 리스트를 생성함으로써 코드워드의 리스트 디코딩을 수행하는 단계를 포함할 수 있고, 리스트 디코딩을 수행하는 단계는, 적어도 하나의 기정 정보 비트의 디코딩된 값에 기초하여 코드워드의 디코딩을 조기 종결(early termination)할 수 있다.
본 개시의 예시적 실시예에 따른 폴라 인코딩 및 디코딩을 위한 방법 및 장치에 의하면, 폴라 코드의 디코딩 과정에서 효율적인 조기 종결(early termination)을 제공할 수 있다.
또한, 본 개시의 예시적 실시예에 다른 폴라 인코딩 및 디코딩을 위한 방법 및 장치에 의하면, 효율적인 조기 종결에 기인하여 무선 통신 시스템에서 리시버의 디코딩을 위한 부하를 감소시킬 수 있다.
또한, 본 개시의 예시적 실시예에 따른 폴라 인코딩 및 디코딩을 위한 방법 및 장치에 의하면, 추가적인 순환 중복 검사(Cyclic Redundancy Check; CRC) 비트 없이 원하는 오검출률(false alarm rate; FAR)을 을 획득할 수 있다.
또한, 본 개시의 예시적 실시예에 따른 폴라 인코딩 및 디코딩을 위한 방법 및 장치에 의하면, 조기에 디코딩 경로가 폐기됨으로써 향상된 디코딩 성능을 제공할 수 있다.
본 개시의 예시적 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 아니하며, 언급되지 아니한 다른 효과들은 이하의 기재로부터 본 개시의 예시적 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 개시의 예시적 실시예들을 실시함에 따른 의도하지 아니한 효과들 역시 본 개시의 예시적 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
도 1은 본 개시의 예시적 실시예에 따라 기지국 및 사용자 기기를 포함하는 무선 통신 시스템을 나타내는 블록도이다.
도 2는 본 개시의 예시적 실시예에 따라 도 1의 하향링크의 구조의 예시를 나타내는 블록도이다.
도 3은 본 개시의 예시적 실시예에 따라 도 1의 기지국으로부터 사용자 기기에 DCI가 전달되는 과정의 예시를 나타내는 도면이다.
도 4는 본 개시의 예시적 실시예에 따라 도 1의 인코더의 동작의 예시를 나타낸다.
도 5a 및 도 5b는 본 개시의 예시적 실시예에 따라 도 1의 폴라 디코더의 동작의 예시들을 나타낸다.
도 6은 본 개시의 예시적 실시예에 따라 도 3의 단계 S310의 예시를 나타내는 순서도이다.
도 7은 본 개시의 예시적 실시예에 따라 도 6의 단계 S312의 동작의 예시를 나타내는 도면이다.
도 8은 본 개시의 예시적 실시예에 따라 폴라 코드의 바이너리 트리의 예시를 나타낸다.
도 9는 본 개시의 예시적 실시예에 따라 기정 정보 비트를 배정하는 방법의 예시를 나타내는 의사(pseudo) 코드이다.
도 10은 본 개시의 예시적 실시예에 따라 연속 제거 디코딩에서 비트 시퀀스의 비트들을 레벨에 따라 도시하는 코드 트리를 나타낸다.
도 11은 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다.
도 12는 본 개시의 예시적 실시예에 따라 도 11의 단계 S383a의 예시를 나타내는 순서도이다.
도 13은 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다.
도 14는 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다.
도 15은 본 개시의 예시적 실시예에 따른 무선 통신 장치의 예시적인 블록도를 나타낸다.
도 1은 본 개시의 예시적 실시예에 따라 기지국(10) 및 사용자 기기(20)를 포함하는 무선 통신 시스템(100)을 나타내는 블록도이다. 무선 통신 시스템(100)은, 비제한적인 예시로서 5G(5th generation wireless) 시스템, LTE(Long Term Evolution) 시스템, CDMA(Code Division Multiple Access) 시스템, GSM(Global System for Mobile Communications) 시스템, WLAN(Wireless Local Area Network) 시스템 또는 다른 임의의 무선 통신 시스템일 수 있다.
기지국(Base Station; BS)(10)은 일반적으로 사용자 기기 및/또는 다른 기지국과 통신하는 고정된 지점(fixed station)을 지칭할 수 있고, 사용자 기기 및/또는 타 기지국과 통신함으로써 데이터 및 제어정보를 교환할 수 있다. 예를 들면, 기지국(10)은 Node B, eNB(evolved-Node B), 섹터(Sector), 싸이트(Site), BTS(Base Transceiver System), AP(Access Pint), 릴레이 노드(Relay Node), RRH(Remote Radio Head), RU(Radio Unit), 스몰 셀(small cell) 등으로 지칭될 수도 있다. 본 명세서에서, 기지국(10) 또는 셀은 CDMA에서의 BSC(Base Station Controller), WCDMA의 Node-B, LTE에서의 eNB 또는 섹터(싸이트) 등이 커버하는 일부 영역 또는 기능을 나타내는 포괄적인 의미로 해석될 수 있고, 메가셀, 매크로셀, 마이크로셀, 피코셀, 펨토셀 및 릴레이 노드, RRH, RU, 스몰 셀 통신범위 등 다양한 커버리지 영역을 모두 포괄할 수 있다.
사용자 기기(User Equipment; UE)(20)는 무선 통신 기기로서, 고정되거나 이동성을 가질 수 있고, 기지국(10)과 통신하여 데이터 및/또는 제어정보를 송수신할 수 있는 다양한 기기들을 지칭할 수 있다. 예를 들면, 사용자 기기(20)는 단말 기기(terminal equipment), MS(Mobile Station), MT(Mobile Terminal), UT(User Terminal), SS(Subscribe Station), 무선 장치(wireless device), 휴대 장치(handheld device) 등으로 지칭될 수 있다.
기지국(10) 및 사용자 기기(20) 사이 무선 통신 네트워크는 가용 네트워크 자원들을 공유함으로써 다수의 사용자들이 통신하는 것을 지원할 수 있다. 예를 들면, 무선 통신 네트워크에서 CDMA(Code Division Multiple Access), FDMA(Frequency Division Multiple Access), TDMA(Time Division Multiple Access), OFDMA(Orthogonal Frequency Division Multiple Access), SC-FDMA(Single Carrier Frequency Division Multiple Access), OFDM-FDMA, OFDM-TDMA, OFDM-CDMA 등과 같은 다양한 다중 접속 방식으로 정보가 전달할 수 있다.
도 1을 참조하면, 기지국(10) 및 사용자 기기(20)는 하향링크(downlink; DL)(30) 및 상향링크(uplink; UL)(40)를 통해서 상호 통신할 수 있다. 예를 들면, LTE 시스템, LTE-Advanced 시스템과 같은 무선 시스템에서, 하향링크(30) 및 상향링크(40)는, PDCCH(Physical Downlink Control Channel), PCFICH(Physical Control Format Indicator Channel), PHICH(Physical Hybrid ARQ Indicator Channel), PUCCH(Physical Uplink Control Channel), EPDCCH(Enhanced Physical Downlink Control Channel) 등과 같은 제어 채널을 통해서 제어정보를 전송할 수 있고, PDSCH(Physical Downlink Shared Channel), PUSCH(Physical Uplink Shared Channel) 등과 같은 데이터 채널을 통해서 데이터를 전송할 수 있다.
본 명세서에서, PUCCH, PUSCH, PDCCH, EPDCCH 및 PDSCH 등과 같은 물리 제어 채널을 통해 신호가 송수신되는 것은, "PUCCH, PUSCH, PDCCH, EPDCCH 및 PDSCH를 전송, 수신한다"는 형태로 표현될 수 있다. 또한, PDCCH를 전송 또는 수신하거나 PDCCH를 통해서 신호를 전송 또는 수신하는 것은, EPDCCH를 전송 또는 수신하거나 EPDCCH를 통해서 신호를 전송 또는 수신하는 것을 포함할 수 있다. 즉, 물리 하향링크 제어채널은 PDCCH 또는 EPDCCH일 수 있고, PDCCH 및 EPDCCH 모두를 포함할 수도 있다.
무선 통신 시스템(100)에서 하향링크(30) 및 상향링크(40)를 통한 데이터 송신의 신뢰도를 향상시키기 위하여 채널 인코딩이 사용될 수 있다. 예를 들면, 무선 통신 시스템(100)에서, 폴라 코드(Polar code)(또는 극 부호)가 채널 인코딩에 사용될 수 있고, 기지국(10) 및 사용자 기기(20)는 폴라 코드를 위한 인코더 및 디코더를 각각 포함할 수 있다. 폴라 코드는, 입력에서 관측되는 비트 채널(또는 서브채널)들이 양호(good) 비트 채널 및 불량(bad) 비트 채널로서 극성화되는 현상을 의미하는 채널 극성화(polarization)에 기초할 수 있다. 이에 따라, 폴라 코드에서, 입력 데이터(DIN)에 기초한 정보 비트들은 양호 비트 채널에 배정될 수 있는 한편, 인코더 및 디코더 양측에 알려진 값을 가지는 동결 비트들은 불량 비트 채널에 배정될 수 있다. 후술되는 바와 같이, 본 개시의 예시적 실시예들에 따라, 미리 정의된 값을 가지는 적어도 하나의 기정(또는 미리 정의된) 정보(Predefined Information; PI) 비트가 추가적으로 폴라 코드의 양호 비트 채널에 배정될 수 있다. 일부 실시예들에서, 기정 정보(PI) 비트는 인코더 및 디코더 양측에 알려진 값, 예컨대 미리 정의된 고정 값 및/또는 사용자 기기(20)의 식별자를 포함할 수 있고, 폴라 코드의 특징에 기초하여 결정된, 인코더(16)의 입력인 비트 시퀀스(SEQ)에서의 인덱스에 할당될 수 있다.
본 개시의 예시적 실시예들에 따른 인코딩 및 디코딩을 위한 장치 및 방법은, 폴라 코드의 인코딩 및 디코딩에서 미리 정의된 정보를 이용함으로써, 폴라 코드의 디코딩 과정에서 효율적인 조기 종결(early termination)을 제공할 수 있고, 효율적인 조기 종결에 기인하여 무선 통신 시스템(100)에서 리시버의 디코딩을 위한 부하, 예컨대 컴퓨팅 리소스를 현저하게 감소시킬 수 있다. 또한, 본 개시의 예시적 실시예들에 따른 인코딩 및 디코딩을 위한 장치 및 방법은, 미리 정의된 정보에 의해서 추가적인 순환 중복 검사(Cyclic Redundancy Check; CRC) 비트 없이도 원하는 오검출률(false alarm rate; FAR)을 획득할 수 있는 한편, 디코딩 과정에서 조기에 디코딩 경로를 폐기하도록 함으로써 향상된 디코딩 성능을 제공할 수 있다.
도 1을 참조하면, 기지국(10)은 CRC 처리기(12), 서브채널 맵핑부(14), 인코더(16) 및 레이트 매칭부(18)를 포함할 수 있고, 사용자 기기(20)는 폴라 디코더(22)를 포함할 수 있다. 이하에서, 기지국(10)이 하향링크(30)를 통해서 사용자 기기(20)에 신호를 전송하는 과정에서 데이터를 인코딩하고, 사용자 기기(20)가 하향링크(30)를 통해서 기지국(10)으로부터 신호를 수신하는 과정에서 데이터를 디코딩하는 예시들이 주로 설명되나, 본 개시의 예시적 실시예들은 사용자 기기(20)가 상향링크(40)를 통해서 기지국(10)에 신호를 전송하고, 기지국(10)이 상향링크(40)를 통해서 사용자 기기(20)로부터 신호를 수신하는 예시들에도 적용될 수 있는 점은 이해될 것이다. 예를 들면, 도 1에 도시되지 아니하였으나, 기지국(10)은 폴라 디코더를 포함할 수 있고, 사용자 기기(20)는 폴라 인코더를 포함할 수 있다. 기지국(10) 및 사용자 기기(20)의 구성요소들은, 일부 실시예들에서 논리 합성 등을 통해서 구현되는 하드웨어 블록으로 구현될 수 있고, 일부 실시예들에서 프로세서와 프로세서에 의해서 수행되는 소프트웨어 블록으로 구현될 수도 있으며, 일부 실시예들에서 하드웨어 블록, 프로세서 및 소프트웨어 블록의 조합으로 구현될 수 있다.
CRC 처리기(12)는 입력 데이터(DIN)의 순환 중복 검사(이하, CRC) 비트들을 생성할 수 있고, 입력 데이터(DIN) 및 CRC 비트들을 포함하는 CRC 데이터(DCRC)를 생성할 수 있다. 예를 들면, CRC 처리기(12)는, K 비트수(bits)의 입력 데이터(DIN)에 J 비트수의 CRC 비트들을 부가함으로써, (K+J) 비트수의 CRC 데이터(DCRC)를 생성할 수 있다(K 및 J는 양의 정수). 본 명세서에서, CRC 데이터(DCRC)는 입력 데이터(DIN)의 입력 비트들 및 CRC 비트들을 포함하는 정보 비트들로서 지칭될 수 있다. CRC 비트들은 사용자 기기(20)에서 수신된 데이터에 오류가 있는지를 확인하는데 사용될 수 있고, CRC 처리기(12)는 무선 통신 시스템(100)에 의해서 요구된 임의의 방식으로 CRC 비트들을 생성할 수 있다. 일부 실시예들에서, 도 2를 참조하여 후술되는 바와 같이, CRC 비트는 유일 식별자(Radio Network Temporary Identifier; RNTI)로 마스킹될 수 있다.
서브채널 맵핑부(14)는 CRC 데이터(DCRC)로부터 인코더(16)의 입력인 비트 시퀀스(SEQ)를 생성할 수 있다. 일부 실시예들에서, 서브채널 맵핑부(14)는 CRC 데이터(DCRC)에 적어도 하나의 기정 정보(PI) 비트를 추가함으로서 비동결(unfrozen) 비트들을 생성할 수 있고, 비동결 비트들 및 동결(frozen) 비트들을 재배열함으로써 비트 시퀀스(SEQ)를 생성할 수 있다. 예를 들면, 서브채널 맵핑부(14)는 K+J 비트수의 CRC 데이터(DCRC)에 J' 비트수의 기정 정보(PI) 비트를 추가함으로써 (K+J+J') 비트수의 비동결 비트들을 생성할 수 있고, (N-(K+J+J')) 비트수의 동결 비트들을 생성할 수 있다(J' 및 N은 양의 정수). 그 다음에, 서브채널 맵핑부(14)는 비동결 비트들 및 동결 비트들을 재배열함으로써 N 비트수의 비트 시퀀스(SEQ)를 생성할 수 있다.
비트 시퀀스(SEQ)는 폴라 인코딩된 코드워드(PCW)를 생성하는 인코더(16)의 입력으로서, 비트 시퀀스(SEQ)의 인덱스들은 폴라 코드의 극성화된(polarized) 서브채널들에 대응할 수 있다. 이에 따라, 서브채널 맵핑부(14)는 인덱스에 기초하여 양호 서브채널(또는 양호 비트 채널) 및 불량 서브채널(또는 불량 비트 채널)을 인식할 수 있고, 정보 비트들 및 적어도 하나의 기정 정보(PI) 비트를 포함하는 비동결 비트들을, 동결 비트들보다 높은 신뢰도를 가지는 극성화된 서브채널들에 배정함으로써 비트 시퀀스(SEQ)를 생성할 수 있다. 이에 따라, 비동결 비트들에 포함된 적어도 하나의 기정 정보(PI) 비트는 상대적으로 높은 신뢰도를 가지는 극성화된 서브채널에 배정될 수 있다. 비동결 비트들 및 동결 비트들로부터 비트 시퀀스(SEQ)가 생성되는 예시들은 도 6 내지 도 9를 참조하여 후술될 것이다.
인코더(16)는 비트 시퀀스(SEQ)를 처리함으로써 폴라 인코딩된 코드워드(PCW)를 생성할 수 있다. 예를 들면, 인코더(16)는 N 비트수의 입력 시퀀스(SEQ)
Figure pat00001
으로부터 N 비트수의 폴라 인코딩된 코드워드(PCW)
Figure pat00002
을 아래 [수학식 1]과 같이 생성할 수 있다.
Figure pat00003
[수학식 1]에서,
Figure pat00004
는 생성(generator) 행렬로서 지칭될 수 있고,
Figure pat00005
의 n차 크로네커(Kronecker) 거듭제곱일 수 있다. 예를 들면, 도 4는
Figure pat00006
(즉, N = 8)에 따른 인코더(16)의 동작의 예시를 도시한다. [수학식 1]에 따라, N이 증가할수록 서브채널들은 극성화(polarized)될 수 있고, 서브채널들 각각은 극성화된 서브채널로서 지칭될 수 있다. CRC 데이터(DCRC)로부터 폴라 인코딩된 코드워드(PCW)를 생성하는, 서브채널 맵핑부(14) 및 인코더(16)는 총괄적으로 폴라 인코더로서 지칭될 수 있다.
레이트 매칭부(18)는 폴라 인코딩된 코드워드(PCW)를 레이트 매칭(rate matching)함으로써 출력 데이터(DOUT)를 생성할 수 있다. 레이트 매칭부(18)는 폴라 인코딩된 코드워드(PCW)를 무선 통신 시스템(100)에 의해서 요구된 방식, 예컨대 펑쳐링(puncturing) 및/또는 쇼트닝(shortening)함으로써 레이트 매칭을 수행할 수 있다. 레이트 매칭부(18)에 의해서 레이트 매칭된 출력 데이터(DOUT)는 변조기(modulator), 믹서(mixer), 전력 증폭기(power amplifier), 안테나 등을 순차적으로 통과함으로써 변환될 수 있고, 하향링크(30)를 통해서 사용자 기기(20)에 전달될 수 있다.
사용자 기기(20)는 하향링크(30)를 통해서 기지국(10)이 보낸 신호를 수신할 수 있다. 예를 들면, 사용자 기기(20)는 안테나, 필터, 저잡음 증폭기(low noise amplifier), 아날로그-디지털 컨버터(analog-to-digital convert) 등을 통과함으로써 변환될 수 있고, 변환된 데이터는 폴라 인코딩된 코드워드(PCW')로 폴라 디코더(22)에 전달될 수 있다. 폴라 디코더(22)는 폴라 인코딩된 코드워드(PCW')를 디코딩함으로써 디코딩된 데이터(DEC)를 생성할 수 있고, 이에 따라 기지국(10)이 보내는 정보, 즉 입력 데이터(DIN)를 추출할 수 있다.
일부 실시예들에서, 폴라 디코더(22)는 연속 제거(successive cancellation; SC) 디코딩에 기초하여 폴라 인코딩된 코드워드(PCW')를 비트 단위로 순차적으로 디코딩할 수 있다. 일부 실시예들에서, 폴라 디코더(22)는 리스트 디코딩에 기초하여 복수의 후보 디코딩 경로들을 유지하고, 최대 우도(likelihood)에 따라 디코딩 경로들을 폐기하면서 폴라 인코딩된 코드워드(PCW')를 디코딩할 수 있다. 연속 제거 리스트(successive cancellation list; SCL) 디코딩은 연속 제거 디코딩 및 리스트 디코딩을 조합한 것을 지칭할 수 있다. 일부 실시예들에서, 도 5b를 참조하여 후술되는 바와 같이, 디코딩 트리에서 노드들을 미리 정해준 군(group)들로 분류함으로써 계산 복잡도를 감소시키는 방식(예컨대, 단순 연속 제거(simplified successive cancellation; SSC) 디코딩)이 사용될 수도 있고, 일부 실시예들에서 연속 제거 리스트 디코딩의 성능을 향상시키기 위하여 CRC 코드와 폴라 코드를 캐스케이드하는 방식이 사용될 수도 있다. 이상의 디코딩 방식들은 예시에 불과하며, 본 개시의 예시적 실시예들이 전술된 디코딩 방식들에 제한되지 아니하는 점이 유의된다.
본 개시의 예시적 실시예에 따라, 폴라 디코더(22)는 폴라 인코딩된 코드워드(PCW')를 디코딩하는 과정에서 기지국(10)의 서브채널 맵핑부(14)에 의해서 삽입된 기정 정보(PI) 비트의 미리 정의된 값을 알고 있을 수 있고, 기정 정보(PI) 비트를 디코딩한 결과, 즉 추정된 기정 정보(PI) 비트를 사용할 수 있다. 폴라 디코더(22)는 추정된 기정 정보(PI) 비트에 기초하여, 일부 실시예들에서 디코딩 동작을 조기 종결(early termination)할 수 있고, 일부 실시예들에서 리스트 디코딩의 리스트 프루닝(list pruning)에 사용할 수 있다. 또한, 추정된 기정 정보(PI) 비트는 CRC 기능을 수행함으로써 오검출률(false alarm rate; FAR)을 감소시킬 수도 있다.
도 2는 본 개시의 예시적 실시예에 따라 도 1의 하향링크(30)의 구조의 예시를 나타내는 블록도이다. 구체적으로, 도 2는 도 1의 하향링크(30)의 TTI(Transmission Time Interval)을 나타낸다. 무선 통신 시스템(100)에서 하향링크(30) 데이터는 TTI 단위로 전송될 수 있고, 하나의 TTI는 복수의 심볼들(예컨대, OFDM 심볼들)을 포함하는 시간 구간으로 정의될 수 있다. 예를 들면, LTE에서 TTI는 1ms의 길이를 가지는 서브프레임일 수 있고, 5G에서 TTI는 가변크기(scalable) TTI일 수 있다. 이하에서, 도 2는 도 1을 참조하여 설명될 것이다.
도 2를 참조하면, 하향링크(30)의 TTI(5)는 시간 분할 다중화(Time Division Multiplexing; TDM)에 의해서 다중화된 2개의 시간 영역들, 즉 제어 채널(예컨대, PDCCH, PHICH 등)의 전송을 위한 제어 영역 및 공유 채널(예컨대, PDSCH 등)의 전송을 위한 데이터 영역을 포함할 수 있다. 예를 들면, 제어 영역은 제어 채널을 위한 복수의 심볼들을 포함할 수 있고, 데이터 영역은 공유 채널을 위한 나머지 심볼들을 포함할 수 있다.
제어 영역은 하향링크에 관한 정보를 포함할 수 있다. 예를 들면, LTE에서는 제어 영역의 PDCCH를 통해서 하향링크 제어 정보(Downlink Control Information; DCI)가 전송될 수 있다. DCI는, 예컨대, 호핑 플래그(hopping flag), 리소스 블록 할당, MCS(Modulation Coding Scheme), RV(Redundancy Version) 등과 같이 사용자 기기(20)가 기지국(10)과 통신하는데 필요한 정보들을 포함할 수 있다. 기지국(10)은 복수의 사용자 기기들을 위하여 제어 영역 내에서 복수의 물리 제어 채널들을 전송할 수 있다. 예를 들면, LTE의 PDCCH는 하나이상의 연속된 CCE(consecutive control channel element)의 집성(aggregation) 상에서 전송될 수 있다. CCE는 무선 채널의 상태에 따라 미리 정해진 부효율(code rate)의 PDCCH를 제공하기 위한 논리적 할당 단위를 지칭할 수 있고, 복수의 REG(Resource Element Group)에 대응할 수 있다. 기지국(10)은 CRC를 제어 정보에 부가할 수 있고, CRC는 PDCCH의 소유자 또는 용도에 따라 마스킹될 수 있다. 예를 들면, 기지국(10)은 사용자 기기(20)의 유일 식별자(예컨대, cell-RNTI)를 CRC에 마스킹함으로써 사용자 기기(20)를 위한 PDCCH를 생성할 수 있다.
사용자 기기(20)는 복수의 물리 제어 채널들을 모니터링할 수 있다. 예를 들면, 무선 통신 시스템(100)은 사용자 기기(20)를 위해 물리 제어 채널이 위치할 수 있는 제한된 세트의 CCE 위치를 정의할 수 있고, 이러한 제한된 세트의 CCE 위치는, 사용자 기기(20)가 자신의 물리 제어 채널을 찾을 수 있는 공간으로서 검색 공간(Search Space; SS)로서 지칭될 수 있다. 물리 제어 채널의 위치를 위한 부정보(side information)를 생략하고 다수의 사용자 기기들을 위한 자원을 위하여, 기지국(10)은 사용자 기기(20)에 해당 물리 제어 채널이 제어 영역의 어디에 있는지에 관한 정보를 제공하지 아니할 수 있다. 이에 따라, 사용자 기기(20)는 TTI(5) 내에서 물리 제어 채널 후보들에 대한 디코딩을 시도함으로써 자신의 물리 제어 채널을 찾을 수 있다. 이러한 블라인드 디코딩(blind decoding)을 통해서 사용자 기기(20)는 자신에게 전송된 물리 제어 채널을 식별할 수 있다. 예를 들면, LTE에서 사용자 기기(20)는 PDCCH를 유일 식별자(cell-RNTI)로서 디마스킹(de-masking)할 수 있고, CRC 에러가 없는 경우 사용자 기기(20)는 자신의 PDCCH로서 식별할 수 있다. 일부 실시예들에서, 사용자 기기(20)는 하나의 TTI(5) 내에서 최대 60회의 블라인드 디코딩을 수행할 것이 요구될 수 있다.
블라인드 디코딩에 기인하여 사용자 기기(20)는 가중된 디코딩 부하를 가질 수 있고, 이에 따라 높은 컴퓨팅 성능의 사용자 기기(20)가 요구되거나 과중한 디코딩 부하에 의해서 사용자 기기(20)의 전체적인 성능 감소가 초래될 수 있다. 예를 들면, 무선 통신 시스템(100)이 5G인 경우, LTE에 비해서 사용자 기기(20)가 하나의 TTI(5) 내에서 시도하는 블라인드 디코딩의 최대 횟수는 보다 증가할 수 있고, 블라인드 디코딩에 소요되는 시간은 더욱 단축될 수 있다. 이에 따라, 블라인드 디코딩에서 자신의 물리 제어 채널이 아닌 것을 이른 시점에서 인식하고 종료하는 조기 종결이 중요할 수 있다. 예를 들면, 5G의 경우, 폴라 코드가 채널 인코딩 방식으로 채택됨에 따라, 폴라 코드에서 블라인드 디코딩의 조기 종결 효율을 높이는 것이 요구된다.
도 3은 본 개시의 예시적 실시예에 따라 도 1의 기지국(10)으로부터 사용자 기기(20)에 DCI가 전달되는 과정의 예시를 나타내는 도면이다. 구체적으로 도 3은 무선 통신 시스템(100) LTE인 경우, 기지국(10)으로부터 사용자 기기(20)에 DCI가 전달되는 과정을 나타낸다. 도 3에 도시된 바와 같이, 기지국(10)은 일련의 단계들(S300 내지 S340)을 수행함으로써 DCI(D31)를 사용자 기기(20)에 전송할 수 있고, 사용자 기기(20)는 일련의 단계들(S350 내지 S390)을 수행함으로써 추정된 DCI'(D32)를 생성할 수 있다. 이하에서 도 3은 도 1을 참조하여 설명될 것이다.
도 3을 참조하면, 단계 S300에서, DCI(D31)에 CRC를 삽입하는 동작이 수행될 수 있다. 일부 실시예들에서, 기지국(10)은 사용자 기기(20)의 유일 식별자(예컨대, cell-RNTI)를 CRC에 마스킹할 수 있다.
단계 S310에서, 채널 코딩이 수행될 수 있다. 예를 들면, 채널 코딩은 폴라 코드를 이용한 인코딩을 포함할 수 있고, 도 1을 참조하여 전술된 바와 같이, DCI(D31)에 기정 정보(PI) 비트를 추가한 비동결 비트들 및 동결 비트들이 인코딩될 수 있다. 이에 따라, 폴라 인코딩된 코드워드가 생성될 수 있다. 단계 S310에 대한 예시들은 도 6 내지 도 10을 참조하여 설명될 것이다.
단계 S320에서, 레이트 매칭이 수행될 수 있다. 예를 들면, 기지국(10)은 펑쳐링 및/또는 쇼트닝을 수행함으로써 레이트 매칭을 수행할 수 있다. 그 다음에, 단계 S340에서, 레이트 매칭된 코드워드를 변조(modulation)하는 동작이 수행될 수 있고, 단계 S350에서, CCE를 물리적 자원 요소(Resource Element; RE)에 맵핑하는 동작이 수행될 수 있다. 이에 따라, DCI(D31)의 정보를 포함하는 신호가 사용자 기기(20)에 전송될 수 있다.
단계 S350에서, 물리적 자원 요소를 CCE로 디맵핑(demapping)하는 동작이 수행될 수 있고, 단계 S360에서 CCE를 복조(demodulation)하는 동작이 수행될 수 있다. 전술된 바와 같이, 사용자 기기(20)는 자신이 어떠한 CCE의 집성으로 PDCCH를 수신해야 하는지를 알 수 없으므로, 각각의 CCE의 집성을 복조할 수 있다. 그 다음에, 단계 S370에서, 복조된 데이터에 대하여 레이트 디매칭(rate dematching)을 수행할 수 있다. 마찬가지로, 사용자 기기(20)는 자신이 어떠한 DCI 페이로드 사이즈를 가진 제어 정보를 수신해야 하는지 알 수 없으므로, 각각의 DCI 포맷에 대해서 레이트 디매칭을 수행할 수 있다.
단계 S380에서, 채널 디코딩이 수행될 수 있다. 예를 들면, 사용자 기기(20)에 포함된 폴라 디코더(22)는 레이트 디매칭된 데이터를, 예컨대 SCL 디코딩에 기초하여 디코딩을 수행할 수 있고, CRC를 통해서 에러의 발생 여부를 검출할 수 있다. 일부 실시예들에서, 디코딩 과정 중 기정 정보(PI) 비트의 디코딩 결과에 따라 레이트 디매칭된 데이터에 대한 디코딩을 조기 종결할 수 있고, 다른 레이트 디매칭된 데이터에 대한 디코딩을 지속하거나 착수할 수 있다. 단계 S380의 예시들은 도 11 내지 도 14를 참조하여 후술될 것이다.
단계 S390에서, CRC를 제거하는 동작이 수행될 수 있다. 예를 들면, 사용자 기기(20)는 단계 S380에서 자신의 PDCCH를 검출할 수 있고, 디코딩된 데이터로부터 CRC를 제거함으로써 추정된 DCI'(D32)를 획득할 수 있다.
도 4는 본 개시의 예시적 실시예에 따라 도 1의 인코더(16)의 동작의 예시를 나타낸다. 도 1을 참조하여 전술된 바와 같이, 인코더(16)는 폴라 코드에 기초한 채널 코딩을 수행될 수 있다. 구체적으로, 도 4는 송신기(예컨대, 도 1의 기지국(10))에서 8-비트의 비트 시퀀스 {u1,..., u8}로부터 8비트의 폴라 인코딩된 코드워드 {x1,..., x8}가 생성되고, 폴라 인코딩된 코드워드 {x1,..., x8}가 채널(W)을 통과함으로써 리시버(예컨대, 도 1의 사용자 기기(20))에서 8-비트 데이터{y1,..., y8}가 수신되는 것을 나타낸다.
N-비트 비트 시퀀스를 입력으로 하는 N개의 독립적인 채널들(W)이 결합된 채널
Figure pat00007
Figure pat00008
로부터 재귀적으로(recursively) 결합될 수 있다. 예를 들면, 도 4는 결합된 채널
Figure pat00009
과 서브채널들
Figure pat00010
Figure pat00011
을 도시한다. 결합된 채널
Figure pat00012
은 N개의 바이너리 입력 좌표(coordinate) 채널들
Figure pat00013
로 나눠질 수 있고, 채널들 각각에서 천이(transition) 확률은 아래 [수학식 2]와 같이 정의될 수 있다.
Figure pat00014
또한, [수학식 2]의 천이 확률은 아래 [수학식 3]과 같이 재귀적으로 표현될 수 있다.
Figure pat00015
Figure pat00016
Figure pat00017
이진 소거 채널(Binary Erasure Channel; BEC)에서, [수학식 3]에 따른 천이 확률들은 단순하게 계산될 수 있다. 예를 들면, 소거 확률 ε가 0.5인 경우, 도 4에 도시된 채널들
Figure pat00018
의 천이 확률은 아래 [수학식 4]와 같이 계산될 수 있다.
Figure pat00019
[수학식 4]는, 채널들
Figure pat00020
에 대응하는 천이 확률들은 상대적으로 1에 가까운 한편, 채널들
Figure pat00021
에 대응하는 천이 확률들은 상대적으로 0에 가까운 것을 보여준다. N이 증가하는 경우, 천이 확률들 각각은 1 또는 0으로 수렴할 수 있고, 이러한 현상이 채널 극성화(polarization)으로 지칭될 수 있다. 양호 서브채널, 즉 낮은 천이 확률을 가지는 비트 채널에 유동적인 값을 가지는 비동결 비트가 배정될 수 있는 한편, 불량 서브채널, 즉 높은 천이 확률을 가지는 비트 채널에 고정된 값을 가지는 동결 비트가 배정될 수 있다. 예를 들면, 도 4의 예시에서, 4개의 비트들 {u4, u6, u7, u8}이 비동결 비트들일 수 있는 한편, 나머지 4개의 비트들 {u1, u2, u3, u5}이 동결 비트들일 수 있다.
전술된 바와 같이, 비동결 비트들 {u4, u6, u7, u8} 중 적어도 하나를, 인코더 및 디코더 양자에 알려진 기정 정보(PI) 비트로 사용할 수 있다. 즉, 비동결 비트들 {u4, u6, u7, u8}은 정보 비트들 및 적어도 하나의 기정 정보(PI) 비트를 포함할 수 있고, 정보 비트들은 입력 비트 및 CRC 비트를 포함할 수 있다. 이와 같이, 동결 비트들이 아닌 비동결 비트들에 미리 정의된 값을 가지는 기정 정보(PI) 비트가 배정됨으로써, 바람직한 특성들이 획득될 수 있고, 결과적으로 무선 통신 시스템(예컨대, 도 1의 100)의 효율이 향상될 수 있다.
도 5a 및 도 5b는 본 개시의 예시적 실시예에 따라 도 1의 폴라 디코더(22)의 동작의 예시들을 나타낸다. 구체적으로, 도 5a는 N = 8인 폴라 코드의 격자 구조(trellis)를 나타내고, 도 5b는 N = 8인 폴라 코드의 바이너리 트리 구조를 나타낸다. 예를 들면, 도 5a 및 도 5b는 도 4의 인코더 구조에 대응할 수 있다. 도 5a 및 도 5b에 도시된 바와 같이, 대체적으로, 낮은 인덱스를 가지는 서브채널이 상대적으로 낮은 신뢰도를 가질 수 있고, 높은 인덱스를 가지는 서브채널이 상대적으로 높은 신뢰도를 가질 수 있다.
도 5a를 참조하면, 가변(variable) 노드들에 대응하는 추정 비트들은
Figure pat00022
로 표현되고, 이때 i 및 j는 격자 구조의 레벨 및 스테이지를 각각 나타낸다(
Figure pat00023
).
Figure pat00024
의 LLR(Log Likelihood Ratio)인
Figure pat00025
은 아래 [수학식 5]와 같이 계산될 수 있다.
Figure pat00026
[수학식 5]에 기초하여, 연속 제거 디코딩에서 추정된 비트 시퀀스
Figure pat00027
는 아래 [수학식 6]과 같이 나타낼 수 있다.
Figure pat00028
또한, [수학식 6]에서
Figure pat00029
는 아래 [수학식 7]과 같이 나타낼 수 있다.
Figure pat00030
도 5b를 참조하면, 연속 제거 디코딩은, 2n = N일 때 깊이 n을 가지는 바이너리 트리로 나타낼 수 있다. 예를 들면, 도 5b에 도시된 바와 같이, 도 5a의 격자 구조는 깊이 3 및 23 = 8개의 말단(leaf) 노드들을 가지는 바이너리 트리로 표현될 수 있다. 바이너리 트리에서 각각의 노드들은 특징에 따라 분류될 수 있다. 예를 들면, 도 5b에 도시된 바와 같이, 바이너리 트리에서 노드들은, 동결 비트들만을 자식 노드들로서 가지는 Rate-0 노드들, 비동결 비트들만을 자식 노드들로서 가지는 Rate-1 노드들, 및 동결 비트와 비동결 비트 모두를 자식 노드들로서 가지는 Rate-R 노드들로 분류될 수 있다. 동일하게 분류된 노드들을 포함하는 서브트리는, 동일한 분류의 하나의 노드로 대체될 수 있고, 이에 따라 바이너리 트리는 단순화될 수 있다. 예를 들면, 도 5b에서, 추정 비트들
Figure pat00031
에 대응하는 노드들 및 그것들의 부모 노드는 하나의 Rate-0 노드로 대체될 수 있고, 추정 비트들
Figure pat00032
에 대응하는 노드들 및 그것들의 부모 노드는 하나의 Rate-1 노드로 대체될 수 있다. 단순화된 바이너리 트리에 기인하여 연속 제거 디코딩은 단순화될 수 있다.
도 6은 본 개시의 예시적 실시예에 따라 도 3의 단계 S310의 예시를 나타내는 순서도이다. 도 3을 참조하여 전술된 바와 같이, 도 6의 단계 S310'에서 폴라 코드에 기초하여 채널 인코딩이 수행될 수 있다. 도 6에 도시된 바와 같이, 단계 S310'은 단계 S312 및 단계 S314를 포함할 수 있고, 도 3의 단계 S300로부터 수신된 (K+J) 비트수의 데이터(예컨대, 도 1의 DCRC)를 인코딩함으로써 N 비트수의 코드워드(예컨대, 도 1의 PCW)를 생성하여 도 3의 단계 S320으로 제공할 수 있다. 예를 들면, 도 6의 단계 S310'은 도 1의 서브채널 맵핑부(14) 및 인코더(16)에 의해서 수행될 수 있고, 이하에서 도 6은 도 1을 참조하여 설명될 것이다.
도 6을 참조하면, 단계 S312에서 서브채널 맵핑이 수행될 수 있다. 예를 들면, 서브채널 맵핑부(14)는 입력 데이터(DIN)에 기초한(또는 입력 데이터(DIN)로부터 도출된) (K+J) 비트수의 데이터에 미리 정의된 값을 가지는 J' 비트수의 기정 정보(PI) 비트를 추가함으로써 (K+J+J') 비트수의 비동결 비트들을 생성할 수 있고, 비동결 비트들 및 N-(K+J+J') 비트수의 동결 비트들을 재배열함으로써 N 비트수의 비트 시퀀스(SEQ)를 생성할 수 있다. 전술된 바와 같이, 비트 시퀀스에서 비동결 비트들은 상대적으로 높은 신뢰도를 가지는 서브채널들(또는 비트 채널들)에 배정될 수 있는 한편, 동결 비트들은 상대적으로 낮은 신뢰도를 가지는 서브채널들에 배정될 수 있다. 이에 따라, 기정 정보(PI) 비트는 높은 신뢰도의 서브채널에 기인하여 추후 리시버에서의 디코딩 단계(예컨대, 도 3의 S380)에서 조기 종결, 리스트 프루닝 등 다양하게 활용될 수 있다.
단계 S314에서, 폴라 코딩이 수행될 수 있다. 예를 들면, 인코더(16)는 서브채널 맵핑부(14)로부터 N 비트수의 비트 시퀀스를 처리함으로써 N 비트의 폴라 인코딩된 코드워드를 생성할 수 있다.
도 7은 본 개시의 예시적 실시예에 따라 도 6의 단계 S312의 동작의 예시를 나타내는 도면이다. 도 6을 참조하여 전술된 바와 같이, 단계 S312에서 서브채널을 맵핑하는 동작이 수행될 수 있다. 예를 들면, 도 7의 예시는 도 1의 서브채널 맵핑부(14)에 의해서 수행될 수 있고, 이하에서 도 7은 도 1 및 도 6을 참조하여 설명될 것이다.
도 7을 참조하면, (K+J) 비트수의 정보 비트들에 J' 비트수의 기정 정보(PI) 비트가 부가됨으로써 (K+J+J') 비트수의 비동결 비트들이 생성될 수 있다. 이에 따라, N-(K+J+J') 비트수의 동결 비트들이 삽입됨으로써 N 비트수의 제1 비트 시퀀스(SEQ1)가 생성될 수 있다. 제1 비트 시퀀스(SEQ1)는 서브채널 신뢰도에 따라 정렬될 수 있고, 도 7에 도시된 바와 같이, 비동결 비트들은 동결 비트들보다 높은 신뢰도의 서브채널들에 대응할 수 있다.
제1 비트 시퀀스(SEQ1)는 제2 비트 시퀀스(SEQ2)로 재정렬(reorder)될 수 있다. 즉, 제1 비트 시퀀스(SEQ1)는 폴라 코드의 극성화된 서브채널들의 인덱스에 기초하여 재정렬될 수 있다. 예를 들면, 도 7에 도시된 바와 같이, 제2 비트 시퀀스(SEQ2)에서, 대체적으로 동결 비트들이 낮은 인덱스들에 대응하고, 동결 비트들이 높은 인덱스들에 대응하나, 도 4, 도 5a 및 도 5b를 참조하여 전술된 바와 같이, 양호 비트 채널들 및 불량 비트 채널들은 제2 비트 시퀀스(SEQ2)에서 인터리빙될 수 있다. 이에 따라, 도 7에 도시된 바와 같이, 동결 비트들 및 비동결 비트들은 제2 비트 시퀀스(SEQ2)에서 재정렬될 수 있고, 제2 비트 시퀀스(SEQ2)가 인코더(예컨대, 도 1의 16)에 제공될 수 있다.
일부 실시예들에서, J 비트수의 CRC 비트들은, 도 7에 도시된 바와 같이, 제2 비트 시퀀스(SEQ2)에서 높은 인덱스를 가질 수 있다. 일부 실시예들에서, 비동결 비트들에 포함되는 J' 비트수의 기정 정보(PI) 비트는 상대적으로 높은 신뢰도의 서브채널에 배정되도록 제2 비트 시퀀스(SEQ2)의 인덱스가 할당될 수 있다. 또한, 일부 실시예들에서, J' 비트수의 기정 정보(PI) 비트는 인코딩에 후속하여 수행되는 레이트 매칭에 기초하여 제2 비트 시퀀스(SEQ2)의 인덱스가 할당될 수 있다. 기정 정보(PI) 비트에 제1 비트 시퀀스(SEQ2)의 인덱스 할당에 대한 예시들은 도 8 및 도 9를 참조하여 후술될 것이다.
일부 실시예들에서, J 비트수의 CRC 비트들은 입력 비트들과 인터리빙됨으로써, 도 7에 도시된 바와 상이하게 제2 비트 시퀀스(SEQ2)에서 분산될(distributed) 수도 있다. 이와 같은 분산된 CRC 비트들은 어시스턴스 비트들로서 폴라 코드에서 고려될 수 있다. 도 7에 도시된 바와 같이 기정 정보(PI) 비트들이 제2 비트 시퀀스(SEQ2)에서 분산되거나, 도 8을 참조하여 후술되는 바와 같이, 높은 신뢰도에 대응하는 서브채널들에 기정 정보(PI) 비트들이 배정됨으로써 분산되는 경우, 분산된 기정 정보(PI) 비트들은 분산된 CRC 비트들과 동일하거나 유사한 기능을 수행할 수 있다. 즉, 분산된 기정 정보(PI)에 기인하여 분산된 CRC 비트들과 같은 효과를 가져올 수 있다. 또한, 기정 정보(PI)는 오검출률(false alarm rate; FAR)을 감소시키는 기능할 수 있다. 예를 들면, 16 비트수의 CRC 비트들에 따른 오검출률(FAR)은 근사적으로 2-16일 수 있고, 이 때 리스트 디코딩에서 리스트의 수가 8인 경우 오검출률(FAR)은 2-16+3으로 증가할 수 있다. 요구되는 오검출률(FAR)이 2-16인 경우 이를 충족시키기 위하여 CRC 비트들은 19 비트수로 증가할 수 있다. 그러나, CRC 비트의 비트수를 증가시키는 대신, 3 비트수의 기정 정보(PI) 비트들이 부가되는 경우, 기정 정보(PI) 비트들에 기인하는 전술된 기능들을 획득할 수 있는 동시에 오검출률(FAR)이 2-16으로 유지될 수 있다. 즉, 오검출률(FAR)은 CRC 비트들의 비트수 및 기정 정보(PI) 비트들의 비트수에 기초하여 결정될 수 있다.
도 8은 본 개시의 예시적 실시예에 따라 폴라 코드의 바이너리 트리의 예시를 나타낸다. 구체적으로, 도 8의 바이너리 트리는 16개의 말단 노드들을 가질 수 있고, 말단 노드들 중 검정색으로 채워진 노드들은 비동결 비트들을 나타내고, 흰색으로 채워진 노드들은 동결 비트들을 나타내고, X로 채워진 노드들은 쇼트닝된(shortened) 비트들을 나타낸다. 또한, 도 8의 예시에서 6 비트수의 비동결 비트들은 3 비트수의 입력 비트들, 2 비트수의 CRC 비트들 및 1 비트의 기정 정보(PI) 비트로 구성될 수 있다(즉, K 3, J = 2, J' = 1). 또한, 도 8의 예시에서 마더(mother) 블록 크기(N)는 16이며, 블록 크기(M)는 12일 수 있다.
일부 실시예들에서, 기정 정보(PI) 비트는 비동결 비트들에서 실질적으로 균일하게 분포되도록 인덱스를 가질 수 있다. 예를 들면, 기정 정보(PI) 비트는 생성 행렬의 가중치에 기초하여 분포될 수 있다. 또한, 일부 실시예들에서, 기정 정보(PI) 비트는 균일하게 분포되는 동시에 상대적으로 높은 신뢰도의 서브채널에 배정될 수 있다. 예를 들면, 폴라 코드의 바이너리 트리의 일부로서 서브트리(subtree)는, 2의 거듭제곱에 해당하는 말단 노드들을 가질 수 있고, 그 말단 노드들 중 가장 높은 인덱스를 가지는(즉, 도 8에서 가장 우측에 위치하는) 말단 노드가 높은 신뢰도를 가지는 서브채널에 대응할 수 있다. 도 8에 도시된 바와 같이, 인덱스들 5 내지 8의 말단 노드들을 포함하는 서브트리에서, 인덱스 8의 말단 노드가 높은 신뢰도를 가지는 서브채널에 대응할 수 있다. 유사하게, 도 8에 도시된 바와 같이, 4개의 말단 노드들을 포함하는 서브트리들에서 가장 높은 인덱스의 말단 노드가 높은 신뢰도를 가지는 서브채널에 대응할 수 있다. 이에 따라, 비동결 비트들을 말단 노드들로서 가지는 서브 트리에서 가장 높은 인덱스(예컨대, 도 8에서 8, 12 또는 16)가 기정 정보(PI) 비트에 할당될 수 있다. 다시 말해서, 도 5b를 참조하여 전술된 바와 같이 Rate-1 노드 및 Rate-R 노드는 비동결 비트를 말단 노드로서 포함하므로, Rate-1 노드 또는 Rate-R 노드의 말단 노드들 중 가장 높은 신뢰도를 가지는 서브채널에 배정될 수 있다.
일부 실시예들에서, 기정 정보(PI) 비트는 레이트 매칭을 고려하여 배정될 수 있다. 예를 들면, 도 8에 도시된 바와 같이, 인코딩에 후속하여 수행되는 레이트 매칭이 시퀀스의 후미를 삭제하는 쇼트닝인 경우, 기정 정보(PI) 비트는 쇼트닝 영역에 배정되지 아니할 수 있다. 즉, 도 8의 예시에서 기정 정보(PI) 비트의 후보 인덱스들 8, 12 및 16 중에서 16은 배제될 수 있다.
일부 실시예들에서, 기정 정보(PI) 비트는 비트 시퀀스에서 후보 인덱스들 중 낮은 인덱스를 가지도록 배정될 수 있다. 전술된 바와 같이, 기정 정보(PI) 비트는 리시버의 디코더에서 디코딩의 조기 종결에 사용될 수 있고, 연속 제거 디코딩과 같은 디코딩 방식의 경우, 기정 정보(PI) 비트가 전방에 배치되는 경우, 즉 낮은 인덱스를 가지는 경우 디코딩의 조기 종결 여부가 이른 시점에서 판단될 수 있다. 따라서, 도 8의 예시에서 1 비트의 기정 정보(PI) 비트는 후보 인덱스들 8, 12 및 16 중 8을 가질 수 있다. 또한, 2 비트수 이상의 기정 정보(PI) 비트들의 경우, 기정 정보(PI) 비트들은 후보 인덱스들 중 낮은 인덱스들부터 순차적으로 가질 수 있다.
도 9는 본 개시의 예시적 실시예에 따라 기정 정보(PI) 비트를 배정하는 방법의 예시를 나타내는 의사(pseudo) 코드이다. 도 9에서,
Figure pat00033
가 i 번째 정보비트를 나타낼 수 있고,
Figure pat00034
가 i번째 기정 정보(PI) 비트를 나타낼 수 있다. 또한,
Figure pat00035
는 비트 시퀀스에서 인덱스를 나타낼 수 있고, 예컨대 도 8에서
Figure pat00036
은 6일 수 있다. 이하에서 도 9는 도 8을 참조하여 설명될 것이다.
L이 디코딩 리스트의 개수일 때, i번째 기정 정보(PI) 비트
Figure pat00037
의 비트 시퀀스에서의 인덱스는
Figure pat00038
보다 클 수 있다. 즉 조기 종결은 리스트 분기(diverging)를 마치고 난 후에 시작될 수 있다. 예를 들면, L이 4인 경우,
Figure pat00039
일 수 있고, 이에 따라
Figure pat00040
는 8이 될 수 있다. 높은 부호율에서, 다수의 입력 비트들이 마더 블록의 전방(front area)에 배치될 수 있으므로, 후술되는 바와 같이, 조기 종결의 효율을 높이기 위한 기정 정보(PI) 비트의 배치가 필요할 수 있다.
일부 실시예들에서, J' 비트수의 기정 정보(PI) 비트들의 집합이 E일 때, 집합 E는 도 9에 도시된 바와 같이 획득될 수 있다. 도 9를 참조하면, 라인 11 및 라인 12에서, 변수들의 초기화가 수행될 수 있다. 라인 13에서 입력 비트의 위치가 체크될 수 있다. 입력 비트의 인덱스가 N/4보다 큰 경우, 라인 14 및 라인 15에서, 기정 정보(PI) 비트
Figure pat00041
는 선행하는 기정 정보(PI) 비트
Figure pat00042
로부터
Figure pat00043
만큼 이격되어 배정될 수 있다. 다른 한편으로, 입력 비트의 인덱스가 N/4보다 크지 아니한 경우, 라인 17 및 라인 18에서, 기정 정보(PI) 비트
Figure pat00044
는 선행하는 기정 정보(PI) 비트
Figure pat00045
로부터
Figure pat00046
만큼 이격되어 배정될 수 있고,
Figure pat00047
에서 k는 입력 비트
Figure pat00048
의 인덱스
Figure pat00049
에 기초하여 증가할 수 있다. 예를 들면, 마더 블록의 크기가, N = 512, n = 9과 같이 결정되고, L = 8인 경우를 가정하자.
Figure pat00050
가 128보다 큰 경우, 기정 정보(PI) 비트는 인덱스들 256(= 28), 384(= 28 + 27) 및 448(= 28 + 27 + 26)이 할당될 수 있다. 일부 실시예들에서 기정 정보(PI) 비트의 인덱스는 추가적으로 최적화될 수 있고, 예컨대 폴라 코드의 파라미터들이 결정되면 그로부터 기정 정보(PI) 비트의 인덱스들이 용이하게 도출될 수 있다.
도 10은 본 개시의 예시적 실시예에 따라 연속 제거 디코딩에서 비트 시퀀스의 비트들을 레벨에 따라 도시하는 코드 트리를 나타낸다. 구체적으로, 도 10은 N = 8인 코드 트리의 예시를 나타낸다.
연속 제거 디코딩은, 도 10에 도시된 바와 같이, 추정된 비트 시퀀스의 비트들을 레벨에 따라 수직방향으로 도시하는 코드 트리에서 하나의 경로를 결정하는 과정으로 표현될 수 있다. 추정된 비트 시퀀스의 비트들은 인덱스에 따라 순차적으로, 즉 코드 트리에서 높은 레벨로부터 낮은 레벨을 향하여 판정될 수 있다. 예를 들면, 도 5b를 참조하여 전술된 바와 같이, 추정된 비트 시퀀스
Figure pat00051
에서 인덱스에 따라 순차적으로 비트들이 판정될 수 있고, 영(zero)을 가지는 동결 비트들에 대응하는 비트들
Figure pat00052
에서 디코딩 경로는 도 10에 도시된 바와 같이 분기되지 아니하고 다음 비트(즉, 다음 레벨)로 진행할 수 있다.
코드 트리의 노드들은 LLR 값들을 각각 가질 수 있고, 복수의 후보 디코딩 경로들을 이용하는 리스트 디코딩에에서 LLR 값들에 따라 후보 디코딩 경로가, 레벨들 각각에서 추가되거나 폐기될 수 있다. 디코딩 경로가 폐기(discard)됨으로써 해당 디코딩 경로를 통해서 더 이상 디코딩이 수행되지 아니하는 동작은 리스트 프루닝(list pruning)으로 지칭될 수 있고, 리스트 프루닝의 발생은 디코딩에 소요되는 시간을 단축시킬 수 있다. 후술되는 바와 같이, 디코딩 과정에서 추정된 기정 정보(PI) 비트는 디코딩의 조기 종결뿐만 아니라 리스트 디코딩에도 활용될 수 있고, 이에 따라 단축된 디코딩 시간에 기인하여 디코딩 성능이 향상될 수 있다.
도 11은 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다. 도 3을 참조하여 전술된 바와 같이, 도 11의 단계 S380a에서 폴라 코드에 기초한 채널 디코딩이 수행될 수 있다. 도 11에 도시된 바와 같이, 단계 S380a는 복수의 단계들(S381a 내지 S386a)을 포함할 수 있고, 예컨대 도 1의 폴라 디코더(22)에 의해서 수행될 수 있다. 이하에서 도 11의 단계 S380a는 도 10의 예시적인 코드 트리를 참조하여 설명될 것이다.
단계 S381a에서, 노드를 선택하는 동작이 수행될 수 있다. 예를 들면, 연속 제거 리스트(SCL) 디코딩이 수행되는 경우, 후보 디코딩 경로에서 이전에 처리된 노드에 후속하는 노드가 선택될 수도 있고, 다른 후보 디코딩 경로의 노드가 선택될 수도 있고, 신규로 추가된 후보 디코딩 경로의 노드가 선택될 수도 있다.
단계 S382a에서, 노드 유형을 판단하는 동작이 수행될 수 있다. 도 7 등을 참조하여 전술된 바와 같이, 노드는 동결 비트 또는 비동결 비트에 대응할 수도 있다. 비동결 비트는 정보 비트 및 기정 정보(PI) 비트를 포함할 수 있으므로, 결과적으로 노드는 동결 비트, 정보 비트 및 기정 정보(PI) 비트 중 하나에 대응할 수 있다. 도 10에 도시된 바와 같이, 노드가 동결 비트에 대응하는 경우 단계 S385a가 후속하여 수행될 수 있고, 노드가 정보 비트에 대응하는 경우 단계 S384a가 후속하여 수행될 수 있으며, 노드가 기정 정보(PI) 비트에 대응하는 경우 단계 S383a가 후속하여 수행될 수 있다.
단계 S383a에서 조기 종결 여부를 판단하는 동작이 수행될 수 있다. 즉, 단계 S382a에서 노드 유형이 기정 정보(PI) 비트에 대응되는 경우, 기정 정보(PI) 비트의 디코딩 결과에 따라 조기 종결 여부가 판단될 수 있다. 일부 실시예들에서 단일 비트의 기정 정보(PI) 비트에 대응하는 디코딩 결과에 따라 조기 종결 여부가 판단될 수 있고, 일부 실시예들에서 멀티 비트의 기정 정보(PI) 비트들에 대응하는 디코딩 결과에 따라 조기 종결 여부가 판단될 수 있다. 조기 종결이 결정된 경우 단계 S380a는 종료할 수 있는 한편, 조기 종결이 부결되는 경우 단계 S384a가 후속하여 수행될 수 있다. 단계 S383a의 예시는 도 12을 참조하여 후술될 것이다.
단계 S384a에서 리스트 프루닝이 수행될 수 있다. 예를 들면, 동결 비트에 대응하는 노드는 알려진 값(예컨대, 영(zero))에 기인하여 단계 S384a가 스킵될 수 있는 한편, 노드 유형이 비동결 비트이고 조기 종결이 부결되는 경우, 리스트 프루닝(S384a)이 수행될 수 있다. 도 10을 참조하여 전술된 바와 같이, 리스트 프루닝은 각 노드에서의 LLR 값에 기초하여 수행될 수 있다.
단계 S385a에서, 노드가 최종 비트에 대응하는지 여부를 판단하는 동작이 수행될 수 있다. 최종 비트에 도달하지 아니한 경우 단계 S381a에서 다른 노드를 선택하는 동작이 후속하여 수행될 수 있는 한편, 최종 비트에 도달한 경우 단계 S386a에서 CRC가 수행될 수 있다. CRC 결과에 따라 에러의 발생 여부가 검출될 수 있다.
도 12는 본 개시의 예시적 실시예에 따라 도 11의 단계 S383a의 예시를 나타내는 순서도이다. 도 11을 참조하여 전술된 바와 같이, 도 11의 단계 S383a'에서 조기 종결 여부를 판단하는 동작이 수행될 수 있다. 도 12에 도시된 바와 같이, 단계 S383a'은 단계 S383_2 및 단계 S383_4를 포함할 수 있고, 이하에서 도 12는 도 11을 참조하여 설명될 것이다.
단계 S383_2에서, 조기 종결 조건을 갱신하는 동작이 수행될 수 있다. 도 12에 도시된 바와 같이, 도 11의 단계 S382a에서 노드가 기정 정보(PI) 비트에 대응하는 것으로 판단됨에 따라 기정 정보(PI) 비트의 디코딩 결과, 즉 추정된 기정 정보(PI) 비트의 값에 따라 조기 종결 조건이 갱신될 수 있다. 일부 실시예들에서, 조기 종결 조건은 디코딩 경로들 각각에 대하여 갱신될 수 있다.
단계 S383_4에서, 리스트가 조기 종결 조건을 충족하는지 여부를 판단하는 동작이 수행될 수 있다. 즉, 리스트에 포함된 디코딩 경로들이 모두 조기 종결 조건을 충족하는 경우 도 11의 단계 S380a는 종료될 수 있는 한편, 리스트에 포함된 디코딩 경로들 중 적어도 하나가 조기 종결 조건을 충족하지 아니하는 경우, 도 11의 단계 S384a에서 리스트 프루닝이 수행될 수 있다. 즉, 리스트 디코딩에 따라 후보 디코딩 경로들이 유지된 상태로 디코딩이 수행되는 과정에서, 모든 후보 디코딩 경로들이 조기 종결 조건을 충족하는 경우 조기 종결이 결정될 수 있다.
도 13은 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다. 도 3을 참조하여 전술된 바와 같이, 도 13의 단계 S380b에서 폴라 코드에 기초한 채널 디코딩이 수행될 수 있다. 구체적으로, 도 11의 단계 S380a와 비교할 때, 노드가 동결 비트에 대응하는지 여부가 먼저 판단될 수 있고, 조기 종결 여부를 판단하기 전에, 노드가 비동결 비트에 대응하는 경우 리스트 프루닝이 먼저 수행될 수 있다. 도 13에 도시된 바와 같이, 단계 S380b는 복수의 단계들(S381b 내지 S387b)을 포함할 수 있고, 예컨대 도 1의 폴라 디코더(22)에 의해서 수행될 수 있다. 이하에서 도 13에 대한 설명 중 도 11에 대한 설명과 중복되는 내용은 생략될 것이다.
단계 S381b에서, 노드를 선택하는 동작이 수행될 수 있다. 그 다음에 단계 S382b에서, 노드가 동결 비트에 대응하는지 여부를 판단하는 동작이 수행될 수 있다. 도 13에 도시된 바와 같이, 노드가 동결 비트인 경우 단계 S386b가 후속하여 수행될 수 있는 한편, 노드가 동결 비트가 아닌 경우, 즉 비동결 비트인 경우 단계 S383b에서 리스트 프루닝이 수행될 수 있다.
리스트 프루닝이 수행된 후, 단계 S384b에서 노드가 정보 비트에 대응하는지 여부를 판단하는 동작이 수행될 수 있다. 노드가 정보 비트에 대응하지 아니하는 경우, 즉 노드가 기정 정보(PI) 비트에 대응하는 경우, 단계 S385b가 후속하여 수행될 수 있는 한편, 노드가 정보 비트에 대응하는 경우 단계 S386b가 후속하여 수행될 수 있다.
단계 S385b에서 조기 종결 여부를 판단하는 동작이 수행될 수 있다. 예를 들면, 도 12를 참조하여 전술된 바와 같이, 후보 디코딩 경로들이 모두 조기 종결 조건, 즉 기정 정보(PI) 비트의 디코딩 결과가 알려진 값과 다르다는 조건을 충족하는지 여부가 판단될 수 있다. 조기 종결 조건이 충족된 경우 단계 S380b는 종료될 수 있는 한편, 그렇지 아니한 경우, 단계 S386b가 후속하여 수행될 수 있다.
단계 S386b에서, 노드가 최종 비트에 대응하는지 여부를 판단하는 동작이 수행될 수 있다. 최종 비트에 도달하지 아니한 경우 단계 S381b에서 다른 노드를 선택하는 동작이 후속하여 수행될 수 있는 한편, 최종 비트에 도달한 경우 단계 S387b에서 CRC가 수행될 수 있다.
도 14는 본 개시의 예시적 실시예에 따라 도 3의 단계 S380의 예시를 나타내는 순서도이다. 도 3을 참조하여 전술된 바와 같이, 도 14의 단계 S380c에서 폴라 코드에 기초한 채널 디코딩이 수행될 수 있다. 도 14의 예시에서, 기정 정보(PI) 비트는 리스트 프루닝에 사용될 수 있다. 도 14에 도시된 바와 같이, 단계 S380c는 복수의 단계들(S381c 내지 S384c)을 포함할 수 있고, 도 14에 도시되지 아니하였으나 디코딩 완료에 필요한 추가적인 단계들을 더 포함할 수 있다. 이하에서, 도 14에 대한 설명 중 도 11 및 도 13에 대한 설명과 중복되는 내용은 생략될 것이다.
단계 S381c에서, 노드를 선택하는 동작이 수행될 수 있다. 그 다음에 단계 S382c에서, 노드가 기정 정보(PI) 비트에 대응하는지 여부를 판단하는 동작이 수행될 수 있다. 도 14에 도시된 바와 같이, 노드가 기정 정보(PI) 비트가 아닌 경우, 즉 동결 비트 또는 정보 비트인 경우 디코딩을 위한 후속 단계들이 수행될 수 있는 한편, 노드가 기정 정보(PI) 비트인 경우 단계 S383c가 후속하여 수행될 수 있다.
단계 S383c에서, 추정된 기정 정보(PI) 비트가 미리 정의된 값을 가지는지 여부를 판단하는 동작이 수행될 수 있다. 전술된 바와 같이, 기정 정보(PI) 비트는 인코더에서 미리 정의된 값, 예컨대 고정된 값(예컨대, 영(zero))을 가지거나 디코더를 포함하는 리시버(예컨대, 도 1의 20)의 고유한 식별자를 가질 수 있고, 기정 정보(PI) 비트의 미리 정의된 값은 디코더도 미리 알고 있을 수 있다. 추정된 기정 정보(PI) 비트가 미리 정의된 값을 가지는 경우, 디코딩을 위한 후속 단계들이 수행될 수 있다. 다른 한편으로, 추정된 기정 정보(PI) 비트가 미리 정의된 값과 상이한 값을 가지는 경우, 현재 디코딩 경로가 폐기될 수 있다. 즉, 기정 정보(PI) 비트는 디코더에서 리스트 프루닝에 사용될 수 있고, 결과적으로 디코딩 성능이 향상될 수 있다.
도 15은 본 개시의 예시적 실시예에 따른 무선 통신 장치(50)의 예시적인 블록도를 나타낸다. 도 15에 도시된 바와 같이, 무선 통신 장치(50)는 ASIC(Application Specific Integrated Circuit)(51), ASIP(Application Specific Instruction set Processor)(53), 메모리(55), 메인 프로세서(57) 및 메인 메모리(59)를 포함할 수 있다. ASIC(51), ASIP(53) 및 메인 프로세서(57) 중 2개 이상은 상호 통신할 수 있다. 또한, ASIC(51), ASIP(53), 메모리(55), 메인 프로세서(57) 및 메인 메모리(59) 중 적어도 2개 이상은 하나의 칩에 내장될 수 있다.
ASIP(53)은 특정한 용도를 위하여 커스텀화된 집적 회로로서, 특정 어플리케이션을 위한 전용의 명령어 세트(instruction set)를 지원할 수 있고, 명령어 세트에 포함된 명령어를 실행할 수 있다. 메모리(55)는 ASIP(53)와 통신할 수 있고, 비일시적인 저장장치로서 ASIP(53)에 의해서 실행되는 복수의 명령어들을 저장할 수도 있다. 예를 들면, 메모리(55)는, 비제한적인 예시로서 RAM(Random Access Memory), ROM(Read Only Memory), 테이프, 자기디스크, 광학디스크, 휘발성 메모리, 비휘발성 메모리 및 이들의 조합과 같이, ASIP(53)에 의해서 접근가능한 임의의 유형의 메모리를 포함할 수 있다.
메인 프로세서(57)는 복수의 명령어들을 실행함으로써 무선 통신 장치(50)를 제어할 수 있다. 예를 들면, 메인 프로세서(57)는 ASIC(51) 및 ASIP(53)를 제어할 수도 있고, 무선 통신 네트워크를 통해서 수신된 데이터를 처리하거나 무선 통신 장치(50)에 대한 사용자의 입력을 처리할 수도 있다. 메인 메모리(59)는 메인 프로세서(57)와 통신할 수 있고, 비일시적인 저장장치로서 메인 프로세서(57)에 의해서 실행되는 복수의 명령어들을 저장할 수도 있다. 예를 들면, 메인 메모리(59)는, 비제한적인 예시로서 RAM(Random Access Memory), ROM(Read Only Memory), 테이프, 자기디스크, 광학디스크, 휘발성 메모리, 비휘발성 메모리 및 이들의 조합과 같이, 메인 프로세서(57)에 의해서 접근가능한 임의의 유형의 메모리를 포함할 수 있다.
전술된 본 개시의 예시적 실시예에 따른 인코딩 및/또는 디코딩 방법은, 도 15의 무선 통신 장치에 포함된 구성요소들 중 적어도 하나에 의해서 수행될 수 있다. 일부 실시예들에서, 전술된 인코딩 및/또는 디코딩 방법의 단계들 중 적어도 하나의 단계는 메모리(55)에 저장된 복수의 명령어들로서 구현될 수 있다. 일부 실시예들에서, ASIP(53)가 메모리(55)에 저장된 복수의 명령어들을 실행함으로써 인코딩 및/또는 디코딩 방법의 단계들 중 적어도 하나의 단계를 수행할 수 있다. 일부 실시예들에서, 인코딩 및/또는 디코딩 방법의 단계들 중 적어도 하나의 단계는, 논리 합성 등을 통해서 설계된 하드웨어 블록으로 구현되어 ASIC(51)에 포함될 수도 있다. 일부 실시예들에서, 인코딩 및/또는 디코딩 방법의 단계들 중 적어도 하나의 단계는, 메인 메모리(59)에 저장된 복수의 명령어들로서 구현될 수 있고, 메인 프로세서(57)가 메인 메모리(59)에 저장된 복수의 명령어들을 실행함으로써 인코딩 및/또는 디코딩 방법의 단계들 중 적어도 하나의 단계를 수행할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (20)

  1. 폴라(polar) 코드로서 입력 데이터를 인코딩하는 방법으로서,
    상기 입력 데이터에 기초한 정보 비트들에 적어도 하나의 기정(旣定, predefined) 정보 비트를 추가함으로써 비동결(unfrozen) 비트들을 생성하는 단계;
    상기 비동결 비트들을 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들 보다 높은 신뢰도를 가지는 극성화된 서브채널들에 배정함으로써, 상기 비동결 비트들 및 상기 동결 비트들을 재배열하는 단계; 및
    재배열된 상기 비동결 비트들 및 상기 동결 비트들을 폴라 코딩함으로써 코드워드를 생성하는 단계를 포함하고,
    상기 적어도 하나의 기정 정보 비트는 상기 인코더 및 상기 디코더 양측에 알려진 값을 가지는 것을 특징으로 하는 인코딩 방법.
  2. 청구항 1에 있어서,
    폴라 코드 트리는, 비동결 비트들만을 자식 노드들로서 가지는 Rate-1 노드들 및 동결 비트 및 비동결 비트 모두를 자식 노드들로서 가지는 Rate-R 노드들을 포함하고,
    상기 비동결 비트들 및 상기 동결 비트들을 재배열하는 단계는, 상기 Rate-1 노드 또는 상기 Rate-R 노드의 말단(leaf) 노드들 중 가장 높은 신뢰도를 가지는 극성화된 서브채널에 상기 적어도 하나의 기정 정보 비트를 배정하는 단계를 포함하는 것을 특징으로 하는 인코딩 방법.
  3. 청구항 2에 있어서,
    상기 적어도 하나의 기정 정보 비트를 배정하는 단계는, 상기 Rate-1 노드들 및 상기 Rate-R 노드들 중 낮은 인덱스에 대응하는 노드의 말단 노드들에 우선적으로 상기 적어도 하나의 기정 정보 비트를 배정하는 것을 특징으로 하는 인코딩 방법.
  4. 청구항 2에 있어서,
    상기 코드워드를 펑쳐링(puncturing) 또는 쇼트닝(shortening)함으로써 레이트 매칭(rate matching)하는 단계를 더 포함하고,
    상기 적어도 하나의 기정 정보 비트를 배정하는 단계는, 상기 레이트 매칭에서 펑쳐링 또는 쇼트닝되는 비트들에 대응하는 극성화된 서브채널을 제외한 극성화된 서브채널에 상기 적어도 하나의 기정 정보 비트를 배정하는 것을 특징으로 하는 인코딩 방법.
  5. 청구항 1에 있어서,
    상기 정보 비트들은 입력 비트들 및 순환 중복 검사(Cyclic Redundancy Check; CRC) 비트들을 포함하고,
    상기 비동결 비트들 및 상기 동결 비트들을 재배열하는 단계는, 상기 적어도 하나의 기정 정보 비트가 배정되지 아니한 극성화된 서브채널들에 상기 입력 비트들 및 상기 CRC 비트들을 배정하는 단계를 포함하는 것을 특징으로 하는 인코딩 방법.
  6. 청구항 5에 있어서,
    상기 입력 비트들 및 상기 CRC 비트들을 배정하는 단계는, 상기 입력 비트들 및 상기 CRC 비트들을 인터리빙함으로써 상기 입력 비트들 및 상기 CRC 비트들을 배정하는 것을 특징으로 하는 인코딩 방법.
  7. 청구항 5에 있어서,
    상기 기정 정보의 비트수는, 요구되는 오검출률(false alarm rate) 및 상기 CRC 비트들의 비트수에 따라 결정되는 것을 특징으로 하는 인코딩 방법.
  8. 청구항 1에 있어서,
    상기 코드워드를 무선 통신 시스템의 물리 제어 채널 상으로 전송하는 단계를 포함하고,
    상기 전송하는 단계에서, 상기 코드워드의 무선 자원 할당 정보의 전송은 생략되는 것을 특징으로 하는 인코딩 방법.
  9. 청구항 1에 있어서,
    상기 기정 정보 비트는, 고정된 값을 가지거나 디코더의 고유한 식별자를 가지는 것을 특징으로 하는 인코딩 방법.
  10. 폴라(polar) 코드로서 입력 데이터를 인코딩하기 위한 장치로서,
    극성화된 서브채널들의 신뢰도에 기초하여, 상기 입력 데이터에 기초한 정보 비트들 및 적어도 하나의 기정(旣定, predefined) 정보 비트를 포함하는 비동결(unfrozen) 비트들, 및 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들을 재배열함으로써 비트 시퀀스를 생성하도록 구성된 서브채널 맵핑부; 및
    상기 비트 시퀀스를 폴라 코딩함으로써 코드워드를 생성하도록 구성된 인코더를 포함하고,
    상기 적어도 하나의 기정 정보 비트는 상기 인코더 및 상기 디코더 양측에 알려진 값을 가지는 것을 특징으로 하는 장치.
  11. 청구항 10에 있어서,
    상기 서브채널 맵핑부는, 상기 정보 비트들을 수신하고, 상기 정보 비트들에 상기 적어도 하나의 기정 정보 비트를 추가함으로써 상기 비동결 비트들을 생성하도록 더 구성된 것을 특징으로 하는 장치.
  12. 청구항 10에 있어서,
    폴라 코드 트리는, 비동결 비트들만을 자식 노드들로서 가지는 Rate-1 노드들 및 동결 비트 및 비동결 비트 양측을 자식 노드들로서 가지는 Rate-R 노드들을 포함하고,
    상기 서브채널 맵핑부는, 상기 Rate-1 노드 또는 상기 Rate-R 노드의 말단(leaf) 노드들 중 가장 높은 신뢰도를 가지는 극성화된 서브채널에 상기 적어도 하나의 기정 정보 비트를 배정하도록 더 구성된 것을 특징으로 하는 장치.
  13. 비트 시퀀스가 폴라(polar) 인코딩됨으로써 생성된 코드워드를 수신하는 단계; 및
    L이 양의 정수일 때, L개의 디코딩 경로들의 리스트를 생성함으로써 상기 코드워드의 리스트 디코딩을 수행하는 단계를 포함하고,
    상기 비트 시퀀스는, 입력 비트들, 순환 중복 검사(Cyclic Redundancy Check; CRC) 비트들 및 미리 정의된 값을 가지는 적어도 하나의 기정(旣定, predefined) 정보 비트를 포함하는 비동결(unfrozen) 비트들 및 인코더와 디코더 양측에 알려진 값을 가지는 동결(frozen) 비트들을 포함하고,
    상기 리스트 디코딩을 수행하는 단계는, 상기 적어도 하나의 기정 정보 비트를 디코딩한 결과에 기초하여 상기 코드워드의 디코딩을 조기 종결(early termination)하는 것을 특징으로 하는 디코딩 방법.
  14. 청구항 13에 있어서,
    상기 리스트 디코딩을 수행하는 단계는,
    디코딩 경로에 따른 코드 트리의 레벨에 기초하여, 노드의 타입을 판단하는 단계; 및
    상기 노드의 타입이 상기 적어도 하나의 기정 정보 비트에 대응하는 경우, 상기 노드에서 디코딩된 값 및 상기 미리 정의된 값의 일치 여부에 따라 상기 조기 종결 여부를 판단하는 단계를 포함하는 것을 특징으로 하는 디코딩 방법.
  15. 청구항 14에 있어서,
    상기 조기 종결 여부를 판단하는 단계는, 상기 L개의 디코딩 경로들 모두에 대하여 상기 적어도 하나의 기정 정보 비트를 디코딩한 값이 상기 미리 정의된 값과 불일치하는 경우, 상기 코드워드의 디코딩의 조기 종결을 결정하는 것을 특징으로 하는 디코딩 방법.
  16. 청구항 14에 있어서,
    상기 비동결 비트들은 복수의 기정 정보 비트들을 포함하고,
    상기 조기 종결 여부를 판단하는 단계는, 상기 L개의 디코딩 경로들 중 상기 복수의 기정 정보 비트들을 디코딩한 값들이 상기 미리 정의된 값과 모두 일치하는 디코딩 경로가 발생하지 아니하는 경우, 상기 코드워드의 디코딩의 조기 종결을 결정하는 것을 특징으로 하는 디코딩 방법.
  17. 청구항 14에 있어서,
    상기 리스트 디코딩을 수행하는 단계는, 상기 노드의 타입이 입력 비트인 경우, 리스트 프루닝(list pruning)을 수행하는 단계를 더 포함하는 것을 특징으로 하는 디코딩 방법.
  18. 청구항 14에 있어서,
    상기 리스트 디코딩을 수행하는 단계는, 상기 노드의 타입이 비동결 비트인 경우, 리스트 푸르닝(list pruning)을 수행하는 단계를 더 포함하는 것을 특징으로 하는 디코딩 방법.
  19. 청구항 14에 있어서,
    상기 리스트 디코딩을 수행하는 단계는, 상기 적어도 하나의 기정 정보 비트에 대응하는 디코딩된 값이 상기 미리 정의된 값과 불일치하는 경우, 해당 디코딩 경로를 폐기하는 단계를 포함하는 것을 특징으로 하는 디코딩 방법.
  20. 청구항 13에 있어서,
    상기 리스트 디코딩을 수행하는 단계는, 디코딩 경로에 따른 마지막 비트인 경우, 경로에 대한 CRC를 수행하는 단계를 더 포함하는 것을 특징으로 하는 디코딩 방법.
KR1020170181521A 2017-06-08 2017-12-27 미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩 KR102452618B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE102018113351.0A DE102018113351A1 (de) 2017-06-08 2018-06-05 Polares Codieren und Decodieren unter Verwendung von vordefinierten Informationen
US16/001,275 US10833706B2 (en) 2017-06-08 2018-06-06 Polar encoding and decoding using predefined information
TW107119642A TWI791023B (zh) 2017-06-08 2018-06-07 編碼輸入資料為極性碼的方法及設備、解碼方法及用以解碼碼字的設備
CN201810582490.9A CN109039344B (zh) 2017-06-08 2018-06-07 编码输入数据为极性码的方法及设备、解码方法及其设备

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170071888 2017-06-08
KR1020170071888 2017-06-08

Publications (2)

Publication Number Publication Date
KR20180134276A true KR20180134276A (ko) 2018-12-18
KR102452618B1 KR102452618B1 (ko) 2022-10-11

Family

ID=64952386

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170181521A KR102452618B1 (ko) 2017-06-08 2017-12-27 미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩

Country Status (2)

Country Link
KR (1) KR102452618B1 (ko)
TW (1) TWI791023B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102115216B1 (ko) * 2019-06-28 2020-05-26 재단법인대구경북과학기술원 극부호 복호 장치 및 방법
KR102144266B1 (ko) * 2019-05-10 2020-08-13 포항공과대학교 산학협력단 통신 시스템에서 폴라 코드에 기초한 디코딩 방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140050152A (ko) * 2012-10-17 2014-04-29 삼성전자주식회사 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러 및 컨트롤러의 동작 방법
KR20150106270A (ko) * 2014-03-11 2015-09-21 삼성전자주식회사 폴라 부호의 리스트 복호 방법 및 이를 적용한 메모리 시스템

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103220001B (zh) * 2012-01-20 2016-09-07 华为技术有限公司 与循环冗余校验级联的极性码的译码方法和译码装置
US9503126B2 (en) * 2012-07-11 2016-11-22 The Regents Of The University Of California ECC polar coding and list decoding methods and codecs
CN103684477B (zh) * 2012-09-24 2017-02-01 华为技术有限公司 混合极性码的生成方法和生成装置
CN104219019B (zh) * 2013-05-31 2021-06-22 华为技术有限公司 编码方法及编码设备
RU2571587C2 (ru) * 2014-04-10 2015-12-20 Самсунг Электроникс Ко., Лтд. Способ и устройство кодирования и декодирования данных в скрученном полярном коде
US10193578B2 (en) * 2014-07-10 2019-01-29 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
US10581462B2 (en) * 2015-12-01 2020-03-03 Huawei Technologies Co., Ltd. Signature-enabled polar encoder and decoder

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140050152A (ko) * 2012-10-17 2014-04-29 삼성전자주식회사 불휘발성 메모리 장치를 제어하도록 구성되는 컨트롤러 및 컨트롤러의 동작 방법
KR20150106270A (ko) * 2014-03-11 2015-09-21 삼성전자주식회사 폴라 부호의 리스트 복호 방법 및 이를 적용한 메모리 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102144266B1 (ko) * 2019-05-10 2020-08-13 포항공과대학교 산학협력단 통신 시스템에서 폴라 코드에 기초한 디코딩 방법 및 장치
KR102115216B1 (ko) * 2019-06-28 2020-05-26 재단법인대구경북과학기술원 극부호 복호 장치 및 방법

Also Published As

Publication number Publication date
TWI791023B (zh) 2023-02-01
TW201904206A (zh) 2019-01-16
KR102452618B1 (ko) 2022-10-11

Similar Documents

Publication Publication Date Title
US10833706B2 (en) Polar encoding and decoding using predefined information
CN109314952B (zh) 新无线电物理下行控制信道设计的方法及其发送设备
JP6731115B2 (ja) 情報送信方法、送信端デバイス及び受信端デバイス
RU2761405C2 (ru) Способ согласования скорости, устройство кодирования и устройство связи
US10389484B2 (en) Method for performing polar coding and apparatus therefor
JP6455766B2 (ja) 極性符号の符号化方法および符号化装置
JP2020511027A (ja) 制御チャネルに対する先進的なポーラ符号
CN111034080B (zh) 减小针对极性码的最大似然解码的搜索空间
JP6517346B2 (ja) 指示情報を伝送するための方法および装置
US11026253B2 (en) Mapping a physical downlink control channel (PDCCH) across multiple transmission configuration indication (TCI) states
KR102325813B1 (ko) 폴라 코딩 방법 및 장치
KR20190114263A (ko) 무선 통신 시스템에서 극 부호를 이용한 부호화 및 복호화를 위한 장치 및 방법
KR20100086920A (ko) 무선 통신 시스템에서 제어정보 전송 방법 및 장치
US11026244B2 (en) Method and device in terminal and base station for dynamic scheduling
KR102452618B1 (ko) 미리 정의된 정보를 사용하는 폴라 인코딩 및 디코딩
KR102438982B1 (ko) 무선 통신 시스템에서 부호화 및 복호화를 위한 방법 및 장치
KR102517960B1 (ko) 무선 셀룰라 통신 시스템에서 데이터 전송 방법 및 장치
KR102445151B1 (ko) 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치
WO2017133407A1 (zh) 信号传输方法和装置
US20200036474A1 (en) Resource mapping method and apparatus thereof
WO2017194012A1 (zh) 极化码处理方法及装置、节点
CN111224742B (zh) 发送信息的方法和装置
CN109937547B (zh) 一种基站、用户设备中的用于信道编码的方法和装置
CN109964427A (zh) 一种被用于信道编码的终端、基站中的方法和设备
WO2012148169A2 (ko) 반송파 집성 시스템에서 채널 상태 정보 전송 방법 및 장치

Legal Events

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