KR102334420B1 - Method for encoding and decodong using distributed crc-polar codes and apparatus for performing the same - Google Patents

Method for encoding and decodong using distributed crc-polar codes and apparatus for performing the same Download PDF

Info

Publication number
KR102334420B1
KR102334420B1 KR1020200091561A KR20200091561A KR102334420B1 KR 102334420 B1 KR102334420 B1 KR 102334420B1 KR 1020200091561 A KR1020200091561 A KR 1020200091561A KR 20200091561 A KR20200091561 A KR 20200091561A KR 102334420 B1 KR102334420 B1 KR 102334420B1
Authority
KR
South Korea
Prior art keywords
crc
parity check
row
check matrix
bits
Prior art date
Application number
KR1020200091561A
Other languages
Korean (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 포항공과대학교 산학협력단
Application granted granted Critical
Publication of KR102334420B1 publication Critical patent/KR102334420B1/en

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/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/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • 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
    • H04L1/001Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding applied to control information
    • 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
    • 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/0071Use of interleaving

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)
  • Error Detection And Correction (AREA)

Abstract

A CRC-polar encoding method is performed in a transmitter using polar coding. The method comprises the following steps of: interleaving at least some bits of information bits and CRC bits for the information bits based on a predetermined order; and polar-encoding the interleaved bits based on a predetermined bit-channel index. According to the present invention, an early error detection effect is excellent and error rate performance increase and delay reduction of a communication system can be realized.

Description

분산된 CRC-폴라 부호를 이용한 부호화 및 복호화 방법, 및 이를 수행하는 장치{METHOD FOR ENCODING AND DECODONG USING DISTRIBUTED CRC-POLAR CODES AND APPARATUS FOR PERFORMING THE SAME}Encoding and decoding method using distributed CRC-polar code, and apparatus for performing the same

본 발명은 부호화 및 복호화 방법에 관한 것이다.The present invention relates to encoding and decoding methods.

분산된 CRC-폴라 부호는 CRC 부호기와 폴라 부호기 사이에 인터리버를 도입함으로써 각 CRC 부호 비트가 정보 블록 사이에 위치하도록 조정한다. 이때 연속 제거(successive cancellation, SC) 복호가 가능하도록 각 CRC 비트를 구성하는 모든 정보 비트들의 인덱스가 해당 CRC 비트의 인덱스보다 항상 작도록 제한하는 조건이 고려된다.The distributed CRC-polar code adjusts each CRC code bit to be located between the information blocks by introducing an interleaver between the CRC encoder and the polar encoder. In this case, a condition for limiting that the index of all information bits constituting each CRC bit is always smaller than the index of the corresponding CRC bit is considered so that successive cancellation (SC) decoding is possible.

분산된 CRC 비트들은 연속 제거 리스트(successive cancellation list, SCL) 복호 과정에서 트리 제거(tree pruning)를 위해 사용하며, 오율 성능을 개선하거나 복호의 조기 중단(early termination)을 통해 지연(latency)을 감소시키는 데 사용될 수 있다.The distributed CRC bits are used for tree pruning in the successive cancellation list (SCL) decoding process, and the error rate performance is improved or latency is reduced through early termination of decoding. can be used to make

이때 연속 제거 기반 복호에서 조기 오류 검출 효과를 극대화하기 위해서는 각 CRC 비트의 인덱스가 최대한 작은 값을 갖도록 분산된 CRC 부호가 설계되어야 한다.In this case, in order to maximize the effect of early error detection in successive cancellation-based decoding, a distributed CRC code should be designed so that the index of each CRC bit has the smallest possible value.

D. Hui, M. Breschel, and Y. Blankenship, "Interleaved CRC for polar codes," in Proc. IEEE 87th Veh. Technol. Conf. (VTC Spring), Jun. 2018, p. 1-5. D. Hui, M. Breschel, and Y. Blankenship, "Interleaved CRC for polar codes," in Proc. IEEE 87th Veh. Technol. Conf. (VTC Spring), Jun. 2018, p. 1-5. P. Chaki and N. Kamiya, "A novel design of CRC-concatenated polar codes," in Proc. IEEE International Conference on Communications (ICC), 2019. P. Chaki and N. Kamiya, "A novel design of CRC-concatenated polar codes," in Proc. IEEE International Conference on Communications (ICC), 2019.

본 발명의 목적은 조기 오류 검출 효과가 우수하고 통신 시스템의 오율 성능 향상 및 지연 감소를 달성할 수 있는 분산된 CRC 부호의 설계 방법을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a method for designing a distributed CRC code that has excellent early error detection effect and can achieve improved error rate performance and reduced delay of a communication system.

다만, 본 발명의 해결하고자 하는 과제는 이에 한정되는 것이 아니며, 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있을 것이다.However, the problem to be solved by the present invention is not limited thereto, and may be variously expanded without departing from the spirit and scope of the present invention.

전술한 문제점을 해결하기 위한 본 발명의 일 실시예에 따른 폴라 코딩을 사용하는 송신기에서 수행되는 CRC(cyclic redundancy check)-폴라 부호화 방법은 미리 결정된 순서에 기초하여 정보 비트들 및 상기 정보 비트들에 대한 CRC 비트들 중 적어도 일부 비트를 인터리빙(interleaving)하는 단계, 및 상기 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화하는 단계를 포함한다.A cyclic redundancy check (CRC)-polar coding method performed in a transmitter using polar coding according to an embodiment of the present invention for solving the above-described problem is information bits and the information bits based on a predetermined order. and interleaving at least some of the CRC bits for CRC, and polar encoding the interleaved bits based on a predetermined bit-channel index.

일 측면에 따르면, 상기 방법은 상기 적어도 일부 비트를 인터리빙하는 단계 이전에, 상기 정보 비트들의 길이가 가변하는 경우 상기 정보 비트들의 길이 K를 식별하는 단계, 및 CRC 부호에 기초하여 상기 정보 비트들에 대한 CRC 비트들을 결정하는 단계를 더 포함할 수 있다.According to an aspect, the method includes, before the interleaving of at least some bits, identifying a length K of the information bits when the lengths of the information bits vary, and adding the information bits to the information bits based on a CRC code. The method may further include determining CRC bits for .

일 측면에 따르면, 상기 미리 결정된 순서는 상기 CRC 부호의 제1 패리티 검사 행렬에 대한 행 연산, 행 치환, 및 열 치환에 기초하여 결정되는 제2 패리티 검사 행렬에 대응될 수 있다.According to an aspect, the predetermined order may correspond to a second parity check matrix determined based on a row operation, row permutation, and column permutation of the first parity check matrix of the CRC code.

일 측면에 따르면, 상기 제2 패리티 검사 행렬의 j번째 행은 M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 상기 CRC 비트들의 개수이고, L은 자연수임 -, 상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j- 1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -, U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계, 및 j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정될 수 있다.According to one aspect, the j-th row of the second parity check matrix randomly generates L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits, L is a natural number -, the L regular matrix U j Selecting a regular matrix U j * in which the minimum row weight of the non-zero rows of U j H {:,l+1, K+M} (j- 1) is the minimum among them - where H (0) is The first parity check matrix, H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, where l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -, performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1) , and non-zero at the last K+Ml position in the j-th row It may be determined according to the step of performing thermal substitution so that the components are all located on the left.

일 측면에 따르면, 상기 미리 결정된 순서는 상기 제2 패리티 검사 행렬에 대하여 비트-채널 신뢰도에 기초한 추가적인 열 치환을 수행함으로써 결정되는 제3 패리티 검사 행렬에 대응될 수 있다.According to an aspect, the predetermined order may correspond to a third parity check matrix determined by performing additional column permutation based on bit-channel reliability on the second parity check matrix.

일 측면에 따르면, 정보 블록에 0 또는 미리 정의된 값을 삽입하는 단계를 더 포함할 수 있다.According to one aspect, the method may further include inserting 0 or a predefined value into the information block.

일 측면에 따르면, 상기 L은 상기 CRC-폴라 부호화의 복잡도에 기초하여 결정될 수 있다.According to an aspect, the L may be determined based on the complexity of the CRC-polar encoding.

일 측면에 따르면, 상기 제1 패리티 검사 행렬은 상기 CRC 부호의 표준형 패리티 검사 행렬일 수 있다.According to an aspect, the first parity check matrix may be a standard parity check matrix of the CRC code.

전술한 문제점을 해결하기 위한 본 발명의 다른 실시예에 따른 폴라 코딩을 사용하는 송신기는 폴라 부호화된 비트들을 전송하는 트랜시버(transceiver), 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 미리 결정된 순서에 기초하여 정보 비트들 및 상기 정보 비트들에 대한 CRC 비트들 중 적어도 일부 비트를 인터리빙(interleaving)하고, 그리고 상기 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화한다.A transmitter using polar coding according to another embodiment of the present invention for solving the above problems includes a transceiver for transmitting polar coded bits, and at least one processor, wherein the at least one processor is configured in advance Information bits and at least some bits of CRC bits for the information bits are interleaved based on a determined order, and the interleaved bits are polar-encoded based on a predetermined bit-channel index.

전술한 문제점을 해결하기 위한 본 발명의 다른 실시예에 따른 폴라 디코딩을 사용하는 수신기에서 수행되는 CRC(cyclic redundancy check)-폴라 복호화 방법은 복호에 사용할 값들과 미리 결정된 비트-채널 인덱스에 기초하여 폴라 복호화하는 단계, 및 상기 폴라 복호화에 의해 결정된 비트들의 적어도 일부 비트에 대해 미리 결정된 순서에 기초하여 정보 비트들을 식별하는 단계를 포함한다.A cyclic redundancy check (CRC)-polar decoding method performed in a receiver using polar decoding according to another embodiment of the present invention for solving the above-mentioned problems is a polar decoding method based on values to be used for decoding and a predetermined bit-channel index. decoding, and identifying information bits based on a predetermined order for at least some bits of bits determined by the polar decoding.

일 측면에 따르면, 상기 방법은 상기 폴라 복호화하는 단계 이전에, 송신기로부터 상기 정보 비트들에 대응되는 신호를 수신하고, 상기 수신된 신호에 대해 복조를 수행하여 상기 복호에 사용할 값들을 결정하는 단계, 및 상기 정보 비트들의 길이가 가변하는 경우 상기 정보 비트들의 길이 K를 식별하는 단계를 더 포함할 수 있다.According to one aspect, the method includes, before the polar decoding step, receiving a signal corresponding to the information bits from a transmitter, performing demodulation on the received signal, and determining values to be used for the decoding; and identifying the length K of the information bits when the lengths of the information bits are variable.

일 측면에 따르면, 상기 미리 결정된 순서는 상기 CRC 부호의 제1 패리티 검사 행렬에 대한 행 연산, 행 치환, 및 열 치환에 기초하여 결정되는 제2 패리티 검사 행렬에 대응될 수 있다.According to an aspect, the predetermined order may correspond to a second parity check matrix determined based on a row operation, row permutation, and column permutation of the first parity check matrix of the CRC code.

일 측면에 따르면, 상기 제2 패리티 검사 행렬의 j번째 행은 M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 상기 CRC 비트들의 개수이고, L은 자연수임 -, 상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -, U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계, 및 j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정될 수 있다.According to one aspect, the j-th row of the second parity check matrix randomly generates L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits, L is a natural number -, the L regular matrix U j Selecting a regular matrix U j * in which the minimum row weight of the non-zero rows of U j H {:,l+1, K+M} (j-1) is the minimum among them - where H (0) is The first parity check matrix, H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, where l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -, performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1) , and non-zero at the last K+Ml position in the j-th row It may be determined according to the step of performing thermal substitution so that the components are all located on the left.

일 측면에 따르면, 상기 미리 결정된 순서는 상기 제2 패리티 검사 행렬에 대하여 비트-채널 신뢰도에 기초한 추가적인 열 치환을 수행함으로써 결정되는 제3 패리티 검사 행렬에 대응될 수 있다.According to an aspect, the predetermined order may correspond to a third parity check matrix determined by performing additional column permutation based on bit-channel reliability on the second parity check matrix.

일 측면에 따르면, 정보 블록에 0 또는 미리 정의된 값을 삽입하는 단계를 더 포함할 수 있다.According to one aspect, the method may further include inserting 0 or a predefined value into the information block.

일 측면에 따르면, 상기 L은 상기 CRC-폴라 복호화의 복잡도에 기초하여 결정될 수 있다.According to an aspect, L may be determined based on the complexity of the CRC-polar decoding.

일 측면에 따르면, 상기 L은 상기 CRC-폴라 상기 제1 패리티 검사 행렬은 상기 CRC 부호의 표준형 패리티 검사 행렬일 수 있다.According to an aspect, the L is the CRC-polar and the first parity check matrix may be a standard parity check matrix of the CRC code.

전술한 문제점을 해결하기 위한 본 발명의 다른 실시예에 따른 폴라 디코딩을 사용하는 수신기는 정보 비트들에 대응되는 신호를 수신하는 트랜시버(transceiver) 및 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 복호에 사용할 값들과 미리 결정된 비트-채널 인덱스에 기초하여 폴라 복호화하고, 그리고 상기 폴라 복호화에 의해 결정된 비트들의 적어도 일부 비트에 대해 미리 결정된 순서에 기초하여 상기 정보 비트들을 식별한다.A receiver using polar decoding according to another embodiment of the present invention for solving the above problems includes a transceiver for receiving a signal corresponding to information bits and at least one processor, the at least one processor performs polar decoding based on values to be used for decoding and a predetermined bit-channel index, and identifies the information bits based on a predetermined order for at least some bits of bits determined by the polar decoding.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology may have the following effects. However, this does not mean that a specific embodiment should include all of the following effects or only the following effects, so the scope of the disclosed technology should not be understood as being limited thereby.

전술한 본 발명의 실시예들에 따른 CRC-폴라 부호화 및 복호화 방법, 및 이를 수행하는 장치에 따르면, 조기 오류 검출 효과가 우수하고 통신 시스템의 오율 성능 향상 및 지연 감소를 달성할 수 있다.According to the CRC-polar encoding and decoding method according to the above-described embodiments of the present invention, and an apparatus for performing the same, an early error detection effect is excellent, and an error rate performance improvement and delay reduction of a communication system can be achieved.

도 1은 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호를 이용한 부호화 방법의 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 설계 방법의 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 패리티 검사 행렬을 도시한 것이다.
도 4는 본 발명의 다른 실시예에 따른 폴라 코딩을 사용하는 송신기의 구성을 도시한 것이다.
도 5는 본 발명의 다른 실시예에 따른 폴라 디코딩을 사용하는 수신기의 구성을 도시한 것이다.
도 6는 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 조기 오류 검출 용량(CRC-10)을 도시한 것이다.
도 7는 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 조기 오류 검출 용량(CRC-16)을 도시한 것이다.
1 is a flowchart of an encoding method using a distributed CRC-polar code according to an embodiment of the present invention.
2 is a flowchart of a method for designing a distributed CRC-polar code according to an embodiment of the present invention.
3 illustrates a parity check matrix of a distributed CRC-polar code according to an embodiment of the present invention.
4 illustrates a configuration of a transmitter using polar coding according to another embodiment of the present invention.
5 shows the configuration of a receiver using polar decoding according to another embodiment of the present invention.
6 illustrates an early error detection capacity (CRC-10) of a distributed CRC-polar code according to an embodiment of the present invention.
7 illustrates an early error detection capacity (CRC-16) of a distributed CRC-polar code according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail.

그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as first, second, etc. may be used to describe various elements, but the elements should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, a first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but it should be understood that other components may exist in between. something to do. On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and are not interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. .

이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람이 본 발명을 쉽게 실시할 수 있도록 명확하고 상세하게 설명하기로 한다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention will be described clearly and in detail so that those of ordinary skill in the art can easily practice the present invention.

Arikan이 제안한 폴라 부호는 채널의 분극(polarization) 현상을 이용하여 연속 제거(successive cancellation, SC) 복호를 통해 이진 입력 이산 무기억 채널의 용량을 달성할 수 있음이 이론적으로 증명된 최초의 오류 정정 부호이다. 길이 N = 2n (n≥1)의 폴라 부호는 [수학식 1]의 G N을 생성 행렬로 갖는다.The polar code proposed by Arikan is the first error correction code to theoretically prove that the capacity of a binary input discrete memory channel can be achieved through successive cancellation (SC) decoding using the channel polarization phenomenon. am. A polar code of length N = 2 n (n≥1) has G N of [Equation 1] as a generating matrix.

Figure 112020076998061-pat00001
Figure 112020076998061-pat00001

여기서

Figure 112020076998061-pat00002
이고,
Figure 112020076998061-pat00003
Figure 112020076998061-pat00004
의 n차 Kronecker 멱(power) 연산을 의미한다.here
Figure 112020076998061-pat00002
ego,
Figure 112020076998061-pat00003
silver
Figure 112020076998061-pat00004
It means the nth-order Kronecker power operation of .

일반적인 폴라 부호는 신뢰도가 높은 KI개의 비트-채널 인덱스로 구성된 정보 집합

Figure 112020076998061-pat00005
로 정의된다. 선택되지 않은 나머지 N-KI개의 비트-채널 인덱스는 동결 집합
Figure 112020076998061-pat00006
{0, 1, … , N-1}\
Figure 112020076998061-pat00007
를 구성하게 된다. 주어진 입력 벡터 u에 대한 길이 N의 폴라 부호어 c는 [수학식 2]와 같이 계산된다.A general polar code is an information set consisting of K I bit-channel indexes with high reliability.
Figure 112020076998061-pat00005
is defined as The remaining NK I bit-channel indices that are not selected are frozen set
Figure 112020076998061-pat00006
{0, 1, … , N-1}\
Figure 112020076998061-pat00007
will constitute A polar codeword c of length N for a given input vector u is calculated as in [Equation 2].

Figure 112020076998061-pat00008
Figure 112020076998061-pat00008

여기서 u는 정보 집합

Figure 112020076998061-pat00009
에 속하는 KI개의 원소에 대응되는 비트 위치에 정보를 할당하고, 동결 집합
Figure 112020076998061-pat00010
에 속하는 N-KI개의 비트 위치에는 0의 동결 값을 할당함으로써 구성된다.where u is the set of information
Figure 112020076998061-pat00009
Allocating information to bit positions corresponding to K I elements belonging to the frozen set
Figure 112020076998061-pat00010
It is constructed by assigning a freeze value of 0 to the NK I bit positions belonging to .

한편, CRC(cyclic redundancy check) 부호가 연접된 폴라 부호(이하, "CRC-폴라 부호"라고 함)는 연속 제거 리스트(successive cancellation list, SCL) 복호 성능을 향상시키기 위해 제안되었다. CRC-폴라 부호어는 CRC 부호어를 폴라 부호기(encoder)의 입력으로 사용함으로써 생성된다. 구체적으로 M 비트의 CRC 부호를 기반으로 설계된 [N, K] CRC-폴라 부호는 [K+M, K] CRC 부호 및 크기가 KI=K+M인 정보 집합

Figure 112020076998061-pat00011
로 정의되는 폴라 부호를 직렬 연접함으로써 설계된다. 일반적인 CRC-폴라 부호에서는 CRC 비트들이 정보 블록의 끝부분에 위치한다. CRC-폴라 부호의 복호는 일반적인 SCL 복호를 통해 신뢰도가 높은 L개의 후보 부호어를 생성한 뒤, CRC를 만족하면서 신뢰도가 가장 높은 정보 비트 시퀀스를 선택함으로써 수행된다.Meanwhile, a polar code concatenated with a cyclic redundancy check (CRC) code (hereinafter, referred to as a “CRC-polar code”) has been proposed to improve successive cancellation list (SCL) decoding performance. The CRC-polar codeword is generated by using the CRC codeword as an input of a polar encoder. Specifically, the [N, K] CRC-polar code designed based on the M-bit CRC code is a [K+M, K] CRC code and an information set whose size is K I =K+M.
Figure 112020076998061-pat00011
It is designed by concatenating the polar codes defined by . In the general CRC-polar code, CRC bits are located at the end of the information block. The decoding of the CRC-polar code is performed by generating L candidate codewords with high reliability through general SCL decoding, and then selecting an information bit sequence with the highest reliability while satisfying the CRC.

분산된(distributed) CRC-폴라 부호는, 종래의 CRC-폴라 부호와 달리, CRC 부호기와 폴라 부호기 사이에 인터리버(interleaver)를 도입함으로써 각 CRC 부호 비트가 정보 블록 사이에 위치하도록 조정한다. 이때 SC 복호가 가능하도록 각 CRC 비트를 구성하는 모든 정보 비트들의 인덱스가 해당 CRC 비트의 인덱스보다 항상 작도록 제한하는 조건이 고려된다. 분산된 CRC 부호는 원래의 CRC 부호와 동등한(equivalent) 부호이기 때문에 동일한 오류 검출 능력(error-detection-capability)을 갖는다. 분산된 CRC 비트들은 SCL 복호 과정에서 동적 동결 비트처럼 트리 제거(tree pruning)를 위해 사용하여 오율 성능을 개선하거나 복호의 조기 중단(early termination)을 통해 복잡도와 지연(latency)을 감소시키는 데 사용할 수 있다.In the distributed CRC-polar code, unlike the conventional CRC-polar code, by introducing an interleaver between the CRC encoder and the polar encoder, each CRC code bit is adjusted so that it is located between the information blocks. In this case, a condition for limiting that the index of all information bits constituting each CRC bit is always smaller than the index of the corresponding CRC bit is considered so that SC decoding is possible. Since the distributed CRC code is equivalent to the original CRC code, it has the same error-detection-capability. Distributed CRC bits can be used for tree pruning like dynamic freeze bits in the SCL decoding process to improve error rate performance or to reduce complexity and latency through early termination of decoding. have.

SC 또는 SCL 복호에서의 조기 오류 검출(early error detection) 효과를 극대화하기 위해서는 각 CRC 비트의 인덱스가 최대한 작은 값을 갖도록 분산된 CRC 부호가 설계되어야 한다. 특히 처음 몇 CRC 비트들이 조기 오류 검출 효과에 더욱 중요한 역할을 수행한다. 종래에는 CRC 비트의 위치를 낮은 인덱스를 갖도록 조정하기 위하여 CRC 부호에 대한 생성 행렬의 행과 열을 치환(permutation)하거나, 패리티 검사 행렬의 행과 열을 치환하는 방법 등이 고려되었다.In order to maximize the effect of early error detection in SC or SCL decoding, a distributed CRC code should be designed so that the index of each CRC bit has the smallest possible value. In particular, the first few CRC bits play a more important role in the effectiveness of early error detection. Conventionally, in order to adjust the position of the CRC bit to have a low index, a method of permuting rows and columns of a generation matrix for a CRC code or permutation of rows and columns of a parity check matrix has been considered.

도 1은 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호를 이용한 부호화 방법의 흐름도이다. 분산된 CRC-폴라 부호를 이용한 부호화 방법은 통신 시스템 또는 방송 시스템의 송신기 또는 수신기에 의해 수행될 수 있다.1 is a flowchart of an encoding method using a distributed CRC-polar code according to an embodiment of the present invention. The coding method using the distributed CRC-polar code may be performed by a transmitter or a receiver of a communication system or a broadcasting system.

송신기에서 수행되는 경우, 먼저 전송하고자 하는 정보 비트들의 길이(K)를 식별한다(S110). 정보 비트들의 길이가 항상 고정되어 있는 경우 본 단계는 생략될 수 있다.When performed by the transmitter, the length (K) of information bits to be transmitted is first identified (S110). If the length of the information bits is always fixed, this step may be omitted.

다음으로, CRC 부호에 기초하여 정보 비트들에 대한 CRC 비트들을 결정한다(S130). 예를 들어, CRC 비트들은 CRC 부호에 기초하여 정보 비트들에 대해 부호화를 수행함으로써 결정될 수 있다. 여기서, CRC 비트는 CRC 패리티 비트일 수 있다.Next, CRC bits for the information bits are determined based on the CRC code (S130). For example, the CRC bits may be determined by performing encoding on the information bits based on the CRC code. Here, the CRC bit may be a CRC parity bit.

다음으로, 미리 결정된 순서에 기초하여 정보 비트들 및 CRC 비트들 중 적어도 일부 비트를 인터리빙(interleaving)한다(S150). 여기서, 상기 미리 결정된 순서는 CRC 부호의 패리티 검사 행렬에 대해 행 연산, 행 치환, 및 열 치환에 기초하여 결정된 패리티 검사 행렬에 대응될 수 있으며, 상기 행 연산은 패리티 검사 행렬을 구성하는 행의 적어도 일부에 대한 선형 연산을 의미할 수 있다. 또한 실시예에 따라서, 비트-채널의 신뢰도를 고려한 추가적인 열 치환에 기초하여 패리티 검사 행렬을 생성할 수 있으며, 다양한 부호 길이를 지원하기 위하여 제로 패딩을 수행할 수도 있다. 본 단계에 관하여는 도 2를 참조하여 후술하기로 한다.Next, at least some of the information bits and the CRC bits are interleaved based on a predetermined order (S150). Here, the predetermined order may correspond to a parity check matrix determined based on a row operation, a row permutation, and a column permutation with respect to the parity check matrix of the CRC code, and the row operation may correspond to at least one of the rows constituting the parity check matrix. It may mean a linear operation for some. Also, according to an embodiment, a parity check matrix may be generated based on additional column permutation in consideration of bit-channel reliability, and zero padding may be performed to support various code lengths. This step will be described later with reference to FIG. 2 .

다음으로, 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화한다(S170). 이후 부호화가 완료되면 전송할 비트들을 결정하고, 시스템에 따라서 주어진 전송 자원에 따라 전송할 비트들의 적어도 일부에 대해서 천공 또는 레이트 매칭(rate-matching)을 적용하여 전송할 수 있다.Next, the interleaved bits are polar-encoded based on a predetermined bit-channel index (S170). Thereafter, when encoding is completed, bits to be transmitted are determined, and puncturing or rate-matching may be applied to at least a portion of bits to be transmitted according to a given transmission resource according to a system and then transmitted.

한편 수신기에서 수행되는 경우, 먼저 송신기에서 전송된 정보 비트들에 대응되는 신호를 수신하고, 수신된 신호에 대해 복조를 수행하여 복호에 사용할 값들을 결정한다. 예를 들어, 복호에 사용할 값은 LLR(log-likelihood ratio) 값일 수 있다.Meanwhile, in the case of being performed by the receiver, a signal corresponding to information bits transmitted from the transmitter is first received, and values to be used for decoding are determined by performing demodulation on the received signal. For example, a value to be used for decoding may be a log-likelihood ratio (LLR) value.

또한 수신된 신호에 기초하여 정보 비트들의 길이를 식별한다. 송신기에서 수행되는 경우와 마찬가지로, 정보 비트들의 길이가 항상 고정되어 있는 경우 본 단계는 생략될 수 있다.It also identifies the length of the information bits based on the received signal. As in the case performed in the transmitter, this step may be omitted if the length of the information bits is always fixed.

다음으로, 결정된 값과 미리 결정된 폴라 부호의 비트-채널 인덱스에 기초하여 폴라 복호화를 수행한다. 시스템에 따라서 송신기에서 주어진 전송 자원에 따라 천공 또는 레이트 매칭된 비트들이 존재하는 경우 해당 비트에 적절한 값들을 삽입하는(inserting) 동작을 추가로 수행할 수도 있다. 일반적으로 복호를 위해 LLR 값을 사용하는 경우 천공된 비트들에 대해 0의 값을 삽입하지만, 본 발명은 이에 한정되지 않는다.Next, polar decoding is performed based on the determined value and the bit-channel index of the predetermined polar code. Depending on the system, when punctured or rate-matched bits exist according to a given transmission resource in the transmitter, an operation of inserting appropriate values into the corresponding bits may be additionally performed. In general, when an LLR value is used for decoding, a value of 0 is inserted into punctured bits, but the present invention is not limited thereto.

다음으로, 폴라 복호화를 수행하여 결정된 비트들의 적어도 일부에 대해 미리 결정된 순서에 기초하여 정보 비트들을 식별한다. 여기서, 상기 미리 결정된 순서는 CRC 부호의 패리티 검사 행렬에 대해 행 연산, 행 치환 및 열 치환에 기초하여 결정된 패리티 검사 행렬에 대응될 수 있으며, 상기 행 연산은 패리티 검사 행렬을 구성하는 행의 적어도 일부에 대한 선형 연산을 의미할 수 있다. 또한 실시예에 따라서, 비트-채널의 신뢰도를 고려한 추가적인 열 치환에 기초하여 패리티 검사 행렬을 생성할 수 있으며, 다양한 부호 길이를 지원하기 위하여 제로 패딩을 수행할 수도 있다.Next, information bits are identified based on a predetermined order for at least some of the bits determined by performing polar decoding. Here, the predetermined order may correspond to a parity check matrix determined based on a row operation, a row permutation, and a column permutation with respect to the parity check matrix of the CRC code, and the row operation is performed on at least a portion of a row constituting the parity check matrix. It may mean a linear operation for . Also, according to an embodiment, a parity check matrix may be generated based on additional column permutation in consideration of bit-channel reliability, and zero padding may be performed to support various code lengths.

도 2는 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 설계 방법의 흐름도이다.2 is a flowchart of a method for designing a distributed CRC-polar code according to an embodiment of the present invention.

CRC 생성 다항식 g(x)가 주어졌을 때 K×(K+M) 크기의 생성 행렬 G 및 M×(K+M) 크기의 표준형 패리티 검사 행렬 H는 각각 [수학식 3] 및 [수학식 4]와 같다.Given the CRC generation polynomial g(x), the generation matrix G of size K×(K+M) and the standard parity check matrix H of size M×(K+M) are respectively [Equation 3] and [Equation 4] ] is the same as

Figure 112020076998061-pat00012
Figure 112020076998061-pat00012

Figure 112020076998061-pat00013
Figure 112020076998061-pat00013

여기서 I KI M은 각각 K×K 및 M×M의 항등(identity) 행렬이고, P는 g(x)에 의해 결정되는 K×M의 행렬이다. H에서 I M의 0이 아닌 성분들은 CRC 비트에 대응되며, P T의 각 행의 0이 아닌 성분들은 각 CRC 비트의 패리티 검사 식에 참여하는 정보 비트들에 대응된다. 본 명세서에서는 설명의 편의를 위하여 표준형 패리티 검사 행렬 H를 이용하여 동등한 CRC 부호를 정의하는 새로운 패리티 검사 행렬 H new 를 설계하는 방법에 관하여 설명하나, 본 발명은 이에 제한되지 않으며 임의의 패리티 검사 행렬을 이용하여 실시할 수 있다.Here, I K and I M are identity matrices of K×K and M×M, respectively, and P is a matrix of K×M determined by g(x). Non-zero components of I M in H correspond to CRC bits, and non-zero components of each row of P T correspond to information bits participating in the parity check expression of each CRC bit. In this specification, for convenience of explanation, a method of designing a new parity check matrix H new defining an equivalent CRC code using a standard parity check matrix H is described, but the present invention is not limited thereto. It can be carried out using

도 2를 참조하면, 먼저 H new 의 첫 번째 행을 결정하기 위해 H의 행들의 선형 조합을 무작위로 생성한다(S201, S203, S205). 구체적으로, M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U 1을 무작위로 생성하고 이를 H에 곱한다.Referring to FIG. 2 , first, a linear combination of rows of H is randomly generated to determine the first row of H new ( S201 , S203 , and S205 ). Specifically, L nonsingular matrices U 1 having a size of M×M are randomly generated and multiplied by H .

다음으로, L개의 정칙 행렬들 중 U 1 H의 최소 행 무게가 최소가 되는 정칙 행렬 U 1 *를 선택한다(S207, S209, S211, S213, S215, S217, S219). Next, a regular matrix U 1 * having the minimum minimum row weight of U 1 H among the L regular matrices is selected (S207, S209, S211, S213, S215, S217, S219).

다음으로, U 1 * H의 최소 무게의 행이 첫 번째 행에 위치하도록 행 치환을 수행한 뒤, 첫 번째 행의 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행한다(S223). 여기서 획득되는 행렬을 H (1)이라고 지칭하기로 한다.Next, row substitution is performed so that the row with the minimum weight of U 1 * H is positioned in the first row, and then column substitution is performed so that all non-zero components of the first row are positioned on the left (S223). The matrix obtained here will be referred to as H (1).

이후 동일한 과정을 반복하여 H (M)을 획득하고, 이를 통해 H new 를 얻을 수 있다(S225, S227, S229). Thereafter, H (M) is obtained by repeating the same process , and H new can be obtained through this (S225, S227, S229).

구체적으로 살펴보면, H (j-1)가 고정된 경우 즉, H new 의 첫 j-1개의 행이 결정된 경우 다음 반복에 의해 H new 의 j번째 행을 결정한다. H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스를 l이라고 하면, 이전 과정과 유사하게, [수학식 5]와 같이 정의되는 M×M의 크기를 갖는 L개의 정칙 행렬 U j를 무작위로 생성한다.Looking specifically, when H (j-1) is fixed that is, when the first j-1 of the row of H new determined and determines the j-th row of H new by the next iteration. If the index of the rightmost non-zero component in the j-1th row of H (j-1) is l, similarly to the previous process, it has a size of M×M defined as in [Equation 5]. Randomly generate L regular matrices U j .

Figure 112020076998061-pat00014
Figure 112020076998061-pat00014

여기서 V는 (M-j+1)×(M-j+1) 크기의 정칙 행렬이다.Here, V is a regular matrix of size (M-j+1)×(M-j+1).

다음으로, L개의 정칙 행렬들 중 U j H {:.l+1,K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택한다. 이때 H {:.l+ 1,K +M} (j- 1)는 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬로서 M×(K+M-l)의 크기를 갖는다.Next, a regular matrix U j * in which the minimum row weight of non-zero rows of U j H {:.l+1,K+M} (j-1) is the minimum among the L regular matrices is selected. In this case, H {:.l+ 1,K +M} (j- 1) is {l+1, l+2, … , K+M} is a submatrix of H (j-1) composed of column indices belonging to , and has a size of M×(K+Ml).

다음으로, U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행한다.Next, while fixing the first j-1 rows of U j * H (j-1) , row substitution is performed so that the newly found row is located in the j-th row.

다음으로, j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행한다. 여기서 획득되는 행렬을 H (j)라고 지칭하기로 한다. 이러한 과정을 j=M이 될 때까지 반복하고, 이를 통해 H new 를 얻는다.Next, column substitution is performed so that all non-zero components are located on the left at the last K+Ml position in the j-th row. Here, the obtained matrix will be referred to as H (j). This process is repeated until j = M, and through this, H new is obtained.

완전 탐색을 기반으로 최적의 행렬 H new 를 얻기 위해서는 (2M-1)(2M-2)…(2M-2M-1)번의 반복이 필요하며, 이는 M이 증가함에 따라 급격히 증가한다. 반면 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호를 이용한 부호화 방법에 의하면 무작위로 생성하는 정칙 행렬의 수 L을 적절히 선택함으로써 복잡도를 조절할 수 있다.To get the optimal matrix H new based on the full search, (2 M -1)(2 M -2)… (2 M -2 M-1 ) iterations are required, which increases rapidly as M increases. On the other hand, according to the coding method using a distributed CRC-polar code according to an embodiment of the present invention, complexity can be controlled by appropriately selecting the number L of randomly generated regular matrices.

상술한 방법에 의해 획득한 패리티 검사 행렬 H new 에 대하여, j번째(1≤j≤M) CRC 비트의 인덱스는 [수학식 6]과 같다. With respect to the parity check matrix H new obtained by the above-described method, the index of the j-th (1≤j≤M) CRC bit is as in [Equation 6].

Figure 112020076998061-pat00015
Figure 112020076998061-pat00015

여기서 패리티 검사 행렬 H new 는 각 행이 서로 다른 열 인덱스에서 가장 우측의 0이 아닌 원소를 갖는다. 즉, r1, r2, …, rM은 서로 다른 값을 갖는다.Here, the parity check matrix H new has a rightmost nonzero element in each row at a different column index. That is, r 1 , r 2 , ... , r M have different values.

한편, 분산된 CRC 부호는 비트-채널의 신뢰도를 기반으로 설계될 수 있다. 구체적으로, KI=K+M개의 비트-채널의 신뢰도 수열을 R(1), R(2), …, R(KI)라 하면, CRC 비트가 할당된 비트-채널의 신뢰도는 R(r1), R(r2), …, R(rM)이다. 본 발명의 실시예에 따라 설계된 패리티 검사 행렬 Hnew에 대하여 r1번째 열과 k(r1<k<r2)번째 열을 치환하는 경우, 첫 번째 CRC 비트의 인덱스는 r1에서 k로 변경되며 이에 따라 첫 번째 CRC 비트가 할당된 비트-채널의 신뢰도는 R(r1)에서 R(k)로 변경된다. 이 과정을 다른 j(1<j<M)번째 CRC 비트에 대하여 반복 수행함으로써 새로운 패리티 검사 행렬을 설계할 수 있다.Meanwhile, the distributed CRC code may be designed based on bit-channel reliability. Specifically, K I = K + M bit-channel reliability sequences R(1), R(2), ... , R(K I ), the reliability of the bit-channel to which the CRC bit is allocated is R(r 1 ), R(r 2 ), ... , R(r M ). When the r 1 th column and the k (r 1 <k <r 2 ) th column are substituted for the parity check matrix H new designed according to the embodiment of the present invention, the index of the first CRC bit is changed from r 1 to k, Accordingly, the reliability of the bit-channel to which the first CRC bit is allocated is changed from R(r 1 ) to R(k). A new parity check matrix can be designed by repeating this process for another j (1<j<M)-th CRC bit.

또한, 분산된 CRC 부호는 다양한 부호 길이를 지원하기 위하여 제로 패딩을 수행할 수 있다. 설계된 분산 CRC 부호의 최대 정보 길이를 Kmax라 하자. 먼저 본 발명의 실시예에 따라 M×(Kmax+M)의 크기의 패리티 검사 행렬 H new 로 정의되는 [Kmax+M, Kmax] 분산된 CRC 부호를 설계한다. 정보 길이가 K'≤Kmax인 [K'+M, K'] 분산된 CRC 부호의 부호어를 생성하기 위해 K'비트의 정보 블록에 Kmax-K'개의 0 또는 미리 정의된 값을 삽입(padding)한다. 이때 삽입되는 0은 양끝 단에 위치시키거나, 비트-채널의 신뢰도를 고려하여 분산시킬 수 있다. 그리고 길이 Kmax의 정보 블록에 대한 CRC 부호화를 수행한 후 삽입된 0을 다시 제거함으로써 길이 K'+M의 부호어를 생성할 수 있다.In addition, the distributed CRC code may perform zero padding to support various code lengths. Let K max be the maximum information length of the designed distributed CRC code. First, according to an embodiment of the present invention, a [K max +M, K max ] distributed CRC code defined by a parity check matrix H new having a size of M×(K max +M) is designed. K max -K' 0 or predefined values are inserted into the K' bit information block to generate the codeword of the [K'+M, K'] distributed CRC code with an information length of K'≤K max. (padding) In this case, the inserted zeros may be located at both ends or may be distributed in consideration of the reliability of the bit-channel. In addition, a codeword of length K'+M can be generated by performing CRC encoding on an information block of length K max and then removing the inserted 0 again.

도 3은 본 발명의 일 실시예에 따른 분산된 CRC-폴라 부호의 패리티 검사 행렬을 도시한 것이다.3 illustrates a parity check matrix of a distributed CRC-polar code according to an embodiment of the present invention.

예시로서, 도 3은 생성 다항식 g(x)=x10+x9+x5+x4+x+1을 갖는 [30+10, 30] CRC 부호를 고려한 것이다. 도 3의 (a)는 표준형 패리티 검사 행렬, (b)는 행 치환 및 열 치환을 통해 획득한 패리티 검사 행렬, (c)는 본 발명의 일 실시예에 따른 패리티 검사 행렬(H new )를 도식화한 것이다. 도 3에서, 검정색 사각형은 분산된 CRC 비트를 의미하며, 본 발명의 일 실시예에 따른 패리티 검사 행렬이 가장 낮은 인덱스의 분산된 CRC 비트들을 가지는 것을 확인할 수 있다.As an example, FIG. 3 considers a [30+10, 30] CRC code having a generative polynomial g(x)=x 10 +x 9 +x 5 +x 4 +x+1. 3 (a) is a standard parity check matrix, (b) is a parity check matrix obtained through row permutation and column permutation, (c) is a diagram of a parity check matrix ( H new ) according to an embodiment of the present invention did it In FIG. 3 , a black rectangle indicates distributed CRC bits, and it can be seen that the parity check matrix according to an embodiment of the present invention has distributed CRC bits of the lowest index.

도 4는 본 발명의 다른 실시예에 따른 폴라 코딩을 사용하는 송신기의 구성을 도시한 것이다.4 illustrates a configuration of a transmitter using polar coding according to another embodiment of the present invention.

도 4를 참조하면, 본 발명의 다른 실시예에 따른 폴라 코딩을 사용하는 송신기(400)는 폴라 부호화된 비트들을 전송하는 트랜시버(transceiver)(420) 및 상술한 CRC-폴라 부호화 방법을 수행하는 적어도 하나의 프로세서(440)를 포함한다.Referring to FIG. 4 , a transmitter 400 using polar coding according to another embodiment of the present invention includes a transceiver 420 for transmitting polar coded bits and at least the above-described CRC-polar coding method. One processor 440 is included.

구체적으로, 적어도 하나의 프로세서(440)는 정보 비트들의 길이가 가변하는 경우 상기 정보 비트들의 길이(K)를 식별하고, CRC 부호에 기초하여 상기 정보 비트들에 대한 CRC 비트들을 결정하고, 미리 결정된 순서에 기초하여 상기 정보 비트들 및 상기 CRC 비트들 중 적어도 일부 비트를 인터리빙하고, 그리고 상기 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화한다.Specifically, the at least one processor 440 identifies the length K of the information bits when the length of the information bits varies, determines the CRC bits for the information bits based on the CRC code, and determines a predetermined At least some of the information bits and the CRC bits are interleaved based on an order, and the interleaved bits are polar-coded based on a predetermined bit-channel index.

여기서, 상기 미리 결정된 순서는 CRC 부호의 패리티 검사 행렬에 대해 행 연산, 행 치환, 및 열 치환에 기초하여 결정된 패리티 검사 행렬에 대응될 수 있으며, 상기 행 연산은 패리티 검사 행렬을 구성하는 행의 적어도 일부에 대한 선형 연산을 의미할 수 있다. 또한 실시예에 따라서, 비트-채널의 신뢰도를 고려한 추가적인 열 치환에 기초하여 패리티 검사 행렬을 생성할 수 있으며, 다양한 부호 길이를 지원하기 위하여 제로 패딩을 수행할 수도 있다.Here, the predetermined order may correspond to a parity check matrix determined based on a row operation, a row permutation, and a column permutation with respect to the parity check matrix of the CRC code, and the row operation may correspond to at least one of the rows constituting the parity check matrix. It may mean a linear operation for some. Also, according to an embodiment, a parity check matrix may be generated based on additional column permutation in consideration of bit-channel reliability, and zero padding may be performed to support various code lengths.

도 5는 본 발명의 다른 실시예에 따른 폴라 디코딩을 사용하는 수신기의 구성을 도시한 것이다.5 shows the configuration of a receiver using polar decoding according to another embodiment of the present invention.

도 5를 참조하면, 본 발명의 다른 실시예에 따른 폴라 디코딩을 사용하는 수신기(500)는 정보 비트들에 대응되는 신호를 수신하는 트랜시버(transceiver)(520) 및 상술한 CRC-폴라 복호화 방법을 수행하는 적어도 하나의 프로세서(540)를 포함한다.5, a receiver 500 using polar decoding according to another embodiment of the present invention includes a transceiver 520 for receiving a signal corresponding to information bits and the above-described CRC-polar decoding method. It includes at least one processor 540 to perform.

구체적으로, 적어도 하나의 프로세서(540)는 수신된 신호에 대해 복조를 수행하여 복호에 사용할 값들을 결정하고, 정보 비트들의 길이가 가변하는 경우 상기 정보 비트들의 길이(K)를 식별하고, 상기 결정된 값들과 미리 결정된 비트-채널 인덱스에 기초하여 폴라 복호화하고, 그리고 상기 폴라 복호화에 의해 결정된 비트들의 적어도 일부 비트에 대해 미리 결정된 순서에 기초하여 상기 정보 비트들을 식별한다.Specifically, the at least one processor 540 performs demodulation on the received signal to determine values to be used for decoding, identifies the length (K) of the information bits when the length of the information bits is variable, and the determined polar decoding based on the values and a predetermined bit-channel index, and identifying the information bits based on a predetermined order for at least some bits of bits determined by the polar decoding.

여기서, 상기 미리 결정된 순서는 CRC 부호의 패리티 검사 행렬에 대해 행 연산, 행 치환, 및 열 치환에 기초하여 결정된 패리티 검사 행렬에 대응될 수 있으며, 상기 행 연산은 패리티 검사 행렬을 구성하는 행의 적어도 일부에 대한 선형 연산을 의미할 수 있다. 또한 실시예에 따라서, 비트-채널의 신뢰도를 고려한 추가적인 열 치환에 기초하여 패리티 검사 행렬을 생성할 수 있으며, 다양한 부호 길이를 지원하기 위하여 제로 패딩을 수행할 수도 있다.Here, the predetermined order may correspond to a parity check matrix determined based on a row operation, a row permutation, and a column permutation with respect to the parity check matrix of the CRC code, and the row operation may correspond to at least one of the rows constituting the parity check matrix. It may mean a linear operation for some. Also, according to an embodiment, a parity check matrix may be generated based on additional column permutation in consideration of bit-channel reliability, and zero padding may be performed to support various code lengths.

도 6은 본 발명의 실시예들에 따른 분산된 CRC-폴라 부호의 조기 오류 검출 용량(CRC-10)을 도시한 것이고, 도 7은 본 발명의 실시예들에 따른 분산된 CRC-폴라 부호의 조기 오류 검출 용량(CRC-16)을 도시한 것이다.6 is a diagram illustrating an early error detection capacity (CRC-10) of a distributed CRC-polar code according to embodiments of the present invention, and FIG. 7 is a diagram of a distributed CRC-polar code according to embodiments of the present invention. The early error detection capacity (CRC-16) is shown.

도 6 및 도 7에서는 본 발명의 일 실시예에 따른 방법과 아래의 [1], [2]에 따른 방법에 대하여 분산된 CRC 부호에서 처음 3개의 CRC 비트들에 대한 조기 오류 검출 능력을 비교하여 도시하였다. 여기서 CRC 생성 다항식은 g1(x)=x10+x9+x5+x4+x+ 1 및 g2(x)=x16+x12+x5+1이 고려되었다. x축은 CRC 부호의 정보 길이를 나타내고, y축은 정보 길이에 대한 각 CRC 비트 전에 나타나는 정보 비트의 수의 비율을 나타낸다. 본 발명의 일 실시예에 따른 방법의 조기 오류 검출 용량이 다른 방법들 보다 더 큰 분산된 CRC 부호를 설계할 수 있음을 확인할 수 있다.6 and 7, the early error detection capability for the first three CRC bits in the distributed CRC code is compared with the method according to an embodiment of the present invention and the method according to [1] and [2] below. shown. Here, the CRC generation polynomial is considered g 1 (x)=x 10 +x 9 +x 5 +x 4 +x+ 1 and g 2 (x)=x 16 +x 12 +x 5 +1. The x-axis represents the information length of the CRC code, and the y-axis represents the ratio of the number of information bits appearing before each CRC bit to the information length. It can be seen that a distributed CRC code having a larger early error detection capacity of the method according to an embodiment of the present invention can be designed than other methods.

[1] D. Hui, M. Breschel, and Y. Blankenship, "Interleaved CRC for polar codes," in Proc . IEEE 87th Veh . Technol . Conf . ( VTC Spring), Jun. 2018, p. 1-5.[1] D. Hui, M. Breschel, and Y. Blankenship, "Interleaved CRC for polar codes," in Proc . IEEE 87th Veh . Technol . Conf . ( VTC Spring) , Jun. 2018, p. 1-5.

[2] P. Chaki and N. Kamiya, "A novel design of CRC-concatenated polar codes," in Proc . IEEE International Conference on Communications (ICC), 2019.[2] P. Chaki and N. Kamiya, "A novel design of CRC-concatenated polar codes," in Proc . IEEE International Conference on Communications (ICC) , 2019.

이상에서 도면 및 실시예를 참조하여 설명하였지만, 본 발명의 보호범위가 상기 도면 또는 실시예에 의해 한정되는 것을 의미하지는 않으며 해당 기술 분야의 숙련된 당업자는 하기의 청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to the drawings and embodiments, it does not mean that the protection scope of the present invention is limited by the drawings or embodiments, and those skilled in the art will appreciate the spirit and scope of the present invention described in the claims below. It will be understood that various modifications and variations of the present invention can be made without departing from the scope thereof.

400: 송신기
500: 수신기
400: transmitter
500: receiver

Claims (18)

폴라 코딩을 사용하는 송신기에서 수행되는 CRC(cyclic redundancy check)-폴라 부호화 방법에 있어서,
미리 결정된 순서에 기초하여, 정보 비트들 및 CRC 부호에 기초하여 결정된 상기 정보 비트들에 대한 CRC 비트들 중 적어도 일부 비트를 인터리빙(interleaving)하는 단계; 및
상기 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화하는 단계를 포함하되,
상기 미리 결정된 순서는 상기 CRC 부호에 대한 제1 패리티 검사 행렬에 기초하여 결정되는 제2 패리티 검사 행렬에 대응되고,
상기 제2 패리티 검사 행렬의 j번째 행은
M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 상기 CRC 비트들의 개수이고, L은 자연수임 -;
상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -;
U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계; 및
j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정되는, CRC-폴라 부호화 방법.
In a cyclic redundancy check (CRC)-polar coding method performed in a transmitter using polar coding,
based on a predetermined order, interleaving at least some bits of information bits and CRC bits for the information bits determined based on a CRC code; and
polar encoding the interleaved bits based on a predetermined bit-channel index,
The predetermined order corresponds to a second parity check matrix determined based on a first parity check matrix for the CRC code,
The j-th row of the second parity check matrix is
randomly generating L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits and L is a natural number;
The L nonsingular matrix U j in U j H {:, l + 1, K + M} (j-1) 0 selecting a nonsingular matrix U j * is the minimum line weight of the line is minimum non-of- Here, H (0) is the first parity check matrix, and H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, and l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -;
performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1); and
The CRC-polar encoding method, which is determined according to the step of performing column permutation so that all non-zero components are located to the left at the last K+Ml position in the j-th row.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 미리 결정된 순서는 상기 제2 패리티 검사 행렬에 대하여 비트-채널 신뢰도에 기초한 추가적인 열 치환을 수행함으로써 결정되는 제3 패리티 검사 행렬에 대응되는, CRC-폴라 부호화 방법.
According to claim 1,
and the predetermined order corresponds to a third parity check matrix determined by performing additional column permutation based on bit-channel reliability on the second parity check matrix.
삭제delete 제1항에 있어서,
상기 L은 상기 CRC-폴라 부호화의 복잡도에 기초하여 결정되는, CRC-폴라 부호화 방법.
According to claim 1,
The L is determined based on the complexity of the CRC-polar encoding.
제1항에 있어서,
상기 제1 패리티 검사 행렬은 하기의 수학식
Figure 112021086330254-pat00023

에 따라 결정되는 표준형 패리티 검사 행렬인 - 여기서 PT는 CRC 생성 다항식 g(x)에 의해 결정되는 K×M의 행렬 P의 전치 행렬이고, IM은 M×M의 항등 행렬임 -, CRC-폴라 부호화 방법.
According to claim 1,
The first parity check matrix is expressed by the following equation
Figure 112021086330254-pat00023

The standard parity check matrix is determined by - P where T is the transpose of matrix P of K × M, which is determined by the CRC generator polynomial g (x), I M is M × M identity matrix being a -, CRC- Polar encoding method.
폴라 부호화된 비트들을 전송하는 트랜시버(transceiver); 및
적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는
미리 결정된 순서에 기초하여 정보 비트들 및 CRC 부호에 기초하여 결정된 상기 정보 비트들에 대한 CRC 비트들 중 적어도 일부 비트를 인터리빙(interleaving)하고, 그리고
상기 인터리빙된 비트들을 미리 결정된 비트-채널 인덱스에 기초하여 폴라 부호화하되,
상기 미리 결정된 순서는 상기 CRC 부호에 대한 제1 패리티 검사 행렬에 기초하여 결정되는 제2 패리티 검사 행렬에 대응되고,
상기 제2 패리티 검사 행렬의 j번째 행은
M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 상기 CRC 비트들의 개수이고, L은 자연수임 -;
상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -;
U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계; 및
j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정되는, 폴라 코딩을 사용하는 송신기.
a transceiver that transmits polar coded bits; and
at least one processor;
the at least one processor
Interleaving at least some bits of information bits based on a predetermined order and CRC bits for the information bits determined based on a CRC code, and
Polar encoding the interleaved bits based on a predetermined bit-channel index,
The predetermined order corresponds to a second parity check matrix determined based on a first parity check matrix for the CRC code,
The j-th row of the second parity check matrix is
randomly generating L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits and L is a natural number;
The L nonsingular matrix U j in U j H {:, l + 1, K + M} (j-1) 0 selecting a nonsingular matrix U j * is the minimum line weight of the line is minimum non-of- Here, H (0) is the first parity check matrix, and H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, and l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -;
performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1); and
Transmitter using polar coding, determined according to the step of performing column permutation so that all non-zero components in the last K+Ml position in the j-th row are located to the left.
폴라 디코딩을 사용하는 수신기에서 수행되는 CRC(cyclic redundancy check)-폴라 복호화 방법에 있어서,
복호에 사용할 값들과 미리 결정된 비트-채널 인덱스에 기초하여 폴라 복호화하는 단계; 및
상기 폴라 복호화에 의해 결정된 비트들의 적어도 일부 비트에 대해 미리 결정된 순서에 기초하여 정보 비트들을 식별하는 단계를 포함하되,
상기 미리 결정된 순서는 CRC 부호에 대한 제1 패리티 검사 행렬에 기초하여 결정되는 제2 패리티 검사 행렬에 대응되고,
상기 제2 패리티 검사 행렬의 j번째 행은
M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 CRC 비트들의 개수이고, L은 자연수임 -;
상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -;
U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계; 및
j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정되는, CRC-폴라 복호화 방법.
In a cyclic redundancy check (CRC)-polar decoding method performed in a receiver using polar decoding,
performing polar decoding based on values to be used for decoding and a predetermined bit-channel index; and
identifying information bits based on a predetermined order for at least some bits of bits determined by the polar decoding;
The predetermined order corresponds to a second parity check matrix determined based on the first parity check matrix for the CRC code,
The j-th row of the second parity check matrix is
randomly generating L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits and L is a natural number;
The L nonsingular matrix U j in U j H {:, l + 1, K + M} (j-1) 0 selecting a nonsingular matrix U j * is the minimum line weight of the line is minimum non-of- Here, H (0) is the first parity check matrix, and H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, and l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -;
performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1); and
The CRC-polar decoding method, which is determined according to the step of performing column substitution so that all non-zero components are located on the left at the last K+Ml position in the j-th row.
삭제delete 삭제delete 삭제delete 제10항에 있어서,
상기 미리 결정된 순서는 상기 제2 패리티 검사 행렬에 대하여 비트-채널 신뢰도에 기초한 추가적인 열 치환을 수행함으로써 결정되는 제3 패리티 검사 행렬에 대응되는, CRC-폴라 복호화 방법.
11. The method of claim 10,
The predetermined order corresponds to a third parity check matrix determined by performing additional column permutation based on bit-channel reliability on the second parity check matrix.
삭제delete 제10항에 있어서,
상기 L은 상기 CRC-폴라 복호화의 복잡도에 기초하여 결정되는, CRC-폴라 복호화 방법.
11. The method of claim 10,
The L is determined based on the complexity of the CRC-polar decoding.
제10항에 있어서,
상기 제1 패리티 검사 행렬은 하기의 수학식
Figure 112021086330254-pat00024

에 따라 결정되는 표준형 패리티 검사 행렬인 - 여기서 PT는 CRC 생성 다항식 g(x)에 의해 결정되는 K×M의 행렬 P의 전치 행렬이고, IM은 M×M의 항등 행렬임 -, CRC-폴라 복호화 방법.
11. The method of claim 10,
The first parity check matrix is expressed by the following equation
Figure 112021086330254-pat00024

The standard parity check matrix is determined by - P where T is the transpose of matrix P of K × M, which is determined by the CRC generator polynomial g (x), I M is M × M identity matrix being a -, CRC- Polar decryption method.
정보 비트들에 대응되는 신호를 수신하는 트랜시버(transceiver); 및
적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는
복호에 사용할 값들과 미리 결정된 비트-채널 인덱스에 기초하여 폴라 복호화하고, 그리고
상기 폴라 복호화에 의해 결정된 비트들의 적어도 일부 비트에 대해 미리 결정된 순서에 기초하여 상기 정보 비트들을 식별하되,
상기 미리 결정된 순서는 CRC 부호에 대한 제1 패리티 검사 행렬에 기초하여 결정되는 제2 패리티 검사 행렬에 대응되고,
상기 제2 패리티 검사 행렬의 j번째 행은
M×M의 크기를 갖는 L개의 정칙(nonsingular) 행렬 U j를 무작위로 생성하는 단계 - 여기서, M은 CRC 비트들의 개수이고, L은 자연수임 -;
상기 L개의 정칙 행렬 U j 중에서 U j H {:,l+1, K+M} (j-1)의 0이 아닌 행들의 최소 행 무게가 최소가 되는 정칙 행렬 U j *를 선택하는 단계 - 여기서, H (0)는 상기 제1 패리티 검사 행렬이고, H (j-1) 1 내지 j-1번째 행이 결정된 제2 패리티 검사 행렬이고, H {:,l+1, K+M} (j-1) -은 {l+1, l+2, …, K+M}에 속하는 열 인덱스로 구성된 H (j-1)의 부분행렬이고, l은 H (j-1)의 j-1번째 행에서 가장 우측에 있는 0이 아닌 성분의 인덱스임 -;
U j * H (j-1)의 첫 j-1개의 행들을 고정하면서 새로 구한 행이 j번째 행에 위치하도록 행 치환을 수행하는 단계; 및
j번째 행에서 마지막 K+M-l 위치에서 0이 아닌 성분들이 모두 왼쪽에 위치하도록 열 치환을 수행하는 단계에 따라 결정되는, 폴라 디코딩을 사용하는 수신기.
a transceiver for receiving a signal corresponding to the information bits; and
at least one processor;
the at least one processor
Polar decoding based on values to be used for decoding and a predetermined bit-channel index, and
Identifying the information bits based on a predetermined order for at least some bits of the bits determined by the polar decoding,
The predetermined order corresponds to a second parity check matrix determined based on the first parity check matrix for the CRC code,
The j-th row of the second parity check matrix is
randomly generating L nonsingular matrices U j having a size of M×M, where M is the number of CRC bits and L is a natural number;
The L nonsingular matrix U j in U j H {:, l + 1, K + M} (j-1) 0 selecting a nonsingular matrix U j * is the minimum line weight of the line is minimum non-of- Here, H (0) is the first parity check matrix, and H (j-1) is The 1st to j-1th rows are the determined second parity check matrices, and H {:,l+1, K+M} (j-1) - is {l+1, l+2, ... , K+M} is a submatrix of H (j-1) consisting of column indices, and l is the index of the rightmost nonzero component in the j-1th row of H (j-1) -;
performing row substitution so that the newly found row is located in the j-th row while fixing the first j-1 rows of U j * H (j-1); and
A receiver using polar decoding, determined according to the step of performing column permutation so that all non-zero components in the last K+Ml position in the j-th row are located to the left.
KR1020200091561A 2020-06-03 2020-07-23 Method for encoding and decodong using distributed crc-polar codes and apparatus for performing the same KR102334420B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20200067141 2020-06-03
KR1020200067141 2020-06-03

Publications (1)

Publication Number Publication Date
KR102334420B1 true KR102334420B1 (en) 2021-12-03

Family

ID=78866473

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200091561A KR102334420B1 (en) 2020-06-03 2020-07-23 Method for encoding and decodong using distributed crc-polar codes and apparatus for performing the same

Country Status (1)

Country Link
KR (1) KR102334420B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190013374A (en) * 2017-07-28 2019-02-11 삼성전자주식회사 APPARATUS AND METHOD FOR Polar ENCODING/DECODING IN COMMUNICATION OR BROADCASTING SYSTEM
KR20190111630A (en) * 2018-03-23 2019-10-02 삼성전자주식회사 Apparatus and method for decoding unsing cyclic redundancy check in wireless communication system
KR102111678B1 (en) * 2019-02-15 2020-05-15 전남대학교산학협력단 Polar code device using interleaver, Polar code iterative decoding device, and coding method and decoding method using the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190013374A (en) * 2017-07-28 2019-02-11 삼성전자주식회사 APPARATUS AND METHOD FOR Polar ENCODING/DECODING IN COMMUNICATION OR BROADCASTING SYSTEM
KR20190111630A (en) * 2018-03-23 2019-10-02 삼성전자주식회사 Apparatus and method for decoding unsing cyclic redundancy check in wireless communication system
KR102111678B1 (en) * 2019-02-15 2020-05-15 전남대학교산학협력단 Polar code device using interleaver, Polar code iterative decoding device, and coding method and decoding method using the same

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
D. Hui, M. Breschel, and Y. Blankenship, "Interleaved CRC for polar codes," in Proc. IEEE 87th Veh. Technol. Conf. (VTC Spring), Jun. 2018, p. 1-5.
P. Chaki and N. Kamiya, "A novel design of CRC-concatenated polar codes," in Proc. IEEE International Conference on Communications (ICC), 2019.

Similar Documents

Publication Publication Date Title
RU2595542C2 (en) Device and method for transmitting and receiving data in communication/broadcasting system
JP6817452B2 (en) Rate matching method, encoding device, and communication device
JP4194015B2 (en) Communication system and method
KR101951663B1 (en) Method and apparatus of encoding with CRC code and polar code
US7493551B2 (en) Method and device for delivering punctured code words encoded with a LDPC code
KR100984289B1 (en) Signal transmitting/receiving apparatus for supporting variable coding rate in a communication system and method thereof
CN108540141B (en) Polar code coding and decoding method and device
EP3375098B1 (en) Puncturing and shortening of polar codes
CN110546888B (en) Method and apparatus for transmission and reception using polar codes
WO2018127075A1 (en) Apparatus and methods for decoding assistant bit-based polar code construction
EP1108289A1 (en) Partitioned deinterleaver memory for map decoder
JP2008219892A (en) Method and apparatus of encoding and decoding data
CN102714504A (en) Method and apparatus for transmitting and receiving data in a communication system
US20010039636A1 (en) System and method employing a modular decoder for decoding turbo and turbo-like codes in a communications network
EP1589663A1 (en) System, apparatus and method for transmitting and receiving data coded by low density parity check code having variable coding rate
KR20120091001A (en) Method of communicating signal data in gnss using ldpc convolution codes and a system thereof
WO2018227744A1 (en) Methods and apparatus for polar encoding
EP3713096B1 (en) Method and device for decoding staircase code, and storage medium
CN109644006B (en) Apparatus and method for encoding data and decoding data
JP3794500B2 (en) Data transmission method and apparatus for encoding signals
JP4064928B2 (en) Apparatus for iterative hard decision forward error correction decoding
KR20080074858A (en) Methods and devices for decoding and encoding data
KR102334420B1 (en) Method for encoding and decodong using distributed crc-polar codes and apparatus for performing the same
JP2001285261A (en) Error correction coding-type digital transmission method
US20060107161A1 (en) Flexible rate and punctured zigzag codes

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant