KR100983282B1 - Channel Coding Method of Variable Length Information Using Block Code - Google Patents

Channel Coding Method of Variable Length Information Using Block Code Download PDF

Info

Publication number
KR100983282B1
KR100983282B1 KR1020080074681A KR20080074681A KR100983282B1 KR 100983282 B1 KR100983282 B1 KR 100983282B1 KR 1020080074681 A KR1020080074681 A KR 1020080074681A KR 20080074681 A KR20080074681 A KR 20080074681A KR 100983282 B1 KR100983282 B1 KR 100983282B1
Authority
KR
South Korea
Prior art keywords
code
matrix
generation matrix
generation
columns
Prior art date
Application number
KR1020080074681A
Other languages
Korean (ko)
Other versions
KR20090069126A (en
Inventor
노동욱
김기준
안준기
이대원
조정현
노유진
유남열
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to PCT/KR2008/007575 priority Critical patent/WO2009082146A2/en
Priority to JP2010529885A priority patent/JP5174177B2/en
Priority to CN201310145699.6A priority patent/CN103259626B/en
Priority to CN2008801226741A priority patent/CN101911498B/en
Priority to EP08022392.8A priority patent/EP2075916B1/en
Priority to US12/343,673 priority patent/US8793550B2/en
Priority to TW97150490A priority patent/TWI419478B/en
Publication of KR20090069126A publication Critical patent/KR20090069126A/en
Application granted granted Critical
Publication of KR100983282B1 publication Critical patent/KR100983282B1/en
Priority to JP2012284908A priority patent/JP5411984B2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • 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
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/618Shortening and extension of codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

블록 코드를 이용한 다양한 길이를 가진 정보의 채널 코딩 방법이 개시된다. 즉, 20개의 행(Row) 및 정보 비트 길이에 해당하는 A개의 열(Column)을 포함하는 코드 생성 행렬을 이용하여 정보 비트를 채널 코딩함에 있어서, A 길이를 가지는 정보 비트를 코드 생성 행렬의 각 열에 대응하는 20 비트 길이를 가지는 기본 시퀀스(Basis Sequence)를 이용하여 채널 코딩을 수행하며, 이때 상기 A가 10인 경우, 코드 생성 행렬의 각 기본 시퀀스는 TFCI(Transport Format Combination Indicator) 정보의 코딩에 사용된 32개의 행 및 10개의 열로 구성된 코드 행렬 중 20개의 행을 선택하였을 때 구성되는 20개의 행 및 10개의 열로 구성된 행렬의 열 방향 시퀀스에 각각 대응한다.A method of channel coding information having various lengths using a block code is disclosed. That is, in channel coding an information bit using a code generation matrix including 20 rows and A columns corresponding to the information bit length, an information bit having an A length is stored in each code generation matrix. Channel coding is performed using a base sequence having a 20-bit length corresponding to a column. When A is 10, each base sequence of the code generation matrix is used for coding of transport format combination indicator (TFCI) information. Corresponding to the column-wise sequence of the matrix consisting of 20 rows and 10 columns, when 20 rows are selected from the 32 matrix and 10 column code matrices used.

Channel Coding, TFCI , PUCCH Channel Coding, TFCI, PUCCH

Description

블록 코드를 이용한 다양한 길이를 가진 정보의 채널 코딩 방법 {Channel Coding Method of Variable Length Information Using Block Code}Channel Coding Method of Variable Length Information Using Block Code

이하의 설명은 이동통신 시스템의 부호화 방법에 대한 것으로서, 구체적으로 블록 코드(Block Code)를 이용하여 다양한 길이를 가지는 정보에 효율적으로 채널 코딩을 수행하는 방법에 대한 것이다.The following description relates to a coding method of a mobile communication system, and more particularly, to a method of efficiently performing channel coding on information having various lengths using a block code.

이하에서는 먼저 기본적인 부호화(또는 코딩) 이론들 중에서 본 발명의 설명을 위해 필요한 내용에 관해서 살펴 보도록 한다.Hereinafter, a description will be given of contents necessary for explanation of the present invention among basic encoding (or coding) theories.

일반적인 이진 오류정정코드(error correction code)를 [n, k, d]라고 표시하면, n은 부호화된 부호어(符號語, codeword)의 비트 수, k는 부호화 이전의 정보 비트수, d는 부호어들 간의 거리 중 최소값을 의미한다. 여기서 고려하는 것은 이진 부호이므로, 부호어의 부호길이는 2n이고, 부호화된 부호어의 총 개수는 2k가 된다. 또한, 편의상 최소거리가 내용상 크게 중요하지 않은 경우는 [n, k] 부호라고 표시하기도 한다. 본 설명에서는 특별한 언급이 없는 한 n, k 그리고 d가 나타내는 값은 상술한 내용으로 고정하기로 한다.If a typical binary error correction code is expressed as [n, k, d], n is the number of bits of the codeword, k is the number of bits of information before encoding, and d is the code. It means the minimum of the distance between fish. Since the binary code is considered here, the code length of the codeword is 2n, and the total number of coded codewords is 2k . In addition, when the minimum distance is not important for the sake of convenience, it may be indicated by the [n, k] code. In this description, unless otherwise indicated, values indicated by n, k, and d will be fixed to the above descriptions.

이때, 이하의 설명에 있어서 X개의 행 및 Y개의 열로 구성되는 행렬 형태의 블록 코드를 (X, Y)로 표시하는 경우와 혼동하지 말아야 한다.At this time, in the following description, it should not be confused with a case in which a block code of a matrix form consisting of X rows and Y columns is represented by (X, Y).

한편 부호율 R은 정보비트 수를 부호어의 비트 수로 나눈 값으로 정의된다. 즉, R=k/n으로 정의된다.The code rate R is defined as a value obtained by dividing the number of information bits by the number of bits of the codeword. That is, R = k / n is defined.

이하 해밍 거리(Hamming distance)에 대해 설명한다.Hamming distance will be described below.

해밍 거리는 같은 비트 수를 갖는 2진 부호 사이에 대응되는 비트 값이 일치하지 않는 것의 개수를 의미한다. 일반적으로 해밍 거리 d가 d=2a+1이면 a개의 오류를 정정할 수 있다. 예를 들어 두 개의 부호어가 101011와 110010이라면, 두 부호어의 해밍 거리는 3이다.The hamming distance means the number of bits whose corresponding bit values do not coincide between binary codes having the same number of bits. In general, if the hamming distance d is d = 2a + 1, a error can be corrected. For example, if two codewords are 101011 and 110010, the Hamming distance of the two codewords is three.

한편, 부호화 이론에 있어서 최소거리(minimum distance)는 부호에 속하는 임의의 두 부호어 사이의 거리의 최소값을 의미한다. 이와 같은 최소 거리는 부호의 좋은 정도를 가리키는 중요한 평가량의 하나이며, 거리로는 상술한 해밍 거리가 쓰일 때가 많다. 부호화 과정을 거쳐 생성된 부호어들 간의 거리가 멀수록 해당 부호어가 다른 부호어로 판단될 확률이 낮아지므로, 부호화 성능이 좋아지게 된다. 또한, 전체 부호의 성능은 가장 나쁜 성능을 갖는 부호어들간의 거리 즉, 부호어들 중에서 최소 거리에 의해 부호의 성능이 평가된다. 결국, 정리하면 좋은 부호는 최소 거리가 최대화된 부호가 좋은 성능을 보이게 된다.In the encoding theory, a minimum distance means a minimum value of a distance between two arbitrary code words belonging to a code. Such a minimum distance is one of important evaluation amounts indicating a good degree of sign, and the hamming distance described above is often used as the distance. As the distance between the codewords generated through the encoding process increases, the probability that the corresponding codeword is determined to be different codewords decreases, so that the encoding performance is improved. In addition, the performance of the entire code is evaluated by the distance between the code words having the worst performance, that is, the minimum distance among the code words. In the end, a good sign is that the sign with the maximum minimum distance shows good performance.

차세대 이동통신 시스템에서 제어 정보는 시스템의 구성 및 전송 채널의 정보 등을 전송함으로써 시스템의 성능을 결정하는 매우 중요한 정보이다. 이러한 제어 정보는 시스템의 자원을 되도록 적게 사용하기 위해 짧은 길이로 구성되며, 채 널 오류에 강인한 우수한 부호화 기법을 이용하여 부호화된 후 전송된다. 일례로, 3GPP 이동통신 시스템에서 제어 정보를 위한 부호화 기법으로는 RM (Reed-Muller) 부호에 기반한 짧은 길이의 블록 부호, 테일 비트 컨벌루셔널(tail-biting convolutional) 부호, 심플렉스(simplex) 부호의 반복 부호 등이 고려되고 있다.Control information in the next generation mobile communication system is very important information for determining the performance of the system by transmitting the system configuration and transmission channel information. This control information is composed of short lengths in order to use as few resources of the system as possible, and is transmitted after being encoded using an excellent coding scheme that is robust against channel errors. For example, coding schemes for control information in 3GPP mobile communication systems include short-length block codes, tail-biting convolutional codes, and simplex codes based on Reed-Muller (RM) codes. Is considered.

한편 상술한 3GPP 이동통신 시스템의 진보 형태인 3GPP LTE 시스템에서 제어 정보는 블록 코드(Block Code)를 이용한 부호화를 거쳐 전송되는 것이 논의되고 있다. 구체적으로 전송되는 정보 비트의 길이가 A라 할 경우, 20개의 행과 A개의 열로 구성되는 블록 코드(또는 (20, A) 블록 코드)를 이용하여 전송되는 것이 논의되고 있다.Meanwhile, in the 3GPP LTE system, which is an advanced form of the 3GPP mobile communication system, it is discussed that control information is transmitted through encoding using a block code. Specifically, when the length of the information bits to be transmitted is A, it is discussed using a block code (or (20, A) block code) consisting of 20 rows and A columns.

다만, (20, A)의 형태를 가지는 블록 코드에는 수많은 형태가 가능하며, 각각의 블록 코드 모두에 대해 다양한 길이를 가지는 정보 비트의 부호화 성능을 각각 확인하여 최적의 형태를 찾는 것은 쉬운 일이 아니다.However, many forms are possible for a block code having a form of (20, A), and it is not easy to find an optimal form by checking the encoding performance of information bits having various lengths for each block code. .

상술한 바와 같은 문제를 해결하기 위해 본 발명의 일 측면에서는 다양한 길이를 갖는 정보의 효율적인 (20, A) 블록 부호화 방법을 제안한다. 즉, 정보 비트의 길이가 다양하게 변하고, 부호화된 부호어의 비트 길이도 다양하게 변하는 상황에서, 상술한 바와 같이 다양한 비트 길의 조합을 효과적으로 지원하는 (20, A) 블록 부호화 방법을 제안하고자 한다.In order to solve the above problems, an aspect of the present invention proposes an efficient (20, A) block encoding method of information having various lengths. That is, in the situation where the length of the information bits varies and the bit length of the coded codewords varies, the (20, A) block coding method that effectively supports various combinations of bit lengths as described above is proposed. .

한편, 실제 사용되는 부호화 비트 수는 20 이하일 수 있으며, 정보 비트수도 다양하게 변경될 수 있다. 따라서, 본 발명의 다른 일 측면에서는 큰 길이의 정보 비트/부호화 비트 수에 대해 제안된 블록 부호에서 필요한 만큼 일부분만을 효율적으로 사용하는 방법을 제안한다.Meanwhile, the number of encoded bits actually used may be 20 or less, and the number of information bits may also be variously changed. Accordingly, another aspect of the present invention proposes a method of efficiently using only a part of the proposed block code as needed for a large number of information bits / encoded bits.

상술한 바와 같은 과제를 해결하기 위한 본 발명의 일 실시형태에서는, 20개의 행(Row) 및 정보 비트 길이에 해당하는 A개의 열(Column)을 포함하는 코드 생성 행렬을 이용하여 상기 정보 비트를 채널 코딩하는 방법을 제안한다. 본 방법은 상기 A 길이를 가지는 정보 비트를 상기 코드 생성 행렬의 각 열에 대응하는 20 비트 길이를 가지는 기본 시퀀스(Basis Sequence)를 이용하여 채널 코딩을 수행하는 단계를 포함하며, 상기 A가 10인 경우, 상기 코드 생성 행렬의 각 기본 시퀀스는 3GPP Release 99 시스템에서 TFCI(Transport Format Combination Indicator) 정보의 코딩에 사용된 32개의 행 및 10개의 열로 구성된 코드 행렬 중 20개의 행을 선택하였을 때 구성되는 20개의 행 및 10개의 열로 구성된 제 1 행렬의 열 방향 시퀀스에 각각 대응하는 것을 특징으로 한다. (단, 상기 32개의 행 및 10개의 열로 구성된 코드 행렬은 첫 번째 행부터 32번째 행을 포함함)In an embodiment of the present invention for solving the above-described problems, the information bits are channeled using a code generation matrix including A rows corresponding to 20 rows and information bit lengths. Suggest a way to code. The method includes performing channel coding on the information bits having the length A using a basic sequence having a length of 20 bits corresponding to each column of the code generation matrix, wherein A is 10. Each of the basic sequences of the code generation matrix is configured when 20 rows of the code matrix consisting of 32 rows and 10 columns used for coding TFCI (Transport Format Combination Indicator) information in 3GPP Release 99 system are selected. Corresponding to the column direction sequence of the first matrix consisting of rows and ten columns, respectively. (The code matrix of 32 rows and 10 columns includes the first row to the 32nd row.)

이때, 상기 제 1 행렬은, 상기 TFCI 정보 코딩에 사용된 행렬 중 2, 5, 8, 11, 15, 16, 21, 22, 25, 29, 30 및 31번째 행을 제외한 20개의 행을 선택하여 구성되는 제 2 행렬, 또는 상기 제 2 행렬의 하나 이상의 행들 사이 및 하나 이상의 열들 사이 중 하나 이상에 대해 서로 순서가 바뀐 제 3 행렬일 수 있다.In this case, the first matrix selects 20 rows except 2, 5, 8, 11, 15, 16, 21, 22, 25, 29, 30, and 31th rows of the matrix used for coding the TFCI information. It may be a second matrix constructed, or a third matrix that is ordered with respect to one or more of one or more rows and between one or more columns of the second matrix.

한편, 상기 A가 10보다 큰 경우 상기 코드 생성 행렬의 각 기본 시퀀스는, 상기 제 1 행렬, 제 2 행렬 및 제 3 행렬 중 어느 하나에, 최소 해밍 거리의 최대값이 4를 만족하며 길이가 20인 추가 기본 시퀀스들 중 A-10 길이에 해당하는 개수의 기본 시퀀스를 열 방향 시퀀스로서 추가한 제 4 행렬의 열 방향 시퀀스에 각각 대응할 수 있다. 즉, 상기 A가 10보다 큰 경우 상기 코드 생성 행렬의 각 기본 시퀀스는, 상기 제 1 행렬, 제 2 행렬 및 제 3 행렬 중 어느 하나에, "0"을 4개 포함하는 길이 20인 추가 기본 시퀀스들 중 A-10 길이에 해당하는 개수의 기본 시퀀스를 열 방향 시퀀스로서 추가한 제 4 행렬의 열 방향 시퀀스에 각각 대응할 수 있다. 이때, 상기추가 기본 시퀀스들은,On the other hand, when A is greater than 10, each basic sequence of the code generation matrix may have a maximum Hamming distance of 4 and a length of 20 in any one of the first matrix, the second matrix, and the third matrix. Each of the additional base sequences may correspond to the column direction sequence of the fourth matrix in which the number of base sequences corresponding to the length A-10 is added as the column direction sequence. That is, when A is greater than 10, each basic sequence of the code generation matrix is an additional basic sequence having a length of 20 including four “0s” in any one of the first matrix, the second matrix, and the third matrix. Among them, each column may correspond to a column direction sequence of the fourth matrix in which the base sequence corresponding to the length A-10 is added as the column direction sequence. In this case, the additional basic sequence,

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0],[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0],

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0],[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0],

[0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0], 및[0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0], and

[0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1][0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

중 하나 이상을 포함할 수 있다.It may include one or more of.

또한, 상기 A가 14 이하인 경우, 상기 코드 생성 행렬의 각 기본 시퀀스에는, In addition, when A is 14 or less, in each basic sequence of the code generation matrix,

Figure 112008503929415-pat00001
Figure 112008503929415-pat00001

와 같은 제 5 행렬의 열 방향 시퀀스들 중 좌측으로부터 상기 A 길이에 해당하는 개수의 열 방향 시퀀스가 순차적으로 대응하는 것일 수 있으며, 상기 A는 13 이하인 경우, 상기 코드 생성 행렬의 각 기본 시퀀스에는,Among the column sequences of the fifth matrix, such as, the number of column sequences corresponding to the length A may sequentially correspond to each other. When A is 13 or less, each basic sequence of the code generation matrix may include:

Figure 112008503929415-pat00002
Figure 112008503929415-pat00002

Figure 112008503929415-pat00003
Figure 112008503929415-pat00003

와 같은 제 6 행렬의 열 방향 시퀀스들 중 좌측으로부터 상기 A 길이에 해당하는 개수의 열 방향 시퀀스가 순차적으로 대응할 수도 있다.A column direction sequence corresponding to the length A may be sequentially corresponded from the left side among column direction sequences of the sixth matrix.

한편, 상술한 바와 같은 과제를 해결하기 위한 본 발명의 좀더 직접적인 일 실시형태에서는 20개의 행(Row) 및 정보 비트 길이에 해당하는 A개의 열(Column)을 포함하는 코드 생성 행렬을 이용하여 상기 정보 비트를 채널 코딩하는 방법에 있어서, 상기 A 길이를 가지는 정보 비트를 상기 코드 생성 행렬의 각 열에 대응하는 20 비트 길이를 가지는 기본 시퀀스(Basis Sequence)를 이용하여 채널 코딩을 수행하는 단계를 포함하며, 상기 A가 10인 경우, 상기 코드 생성 행렬의 열에 대응하는 각 기본 시퀀스는,Meanwhile, in a more direct embodiment of the present invention for solving the above problems, the information is generated using a code generation matrix including A rows corresponding to 20 rows and information bit lengths. A method of channel coding a bit, the method comprising: performing channel coding on an information bit having a length A using a basic sequence having a length of 20 bits corresponding to each column of the code generation matrix; When A is 10, each basic sequence corresponding to the column of the code generation matrix is

Figure 112008503929415-pat00004
Figure 112008503929415-pat00004

와 같은 제 1 행렬, 또는 상기 제 1 행렬의 하나 이상의 행들 사이 및 하나 이상의 열들 사이 중 하나 이상에 대해 서로 순서가 바뀐 제 2 행렬의 열 방향 시퀀스에 각각 대응하는 채널 코딩 방법을 제안한다.A channel coding method corresponding to a column direction sequence of a first matrix, or a second matrix, which is in turn ordered with respect to one or more of one or more rows and one or more columns of the first matrix, is provided.

이때 역시 상기 A가 10보다 큰 경우 상기 코드 생성 행렬의 각 기본 시퀀스는, In this case, when A is greater than 10, each basic sequence of the code generation matrix is

상기 제 1 행렬 또는 제 2 행렬에,In the first matrix or the second matrix,

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0],[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0],

[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0],[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0],

[0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0], 및[0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0], and

[0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1][0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]

와 같은 시퀀스 중 A-10 길이에 해당하는 개수의 시퀀스를 열 방향 시퀀스로서 추가한 제 3 행렬의 열 방향 시퀀스에 각각 대응할 수 있다.A sequence corresponding to the length of A-10 among the sequences as shown in FIG. 2 may correspond to the column direction sequence of the third matrix added as the column direction sequence.

아울러, 상기 A는 14 이하인 경우, 상기 코드 생성 행렬의 각 기본 시퀀스에는,In addition, when A is 14 or less, in each basic sequence of the code generation matrix,

Figure 112008503929415-pat00005
Figure 112008503929415-pat00005

와 같은 제 4 행렬의 열 방향 시퀀스들 중 좌측으로부터 상기 A 길이에 해당하는 개수의 열 방향 시퀀스가 순차적으로 대응할 수 있으며, 상기 A는 13 이하인 경우에, 상기 코드 생성 행렬의 각 기본 시퀀스에는,When the number of column direction sequences corresponding to the length A may sequentially correspond to each other from the left among the column direction sequences of the fourth matrix, such that A is 13 or less, for each basic sequence of the code generation matrix,

Figure 112008503929415-pat00006
Figure 112008503929415-pat00006

와 같은 제 4 행렬의 열 방향 시퀀스들 중 좌측으로부터 상기 A 길이에 해당하는 개수의 열 방향 시퀀스가 순차적으로 대응할 수 있다.A column direction sequence corresponding to the length A may be sequentially corresponded from the left side among the column direction sequences of the fourth matrix, such as.

상술한 경우들에 있어 상기 정보 비트는 채널 품질 정보 비트, 전부호화 행렬 지시자(PMI), 채널 랭크 지시자(RI) 및 ACK/NACK 중 하나 이상을 포함할 수 있으며, 채널 코딩이 수행된 상기 정보 비트는 물리 상향링크 제어 채널(PUCCH)를 통해 전송될 수 있다.In the above cases, the information bit may include one or more of channel quality information bits, precoding matrix indicators (PMIs), channel rank indicators (RIs), and ACK / NACK, and the information bits on which channel coding is performed. May be transmitted through a physical uplink control channel (PUCCH).

상술한 바와 같은 본 발명의 각 실시형태에 따르면, 기존에 3GPP 시스템에서 TFCI 정보 코딩에 사용되었던 코드를 재사용하여, 손쉽게 (20, k) 블록 코딩을 구현할 수 있으며, 이에 의해 생성되는 부호어들간에 최대최소거리를 증가시켜 성능을 향상시킬 수 있다.According to each embodiment of the present invention as described above, it is possible to easily implement (20, k) block coding by reusing the code that has been used for coding TFCI information in the 3GPP system, and between codewords generated thereby. Increasing the maximum minimum distance can improve performance.

이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 예를 들어, 이하의 설명은 이해를 돕기 위해 상술한 3GPP LTE (3rd Generation Partnership Project Long Term Evolution) 시스템에 적용되는 구체적인 예를 들어 설명하나, 본 발명은 3GPP LTE 시스템뿐만 아니라 일반적으로 다양한 길이를 가지는 제어 정보를 블록 코드를 이용하여 채널 코딩을 수행할 필요가 있는 임의의 통신 시스템에 적용될 수 있다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The following detailed description, together with the accompanying drawings, is intended to illustrate exemplary embodiments of the invention and is not intended to represent the only embodiments in which the invention may be practiced. For example, the following description will be described with a specific example applied to the above-described 3rd Generation Partnership Project Long Term Evolution (3GPP LTE) system for clarity, but the present invention generally has various lengths as well as the 3GPP LTE system. The control information can be applied to any communication system that needs to perform channel coding using block code.

이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다. 몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시된다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다.The following detailed description includes specific details in order to provide a thorough understanding of the present invention. However, one of ordinary skill in the art appreciates that the present invention may be practiced without these specific details. In some instances, well-known structures and devices are omitted or shown in block diagram form, centering on the core functions of each structure and device, in order to avoid obscuring the concepts of the present invention. In addition, the same components will be described with the same reference numerals throughout the present specification.

상술한 바와 같이 본 발명의 일 측면에서는 다양한 길이를 갖는 정보에 효율적으로 (20, A) 블록 부호화를 수행하는 방법을 제안하고자 한다. 이를 위한 본 발명의 일 실시형태에서는 기존 시스템에서 사용되던 블록 부호의 생성행렬을 바탕으로 부호를 구성하여, 부호화 및 복호화를 줄이는 방법을 제안한다. 구체적으로, 본 실시형태에서는 큰 길이의 정보를 부호화하기 위한 생성행렬을 찾는 과정에서, 특정 조건을 첨가하여 찾음으로써, 좀더 효율적이고 빠르게 큰 생성행렬을 찾는 방법을 제안한다.As described above, an aspect of the present invention is to propose a method for efficiently (20, A) block coding on information having various lengths. An embodiment of the present invention proposes a method for reducing encoding and decoding by constructing a code based on a generation matrix of a block code used in an existing system. Specifically, the present embodiment proposes a method for finding a large generation matrix more efficiently and quickly by searching for a generation matrix for encoding a large length of information by adding a specific condition.

한편, 상술한 바와 같이 본 발명의 다른 일 측면에서는 큰 길이의 정보 비트/부호화 비트 수에 대해 제안된 블록 부호에서 필요한 만큼 일부분만을 효율적으로 사용하는 방법을 제안하고자 한다. 이를 위해 본 발명의 일 실시형태에서는 다양한 길이를 가지는 정보를 블록 부호화하는데 있어서, 각각의 길이에 해당하는 생성행렬을 최대한 공통으로 구현함으로써, 효율적인 부호화를 수행하는 것을 제안한다. 즉, 본 실시형태에서는 최대 정보양의 길이에 맞추어서 생성된 큰 생성행렬을 바탕으로 하여서, 상기 최대 길이보다 작거나 같은 길이의 정보를 부호화하기 위한 생성행렬을 구성함으로써, 각각의 정보 길이를 위한 생성행렬들 간의 공통점을 최대한으로 유지하는 방법을 제안한다.On the other hand, as described above, another aspect of the present invention is to propose a method for efficiently using only a part of the proposed block code as needed for a large number of information bits / encoded bits. To this end, in one embodiment of the present invention, in block encoding information having various lengths, it is proposed to efficiently perform encoding by generating a generation matrix corresponding to each length in common. That is, in the present embodiment, a generation matrix for encoding information having a length less than or equal to the maximum length is constructed based on a large generation matrix generated according to the length of the maximum information amount, thereby generating for each information length. We propose a method to keep the commonalities between the matrices as much as possible.

이를 위해 좀더 구체적인 첫 번째 방법으로는, 상기 최대 길이보다 작거나 같은 각각의 정보 양에 맞추어서, 개별적으로 최적화하여 생성행렬을 구성하는 것도 가능하다. 또 다른 두 번째 방법으로는, 상기 최대 길이보다 작거나 같은 정보 길이를 부호화하기 위한 생성행렬을 구성하는데 있어서, 큰 길이의 정보를 위한 생 성행렬은 작은 길이의 정보를 위한 생성행렬을 반드시 포함하도록 하는 포함 구조(nested structure)로 생성행렬을 구성하는 것도 가능하다. 세 번째로는, 정보 길이 각각에 대하여 최적화된 생성행렬 구성 시에도 최대한 포함구조가 되도록 변형하는 방법을 포함하는 복합구조(Hybrid structure)로 구성하는 것이 가능하다.In order to do this, a more specific first method may be used to construct a generation matrix by individually optimizing the amount of information smaller than or equal to the maximum length. In another second method, in constructing a generation matrix for encoding an information length less than or equal to the maximum length, the generation matrix for the large length information must include the generation matrix for the small length information. It is also possible to construct a generation matrix with nested structures. Third, it is possible to construct a hybrid structure including a method of transforming the information matrix so that it can be included as much as possible even when constructing an optimized generation matrix for each information length.

이하에서는 상술한 바와 같은 본 발명의 일 측면을 다음과 같은 과정에 따라 (20, A) 블록 부호를 최종적으로 (20, 14) 블록 부호까지 마련하고, 이를 이용하여 A길이를 가지는 정보에 대해 채널 코딩을 수행하는 방법을 설명하기로 한다.Hereinafter, according to an aspect of the present invention as described above, the (20, A) block code is finally provided up to the (20, 14) block code according to the following process, and the channel for the information having the length A using the same A method of performing coding will be described.

첫 번째 과정으로서는 기존의 3GPP에서 사용되던 TFCI (Transport Format Combination Indicator) 정보의 코딩에 사용된 (32,10) 부호로부터 (20,10) 부호를 생성하는 방법을 살펴본다.As a first process, a method of generating a (20,10) code from a (32,10) code used for coding TFCI (Transport Format Combination Indicator) information used in the existing 3GPP will be described.

두 번째 과정으로서는 정보 비트의 길이가 10 비트 이상인 경우에 대비하여 상술한 바와 같은 (20, 10) 부호에 정보 비트 수에 따라 기본 시퀀스(Basis Sequence)를 추가하여 최대 (20,14) 부호까지 생성하는 경우를 살펴본다.In the second process, in case the information bit is 10 bits or more in length, the base sequence (Basis Sequence) is added to the (20, 10) code as described above to generate the maximum (20,14) code. Look at the case.

세 번째 과정으로서는 상술한 바와 같은 (20,14) 부호를 수정하여 성능을 개선하는 방법에 대해 살펴본다.As a third process, a method of improving performance by modifying the (20, 14) code as described above will be described.

한편, 상술한 과정에 따라 생성된 (20, 14) 부호를 기반하여 18 비트, 16 비트 길이의 부호어를 생성할 수 있는 블록 부호화 방법에 대해 본 발명의 다른 일 측면으로서 후술한다.Meanwhile, a block encoding method for generating an 18-bit or 16-bit codeword based on the (20, 14) code generated according to the above-described process will be described later as another aspect of the present invention.

본 발명은 3GPP LTE 시스템에서 채널품질지자(CQI) 정보를 물리상향링크 제어 채널(PUCCH)을 통해 전송하는 경우에 수행되는 채널 코딩에 적용되기에 적합하 다. 다만, 본 발명의 적용 범위를 이에 한정할 필요는 없으며, 다양한 길이를 가지는 제어 정보의 채널 코딩이 필요한 다양한 시스템에 적용될 수 있다.The present invention is suitable to be applied to channel coding performed when transmitting channel quality indicator (CQI) information through a physical uplink control channel (PUCCH) in a 3GPP LTE system. However, the scope of application of the present invention need not be limited thereto, and the present invention may be applied to various systems requiring channel coding of control information having various lengths.

1. 제 1 측면 - (20, A) 블록 코딩1.First Aspect-(20, A) Block Coding

(1) 제 1 단계 - (20, 10) 블록 코드 생성(1) Step 1-(20, 10) block code generation

본 실시형태에서는 차세대 이동통신 시스템에서 사용되는 PRM(Punctured Reed-Muller 부호) 부호의 생성행렬을 제안한다. 본 부호에 사용되는 생성행렬은 3GPP Rel' 99에서 TFCI(Transport Format Combination Indicator) 정보의 채널코딩에 사용되었던 (32,10) 부호의 생성행렬을 기반으로 하여, 부호화되는 부호어의 길이에 따라 천공(Puncturing)이 된 형태를 가지도록 설계하는 것을 제안한다.In this embodiment, a generation matrix of a PRM (Punctured Reed-Muller code) code used in a next generation mobile communication system is proposed. The generation matrix used for this code is punctured according to the length of the codeword to be coded based on the generation matrix of the (32,10) code used for channel coding of TFCI (Transport Format Combination Indicator) information in 3GPP Rel'99. It is proposed to design to have the form of (Puncturing).

이러한 (32,10) TFCI 정보 코드의 재사용은 여러 가지 장점을 갖는다. 첫째로, TFCI 정보 코드 자체가 Reed-Muller 부호를 기초로 하여 설계 되었으므로, 천공된 TFCI 부호도 변형된 Reed-Muller부호 구조를 갖는다. 이러한 Reed-Muller 기반의 부호는 복호과정에서 빠른 하다마드 변환(Fast Hadamard Transform)과 같은 방법을 사용하여 빠른 복호가 가능한 장점이 있다. 두 번째로, TFCI 부호화 방식은 다양한 길이의 정보비트와 부호화 비트를 지원한다. 이렇게 정보 비트의 길이나 부호화 비트의 길이가 다양하게 변화 가능하므로, 현재 3GPP LTE의 CQI 전송을 위한 요구사항을 잘 만족하게 된다.The reuse of this (32,10) TFCI information code has several advantages. First, since the TFCI information code itself is designed based on the Reed-Muller code, the perforated TFCI code also has a modified Reed-Muller code structure. This Reed-Muller-based code has the advantage of being capable of fast decoding using a method such as the fast Hadamard transform in the decoding process. Secondly, the TFCI encoding scheme supports information bits and encoding bits of various lengths. Since the length of the information bit or the length of the coding bit can be variously changed, the requirements for CQI transmission of 3GPP LTE are well satisfied.

아래 표 1은 3GPP Rel' 99에서 TFCI 정보 채널코딩에 사용되었던 길이가 32 비트이고 d min=12인 부호어를 생성하는 (32,10) 부호의 생성행렬을 나타낸다.Table 1 below shows a generation matrix of a (32, 10) code that generates a codeword having a length of 32 bits and a d min = 12 used for TFCI information channel coding in 3GPP Rel '99.

[표 1]TABLE 1

Figure 112008503929415-pat00007
Figure 112008503929415-pat00007

Figure 112008503929415-pat00008
Figure 112008503929415-pat00008

이하에서는 상기 표 1과 같은 (32, 10) 블록 코드를 TFCI 정보 코드 또는 TFCI 정보 코딩용 블록 코드로 지칭한다.Hereinafter, the (32, 10) block codes shown in Table 1 are referred to as TFCI information codes or block codes for TFCI information coding.

일반적으로 블록 코드에 있어서 행 서로간 또는 열 서로간에 위치를 교환하더라도 생성되는 부호어에 성능 차이가 없는 것으로 알려져 있다. 이와 같은 점을 이용하여 이하 표 2는 상술한 TFCI 정보 코딩에 이용된 (32, 10) 블록 코드와 등가인 블록 코드를 나타낸다.In general, even in a block code, even if the positions are exchanged between rows or columns, there is no known performance difference in the generated codewords. Using this point, Table 2 below shows a block code equivalent to the (32, 10) block code used for the above-described TFCI information coding.

[표 2]TABLE 2

Figure 112008503929415-pat00009
Figure 112008503929415-pat00009

상기 표 2에 표시된 블록 코드는 상기 TFCI 코딩에 이용된 (32, 10) 코드의 행과 열의 위치가 변경되었으며, 몇몇 개의 열(표 1의 TFCI 정보 코드를 기준으로는 행)간에 서로 위치가 바뀌어 있는 형태를 나타내고 있다.In the block codes shown in Table 2, the positions of the rows and columns of the (32, 10) codes used for the TFCI coding are changed, and the positions of the blocks are changed between several columns (rows based on the TFCI information codes of Table 1). It shows the form that there is.

즉, 본 실시형태에서는 상술한 바와 같이 (32, 10)의 형태를 가지는 TFCI 정보코드(표 1) 또는 이의 등가 형태 행렬(표 2) 중 12개의 행(표 2의 블록 코드 관점에서는 열)을 천공하거나, 20개의 행(표 2의 블록 코드 관점에서는 열)을 선택하 여 (20, 10) 블록 코드를 구성하는 것을 제안한다. 상기 표 1을 이용하는 경우와 상기 표 2를 이용하는 경우 모드 성능에 차이가 없는 바, 이하에서는 설명의 편의를 위해 특별한 표기가 없는 한 상기 표 2와 같은 TFCI 정보 코드의 등가 형태를 이용하는 것을 가정한다.That is, in the present embodiment, as described above, 12 rows (columns from the block code point of view) of the TFCI information code (Table 1) or its equivalent form matrix (Table 2) having the form of (32, 10) are selected. It is suggested to construct a (20, 10) block code by drilling or selecting 20 rows (column from the block code perspective of Table 2). Since there is no difference in mode performance when using Table 1 and Table 2, it is assumed below that an equivalent form of the TFCI information code shown in Table 2 is used unless otherwise indicated for convenience of description.

한편, 상기 TFCI 정보 부호화에 사용된 (32,10) 부호는 Reed-Muller(RM) 부호를 기반으로 생성되었다. 이 때, 오류 정정 성능을 위해 부호어의 최소거리( d min )가 최대가 되는 천공 패턴을 찾는 것이 중요하다.Meanwhile, the (32,10) code used for the TFCI information encoding is generated based on the Reed-Muller (RM) code. At this time, it is important to find a puncturing pattern in which the minimum distance d min of the codeword is maximum for error correction performance.

우선 본 실시형태와의 대비를 위해, TFCI 부호화에 사용된 (32,10) 부호의 생성행렬에 대해 최적의 천공패턴을 찾는 전수탐색(全數 探索; 전수탐색)을 수행하는 경우에 대해 알아보자. 32*10 행렬에서 천공되어야 할 생성행렬의 열(Column)의 개수를 p이라고 할 때, 모든 가능한 천공 패턴의 가지 수는

Figure 112008503929415-pat00097
이다.First of all, in contrast to the present embodiment, a case in which a full search is performed to find an optimal puncturing pattern for a generation matrix of (32, 10) codes used in TFCI encoding will be described. When p is the number of columns of the generation matrix to be punctured in the 32 * 10 matrix, the number of branches of all possible puncturing patterns is
Figure 112008503929415-pat00097
to be.

여기서

Figure 112008503929415-pat00098
는 32개 중 p개를 선택하는 경우의 수를 나타낸다.here
Figure 112008503929415-pat00098
Represents the number of cases where p of 32 is selected.

일례로 p = 12인 경우,

Figure 112008503929415-pat00099
=225,792,840 개의 서로 다른 10*20 생성행렬이 존재하며, 상기 각각의 생성행렬당 이용하여 10 비트로 구성 가능한 210=1,024개의 정보가 20 비트의 부호어로 부호화한다. 상기 각각의 생성행렬로부터 생성되는 부호어들 간의 최소 해밍거리( d min )을 계산하여, 상기 최소 해밍거리 중에서 가장 큰 값을 가지는 생성행렬을 찾는다. 상기 최대 d min 을 갖는 생성행렬을 만들기 위 해 사용된 천공 패턴이 최종적으로 찾고자 하는 패턴이다. 이를 단계별로 자세히 정리하면 다음과 같다.For example, if p = 12,
Figure 112008503929415-pat00099
There are 225,792,840 different 10 * 20 generation matrices, and 2 10 = 1,024 pieces of information configurable to 10 bits using each of the generation matrices are encoded into a 20 bit codeword. The minimum Hamming distance d min between the codewords generated from the respective generation matrices is calculated to find a generation matrix having the largest value among the minimum Hamming distances. The perforation pattern used to create the generation matrix having the maximum d min is the pattern to be finally found. This is summarized in detail as follows.

단계 1(Step1): 32*10 행렬에서 임의의 12개의 열을 천공한 Step 1: Perforated 12 random columns in a 32 * 10 matrix

Figure 112008503929415-pat00100
=225,792,840개의 20*10 생성행렬을 구성한다.
Figure 112008503929415-pat00100
Construct 225,792,840 20 * 10 generation matrices.

단계 2(Step2): 상술한 225,792,840개의 생성행렬 각각으로부터 각각 210=1,024개의 정보를 입력한 1,024개의 부호어를 생성하고, 상기 부호어들 간의 최소 해밍거리를 계산한다. Step 2: From the 225,792,840 generation matrices described above, 1,024 codewords having 2 10 = 1,024 information are generated, respectively, and a minimum hamming distance between the codewords is calculated.

단계 3(Step3): 상술한 바와 같은 부호어들간의 최소 해밍거리 중에서 최대값을 보이는 생성행렬을 통해 원하는 천공패턴을 찾는다. Step 3: A desired puncturing pattern is found through a generation matrix showing a maximum value among the minimum hamming distances between the codewords as described above.

다만, 상술한 바와 같은 과정을 통한 최적의 (20, 10) 블록 코드의 생성은 너무나 많은 연산이 필요하여 바람직하지 않다.However, the generation of the optimal (20, 10) block code through the process described above is not preferable because it requires too many operations.

따라서, 본 실시형태에서는 상술한 바와 같은 천공 패턴을 정하는데 있어서 특정 제약 조건을 가하여, 최적의 d min 을 획득하기 위한 탐색 공간 (searching space)의 범위를 줄이는 방법을 제안하고자 한다.Accordingly, the present embodiment proposes a method of reducing the range of the search space for obtaining an optimal d min by applying specific constraints in determining the puncturing pattern as described above.

이제 본 실시형태에 따라 d min =d 를 갖는 부호어를 생성하는 (20,10) 부호의 생성행렬을 보다 효율적으로 찾는 방식에 대해 생각해 보자. 목표(Target) d mind라고 하면, (20,10)부호의 생성행렬의 각 행 벡터(row vector) g 10by20 [i](1≤ i ≤10)의 해밍 무게(Hamming weight) w(g 10by20[i])는 다음과 같은 필요조건을 갖는다.Now consider a method of more efficiently finding the generation matrix of the (20,10) code that generates the codeword with d min = d according to the present embodiment. Target (Target) d min for Speaking d, (20,10), each row vector of the matrix of the generated code (row vector) g 10by20 [i ] of the Hamming weight (1≤ i ≤10) (Hamming weight ) w (g 10by20 [ i ]) has the following requirements:

[수학식 1][Equation 1]

Figure 112008503929415-pat00010
Figure 112008503929415-pat00010

일례로, d=6 인 경우, 상기 수학식 1은 다음과 같이 나타낼 수 있다.For example, when d = 6, Equation 1 may be expressed as follows.

[수학식 2][Equation 2]

Figure 112008503929415-pat00011
Figure 112008503929415-pat00011

따라서, 본 실시형태에서는 상술한 전수 탐색 과정의 단계 1에서 생성되는 10*20 행렬의 각 행 벡터 g 10by20 [i]들이 상기 수학식 2 의 제약을 갖도록 추가하면Therefore, in the present embodiment, if each row vector g 10by20 [ i ] of the 10 * 20 matrix generated in step 1 of the above-described whole search process is added to have the constraint of Equation 2 above,

d min = 6 인 부호어를 생성하는 생성행렬을 찾기 위한 탐색 공간의 수 ( N <<

Figure 112008503929415-pat00101
)를 감소시킬 수 있다. 일반적으로 문헌에 의하면, (20,10) 부호의 최대 d min은 6임이 알려져 있다. 이에 대한 구체적인 사항은 "The Theory of Error-Correcting Codes (by F.J. MacWilliams and N.J.A. Sloane)를 참조할 수 있다. 따라서, 본 실시형태에서는 상기 수학식 1의 조건에 d min = 6의 조건을 적용하여 이에 기반하여 다음과 같은 방식으로 (20, 10) 코드를 생성하는 것을 제안한다.The number of search spaces to find the generation matrix for generating codewords with d min = 6 ( N <<
Figure 112008503929415-pat00101
) Can be reduced. In general, it is known that the maximum d min of the sign (20,10) is six. For details, refer to "The Theory of Error-Correcting Codes (by FJ MacWilliams and NJA Sloane). Therefore, in the present embodiment, the condition of d min = 6 is applied to the condition of Equation 1 above. Based on this, we propose to generate (20, 10) code in the following way.

도 1은 본 발명의 일 실시형태에 따라 (32, 10) TFCI 정보 코드로부터 효율적으로 (20, 10) 블록 코드를 생성하는 방법을 설명하기 위한 도면이다.1 is a diagram for explaining a method for efficiently generating a (20, 10) block code from a (32, 10) TFCI information code according to an embodiment of the present invention.

구체적으로 단계 S101에서는 (32, 10) 구조를 가지는 TFCI 정보 코드로부터 (20,10) 블록 코드를 임의로 생성한다. 그 후, 단계 S102에서는 바로 각 행에 대응 하는 기본 시퀀스의 가중치가 상기 수학식 2의 조건을 만족시키는지 여부를 판정한다. 이때, 상기 수학식 2의 조건을 만족하지 못한다면 바로 단계 S101로 복귀하며, 상기 수학식 2의 조건을 만족하는 경우에 한하여 단계 S103으로 진행한다. 단계 S103에서는 생성된 (20, 10) 코드를 이용하여 1,024개의 부호어를 생성한다. 이와 같이 생성된 1,024개의 부호어는 단계 S104에서 d min = 6 조건을 만족하는지 여부를 판정하게 된다. 이때, d min = 6 조건을 만족하지 못하는 경우 다시 단계 S101로 복귀하며, d min = 6 조건을 만족하는 경우 단계 S105로 진행하여 가중치 분포(Weight Distribution)을 계산한다. 그 후, 단계 S106에서 최적의 가중치 분포가 아닌 것으로 판정되는 경우에는 다시 단계 S101로 복귀하며, 최적의 가중치 분포로 판정되는 경우에는 단계 S107로 진행하여 최적의 행렬 패턴의 하나로서 선택된다.Specifically, in step S101, a (20, 10) block code is arbitrarily generated from the TFCI information code having the (32, 10) structure. Then, in step S102, it is determined whether the weight of the basic sequence corresponding to each row immediately satisfies the condition of the above expression (2). In this case, if the condition of Equation 2 is not satisfied, the process returns to step S101 and the process proceeds to step S103 only when the condition of Equation 2 is satisfied. In step S103, 1,024 code words are generated using the generated (20, 10) code. The 1,024 code words generated in this way determine whether or not the condition d min = 6 is satisfied in step S104. At this time, if the d min = 6 condition is not satisfied, the process returns to step S101. If the d min = 6 condition is satisfied, the process proceeds to step S105 to calculate a weight distribution. Thereafter, if it is determined in step S106 that it is not the optimal weight distribution, the process returns to step S101 again. If it is determined that the optimum weight distribution is determined, the process proceeds to step S107 and is selected as one of the optimal matrix patterns.

상기 도 1에 도시된 바와 같은 과정을 통해 얻어진 결과 d min = 6이 최대로 얻을 수 있는 최소 거리이고, 이때 최소거리가 6인 부호어를 생성하는 생성행렬의 개수는 총 360개이다. (20,10) 부호가 최대로 가능한 d min 은 6이고, 도 1과 같이 본 실시형태에서 제안된 방법으로도 최대 d min 이 6인 부호의 생성이 가능하므로, 본 실시형태에서 이용한 방법을 통해 최적의 부호어를 생성하는 (20, 10) 부호의 생성행렬을 보다 효율적으로 찾을 수 있음을 알 수 있다.As a result, d min = 6 obtained through the process as shown in FIG. 1 is the minimum distance that can be obtained at maximum, and the number of generation matrices for generating codewords having a minimum distance of 6 is 360 in total. Since d min is 6, the maximum number of (20,10) codes is 6, and as shown in FIG. 1, the maximum d min is 6, and the method used in the present embodiment can be generated. It can be seen that the generation matrix of the (20, 10) code for generating the optimal codeword can be found more efficiently.

또한, 여기서 최적의 부호란 최소거리의 특성에 의해서 결정된다. 즉, 일반적으로 부호의 성능은 최소거리가 크면 클수록 좋아지며, 최소거리에 해당하는 부 호어의 수가 적으면 적을수록 성능이 좋아진다. 따라서, 최적의 부호란, 최소거리가 최대이며, 상기 최소거리를 나타내는 부호어의 수가 최소인 경우를 나타낸다. 좀더 엄밀히 말하면, 해밍무게분포(Hamming weight distribution)를 다항식으로 표현하는 경우에, 상수항이 아닌 가장 낮은 차수가 최대 이면서, 해당 차수의 계수가 최소인 경우를 의미한다. 만약, 두 개의 부호가 존재하고 두 개의 부호어의 해밍무게분포를 다항식으로 나타내었을 때, 두 개의 부호들간의 성능 우열은 차수와 계수로 비교 가능하다. 즉, 두 부호들의 해밍무게분포들 간의 최소 차수가 큰 쪽의 성능이 더 좋게 된다. 만일, 최소 차수가 동일하다면, 해당 최소 차수의 계수(즉, 상기 최소 차수에 해당하는 해밍무게를 갖는 부호어의 개수)가 작은 쪽의 성능이 좋게 된다. 한편, 두 부호들간의 해밍무게분포 다항식 비교 시에, 최소 차수와 최소 차수의 계수마저도 동일하다면, 그 다음차수를 비교하여 성능을 비교할 수 있다.Here, the optimal sign is determined by the characteristic of the minimum distance. That is, in general, the greater the minimum distance, the better the performance of the code, and the smaller the number of codewords corresponding to the minimum distance, the better the performance. Therefore, an optimal code | symbol shows the case where the minimum distance is maximum and the number of codewords which show the said minimum distance is minimum. More precisely, when the Hamming weight distribution is expressed as a polynomial, it means that the lowest order, not the constant term, is the maximum and the coefficient of the order is minimum. If two codes are present and the Hamming weight distribution of two codewords is represented as polynomial, the performance superiority between the two codes can be compared by order and coefficient. That is, the higher the minimum order between the Hamming weight distributions of the two codes, the better the performance. If the minimum orders are the same, the smaller the coefficient of the minimum order (i.e., the number of codewords having a Hamming weight corresponding to the minimum order) is, the better the performance is. On the other hand, when comparing the Hamming weight distribution polynomial between two codes, if the minimum order and the minimum order coefficients are also the same, the next order can be compared to compare the performance.

도 1과 관련하여 상술한 방법을 사용하면 (32,10) TFCI 정보 부호로부터 천공과정을 통해서 d min = 6 인 360개의 10*20 행렬들을 얻을 수 있다. 한편, 상기 생성행렬들의 해밍무게분포를 계산하여 분류하면, 다음과 같이 3가지 경우로 나눌 수 있고, 이를 아래 수학식 3 내지 5에 다항식 형태로 표현하면 다음과 같다.Using the method described above with reference to FIG. 1, 360 10 * 20 matrices with d min = 6 can be obtained through a puncturing process from the (32,10) TFCI information code. Meanwhile, when the Hamming weight distribution of the generated matrices is calculated and classified, it can be divided into three cases as follows, and this is expressed as a polynomial form in Equations 3 to 5 below.

[수학식 3]&Quot; (3) &quot;

Figure 112008503929415-pat00012
Figure 112008503929415-pat00012

[수학식 4]&Quot; (4) &quot;

Figure 112008503929415-pat00013
Figure 112008503929415-pat00013

[수학식 5][Equation 5]

Figure 112008503929415-pat00014
Figure 112008503929415-pat00014

아래 표 3은 상기 수학식 3의 해밍무게분포를 따르는 생성행렬의 예( A A 1,20(x) )를, 표 4는 상기 수학식 4의 해밍무게분포를 따르는 생성행렬의 예(A A 2,20(x))를, 표 5는 상기 수학식 5의 해밍무게분포를 따르는 10*20 생성행렬의 한 예(A A 3,20(x))이다. 상기 수학식 3 내지 5 와 같은 해밍무게분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 10*20 행렬들은 최소거리 측면에서 오류 정정 능력이 모두 동일한 특성을 갖는다.Table 3 below shows an example of a generation matrix according to the Hamming weight distribution of Equation 3 ( A A 1,20 (x)), and Table 4 shows an example of a generation matrix following the Hamming weight distribution of Equation 4 ( A A 2,20 (x)), and Table 5 is an example ( A A 3,20 (x)) of the 10 * 20 generation matrix that follows the Hamming weight distribution of Equation 5 above. The 10 * 20 matrices generated by all puncturing patterns having the Hamming weight distribution as shown in Equations 3 to 5 have the same error correction capability in terms of minimum distance.

[표 3][Table 3]

Figure 112008503929415-pat00015
Figure 112008503929415-pat00015

[표 4][Table 4]

Figure 112008503929415-pat00016
Figure 112008503929415-pat00016

[표 5]TABLE 5

Figure 112008503929415-pat00017
Figure 112008503929415-pat00017

실제로 동일한 해밍무게분포를 보이는 생성행렬의 개수는 다수개가 존재하며, 전수검사에 의해 모든 경우를 다 찾으면 총 360개가 존재한다. 이와 같은 360개의 천공 패턴은 본 발명자에 의해 발명되어 출원되었으며, 본 출원의 우선권 주장의 기초가 되는 미국 가출원 제 61/016,492 호 (GENERATION METHOD OF VARIOUS SHORT LENGTH BLOCK CODES WITH NESTED STRUCTURE BY PUNCTURING A BASE CODE)의 Appendix A에 상기 표 2를 기반으로 하여 천공되는 열의 인덱스가 일일이 개시되어 있으며, 본원 명세서에서는 지면 관계상 이를 생략한다.In fact, there are a large number of generation matrices with the same Hamming weight distribution. If all the cases are found by the total inspection, there are a total of 360 matrices. These 360 perforation patterns have been invented and filed by the inventors, and US Provisional Application No. 61 / 016,492, which is the basis for claiming priority of the present application (GENERATION METHOD OF VARIOUS SHORT LENGTH BLOCK CODES WITH NESTED STRUCTURE BY PUNCTURING A BASE CODE) In Appendix A, an index of a perforated column is disclosed daily based on Table 2, which is omitted in the present specification.

상기 360개의 천공 패턴을 더욱 자세히 해밍무게분포 별로 분류하면 다음과 같다. 상기 수학식 3에 해당하는 해밍무게분포를 나타내는 (20,10)부호의 생성행렬을 위한 천공패턴은 총 290개가 존재한다. 또한, 상기 수학식 4에 해당하는 해밍무게분포를 나타내는 (20,10)부호의 생성행렬을 위한 천공패턴은 총 60개가 존재한다. 한편, 상기 수학식 5에 해당하는 해밍무게분포를 나타내는 (20,10)부호의 생성행렬을 위한 천공패턴은 총 10개가 존재한다.The 360 puncturing patterns are further classified by Hamming weight distribution as follows. There are a total of 290 puncturing patterns for the generation matrix of the (20,10) code representing the Hamming weight distribution corresponding to Equation (3). In addition, there are a total of 60 puncturing patterns for the generation matrix of the (20,10) symbol representing the Hamming weight distribution corresponding to Equation (4). On the other hand, a total of 10 puncturing patterns for the generation matrix of the (20,10) code representing the Hamming weight distribution corresponding to Equation 5 are present.

본 발명에 대한 설명에 있어서는 상기 360개의 천공 패턴 중 다음과 같은 패턴을 예로 들어 설명한다.In the description of the present invention will be described taking the following pattern as an example of the 360 perforation pattern.

아래 표 6은 상기 수학식 4의 해밍무게분포를 나타내는 60개의 천공 패턴 중 하나를 나타낸다.Table 6 below shows one of 60 puncturing patterns representing the Hamming weight distribution of Equation 4.

[표 6]TABLE 6

Figure 112008503929415-pat00018
Figure 112008503929415-pat00018

상기 표 6의 천공 패턴은 상술한 본 출원의 우선권 주장의 기초가 되는 미국 가출원 제 61/016,492 호의 Appendix A, 표 A.2의 6번째 인덱스에 대응하는 천공 패턴이다. 이때, 상기 표 6에 있어서 "0"은 해당 열을 천공하는 것을 나타내며, "1" 은 해당 열을 천공하지 않고 (20, 10) 블록 코드에 선택하는 것을 의미한다.The perforation pattern in Table 6 above is a perforation pattern corresponding to the sixth index in Appendix A, Table A.2, of US Provisional Application No. 61 / 016,492, which is the basis for the above-mentioned claim of priority of the present application. In this case, in Table 6, "0" indicates puncturing the corresponding column, and "1" means selecting the (20, 10) block code without puncturing the corresponding column.

상기 표 6의 천공 패턴을 상기 표 2에 적용한 예는 다음과 같이 나타낼 수 있다.An example in which the perforation pattern of Table 6 is applied to Table 2 may be expressed as follows.

[표 7]TABLE 7

Figure 112008503929415-pat00019
Figure 112008503929415-pat00019

Figure 112008503929415-pat00020
Figure 112008503929415-pat00020

이때, 상기 표 7은 상기 표 2와 대비하여 행과 열의 방향이 변경되어 표현되었으나, 동일한 의미를 가지며, 우측에는 각각의 행 방향 시퀀스 중 천공되는 12개의 행을 표시하고 있다. 이에 따라 생성되는 (20, 10) 블록 코드는 다음과 같다.In this case, in Table 7, the directions of the rows and columns are changed and compared with those of Table 2, but have the same meaning, and on the right side, 12 rows are punctured among the row direction sequences. The (20, 10) block code generated according to this is as follows.

[표 8][Table 8]

Figure 112008503929415-pat00021
Figure 112008503929415-pat00021

한편, 상기 표 7 또는 표 8의 행의 순서는 3GPP에서 사용되는 TFCI 부호화를 위한 행렬 순서와는 약간의 차이가 있다. 상술한 바와 같이 코딩 이론에 있어서 각 행들의 위치를 변경하는 경우에도 생성된 부호어들의 성능에는 차이가 없는바, 상기 표 7 또는 표 8의 행의 순서를 TFCI 부호 행렬과 같이 맞추면 다음 표 9와 같이 나타낼 수 있다.On the other hand, the order of the rows of Table 7 or Table 8 is slightly different from the matrix order for TFCI encoding used in 3GPP. As described above, even when the positions of the rows are changed in the coding theory, there is no difference in the performance of the generated codewords. When the order of the rows of Table 7 or Table 8 is matched with the TFCI code matrix, Can be represented as:

[표 9]TABLE 9

Figure 112008503929415-pat00022
Figure 112008503929415-pat00022

Figure 112008503929415-pat00023
Figure 112008503929415-pat00023

상술한 바와 같이 상기 표 9는 상기 표 7과 행의 순서만 변화가 있으며, 다른 사항은 완전히 동일하다. 이런 경우는 부화 이론에 의해서 부호특성은 완전히 동일한 특성을 갖게 된다. 상기 표 9와 같은 표현 방법의 이점은 (20,10)부호에서 (18,10)부호로 천공 시에 마지막 2비트를 천공하여 생성 가능한 이점이 있으며, 자세한 사항에 대해서는 후술하기로 한다.As described above, in Table 9, only the order of rows in Table 7 is changed, and the other matters are completely the same. In this case, the code characteristics are completely the same due to the hatching theory. The advantage of the representation method as shown in Table 9 is the advantage that can be generated by puncturing the last two bits when puncturing from (20,10) to (18,10), a detailed description will be described later.

(2) 제 2 단계 - (20, 14) 블록 코드 생성(2) Second Step-(20, 14) Block Code Generation

상술한 바와 같이 본 발명의 일 실시형태에 따라 생성되는 (20, A) 블록 코드는 3GPP LTE 시스템에서 채널 품질 정보를 나타내는 CQI가 PUCCH를 통해 전송되기 위한 채널 코딩 방법에 이용되는 것을 가정한다. 또한, 상기 제 1 단계에서는 상기 3GPP LTE 시스템에서 CQI 정보의 비트 수는 4비트부터 10비트까지 다양할 수 있다는 점을 감안하여, 최대 (20, 10) 블록 부호까지 제안한 것이다. 다만, MIMO의 경우에는 CQI의 정보 비트수가 10비트보다 더 커질 수도 있다. 하지만, 실제 CQI 전송량은 CQI의 생성 방식에 따라 결정되므로, 부호화 과정을 위해서는 대략 적으 로 4부터 14비트정도까지의 여러 정보 비트 수를 모두다 지원하는 방식을 고려해 보도록 한다.As described above, the (20, A) block code generated according to one embodiment of the present invention assumes that a CQI indicating channel quality information in a 3GPP LTE system is used in a channel coding method for transmitting over PUCCH. In addition, in the first step, the maximum number of (20, 10) block codes is proposed in consideration of the fact that the number of bits of CQI information may vary from 4 bits to 10 bits in the 3GPP LTE system. However, in the case of MIMO, the number of information bits of the CQI may be larger than 10 bits. However, since the actual CQI transmission amount is determined according to the CQI generation method, consider a method of supporting all the information bits from about 4 to 14 bits in the coding process.

따라서, 본 단계에서는 제 1 단계에서 고려한 (20, 10) 블록 코드에 정보 비트 수에 따라 열을 추가하여 최대 14비트까지 지원할 수 있는 (20, 14) 블록 코딩 방법에 대해 살펴본다.Therefore, this step will be described for the (20, 14) block coding method that can support up to 14 bits by adding columns to the (20, 10) block code considered in the first step according to the number of information bits.

이와 같이 추가되는 열을 전수탐색을 통해 찾기 위해서는 대단히 많은 연산을 수행하여야 한다. 예를 들어 상기 표 9에 나타낸 (20, 10) 블록 코드에 하나의 열을 추가하기 위해서도 220

Figure 112008503929415-pat00102
1024개의 천문학적인 경우의 탐색이 필요하다. 따라서, 모든 경우에 대해 전수 탐색을 수행하는 것은 효율적이지 못하다.In order to find the added heat through the whole search, a great deal of computation must be performed. For example, shown in Table 9 (20, 10), 220 also to add one column in the block code,
Figure 112008503929415-pat00102
10 24 astronomical cases need to be searched. Thus, performing exhaustive search in all cases is not efficient.

본 단계에서는 상기 표 9의 6번째 열이 모두 1로 구성된 기본 시퀀스(Basis Sequence)임에 주목한다. 따라서, 추가되는 열이 최소거리 d를 만족해야 한다면, 최소한의 "0" 의 개수는 d보다 크거나 같아야 한다. 본 예에서는 "0" 의 개수가 부호어들 간의 최소거리가 되기 때문이다.Note that in this step, the sixth column of Table 9 is a basic sequence consisting of all 1's. Therefore, if the added column must satisfy the minimum distance d, then the minimum number of "0" s must be greater than or equal to d. This is because the number of "0" s is the minimum distance between codewords in this example.

자세히 설명하면, 추가되는 열과 모두 1로 구성된 기존 6번째 열과의 차이가 곧 두 부호어간의 거리이고, 따라서 추가되는 열의 "0" 의 개수가 곧 부호어간의 거리와 일치하게 된다.In detail, the difference between the added column and the existing sixth column including all 1s is the distance between two codewords, so that the number of “0” s of the added columns coincides with the distance between the codewords.

일반적으로 (20, 10) 코드에서 가능한 최대 최소거리가 6인 반면, 본 특허의 방법으로 구성된 (20, 11) 코드에서 가능한 최소한의 최대 거리는 4이다. 구체적으로 20 비트 부호어에서 다양한 정보 비트 수에 따른 최대 최소거리 특성은 다음과 같다.In general, the maximum possible distance in the (20, 10) code is 6, while the minimum maximum distance in the (20, 11) code constructed by the method of this patent is 4. In more detail, the maximum minimum distance characteristic according to various information bits in a 20-bit codeword is as follows.

[표 10]TABLE 10

Figure 112008503929415-pat00024
Figure 112008503929415-pat00024

Figure 112008503929415-pat00025
Figure 112008503929415-pat00025

따라서, 본 발명의 일 실시형태에서는 추가되는 열의 최대 최소거리가 "4" 인 것을 목표로 하여 열을 추가하는 방법을 제안한다. 이는 곧 추가되는 열에 "0" 의 개수가 4 이상인 열을 추가하는 것을 의미한다.Therefore, one embodiment of the present invention proposes a method of adding heat, aiming at the maximum minimum distance of the added heat being "4". This means adding a column having a number of "0" more than 4 to a column to be added soon.

우선 탐색 개수를 최소화하기 위해 본 실시형태에서는 추가되는 열은 "0" 을 4개 포함하는 열로 한정하여 본다. 이와 같이 "0" 을 4개 포함하고, "1" 을 16개 포함하는 추가열은 여러 가지가 가능하며 다음 표 11은 그 중 일례로서 상기 표9의 (20, 10) 코드를 (20, 14) 코드까지 확장한 형태를 나타내고 있다.First, in order to minimize the number of searches, the added column is limited to a column including four "0" s. As such, the additional column including four “0s” and sixteen “1s” may be various. The following Table 11 is an example of the code (20, 10) shown in Table 9 above (20, 14). It extends to code.

[표 11]TABLE 11

Figure 112008503929415-pat00026
Figure 112008503929415-pat00026

Figure 112008503929415-pat00027
Figure 112008503929415-pat00027

상기 표 11에 있어서 추가되는 4개 열은 우측 4개 열이며, 추가되는 열에 있어서 "0" 은 굵은 글씨체로 나타내었다.The four columns added in Table 11 are the four columns on the right side, and in the added columns, "0" is indicated in bold type.

(3) 제 3 단계 - 블록 코드의 변형/최적화(3) Step 3-Modification / Optimization of Block Code

본 발명의 일 실시형태에서는 최대 정보양의 길이에 맞추어서 생성된 큰 생성행렬을 바탕으로 하여서, 상기 최대 길이보다 작거나 같은 정보길이를 부호화 하기 위한 생성행렬을 구성함으로써, 각각의 정보 길이를 위한 생성행렬들간의 공통 점을 최대한으로 유지하는 방법을 제안한다. 좀더 구체적인 첫 번째 방법으로는, 상기 최대 길이보다 작거나 같은 각각의 정보양에 맞추어서, 개별적으로 최적와하여 생성행렬을 구성하는 것도 가능하다. 두 번째 방법으로는, 상기 최대 길이보다 작거나 같은 정보 길이를 부호화 하기 위한 생성행렬을 구성하는데 있어서, 큰 길이의 정보를 위한 생성행렬은 작은 길이의 정보를 위한 생성행렬을 반드시 포함하도록 하는 포함구조(nested structure)로 생성행렬을 구성하는 것도 가능하다. 세 번째로는, 정보 길이 각각에 대하여 최적화된 생성행렬 구성 시에도 최대한 포함구조가 되도록 변형하는 방법을 포함하는 복합구조(Hybrid structure)로도 구성하는 것이 가능하다.In one embodiment of the present invention, a generation matrix for encoding an information length less than or equal to the maximum length is generated based on a large generation matrix generated according to the length of the maximum amount of information, thereby generating for each information length. We propose a method to keep the commonalities between the matrices as much as possible. In a more specific first method, it is also possible to construct the generation matrix individually and optimally in accordance with each information amount less than or equal to the maximum length. Secondly, in constructing a generation matrix for encoding an information length less than or equal to the maximum length, the generation matrix for the large length information must include the generation matrix for the small length information. It is also possible to construct a generation matrix with a nested structure. Thirdly, it is also possible to construct a hybrid structure including a method of transforming the information matrix so that it can be included as much as possible even when constructing an optimized generation matrix for each information length.

우선, 앞서 살펴본 상기 표 11의 정보 비트 길이에 따른 해밍무게분포를 살펴보면 다음 표 12와 같다.First, the Hamming weight distribution according to the information bit length of Table 11 described above is shown in Table 12 below.

[표 12]TABLE 12

Figure 112008503929415-pat00028
Figure 112008503929415-pat00028

상기 표 12 에서 최소해밍거리는 음영으로 표시되었다. 우리의 관심사는 최소한 정보 비트수 k가 4이상이 경우이므로, 표 12 에 있어서 정보 비트의 길이 k가 3보다 작은 경우는 편의상 생략하였다. 또한, 각각의 k값들을 최소거리에 따라서 그룹지을 수 있다. 즉, k=4∼6은 최소거리가 8인 그룹이며, k=7∼10은 최소거리 6인 그룹, 그리고 k=11∼14는 최소거리가 4인 그룹으로 분류가 가능하며, 이는 상기 표 10과 대응됨을 알 수 있다.In Table 12, the minimum hamming distance is shown in shades. Our concern is that if at least the number of information bits k is 4 or more, the case where the length k of the information bits is smaller than 3 in Table 12 is omitted for convenience. Also, each k value can be grouped according to the minimum distance. That is, k = 4 to 6 can be classified into a group having a minimum distance of 8, k = 7 to 10 can be classified into a group having a minimum distance of 6, and k = 11 to 14 can be classified into a group having a minimum distance of 4; Corresponds to 10.

본 단계에서는 작은 부호율을 갖는 부호를 생성하는데 있어서, 부호어들간의 최소거리가 최대가 되도록 부호를 구성하며, 부호의 구성 또한 간단한 방법으로 생성하는 방법을 제안한다.In this step, in generating a code having a small code rate, a code is constructed so that the minimum distance between code words is maximum, and a method of generating the code is also proposed in a simple manner.

예를 들어 상기 표 11 에서 정보 비트의 길이가 4인 경우, 지금까지는 앞에서 4개의 열을 선택하여 정보 비트의 순서대로 왼쪽 열에 대응시키는 방법으 고려해왔지만, 실제로는 14개의 열중에서 아무거나 4개를 선택하여도 부호구성이 가능하다. 하지만, 이때 최소거리가 최대화되도록 구성하는 것이 바람직하다. 만일 14개의 열중에서 4개를 선택하는 데 있어서, 7번 열부터 14번 열중에서 아무거나 하나만 포함되더라도 원래 앞에서부터 처음 4개의 열을 선택할 때 얻을 수 있는 최소거리 8이 유지가 안 되는 경우가 생기게 된다. 하지만, 상기 표 12 및 표 10을 참조하면 열 5와 열 6은 최소거리가 8인 그룹이므로, 4개의 열을 선택하는 데 있어서 6번까지의 열중에서 임의의 4개를 선택하는 것이 고려 가능하다.For example, in the above table 11, when the length of the information bit is 4, it has been considered to select the four columns earlier and correspond to the left columns in the order of the information bits, but in reality, select any four out of the 14 columns. The code configuration is also possible. However, it is desirable to configure the minimum distance at this time. If you select four out of fourteen columns, even if you include any one of columns 7 to 14, you will not be able to maintain the minimum distance 8 you get when you select the first four columns from the beginning. . However, referring to Tables 12 and 10, since columns 5 and 6 are groups having a minimum distance of 8, in selecting 4 columns, it is possible to select any 4 out of columns 6 up to 6 columns. .

따라서, 각각의 정보 비트에 따른 열 선택에 있어서, 원래 해당 정보 비트 수에 따라 얻을 수 있는 최소거리보다 크거나 같은 최소거리를 나타내는 열들 중에서 가장 특성이 좋은 열을 선택하는 것이 가능하다.Therefore, in selecting a column according to each information bit, it is possible to select a column having the most characteristic among columns representing a minimum distance greater than or equal to the minimum distance that can be obtained according to the original number of information bits.

일례로, 정보 비트수가 11개부터 14개 사이만을 최적화 하기 위해서, 일단 1번부터 10번까지의 열은 고정시킨 상태에서, 정보 비트 수에 따라서 해밍무게 분포를 살펴보면 다음 표 13 내지 15와 같다.For example, in order to optimize only between 11 and 14 information bits, the Hamming weight distribution according to the number of information bits is shown in Tables 13 to 15 once the columns 1 to 10 are fixed.

[표 13]TABLE 13

Figure 112008503929415-pat00029
Figure 112008503929415-pat00029

Figure 112008503929415-pat00030
Figure 112008503929415-pat00030

[표 14][Table 14]

Figure 112008503929415-pat00031
Figure 112008503929415-pat00031

Figure 112008503929415-pat00032
Figure 112008503929415-pat00032

[표 15]TABLE 15

Figure 112008503929415-pat00033
Figure 112008503929415-pat00033

Figure 112008503929415-pat00034
Figure 112008503929415-pat00034

상기 표 13 내지 표 15에 있어서 각각의 경우 가장 좋은 무게분포를 보이는 경우를 음영으로 표시하였다. 좋은 성능을 갖는 부호란 무게분포에서 "0" 이 아닌 무게의 값, 즉 최소거리를 갖는 무게 값이 큰 경우를 의미한다. 또한 상기 무게 값에 해당하는 부호어의 개수가 적을수록 좋은 성능을 나타낸다. 만일 최소무게의 성 능이 두 부호들간에 동일하다면, 그 다음으로 최소인 무게에서의 특성에 의해 부호의 성능이 결정된다. 즉, 두 번째로 작은 무게 값이 될 수 있는 한 클수록 성능이 좋으며, 상기 두 번째로 작은 무게 값이 동일하다면 해당 무게 값을 구성하는 부호어의 개수가 작을수록 좋은 성능을 나타낸다.In Table 13 to Table 15, the case showing the best weight distribution in each case is indicated by the shade. A sign with good performance means a case where the weight of the weight distribution other than "0", that is, the weight having the minimum distance is large. Also, the smaller the number of codewords corresponding to the weight value, the better the performance. If the minimum weight performance is the same between the two codes, then the performance of the code is determined by the property at the minimum weight. That is, the larger the second smallest weight value, the better the performance. If the second smallest weight value is the same, the smaller the number of codewords constituting the weighted value, the better the performance.

상기 표 13 내지 표 15와 같은 과정을 반복하여 각 정보 비트 길이 별로 최적의 성능을 나타내도록 열을 할당하면 다음 표 16과 같다. 여기서는 우리의 주된 관심사는 정보 비트 길이 k가 4이상이므로, 3비트까지는 원래대로 고정하여 사용하고, 4비트 이상에서만 최적의 열을 찾아서 아래 표 16에 표시하였다.Repeating the process of Table 13 to Table 15 and assigning a column to show the optimal performance for each information bit length is as shown in Table 16. In this case, our main concern is that the information bit length k is 4 or more. Therefore, up to 3 bits are fixed as they are, and the optimal column is found only in 4 or more bits.

[표 16]TABLE 16

Figure 112008503929415-pat00035
Figure 112008503929415-pat00035

Figure 112008503929415-pat00036
Figure 112008503929415-pat00036

만일 k가 3 이하인 경우에도 열 간 위치 교환을 고려해야 한다면, 좀더 많은 과정을 거칠 뿐 동일한 논리적 과정을 거쳐서 최적 열 할당을 찾으면 된다If k is less than 3 and you need to consider exchanging positions between columns, go through more steps and follow the same logical process to find the optimal heat allocation.

우리의 관심사가 정보 비트 수 k가 4이상인 경우라면, 각각의 정보 비트 별로 최적의 열 할당을 한 경우는 앞서 살펴본 상기 표 16과 같다. 한편 상기 표 16을 살펴보면 정보비트수가 커질 때 이용되는 열들에 작은 정보 비트에 할당되었던 열이 항상 포함되지는 않는다. 즉, 큰 정보비트의 할당 열이 작은 정보비트의 할당 열을 포함하는 포함구조(nested structure)를 유지 하지 않게 된다.If our concern is that the number of information bits k is greater than or equal to 4, the optimal column allocation for each information bit is shown in Table 16 above. On the other hand, referring to Table 16, the columns used to increase the number of information bits do not always include the columns allocated to the small information bits. That is, the allocation string of large information bits does not maintain a nested structure including the allocation string of small information bits.

포함구조가 아니면, 각각의 정보 비트마다 할당되는 열을 따로 표시해야 되는 번거로움이 생기게 된다. 따라서, 최적의 할당을 유지한 채로 최대한 포함구조를 형성하는 방법을 살펴보자.If the structure is not included, it is cumbersome to separately indicate the columns allocated to each information bit. Therefore, let's look at how to form the maximum containment structure while maintaining optimal allocation.

우선 최소거리가 같은 그룹 내에서 열간 순서 변화를 위한 위치교환(permutation)을 고려해보자. 일례로 최소 거리가 4인 그룹인 열 11, 12, 13, 14에서 열의 순서를 바꾸어 11, 13, 14, 12로 위치 이동을 해본다. 그러면 최적 매핑 패턴은 k=11에서는 [1∼10]+[11]이 되고, k=12에서는 [1∼10]+[11,13], k=13에서는 [1∼10]+[11,13,14] 이고, k=14에서는 [1∼10]+[11,12,13,14]가 된다. 즉, 열의 순서를 바꾼 상태에서는 k 값에 따라 순차적으로 열을 할당하면 된다.First, consider permutation for the change of hot order within a group with the same minimum distance. For example, change the order of columns in columns 11, 12, 13, and 14 with a minimum distance of 4 to move them to 11, 13, 14, and 12. The optimal mapping pattern then becomes [1-10] + [11] at k = 11, [1-10] + [11,13] at k = 12, and [1-10] + [11, at k = 13. 13,14], and at k = 14, it becomes [1-10] + [11, 12, 13, 14]. That is, in a state where the order of the columns is changed, the columns may be sequentially assigned according to the k value.

위에서 살펴본 바와 같이 k값이 증가함에 따라 순차적으로 열을 할당하면 최적의 할당 패턴이 되도록 열의 순서를 바꾸는 것이 고려 가능하며, 이를 아래 표17에 나타내었다.As discussed above, it is possible to change the order of the columns so that the optimal allocation pattern is obtained by sequentially assigning the columns as the k value increases, which are shown in Table 17 below.

[표 17]TABLE 17

Figure 112008503929415-pat00037
Figure 112008503929415-pat00037

물론 상기 표 16과 같은 최적 할당 패턴을 만족하면서 열의 순서를 바꾸는 방법은 상기 표 17이외에도 여러 가지가 존재할 수 있으며, 또 다른 하나의 예를 아래 표 18에 나타내었다.Of course, there are a number of ways to change the order of the columns while satisfying the optimal allocation pattern as shown in Table 16, and there is a variety of ways, other examples are shown in Table 18 below.

[표 18]TABLE 18

Figure 112008503929415-pat00038
Figure 112008503929415-pat00038

상기 표 17 또는 표 18과 같이 생성행렬을 구성하면, 정보 비트 수 k가 증가함에 따라 순차적으로 열을 할당하여도, 왼쪽 열부터 차례대로 할당하여도 최적의 할당이 되는 장점이 생기게 된다.When the generation matrix is configured as shown in Table 17 or Table 18, even if columns are sequentially assigned as the number of information bits k is increased, there is an advantage of being optimally allocated even if the rows are sequentially assigned from the left column.

아울러, 본 발명의 또 다른 일 실시형태로서 정보 비트 수가 4이하인 경우에 대한 열 방향 시퀀스(기본 시퀀스) 위치에 변경을 줄 수 있다. 구체적으로 상기 표 11를 살펴보면 6번째 열, 즉 Mi,5의 모든 비트가 "1" 인 기본 시퀀스(basis sequence)임을 알 수 있다. 이러한 기본 시퀀스는 해당 비트의 전체 부호어에 대한 기여도를 높이게 된다. 따라서 해당비트 관점으로 보면 이렇게 가중치(weight)가 많은 기본 시퀀스가 바람직할 수 있다.In addition, as another embodiment of the present invention, it is possible to change the position of the column direction sequence (base sequence) for the case where the number of information bits is four or less. Specifically, referring to Table 11, it can be seen that the sixth column, that is, the base sequence (basis sequence) in which all bits of M i, 5 are "1". This basic sequence increases the contribution to the entire codeword of the corresponding bit. Therefore, from the viewpoint of the corresponding bit, such a weighty base sequence may be preferable.

하지만, 전체 부호어는 여러 비트가 "exclusive or" 로 연산되므로, 복합된 결과를 고려해야 한다. 따라서, 서로 결합되는 경우의 수를 줄이기 위해서, 상술한 바와 같이 모든 비트가 "1" 인 기본 시퀀스를 제일 앞으로 옮겨서 기여도를 높이는 방법이 고려가 가능하다. 이와 같은 방법으로, 비트수가 적은 경우의 부호화의 경우에 모든 비트가 1인 기본 시퀀스를 제일 앞으로 옮기는 방법이 고려가능하며, 아래 표 19에 나타내었다.However, the entire codeword is considered to be an "exclusive or" number of bits, so the combined result must be taken into account. Therefore, in order to reduce the number of cases where they are combined with each other, a method of increasing the contribution by shifting the base sequence in which all bits are "1" to the front as described above can be considered. In this way, in the case of encoding when the number of bits is small, a method of moving the base sequence of all bits 1 to the front is considered, and is shown in Table 19 below.

[표 19]TABLE 19

Figure 112008503929415-pat00039
Figure 112008503929415-pat00039

Figure 112008503929415-pat00040
Figure 112008503929415-pat00040

상기 표 19는 원래 열 방향 기본 시퀀스 중 6번째 시퀀스, 즉 모두 "1" 을 포함하는 시퀀스 인덱스를 가장 첫 번째 기본 시퀀스로 위치를 변경하고, 다른 기본 시퀀스들의 순서는 변경하지 않은 경우에 해당한다.Table 19 corresponds to a case where the sixth sequence of the original column direction base sequences, that is, a sequence index including all "1s" is changed to the first base sequence and the order of other base sequences is not changed.

아울러, 아래 표 20은 상기 표 19에 따를 경우 최소 거리 성능을 나타내고 있다.In addition, Table 20 below shows the minimum distance performance according to Table 19 above.

[표 20]TABLE 20

Figure 112008503929415-pat00041
Figure 112008503929415-pat00041

상기 표 20을 통해 본 실시형태에 따를 경우, 정보비트수가 1 또는 2일 때 성능이 좋아짐을 알 수 있다.According to the present embodiment through Table 20, it can be seen that the performance is improved when the number of information bits is 1 or 2.

부호 이론에 따르면, 기본적으로 생성행렬의 행들의 위치를 서로 교환 하거나, 열들의 위치를 교환하여도 부호의 특성은 동일하므로, 그러한 변형은 본 발명에 대한 설명에서는 특별히 언급하지 않았다.According to the sign theory, the characteristics of the sign are basically the same even if the positions of the rows of the generation matrix are exchanged with each other or the positions of the columns are exchanged, and thus such modification is not specifically mentioned in the description of the present invention.

하지만, 가변 길이의 정보 비트를 지원하는 생성행렬에서 정보 비트의 부호화에 기본 시퀀스를 순차적으로 할당하는 경우는, 열들의 위치를 교환이 해당 가변 길이의 정보 비트의 생성행렬을 변경시킬 수 있으므로 조심하여야 한다.However, in the case of sequentially assigning a base sequence to encoding information bits in a generation matrix that supports variable length information bits, care must be taken because swapping positions of columns may change the generation matrix of information bits of variable length. do.

또한, 부호이론에 따르면, 부호어에서 "0" 과 "1" 의 값을 반전하는 경우도 같은 부호이므로, 그러한 변형은 본 발명에 대한 설명에서는 특별히 언급하지 않는다.In addition, according to the sign theory, since the same sign is used for inverting the values of "0" and "1" in the code word, such modification is not particularly mentioned in the description of the present invention.

이하 상술한 본 발명의 각 실시형태들에서 공통으로 고려해야 할 점에 대해서 간단히 언급하고자 한다.Hereinafter, a brief description will be made of common considerations in the above-described embodiments of the present invention.

[n, k]부호는 부호화 비트수가 n 이고 정보비트수가 k 인 부호를 의미한다. 상술한 설명에서 특별한 언급이 없는 한 부호의 생성 행렬은 기본 시퀀스 형태의 표로 표시하고 있다.[n, k] code means a code in which the number of encoded bits is n and the number of information bits is k. Unless otherwise stated in the above description, the generation matrix of the code is represented by a table in the form of a basic sequence.

상술한 바와 같이 제안된 블록 코드를 이용한 실제 부호화 방법은 3GPP relase 99 의 TFCI 부호 등과 비슷한 방법을 사용한다. 즉, 정보 비트를 왼쪽 기본 시퀀스로부터 차례대로 할당하고, 상기 기본 시퀀스와 상기 정보비트를 곱하고, 이와 같이 곱해진 시퀀스를 정보 비트 수만큼 2 진 연산으로 더하여(Exclusive OR sum) 부호화 비트를 생성하는 방법을 취한다.As described above, the actual coding method using the proposed block code uses a method similar to the TFCI code of 3GPP release 99. That is, a method of generating encoded bits by sequentially assigning information bits from a left basic sequence, multiplying the basic sequence and the information bits, and adding the multiplied sequence by a binary operation by the number of information bits (Exclusive OR sum). Take

위와 같은 방법으로 부호를 나타내면 정보비트의 수가 가변일 때에도 하나의 기본 시퀀스 표를 사용하여 부호화가 가능한 장점이 있다. 이러한 장점을 사용하여 다양한 정보 비트수의 지원이 가능하다. 따라서, 상술한 실시형태에 있어서 기본 시퀀스 표는 최대 크기의 정보 비트 수를 고려하여 표시되었다. 만일, 실제 응용에서 필요한 최대 정보 비트수가 여기에서 제시한 크기보다 작다면, 해당 최대 비트 수 이상을 위한 기본 시퀀스를 삭제한 표를 사용하는 것이 바람직하다.When the code is represented by the above method, even when the number of information bits is variable, there is an advantage that encoding can be performed using one basic sequence table. Using this advantage, various information bits can be supported. Therefore, in the above-described embodiment, the base sequence table is displayed in consideration of the maximum number of information bits. If the maximum number of information bits required in the actual application is smaller than the size suggested here, it is preferable to use a table in which the base sequence for the maximum number of bits or more is deleted.

상술한 바와 같은 본 발명의 각 실시형태에서 제시한 기본 시퀀스는 정보비트의 수를 가변으로 하도록 설계되었을 뿐만 아니라, 부호화 비트수도 가변으로 할 수 있도록 설계하였다. 따라서 특정 기본 시퀀스 표에서 특정 열을 삭제한 부호도 본 실시형태의 설계 시 이미 고려된 부호이다. 즉, 간단한 일례로, 기본 시퀀스 표가 (32,15)라면, 아래부터 연속적인 12개의 행을 삭제하고, 오른쪽부터 1개의 열을 삭제한 기본 시퀀스 표 역시 상기 (32,15) 기본 시퀀스 표의 한 가지 적용 예에 해당한다.The basic sequence presented in each embodiment of the present invention as described above is designed not only to make the number of information bits variable but also to make the number of coding bits variable. Therefore, the code which deleted the specific column from the specific basic sequence table is also the code already considered in the design of this embodiment. That is, as a simple example, if the base sequence table is (32,15), the base sequence table, which deletes 12 consecutive rows from the bottom and deletes one column from the right, is also one of the (32,15) base sequence tables. There are two application examples.

정리하면, 본 발명의 실시형태에서는 기본 시퀀스 표의 행과 열이 가장 큰 크기를 기준으로 이루어졌으며, 작은 크기의 행과 열은 상기 큰 크기의 기본 시퀀스 표의 행과 열을 차례대로 삭제하여 사용할 수 있다. 물론 앞서 설명한 바와 같 이, 줄어든 크기의 기본 시퀀스 표에서 행과 열의 위치를 바꾸거나, "0" 과 "1" 을 교환한 표도 동일한 부호임에 유의해야 한다.In summary, in the embodiment of the present invention, the rows and columns of the base sequence table are formed based on the largest size, and the rows and columns of the small size can be used by sequentially deleting the rows and columns of the large base sequence table. . Of course, as described above, it should be noted that the table in which the positions of the rows and columns are changed in the reduced size base sequence table or the "0" and "1" are exchanged are the same signs.

참고로, 본 발명의 각 실시형태의 표기는, 상기 기본 시퀀스 표의 표현에서 정보 비트는 왼쪽 열부터 정보 비트에 대응되기 시작하여 오른쪽 열에서 끝나며, 부호화 비트는 맨 위쪽 행부터 생성되기 시작하여 제일 아래쪽 행으로 끝나도록 설정 하기로 한다. 이에 따라 아래 표 21은 정보 비트의 길이가 최대 13비트인 경우를 가정하여, 상기 표 19와 같은 기본 시퀀스 표에서 가장 우측에 위치한 하나의 기본 시퀀스를 삭제한 예를 나타내고 있다.For reference, in the representation of each embodiment of the present invention, in the representation of the basic sequence table, the information bits start to correspond to the information bits from the left column and end in the right column, and the encoding bits start to be generated from the top row and the bottommost. Set to end with a line. Accordingly, Table 21 below shows an example of deleting one basic sequence located at the far right in the basic sequence table as shown in Table 19 on the assumption that the information bits have a maximum length of 13 bits.

[표 21]TABLE 21

Figure 112008503929415-pat00042
Figure 112008503929415-pat00042

Figure 112008503929415-pat00043
Figure 112008503929415-pat00043

한편, 특정 채널 추정 방법 등에서 특정한 패턴의 기본 시퀀스는 사용하지 않는 것이 바람직할수도 있다. 이러한 경우에는 본 발명의 각 실시형태에 따라 제안된 표들 중에서, 시스템에 따라서 특정 기본 시퀀스를 제거한 표도 고려 가능하다. 이러한 경우는 부호화 관점에서 해당 기본 시퀀스는 언제나 0인 경우로 고려 가능하므로, 부호 성능은 동일하고, 정보비트 수만 줄어든 형태를 의미한다. 따라서, 본 발명의 각 실시형태에 따라 제안된 기본 시퀀스 표에서 특정 기본 시퀀스를 제거한 기본 시퀀스 표도 본 발명의 범위에 속한다.Meanwhile, in a specific channel estimation method, it may be desirable not to use the basic sequence of the specific pattern. In such a case, among tables proposed according to each embodiment of the present invention, a table in which a specific basic sequence is removed may be considered according to a system. In this case, since the base sequence is always considered to be 0 from an encoding point of view, it means that the code performance is the same and the number of information bits is reduced. Accordingly, a base sequence table in which a specific base sequence is removed from the proposed base sequence table according to each embodiment of the present invention is also within the scope of the present invention.

이하에서는 상술한 바와 같이 제안된 (20, A) 블록 코드에 기반하여, 부호어의 길이가 18비트 또는 16비트에 해당하는 (18, A) 또는 (16, A) 블록 코드에 대해 본 발명의 다른 일 측면으로서 설명한다.Hereinafter, based on the proposed (20, A) block code as described above, the (18, A) or (16, A) block code whose length of the codeword corresponds to 18 bits or 16 bits, It demonstrates as another aspect.

2. 제 2 측면 - (18, A) 및 (16, A) 블록 코딩2. Second aspect-(18, A) and (16, A) block coding

상술한 바와 같이 (18, A) 및 (16, A) 블록 코드로는 (20, A) 블록 코드와 마찬가지로 기존 (32, 10) 구조를 가지는 TFCI 정보 코드를 이용할 수 있다. 따라서, 이하 (18, A) 및 (16, A) 블록 코드에 대한 설명에 있어서도 우선, (18, 10) 및 (16, 10) 블록 코드 생성에 대해 살펴보고, 이에 대한 변경을 통해 임의의 (18, A) 및 (16, A) 블록 코드에 대해 설명한다.As described above, as the (18, A) and (16, A) block codes, a TFCI information code having an existing (32, 10) structure can be used similarly to the (20, A) block code. Therefore, in the following description of the (18, A) and (16, A) block codes, first, the (18, 10) and (16, 10) block code generations will be described. 18, A) and (16, A) block codes will be described.

본 실시형태에서는 다음 세 가지 방법을 통해 천공패턴을 찾아 최적의 (18, 10) 부호 및 (16, 10) 부호의 생성행렬을 제시한다. 이하의 설명은 특별히 다른 언급이 없는 한, 우선 상기 표 2에 나타낸 바와 같이 TFCI 정보 코드의 등가 형태를 기준(32, 10) 코드로서 가정하고 설명하기로 한다.In the present embodiment, a puncturing pattern is found through the following three methods, and an optimal (18, 10) code and a generation matrix of the (16, 10) code are presented. In the following description, unless otherwise indicated, first, as shown in Table 2, the equivalent form of the TFCI information code is assumed and described as the reference (32, 10) code.

첫째로는 모든 부호의 생성행렬을 (32,10) 부호의 생성행렬로부터 천공하여 생성하는 것이 가능하다(이하 "방법 1" 이라 함). 즉, 자세히 설명하면, (20,10) 부호의 생성행렬을 (32,10) 부호의 생성행렬을 천공하여 찾을 뿐만 아니라, (18,10) 부호의 생성행렬도 (32,10) 부호의 생성행렬을 천공하여 생성한다. 또한, (16,10) 부호의 생성행렬도 (32,10) 부호의 생성행렬로부터 천공하여 구성한다. 상기와 같은 방법으로 (20,10) 부호, (18,10) 부호 및 (16,10) 부호를 생성하게 되면, 각각의 부호가 최적의 천공패턴을 고려하여 생성되게 되는 장점이 있게 된다.Firstly, it is possible to generate a generation matrix of all codes by puncturing from a generation matrix of (32, 10) codes (hereinafter referred to as "Method 1"). That is, in detail, not only the generation matrix of the (20,10) code is found by puncturing the generation matrix of the (32,10) code, but the generation matrix of the (18,10) code also generates the (32,10) code. Generate by perforating the matrix. The generation matrix of the (16,10) code is also constructed by puncturing from the generation matrix of the (32,10) code. When the (20, 10) code, the (18, 10) code and the (16, 10) code are generated in the above manner, each code has an advantage of being generated in consideration of an optimal puncturing pattern.

이와 같은 방법 1은 도 2에 도시된 바와 같다.Method 1 is as shown in FIG.

도 2는 본 발명의 일 실시형태에 따라 (20, 10), (18, 10) 및 (16, 10) 형태의 코드 생성 행렬을 각각 (32, 10) 형태를 가지는 기본 코드로부터 생성하는 방식을 설명하기 위한 도면이다.2 illustrates a method of generating code generation matrices of the form (20, 10), (18, 10), and (16, 10) from the basic codes having the form (32, 10), respectively, according to an embodiment of the present invention. It is a figure for demonstrating.

하지만, 도 2에 도시된 바와 같이 각각의 블록 코드를 생성할 경우, 실제 고려해야 할 천공패턴의 수가 기하 급수적으로 증가하게 되는 단점이 발생된다. 즉, (20,10) 부호에서는 원래 (32,10) 부호의 생성행렬의 32개 열에서 12개의 열을 제거해야 하므로, 전체 고려해야 할 패턴의 개수는

Figure 112008503929415-pat00103
=225,792,840개 가 된다. 또한, (18,10) 부호는 고려 해야 할 천공 패턴의 개수가 더욱 증가하여
Figure 112008503929415-pat00104
=471,435,600 개가 되며, (16,10) 부호는 총
Figure 112008503929415-pat00105
=601,080,390 개의 천공패턴을 고려해야 한다. 이러한 모든 천공 패턴의 경우를 고려하는 것은 계산에 상당히 부담이 되므로, 효과적으로 천공패턴을 찾는 방법을 고려해 보도록 한다.However, when each block code is generated as shown in FIG. 2, a disadvantage arises in that the number of puncturing patterns to be actually considered increases exponentially. That is, in the (20,10) code, 12 columns should be removed from the 32 columns of the generation matrix of the (32,10) code, so the total number of patterns to consider
Figure 112008503929415-pat00103
= 225,792,840. In addition, the (18,10) sign is further increased the number of perforation patterns to be considered
Figure 112008503929415-pat00104
= 471,435,600 and the (16,10) sign
Figure 112008503929415-pat00105
Consideration should be given to 601,080,390 drilling patterns. Considering all of these perforation patterns is very burdensome in the calculation, so consider the method of finding the perforation patterns effectively.

본 발명의 다른 일 실시형태에서는 모든 부호의 생성행렬을 (32,10) 부호의 생성행렬로부터 천공하여 생성하는 것이 아니라, 우선적으로 (20,10) 부호의 생성행렬을 찾은 후에, 상기 (20,10) 부호의 생성행렬을 기본으로 하여, (18,10) 부호 및 (16,10) 부호의 생성행렬을 구성하는 것이 가능하다(이하 "방법 2" 라 함). 이때, (18,10) 부호와 (16,10) 부호 모두 (20,10) 부호를 기본으로 하여 생성되었음에 유의해야 한다. 이와 같은 방법 2는 도 3에 도시된 바와 같다.In another embodiment of the present invention, the generation matrixes of all the codes are not punctured from the generation matrixes of the (32,10) codes, but instead, after finding the generation matrixes of the (20,10) codes, the above (20, 10) It is possible to construct the generation matrix of the (18,10) code and the (16,10) code based on the generation matrix of the code (hereinafter referred to as "method 2"). At this time, it should be noted that both the (18,10) code and the (16,10) code were generated based on the (20,10) code. Method 2 is as shown in FIG.

도 3은 본 발명의 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드로부터 (20, 10) 코드를 생성한 후, 이를 이용하여 (18, 10) 코드 및 (16, 10) 코드를 각각 생성하는 방식을 설명하기 위한 도면이다.Figure 3 generates (20, 10) code from the base code having the form (32, 10) according to another embodiment of the present invention, and then using the (18, 10) code and (16, 10) code Is a diagram for explaining a method of generating each.

상술한 본 발명의 제 1 측면에서 설명한 바와 같이 기존 (32,10) 부호의 생 성행렬로부터 천공을 통해 (20,10) 부호의 생성행렬을 구성하는 방법에 의하면, 최대 d min = 6인 360개의 (20, 10) 부호의 생성행렬이 존재한다. 여기서는 (20,10) 부호의 생성행렬에서 두 개의 열을 추가적으로 천공하여 (18,10) 부호의 생성행렬을 구성하고, 또한 앞서 찾은 (18,10) 부호와 독립적으로 (20,10) 부호의 생성행렬로부터 네 개의 열을 추가적으로 천공하여 (16,10) 부호의 생성행렬 구성하는 방법을 고려해 본다. 이와 같은 방법에서는 모든 가능한 패턴을 전수 탐색하여 이들 중 최대 dmin을 갖는 10*18, 10*16 생성행렬을 10*20 생성행렬로부터 찾을 수 있다.According to the method of constructing the generation matrix of the (20,10) code through the puncturing from the generation matrix of the existing (32,10) code as described in the first aspect of the present invention, the maximum d min = 6 360 There are (20, 10) coded generation matrices. In this case, two columns are additionally punctured in the generation matrix of the (20,10) code to form the generation matrix of the (18,10) code, and independently of the previously found (18,10) code, Consider a method of constructing a generation matrix of (16,10) codes by additionally drilling four columns from the generation matrix. In this method, all possible patterns can be searched for a whole and 10 * 18 and 10 * 16 generation matrices having the maximum d min can be found from the 10 * 20 generation matrices.

또한, 본 발명의 또 다른 일 실시형태에서는 (32, 10) 기본 부호 생성 행렬의 열을 순차적으로 천공하여 (20,10) 부호, (18,10) 부호, 그리고 (16,10) 부호의 생성행렬을 찾는 방법(이하 "방법 3" 이라 함)을 고려해본다. 자세히 설명하면 다음과 같다.In another embodiment of the present invention, a sequence of the (32, 10) basic code generation matrix is sequentially drilled to generate the (20,10) code, the (18,10) code, and the (16,10) code. Consider a method of finding a matrix (hereinafter referred to as "Method 3"). The detailed description is as follows.

우선, (32,10) 부호의 생성행렬을 천공하여 최적의, 즉 최대 d min 을 갖고 최적의 해밍무게분포 특성을 갖는 (20,10) 부호의 생성행렬을 얻는다. 상기 얻어진 최적의 (20,10) 부호의 생성행렬로부터 천공과정을 통하여 최적의, 즉 최대 d min 을 갖고 최적의 해밍무게분포 특성을 갖는 (18,10)부호의 생성행렬을 구한다. 같은 방법을 적용하여, 상기 (18,10)부호의 생성행렬을 천공하여 최적의, 즉 최대 d min 을 갖고 최적의 해밍무게분포 특성을 갖는 (16,10)부호의 생성행렬을 얻게 된다. 이와 같은 과정은 도 4에 도시하고 있다.First, the generation matrix of the (32,10) code is punctured to obtain the generation matrix of the (20,10) code having an optimal Hamming weight distribution with an optimal, i.e. maximum d min . From the obtained optimal matrix for generating (20,10) codes, a matrix of (18,10) codes having an optimal Hamming weight distribution with an optimal, i.e. maximum d min , is obtained through a puncturing process. By applying the same method, the generation matrix of the (18,10) code is punctured to obtain the generation matrix of the (16,10) code having the optimal, that is, the maximum d min and optimal Hamming weight distribution. This process is shown in FIG.

도 4는 본 발명의 또 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드 생성 행렬로부터 (20, 10) 코드 생성 행렬을 생성하고, 생성된 (20, 10) 코드 생성 행렬을 이용하여 (18, 10) 코드 생성 행렬을, 그리고 생성된 (18, 10) 코드 생성 행렬을 이용하여 (16, 10) 코드 생성 행렬을 각각 생성하는 방식을 설명하기 위한 도면이다.4 generates a (20, 10) code generation matrix from a basic code generation matrix having a form (32, 10) according to another embodiment of the present invention, and uses the generated (20, 10) code generation matrix. To generate a (16, 10) code generation matrix using the (18, 10) code generation matrix and the generated (18, 10) code generation matrix.

좀더 자세히 설명하면 다음과 같다. (32,10)부호의 생성행렬을 천공하여, (20, 10)부호의 생성행렬을 얻고, 상기 (20,10) 부호의 생성행렬에서 2개의 열을 천공하여 최대 d min 을 갖는 (18,10)부호의 생성행렬인 10*18 행렬을 얻고, 여기서 추가로 2개의 열을 천공하여 역시 최대 d min 을 갖는 (16,10) 부호의 생성행렬 10*16 생성행렬을 얻는다.In more detail, Puncturing a generation matrix of (32,10) code to obtain a generation matrix of code (20, 10), puncturing two columns in the generation matrix of code (20, 10) and having a maximum d min (18, 10) Obtain a 10 * 18 matrix which is a generation matrix of code, and further puncture two columns to obtain a 10 * 16 generation matrix of (16,10) code which also has a maximum d min .

위와 같은 방법을 통해 구성된 생성행렬은 최대한 같은 부분을 공유하므로, 생성행렬에서 공통인 부분이 많은 특징을 가지는 장점이 있다. 한편, (16,10)부호의 최대 d min 은 4로 알려져 있는데, 상기 방법 3을 통해서 생성 가능한 부호의 최대 d min 은 3이다. 따라서, 상기 방법 3으로 생성행렬을 구성하면 (16,10) 부호의 성능이 나빠지게 되는 단점이 생긴다.Since the generation matrix constructed by the above method shares the same part as much as possible, there is an advantage that the common part of the generation matrix has many features. On the other hand, the maximum d min of the (16,10) code is known as 4, the maximum d min of the code that can be generated by the method 3 is 3. Therefore, when the generation matrix is constructed by the method 3, the performance of the (16, 10) code is deteriorated.

한편, 이러한 단점을 개선하기 위해서, 우선 (18,10) 부호와 (16,10) 부호의 생성순서를 바꾸어 보는 것을 제안한다 (이하 "방법 4" 라 함). 즉, 우선 (32,10) 부호의 생성행렬을 천공하여 최적의, 즉 최대 d min 을 갖고 최적의 해밍무게분포 특 성을 갖는 (20,10) 부호의 생성행렬을 얻는다. 상기 얻어진 최적의 (20,10) 부호의 생성행렬로부터 천공과정을 통하여 최적의, 즉 최대 d min 을 갖고 최적의 해밍무게분포 특성을 갖는 (16,10) 부호의 생성행렬을 구한다. 상기 (16,10)부호의 생성행렬을 구하기 위해 천공된 4개의 열중에서 2개의 열을 추가하여 (18,10)부호의 생성행렬을 구한다. 이와 같은 과정은 도 5에 도시된 바와 같다.On the other hand, in order to alleviate this disadvantage, first, it is proposed to change the generation order of the (18, 10) code and the (16, 10) code (hereinafter referred to as "method 4"). In other words, first, the generation matrix of the (32,10) code is punctured to obtain the generation matrix of the (20,10) code having the optimal Hamming weight distribution characteristic, that is, the maximum d min . From the obtained optimal matrix for generating (20,10) codes, a matrix for generating (16,10) codes having an optimal Hamming weight distribution with an optimal, i.e. maximum d min , is obtained through a puncturing process. In order to obtain the generation matrix of the (16,10) code, two columns are added from the four perforated columns to obtain the generation matrix of the (18,10) code. This process is as shown in FIG.

도 5는 본 발명의 또 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드 생성 행렬로부터 (20, 10) 코드 생성 행렬을 생성하고, 생성된 (20, 10) 코드 생성 행렬을 이용하여 (16, 10) 코드 생성 행렬을, 그리고 생성된 (16, 10) 코드 생성 행렬을 이용하여 (18, 10) 코드 생성 행렬을 각각 생성하는 방식을 설명하기 위한 도면이다.5 generates a (20, 10) code generation matrix from a basic code generation matrix having a form (32, 10) according to another embodiment of the present invention, and uses the generated (20, 10) code generation matrix To generate a (18, 10) code generation matrix using the (16, 10) code generation matrix and the generated (16, 10) code generation matrix.

좀더 자세히 설명해 보도록 한다. (32,10)부호의 생성행렬을 천공하여 (20,10) 부호의 생성행렬을 얻는다. 상기 (20,10) 부호의 생성행렬에서 먼저 4개의 열을 천공하여 최대 d min 을 갖는 (16, 10) 부호의 10*16 생성행렬을 얻는다. (18,10) 부호의 10*18 생성행렬은 (20, 10) 부호의 10*20 생성행렬에서 10*16 행렬을 만들기 위해 천공된 4개의 열 중 2개의 열을 10*16 행렬에 추가하여 생성하게 된다.Let's explain in more detail. The generation matrix of the (32,10) code is punctured to obtain the generation matrix of the (20,10) code. In the generation matrix of the (20,10) code, first, four columns are punctured to obtain a 10 * 16 generation matrix of the (16, 10) code having a maximum d min . The 10 * 18 generation matrix of the (18,10) sign adds two columns of four perforated columns to the 10 * 16 matrix to form a 10 * 16 matrix from the 10 * 20 generation matrix of the (20, 10) sign. Will be created.

여기서 추가되는 위치는 어디든지 성능에는 상관없으므로, 편의상 10*16 행렬의 제일 오른쪽에 추가하기로 한다. 또한, 여기서 (18, 10) 부호의 해밍무게분포 특성이 가장 최적인, 즉, d min 과 동일한 해밍무게값을 가지는 부호어의 수를 가장 적게 생성하는 10*18 행렬이 되도록 두 개의 열을 추가하는 것을 제안한다.The location added here does not matter performance, so for convenience we will add it to the far right of the 10 * 16 matrix. In addition, two columns are added so that the Hamming weight distribution characteristic of the (18, 10) code is the most optimal, that is, the 10 * 18 matrix which generates the least number of codewords having the same Hamming weight value as d min . Suggest to do.

이하 상술한 각각의 방법에 따른 구체적인 생성행렬에 대해 살펴본다.Hereinafter, a detailed generation matrix according to each method described above will be described.

여기서는 앞서 설명한 방법 1과 같이 (20,10) 부호, (18,10) 부호, 그리고 (16,10) 부호 각각의 생성행렬 모두 다 각각 독립적으로 (32,10) 부호의 생성행렬을 천공하여 생성하는 경우는 고려하지 않기로 한다. 왜냐하면, 상기의 부호 생성방법은 너무 많은 경우의 수가 존재하여서, 현실적으로 효과적인 부호 구성이 어렵기 때문이다. 따라서, 아래의 예들은 우선 (32,10) 부호의 생성행렬로부터 천공을 통해 최적의 (20,10) 부호의 생성행렬을 구성하고, 상기 (20,10)부호의 생성행렬을 바탕으로 하여 (18,10)부호와 (16,10)부호의 생성행렬을 구성하는 경우(즉, 방법 2 내지 방법 4)만을 고려한다.Here, as in the method 1 described above, all the generation matrices of the (20,10) code, the (18,10) code, and the (16,10) code are independently generated by puncturing the generation matrix of the (32,10) code. The case will not be considered. This is because the code generation method described above has too many cases, making it difficult to construct an effective code in practice. Therefore, the following examples first construct an optimal generation matrix of (20,10) codes through puncturing from the generation matrix of (32,10) codes, and based on the generation matrix of (20,10) codes ( Consider only the case of constructing the 18,10) and (16,10) generation matrices (i.e., methods 2-4).

우선, (18,10)부호, (16,10)부호의 생성행렬 모두 독립적으로 (20,10)부호의 생성행렬로부터 천공하여 구성하는 상기 방법 2에 대해 살펴본다.First, the method 2 in which the generation matrixes of the (18, 10) code and the (16, 10) code are independently punctured from the generation matrix of the (20, 10) code will be described.

우선 (20,10) 부호의 생성행렬은 (32,10) 부호의 생성행렬을 천공하여 구성한다. 상기 최적의 (20,10)부호의 생성행렬은 본 발명의 제 1 측면에 따라 상기 도 1에 도시된 바와 같은 방법으로 얻게 되며, 총 360개의 최대 d min = 6인 (20,10) 부호의 생성행렬이 존재한다. (18,10) 부호의 생성행렬은 상기 최적의 (20,10) 부호의 생성행렬에서 2개의 열을 천공하여 생성되며, (16,10) 부호의 생성행렬도 상기 (20,10)부호의 생성행렬에서 4개의 열을 천공하여 생성된다. (18,10)부호와 (16,10)부호의 생성행렬 모두 다 각각 독립적으로 (20,10) 부호의 생성행렬로부터 천공되어 구성되었으므로, 두 부호간의 공통 천공 패턴의 개수는 매번 달라질 수 있다.First, the generation matrix of the (20,10) code is constructed by puncturing the generation matrix of the (32,10) code. Generating the matrix of optimum (20,10) code is obtained in the same manner shown in FIG. 1 according to a first aspect of the invention, a total of 360 maximum d min = 6 the (20,10) code There is a generation matrix. The generation matrix of the (18,10) code is generated by puncturing two columns in the optimal generation matrix of the (20,10) code, and the generation matrix of the (16,10) code is also defined by the (20,10) code. It is created by drilling four columns in the generation matrix. Since both (18,10) and (16,10) generation matrices are each independently punctured from (20,10) generation matrices, the number of common puncturing patterns between the two codes may vary each time.

더욱 자세히 살펴보면 다음과 같다. (18,10) 부호의 생성행렬을 위해 (20,10) 부호로부터의 천공패턴은 총 360×=68,400 개 가 존재하며, 이 중 최대 d min 은 4이다. 상기 최대 d min = 4를 갖고 해밍무게분포 특성이 최적인, 즉 d min 과 동일한 해밍무게 값을 가지는 부호어의 수를 가장 적게 생성하는 최적의 (18,10) 부호의 생성행렬은 총 700개가 존재한다. 이 같은 최적의 (18,10)부호의 생성행렬의 해밍무게분포는 다음과 같다.In more detail, For the generation matrix of the (18,10) code, the perforation pattern from the (20,10) code totals 360 × There are = 68,400, of which the maximum d min is 4. The maximum number of generation matrices of (18,10) codes having the maximum d min = 4 and the optimal Hamming weight distribution characteristic, that is, the smallest number of codewords having the same Hamming weight value as d min is 700. exist. The Hamming weight distribution of this optimal (18,10) generation matrix is

[수학식 6]&Quot; (6) &quot;

Figure 112008503929415-pat00045
Figure 112008503929415-pat00045

이 때, 상기 수학식 6의 해밍무게분포를 갖는 10*18 생성행렬 구성을 위해 이용되는 10*20 생성행렬은 다음 두 가지의 해밍무게분포를 갖는다.At this time, the 10 * 20 generation matrix used for constructing the 10 * 18 generation matrix having the Hamming weight distribution of Equation 6 has the following two Hamming weight distributions.

[수학식 7][Equation 7]

Figure 112008503929415-pat00046
Figure 112008503929415-pat00046

[수학식 8][Equation 8]

Figure 112008503929415-pat00107
Figure 112008503929415-pat00107

(16,10) 부호의 생성행렬의 경우에는 (20,10) 부호로부터의 천공패턴은 총 360×

Figure 112008503929415-pat00108
=1,744,200 개가 존재하며, 이 중 최대 d min 은 4이다. 상기 최대 d min =4 이고, 해밍무게분포 특성이 최적인, 즉 d min 과 동일한 해밍무게 값을 가지는 부호어의 수를 가장 적게 생성하는 최적의 (16,10) 부호의 생성행렬은 총 40개가 존재한다. 이 같은 최적의 (16, 10)부호의 생성행렬의 해밍무게분포는 다음과 같다.In the case of the generation matrix of the (16,10) code, the puncturing pattern from the (20,10) code is 360 ×.
Figure 112008503929415-pat00108
There are = 1,744,200, of which the maximum d min is 4. The maximum generation matrix of (16,10) codes having the maximum d min = 4 and the smallest number of codewords having optimal Hamming weight distribution characteristics, that is, having the same Hamming weight value as d min , has a total of 40 exist. The Hamming weight distribution of this optimal (16, 10) generation matrix is

[수학식 9][Equation 9]

Figure 112008503929415-pat00109
Figure 112008503929415-pat00109

상기 수학식 9의 해밍무게분포를 갖는 (16,10) 부호의 생성행렬 구성을 위해 이용되는 10*20 생성행렬은 다음과 같은 해밍무게분포를 갖는다.The 10 * 20 generation matrix used for constructing the generation matrix of the (16,10) code having the Hamming weight distribution of Equation 9 has the following Hamming weight distribution.

[수학식 10][Equation 10]

Figure 112008503929415-pat00110
Figure 112008503929415-pat00110

아래 표 22는 상기 수학식 6의 10*18 생성행렬의 예, 표 23은 상기 수학식 9의 해밍무게분포를 따르는 10*16 생성행렬의 한 예이다.Table 22 below is an example of the 10 * 18 generation matrix of Equation 6, and Table 23 is an example of the 10 * 16 generation matrix following the Hamming weight distribution of Equation 9.

[표 22]Table 22

Figure 112008503929415-pat00050
Figure 112008503929415-pat00050

Figure 112008503929415-pat00051
Figure 112008503929415-pat00051

[표 23]TABLE 23

Figure 112008503929415-pat00111
Figure 112008503929415-pat00111

상기 수학식 6 또는 수학식 9와 같은 해밍무게분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 생성행렬들은 최소거리 측면에서 각각 오류 정정 능력이 모두 동일한 특성을 갖는다. 더욱 자세히 설명하면 다음과 같다. 상기 수학식 6의 해밍무게분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 10*18 행렬들은 오류 정정 능력이 모두 동일하므로, 어떤 행렬을 사용하더라도 무관하다. 그리고, 상기The generation matrices generated by all the perforation patterns having the Hamming weight distribution as shown in Equation 6 or Equation 9 have the same error correction capability in terms of minimum distance. More detailed description is as follows. Since 10 * 18 matrices generated by all puncturing patterns having the characteristics of the Hamming weight distribution of Equation 6 are all equal in error correction capability, any matrix may be used. And,

수학식 9의 무게 분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 10*16 행렬들 역시 오류 정정 능력이 모두 동일하므로, 이들 중 아무 행렬을 사용하더라도 무관하다.Since the 10 * 16 matrices generated by all puncturing patterns having the characteristics of the weight distribution of Equation 9 also have the same error correction capability, any of these matrices may be used.

지금까지 살펴본 (18,10)부호와 (16,10)부호의 해밍무게분포 특성을 보이는 생성행렬과 상기 생성행렬을 나타내기 위한 천공패턴을 자세히 살펴보자. 더욱 자세하게는 해밍무게분포 별로 살펴보도록 한다. 전수조사 방식에 의해 찾은 천공패턴은 다음과 같다.Let's take a closer look at the generation matrix showing the Hamming weight distribution of (18,10) and (16,10) and the perforation pattern to represent the generation matrix. More specifically, let's take a look at each Hamming weight distribution. The perforation pattern found by the total inspection method is as follows.

(18,10) 부호의 생성행렬 중에서 상기 수학식 6의 해밍무게분포를 나타내는 천공패턴은 700개가 존재하며, 각각은 상술한 본 출원의 우선권 주장의 기초가 되는 미국 가출원 제 61/016,492 호의 Appendix에 개시되어 있다.There are 700 perforation patterns representing the Hamming weight distribution of Equation 6 in the generation matrix of (18,10) codes, each of which is described in the appendix of US Provisional Application No. 61 / 016,492, which is the basis of the above-mentioned claim of priority of the present application. Is disclosed.

여기서 (18,10) 부호의 생성행렬은 (20,10) 부호의 생성행렬을 천공하여 만들어졌고, (20,10) 부호의 생성행렬은 우선 (32,10) 부호의 생성행렬을 천공하여 만들어졌음에 유의해야 한다. 따라서 우선 (32,10) 부호의 생성행렬에서 (20,10) 부호의 생성행렬 구성을 위한 천공을 한 후에, (20,10)부호의 생성행렬에서 (18,10)부호의 생성행렬 구성을 위한 천공을 수행하게 된다.Here, the generation matrix of the (18,10) code is made by puncturing the generation matrix of the (20,10) code, and the generation matrix of the (20,10) code is first made by drilling the generation matrix of the (32,10) code. It should be noted that Therefore, first, the perforation for constructing the generation matrix of the (20,10) code is performed in the generation matrix of the (32,10) code, and then the generation matrix of the (18,10) code is constructed in the generation matrix of the (20,10) code. Perforation will be performed.

한편 (16,10) 부호의 생성행렬 중에서 상기 수학식 9의 해밍무게분포를 나타내는 천공패턴은 40개가 존재한다. 이 40개의 패턴 역시 상기 미국 가출원 제61/016,492 호의 Appendix에 개시되어 있다. 여기서 (16,10)부호의 생성행렬은 (20,10)부호의 생성행렬을 천공하여 만들어 졌고, (20,10)부호의 생성행렬은 우선 (32,10)부호의 생성행렬을 천공하여 만들어 졌음에 유의해야 한다. 따라서 우선 (32,10)부호의 생성행렬에서 (20,10)부호의 생성행렬 구성을 위한 천공을 한 후에, 또한 (20,10)부호의 생성행렬에서 (16,10)부호의 생성행렬을 구성하게 된다On the other hand, there are 40 puncturing patterns representing the Hamming weight distribution of Equation 9 in the generation matrix of the (16,10) code. These 40 patterns are also disclosed in the Appendix to US Provisional Application No. 61 / 016,492. Here, the generation matrix of (16,10) is made by puncturing the generation matrix of (20,10), and the generation matrix of (20,10) is first made by puncturing the generation matrix of (32,10). It should be noted that Therefore, first, the perforation for constructing the generation matrix of the (20,10) code is performed in the generation matrix of the (32,10) code, and the generation matrix of the (16,10) code is also generated in the generation matrix of the (20,10) code. Make up

다음으로, (20,10) 부호의 생성행렬을 천공하여 (16,10) 부호의 생성행렬을 생성하고, 상기 (16,10) 부호의 생성행렬을 위해 천공된 4개의 열에서 2개의 열을 선택하여 (16,10) 부호의 생성행렬에 첨가하여 (18,10)부호의 생성행렬을 생성하는 상기 방법 4에 대해 살펴본다.Next, the generation matrix of the (16,10) code is generated by puncturing the generation matrix of the (20,10) code, and two columns from the four columns punched for the generation matrix of the (16,10) code are generated. A method 4 for generating a generation matrix of the (18,10) code by selecting and adding it to the generation matrix of the (16,10) code will be described.

우선 (20,10) 부호의 생성행렬은 (32,10) 부호의 생성행렬을 천공하여 생성한다. 상기 최적의 (20,10) 부호의 생성행렬은 본 발명의 제 1 측면에서 설명한 도 1의 방법으로 얻게 되며, 총 360개의 최대 d min =6인 (20,10)부호의 생성행렬이 존재한다. (16,10) 부호의 생성행렬은 상기 최적의 (20,10)부호의 생성행렬에서 4개의 열을 천공하여 생성된다. 상기 천공된 4개의 열중에서 2개의 열을 선택하여 (16,10) 부호의 생성행렬에 추가하여 (18,10)부호의 생성행렬을 생성한다.First, the generation matrix of the (20,10) code is generated by puncturing the generation matrix of the (32,10) code. The optimal generation matrix of the (20,10) code is obtained by the method of FIG. 1 described in the first aspect of the present invention, and there are a total of 360 generation matrices of the (20,10) code with d min = 6. . A generation matrix of (16,10) codes is generated by puncturing four columns of the optimal generation matrix of (20,10) codes. Two columns are selected from the four perforated columns and added to the generation matrix of the (16,10) code to generate the generation matrix of the (18,10) code.

더욱 자세히 살펴보면 다음과 같다. (16,10)부호는 본 발명의 제 1 측면에서 설명한 방법으로 얻은 360개의 최대 d min =6인 10*20 행렬에서 상술한 방법을 통해, 최대 d min =4이고 최적의 해밍무게분포 특성인 상기 수학식 9를 따르는, 즉 d min 과 동일한 해밍 무게값을 가지는 부호어의 수를 가장 적게 생성하는 최적의 (16,10) 부호의 생성행렬 총 40개를 생성할 수 있다.In more detail, (16,10) denotes the maximum d min = 4 and optimal Hamming weight distribution characteristics through the above-described method in the 10 * 20 matrix having the maximum d min = 6 of 360 obtained by the method described in the first aspect of the present invention. A total of 40 generating matrixes of optimal (16,10) codes that generate the least number of codewords having the same Hamming weight as d min according to Equation (9) can be generated.

상기 생성된 40개의 10*16 행렬로부터 최적의 (18,10)부호의 생성행렬을 생성하게 되게 된다. 좀더 상세히 설명하면, 최적의 (18,10) 부호의 생성행렬은 (20,10) 부호의 생성행렬에서 10*16 행렬을 생성하기 위해 천공된 4개의 열 중에서 2개의 열을 선택하여 (16,10)부호의 생성행렬의 오른쪽에 추가함으로써 생성할 수 있다. 참고로, 여기서는 편의를 위해 (16,10)부호의 생성행렬의 제일 오른쪽에 추가하였으나, 실제로는 어느 부분에 추가하더라도 성능에는 영향이 없게 된다.From the 40 10 * 16 matrices generated above, an optimal matrix of generations (18, 10) is generated. In more detail, an optimal matrix of generations of (18,10) codes is selected by selecting two columns from four perforated columns to generate a 10 * 16 matrix from a generation matrix of (20,10) codes. 10) Can be generated by adding to the right of the generation matrix of the code. For reference, for the sake of convenience, it is added to the far right of the generation matrix of the (16,10) code, but in practice, it does not affect performance.

따라서, 추가하는 부분에 따라서 다양한 변형이 가능하다. 한편, 추가하는

Figure 112008503929415-pat00112
개의 조합 중, (18,10)부호의 해밍무게분포 특성이 최적( d min 과 동일한 해밍 무게값을 가지는 부호어의 수가 가장 적은)인 10*18 행렬을 생성할 수 있는 두 개의 열을 선택한다. 이 같은 방법으로 최대 d min =4 인 총 40×
Figure 112008503929415-pat00113
=240 개의 생성행렬 중에서, 해밍무게분포 특성이 최적인 행렬은 160개가 존재하며, 상기 최적의 생성행렬로부터 얻어지는 해밍무게분포는 다음 수학식 11과 같다.Therefore, various modifications are possible according to the part to add. Meanwhile, to add
Figure 112008503929415-pat00112
, Choose two columns that can produce a 10 * 18 matrix with the optimal Hamming weight distribution of (18,10) (the fewest number of codewords with Hamming weight equal to d min ). . A total of 40 × up to d min = 4 in this same way
Figure 112008503929415-pat00113
Of the 240 generation matrices, there are 160 matrices with optimal Hamming weight distribution characteristics, and the Hamming weight distribution obtained from the optimal generation matrix is expressed by Equation 11 below.

[수학식 11][Equation 11]

Figure 112008503929415-pat00053
Figure 112008503929415-pat00053

이 경우, 상기 수학식 11의 해밍무게분포를 갖는 (18, 10) 부호의 생성행렬 구성을 위해 이용되는 상위 10*20 생성행렬은 다음과 같은 해밍무게분포를 갖는다.In this case, the upper 10 * 20 generation matrix used for constructing the generation matrix of the (18, 10) code having the Hamming weight distribution of Equation 11 has the following Hamming weight distribution.

[수학식 12][Equation 12]

Figure 112008503929415-pat00114
Figure 112008503929415-pat00114

상기 수학식 11의 해밍무게분포 특성을 갖는 (18, 10)부호의 생성행렬 160개가 존재하는데, 아래 표 24는 그 중 한 예이다.There are 160 generation matrices of (18, 10) code having Hamming weight distribution characteristics of Equation 11, and Table 24 below is one example.

[표 24]TABLE 24

Figure 112008503929415-pat00055
Figure 112008503929415-pat00055

Figure 112008503929415-pat00056
Figure 112008503929415-pat00056

상기 수학식 11과 같은 해밍무게분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 생성행렬들은 최소거리 측면에서 각각 오류 정정 능력이 모두 동일한 특성을 갖는다. 따라서, 상기 수학식 11의 해밍무게분포의 특성을 갖는 모든 천공 패턴에 의해 생성된 10*18 행렬들은 오류 정정 능력이 모두 동일하므로, 어떤 행렬을 사용하더라도 무관하다.The generation matrices generated by all puncturing patterns having the Hamming weight distribution as shown in Equation 11 have the same error correction capability in terms of minimum distance. Accordingly, the 10 * 18 matrices generated by all puncturing patterns having the characteristics of the Hamming weight distribution of Equation 11 have the same error correction capability, and thus, any matrix may be used.

실제로 동일한 해밍무게분포를 보이는 생성행렬의 개수는 다수개가 존재한다. 최적의 (16,10) 부호를 위한 생성행렬을 나타내기 위해서 필요한 천공패턴의 총수는 40개이며, 상기 천공패턴은 상술한 방법 2에 따른 예와 동일하다.In fact, there are a number of generation matrices with the same Hamming weight distribution. The total number of puncturing patterns required to represent the generation matrix for the optimal (16, 10) code is 40, and the puncturing patterns are the same as the example according to the method 2 described above.

한편, 본 방법에 따른 예 에서, 즉 생성행렬의 열의 천공과 추가(adding) 두 가지의 과정을 거치는 방법을 고려한 이유는 최대 d min =4 를 갖는 (16,10)부호의 생성이 우선 고려되어야 하기 때문이다.On the other hand, in the example according to the present method, that is, considering the method of performing two processes of puncturing and adding the columns of the generation matrix, the generation of the (16,10) code having a maximum d min = 4 should be considered first. Because.

만일 상기 방법 3 과 같이, 우선 360개의 최대 d min =6 인 10*20 행렬에서 2개의 열을 먼저 천공하여 최대 d min =4이고 최적의 해밍무게분포 특성인 상기 수학식 6을 따르는, 즉 d min 과 동일한 해밍무게 값을 가지는 부호어의 수를 가장 적게 생성하는 최적의 (18,10)부호의 생성행렬 700개에서 다시 2개의 열을 추가로 천공하여 (16,10) 부호의 생성행렬을 생성하는 경우를 고려해보자. 이 경우에는 (16,10) 부호의 최대 d min 은 3이 된다. 이와 같은 방법을 통해 생성된 최대 d min =3 인 (16,10)부호의 생성행렬 중, 해밍무게분포 특성이 최적인, 즉 d min 과 동일한 해밍무게 값을 가지는 부호어의 수를 가장 적게 생성하는 (16,10)부호의 생성행렬은 총 2,180개가 존재하며, 이 때 해밍무게분포는 다음과 같다.If, as in the above method 3, first perforate two columns in a 10 * 20 matrix with 360 max d min = 6, the following equation (6) is obtained, where d min = 4 and an optimal Hamming weight distribution: d In addition, we generate another (16,10) matrix by drilling two more columns from the optimal matrix of (18,10) codes that produce the least number of codewords with the same Hamming weight as min . Consider the case of creation. In this case, the maximum d min of the (16,10) sign is three. Among the generation matrices of (16,10) codes with the maximum d min = 3 generated by the above method, the smallest number of codewords having the best Hamming weight distribution characteristic, that is, having the same Hamming weight value as d min is generated. There are 2,180 generation matrices of (16,10). The Hamming weight distribution is as follows.

[수학식 13][Equation 13]

Figure 112008503929415-pat00057
Figure 112008503929415-pat00057

상술한 바와 같이 방법 3을 통해 생성된 (16,10) 부호는 최대 d min 이 3이다. 상기 최대 d min 을 늘여서, 최대 d min =4 인 (16,10)부호의 생성행렬을 생성하기 위해서는, 우선 상기 수학식 11의 해밍무게분포 특성을 갖는 160개의 (18,10) 부호의 생성행렬에서 가장 오른 쪽에 추가된 2개의 열을 천공 하면 된다. 이러한 방법을 구조적으로 나타낸 것이 방법 4이다.As described above, the sign (16,10) generated through the method 3 has a maximum d min of three. Stretches the maximum d min, a maximum d min = 4 a (16,10), to make the generation matrix of the code, first generation of the 160 (18,10) code having a Hamming weight distribution properties of the matrix equation (11) Just drill the two columns to the right of the. Method 4 structurally illustrates this method.

즉 정리하면 다음과 같다. 방법 2는 (20,10)부호, (18,10)부호, (16,10)부호 각각의 경우에 대해 독립적인 생성행렬이 필요한 반면에, 방법 4는 10*16, 10*18 행렬이 하나의 10*20 행렬로부터 파생될 수 있는 장점이 있다.In short, it is as follows. Method 2 requires independent generation matrices for each of the cases (20,10), (18,10), and (16,10), whereas method 4 has one 10 * 16 and 10 * 18 matrix. There is an advantage that can be derived from the 10 * 20 matrix of.

이하에서는 상술한 내용을 바탕으로 본 발명의 제 1 측면에서 설명한 (20, A) 코드 생성 행렬에서와 같이 설명하기로 한다.Hereinafter, based on the above description, it will be described as in the (20, A) code generation matrix described in the first aspect of the present invention.

우선 설명의 편의를 위하여 상술한 설명에서 (32, 10) 구조의 기본 생성행렬로 이용하였던 상기 표 2의 생성 행렬은 다음 표 25와 같이 나타내는 것이 가능함은 상술한 바와 같다. 즉, 표 25는 상기 표 2를 세워서 표시한 것뿐이고 동일하다.First, for convenience of description, the generation matrix of Table 2 used as the default generation matrix of the structure (32, 10) in the above description may be represented as shown in Table 25 below. That is, Table 25 is the same as that shown in the above Table 2 standing up.

[표 25]TABLE 25

Figure 112008503929415-pat00058
Figure 112008503929415-pat00058

Figure 112008503929415-pat00059
Figure 112008503929415-pat00059

이를 이용한 실제 부호화 과정을 좀더 자세히 나타내 보자. 우선 k개의 정보 비트가 a0, a1 , a2 , a3 , a4 , … , ak-1 이라고 하면, 상기 정보 비트는 본 발명의 각 실시형태에 따른 코드 생성행렬을 사용하여 부호화 되어 비트 bi들이 출력되고, 상기 출력 비트들은 부호어를 구성한다. 이때 부호화된 비트 bi들을 수식적으로 표현하면 다음과 같다.Let us show in more detail the actual encoding process using it. First, k information bits are a 0 , a 1 , a 2 , a 3 , a 4 ,. , a k-1 , the information bits are encoded using a code generation matrix according to each embodiment of the present invention to output bits b i , and the output bits constitute a codeword. In this case, the encoded bits b i are expressed as follows.

[수학식 14][Equation 14]

Figure 112008503929415-pat00115
Figure 112008503929415-pat00115

이제, 부화비트의 수가 20비트인 경우와 18비트인 경우 모두에 최적인 부호의 생성 행렬을 고려해보자. 이러한 경우는 부호화 비트의 수가 가변적인 경우를 위한 부호설계이다. 즉, 앞서 언급된 방법들을 통해 찾은 10*20, 10*18 행렬들 중 각각 d min 이 최대이고, 해밍무게분포 특성이 가장 최적인, 즉 동일한 해밍무게 값을 가지는 부호어의 수를 가장 적게 생성하는 (20, 10), (18, 10) 부호의 생성행렬들을 찾아 보자. 이렇게 찾는 방법은 앞서 살펴본 방법 4를 기반으로 하기로 한다. 이때 생성된 (20,10) 부호의 최소거리는 6이며 해밍무게 분포는 아래 수학식 15와 같다. 또한, 생성된 (18,10)부호의 최소거리는 4이며 해밍무게 분포는 아래 수학식 16과 같다.Now consider the generation matrix of the sign that is optimal for both the 20-bit and 18-bit number of hatching bits. This case is a code design for the case where the number of encoded bits is variable. That is, among the 10 * 20 and 10 * 18 matrices found through the aforementioned methods, d min is the largest and the Hamming weight distribution has the most optimal characteristic, that is, generates the least number of codewords having the same Hamming weight value. Let's find the generation matrices of (20, 10) and (18, 10) signs. This method is based on Method 4 discussed earlier. The minimum distance of the generated (20,10) sign is 6 and the Hamming weight distribution is expressed by Equation 15 below. In addition, the minimum distance of the generated (18,10) code is 4 and the Hamming weight distribution is expressed by Equation 16 below.

[수학식 15][Equation 15]

Figure 112008503929415-pat00061
Figure 112008503929415-pat00061

[수학식 16][Equation 16]

Figure 112008503929415-pat00062
Figure 112008503929415-pat00062

상기 해밍무게 분포를 만족하는 최적 부호의 예로는 아래 표와 같다. (20,10) 부호를 위한 천공패턴은 상기 표 6에 나타낸 바와 같으며, 설명의 편의를 위해 아래 표 26으로서 다시 나타내었다.An example of an optimal code satisfying the Hamming weight distribution is shown in the following table. The perforation pattern for the (20,10) code is as shown in Table 6 above, and is shown again as Table 26 below for convenience of description.

[표 26]TABLE 26

Figure 112008503929415-pat00063
Figure 112008503929415-pat00063

즉, 상기 표 26은 상기 표 25의 총 32개의 행 중에서 12개의 행을 천공하여 (20,10) 부호를 만드는 천공패턴을 나타낸다. 상기 표 26에서 0은 천공된 행을 의미하며, 1은 사용되는 행을 의미한다. 한편 (18,10) 부호를 위한 천공패턴은 아래 표 27에 나타내어 있다.That is, Table 26 shows a puncturing pattern for puncturing 12 (20, 10) symbols out of a total of 32 rows in Table 25. In Table 26, 0 means perforated row and 1 means row used. On the other hand, the perforation pattern for the (18,10) code is shown in Table 27 below.

[표 27]TABLE 27

Figure 112008503929415-pat00064
Figure 112008503929415-pat00064

즉, 상기 표 27은 상기 표 26의 총 20개의 행 중에서 2개의 행을 더 천공하여 (18,10)부호를 만드는 천공패턴을 나타낸다. 따라서, 표 26의 생성행렬은 표 27의 생성행렬을 포함하는 구조를 갖게 된다. 상기 표 27에서 역시 0은 천공된 행을 의미하며, 1은 사용되는 행을 의미한다.That is, Table 27 shows a puncturing pattern for puncturing two more rows out of the total twenty rows in Table 26 to form the symbols (18, 10). Therefore, the generation matrix of Table 26 has a structure including the generation matrix of Table 27. Also in Table 27, 0 means perforated row and 1 means row used.

상기 표 26은 상기 표 27을 포함하는 구조를 가지므로 다음과 같이 통합하여 나타낼 수 있다.Since Table 26 has a structure including Table 27, the table 26 may be integrated as follows.

[표 28][Table 28]

Figure 112008503929415-pat00065
Figure 112008503929415-pat00065

Figure 112008503929415-pat00066
Figure 112008503929415-pat00066

한편, 표 28의 행의 순서는 3GPP에서 사용되는 TFCI 부호화를 위한 행렬 순서와는 약간의 차이가 있다. 따라서, 표 28의 행의 순서를 TFCI 부호 행렬과 같이 맞추면 다음 표 29와 같다.On the other hand, the order of the rows in Table 28 is slightly different from the matrix order for TFCI encoding used in 3GPP. Therefore, if the order of the rows in Table 28 is matched with the TFCI code matrix, it is as in Table 29 below.

[표 29][Table 29]

Figure 112008503929415-pat00067
Figure 112008503929415-pat00067

Figure 112008503929415-pat00068
Figure 112008503929415-pat00068

상기 표 29는 상기 표 28과 행의 순서만 변화가 있으며, 다른 사항은 완전히 동일하다. 이런 경우는 부호화 이론에 의해서 부호특성은 완전히 동일한 특성을 갖게 된다. 다만, 상기 표 29와 같은 표현방법의 이점은 (20,10)부호에서 (18,10) 부호로 천공 시에 마지막 2비트를 천공하여 생성 가능한 이점이 있다. 자세히 설명하면, 일단 (20,10)부호를 만든 후에, 부호화 비트 20개 중에서 맨 마지막 2개를 천공하면 바로 (18,10)부호가 생성되게 된다. 즉, (20,10)부호가 (18,10)부호를 포함하는 구조의 특성을 이용하여 부호생성시에 편리한 점이 있게 된다.In Table 29, only the order of rows in Table 28 is changed, and the other matters are exactly the same. In this case, the coding characteristics have exactly the same characteristics due to the coding theory. However, the advantage of the representation method as shown in Table 29 has the advantage that can be generated by puncturing the last two bits when puncturing from (20,10) code (18,10) code. In detail, once the (20, 10) code is generated, the last two of the 20 encoded bits are punctured to generate the (18, 10) code. In other words, the (20,10) code is convenient when generating a code by using the characteristic of the structure including the (18,10) code.

한편, 본 발명의 제 1 측면의 제 2 단계에서는 (20, 10) 코드 생성행렬로부터 4개의 열을 추가하여 (20, 14) 코드 생성행렬로 확장하는 내용을 다루고 있다. 이에 따르면, (20, 14) 코드 생성행렬로서 상기 표 11와 같은 생성행렬 형태를 제안하고 있다. 또한, 각 정보 비트 길이에 따라 최대 최소거리 특성은 상기 표 10과 같음은 상술한 바와 같다. 추가적으로 20비트 부호화 길이뿐만 아니라 18비트 부호화 길이에 대해서도 상기 표 11의 구조를 이용하는 경우 최대 최소거리 특성을 나 타내면 다음과 같다.On the other hand, the second step of the first aspect of the present invention deals with the addition of four columns from the (20, 10) code generation matrix to the (20, 14) code generation matrix. According to this, a generation matrix form as shown in Table 11 is proposed as a (20, 14) code generation matrix. In addition, the maximum minimum distance characteristic according to each information bit length is as shown in Table 10 above. In addition, when using the structure of Table 11 for the 18-bit encoding length as well as the 20-bit encoding length, the maximum minimum distance characteristics are as follows.

[표 30][Table 30]

Figure 112008503929415-pat00069
Figure 112008503929415-pat00069

한편, 상기 표 11을 기반으로 한 부호의 실제 채널에서의 성능은 다음과 같다.Meanwhile, the performance in the actual channel of the code based on Table 11 is as follows.

도 6 및 도 7은 본 발명의 일 실시형태에 따라 제안된 (20, A), (18, A) 부호화 성능을 도시한 도면이다.6 and 7 illustrate proposed (20, A) and (18, A) coding performances according to an embodiment of the present invention.

구체적으로, (20,10) 부호와 (18,10)부호의 AWGN에서의 성능은 도 6에 나타낸 바와 같으며, 다양한 정보 비트 길이를 갖는 (20,k) 부호의 성능은 도 7에 나타내고 있다.Specifically, the performance of the (20,10) code and the (18,10) code in the AWGN is as shown in FIG. 6, and the performance of the (20, k) code having various information bit lengths is shown in FIG. .

한편, 본 발명의 제 1 측면의 제 3 단계에서 상기 표 19는 모든 성분이 "1"인 기본 시퀀스가 가장 왼쪽에 위치하도록 열의 위치가 변경된 형태의 생성행렬을 제안하고 있다. 따라서, (18, 14) 구조의 생성 행렬 역시 이 구조에 따라 다음과 같이 변형될 수도 있다.Meanwhile, in the third step of the first aspect of the present invention, Table 19 proposes a generation matrix in which the positions of the columns are changed so that the base sequence in which all components are "1" is located at the leftmost position. Therefore, the generation matrix of the structure (18, 14) may also be modified as follows according to this structure.

[표 31][Table 31]

Figure 112008503929415-pat00070
Figure 112008503929415-pat00070

Figure 112008503929415-pat00071
Figure 112008503929415-pat00071

즉, (18, 14) 코드 생성행렬은 상기 표 19의 생성행렬에서 마지막 2개 행을 천공한 형태를 가질 수 있다.That is, the (18, 14) code generation matrix may have a form in which the last two rows of the generation matrix of Table 19 are punctured.

(20, 14) 생성행렬 및 (18, 14) 생성행렬을 상기 표 19 및 표 31과 같이 이용할 경우 정보 비트 수에 따른 최소거리 특성은 다음과 같다.When the (20, 14) generation matrix and the (18, 14) generation matrix are used as shown in Tables 19 and 31, the minimum distance characteristics according to the number of information bits are as follows.

[표 32]Table 32

Figure 112008503929415-pat00072
Figure 112008503929415-pat00072

원래 (32,10) 부호로부터 천공 하여 (20,10)부호를 만드는데 있어서, (20,10) 부호뿐만이 아니라, (18,10) 부호 및 (16,10) 부호에서도 좋은 성능을 보이도록 설계하였다. 표 28에서 나타내는 (32,10) 부호는 원래 사용되는 표 29의 3GPP release99 (32,10) TFCI 부호에서 행들만 서로 교환된 부호이므로 부호이론 관점에서 동일한 부호이다. 다만, 천공 관점에서 인덱스가 서로 달라질 수 있어서 이를 다음 표들과 같이 표시할 수 있다.In order to make the (20,10) code by puncturing from the (32,10) code, it was designed to show good performance not only in the (20,10) code but also in the (18,10) code and the (16,10) code. . The (32,10) code shown in Table 28 is the same code from the viewpoint of sign theory because only the lines are interchanged in the 3GPP release99 (32,10) TFCI code of Table 29 originally used. However, indices may be different from each other in terms of perforation, and thus may be displayed as shown in the following tables.

[표 33][Table 33]

Figure 112008503929415-pat00073
Figure 112008503929415-pat00073

[표 34]Table 34

Figure 112008503929415-pat00116
Figure 112008503929415-pat00116

[표 35]Table 35

Figure 112008503929415-pat00117
Figure 112008503929415-pat00117

상기 표 33은 3GPP release 99의 (32,10) TFCI 부호의 행 인덱스 기준으로 좋은 성능을 보이는 (20,10), (18,10) 및 (16,10) 부호의 펑처링위치를 표시하였다. 또한, 상기 표 34는 생성된 (20, 10) 부호의 인덱스를 기준으로 (18, 10) 및 (16, 10) 부로의 천공 위치를 나타내고 있다. 또한, 상기 표 35는 (32, 10) 형태를 가지는 상기 표 28의 인덱스를 기준으로 천공 패턴을 나타낸 것이다.Table 33 shows puncturing positions of (20,10), (18,10), and (16,10) codes that perform well based on the row index of the (32,10) TFCI code of 3GPP release 99. Table 34 also shows the puncturing positions of the (18, 10) and (16, 10) parts based on the generated indexes of the (20, 10) codes. In addition, Table 35 shows the perforation pattern on the basis of the index of Table 28 having the form (32, 10).

한편, 아래 표 36은 최적의 전공 위치를 함께 표시한 기존 시퀀스 표이다.Meanwhile, Table 36 below is a conventional sequence table showing the optimal major positions together.

[표 36]TABLE 36

Figure 112008503929415-pat00076
Figure 112008503929415-pat00076

상기 표 36에서 (18,10)과 (16,10)의 천공 위치가 최대한 중첩되어 있음을 알 수 있다. 또한, 이때 최소거리 성능을 아래 표 37에 나타내었다.In Table 36, it can be seen that the puncture positions of (18,10) and (16,10) overlap as much as possible. In addition, the minimum distance performance is shown in Table 37 below.

[표 37]TABLE 37

Figure 112008503929415-pat00077
Figure 112008503929415-pat00077

상기 표 37에서 "20" 은 (20,k) 부호를 의미하고, "18 last two" 는 (20,k) 부호에서 맨 마지막 2행이 천공된 (18,k)부호를, "18 intermediate" 는 상기 표 36의 (20, k) 부호를 바탕으로 5번째와 18번째 행이 천공된 (18,k)부호를 의미한다. 또한 "16 last four" 는 (20,k) 부호에서 맨 마지막 4행이 천공된 (16,k) 부호를, "16 intermediate" 는 상기 표 36의 (20, k) 부호를 바탕으로 5번째, 7번째, 14번째와 18번째 행이 천공된 (16,k) 부호를 의미하고, "16 (first2+last2)" 는 매 처음 2행과 맨 마지막 2행이 천공된 (16,k)부호를 의미한다.In Table 37, "20" is (20, k) refers to the sign, and "18 last two" is a (20, k) the top of the last two lines of perforations (18, k) code from the code, "18 intermediate" Denotes a (18, k) code in which the fifth and eighteenth rows are punctured based on the (20, k) code in Table 36. In addition, "16 last four" is a (16, k) code in which the last 4 lines are punctured in the (20, k) code, and "16 intermediate" is the fifth, based on the (20, k) code in Table 36 above. The seventh, fourteenth and eighteenth lines represent the perforated (16, k) symbols, and "16 (first2 + last2)" represents the perforated (16, k) symbols for the first two rows and the last two rows. it means.

한편, (18, k) 부호와 (16, k) 부호를 위해 열의 순서를 바꾼 (n,k) 부호(n=20,18,16, k ≤ 14)에 대해 살펴본다.On the other hand, the (n, k) code (n = 20, 18, 16, k ≤ 14) is changed to the order of the columns for the (18, k) code and the (16, k) code.

아래 표 38은 (16,11)에서 부호의 성능을 끌어 올리기 위해서 10번째 기본 시퀀스 Mi,10와 11번째 기본 시퀀스 Mi,11를 서로 바꾼 경우의 기본 시퀀스 표이다.Table 38 below is a basic sequence table when the 10th basic sequence M i, 10 and the 11th basic sequence M i, 11 are interchanged to increase the performance of the sign at (16,11).

[표 38]TABLE 38

Figure 112008503929415-pat00078
Figure 112008503929415-pat00078

Figure 112008503929415-pat00079
Figure 112008503929415-pat00079

상기 표 38에 따를 경우 최소거리 성능은 아래 표 39에 나타내었다.According to Table 38, the minimum distance performance is shown in Table 39 below.

[표 39]TABLE 39

Figure 112008503929415-pat00080
Figure 112008503929415-pat00080

상기 표 39에서 (16,11)의 최소거리가 1에서 2로 늘어남을 알 수 있다.In Table 39, it can be seen that the minimum distance of (16,11) increases from 1 to 2.

이하에서는 (18, k) 부호와 (16, k) 부호를 위해 열의 순서를 바꾼 (n,k) 부호로서 n=20,18,16, k ≤ 15를 만족하는 경우에 대해 살펴본다.Hereinafter, a case in which n = 20, 18, 16, and k ≦ 15 is satisfied as a (n, k) code in which the order of columns is changed for the (18, k) code and the (16, k) code.

아래 표 40은 15개의 정보비트를 지원하기 위해 한 개의 기본 시퀀스가 추가된 (20,15) 생성행렬을 나타내고 있다.Table 40 below shows (20,15) generation matrix with one basic sequence added to support 15 information bits.

[표 40]TABLE 40

Figure 112008503929415-pat00081
Figure 112008503929415-pat00081

상기 표 40에서는 편의상 상기 표 38에 15번째 기본 시퀀스를 추가하였으나, 다른 (20, 14) 생성행렬을 나타내는 표에 추가되더라도 같은 성능을 보인다. 또한, 부호화된 비트를 천공하는 방법은 앞에서 소개된 다양한 방법 중 어느 것도 사용 가능 하며, 여기서는 그 중 일부를 사용한 경우의 예를 나타내었다.In Table 40, a fifteenth basic sequence is added to Table 38 for convenience, but the same performance is obtained even when added to a table representing another (20, 14) generation matrix. In addition, any of the various methods introduced above may be used as a method for puncturing the coded bits, and an example of using some of them is shown here.

상기 표 40의 예에서의 최소거리 특성을 아래 표 41에 나타내었다.The minimum distance characteristics in the example of Table 40 are shown in Table 41 below.

[표 41]Table 41

Figure 112008503929415-pat00082
Figure 112008503929415-pat00082

상술한 바와 같이 개시된 본 발명의 바람직한 실시형태에 대한 상세한 설명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시 형태를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.The detailed description of the preferred embodiments of the invention disclosed as described above is provided to enable any person skilled in the art to make and practice the invention. Although the above has been described with reference to the preferred embodiments of the present invention, those skilled in the art will variously modify and change the present invention without departing from the spirit and scope of the invention as set forth in the claims below. I can understand that you can.

따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여하려는 것이다.Accordingly, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

상술한 바와 같은 본 발명의 각 실시형태에 따른 채널 코딩 방법은 3GPP LTE 시스템에서 CQI 정보를 PUCCH를 통해 상향링크로 전송 시 수행하는 채널 코딩에 적 용되기에 적합하다. 그러나, 상술한 방법들은 이와 같은 3GPP LTE 시스템에 한정되어 적용될 필요는 없으며, 다양한 길이를 가질 수 있는 정보에 블록 코딩을 수행하는 임의의 통신 방식에 동일한 원리에 따라 적용될 수 있다.The channel coding method according to each embodiment of the present invention as described above is suitable to be applied to channel coding performed when transmitting CQI information in the uplink through the PUCCH in the 3GPP LTE system. However, the above-described methods do not need to be limited to such 3GPP LTE system, and may be applied according to the same principle to any communication scheme that performs block coding on information that may have various lengths.

도 1은 본 발명의 일 실시형태에 따라 (32, 10) TFCI 정보 코드로부터 효율적으로 (20, 10) 블록 코드를 생성하는 방법을 설명하기 위한 도면이다.1 is a diagram for explaining a method for efficiently generating a (20, 10) block code from a (32, 10) TFCI information code according to an embodiment of the present invention.

도 2는 본 발명의 일 실시형태에 따라 (20, 10), (18, 10) 및 (16, 10) 형태의 코드 생성 행렬을 각각 (32, 10) 형태를 가지는 기본 코드로부터 생성하는 방식을 설명하기 위한 도면이다.2 illustrates a method of generating code generation matrices of the form (20, 10), (18, 10), and (16, 10) from the basic codes having the form (32, 10), respectively, according to an embodiment of the present invention. It is a figure for demonstrating.

도 3은 본 발명의 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드로부터 (20, 10) 코드를 생성한 후, 이를 이용하여 (18, 10) 코드 및 (16, 10) 코드를 각각 생성하는 방식을 설명하기 위한 도면이다.Figure 3 generates (20, 10) code from the base code having the form (32, 10) according to another embodiment of the present invention, and then using the (18, 10) code and (16, 10) code Is a diagram for explaining a method of generating each.

도 4는 본 발명의 또 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드 생성 행렬로부터 (20, 10) 코드 생성 행렬을 생성하고, 생성된 (20, 10) 코드 생성 행렬을 이용하여 (18, 10) 코드 생성 행렬을, 그리고 생성된 (18, 10) 코드 생성 행렬을 이용하여 (16, 10) 코드 생성 행렬을 각각 생성하는 방식을 설명하기 위한 도면이다.4 generates a (20, 10) code generation matrix from a basic code generation matrix having a form (32, 10) according to another embodiment of the present invention, and uses the generated (20, 10) code generation matrix. To generate a (16, 10) code generation matrix using the (18, 10) code generation matrix and the generated (18, 10) code generation matrix.

도 5는 본 발명의 또 다른 일 실시형태에 따라 (32, 10) 형태를 가지는 기본 코드 생성 행렬로부터 (20, 10) 코드 생성 행렬을 생성하고, 생성된 (20, 10) 코드 생성 행렬을 이용하여 (16, 10) 코드 생성 행렬을, 그리고 생성된 (16, 10) 코드 생성 행렬을 이용하여 (18, 10) 코드 생성 행렬을 각각 생성하는 방식을 설명하기 위한 도면이다.5 generates a (20, 10) code generation matrix from a basic code generation matrix having a form (32, 10) according to another embodiment of the present invention, and uses the generated (20, 10) code generation matrix To generate a (18, 10) code generation matrix using the (16, 10) code generation matrix and the generated (16, 10) code generation matrix.

도 6 및 도 7은 본 발명의 일 실시형태에 따라 제안된 (20, A), (18, A) 부 호화 성능을 도시한 도면이다.6 and 7 illustrate the (20, A), (18, A) encryption performance proposed according to one embodiment of the present invention.

Claims (14)

20 개의 행(Row) 및 제 1 타입 정보 비트의 길이에 해당하는 A 개의 열(Column)을 포함하는 코드 행렬을 구성하는 하나 이상의 기본 시퀀스 ( (20, A) 코드의 기본 시퀀스(Basis Sequence)) 를 이용하여 상기 제 1 타입 정보 비트를 채널 코딩하는 방법에 있어서,One or more base sequences that form a code matrix comprising 20 rows and A columns corresponding to the length of the first type information bits (Basis Sequence of (20, A) Code) In the method for channel coding the first type of information bits using A 길이를 가지는 상기 제 1 타입 정보 비트를 상기 (20, A) 코드의 기본 시퀀스를 이용하여 채널 코딩을 수행하는 단계; 및 Performing channel coding the first type information bit having an A length using a basic sequence of the (20, A) code; And 상기 채널 코딩된 결과를 출력 시퀀스로서 출력하는 단계를 포함하며,Outputting the channel coded result as an output sequence, 상기 채널 코딩하는 방법은, The channel coding method, 상기 (20, A) 코드의 기본 시퀀스 중 A 개가 표 1로부터 선택되고, A는 14 이하의 자연수인 것을 특징으로 하는, 채널 코딩 방법.A of the basic sequences of the (20, A) codes is selected from Table 1, and A is a natural number of 14 or less. [표 1]TABLE 1
Figure 112010027803858-pat00118
Figure 112010027803858-pat00118
제 1 항에 있어서,The method of claim 1, 18 개의 행 및 A 개의 열을 포함하는 코드 행렬을 구성하는 하나 이상의 기본 시퀀스 ( (18, A) 코드의 기본 시퀀스) 는, 상기 표 1의 18 개의 행을 포함하는 표 2로부터 선택되고,At least one base sequence (base sequence of (18, A) codes) constituting a code matrix comprising 18 rows and A columns is selected from Table 2 comprising 18 rows of Table 1 above, 상기 (18, A) 코드의 기본 시퀀스는 제 2 타입 정보 비트를 채널 코딩하기 위하여 사용되는, 채널 코딩 방법.The basic sequence of the (18, A) codes is used for channel coding second type information bits. 제 2 항에 있어서,The method of claim 2, 상기 표 1은 상기 (18, A) 코드의 기본 시퀀스들 사이의 최소 해밍 거리의 최대값을 가지도록 생성되는, 채널 코딩 방법.Table 1 is generated to have a maximum value of a minimum hamming distance between basic sequences of the (18, A) code. 제 1 항에 있어서,The method of claim 1, 16 개의 행 및 A 개의 열을 포함하는 코드 행렬을 구성하는 하나 이상의 기본 시퀀스 ( (16, A) 코드의 기본 시퀀스) 는, 상기 표 1의 16 개의 행을 포함하는 표 3로부터 선택되고,At least one base sequence (base sequence of (16, A) codes) constituting a code matrix comprising 16 rows and A columns is selected from Table 3 comprising the 16 rows of Table 1 above, 상기 (16, A) 코드의 기본 시퀀스는 제 3 타입 정보 비트를 채널 코딩하기 위하여 사용되는, 채널 코딩 방법.The basic sequence of the (16, A) code is used for channel coding third type information bits. 제 4 항에 있어서,The method of claim 4, wherein 상기 표 1은 상기 (16, A) 코드의 기본 시퀀스들 사이의 최소 해밍 거리의 최대값을 가지도록 생성되는, 채널 코딩 방법.Table 1 is generated to have a maximum value of the minimum hamming distance between the basic sequences of the (16, A) code. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,6. The method according to any one of claims 1 to 5, 상기 표 1은 상기 (20, A) 코드의 기본 시퀀스들 사이의 최소 해밍 거리의 최대값을 가지도록 생성되는, 채널 코딩 방법.Table 1 is generated to have a maximum value of a minimum hamming distance between basic sequences of the (20, A) code. 제 1 항에 있어서,The method of claim 1, 상기 제 1 타입 정보 비트는, 물리 상향링크 제어 채널(PUCCH)을 통해 전송되는 제어 정보 비트인, 채널 코딩 방법.And the first type information bit is a control information bit transmitted through a physical uplink control channel (PUCCH). 제 1 항에 있어서,The method of claim 1, 상기 (20, A) 코드의 기본 시퀀스는 표 4로부터 선택되고, A는 13 이하의 자연수인, 채널 코딩 방법.The base sequence of the (20, A) code is selected from Table 4, and A is a natural number of 13 or less. [표 4][Table 4]
Figure 112010027803858-pat00119
Figure 112010027803858-pat00119
제 1 항에 있어서,The method of claim 1, 상기 (20, A) 코드의 기본 시퀀스는, The basic sequence of the (20, A) code is 표 5로부터 2번째, 5번째, 8번째, 11번째, 15번째, 16번째, 21번째 22번째, 25번째, 29번째, 30번째 및 31번째 행을 천공(puncturing)하고,Punching the 2nd, 5th, 8th, 11th, 15th, 16th, 21st 22nd, 25th, 29th, 30th and 31st rows from Table 5, [표 5]TABLE 5
Figure 112010027803858-pat00120
Figure 112010027803858-pat00120
상기 표 5의 하나 이상의 행들 사이 및 하나 이상의 열들 사이 중 하나 이상에 대해 서로 위치를 변경하여 표 6을 얻고,Obtaining a table 6 by relocating each other for at least one of the one or more rows and the one or more columns of Table 5, [표 6]TABLE 6
Figure 112010027803858-pat00121
Figure 112010027803858-pat00121
각각 4 개의 '0' 값을 가지는 4 개의 추가적인 기본 시퀀스들을 추가함으로써 생성되는, 채널 코딩 방법.Channel coding method, generated by adding four additional basic sequences, each having four '0' values.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020080074681A 2007-12-24 2008-07-30 Channel Coding Method of Variable Length Information Using Block Code KR100983282B1 (en)

Priority Applications (8)

Application Number Priority Date Filing Date Title
PCT/KR2008/007575 WO2009082146A2 (en) 2007-12-24 2008-12-22 Channel coding method of variable length information using block code
JP2010529885A JP5174177B2 (en) 2007-12-24 2008-12-22 Channel coding method for information having various lengths using block codes
CN201310145699.6A CN103259626B (en) 2007-12-24 2008-12-22 Use block code the information of variable-length to be carried out to the method for chnnel coding
CN2008801226741A CN101911498B (en) 2007-12-24 2008-12-22 Channel coding method of variable length information using block code
EP08022392.8A EP2075916B1 (en) 2007-12-24 2008-12-23 Channel coding method of variable length information using a (20,A) block code
US12/343,673 US8793550B2 (en) 2007-12-24 2008-12-24 Channel coding method of variable length information using block code
TW97150490A TWI419478B (en) 2007-12-24 2008-12-24 Channel coding method of variable length information using block code
JP2012284908A JP5411984B2 (en) 2007-12-24 2012-12-27 Channel coding method for information having various lengths using block codes

Applications Claiming Priority (10)

Application Number Priority Date Filing Date Title
US1649207P 2007-12-24 2007-12-24
US61/016,492 2007-12-24
US2101808P 2008-01-14 2008-01-14
US61/021,018 2008-01-14
US2133708P 2008-01-16 2008-01-16
US61/021,337 2008-01-16
US2646408P 2008-02-05 2008-02-05
US61/026,464 2008-02-05
US2801608P 2008-02-12 2008-02-12
US61/028,016 2008-02-12

Publications (2)

Publication Number Publication Date
KR20090069126A KR20090069126A (en) 2009-06-29
KR100983282B1 true KR100983282B1 (en) 2010-09-24

Family

ID=40996431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080074681A KR100983282B1 (en) 2007-12-24 2008-07-30 Channel Coding Method of Variable Length Information Using Block Code

Country Status (3)

Country Link
JP (1) JP5174177B2 (en)
KR (1) KR100983282B1 (en)
CN (2) CN103259626B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100970645B1 (en) 2007-12-24 2010-07-15 엘지전자 주식회사 Channel Coding Method of Variable Length Information Using Block Code
WO2009082146A2 (en) 2007-12-24 2009-07-02 Lg Electronics Inc. Channel coding method of variable length information using block code
HUE038989T2 (en) 2007-12-24 2018-12-28 Lg Electronics Inc Channel coding using a (32,11) block code and a (20,O) block code with variable length O
EP2315360B1 (en) * 2009-05-25 2012-12-26 Huawei Technologies Co., Ltd. Method and device for encoding by linear block code, and method and device for generating linear block code
WO2011126330A2 (en) * 2010-04-07 2011-10-13 엘지전자 주식회사 Method for transmitting information, and transmitter
EP2569865B1 (en) 2010-05-11 2016-06-29 LG Electronics Inc. Enhanced block coding method based on small size block code
CN105337686B (en) * 2014-07-31 2019-02-12 展讯通信(上海)有限公司 A kind of CQI code device and method
WO2018129695A1 (en) * 2017-01-12 2018-07-19 Qualcomm Incorporated Puncturing and repetition for data encoding
KR102328268B1 (en) * 2017-03-23 2021-11-18 삼성전자 주식회사 Apparatus and method of encoding and decoding of short length block codes in wireless communication system
CN111211793B (en) * 2020-02-10 2023-08-04 成都烨软科技有限公司 Parallel TPC coding method based on Hamming code

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030068749A (en) * 2002-02-16 2003-08-25 엘지전자 주식회사 CQI coding method using various basis sequences
WO2007092816A2 (en) 2006-02-06 2007-08-16 Qualcomm Incorporated Message remapping and encoding

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2387832C (en) * 2000-08-18 2006-07-11 Samsung Electronics Co., Ltd. Channel coding/decoding apparatus and method for a cdma mobile communication system
US7088700B2 (en) * 2000-10-09 2006-08-08 Samsung Electronics Co., Ltd. Apparatus and method for coding/decoding TFCI bits in an asynchronous CDMA communication system
JP3708078B2 (en) * 2001-02-15 2005-10-19 サムスン エレクトロニクス カンパニー リミテッド Apparatus and method for channel encoding / decoding of mobile communication system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030068749A (en) * 2002-02-16 2003-08-25 엘지전자 주식회사 CQI coding method using various basis sequences
WO2007092816A2 (en) 2006-02-06 2007-08-16 Qualcomm Incorporated Message remapping and encoding

Also Published As

Publication number Publication date
CN103259626B (en) 2016-05-25
JP5174177B2 (en) 2013-04-03
CN101911498A (en) 2010-12-08
CN101911498B (en) 2013-06-05
KR20090069126A (en) 2009-06-29
CN103259626A (en) 2013-08-21
JP2011501557A (en) 2011-01-06

Similar Documents

Publication Publication Date Title
KR100983282B1 (en) Channel Coding Method of Variable Length Information Using Block Code
KR100970645B1 (en) Channel Coding Method of Variable Length Information Using Block Code
JP5801927B2 (en) Downlink control information transmission method and codeword generation method therefor
CN109716662B (en) Method and apparatus for encoding data using polarization codes
EP3584974B1 (en) Method and device for rate matching and rate de-matching
US8136021B2 (en) Generation of Golay-based systematic block code supporting various sizes
US8707128B2 (en) Method and apparatus for channel encoding and decoding in a broadcasting/communication system using low density parity-check codes
JP6820438B2 (en) Information processing method and communication device
WO2009082146A2 (en) Channel coding method of variable length information using block code
JP2020515166A (en) Method for encoding based on LDPC code parity check matrix in wireless communication system and terminal using the same
US11791931B2 (en) Channel coding method of variable length information using block code
JP5411984B2 (en) Channel coding method for information having various lengths using block codes
WO2009084891A2 (en) Generation of golay-based systematic block code supporting various sizes

Legal Events

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

Payment date: 20130823

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140822

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150824

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160824

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170814

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180814

Year of fee payment: 9