KR20190006189A - 데이터 전송 방법 및 송신기 - Google Patents

데이터 전송 방법 및 송신기 Download PDF

Info

Publication number
KR20190006189A
KR20190006189A KR1020187036031A KR20187036031A KR20190006189A KR 20190006189 A KR20190006189 A KR 20190006189A KR 1020187036031 A KR1020187036031 A KR 1020187036031A KR 20187036031 A KR20187036031 A KR 20187036031A KR 20190006189 A KR20190006189 A KR 20190006189A
Authority
KR
South Korea
Prior art keywords
crc
data
decoding
additional information
data block
Prior art date
Application number
KR1020187036031A
Other languages
English (en)
Other versions
KR102129802B1 (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 KR20190006189A publication Critical patent/KR20190006189A/ko
Application granted granted Critical
Publication of KR102129802B1 publication Critical patent/KR102129802B1/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
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • H04L1/0063Single parity check
    • 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/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/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • 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/0033Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • 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/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or 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/0045Arrangements at the receiver end
    • H04L1/0054Maximum-likelihood or sequential decoding, e.g. Viterbi, Fano, ZJ algorithms
    • 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/0064Concatenated codes
    • H04L1/0065Serial concatenated codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 명세서의 일 개시는 송신기에서 데이터 전송 방법을 제공한다. 상기 방법은 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각 이후에 추가 정보를 부가하는 단계와; 마지막 추가 정보 이후에 CRC(cyclic redundancy check)를 부가하는 단계를 포함할 수 있다. 여기서, 상기 CRC는 상기 n개의 데이터 블록들과 상기 각 데이터 블록에 부가된 n개의 추가 정보를 기준으로 생성될 수 있다.

Description

데이터 전송 방법 및 송신기
본 발명은 차세대 이동 통신에 관한 것이다.
4세대 이동통신을 위한 LTE(long term evolution)/LTE-Advanced(LTE-A)의 성공에 힘입어, 향후의 이동통신, 즉 5세대 이동통신에 대한 관심도 높아지고 있고, 연구도 속속 진행되고 있다.
예상되기로는, 차세대 이동통신, 즉, 5세대 이동통신에서는 최저 속도 1Gbps의 데이터 서비스가 실현될 것으로 보인다.
5세대 이동 통신에서 채널 부호화 기법으로 터보 부호(Turbo code)와 극 부호(Polar code), 저밀도 패리티 체크 부호(LDPC code) 등이 고려되고 있다. 그중 극 부호는 연속 제거(successive cancelation; SC) 디코딩(decoding)과 리스트 디코딩(list decoding)을 결합하여 사용한다. 그런데, 리스트 디코딩에서 기존에는 최종 디코딩이 끝나기 이전에는 에러 정정(error correction)을 통해 잘못된 디코딩 경로를 제외할 수 있는 방안이 없었다. 따라서, 잘못된 디코딩 경로는 최종적으로도 남아 있게 되고, 그로 인해 에러 확률을 증가시키거나 리스트 이득을 감소시킬 수 있다는 단점이 존재하는 문제점이 있었다.
따라서, 본 명세서의 개시는 전술한 문제점을 해결하는 것을 목적으로 한다.
상기와 같은 목적을 달성하기 위하여, 본 명세서의 일 개시는 송신기에서 데이터 전송 방법을 제공한다. 상기 방법은 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각 이후에 추가 정보를 부가하는 단계와; 마지막 추가 정보 이후에 CRC(cyclic redundancy check)를 부가하는 단계를 포함할 수 있다. 여기서, 상기 CRC는 상기 n개의 데이터 블록들과 상기 각 데이터 블록에 부가된 n개의 추가 정보를 기준으로 생성될 수 있다.
상기 추가 정보는 싱글 패리티 비트(single parity bit) 또는 CRC일 수 있다.
상기 n-i번째 추가 정보는 n-i번째 데이터 블록에 대해서 생성될 수 있다.
상기 n-i번째 추가 정보는 첫번째 데이터 블록부터 n-i번째 데이터 블록까지에 대해서 생성될 수 있다.
상기 n-i 번째 추가 정보는 첫 번째 데이터 블록부터 n-i 번째 데이터 블록 그리고, 첫 번째 추가 정보와 n-i-1번째 추가 정보 까지에 대해서 생성될 수 있다. 여기서, 상기 첫 번째 추가 정보는 상기 첫 번째 데이터 블록에 대해서 생성된 것일 수 있다.
상기 n개의 데이터 블록들 중 적어도 일부는 크기가 서로 다를 수 있다.
상기 n개의 데이터 블록들은 디코딩 순서가 빠를수록 크기가 작아질 수 있다.
상기 n개의 추가 정보들 각각은 리스트 디코딩 과정에서의 에러 정정을 위해 사용될 수 있다. 여기서 에러 정정은 잘못된 디코딩 경로를 추적하고 제거하는 것을 포함할 수 있다. 이때 만약 모든 디코딩 경로가 에러로 판별되어 더 이상 진행 가능한 디코딩 경로가 없는 경우, 디코딩은 조기에 종료될 수 있다.
상기 데이터 블록의 최대 크기가 K로 정해져 있는 경우, 상기 TB의 크기가 N이라면, 상기 데이터 블록의 개수 n은 N/K에 의해서 결정될 수 있다. 상기 n개의 데이터 블록과 상기 n개의 추가 정보는 단일 인코더를 통하여 부호화 될 수 있다.
상기 K의 값은 데이터 블록 마다 달라질 수 있다.
상기 CRC는 UE(User Equipment)의 식별자로서 스크램블링(scrambling)될 수 있다.
상기 추가 정보가 CRC인 경우, CRC들 전체가 하나의 UE 식별자로 스크래블링될 수 있다.
상기와 같은 목적을 달성하기 위하여, 본 명세서의 일 개시는 데이터 전송을 수행하는 송신기를 제공한다. 상기 송신기는 송수신부와; 상기 송수신부를 제어하는 프로세서를 포함할 수 있다. 상기 프로세서는 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각 이후에 추가 정보를 부가하는 과정과; 마지막 추가 정보 이후에 CRC(cyclic redundancy check)를 부가하는 과정을 수행할 수 있다. 여기서 상기 CRC는 상기 n개의 데이터 블록들과 상기 각 데이터 블록에 부가된 n개의 추가 정보를 기준으로 생성될 수 있다.
본 명세서의 개시에 따르면 종래 기술의 문제점이 해결되게 된다.
구체적으로, 본 명세서의 개시에 따르면 디코딩 수행 도중에 디코딩이 잘 수행되고 있는지 여부를 디코딩이 모두 완료되기 이전에 판별할 수 있는 장점이 있다. 보다 구체적으로, 본 명세서의 개시에 따르면 디코딩이 모두 완료되기 이전에 디코딩에 오류가 존재한다고 판단될 경우, 디코딩을 조기에 종료(early termination)할 수 있도록 함으로써, 수신기의 블라인드 디코딩으로 인한 연산량을 줄이고, 복잡도와 지연을 감소시킬 수 있는 장점이 있다.
도 1은 무선 통신 시스템이다.
도 2는 3GPP LTE에서 FDD에 따른 무선 프레임(radio frame)의 구조를 나타낸다.
도 3은 NR에서의 서브프레임 유형의 예를 도시한다.
도 4a는 극 부호의 기본 개념을 나타내고, 도 4b는 SC 디코더의 구조를 나타낸다.
도 5는 리스트 디코딩 방식의 개념을 나타낸 예시도이다.
도 6은 하나의 TB가 두 개의 데이터 블록으로 나뉠 경우, 다중 CRC 생성에 대한 예들을 나타낸다.
도 7은 다중 CRC의 개수가 정해진 상황에서 CRC의 크기가 최대 값을 넘지 않는 한도 내에서 데이터와 CRC의 비율이 일정하도록 유지하는 방안을 나타낸다.
도 8은 다중 CRC의 개수가 유동적으로 변화하는 예를 나타낸다.
도 9는 하나의 TB가 두 개의 데이터 블록으로 나뉠 경우, 다중 싱글 패리티 비트의 생성에 관한 예를 나타낸다.
도 10은 2개의 싱글 패리티 비트를 사용하는 상황에서 TBS에 따라 싱글 패리티 비트를 사용하는 방안의 일 예를 나타낸다.
도 11은 싱글 패리티 비트의 개수가 유동적으로 변화하는예를 나타낸다.
도 12는 싱글 패리티 비트와 다중 CRC를 혼용하여 사용하는 예를 나타낸다.
도 13은 리스트 디코딩 과정을 예시적으로 나타낸 예이다.
도 14는 도 13에 도시된 과정을 도시화한 흐름도이다.
도 15는 다중 CRC의 활용 예를 나타낸다.
도 16은 다중 CRC에서 인코딩 및 디코딩 순서의 예를 나타낸다.
도 17은 데이터 비트와 CRC(및/또는 싱글 패리티 비트) 비트가 배치되는 예를 나타낸다.
도 18은 CRC 또는 싱글 패리티 비트의 위치에 따라 구분할 수 있는 연속적인 데이터 블록의 크기가 다른 예를 나타낸다.
도 19는 본 명세서의 개시가 구현되는 무선통신 시스템을 나타낸 블록도이다.
본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.
또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "구성된다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
또한, 본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니됨을 유의해야 한다. 본 발명의 사상은 첨부된 도면외에 모든 변경, 균등물 내지 대체물에 까지도 확장되는 것으로 해석되어야 한다.
이하에서 사용되는 용어인 기지국은, 일반적으로 무선기기와 통신하는 고정된 지점(fixed station)을 말하며, eNodeB(evolved-NodeB), eNB(evolved-NodeB), BTS(Base Transceiver System), 액세스 포인트(Access Point) 등 다른 용어로 불릴 수 있다.
그리고 이하, 사용되는 용어인 UE(User Equipment)는, 고정되거나 이동성을 가질 수 있으며, 기기(Device), 무선기기(Wireless Device), 단말(Terminal), MS(mobile station), UT(user terminal), SS(subscriber station), MT(mobile terminal) 등 다른 용어로 불릴 수 있다.
도 1은 무선 통신 시스템이다.
도 1을 참조하여 알 수 있는 바와 같이, 무선 통신 시스템은 적어도 하나의 기지국(base station: BS)(20)을 포함한다. 각 기지국(20)은 특정한 지리적 영역(일반적으로 셀이라고 함)(20a, 20b, 20c)에 대해 통신 서비스를 제공한다. 셀은 다시 다수의 영역(섹터라고 함)으로 나누어질 수 있다.
UE은 통상적으로 하나의 셀에 속하는데, UE이 속한 셀을 서빙 셀(serving cell)이라 한다. 서빙 셀에 대해 통신 서비스를 제공하는 기지국을 서빙 기지국(serving BS)이라 한다. 무선 통신 시스템은 셀룰러 시스템(cellular system)이므로, 서빙 셀에 인접하는 다른 셀이 존재한다. 서빙 셀에 인접하는 다른 셀을 인접 셀(neighbor cell)이라 한다. 인접 셀에 대해 통신 서비스를 제공하는 기지국을 인접 기지국(neighbor BS)이라 한다. 서빙 셀 및 인접 셀은 UE을 기준으로 상대적으로 결정된다.
이하에서, 하향링크는 기지국(20)에서 UE(10)로의 통신을 의미하며, 상향링크는 UE(10)에서 기지국(20)으로의 통신을 의미한다. 하향링크에서 송신기는 기지국(20)의 일부분이고, 수신기는 UE(10)의 일부분일 수 있다. 상향링크에서 송신기는 UE(10)의 일부분이고, 수신기는 기지국(20)의 일부분일 수 있다.
이하에서는, LTE 시스템에 대해서 보다 상세하게 알아보기로 한다.
도 2는 3GPP LTE에서 FDD에 따른 무선 프레임(radio frame)의 구조를 나타낸다.
도 2를 참조하면, 무선 프레임은 10개의 서브프레임(subframe)을 포함하고, 하나의 서브프레임은 2개의 슬롯(slot)을 포함한다. 무선 프레임 내 슬롯은 0부터 19까지 슬롯 번호가 매겨진다. 하나의 서브프레임이 전송되는 데 걸리는 시간을 전송시간구간(Transmission Time interval: TTI)라 한다. TTI는 데이터 전송을 위한 스케줄링 단위라 할 수 있다. 예를 들어, 하나의 무선 프레임의 길이는 10ms이고, 하나의 서브프레임의 길이는 1ms이고, 하나의 슬롯의 길이는 0.5ms 일 수 있다.
무선 프레임의 구조는 예시에 불과하고, 무선 프레임에 포함되는 서브프레임의 수 또는 서브프레임에 포함되는 슬롯의 수 등은 다양하게 변경될 수 있다.
한편, 하나의 슬롯은 복수의 OFDM(orthogonal frequency division multiplexing) 심볼을 포함할 수 있다. 하나의 슬롯에 몇개의 OFDM 심볼이 포함되는지는 순환전치(cyclic prefix: CP)에 따라 달라질 수 있다.
하나의 슬롯은 주파수 영역(frequency domain)에서 NRB 개의 자원블록(RB)을 포함한다. 예를 들어, LTE 시스템에서 자원블록(RB)의 개수, 즉 NRB은 6 내지 110 중 어느 하나일 수 있다.
자원블록(resource block: RB)은 자원 할당 단위로, 하나의 슬롯에서 복수의 부반송파를 포함한다. 예를 들어, 하나의 슬롯이 시간 영역에서 7개의 OFDM 심벌을 포함하고, 자원블록은 주파수 영역에서 12개의 부반송파를 포함한다면, 하나의 자원블록은 7x12개의 자원요소(resource element: RE)를 포함할 수 있다.
<차세대 이동통신 네트워크>
4G LTE / IMT(international mobile telecommunications) 표준에 기반한 이동통신의 상용화 성공에 힘입어, 차세대 이동통신(5세대 이동통신)에 대한 연구가 진행중이다. 5세대 이동통신 시스템은 현재의 4G LTE보다 높은 용량을 목표로 하며, 모바일 광대역 사용자의 밀도를 높이고, D2D(Device to Device), 높은 안정성 및 MTC(Machine type communication)을 지원할 수 있다. 5G 연구 개발은 또한 사물의 인터넷을 보다 잘 구현하기 위해 4G 이동 통신 시스템 보다 낮은 대기 시간과 낮은 배터리 소모를 목표로 한다. 이러한 5G 이동 통신을 위해서 새로운 무선 액세스 기술(new radio access technology: New RAT 또는 NR)이 제시될 수 있다.
상기 NR에서, 기지국으로부터의 수신은 다운 링크 서브프레임을 이용하고, 기지국으로의 송신은 업 링크 서브 프레임을 이용하는 것이 고려 될 수 있다. 이 방식은 쌍으로 된 스펙트럼 및 쌍을 이루지 않은 스펙트럼에 적용될 수 있다. 한 쌍의 스펙트럼은 다운 링크 및 업 링크 동작을 위해 두 개의 반송파 스펙트럼을 포함된다는 것을 의미한다. 예를 들어, 한 쌍 스펙트럼에서, 하나의 반송파는 서로 쌍을 이루는 하향링크 대역 및 상향링크 대역을 포함 할 수 있다.
도 3은 NR에서의 서브프레임 유형의 예를 도시한다.
도 3에 도시된 TTI(transmission time interval)는 NR(또는 new RAT)을 위한 서브프레임 또는 슬롯으로 불릴 수 있다. 도 3의 서브프레임(또는 슬롯)은, 데이터 전송 지연을 최소화하기 위해 NR(또는 new RAT)의 TDD 시스템에서 사용될 수 있다. 도 3에 도시 된 바와 같이, 서브프레임(또는 슬롯)은 현재의 서브 프레임과 마찬가지로, 14 개의 심볼을 포함한다. 서브프레임(또는 슬롯)의 앞부분 심볼은 DL 제어 채널을 위해서 사용될 수 있고, 서브프레임(또는 슬롯)의 뒷부분 심볼은 UL 제어 채널을 위해서 사용될 수 있다. 나머지 심볼들은 DL 데이터 전송 또는 UL 데이터 전송을 위해 사용될 수 있다. 이러한 서브프레임(또는 슬롯) 구조에 따르면, 하향 링크 전송과 상향 링크 전송은 하나의 서브프레임(또는 슬롯)에서 순차적으로 진행될 수 있다. 따라서, 서브프레임(또는 슬롯) 내에서 하향 링크 데이터가 수신될 수 있고, 그 서브프레임(또는 슬롯) 내에서 상향 링크 확인 응답(ACK / NACK)이 전송될 수 도 있다. 이러한 서브프레임(또는 슬롯)의 구조를 자체-포함(self-contained)된 서브프레임(또는 슬롯)이라고 할 수 있다. 이러한 서브프레임(또는 슬롯)의 구조를 사용하면, 수신 오류난 데이터를 재전송하는 데 걸리는 시간이 줄어들어 최종 데이터 전송 대기 시간이 최소화될 수 있는 장점이 있다. 이와 같은 자체-포함(self-contained)된 서브프레임(또는 슬롯) 구조에서, 송신 모드에서 수신 모드로 또는 수신 모드에서 송신 모드로의 전이 과정에 시간 차(time gap)가 필요할 수 있다. 이를 위해, 서브 프레임 구조에서 DL에서 UL로 전환 할 때의 일부 OFDM 심볼은 보호 구간(Guard Period: GP)으로 설정 될 수 있다.
5G 시스템의 요구사항에는 크게 지연시간(Latency), 최대 전송속도(Peak Data Rate), 오류정정능력(Error Correction) 등이 있다. 이동 통신 서비스 뿐만 아니라, 초고해상도 미디어 스트리밍, 사물인터넷, 클라우드 컴퓨팅, 자율주행차량 등에 사용될 예정인 5G 는 여러 부분에서 LTE =의 시스템 요구사항보다 훨씬 높은 성능을 목표로 하고 있다.
5G 는 LTE의 지연시간의 1/10 인 1ms 를 목표로 하고 있다. 이러한 짧은 지연시간은 자율주행차량 등 사람의 생명과 직관된 영역에서 중요한 지표로 작용한다. 5G 는 또한 높은 전송률을 목표로 하고 있다. LTE 대비 최대 전송률은 20 배, 체감 전송률은 10~100 배로 고화질 미디어 스트리밍 서비스와 같이 대용량 초고속통신을 충분히 제공할 수 있을 것으로 기대된다. 오류정정능력은 데이터 재전송률을 감소시켜 최종적으로 지연시간과 데이터전송률을 향상시킨다.
5G 채널 부호화 기법으로 먼저 터보 부호(Turbo code)와 극 부호(Polar code), 저밀도 패리티 체크 부호(LDPC code) 등이 고려되고 있다.
먼저, 터보 코드는 컨볼루션 부호를 병렬 연접하는 방식으로, 두 개 이상의 구성 부호화기에 같은 시퀀스의 서로 다른 배열을 적용하는 것이다. 터보 부호에서는 디코딩 방법으로 소프트 출력 반복 디코딩 방법을 이용한다. 터보 부호 디코딩의 기본 개념이 디코딩 기간 내에 각 비트에 대한 정보를 교환하여 이를 다음 디코딩에 이용함으로써 성능을 향상시키는 것이기 때문에 터보 부호의 디코딩과정에서는 소프트 출력을 얻는 것이 필요하다. 이러한 확률적 반복 디코딩 방식은 우수한 성능과 속도를 이끌어낸다.
다음으로, 저밀도 패리티 체크 부호(LDPC code)는 부호의 길이를 크게 함에 따라 비트당 오류 정정 능력은 향상되는 반면 비트당 계산 복잡도는 유지되는 LDPC 반복 디코딩 기법의 특성에 기인한다. 또한 병렬적으로 디코딩 연산을 수행할 수 있도록 부호의 설계가 가능하므로 긴 부호의 디코딩를 고속으로 처리할 수 있다는 장점이 있다.
마지막으로, 극 부호(Polar code)는 낮은 부호화 및 낮은 디코딩 복잡도를 가지며 일반적인 이진 입력 이산 무기억 대칭 채널에서 채널 용량에 달성하는 것이 이론적으로 증명된 최초의 오류 정정부호이다. 반복적인 디코딩(decoding) 프로세스를 사용하는 LDPC 부호, 터보 부호화는 대조적으로 극 부호는 연속 제거(successive cancelation; SC) 디코딩(decoding)과 리스트 디코딩(list decoding)을 결합하여 사용한다. 또한 병렬처리로 성능을 향상시키는 LDPC 부호와는 다르게 파이프라이닝을 통하여 성능을 향상시킨다.
도 4a는 극 부호의 기본 개념을 나타내고, 도 4b는 SC 디코더의 구조를 나타낸다.
도 4a를 참조하면, 서로 다른 입력 u1, u2는 서로 다른 채널을 겪게 되고그로 인해 서로 다르게 x1, x2으로 출력된다. 이때, 만약 입력 u2는 상대적으로 좋은 채널을, 그리고 u1은 상대적으로 나쁜 채널을 통과하였다고 가정하자. 이때, 채널은 인코더의 영향을 의미한다. 이러한 도 4a의 구조가 반복되면, 좋은 채널을 통과하는 u2은 점점 좋아지고, 나쁜 채널을 통과하는 u1은 점점 나빠지는 형태가 되고 이는 도 4b와 같이 구조화할 수 있다. 이를 양극화(polarization) 부른다.
도 4b에 도시된 바와 같은 구조는 2x2 커널 매트릭스(kernel matrix)를 kronocker product하는 방식으로 생성할 수 있다. 따라서 항상 2의 지수승 형태로 인코더가 만들어진다.
도 4b에서는 입력 u7이 겪는 채널은 입력 u0이 겪는 채널에 비하여 좋다고 가정된다. 즉, 일반적으로 큰 인덱스일수록 좋은 채널이라고 가정된다.
극 부호(Polar code)는 이러한 양극화 효과를 이용하여 좋은 채널 쪽에 데이터를 매핑하고 나쁜 채널 쪽에는 고정 비트(frozen bit)(즉, 0과 같이 이미 알고 있는 비트 정보)를 매핑하는 방식을 의미한다.
이때, 부호화율(code rate)는 (데이터 비트의 개수) / (데이터 비트의 개수+frozen bit의 개수)로 결정된다.
도 5는 리스트 디코딩 방식의 개념을 나타낸 예시도이다.
도 5에 도시된 바와 같이, 리스트 디코딩 방식은 trellis 기반, 또는 연속제거(SC) 디코딩과 같이 순차적으로 디코딩을 수행하는 과정에서 1보다 큰 L 이상의 가능한 경우를 디코딩 후보로 유지하고, 모든 비트의 디코딩이 완료된 시점에 LLR(Log Likelihood Ratio)과 같은 측정의 판별을 통해 가장 좋은 디코딩 경로를 선택하는 방법을 의미한다. 여기서 디코딩 경로란 순차적인 디코딩을 수행 과정에서 각 비트에 대한 선택이 저장된 경로를 의미한다.
기존 리스트 디코딩에서는 모든 비트에 대한 디코딩이 최종적으로 끝난 이후에 단일 CRC(cyclic redundancy check)를 에러 정정(error correction) 용도로 사용하여 모든 경로에 대해 에러 여부를 판별하였다. 여기서, 리스트 디코딩에서 에러 정정이라 함은 다수의 리스트 중에서 잘못된 디코딩 경로를 제외하는 것을 의미한다.
달리 말하면, 기존의 리스트 디코딩에서는 최종 디코딩이 끝나기 이전에는 에러 정정(error correction)을 통해 잘못된 디코딩 경로를 제외할 수 있는 방안이 없었다. 따라서, 잘못된 디코딩 경로는 최종적으로도 남아 있게 되고, 그로 인해 에러 확률을 증가시키거나 리스트 이득을 감소시킬 수 있다는 단점이 존재한다. 즉, 기존의 리스트 디코딩에서는 오인식율(false alarm rate; FAR)이 증가하는 단점이 있었다. 여기서, FAR은 올바른 신호가 아님에도 신호로 판별하고 디코딩하고, 그로 인해 CRC의 검사를 통과하게 되는 확률을 말한다.
<본 명세서의 개시들>
본 명세서의 일 개시는 전술한 문제점(리스트 디코딩에서 최종 디코딩이 끝나기 이전에는 CRC를 이용한 에러 정정(error correction)을 통해 잘못된 디코딩 경로를 제외할 수 없는 문제점)을 해결하기 위하여, 다중 CRC(cyclic redundancy check) 구조를 제안한다. 구체적으로, 본 명세서의 일 개시에 따르면, 다중 CRC 중 적어도 하나의 CRC를 디코딩이 완료되기 이전의 에러 정정(error correction) 용도로 사용함으로써, 디코딩 성능을 향상시킬 수 있는 방안을 제시한다. 이에 따르면, 리스트 디코딩을 사용하면서도, 에러 여부를 조기에 판별(early determination)이 가능한 장점이 있다. 또한, 블록 에러율(block error rate; BLER)가 개선될 수 있기 때문에, 효과적이라고 할 수 있다.
다른 한편, 본 명세서의 다른 일 개시는 CRC 대신 싱글 패리티 비트(single parity bit)를 상기와 동일한 목적으로 사용하는 방안을 또한 제시한다.
본 명세서에서는 설명 편의상 극 부호(polar code)를 사용하는 채널 부호화 기법에 특정하여 설명하고 있지만, 본 명세서의 개시는 리스트 디코딩을 적용할 수 있는 채널 부호화 기법들에 일반적으로 적용할 수 있다.
I. 다중 레벨 CRC
극 복호기(Polar decoder)와 같이 연속 제거(SC) 디코딩(decoding)을 사용하는 채널 부호화를 사용하는 경우 SC 디코더(decoder)의 특성상 SC를 수행하는 중간 단계에서 발생하는 에러로 인하여, 에러 확산(error propagation)이 발생하여 성능에 열화가 발생할 수 있다. 연속 제거 리스트(SCL) 디코딩의 경우 에러 확산(error propagation)은 잘못된 경로를 리스트로 유지함으로써, 리스트 이득(gain)의 감소가 발생할 수 있다는 단점이 발생할 수 있다. SCL을 사용하는 수신기에서 이와 같은 에러 확산의 영향을 줄이기 위하여 다중 CRC를 적용하여 다중-레벨 CRC 검사를 수행하는 방법을 제안한다.
M개의 레벨로 구성된 CRC를 사용하는 경우, 다음과 같은 동작들이 수행될 수 있다. 먼저, 데이터를 M개의 블록으로 나눌 수 있다. 이때 각 블록의 크기는 모두 같을 수도 있다. 또는 블록들의 크기는 서로 다를 수 도 잇다. 각 데이터 블록들의 크기는 디코딩 오류를 최대한 줄일 수 있도록 정해질 수도 있다. 서로 다른 용도의 데이터가 한 TB(transmission block)에 묶여서 전송되는 경우, 각 데이터의 크기를 고려하여 상기 블록의 크기가 정해질 수도 있다. 다중 CRC는 블록의 개수만큼 생성되며, 각 CRC 생성 규칙은 모든 CRC에 대하여 동일할 수도 있으며 혹은 다를 수도 있다. CRC 생성 규칙이 다른 경우는 각 CRC에 매칭되는 블록의 크기가 다른 경우가 될 수도 있다. CRC 생성 규칙은 에러 정정(error correction) 및 에러 검출(error detection) 성능과 오버헤드의 크기 간에 상충 관계(trade-off)를 고려하여 조정될 수도 있다. 예들을 도 6를 참조하여 설명하기로 한다.
도 6은 하나의 TB가 두 개의 데이터 블록으로 나뉠 경우, 다중 CRC 생성에 대한 예들을 나타낸다.
도 6의 (a)의 경우 각 CRC는 해당하는 데이터 블록만을 반영하여 CRC를 산출하는 예를 나타낸다. 이 경우 CRC의 산출은 바로 연계한 데이터 블록의 사이즈만이 반영되기 때문에 복잡도를 낮출 수 있는 이점이 있다. 다시 설명하면, 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각에 대해서 CRC를 산출할 수 있다. 그러므로, 상기 n-i번째 CRC는 n-i번째 데이터 블록에 대해서 산출된 것일 수 있다.
도 6의 (b)의 경우 앞선 데이터 블록들의 총 합을 이용하여 CRC를 산출하는 예를 나타낸다. 도 6의 (b)에서 CRC1은 Data 1만을 반영하여 생성되며 CRC2는 Data 1과 Data 2를 모두 사용하여 생성된다. 다시 설명하면, 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n-i번째 CRC는 첫번째 데이터 블록부터 n-i번째 데이터 블록까지에 대해서 생성될 수 있다. 이는 뒤에 반영된 CRC가 전체 데이터를 반영한 계산 값을 가질 수 있다는 점에 특징이 있다.
도 6의 (c)는 앞 선 모든 블록들(데이터 블록 및 CRC 블록)을 반영하여 CRC를 산출하는 예를 나타낸다. 이 예의 경우 CRC 산출에 사용되는 규칙이나 CRC의 길이가 CRC 마다 다르더라도, 뒤의 CRC는 앞선 모든 블록의 영향을 반영할 수 있다는 이점이 있다. 다시 설명하면, 전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, 상기 n-i 번째 CRC는 첫 번째 데이터 블록부터 n-i 번째 데이터 블록 그리고, 첫 번째 CRC와 n-i-1번째 CRC까지에 대해서 생성될 수 있다. 여기서, 상기 첫 번째 CRC는 상기 첫 번째 데이터 블록에 대해서 생성된 것일 수 있다.
도 6의 (d)의 경우 바로 연계된 데이터 블록과 그 이전의 CRC 블록들을 반영하여 CRC를 산출하는 예를 나타낸다. 이 경우 CRC 산출은 앞선 데이터 블록의 영향을 일부 반영하면서, 동시에 산출에 필요한 블록의 크기가 크지 않으므로, 복잡도를 낮출 수 있는 이점이 있다. 상기의 예시들은 편의를 위해 하나의 TB가 2개의 데이터 블록으로 나누어진 경우를 예로 들고 있다. 그러나, 하나의 TB가 2개 이상의 여러 블록으로 나누어져 2개 이상의 다중 CRC가 사용되는 경우에도 확장되어 적용될 수 있다. 또한 도 6에서는 설명 편의상 데이터 블록과 CRC의 크기가 모두 동일하게 표현되어 있으나 서로 다른 경우에도 상기 기술한 방법들이 적용될 수 있다.
다중 CRC를 적용하고자 할때, 사용되는 데이터 블록과 CRC의 개수는 여러 방안에 따라 정해질 수 있다.
1) 첫 번째 방안은 사용되는 다중 CRC의 개수를 미리 정해놓고 그 개수에 맞춰 데이터 블록을 쪼개어 사용하는 방안이다. 이 방안은 전송 블록 크기(transport block size: TBS)의 크기에 상관없이 항상 같은 개수의 CRC를 사용할 수 있다는 장점이 있다. 이때, CRC의 크기는 항상 고정되거나 혹은 데이터 블록의 크기에 맞게 조정될 수도 있다. 데이터 블록의 크기에 맞게 CRC의 크기가 조정되는 경우는 데이터와 CRC 간의 비율을 일정하게 유지하기 위한 목적으로 사용될 수도 있다. 또한 CRC의 크기는 CRC의 오버헤드 문제를 줄이기 위해 최대 값을 정하여 두고, 그 이상의 값이 설정되지 않도록 정할 수 있다. 최대 CRC의 크기가 정해진 상황에서 데이터 블록의 사이즈에 맞게 CRC의 크기를 조정하는 방식은 최대 CRC를 기준으로 설계된 CRC 생성 다항식(polynomial)의 일부를 선택하도록 정할 수 있다. 또는 다양한 크기에 따른 CRC 생성 규칙을 각각의 경우에 맞게 사전에 모두 정의하는 방식을 이용할 수도 있다. 다중 CRC의 개수가 정해진 상황에서 CRC의 크기가 최대 값을 넘지 않는 한도 내에서 데이터와 CRC의 비율이 일정하도록 유지하는 방안이 예시적으로 도 7에 나타나 있다.
2) 두 번째 방안으로는, 최대 데이터 블록의 크기를 고정시켜 놓고 CRC의 개수를 TBS에 맞게 조정하는 방안이 있을 수 있다. 예를 들어 최대 데이터 블록의 크기가 K로 고정될 경우, TBS의 크기가 N이라면 N/K보다 큰 정수 중 가장 낮은 값을 CRC의 개수로 정할 수 있다. 따라서 TBS에 따라 다중 CRC의 개수는 유동적으로 변화할 수 있으며, 반대로 CRC가 나타나는 위치는 항상 일정하게 유지될 수 있다. 예를 들어, 도 8에 도시된 바와 같이, 다중 CRC의 개수는 TBS에 따라 변화될 수 있다.
3) 세번째 방안으로는, 위 2가지 방안을 조합하는 방안이 있을 수 있다. 예를 들어, 데이터 블록의 크기가 일정 크기 이하까지는 다중 CRC의 개수를 고정시키고 크기를 조정하는 방안을 적용하며, 일정 크기 이상일 경우에는 CRC의 크기를 고정하고 다중 CRC의 개수를 증가시키는 방안을 적용할 수 있다. 이때 기준이 되는 데이터 블록의 크기는 CRC 크기의 최대 값에 도달하는 데이터 블록의 크기로 정해질 수도 있다. 이는 작은 크기의 데이터 블록에서는 CRC로 인한 오버헤드의 영향을 줄이는 반면 큰 크기의 데이터 블록에서는 CRC의 능력을 유지시켜줄 수 있다는 특징이 있다.
다중 CRC의 개수는 데이터 블록의 개수보다 많을 수 있다. 예를 들어 각 데이터 블록에 해당하는 다중 CRC가 하나씩 존재하고, 전체 데이터 블록 및 다중 CRC들을 검사하는 CRC가 하나 이상 더 존재할 수 있다. 이 경우 데이터 블록이 총 N개 일 때, 다중 CRC의 개수는 N+1개 이상일 수 있다.
II. 싱글 패리티 비트(Single parity bit)
리스트 디코딩의 성능을 향상시키기 위해 다중 CRC를 사용하는 대신에 싱글 패리티 비트를 사용할 수도 있다. 이와 같이 싱글 패리티 비트를 사용하는 이유는 다음과 같다.
먼저, 다중 CRC는 아래와 같이 단점이 있을 수 있다. CRC가 다수의 다항식(polynomial)으로 생성될 경우, 기존 LTE에서 사용된 목적과 동일한 CRC와 구분될 수 있도록 하기 위해서 추가 J 비트의 CRC 다항식을 필요하고, 이로 인해 계산식이 복잡해 진다. 반면, CRC가 하나의 다항식으로 생성될 경우, 데이터와 CRC의 연관관계를 유지하기 위하여 CRC 생성 행렬의 치환(permutation) 연산이 필요하다. 이는 항상 동일한 생성 수식을 갖는 (추가 연산과정이 필요 없는) 싱글 패리티 비트에 비하여 복잡도가 높다고 할 수 있다. 또한, CRC를 생성하는 과정은 싱글 패리티 비트를 생성하는 과정에 비해서 연산량이 큰 단점이 있다. 마찬가지로, CRC를 검사하는 과정은 싱글 패리티 비트를 검사하는 과정에 비해서 연산량이 큰 단점이 있다.
반면에 싱글 패리티 비트는 패리티 비트를 부가할 위치와 관계 없이 항상 단일 패리티 비트를 생성할 수 있는 장점이 있다. 그리고, 패리티 비트를 생성하거나 검사하는 과정에서 연산량이 적은 장점이 있다.
본 개시에 따라 데이터 블록에 추가되는 싱글 패리티 비트는 위에서 언급한 다중 CRC와 동일하게, 잘못된 리스트의 선택으로 인한 에러 확산(error propagation)을 방지하는 용도로 사용될 수 있다. 싱글 패리티 비트를 이용하는 방안은 다중 CRC를 이용하는 방안에 비해 에러 검출 능력이 떨어질 수 있으나 상대적으로 오버헤드를 줄일 수 있다는 장점을 갖고 있다.
리스트 디코딩에서 싱글 패리티 비트는 하나 이상의 데이터 블록들의 디코딩이 올바르게 되어 있는지 여부를 검사하여 올바른 경로만을 유지하기 위한 용도로 사용될 수 있다. 일례로 L개의 경로를 리스트로 저장하는 리스트 디코딩 연산 과정에서 특정 데이터 블록의 모든 비트와 해당하는 싱글 패리티 비트의 XOR 연산을 통해 데이터의 에러 여부를 판별하고 올바른 경로 만을 후보 경로에 포함시켜 리스트의 신뢰도를 향상시킬 수 있다.
싱글 패리티 비트는 하나의 TB가 다수 개로 분할된 데이터 블록들의 사이에 다수개가 위치할 수 있다. 다중 싱글 패리티 비트는 도 9에 도시된 예시와 같이 생성될 수 있다.
도 9는 하나의 TB가 두 개의 데이터 블록으로 나뉠 경우, 다중 싱글 패리티 비트의 생성에 관한 예를 나타낸다.
도 9에서는 설명의 편의성을 위하여 2개의 데이터 블록으로 나누어진 예시를 사용하고 있으나, 설명하는 내용은 2개 이상의 복수개로 이루어진 싱글 패리티 비트에도 일반적으로 사용될 수 있다. 도 9의 (a)의 경우 2개로 나누어진 각 데이터 블록에 해당되는 부분만을 반영하여 싱글 패리티 비트가 생성되는 예를 나타낸다. 도 9의 (b)의 경우 싱글 패리티 비트가 앞서 등장한 모든 데이터 블록의 영향을 모두 반영하여 생성되는 예를 나타낸다.
싱글 패리티 비트를 적용하고자 할 때, 사용되는 데이터 블록과 싱글 패리티 비트의 개수는 여러 방안에 따라 정해질 수 있다.
1) 첫 번째 방안은 사용되는 싱글 패리티 비트의 개수를 미리 정해놓고 그 개수에 맞춰 데이터 블록을 쪼개어 사용하는 방안이다. 이 방안은 TBS의 크기에 상관없이 항상 같은 개수의 싱글 패리티 비트를 사용하게 된다.
2개의 싱글 패리티 비트를 사용하는 상황에서 TBS에 따라 싱글 패리티 비트를 사용하는 방안의 일 예가 도 10에 나타나 있다.
2) 두 번째 방안으로는, 하나의 싱글 패리티 비트가 지원할 수 있는 최대 데이터 블록의 크기를 고정시켜 놓고 싱글 패리티 비트의 개수를 TBS에 맞게 조정하는 방안이 있을 수 있다. 예를 들어 최대 데이터 블록의 크기가 K로 고정될 경우, TBS의 크기가 N이라면, N/K보다 큰 정수 중 가장 낮은 값을 싱글 패리티 비트의 개수로 정할 수 있다. 따라서 TBS에 따라 싱글 패리티 비트의 개수는 유동적으로 변화할 수 있으며, 반대로 싱글 패리티 비트가 나타나는 위치는 항상 일정하게 유지될 수 있다. 이와 같이, 싱글 패리티 비트의 개수가 유동적으로 변화하는 경우의 예시가 도 11에 나타나 있다.
3) 세번째 방안으로는, 위 2가지 방안을 조합하는 방안이 있을 수 있다. 예를 들어, 데이터 블록의 크기가 일정 크기 이하까지는 싱글 패리티 비트의 개수를 고정시키는 방안을 적용하며, 일정 크기 이상부터 싱글 패리티 비트의 개수를 증가시키는 방안을 적용할 수 있다. 이는 작은 크기의 데이터 블록에서는 싱글 패리티 비트로 인한 오버헤드의 영향을 줄이는 반면 큰 크기의 데이터 블록에서는 싱글 패리티 비트의 능력을 유지시켜줄 수 있다는 특징이 있다.
싱글 패리티 비트의 개수는 데이터 블록의 개수보다 많을 수 있다. 예를 들어 각 데이터 블록에 해당하는 싱글 패리티 비트가 하나씩 존재하고, 전체 데이터 블록 및 싱글 패리티 비트들을 검사하는 싱글 패리티 비트가 하나 이상 더 존재할 수 있다. 이 경우 데이터 블록이 총 N개 일 때, 싱글 패리티 비트의 개수는 N+1개 이상일 수 있다.
싱글 패리티 비트와 다중 CRC는 각각이 독립적으로 사용될 수도 있으며 두 가지 기술이 모두 적용되어 사용될 수도 있다. 이와 같은 혼용은 일례로 데이터 블록들의 중간에는 싱글 패리티 비트를 사용하고 데이터 블록이 모두 끝나는 마지막 부분에서는 CRC를 붙여 사용할 수도 있다. 이에 대해서 도 12을 참조하여 예시적으로 설명하면 다음과 같다.
도 12는 싱글 패리티 비트와 다중 CRC를 혼용하여 사용하는 예를 나타낸다.
도 12을 참조하여 알 수 있는 바와 같이, 하나의 TB가 예를 들어 두 개의 데이터 블록으로 나뉠 경우, 각 데이터 블록에 해당되는 부분에 대해 각기 싱글 패리티 비트가 생성될 수 있다. 즉, Data 1에 대해서 싱글 패리티 비트 SPB 1이 생성되고, Data 2에 대해서 싱글 패리티 비트 SPB 2가 생성될 수 있다. 마지막 부분에는 CRC가 추가될 수 있다. 상기 마지막 부분의 CRC는 도 15를 참조하여 후술하는 바와 같이 에러 검출(error detection) 용도로 사용될 수 도 있고 혹은 에러 정정 용도로 사용될 수도 있다.
III. 다중 CRC 또는 싱글 패리티 비트를 활용하여 리스트 디코딩을 개선하는 방안
본 절에서는 리스트 디코딩 과정에서 다중 CRC와 싱글 패리티 비트를 활용하여 디코딩 성능을 향상시키는 방안에 대해서 설명한다. 이하 설명에서 에러 정정의 동작은 다수의 리스트 중에서 잘못된 디코딩 경로를 제외하는 과정으로 디코딩 경로의 신뢰도와 관계없이 하나 이상의 디코딩 경로가 선택될 수 있다. 만약 에러 정정 과정에서 리스트 상의 모든 디코딩 경로가 오류로 검출될 경우, 바로 디코딩 프로세스가 중단되는 조기 종료(early termination)가 수행하게 된다. 하기 설명에서 에러 검출의 동작은 다수의 리스트 중에서 가장 신뢰도가 높은 하나의 디코딩 경로에 대하여 오류 검사를 수행하는 과정이다. 만약 해당 경로에서 오류가 발생할 경우 수신기는 리스트 내에 다른 디코딩 경로가 존재하더라도 더 이상의 오류 검사를 수행하지 않고 디코딩이 실패한 것으로 판단한다. 이때 사용되는 신뢰도는 LLR(Log Likelihood Ratio)와 같은 값이 사용될 수 있다. LLR값은 디코딩을 수행하는 과정에서 얻을 수 있는 값이며 각 디코딩 경로에 따라 서로 다른 값을 갖게 된다.
본 절에서는 리스트 디코딩 과정에서 모든 비트에 대한 디코딩이 완료되기 이전의 단계에서 잘못된 디코딩 경로를 추적하고 제거하기 위한 방안에 대해 설명한다.
기존의 리스트 디코딩에서는 잘못된 디코딩 경로에 대해 최종 디코딩이 끝나기 이전에 에러 정정을 수행할 수 있는 방법이 없었기 때문에, 해당 디코딩 경로는 최종 디코딩 경로의 선택이 이루어지는 과정에서 에러 확률을 증가시키거나 리스트 이득을 감소시킬 수 있다는 단점이 존재한다.
이와 같은 단점을 보완하기 위해 본 절에서는 상기 명시된 다중 CRC나 싱글 패리티 비트, 또는 두 가지 방안 모두를 적용한 방안들을 통해 디코딩 과정의 중간 단계에서 리스트의 신뢰성을 검사하는 방안을 제안한다. 본 절에서는 편의상 다중 CRC를 활용하는 것을 설명하고 있으나, 싱글 패리티 비트를 활용하거나, 혹은 다중 CRC와 싱글 패리티 비트를 동시에 활용하는 것도 가능하다.
도 13은 리스트 디코딩 과정을 예시적으로 나타낸 예이고, 도 14는 도 13에 도시된 과정을 도시화한 흐름도이다.
먼저, 제안하는 내용이 실현되도록 하기 위해서, 송신단과 수신단은 모두 다중 CRC가 나타나는 위치를 정확하게 알고 있음을 가정한다. 이는 사전에 약속된 데이터 블록과 다중 CRC들의 크기를 통해 추정될 수 있으며, 사전에 약속된 값들이 다수 존재하는 경우 제어 시그널과 같은 정보 교환을 통해 어떤 크기의 데이터 블록과 다중 CRC가 사용되었는지를 송신단과 수신단에 모두 제공할 수 있다.
도 14에 도시된 바와 같이, 수신단에서는 데이터 블록과 다중 CRC의 디코딩을 순차적으로 수행하고(S1201, S1203) 각 에러 정정 용도의 CRC 블록의 위치에서 CRC 검사를 통해 다중 경로에 대한 에러 여부를 판별한다(S1205). 예를 들어 에러 정정을 위한 CRC 블록이 N개 존재하는 경우 N번의 에러 경로 검사를 수행하게 된다. 다중 CRC들을 이용한 각 에러 검사 단계에서 에러로 판별된 경로는 리스트에서 제거되고, CRC 검사 결과 에러가 없다고 판별된 경로만을 잔존 경로(surviving path)로 리스트에 남겨 놓은 다음(S1207) 디코딩 단계에서 사용한다. 이 과정을 모든 데이터 블록과 다중 CRC 블록에 대하여 수행하고 모든 비트에 대한 디코딩과 CRC 검사가 완료되면 LLR과 같은 측정을 이용하여 최종 디코딩 경로를 결정하게 된다(S1209).
이와 같이, 다중 CRC는 리스트 디코딩의 각 경로의 에러 여부를 판별하여 리스트의 신뢰도를 높이는 에러 정정error correction 용도로 사용될 수도 있으며, 또는 디코딩 경로로 결정되어 복호된 비트의 에러 여부를 판별하는 에러 검출 용도로 사용될 수도 있다.
도 15는 다중 CRC의 활용 예를 나타낸다.
도 15의 (a)에 도시된 바와 같이, N개의 데이터 블록과 N+1개의 다중 CRC가 있는 경우 N개의 다중 CRC는 각 해당되는 데이터 블록의 에러 정정의 용도로 사용되고, N+1번째 CRC는 에러 검출(error detection) 용도로 사용될 수 있다. 예를 들어, 도 15의 (a)에서 2번째 CRC는 2번째 데이터 블록의 에러 정정 용도로 사용될 수 있다. 이 경우 N번째 다중 CRC 블록까지는 상기 명시된 리스트 디코딩 과정을 통해 LLR과 같은 측정의 결과가 가장 높은 디코딩 경로를 선택하기 위해 사용하고, 결과로 도출된 복호 비트를 N+1번째 다중 CRC를 이용하여 에러 검출에 사용하는 방식을 적용할 수 있다. 도 15의 (a)에서는 마지막 CRC가 전체 데이터 블록을 대상으로 에러 검사를 수행하는 동작을 설명하고 있지만, CRC의 생성 방법에 따라 에러 검사가 수행되는 구간은 달라질 수 있다.
N+1 번째 다중 CRC는 에러 검출을 위한 용도로 사용될 수도 있지만, 도 15의 (b)에 도시된 바와 같이 수신단의 상황에 맞게 에러 정정 용도로 사용될 수 있다. 이 경우 L개의 리스트를 사용하는 리스트 디코더에서 N번째 다중 CRC 이후 에러 정정이 적용된 M(≤L) 개의 경로가 검출되었다고 가정하면 N+1 번째 다중 CRC를 이용하여 다시 한번 M'(≤M) 개의 경로를 결정하는 방법을 적용할 수 있다. 도 15의 (b)에 도시된 바와 같이 에러 검출 용도의 CRC와 리스트 디코딩 용도의 CRC가 마지막 부분에 연속적으로 배치될 경우, 디코딩의 순서는 CRC가 만들어지는 순서가 반영되도록 정할 수 있다. 이에 대해서 도 16를 참조하여 설명하기로 한다.
도 16은 다중 CRC에서 인코딩 및 디코딩 순서의 예를 나타낸다.
도 16에 도시된 바와 같이, 예를 들어 데이터 전체를 반영한 CRC가 CRC 블록 1이라 정하고, 데이터와 CRC 블록 1을 함께 반영한 CRC가 CRC 블록 2라고 정할 경우, CRC 인코딩(encoding)의 순서는 CRC 블록 1에서 CRC 블록 2로 정해질 수 있으며, CRC 디코딩의 순서는 CRC 블록 2에서 CRC 블록 1의 순서가 되도록 정할 수 있다. 이때 각 CRC 블록의 목적은 CRC 블록 1의 경우 에러 검출용도일 수 있으며, CRC 블록 2의 경우 리스트 디코딩을 위한 용도일 수 있다. 이는 첫번째 CRC 검사 단계에서 CRC 블록 2에서 발생할 수 있는 에러의 영향을 CRC 블록 1에서 한번 검사할 수 있도록 만들기 위함이다. 만약 CRC 블록 1을 먼저 검사하고 CRC 블록 2를 검사하는 순서를 적용할 경우 CRC 블록 1의 검사 과정에서 CRC 블록 2에서 발생할 수 있는 비트 에러를 점검할 수 없다는 단점이 존재한다.
구체적으로, 도 16의 (a)를 참조하면, 인코딩 순서는 데이터에 대한 CRC1을 만들고, 이후 상기 데이터와 상기 CRC1을 모두 반영하여 CRC2를 만드는 순서로 정할 수 있다. 반면, 도 16의 (b)를 참조하면 디코딩의 순서는 데이터, CRC1, 그리고 CRC2가 모두 포함된 블록에 대하여 CRC2를 이용하고, 이후에 상기 데이터와 상기 CRC1이 포함된 블록에 대하여 CRC1을 이용하는 순서로 정할 수 있다. 이때, CRC1은 에러 검출용도일 수 있으며, CRC2는 리스트 검사 용도로 사용될 수 있다.
IV. 데이터 및 CRC 비트(및/또는 싱글 패리티 비트)의 매핑
전술한 다중 CRC (및/또는 싱글 패리티 비트) 방안을 사용할 경우 인코딩 과정에서 데이터 및 CRC 비트 (및/또는 싱글 패리티 비트)를 매핑하는 방안은 인코더의 입력 비트 관점에서 신뢰도에 의하여 결정될 수 있다. 일례로 극 부호(polar code)의 경우, 데이터와 CRC 비트(및/또는 싱글 패리티 비트)의 총 비트 수가 K개인 경우, 해당 K 비트는 입력 비트 측면에서 가장 신뢰도가 높은 K개의 비트에 순서대로 배치될 수 있다. K개의 신뢰성 있는 비트 위치가 결정된 경우 데이터와 CRC 비트들(및/또는 싱글 패리티 비트들)이 배치되는 순서는 도 13에 도시된 디코딩의 순서를 고려하여 결정될 수 있다. 여기서 이해를 돕기 위해서, 극 부호의 각 입력 비트 신뢰도가 다른 이유는 다음과 같다. 먼저 앞서 설명한 바와 같이, 극 부호는 그 특성상 입력 비트 별로 양극화 영향이 다르게 나타난다. 따라서, 데이터로 입력된 입력 비트들 중에서도 더 높은 신뢰도를 갖고 있는 비트와 상대적으로 낮은 신뢰도를 갖고 있는 비트가 존재할 수 있다. 일반적으로, 도 4b에 도시된 구조에서 입력 비트의 인덱스가 클수록 높은 신뢰도를 갖는 경향이 존재한다.
도 17은 데이터 비트와 CRC(및/또는 싱글 패리티 비트) 비트가 배치되는 예를 나타낸다.
도 17에 도시된 고정 비트(frozen bit)는 극 부호(polar code)의 인코더 크기가 총 N일 경우 데이터와 CRC 비트(및/또는 싱글 패리티 비트)의 목적으로 사용되지 않는 비트를 의미하며, 송신단과 수신단이 이미 알고 있는 정보로 채워지게 된다. 도 17에서 데이터 블록과 CRC 비트(및/또는 싱글 패리티 비트)는 앞선 I 절 및 II절에서 설명한 바와 같이 생성될 수 있다.
앞선 I 절 및 II절에서 설명한 바와 같이 데이터 블록과 CRC 블록 (및/또는 싱글 패리티 비트)를 생성할 때, 상기 데이터 블록과 CRC 블록 (및/또는 싱글 패리티 비트)의 관계는 인코더 입력 비트 측면에서 신뢰도가 고려될 수 있다. 예를 들어, 극 부호의 경우 인코더 입력 비트의 신뢰도는 서로 다른 값을 가질 수 있으며, 일부 입력 비트는 다른 입력 비트에 비하여 상대적으로 높은 에러 확률을 가질 수 있다. 신뢰도의 차이를 고려하기 위하여 디코딩 순서가 빠른 위치에서는 CRC 비트(및/또는 싱글 패리티 비트)가 등장하는 빈도가 높을 수 있다. 즉, 높은 신뢰도를 갖는 입력 비트들의 경우 에러가 발생할 확률이 낮으므로, 낮은 밀도로 CRC를 추가할 수 있다. 반면, 낮은 신뢰도를 갖는 입력 비트들의 경우 에러가 발생할 확률이 높으므로, 높은 밀도로 CRC를 추가할 수 있다. 이에 대해서 도 18을 참조하여 설명하면 다음과 같다.
도 18은 CRC 또는 싱글 패리티 비트의 위치에 따라 구분할 수 있는 연속적인 데이터 블록의 크기가 다른 예를 나타낸다.
도 18에 도시된 바와 같이, CRC 또는 싱글 패리티 비트의 위치에 따라 구분할 수 있는 연속적인 데이터 블록의 크기는 디코딩 순서에 따라 서로 다를 수 있다. 즉, 도 18에 도시된 예시에서는 디코딩 순서가 빠를수록 더 짧은 데이터 블록 이후에 CRC 또는 싱글 패리티 비트가 등장하는 예를 보이고 있다. 이는 상대적으로 신뢰도가 낮은 입력 비트들에 대하여 에러 검출 능력을 높이기 위한 목적일 수 있다. 이때 각 데이터 블록의 크기는 서로 간에 상대적인 비율로 정해질 수 있다.
V. 제어 채널 CRC 부가
PDCCH(physical downlink control channel)와 같은 제어 채널에서는 CRC의 스크램블링(scrambling)을 UE 식별자(identity)로 사용할 수 있다. 마찬가지로 본 발명에서 제안하는 다중 CRC 기법에서도 CRC를 통해 UE가 구분되도록 정할 수 있다. 만약 단독 CRC를 이용하여 PDCCH와 같은 제어 정보를 전송하고 CRC를 통한 UE 식별자 구분을 수행할 경우, 리스트 디코딩을 사용하는 디코더는 자신의 신호가 아닌 경우에도 자신의 신호로 오판할 수 있는 오인식율(FAR)이 증가하게 된다. 하지만 위에서 언급한 것과 같이 다중 CRC 기법을 사용하고 적어도 하나의 CRC를 에러 검출 용도로 사용할 경우 UE의 오인식율(FAR)이 감소하여 UE 식별자를 정확하게 판단할 수 있는 확률이 상대적으로 높아질 수 있다. 따라서 제어 채널에서 UE 식별자를 구분하기 위한 용도일 경우 리스트 디코딩을 사용하는 UE를 고려할 때 다중 CRC 구조가 기존의 싱글 CRC 구조에 비해 더 유리하다고 볼 수 있다.
본 절에서 제안하는 다중 CRC의 스크램블링을 통한 UE 식별자 구분 방안에서 사용할 수 있는 스크램블링 방식은 아래와 같은 옵션 들의 예시를 따를 수 있다.
- 옵션 1: 하나의 에러 검출 용도의 CRC에만 스크램블링을 적용하는 방안
- 옵션 2: CRC 전체에 단일 스크램블링을 적용하는 방안
- 옵션 3: 모든 CRC에 동일한 스크램블링을 적용하는 방안
- 옵션 4: 각 CRC에 서로 다른 스크램블링을 적용하는 방안
위 옵션 1의 경우에는 리스트 디코딩 용도의 CRC에는 스크램블링을 적용하지 않고 에러 검출 용도의 CRC에만 스크램블링을 적용하는 방안이다. 일례로 N 비트 길이의 CRC에 N 비트의 RNTI를 표현하기 위한 용도로 CRC의 스크램블링이 사용되는 경우, N 비트 길이의 스크램블링 코드를 사용하여 에러 검출 용도의 CRC에 적용할 수 있다. 이 방안은 기존 LTE에 사용하는 방법과 크게 다르지 않기 때문에 에러 검출 용도의 CRC 길이가 LTE와 동일하다면 NR의 후방 호환성(backward compatibility) 관점에서 유리할 수 있다. 옵션 2의 경우에는 다중 CRC 전체의 길이에 하나의 긴 스크램블링을 적용하는 방법이다. 일례로 N 비트의 RNTI를 표현하기 위해서 N 비트의 스크램블링 코드를 생성하고 이를 N/2 비트의 길이로 나누어 N/2 비트의 길이를 갖는 두 개의 CRC에 나누어 사용할 수 있다. 또한 이 방안은 다중 CRC를 다시 작은 그룹으로 나누어 그룹단위로 스크램블링을 적용하는 방안으로 확장할 수 있다. 이 방안은 다중 CRC를 도입하면서 하나의 CRC의 길이가 짧아져서 발생할 수 있는 UE 식별자의 구분 능력의 감소를 막을 수 있다는 장점이 있다. 옵션 3의 경우에는 모든 다중 CRC에 동일한 스크램블링을 적용하는 방안이다. 예를 들어, N 비트의 RNTI를 표현하기 위한 용도로 CRC 스크램블링이 사용되는 경우, N 비트의 스크램블링 코드를 생성하고, 이를 N 비트의 길이를 갖는 각각의 CRC에 동일하게 적용하는 방법이다. 이 방법은 스크램블링의 영향을 복수 번 확인하여 UE 식별자를 다수 확인할 수 있어 오인식율(FAR)을 낮출 수 있다는 장점이 있다. 옵션 4의 경우에는 각 CRC에 서로 다른 스크램블링을 걸어주는 방안이다. 이 방안에서 일부 CRC는 같은 스크램블링을 공유하도록 정할 수도 있다. 서로 다른 스크램블링을 적용하는 방안은 하나의 UE 식별자를 다양한 방식으로 표현하기 위한 목적일 수 있다. 예를 들어, N 비트의 RNTI를 표현하기 위해 N 비트의 스크램블링 코드가 사용되고, N 비트 CRC가 M개의 블록이 있는 경우, 같은 RNTI를 표현하는 서로 다른 M 개의 스크램블링 코드를 생성하고, 이를 각 CRC에 사용할 수 있다. 이는 같은 UE 식별자를 여러 번 표현하기 때문에 오인식율(false alarm)의 영향을 줄일 수 있다는 장점이 있다. 또는 다수의 스크램블링 코드의 조합으로 하나의 UE 식별자를 표현할 수 있다. 일례로 N 비트의 RNTI를 표현하기 위해 N/2 비트 길이의 2개의 CRC가 사용되는 경우, N 비트의 RNTI를 N/2 비트 길이의 두 구간으로 나누고, 각 N/2 비트 길이의 나누어진 RNTI에 대응되는 스크램블링 코드를 생성하여 각 N/2 비트 길이의 CRC에 적용할 수 있다. 이는 RNTI의 길이와 CRC 블록의 길이가 서로 맞지 않을 경우, 부족한 길이를 보상하기 위한 목적일 수 있다. 또는 두 개 이상의 서로 다른 UE 식별자를 표현할 수 있다. 예를 들어, A목적의 N 비트 RNTI와 B 목적의 M 비트 RNTI가 있는 경우, 각각 N 비트와 M 비트의 길이에 맞는 독립된 스크램블링 코드를 생성하고, 이를 각각 N 비트길이의 CRC와 M 비트 길이의 CRC에 사용할 수 있다. 이때 N과 M은 임의의 정수로 서로 같거나 다를 수 있다. 이는 하나의 UE가 두 가지 이상의 목적에 대하여 제어 채널을 구분하기 위한 목적일 수 있다.
지금까지 설명한, 본 발명의 실시예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 구체적으로는 도면을 참조하여 설명하기로 한다.
도 19는 본 명세서의 개시가 구현되는 무선통신 시스템을 나타낸 블록도이다.
기지국(200)은 프로세서(processor, 201), 메모리(memory, 202) 및 RF부(RF(radio frequency) unit, 203)을 포함한다. 메모리(202)는 프로세서(201)와 연결되어, 프로세서(201)를 구동하기 위한 다양한 정보를 저장한다. RF부(203)는 프로세서(201)와 연결되어, 무선 신호를 송신 및/또는 수신한다. 프로세서(201)는 제안된 기능, 과정 및/또는 방법을 구현한다. 전술한 실시 예에서 기지국의 동작은 프로세서(201)에 의해 구현될 수 있다.
UE(100)는 프로세서(101), 메모리(102) 및 RF부(103)을 포함한다. 메모리(102)는 프로세서(101)와 연결되어, 프로세서(101)를 구동하기 위한 다양한 정보를 저장한다. RF부(103)는 프로세서(101)와 연결되어, 무선 신호를 송신 및/또는 수신한다. 프로세서(101)는 제안된 기능, 과정 및/또는 방법을 구현한다.
프로세서는 ASIC(application-specific integrated circuit), 다른 칩셋, 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리는 ROM(read-only memory), RAM(r그리고om access memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다. RF부는 무선 신호를 처리하기 위한 베이스밴드 회로를 포함할 수 있다. 실시예가 소프트웨어로 구현될 때, 상술한 기법은 상술한 기능을 수행하는 모듈(과정, 기능 등)로 구현될 수 있다. 모듈은 메모리에 저장되고, 프로세서에 의해 실행될 수 있다. 메모리는 프로세서 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서와 연결될 수 있다.
상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.

Claims (15)

  1. 송신기에서 데이터 전송 방법으로서,
    전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각 이후에 추가 정보를 부가하는 단계와;
    마지막 추가 정보 이후에 CRC(cyclic redundancy check)를 부가하는 단계를 포함하고,
    여기서 상기 CRC는 상기 n개의 데이터 블록들과 상기 각 데이터 블록에 부가된 n개의 추가 정보를 기준으로 생성되는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 추가 정보는 싱글 패리티 비트(single parity bit) 또는 CRC인 것을 특징으로 하는 방법.
  3. 제1항에 있어서, 상기 n-i번째 추가 정보는 n-i번째 데이터 블록에 대해서 생성되는 것을 특징으로 하는 방법.
  4. 제1항에 있어서, 상기 n-i번째 추가 정보는 첫번째 데이터 블록부터 n-i번째 데이터 블록까지에 대해서 생성되는 것을 특징으로 하는 방법.
  5. 제1항에 있어서, 상기 n개의 데이터 블록들 중 적어도 일부는 크기가 서로 다른 것을 특징으로 하는 방법.
  6. 제4항에 있어서, 상기 n개의 데이터 블록들은 디코딩 순서가 빠를수록 크기가 작아지는 것을 특징으로 하는 방법.
  7. 제1항에 있어서, 상기 n개의 추가 정보들 각각은 리스트 디코딩 과정에서의 에러 정정을 위해 사용되고,
    여기서 에러 정정은 잘못된 디코딩 경로를 추적하고 제거하는 것을 포함하는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 데이터 블록의 최대 크기가 K로 정해져 있는 경우, 상기 TB의 크기가 N이라면, 상기 데이터 블록의 개수 n은 N/K에 의해서 결정되는 것을 특징으로 하는 방법.
  9. 제8항에 있어서, 상기 K의 값은 데이터 블록 마다 달라질 수 있는 것을 특징으로 하는 방법.
  10. 제1항에 있어서, 상기 CRC는 UE(User Equipment)의 식별자로서 스크램블링(scrambling)되는 것을 특징으로 하는 방법.
  11. 제10항에 있어서,
    상기 추가 정보가 CRC인 경우, CRC들 전체가 하나의 UE 식별자로 스크래블링되는 것을 특징으로 하는 방법.
  12. 데이터 전송을 수행하는 송신기로서,
    송수신부와;
    상기 송수신부를 제어하는 프로세서를 포함하고, 상기 프로세서는
    전송 블록(TB)이 n개의 데이터 블록으로 나뉠 경우, n개의 블록들 각각 이후에 추가 정보를 부가하는 과정과;
    마지막 추가 정보 이후에 CRC(cyclic redundancy check)를 부가하는 과정을 수행하고,
    여기서 상기 CRC는 상기 n개의 데이터 블록들과 상기 각 데이터 블록에 부가된 n개의 추가 정보를 기준으로 생성되는 것을 특징으로 하는 송신기.
  13. 제12항에 있어서, 상기 추가 정보는 싱글 패리티 비트(single parity bit) 또는 CRC인 것을 특징으로 하는 송신기.
  14. 제12항에 있어서, 상기 n-i번째 추가 정보는 n-i번째 데이터 블록에 대해서 생성되는 것을 특징으로 하는 송신기.
  15. 제12항에 있어서, 상기 n-i번째 추가 정보는 첫번째 데이터 블록부터 n-i번째 데이터 블록까지에 대해서 생성되는 것을 특징으로 하는 송신기.
KR1020187036031A 2016-06-19 2017-06-19 데이터 전송 방법 및 송신기 KR102129802B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662352013P 2016-06-19 2016-06-19
US62/352,013 2016-06-19
US201662401842P 2016-09-29 2016-09-29
US62/401,842 2016-09-29
PCT/KR2017/006408 WO2017222259A1 (ko) 2016-06-19 2017-06-19 데이터 전송 방법 및 송신기

Publications (2)

Publication Number Publication Date
KR20190006189A true KR20190006189A (ko) 2019-01-17
KR102129802B1 KR102129802B1 (ko) 2020-07-03

Family

ID=60783310

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020187036031A KR102129802B1 (ko) 2016-06-19 2017-06-19 데이터 전송 방법 및 송신기

Country Status (6)

Country Link
US (4) US10411834B2 (ko)
EP (2) EP4123937A1 (ko)
JP (1) JP6770593B2 (ko)
KR (1) KR102129802B1 (ko)
CN (2) CN109314603B (ko)
WO (1) WO2017222259A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210051271A (ko) 2019-10-30 2021-05-10 삼성에스디에스 주식회사 전송 보장을 위한 데이터 전송 장치 및 방법

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018107430A1 (en) * 2016-12-15 2018-06-21 Qualcomm Incorporated Crc bits for joint decoding and verification of control information using polar codes
EP4075673A1 (en) 2017-03-23 2022-10-19 QUALCOMM Incorporated Parity bit channel assignment for polar coding
KR102488910B1 (ko) * 2017-05-15 2023-01-13 퀄컴 인코포레이티드 연속적 소거 리스트 디코딩의 조기 종결
US20180331697A1 (en) * 2017-05-15 2018-11-15 Qualcomm Incorporated Nominal complexity and weighted combinations for polar code construction
CN108667568B (zh) * 2017-07-28 2019-11-19 华为技术有限公司 一种Polar码编码方法及装置
US11115152B2 (en) * 2017-08-11 2021-09-07 Telefonaktiebolaget Lm Ericsson (Publ) Transport block size determination for equal size code blocks
WO2019138151A1 (en) * 2018-01-15 2019-07-18 Nokia Technologies Oy Coding and decoding of coupled chains
CN109951260B (zh) * 2018-02-12 2020-04-03 华为技术有限公司 一种数据包发送方法及相关设备
JP7112862B2 (ja) * 2018-03-19 2022-08-04 シャープ株式会社 基地局装置、通信システム、通信方法、及びプログラム
WO2020045943A1 (ko) * 2018-08-30 2020-03-05 엘지전자 주식회사 무선 통신 시스템에서 폴라 코딩에 기초한 채널 코딩을 수행하는 방법 및 장치
KR102293600B1 (ko) * 2020-03-16 2021-08-24 아주대학교산학협력단 극 부호를 위한 저지연 비트 플리핑 연속 제거 복호 방법 및 복호 시스템
US11451330B2 (en) * 2020-05-05 2022-09-20 Viavi Solutions Inc. Method for reducing false detection of successful decoding of cyclic redundancy check codes
US11496243B1 (en) * 2021-05-04 2022-11-08 Qualcomm Incorporated Techniques for masking and unmasking cyclic redundancy check bits for early termination of decoding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090010927A (ko) * 2007-07-23 2009-01-30 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR20130014484A (ko) * 2009-07-01 2013-02-07 실리콘모션 인코포레이티드 에러 정정 코드의 부호화 및 복호화 방법 그리고 코덱
KR20140015602A (ko) * 2011-07-01 2014-02-06 인텔 코오퍼레이션 더 짧은 블록 길이를 이용하여 더 긴 선형 블록 코드워드를 생성 및 디코딩하기 위한 장치, 시스템 및 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1805414A (zh) * 2005-01-13 2006-07-19 松下电器产业株式会社 信噪比估计方法和系统以及信道补偿方法和系统
US7606295B2 (en) 2005-02-24 2009-10-20 Interdigital Technology Corporation Generalized rake receiver for wireless communication
KR101244580B1 (ko) * 2005-12-19 2013-03-25 소니 주식회사 코더, 및 제약 d=1,r=2를 갖는 패리티 상보적 워드할당에 의한 코드의 코딩방법
EP2143225B1 (en) * 2007-04-30 2018-03-21 InterDigital Technology Corporation Feedback signaling error detection and checking in mimo wireless communication systems
US8386878B2 (en) * 2007-07-12 2013-02-26 Samsung Electronics Co., Ltd. Methods and apparatus to compute CRC for multiple code blocks
US8555136B2 (en) * 2007-07-25 2013-10-08 Qualcomm Incorporated Optimized decoding in a receiver
US8234551B2 (en) 2007-11-02 2012-07-31 Broadcom Corporation Single CRC polynomial for both turbo code block CRC and transport block CRC
CN103338045B (zh) * 2008-07-02 2017-06-23 松下电器(美国)知识产权公司 通信装置、终端装置和通信方法
KR101633326B1 (ko) 2009-02-27 2016-06-24 엘지전자 주식회사 전송 방법
CN106899311B (zh) * 2012-09-24 2023-11-03 华为技术有限公司 混合极性码的生成方法和生成装置
US9602235B2 (en) * 2014-06-27 2017-03-21 Texas Instruments Incorporated Code block segmentation and configuration for concatenated turbo and RS coding
CN105227189B (zh) * 2015-09-24 2019-01-01 电子科技大学 分段crc辅助的极化码编译码方法
CN105337696B (zh) 2015-10-08 2018-03-30 东南大学 基于分段crc校验的极化解码方法
US20170214413A1 (en) * 2016-01-21 2017-07-27 HGST Netherlands B.V. Joint source-channel coding with dynamic dictionary for object-based storage
US10361717B2 (en) * 2016-06-17 2019-07-23 Huawei Technologies Co., Ltd. Apparatus and methods for error detection coding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090010927A (ko) * 2007-07-23 2009-01-30 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
KR20130014484A (ko) * 2009-07-01 2013-02-07 실리콘모션 인코포레이티드 에러 정정 코드의 부호화 및 복호화 방법 그리고 코덱
KR20140015602A (ko) * 2011-07-01 2014-02-06 인텔 코오퍼레이션 더 짧은 블록 길이를 이용하여 더 긴 선형 블록 코드워드를 생성 및 디코딩하기 위한 장치, 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
3gpp R1-165454* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210051271A (ko) 2019-10-30 2021-05-10 삼성에스디에스 주식회사 전송 보장을 위한 데이터 전송 장치 및 방법

Also Published As

Publication number Publication date
US11791935B2 (en) 2023-10-17
JP2019524034A (ja) 2019-08-29
US20190097760A1 (en) 2019-03-28
US10581557B2 (en) 2020-03-03
US20220190959A1 (en) 2022-06-16
US10411834B2 (en) 2019-09-10
JP6770593B2 (ja) 2020-10-14
US20190165889A1 (en) 2019-05-30
EP4123937A1 (en) 2023-01-25
WO2017222259A1 (ko) 2017-12-28
CN109314603A (zh) 2019-02-05
CN109314603B (zh) 2022-08-16
EP3474471A4 (en) 2020-10-28
EP3474471B1 (en) 2022-10-05
US20200204300A1 (en) 2020-06-25
EP3474471A1 (en) 2019-04-24
CN114884615A (zh) 2022-08-09
US11271680B2 (en) 2022-03-08
KR102129802B1 (ko) 2020-07-03

Similar Documents

Publication Publication Date Title
US11271680B2 (en) Data transmission method and apparatus
US11838125B2 (en) Apparatus and method for encoding and decoding using polar code in wireless communication system
CN109478953B (zh) 用极化码进行盲检测的方法及系统
US10440606B2 (en) Method and device for transmitting data
US11171741B2 (en) Polar code transmission method and apparatus
US10849012B2 (en) Method for performing decoding by terminal and terminal for performing same method
US10887050B2 (en) Downlink signal reception method and user equipment, and downlink signal transmission method and base station
US11251813B2 (en) System and method for processing control information
US11398838B2 (en) Device and method to transmit and receive signal in communication system
US11223370B2 (en) Method and apparatus for transmitting information
US20190373589A1 (en) Method and terminal for decoding downlink control information according to multi-aggregation level
WO2018146552A1 (en) Crc aided decoding of polar codes
US11146354B2 (en) Method for performing channel-coding of information on basis of polar code
US11206044B2 (en) Method and terminal for channel encoding using polar code
US20200228259A1 (en) Method and user device for transmitting harq ack/nack information
CN109952709B (zh) 一种基站、用户设备中的用于信道编码的方法和装置
EP4354775A1 (en) Method, communication device, processing device, and storage medium for performing channel encoding, and method and communication device for performing channel decoding

Legal Events

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