KR20130044259A - Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes - Google Patents

Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes Download PDF

Info

Publication number
KR20130044259A
KR20130044259A KR1020130028851A KR20130028851A KR20130044259A KR 20130044259 A KR20130044259 A KR 20130044259A KR 1020130028851 A KR1020130028851 A KR 1020130028851A KR 20130028851 A KR20130028851 A KR 20130028851A KR 20130044259 A KR20130044259 A KR 20130044259A
Authority
KR
South Korea
Prior art keywords
shortened
shortening
bit
information bits
ldpc code
Prior art date
Application number
KR1020130028851A
Other languages
Korean (ko)
Other versions
KR101503133B1 (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 포항공과대학교 산학협력단
Publication of KR20130044259A publication Critical patent/KR20130044259A/en
Application granted granted Critical
Publication of KR101503133B1 publication Critical patent/KR101503133B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/155Shortening or extension of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3723Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using means or methods for the initialisation of the decoder
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • H04L1/0013Rate matching, e.g. puncturing or repetition of code symbols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0046Code rate detection or code type detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L2025/0335Arrangements for removing intersymbol interference characterised by the type of transmission
    • H04L2025/03375Passband transmission
    • H04L2025/0342QAM

Abstract

PURPOSE: A channel encoding/decoding method and a device thereof in a communication system using an LDPC code are provided to reduce by applying a different reduced pattern in a modulation technique. CONSTITUTION: A demodulator(1230) demodulates a transmitted signal from a transmitter. A reduced pattern determiner or estimator(1220) determines location information of a punched parity bit. An LDPC decoder(1240) decodes the demodulated signal by considering a location of the determined reduced information bit. A location determination procedure of the reduced information bit includes a step of determining the number of reduced information bits, a step of determining the number of reduced bit groups based on the determined reduced information bits and a step of obtaining an order of predetermined bit groups. [Reference numerals] (1210) Control unit; (1220) Reduced pattern determiner or estimator; (1230) Demodulator; (1240) LDPC decoder

Description

저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치{APPARATUS AND METHOD FOR CHANNEL ENCODING AND DECODING IN COMMUNICATION SYSTEM USING LOW-DENSITY PARITY-CHECK CODES}{APPARATUS AND METHOD FOR CHANNEL ENCODING AND DECODING IN COMMUNICATION SYSTEM USING LOW-DENSITY PARITY-CHECK CODES}

본 발명은 저밀도 패리티 검사(low-density parity-check, 이하 LDPC) 부호를 사용하는 통신 시스템에 관한 것으로, 특히 고차 변조 방식에서 주어진 LDPC 부호로부터 다양한 부호어 길이와 부호율(code rate)을 가지는 LDPC 부호를 생성하는 채널 부호화/복호화(channel encoding/decoding) 장치 및 방법에 관한 것이다.The present invention relates to a communication system using a low-density parity-check (LDPC) code, and in particular, an LDPC having various codeword lengths and code rates from a given LDPC code in a higher-order modulation scheme. A channel encoding / decoding apparatus and method for generating code.

무선 통신 시스템에서는 채널의 여러 가지 잡음(noise)과 페이딩(fading) 현상 및 신호간 간섭(inter-symbol interference, ISI)에 의해 링크(link)의 성능이 현저히 저하된다. 따라서, 차세대 이동 통신, 디지털 방송 및 휴대 인터넷과 같이 높은 데이터 처리량과 신뢰도를 요구하는 고속 디지털 통신 시스템들을 구현하기 위해서 잡음과 페이딩 및 ISI에 대한 극복 기술을 개발하는 것이 필수적이다. 최근에는 정보의 왜곡을 효율적으로 복원하여 통신의 신뢰도를 높이기 위한 방법으로서 오류정정부호(error-correcting code)에 대한 연구가 활발히 이루어지고 있다.In a wireless communication system, the performance of a link is significantly degraded due to various noises, fading, and inter-symbol interference (ISI) of a channel. Therefore, it is essential to develop overcoming techniques for noise, fading and ISI in order to realize high-speed digital communication systems requiring high data throughput and reliability, such as next generation mobile communication, digital broadcasting, and portable Internet. In recent years, error-correcting codes have been actively studied as methods for efficiently restoring information distortion and improving communication reliability.

상기 LDPC 부호, 즉 에러 정정 코드의 타입은 일반적으로 패리티 검사 행렬(parity-check matrix)로 정의되며 Tanner 그래프로 통칭되는 이분(bipartite) 그래프를 이용하여 표현될 수 있다. 상기 이분 그래프는 그래프를 구성하는 정점들이 서로 다른 2 종류로 나누어져 있음을 의미하며, 상기 LDPC 부호의 경우에는 변수 노드(variable node)와 검사 노드(check node)라 불리는 정점들로 이루어진 이분 그래프로 표현된다. 상기 변수 노드는 부호화된 비트와 일대일 대응된다. The type of the LDPC code, that is, the error correction code, is generally defined as a parity-check matrix and can be expressed using a bipartite graph, collectively referred to as a Tanner graph. The bipartite graph indicates that the vertices constituting the graph are divided into two different types. In the case of the LDPC code, a binary graph composed of a variable node and a vertex called a check node Is expressed. The variable node corresponds one-to-one to the encoded bit.

도 1은 4 개의 행(row)과 8 개의 열(column)로 이루어진 상기 LDPC 부호의 패리티 검사 행렬 H1의 예이다. 도 1을 참조하면, 열이 8개 있기 때문에 길이가 8인 부호어(codeword)를 생성하는 LDPC 부호를 의미하며, 각 열은 부호화된 8 비트와 대응된다. 1 is an example of the parity check matrix H 1 of the LDPC code consisting of four rows and eight columns. Referring to FIG. 1, since there are 8 columns, it means an LDPC code that generates a codeword having a length of 8, and each column corresponds to an encoded 8 bit.

도 2는 도 1의 H1에 대응하는 Tanner 그래프를 도시한 도면이다. FIG. 2 is a diagram illustrating a Tanner graph corresponding to H 1 of FIG. 1.

도 2를 참조하면, 상기 LDPC 부호의 상기 Tanner 그래프는 8개의 변수 노드들 x1(202), x2(204), x3(206), x4(208), x5(210), x6(212), x7(214), x8(216)과 4개의 검사 노드(check node)(218, 220, 222, 224)들로 구성되어 있다. 여기서, 상기 LDPC 부호의 패리티 검사 행렬 H1의 i번째 열과 j번째 행은 각각 변수 노드 xi와 j 번째 검사 노드에 대응된다. 또한, 상기 LDPC 부호의 패리티 검사 행렬 H1의 i번째 열과 j번째 행이 교차하는 지점의 1의 값, 즉 0이 아닌 값의 의미는, 상기 도 2에 도시된 바와 같이 상기 Tanner 그래프 상에서 상기 변수 노드 xi와 j번째 검사 노드 사이에 선분(edge)이 존재함을 의미한다.Referring to FIG. 2, the Tanner graph of the LDPC code includes eight variable nodes x 1 (202), x 2 (204), x 3 (206), x 4 (208), x 5 (210), x 6 (212), x 7 (214), x 8 (216) and four check nodes (218, 220, 222, 224). Here, the i th column and the j th row of the parity check matrix H 1 of the LDPC code correspond to the variable nodes x i and j th check nodes, respectively. In addition, the meaning of a value of 1, i.e., a non-zero value of a point where the i-th column and the j-th row of the parity check matrix H 1 of the LDPC code intersect, is the variable on the Tanner graph as shown in FIG. An edge exists between the node x i and the j th test node.

상기 LDPC 부호의 Tanner 그래프에서 변수 노드 및 검사 노드의 차수(degree)는 각 노드들에 연결되어 있는 선분의 개수를 의미하며, 이는 상기 LDPC 부호의 패리티 검사행렬에서 해당 노드에 대응되는 열 또는 행에서 0이 아닌 원소(entry)들의 개수와 동일하다. 예를 들어, 상기 도 2에서 변수 노드들 x1(202), x2(204), x3(206), x4(208), x5(210), x6(212), x7(214), x8(216)의 차수는 각각 순서대로 4, 3, 3, 3, 2, 2, 2, 2가 되며, 검사 노드들(218, 220, 222, 224)의 차수는 각각 순서대로 6, 5, 5, 5가 된다. 또한, 상기 도 2의 변수 노드들에 대응되는 상기 도 1의 패리티 검사 행렬 H1의 각각의 열에서 0이 아닌 원소들의 개수는 상기한 차수들 4, 3, 3, 3, 2, 2, 2, 2 각각과 순서대로 일치하며, 상기 도 2의 검사 노드들에 대응되는 상기 도 1의 패리티 검사 행렬 H1의 각각의 행에서 0이 아닌 원소들의 개수는 상기한 차수들 6, 5, 5, 5 각각과 순서대로 일치한다. In the Tanner graph of the LDPC code, the degree of the variable node and the check node means the number of line segments connected to each node, which is determined in the column or row corresponding to the node in the parity check matrix of the LDPC code. It is equal to the number of nonzero entries. For example, in FIG. 2, the variable nodes x 1 202, x 2 204, x 3 206, x 4 208, x 5 210, x 6 212, and x 7 ( 214, and the order of x 8 (216) is 4, 3, 3, 3, 2, 2, 2, 2, respectively, in order, and the order of test nodes 218, 220, 222, and 224, respectively, in order. 6, 5, 5, 5. Further, the number of non-zero elements in each column of the parity check matrix H 1 of FIG. 1 corresponding to the variable nodes of FIG. 2 is the above-described orders 4, 3, 3, 3, 2, 2, 2 , 2, and the number of non-zero elements in each row of the parity check matrix H 1 of FIG. 1 corresponding to the check nodes of FIG. 2 are equal to each of the orders 6, 5, 5, 5 matches each in order.

LDPC 부호의 노드에 대한 차수 분포(degree distribution)를 표현하기 위하여 차수가 i인 변수 노드의 개수와 변수 노드 총 개수와의 비율을 fi라 하고, 차수가 j인 검사 노드의 개수와 검사 노드 총 개수와의 비율을 gj라 하자. 예를 들어 상기 도 1과 도 2에 해당하는 LDPC 부호의 경우에는 f2=4/8, f3=3/8, f4=1/8이고, i≠2, 3, 4 에 대해서 fi=0 이며, g5=3/4, g6=1/4이고, j≠5,6 에 대해서 gj=0 이다. LDPC 부호의 길이를 N, 즉 열의 개수를 N이라 하고, 행의 개수를 N/2이라 할 때, 상기 차수 분포를 가지는 패리티 검사 행렬 전체에서 0이 아닌 원소의 밀도는 하기의 <수학식 1>과 같이 계산된다. In order to express the degree distribution for the nodes of the LDPC code, the ratio between the number of variable nodes with order i and the total number of variable nodes is called fi, and the number of check nodes with order j and the total number of check nodes is fi. Let the ratio of and g j be . For example, in the case of the LDPC codes corresponding to FIGS. 1 and 2, f 2 = 4/8, f 3 = 3/8, f 4 = 1/8, and f i for i ≠ 2, 3, 4 = 0, g 5 = 3/4, g 6 = 1/4, and g j = 0 for j ≠ 5,6. When the length of the LDPC code is N, that is, the number of columns is N, and the number of rows is N / 2, the density of nonzero elements in the parity check matrix having the above degree distribution is expressed by Equation 1 below. Is calculated as

Figure pat00001
Figure pat00001

상기 <수학식 1>에서 N이 증가하게 되면 패리티 검사 행렬 내에서 1의 밀도는 계속해서 감소하게 된다. 일반적으로 LDPC 부호는 부호 길이 N에 대하여 0이 아닌 원소의 밀도가 반비례하므로, N이 큰 경우에는 매우 낮은 밀도를 가지게 된다. LDPC 부호의 명칭에서 저밀도(low-density)란 말은 이와 같은 이유로 유래되었다.When N increases in Equation 1, the density of 1 in the parity check matrix continues to decrease. Generally, the LDPC code is inversely proportional to the nonzero element density with respect to the code length N, so that when N is large, the LDPC code has a very low density. The term low-density in the name of the LDPC code is derived for this reason.

상기 도 3은 유럽 디지털 방송 표준(standard)의 하나인 DVB-S2에서 표준 기술로 채택된 LDPC 부호를 개략적으로 도시하였다. FIG. 3 schematically illustrates an LDPC code adopted as a standard technology in DVB-S2, one of the European digital broadcasting standards.

도 3을 참조하면,

Figure pat00002
Figure pat00003
은 각각 LDPC 부호의 부호어 길이와 정보어의 길이를 나타내고,
Figure pat00004
은 패리티 길이를 의미한다. 그리고
Figure pat00005
Figure pat00006
Figure pat00007
를 만족한다. 이때,
Figure pat00008
도 정수가 되도록 한다. Referring to Figure 3,
Figure pat00002
And
Figure pat00003
Represents the length of codeword and information word of LDPC code, respectively.
Figure pat00004
Means parity length. And
Figure pat00005
and
Figure pat00006
The
Figure pat00007
. At this time,
Figure pat00008
Is also an integer.

도 3을 참조하면 패리티 검사 행렬에서 패리티 부분에 해당하는 부분, 즉,

Figure pat00009
번째 열(column)부터
Figure pat00010
번째 열까지의 구조는 이중 대각(dual diagonal) 형태이다. 따라서, 패리티 부분에 해당하는 열의 차수(degree) 분포는 그 값이 '1'인 마지막 열을 제외하고 모두 '2'를 가진다. Referring to FIG. 3, a part corresponding to a parity part in the parity check matrix, that is,
Figure pat00009
From the first column
Figure pat00010
The structure up to the second column is a dual diagonal form. Therefore, the degree distribution of the column corresponding to the parity part has '2' except for the last column in which the value is '1'.

패리티 검사 행렬에서 정보어 부분에 해당하는 부분, 즉 0번째 열부터

Figure pat00011
번째 열까지는 다음의 규칙을 이용하여 생성된다.In the parity check matrix, the portion corresponding to the information word portion, i.e.,
Figure pat00011
The first column is generated using the following rule.

<규칙 1>: 패리티 검사 행렬에서 정보어에 해당하는

Figure pat00012
개의 열을
Figure pat00013
개의 열들로 구성된 복수 개의 그룹으로 그룹화(grouping)하여, 총
Figure pat00014
개의 열 그룹(column group)을 생성한다. 각 열 그룹에 속해있는 각각의 열을 구성하는 방법은 하기 규칙 2에 따른다. <Rule 1>: Corresponds to the information word in the parity check matrix
Figure pat00012
Columns
Figure pat00013
Grouping into multiple groups of columns
Figure pat00014
&Lt; / RTI &gt; column groups. How to configure each column belonging to each column group follows the rule 2.

<규칙 2>: 먼저

Figure pat00015
번째
Figure pat00016
열 그룹의 각 0 번째 열에서의 1이 있는 위치를 결정한다. 여기서, 각
Figure pat00017
번째 열 그룹의 0 번째 열의 차수를
Figure pat00018
라 할 때, 각 1이 있는 행의 위치를
Figure pat00019
이라 가정하면,
Figure pat00020
번째 열 그룹 내의
Figure pat00021
번째 열에서 1이 있는 행의 위치
Figure pat00022
는 하기 <수학식 2>와 같이 정의된다. <Rule 2>: First
Figure pat00015
th
Figure pat00016
Determine where 1 is in each 0th column of a column group. Here,
Figure pat00017
Order of the 0th column of the 1st column group
Figure pat00018
Is the position of the row
Figure pat00019
Assuming that
Figure pat00020
Within the first column group
Figure pat00021
The position of the row with 1 in the third column
Figure pat00022
Is defined as in Equation 2 below.

Figure pat00023
Figure pat00023

상기 규칙에 따르면

Figure pat00024
번째
Figure pat00025
열 그룹 내에 속하는 열들의 차수는 모두
Figure pat00026
로 일정함을 알 수 있다. 상기 규칙에 따라 패리티 검사 행렬에 대한 정보를 저장하고 있는 DVB-S2 LDPC 부호의 구조를 쉽게 이해하기 위하여 다음과 같은 구체적인 예를 살펴보기로 한다.According to the rule above
Figure pat00024
th
Figure pat00025
The order of the columns belonging to the column group is
Figure pat00026
It can be seen that the constant. In order to easily understand the structure of the DVB-S2 LDPC code storing information on the parity check matrix according to the above rule, the following specific example will be described.

구체적인 예로서

Figure pat00027
이며, 3개의 열 그룹의 0 번째 열에 대한 1이 있는 행의 위치 정보는 다음과 같이 나타낼 수 있다.As a specific example
Figure pat00027
The positional information of a row with 1 for the 0th column of the 3 column group can be expressed as follows.

Figure pat00028
Figure pat00028

상기 각 열 그룹의 0 번째 1이 있는 행의 위치 정보는 편의상 다음과 같이 각 열 그룹 별로 해당 위치 정보만 표기하기도 한다. For location information of the 0th 1 row of each column group, only the corresponding location information may be indicated for each column group as follows.

0 1 2 0 1 2

0 11 13 0 11 13

0 10 14 0 10 14

즉, 상기

Figure pat00029
번째 행의 수열은
Figure pat00030
번째 열 그룹에 대한 행의 위치 정보를 순차적으로 나타낸 것이다. That is,
Figure pat00029
The sequence of the first row is
Figure pat00030
Positional information of the row for the first column group is sequentially indicated.

상기 구체적인 예에 해당하는 정보와 <규칙 1> 및 <규칙 2>를 이용하여 패리티 검사 행렬을 구성하면 도 4에서 도시된 DVB-S2 LDPC 부호와 동일한 개념의 LDPC 부호를 생성할 수 있다. If the parity check matrix is constructed using the information corresponding to the specific example and <Rule 1> and <Rule 2>, an LDPC code having the same concept as the DVB-S2 LDPC code shown in FIG. 4 may be generated.

상기 <규칙 1>과 <규칙 2>를 통해 설계된 DVB-S2 LDPC 부호는 구조적인 형태를 이용하여 효율적인 부호화가 가능함이 알려져 있다. 상기 DVB-S2의 패리티 검사 행렬을 이용하여 LDPC 부호화를 진행 과정의 각 단계들을 다음과 같은 예를 들어 설명한다. It is known that the DVB-S2 LDPC code designed through <Rule 1> and <Rule 2> can be efficiently encoded using a structural form. Each step of the LDPC encoding process using the parity check matrix of the DVB-S2 will be described with the following example.

하기에는 구체적인 예로서

Figure pat00031
,
Figure pat00032
,
Figure pat00033
,
Figure pat00034
를 특징으로 하는 DVB-S2 LDPC 부호를 이용하는 부호화 과정을 설명하였다. 또한 설명의 편의를 위해 길이가
Figure pat00035
인 정보어 비트들을
Figure pat00036
로 나타내고, 길이가
Figure pat00037
인 패리티 비트들을
Figure pat00038
로 나타낸다. As a specific example below
Figure pat00031
,
Figure pat00032
,
Figure pat00033
,
Figure pat00034
The encoding process using the DVB-S2 LDPC code, which has been described above, has been described. Also for convenience of description the length
Figure pat00035
Information bits
Figure pat00036
And the length is
Figure pat00037
Parity bits
Figure pat00038
Respectively.

단계 1: LDPC 부호화기는 패리티 비트들을 다음과 같이 초기화 한다.

Figure pat00039
. Step 1 : The LDPC encoder initializes parity bits as follows.
Figure pat00039
.

단계 2: 저장되어 있는 패리티 검사 행렬을 나타내는 수열의 0번째 행으로부터 정보어의 첫 번째 열 그룹 내에서 1이 위치한 행의 정보를 호출(read)한다. Step 2 : Read information of the row where 1 is located in the first column group of the information word from the 0th row of the sequence representing the stored parity check matrix.

0 2084 1613 1548 1286 1460 3196 4297 2481 3369 3451 4620 2622 0 2084 1613 1548 1286 1460 3196 4297 2481 3369 3451 4620 2622

Figure pat00040
Figure pat00040

상기 호출된 정보와 정보어 비트

Figure pat00041
를 이용하여 하기의 <수학식 3>과 같이 특정 패리티 비트
Figure pat00042
들을 업데이트한다. 여기서,
Figure pat00043
는 각각의
Figure pat00044
값을 의미한다. The called information and information bits
Figure pat00041
As shown in Equation (3) below,
Figure pat00042
Lt; / RTI &gt; here,
Figure pat00043
Respectively,
Figure pat00044
Lt; / RTI >

Figure pat00045
Figure pat00045

상기 <수학식 3>에서

Figure pat00046
Figure pat00047
로 표기하기도 하며,
Figure pat00048
는 이진(binary) 덧셈을 의미한다. In Equation (3)
Figure pat00046
The
Figure pat00047
Sometimes referred to as
Figure pat00048
Means binary addition.

단계 3:

Figure pat00049
이후의 다음 359개의 정보어 비트
Figure pat00050
,
Figure pat00051
에 대해서 먼저 하기의 <수학식 4>에 대한 값을 결정한다. Step 3 :
Figure pat00049
The following 359 information bits
Figure pat00050
,
Figure pat00051
First, the value for Equation 4 below is determined.

Figure pat00052
Figure pat00052

상기 <수학식 4>에서

Figure pat00053
는 각각의
Figure pat00054
값을 의미한다. 상기 <수학식 4>는 <수학식 2>와 동일한 개념의 수식임에 유의한다. In Equation (4)
Figure pat00053
Respectively,
Figure pat00054
Lt; / RTI &gt; It is noted that Equation 4 is an equation having the same concept as Equation 2.

다음으로 상기 <수학식 4>에서 구한 값을 이용하여 <수학식 3>과 유사한 작업을 수행한다. 즉,

Figure pat00055
에 대해서
Figure pat00056
을 업데이트한다. 예를 들어
Figure pat00057
, 즉,
Figure pat00058
에 대해서 하기의 <수학식 5>와 같이
Figure pat00059
들을 업데이트한다. Next, a similar operation to <Equation 3> is performed using the value obtained in Equation 4. In other words,
Figure pat00055
about
Figure pat00056
Update E.g
Figure pat00057
, In other words,
Figure pat00058
As shown below in Equation (5)
Figure pat00059
Lt; / RTI &gt;

Figure pat00060
Figure pat00060

상기 <수학식 5>의 경우에는

Figure pat00061
이다. LDPC 부호화기는 위와 같은 과정을
Figure pat00062
에 대해서 마찬가지로 수행한다. In the case of Equation 5
Figure pat00061
to be. LDPC encoder performs the above process.
Figure pat00062
Do the same for.

단계 4: 상기 단계 2와 마찬가지로 361번째 정보어 비트

Figure pat00063
에 대해서
Figure pat00064
의 정보를 호출하고, 특정
Figure pat00065
을 업데이트한다. 여기서,
Figure pat00066
Figure pat00067
을 의미한다.
Figure pat00068
이후의 다음 359개의 정보어 비트
Figure pat00069
에 대해서 <수학식 4>를 유사하게 적용하여
Figure pat00070
를 업데이트한다. Step 4 : 361th information word bit as in Step 2 above
Figure pat00063
about
Figure pat00064
Call information, and specific
Figure pat00065
Update here,
Figure pat00066
The
Figure pat00067
.
Figure pat00068
The following 359 information bits
Figure pat00069
Equation
4 is similarly applied to
Figure pat00070
Lt; / RTI &gt;

단계 5: 모든 각각의 360개의 정보어 비트 그룹에 대해서 상기 단계 2, 3, 4의 과정을 반복한다. Step 5 : Repeat the steps 2, 3 and 4 for all 360 groups of information word bits.

단계 6: 최종적으로 <수학식 6>을 통해서 패리티 비트를 결정한다. Step 6 : Finally, the parity bit is determined through Equation 6.

Figure pat00071
Figure pat00071

상기 <수학식 6>의 패리티 비트

Figure pat00072
들이 LDPC 부호화가 완료된 것이다. Parity bit of Equation 6
Figure pat00072
LDPC encoding is completed.

이상에서 설명한 바와 같이 DVB-S2에서는 단계 1부터 단계 6까지의 과정에서 설명된 바와 같이, 부호화를 수행한다.As described above, in DVB-S2, encoding is performed as described in the steps 1 to 6.

LDPC 부호를 실제 통신 시스템에 적용하기 위해서는 상기 통신 시스템에서 요구되는 데이터 전송량(dara rate)에 적합하도록 설계되어야 한다. 특히 복합 재전송(Hybrid Automatic Retransmission Request, HARQ) 방식과 적응형 변조 및 부호화(Adaptive Modulation and Coding, AMC) 방식 등을 적용하는 적응형 통신 시스템뿐만 아니라 다양한 방송 서비스를 지원하는 통신 시스템에서는 시스템의 요구에 따라 다양한 데이터 전송량을 지원하기 위해 다양한 부호어 길이를 가지는 LDPC 부호가 필요하다. In order to apply the LDPC code to the actual communication system, it must be designed to meet the data rate required by the communication system. Especially, the communication system supporting various broadcasting services as well as the adaptive communication system applying the Hybrid Automatic Retransmission Request (HARQ) method and the Adaptive Modulation and Coding (AMC) method can meet the requirements of the system. Accordingly, LDPC codes having various codeword lengths are required to support various data transmission amounts.

그런데, 상술한 바와 같이 DVB-S2 시스템에서 사용되는 LDPC 부호의 경우에는 제한적인 사용으로 인해 부호어 길이가 2 종류 밖에 없을 뿐만 아니라 각각 독립적인 패리티 검사 행렬을 필요로 한다. 이러한 이유로 시스템의 확장성 및 유연성을 증가시키기 위해서 다양한 부호어 길이를 지원하는 방법이 필요하다. 특히 DVB-S2 시스템에서는 시그널링(signaling) 정보의 전송을 위하여 수백에서 수천 비트의 데이터 전송이 필요한데 DVB-S2 LDPC 부호의 길이는 16200과 64800 두 개 밖에 없기 때문에 다양한 부호어 길이에 대한 지원이 필수적이다. 그런데 LDPC 부호의 각각의 부호어 길이에 대해 독립적인 패리티 검사 행렬을 저장하는 것은 메모리 효율성을 떨어뜨리기 때문에 새로운 패리티 검사 행렬을 설계하지 않고, 기존에 주어져 있는 패리티 검사 행렬로부터 다양한 부호어 길이를 효율적으로 지원하는 방안이 요망된다.However, as described above, the LDPC code used in the DVB-S2 system has only two types of codeword lengths due to its limited use, and requires an independent parity check matrix. For this reason, there is a need for a method that supports various codeword lengths to increase the scalability and flexibility of the system. In particular, in the DVB-S2 system, data transmission of hundreds to thousands of bits is required to transmit signaling information. Since only two DVB-S2 LDPC codes are 16200 and 64800, support for various codeword lengths is essential. . However, storing an independent parity check matrix for each codeword length of an LDPC code reduces memory efficiency. Therefore, it is not necessary to design a new parity check matrix, but to efficiently vary the codeword length from a given parity check matrix. Support is needed.

LDPC 부호의 다양한 부호어 길이를 요구하는 통신 시스템에서 고차 변조 방식을 적용하는 경우는 BPSK 또는 QPSK만 적용하는 통신 시스템의 경우와 달리 고차 변조 심볼(symbol)에 포함된 비트들의 신뢰도(reliability)가 다름을 주의해야 한다. When the higher order modulation scheme is applied in a communication system requiring various codeword lengths of an LDPC code, the reliability of the bits included in the higher order modulation symbol is different from that of the communication system using only BPSK or QPSK. Be careful.

고차 변조 방식에서의 신뢰도 차이를 설명하기 위하여 이하에서는 통신 시스템에서 통상적으로 사용하는 고차 변조 방식인 QAM(Quadrature Amplitude Modulation) 방식을 적용할 경우의 신호 성좌(signal constellation)에 대해서 설명한다. QAM에서 변조된 심볼은 실수부와 허수부로 구성되며 각 실수부와 허수부의 크기와 부호를 다르게 하여 다양한 변조 심볼을 구성할 수 있다. QAM의 특성을 살펴보기 위하여 QPSK 변조 방식과 함께 설명하기로 한다.In order to explain the difference in reliability in the higher-order modulation scheme, a signal constellation in the case of applying a quadrature amplitude modulation (QAM) scheme, which is commonly used in a communication system, will be described. The modulated symbol in QAM is composed of a real part and an imaginary part, and various modulation symbols may be configured by different sizes and codes of the real part and the imaginary part. In order to examine the characteristics of the QAM, it will be described together with the QPSK modulation scheme.

도 5(a)는 일반적인 QPSK(Quadrature Phase Shift Keying) 변조 방식의 신호 성좌의 개략도이다. 5A is a schematic diagram of a signal constellation of a general Quadrature Phase Shift Keying (QPSK) modulation scheme.

y0는 실수부의 부호를 결정하며 y1 은 허수부의 부호를 결정한다. 즉, y0가 0일 경우 실수부의 부호는 양(plus,+)이며, y0가 1일 경우 실수부의 부호는 음(minus,-)이다. 또한, y1이 0일 경우 허수부의 부호는 양(plus,+)이며, y1이 1일 경우 허수부의 부호는 음(minus,-)이다. y0, y1 각각이 실수부와 허수부의 부호를 표시하는 부호표시비트 이므로 y0, y1 의 오류 발생 확률은 같기 때문에, QPSK 변조 방식의 경우 하나의 변조 신호에 해당하는 (y0, y1) 각 비트의 신뢰도는 동일하다. 여기서 y0 ,q, y1 , q 로 표기했을 때, 아래 첨자 두 번째 인덱스 q는 변조신호구성비트의 q번째 출력임을 의미한다.y 0 determines the sign of the real part and y 1 determines the sign of the imaginary part. That is, if y 0 is 0, the real part sign is positive (plus, +), and if y 0 is 1, the real part sign is minus (min). In addition, if y 1 is 0, the sign of the imaginary part is positive (plus, +), and if y 1 is 1, the sign of the imaginary part is negative (minus,-). y 0 , y 1 Since each of these is a sign bit representing the sign of the real part and the imaginary part, the probability of error occurrence of y 0 and y 1 is the same. Therefore, in the QPSK modulation method, each bit (y 0 , y 1 ) corresponding to one modulation signal is Reliability is the same. Here, when y 0 , q, y 1 and q , the subscript second index q means the qth output of the modulation signal configuration bit.

도 5(b)는 일반적인 16-QAM 변조 방식의 신호 성좌의 개략도이다. 5 (b) is a schematic diagram of a signal constellation of a general 16-QAM modulation scheme.

도 5(b)를 참조하면, (y0, y1, y2, y3)는 하나의 변조 신호 비트에 해당한다. 특히, 비트 y0와 y2는 각각 실수부의 부호와 크기를 결정하며, 비트 y1과 y3 각각은 허수부의 부호와 크기를 결정한다. 즉, y0와 y1은 신호의 실수부와 허수부의 부호를 결정하며, y2와 y3 는 신호의 실수부와 허수부의 크기를 결정한다. 변조된 신호의 크기를 판별하는 것보다 부호를 판별하는 것이 더 용이하기 때문에 y2와 y3에 대하여 오류가 발생할 확률이 y0와 y1 보다 높다. 따라서 비트들의 오류가 발생하지 않을 확률(즉, 신뢰도)은 y0=y1 > y2=y3 의 순서가 된다. 즉, QPSK와 달리 QAM의 변조 신호 구성 비트들 (y0, y1, y2, y3)는 각 비트의 신뢰도가 상이한 특성이 있다.Referring to FIG. 5B, (y 0 , y 1 , y 2 , y 3 ) corresponds to one modulation signal bit. In particular, bits y 0 and y 2 determine the sign and size of the real part, respectively, and bits y 1 and y 3 each determine the sign and size of the imaginary part. That is, y 0 and y 1 determine the sign of the real and imaginary parts of the signal, and y 2 and y 3 Determines the magnitude of the real and imaginary parts of the signal. Since it is easier to determine the sign than to determine the magnitude of the modulated signal, the probability of error for y 2 and y 3 is higher than y 0 and y 1. Higher than Therefore, the probability that the error of the bits will not occur (that is, the reliability) is y 0 = y 1 > y 2 = y 3 That is, unlike QPSK, the modulation signal configuration bits (y 0 , y 1 , y 2 , y 3 ) of the QAM have different characteristics of reliability of each bit.

16-QAM 변조 방식은 신호를 구성하는 4비트 중 2개의 비트는 신호의 실수부와 허수부의 부호를 결정하며, 나머지 2 비트는 신호의 실수부와 허수부의 크기를 나타내면 되므로 (y0, y1, y2, y3)의 순서와 각 비트의 역할은 변할 수 있음은 당연하다.In the 16-QAM modulation method, two bits of the four bits constituting the signal determine the sign of the real part and the imaginary part of the signal, and the remaining two bits need to represent the magnitudes of the real part and the imaginary part of the signal (y 0 , y 1). , y 2 , y 3 ) and the role of each bit may vary.

도 5(c)는 일반적인 64-QAM 변조 방식의 신호 성좌의 개략도이다. 5 (c) is a schematic diagram of a signal constellation of a general 64-QAM modulation scheme.

여기서, 하나의 변조 신호 비트에 해당하는 (y0, y1, y2, y3, y4, y5) 중 비트 y0, y2와 y4는 실수부의 부호와 크기를 결정하며, y1, y3와 y5는 허수부의 부호와 크기를 결정한다. 이때 y0와 y1는 각각 실수부와 허수부의 부호를 결정하며, y2 , y4 결합과, y3 , y5의 결합은 각각 실수부와 허수부의 크기를 결정한다. 변조된 심볼의 크기를 판별하는 것보다 부호를 판별하는 것이 더 용이하기 때문에 y0와 y1의 신뢰도는 y2 , y3, y4 , y5의 신뢰도에 비하여 높다. y2 , y3는 변조된 심볼의 크기가 4보다 큰 값인지 작은 값인지에 따라 결정되며, y4 , y5는 변조된 심볼의 크기가 2를 기준으로 4와 0에 가까운지 결정되거나, 6을 기준으로 4 또는 8에 가까운지에 따라 결정된다. 따라서 y2 , y3의 결정 범위의 크기는 4가 되고, y4 , y5 의 결정 범위는 2가 된다. 따라서 y2 , y3의 신뢰도가 y4 , y5에 비하여 높다. 결과적으로, 각 비트들의 오류가 발생하지 않을 확률(즉, 신뢰도)은 y0=y1 > y2=y3 > y4=y5 의 순서가 된다.Here, bits y 0 , y 2 and y 4 of (y 0 , y 1 , y 2 , y 3 , y 4 , y 5 ) corresponding to one modulation signal bit determine the sign and magnitude of the real part, and y 1 , y 3 and y 5 determine the sign and magnitude of the imaginary part. At this time, y 0 and y 1 determines the respective real and imaginary parts of codes, of y 2, y 4 The combination of y 3 and y 5 determines the magnitude of the real and imaginary parts, respectively. The reliability of y 0 and y 1 is higher than the reliability of y 2 , y 3 , y 4 , y 5 because it is easier to determine the sign than to determine the magnitude of the modulated symbol. y 2 , y 3 is determined depending on whether the size of the modulated symbol is greater than or less than 4 , y 4 , y 5 is determined whether the size of the modulated symbol is close to 4 and 0 based on 2, or It depends on whether it is close to 4 or 8 based on 6. Therefore , the size of the crystal range of y 2 , y 3 is 4, and the crystal range of y 4 , y 5 is 2. Therefore , the reliability of y 2 , y 3 is higher than that of y 4 , y 5 . As a result, the probability (i.e. reliability) of each bit not occurring is y 0 = y 1 > y 2 = y 3 > y 4 = y 5

64-QAM 변조 방식은 신호를 구성하는 6비트 중 2개의 비트는 신호의 실수부와 허수부의 부호를 결정하며, 4개의 비트는 신호의 실수부와 허수부의 크기를 나타내기만 하면 된다. 따라서 (y0, y1, y2, y3, y4, y5)의 순서와 각 비트의 역할은 변할 수 있다. 또한 256-QAM 이상의 신호 성좌의 경우에도 앞서 설명된 것과 동일한 방식으로 변조 신호 구성 비트들의 역할과 신뢰도가 달라진다. 이에 대한 상세한 설명은 생략하기로 한다. In the 64-QAM modulation scheme, two bits of the six bits constituting the signal determine the sign of the real part and the imaginary part of the signal, and four bits need only indicate the magnitude of the real part and the imaginary part of the signal. Thus, the order of (y 0 , y 1 , y 2 , y 3 , y 4 , y 5 ) and the role of each bit can change. In addition, in the case of signal constellations of 256-QAM or more, the role and reliability of the modulation signal configuration bits are changed in the same manner as described above. Detailed description thereof will be omitted.

간략하게 정리하자면, BPSK나 QPSK 변조 방식에서는 심볼에 포함된 비트들의 신뢰도(reliability)가 동일하기 때문에 단축 또는 천공을 적용한 이후의 LDPC 부호어에서 각 부호어 비트들의 신뢰도 또한 동일하므로 단축 및 천공 패턴을 결정할 때 변조 방식을 고려할 필요는 없었다. 하지만, 16-QAM, 64-QAM, 256-QAM과 같은 고차 변조 방식에서는 심볼에 포함된 비트들의 역할과 신뢰도(reliability)가 달라지기 때문에 변조 방식과 신호 성좌 비트 매핑 방식이 결정되어 있을 때 단축 또는 천공을 적용한 이후의 LDPC 부호어에서 각 부호어 비트에 대응되는 신뢰도가 단축 또는 천공을 적용하기 이전과 상이하게 되는 문제점이 있다.In short, in the BPSK or QPSK modulation scheme, since the reliability of bits included in a symbol is the same, the reliability of each codeword bit in the LDPC codeword after shortening or puncturing is also the same. It was not necessary to consider the modulation scheme in the decision. However, in higher-order modulation schemes such as 16-QAM, 64-QAM, and 256-QAM, the role and reliability of the bits included in the symbol are different, so when the modulation scheme and the signal constellation bit mapping scheme are determined, shortening or There is a problem that the reliability corresponding to each codeword bit in the LDPC codeword after applying puncturing is different from before shortening or applying puncturing.

따라서, 고차 변조 방식을 고려한 단축(shortening) 또는 천공(puncturing)을 이용하여 LDPC 부호를 생성하는 장치 및 방법이 요구된다.
Accordingly, there is a need for an apparatus and method for generating an LDPC code using shortening or puncturing in consideration of a higher order modulation scheme.

본 발명은 주어진 LDPC 부호로부터 고차 변조 방식을 고려한 단축(shortening) 또는 천공(puncturing)을 이용하여 다른 부호어 길이를 가지는 LDPC 부호를 생성하여 생성된 LDPC 부호를 생성하고, 생성된 상기 LDPC 부호를 이용하여 통신 시스템에서 채널 부호화/복호화 방법 및 장치를 제공한다. The present invention generates an LDPC code generated by generating an LDPC code having a different codeword length using shortening or puncturing considering a higher-order modulation scheme from a given LDPC code, and uses the generated LDPC code. To provide a method and apparatus for channel encoding / decoding in a communication system.

또한 본 발명은 DVB-S2 구조를 고려하여 최적의 성능을 보장하는 저밀도 검사 부호를 사용하는 통신 시스템에서 채널 부호화/복호화 방법 및 장치를 제공한다. In addition, the present invention provides a method and apparatus for channel encoding / decoding in a communication system using a low density check code that ensures optimal performance in consideration of a DVB-S2 structure.

본 발명의 실시 예에 따른 복호화 방법은, 저밀도 패리티 검사 부호를 사용한 시스템에서 채널 복호화 방법에 있어서, 수신된 신호를 복조하는 과정; 단축된 정보 비트의 위치를 결정하는 과정; 및 상기 결정된 단축된 정보 비트의 위치를 고려하여 상기 복조된 신호를 복호하는 과정을 포함하고, 상기 단축된 정보 비트의 위치를 결정하는 과정은, 단축된 정보 비트의 수를 결정하는 과정; 상기 결정된 단축된 정보 비트의 수를 근거로 하여 단축된 비트 그룹의 수를 결정하는 과정; 및 미리 결정된 비트 그룹의 순서를 획득하는 과정을 포함한다.According to an aspect of the present invention, there is provided a channel decoding method in a system using a low density parity check code, comprising: demodulating a received signal; Determining the location of the shortened information bits; And decoding the demodulated signal in consideration of the determined position of the shortened information bits, wherein determining the position of the shortened information bits comprises: determining a number of shortened information bits; Determining the number of shortened bit groups based on the determined number of shortened information bits; And obtaining a predetermined order of the bit groups.

본 발명의 실시 예에 따른 복호화 장치는, 저밀도 패리티 검사 부호를 사용한 시스템에서 채널 복호화 장치에 있어서, 수신된 신호를 복조하는 복조기; 단축된 정보 비트의 위치를 결정하는 단축 패턴 결정부; 및 상기 결정된 단축된 정보 비트의 위치를 고려하여 상기 복조된 신호를 복호하는 복호기를 포함하고, 상기 단축된 정보 비트의 위치를 결정하는 과정은, 단축된 정보 비트의 수를 결정하는 과정; 상기 결정된 단축된 정보 비트의 수를 근거로 하여 단축된 비트 그룹의 수를 결정하는 과정; 및 미리 결정된 비트 그룹의 순서를 획득하는 과정을 포함한다.A decoding apparatus according to an embodiment of the present invention includes a channel decoding apparatus in a system using a low density parity check code, comprising: a demodulator for demodulating a received signal; A shortened pattern determiner which determines a position of a shortened information bit; And a decoder for decoding the demodulated signal in consideration of the determined position of the shortened information bits, wherein the determining of the position of the shortened information bits comprises: determining the number of shortened information bits; Determining the number of shortened bit groups based on the determined number of shortened information bits; And obtaining a predetermined order of the bit groups.

본 발명은 고차 변조 방식과 LDPC 부호를 사용하는 통신 시스템에서 주어진 패리티 검사 행렬의 정보를 이용해서 성능을 최적화하여 부호어 길이가 다른 별도의 LDPC 부호를 생성할 수 있다. According to the present invention, a separate LDPC code having a different codeword length may be generated by optimizing performance using information of a given parity check matrix in a communication system using a higher order modulation scheme and an LDPC code.

본 발명은 변조 방식에 따라서 서로 다른 단축 패턴을 적용하여 단축할 수 있다.The present invention can be shortened by applying different shortening patterns according to the modulation scheme.

도 1은 길이가 8인 LDPC 부호의 패리티 검사 행렬의 예를 도시한 도면,
도 2는 길이가 8인 LDPC 부호의 패리티 검사 행렬의 예의 Tanner 그래프를 도시한 도면,
도 3은 DVB-S2 LDPC 부호의 대략적인 구조도,
도 4는 DVB-S2 형태의 LDPC 부호의 패리티 검사 행렬의 예를 도시한 도면,
도 5(a)는 디지털 통신 시스템에서 사용하는 QPSK 변조의 예를 도시한 도면,
도 5(b)는 디지털 통신 시스템에서 사용하는 16-QAM 변조의 예를 도시한 도면,
도 5(c)는 디지털 통신 시스템에서 사용하는 64-QAM 변조의 예를 도시한 도면,
도 6는 LDPC 부호를 사용하는 통신 시스템의 송수신기 블록 구성도,
도 7(a)는 16-QAM 변조 방식에서 신호 성좌 비트 매핑의 예를 도시한 도면,
도 7(b)는 16-QAM 변조 방식에서 단축에 의한 신호 성좌 비트 매핑의 변화의 예를 도시한 도면,
도 8(a)는 64-QAM 변조 방식에서 신호 성좌 비트 매핑의 예를 도시한 도면,
도 8(b)는 64-QAM 변조 방식에서 단축에 의한 신호 성좌 비트 매핑의 변화의 예를 도시한 도면,
도 9는 본 발명의 실시 예에 따른 저장되어 있는 LDPC 부호의 패리티 검사 행렬로부터 다른 부호어 길이를 가지는 LDPC 부호를 생성하기 위한 흐름도,
도 10은 본 발명에서 제안한 단축된 LDPC 부호를 사용하는 송신 장치의 블록 구성도,
도 11은 본 발명에서 제안한 단축/천공된 LDPC 부호를 사용하는 송신 장치의 블록 구성도,
도 12는 본 발명에서 제안한 단축을 적용한 LDPC 부호를 사용하는 수신 장치의 블록 구성도,
도 13은 본 발명에서 제안한 단축과 천공을 모두 적용한 LDPC 부호를 사용하는 수신 장치의 블록 구성도,
도 14는 본 발명의 실시 예에 따른 수신 장치에서의 수신 동작을 도시한 흐름도.
1 is a diagram showing an example of a parity check matrix of an LDPC code having a length of 8;
2 is a Tanner graph of an example of a parity check matrix of an LDPC code having a length of 8;
3 is a schematic structural diagram of a DVB-S2 LDPC code;
4 is a diagram showing an example of a parity check matrix of an LDPC code of DVB-S2 type;
5 (a) shows an example of QPSK modulation used in a digital communication system;
5 (b) shows an example of 16-QAM modulation used in a digital communication system;
5 (c) is a diagram illustrating an example of 64-QAM modulation used in a digital communication system;
6 is a block diagram of a transceiver of a communication system using an LDPC code;
7 (a) shows an example of signal constellation bit mapping in a 16-QAM modulation scheme;
7 (b) is a diagram showing an example of change in signal constellation bit mapping by shortening in the 16-QAM modulation scheme;
8 (a) shows an example of signal constellation bit mapping in a 64-QAM modulation scheme;
8 (b) is a diagram showing an example of a change in signal constellation bit mapping by shortening in a 64-QAM modulation scheme;
9 is a flowchart for generating an LDPC code having a different codeword length from a parity check matrix of an stored LDPC code according to an embodiment of the present invention;
10 is a block diagram of a transmitter using a shortened LDPC code proposed in the present invention;
11 is a block diagram of a transmitter using a shortened / punched LDPC code proposed in the present invention;
12 is a block diagram of a receiver using an LDPC code to which a shortening proposed by the present invention is applied.
13 is a block diagram of a receiver using an LDPC code to which both shortening and puncturing proposed in the present invention are applied;
14 is a flowchart illustrating a receiving operation in a receiving apparatus according to an embodiment of the present invention.

본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흐리지 않도록 생략될 것이라는 것을 유의하여야 한다. Preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. It should be noted that in the following description, only parts necessary for understanding the operation according to the present invention will be described, and descriptions of other parts will be omitted so as not to obscure the subject matter of the present invention.

본 발명은 특정 형태의 구조적인 LDPC 부호의 패리티 검사 행렬을 이용하여 고차 변조 방식에 적합한 다양한 부호어 길이를 가지는 LDPC 부호를 지원하는 방법을 제안한다. 또한, 본 발명은 특정 형태의 LDPC 부호를 사용하는 통신 시스템에서 고차 변조 방식에 맞게 다양한 부호어 길이를 지원하는 장치 및 그 제어 방법을 제안한다. 특히 본 발명은 주어진 LDPC 부호의 패리티 검사 행렬을 이용하여 그보다 작은 LDPC 부호를 생성하는 방법 및 그 장치를 제안한다. The present invention proposes a method for supporting an LDPC code having various codeword lengths suitable for a higher-order modulation scheme using a parity check matrix of a structured LDPC code of a specific type. In addition, the present invention proposes an apparatus for supporting various codeword lengths and a control method thereof according to a higher-order modulation scheme in a communication system using a specific type of LDPC code. In particular, the present invention proposes a method and apparatus for generating a smaller LDPC code using a parity check matrix of a given LDPC code.

도 6은 LDPC 부호를 사용하는 통신 시스템의 송수신기 블록 구성도이다.6 is a block diagram of a transceiver of a communication system using an LDPC code.

도 6을 참조하면, 메시지

Figure pat00073
는 수신기(630)로 전송되기 전에 송신기(610)의 LDPC 부호화기(encoder)(611)로 입력된다. 그러면 상기 LDPC 부호화기(encoder)(611)는 입력된 메시지
Figure pat00074
를 부호화하고 부호화 신호 c를 변조기(Modulator)(613)로 출력한다. 상기 변조기(613)는 부호화된 신호 c를 변조하고 무선 채널(620)을 통해 변조 신호 s를 수신기(530)로 전송한다. 그러면, 수신기(630)의 복조기(Demodulator)(631)는 수신된 신호 r을 복조하고, 복조 신호 x를 LDPC 복호기(Decoder)(633)로 출력한다. 상기 LDPC 복호기(Decoder)(633)는 복조 신호 x를 복호화한 후, 무선 채널(620)을 통해 받은 데이터를 통해 메시지의 추정치(estimate)
Figure pat00075
를 추정해낸다.Referring to Figure 6, the message
Figure pat00073
Is input to the LDPC encoder 611 of the transmitter 610 before being transmitted to the receiver 630. The LDPC encoder 611 then inputs the message.
Figure pat00074
Is encoded and the encoded signal c is output to the modulator 613. The modulator 613 modulates the encoded signal c and transmits the modulated signal s to the receiver 530 via the wireless channel 620. Then, the demodulator 631 of the receiver 630 demodulates the received signal r and outputs the demodulated signal x to the LDPC decoder 633. The LDPC decoder 633 decodes a demodulated signal x and then estimates a message through data received through the wireless channel 620.
Figure pat00075
.

상기 LDPC 부호화기(611)는 미리 설정되어 있는 방식으로부터 통신 시스템에서 요구하는 부호어 길이에 맞게 패리티 검사 행렬을 생성한다. 특히, 본 발명에서 LDPC 부호화기(611)는 LDPC 부호를 이용하여 별도의 추가적인 저장 정보의 필요가 없으면서 다양한 부호어 길이를 지원할 수 있다. The LDPC encoder 611 generates a parity check matrix from the preset scheme in accordance with the codeword length required by the communication system. In particular, in the present invention, the LDPC encoder 611 may support various codeword lengths without the need for additional additional storage information by using the LDPC code.

본 발명에서는 주어진 LDPC 부호로부터 다양한 부호어 길이를 얻는 방법으로서 단축법(shortening) 또는 천공법(puncturing)이라는 방법을 사용한다. 기존에는 LDPC 부호에 단축 또는 천공을 적용할 때 부호율 또는 부호어 길이에 맞추어 성능을 최적화하는 방법들이 알려져 있다. 하지만 기존에 알려져 있던 단축 및 천공 패턴을 결정하는 방법에서는 대부분 BPSK(Binary Phase Shift Keying) 또는 QPSK(Quadrature Phase Shift Keying)만 고려하여 최적화 과정을 진행하였기 때문에 최적화된 단축 및 천공 패턴이 주어진 LDPC 부호에 따라 한 가지만 존재할 수 있었다.In the present invention, a method called shortening or puncturing is used as a method of obtaining various codeword lengths from a given LDPC code. Conventionally, methods for optimizing performance according to code rate or codeword length when shortening or puncturing is applied to LDPC codes are known. However, most of the known methods for determining the shortening and puncturing patterns have been optimized by considering only Binary Phase Shift Keying (BPSK) or Quadrature Phase Shift Keying (QPSK). Only one could exist.

하지만, 고차 변조를 사용하면서 신호 성좌(signal constellation) 비트 매핑(bit mapping) 방식이 결정되어 있을 때의 최적화된 천공 및 단축 패턴은 BPSK 또는 QPSK 변조 방식을 위한 그것들과 상이해 질 수 있다. However, optimized puncturing and shortening patterns when signal constellation bit mapping schemes are determined using higher order modulation may be different than those for BPSK or QPSK modulation schemes.

BPSK나 QPSK 변조 방식에서는 심볼에 포함된 비트들의 신뢰도(reliability)가 동일하다. 결과적으로, 단축 또는 천공을 적용한 이후의 LDPC 부호어에서 각 부호어 비트들의 신뢰도 또한 동일하므로 단축 및 천공 패턴을 결정하는 과정에서 변조 방식을 고려할 필요는 없었다. 하지만, 종래기술에서 설명한 바와 같이 16-QAM, 64-QAM, 256-QAM과 같은 고차 변조 방식에서는 심볼에 포함된 비트들의 신뢰도(reliability)가 상이하기 때문에 변조 방식과 신호 성좌 비트 매핑 방식이 결정되어 있을 때 단축 또는 천공을 적용한 이후의 LDPC 부호어에서 각 부호어 비트에 대응되는 신뢰도가 단축 또는 천공을 적용하기 이전과 상이할 수 있다. In the BPSK or QPSK modulation scheme, the reliability of bits included in a symbol is the same. As a result, since the reliability of each codeword bit is the same in the LDPC codeword after applying shortening or puncturing, it is not necessary to consider a modulation scheme in determining shortening and puncturing patterns. However, as described in the prior art, in the higher-order modulation schemes such as 16-QAM, 64-QAM, and 256-QAM, the modulation scheme and the signal constellation bit mapping scheme are determined because the reliability of the bits included in the symbol is different. When present, the reliability corresponding to each codeword bit in the LDPC codeword after applying shortening or puncturing may be different from before applying shortening or puncturing.

상기 도 7(a), 도 7(b), 도 8(a) 및 도 8(b)는 각각 변조 방식이 16-QAM, 64-QAM일 때 LDPC 부호어에서 변수 노드의 차수에 따라 심볼에 매핑되는 비트 사상의 예를 나타낸 도면이다. 특히, 도 7(a)는 16-QAM 변조 방식에서 신호 성좌 비트 매핑의 예를 도시한 도면이고, 도 7(b)는 16-QAM 변조 방식에서 단축에 의한 신호 성좌 비트 매핑의 변화의 예를 도시한 도면이다. 여기서 편의상 LDPC 부호어를 각각 8개 또는 12개의 일정한 단위의 부분 블록으로 나누어 생각한다. 7 (a), 7 (b), 8 (a), and 8 (b) show symbols according to the order of variable nodes in an LDPC codeword when modulation schemes are 16-QAM and 64-QAM, respectively. It is a figure which shows the example of mapped bit mapping. In particular, FIG. 7A illustrates an example of signal constellation bit mapping in 16-QAM modulation, and FIG. 7B illustrates an example of change in signal constellation bit mapping by shortening in 16-QAM modulation. Figure is shown. For convenience, the LDPC codewords are considered to be divided into 8 or 12 partial blocks each.

상기 도 7(a)를 참조하면 y0, y1은 각각 16-QAM 심볼에서 실수부와 허수부의 부호를 결정짓는 신뢰도가 높은 비트를 의미한다. 즉 신뢰도의 크기 관계는 y0 = y1 > y2 = y3이다. 상기 도 7(a)에서, 최고차수 변수 노드에 대응되는 LDPC 부호어 비트 부분에는 y1과 y3가 매핑되므로 상기 최고차수 변수 노드 중에서 1/2은 신뢰도가 높은 부분에 대응되고 나머지 1/2은 신뢰도가 낮은 부분에 연결된다. Referring to FIG. 7A, y 0 and y 1 denote bits having high reliability that determine the sign of the real part and the imaginary part of the 16-QAM symbol, respectively. That is, the magnitude relationship of reliability is y 0 = y 1 > y 2 = y 3 . In FIG. 7 (a), since y 1 and y 3 are mapped to the LDPC codeword bit portion corresponding to the highest order variable node, 1/2 of the highest order variable nodes correspond to the parts having high reliability and the remaining 1/2 Is connected to the part with low reliability.

이제 도 7(b)처럼 최고차수 변수 노드 중에서 절반이 단축되었다고 가정하고, 단축되지 않은 최고차수 변수 노드에 대응되는 심볼 비트가 단축된 LDPC 부호어에서 고려될 때, 상기 최고차수 변수 노드의 7/8은 y3에 매핑되고, 1/8은 y1에 매핑된다. 즉, 단축되기 전의 비율과 매우 상이해진다. Assuming that half of the highest order variable nodes are shortened as shown in FIG. 7 (b), when the symbol bits corresponding to the non-shortened highest order variable nodes are considered in the shortened LDPC codeword, 8 is mapped to y 3 , and 1/8 is mapped to y 1 . That is, it becomes very different from the ratio before shortening.

마찬가지로 상기 도 8(a)를 살펴보기로 한다. 도 8(a)는 64-QAM 변조 방식에서 신호 성좌 비트 매핑의 예를 도시한 도면이고, 도 8(b)는 64-QAM 변조 방식에서 단축에 의한 신호 성좌 비트 매핑의 변화의 예를 도시한 도면이다. Similarly, FIG. 8 (a) will be described. FIG. 8 (a) shows an example of signal constellation bit mapping in the 64-QAM modulation scheme, and FIG. 8 (b) shows an example of change in signal constellation bit mapping by shortening in the 64-QAM modulation scheme. Drawing.

상기 도 8(a)에서 심볼에 포함된 각 비트의 신뢰도 관계는 y0 = y1 > y2 = y3 > y4 = y5이다. 이 경우에는 LDPC 부호어에서 최고차수에 대응되는 변수 노드의 1/3은 가장 신뢰도가 낮은 y5에 대응됨을 알 수 있다. 하지만 상기 도 8(b)의 경우처럼 최고차수 변수 노드 중에서 2/3가 단축된 경우에는 나머지 단축되지 않은 최고차수 변수 노드의 5/6가 가장 신뢰도가 낮은 y5에 대응되어, 단축되기 전과 상이한 비율을 가짐을 알 수 있다. In FIG. 8A, the reliability relationship of each bit included in the symbol is y 0. = y 1 > y 2 = y 3 > y 4 = y 5 . In this case, it can be seen that 1/3 of the variable nodes corresponding to the highest order in the LDPC codeword correspond to y 5 having the lowest reliability. However, when 2/3 of the highest order variable nodes are shortened, as in the case of FIG. 8 (b), 5/6 of the remaining non-shortened highest order variable nodes correspond to y 5 having the lowest reliability, which is different from before shortening. It can be seen that it has a ratio.

이상에서 설명한 바와 같이 주어진 LDPC 부호에 대하여 고차 변조 방식과 신호 성좌 비트 매핑 방식이 고정되어 있을 때, 단축 방법에 따라 변조 심볼의 각 비트에 매핑되는 LDPC 부호어 비트의 비율이 매우 상이해지기 때문에 BPSK나 QPSK 변조 방식에서 사용된 단축 또는 천공 패턴은 적합하지 않을 수 있다. As described above, when the higher order modulation scheme and the signal constellation bit mapping scheme are fixed for a given LDPC code, the ratio of LDPC codeword bits mapped to each bit of the modulation symbol is very different according to the shortening method. However, shortening or puncturing patterns used in the QPSK modulation scheme may not be suitable.

또한 LDPC 부호는 변조 방식에 따라 최적화된 LDPC 부호의 패리티 검사 행렬의 차수 분포가 매우 상이함이 잘 알려져 있다. 즉, BPSK 또는 QPSK 변조 방식에 최적화된 LDPC 부호의 차수 분포와 16-QAM, 64-QAM 및 256-QAM에 최적화된 LDPC 부호의 차수 분포는 모두 상이하다. It is also well known that the order distribution of the parity check matrix of the LDPC code optimized by the modulation scheme is very different. That is, the order distribution of LDPC codes optimized for BPSK or QPSK modulation schemes and the order distribution of LDPC codes optimized for 16-QAM, 64-QAM and 256-QAM are all different.

이와 유사한 이유로 하나의 차수 분포를 가지는 LDPC 부호가 주어졌다고 가정했을 때 고차 변조 방식에 따라 최적화된 단축 또는 천공 패턴은 모두 상이한 패턴을 가지게 됨이 자명하다. 결론적으로 LDPC 부호의 최적화된 단축 또는 천공 패턴을 구하기 위해서는 적용할 변조 방식을 고려해서 단축 패턴을 구해야 한다. Similarly, assuming that an LDPC code having one order distribution is given, it is apparent that all of the shortened or punctured patterns optimized by the higher-order modulation scheme have different patterns. In conclusion, in order to obtain an optimized shortening or puncturing pattern of an LDPC code, it is necessary to obtain a shortening pattern considering the modulation scheme to be applied.

변조 방식을 고려한 단축 또는 천공 패턴을 결정하는 방법을 설명하기 위해 먼저 단축법(shortening)에 대해서 설명한다. 상기 “단축법”이라 함은 LDPC 부호화를 수행함으로써 주어진 특정 패리티 검사 행렬로부터 LDPC 부호어를 생성한 후에, 상기 LDPC 부호어의 특정한 부분을 실질적으로 전송하지 않는 방법을 의미한다. 단축법에 대한 이해를 돕기 위해 도 3의 DVB-S2 LDPC 부호의 패리티 검사 행렬을 이용하여 이하에서 자세히 설명한다. In order to explain a method of determining a shortening or puncturing pattern in consideration of a modulation method, a shortening method will first be described. The term “shortening method” refers to a method of generating an LDPC codeword from a given parity check matrix by performing LDPC encoding, and then substantially not transmitting a specific portion of the LDPC codeword. In order to understand the shortening method, the parity check matrix of the DVB-S2 LDPC code of FIG. 3 will be described in detail below.

상기 도 3의 DVB-S2 LDPC 부호의 패리티 검사 행렬은 전체 길이가

Figure pat00076
이며, 상기 패리티 검사 행렬의 앞부분은 길이가
Figure pat00077
인 정보어 비트들
Figure pat00078
이 대응되고, 상기 패리티 검사 행렬의 뒷부분은 길이가
Figure pat00079
인 패리티 비트들
Figure pat00080
이 대응된다. 통상적으로 정보어 비트들은 0, 1의 값을 자유롭게 가지게 되는데 단축법에서는 단축시킬 특정 부분의 정보어 비트들의 값에 제한을 두게 된다. 예를 들어
Figure pat00081
에서부터
Figure pat00082
까지
Figure pat00083
개의 정보어 비트를 단축한다는 의미는 통상적으로
Figure pat00084
임을 의미한다. 즉,
Figure pat00085
에서부터
Figure pat00086
까지
Figure pat00087
개의 정보어 비트에 대한 값을 0으로 제한함으로써 상기 도 3의 DVB-S2 LDPC 부호의 패리티 검사 행렬에서 앞부분의
Figure pat00088
개의 열을 실질적으로 사용하지 않는 것과 동일한 효과를 얻게 되는 것이다. "단축법"이라는 용어는 이러한 이유로 유래되었다. 따라서 본 발명에서 단축을 적용했다는 의미는 단축된 정보어 비트들의 값을 0으로 간주함을 의미하기도 한다. The parity check matrix of the DVB-S2 LDPC code of FIG.
Figure pat00076
Where the front part of the parity check matrix is
Figure pat00077
Information word bits
Figure pat00078
Is corresponding, and the rear part of the parity check matrix is
Figure pat00079
In parity bits
Figure pat00080
This corresponds. In general, information word bits have values of 0 and 1 freely. In the shorthand method, the information word bits of a specific part to be shortened are limited. E.g
Figure pat00081
From
Figure pat00082
Till
Figure pat00083
Shortening of information bits means
Figure pat00084
. In other words,
Figure pat00085
From
Figure pat00086
Till
Figure pat00087
By limiting the values of the four information word bits to 0, the preceding part of the parity check matrix of the DVB-S2 LDPC code of FIG.
Figure pat00088
You get the same effect as you don't actually use the dog's heat. The term "shortening" was derived for this reason. Therefore, the application of the shortening in the present invention also means that the value of the shortened information word bits is regarded as 0.

상기 단축법은 시스템을 설정할 때 송신단과 수신단에서 단축되는 정보어 비트에 대한 위치 정보는 동일하게 공유 또는 생성 할 수 있으므로 송신단에서 단축된 비트들을 전송하지 않아도 수신단에서는 단축된 비트들에 해당하는 위치의 정보어 비트가 이미 0임을 알고 있는 상태에서 복호를 수행할 수 있다.In the shortening method, when the system is configured, the location information of the information word bits shortened at the transmitter and the receiver may be shared or generated in the same manner, and thus the receiver may not be able to transmit the shortened bits. Decoding can be performed while the information word bit is already known to be zero.

상기 단축법은 송신단에서 실제로 전송하는 부호어 길이가

Figure pat00089
이고, 정보어의 길이가
Figure pat00090
이므로 부호율이
Figure pat00091
이 되어 처음 주어진 부호율
Figure pat00092
보다 항상 작게 된다. In the shortening method, the codeword length actually transmitted by the transmitting end is
Figure pat00089
The length of the information word
Figure pat00090
Since the code rate is
Figure pat00091
Is the first given code rate
Figure pat00092
Always smaller.

일반적으로 천공법은 정보어 비트와 패리티 비트에 모두 적용할 수 있다. 또한 천공법과 단축법은 부호의 부호어 길이를 작게 만든다는 공통점은 있지만, 천공법은 단축법과 달리 특정 비트의 값에 제한을 두는 개념이 아니다. 특히, 천공법은 특정 정보어 비트 또는 생성된 패리티 비트 중 특정 부분을 단지 전송하지 않음으로써 수신단에서 소실(erasure)로 처리하는 방법이다. 즉, 이미 생성된 길이가

Figure pat00093
인 LDPC 부호어 중에서
Figure pat00094
개의 약속된 위치에 비트들을 단지 전송하지 않음으로써 길이가
Figure pat00095
인 LDPC 부호어를 전송하는 것과 동일한 효과를 얻는다. 패리티 검사 행렬에서 천공된 비트들에 해당하는 열들은 복호 과정에서 모두 그대로 사용되므로 단축법과는 차이가 있다. In general, the puncturing method can be applied to both information word bits and parity bits. In addition, although the puncturing and shortening methods have in common that the codeword length of a code is shortened, unlike the shortening method, the puncturing method is not a concept of limiting a value of a specific bit. In particular, the puncturing method is a method of treating the receiver with an erasure by not transmitting a specific information word bit or a specific part of the generated parity bit. In other words, the length already created
Figure pat00093
LDPC codewords
Figure pat00094
By simply not sending bits to two promised positions
Figure pat00095
The same effect as transmitting an LDPC codeword is obtained. The columns corresponding to bits punctured in the parity check matrix are used as they are in the decoding process, which is different from the shorthand method.

게다가 본 발명의 실시 예에 따르면 천공된 비트들에 대한 위치 정보는 시스템을 설정할 때 송신단과 수신단이 동일하게 공유하거나 추정할 수 있으므로 수신단에서는 해당 천공된 비트들은 단지 소실로 처리하여 복호를 수행하게 된다. In addition, according to an embodiment of the present invention, since the transmitter and the receiver can share or estimate the position information of the punctured bits in the same time as the system is set, the receiver performs decoding only by processing the punctured bits. .

천공법은 송신단에서 실제로 전송하는 부호어 길이가

Figure pat00096
이고, 정보어의 길이는 변함없이
Figure pat00097
이므로 부호율이
Figure pat00098
이 되어 처음 주어진 부호율
Figure pat00099
보다 항상 크게 된다. The puncturing method uses the codeword length
Figure pat00096
The length of the information word
Figure pat00097
Since the code rate is
Figure pat00098
Is the first given code rate
Figure pat00099
Always bigger.

이제 DVB-S2 LDPC 부호에 적합한 단축법과 천공법에 대해 설명한다. 상기 DVB-S2 LDPC 부호는 배경 기술에 언급한 바와 같이 특정 구조를 가지는 LDPC 부호의 일종이다. 따라서 일반적인 LDPC 부호의 경우와 달리 보다 효율적으로 단축과 천공을 적용할 수 있다. Now, a shortening method and a puncturing method suitable for DVB-S2 LDPC codes will be described. The DVB-S2 LDPC code is a kind of LDPC code having a specific structure as mentioned in the background art. Therefore, shortening and puncturing can be applied more efficiently than in the case of a general LDPC code.

설명의 편의를 위해서 DVB-S2 LDPC 부호는 부호어 길이와 정보어 길이가 각각

Figure pat00100
,
Figure pat00101
이고, 단축법과 천공법을 이용하여 DVB-S2 LDPC 부호로부터 최종적으로 얻고자 하는 LDPC 부호의 부호어 길이와 정보어 길이를 각각
Figure pat00102
,
Figure pat00103
이라 하자. 만일 우리가
Figure pat00104
,
Figure pat00105
라고 정의하면, DVB-S2 LDPC 부호의 패리티 검사행렬에서
Figure pat00106
비트만큼 단축을 취하고,
Figure pat00107
비트만큼 천공을 취하면 부호어 길이와 정보어 길이를 각각
Figure pat00108
,
Figure pat00109
인 상기 LDPC 부호를 생성할 수 있다. 이렇게 생성된 상기 LDPC 부호는
Figure pat00110
또는
Figure pat00111
일 때, 부호율이
Figure pat00112
가 되어 일반적으로 DVB-S2 LDPC 부호의 부호율
Figure pat00113
와는 다르게 되므로 대수적 특성이 변하게 된다. 여기서
Figure pat00114
인 경우에는 단축이나 천공을 모두 적용하지 않거나 또는 단축만 취한 경우에 해당된다. For convenience of description, the DVB-S2 LDPC code has a codeword length and an information word length, respectively.
Figure pat00100
,
Figure pat00101
The codeword length and the information word length of the LDPC code finally obtained from the DVB-S2 LDPC code using the shortening method and the puncturing method are respectively obtained.
Figure pat00102
,
Figure pat00103
. If we
Figure pat00104
,
Figure pat00105
Is defined in the parity check matrix of the DVB-S2 LDPC code.
Figure pat00106
Taking the bit as short as possible,
Figure pat00107
When puncturing bit by bit, the codeword length and information word length
Figure pat00108
,
Figure pat00109
The LDPC code may be generated. The generated LDPC code is
Figure pat00110
or
Figure pat00111
, The code rate is
Figure pat00112
Code rate of DVB-S2 LDPC code
Figure pat00113
And the algebraic characteristic is changed. here
Figure pat00114
If is not applied to both shortening or drilling or if only shortening is taken.

그러나 상기 DVB-S2 LDPC 부호는 <규칙 1>과 <규칙 2>에서 설명한 바와 같이 한 개의

Figure pat00115
값이
Figure pat00116
개의 열에 대응되어 총
Figure pat00117
개의 열그룹(column group)이 각각 구조적인 형태를 가진다. 따라서 DVB-S2 LDPC 부호는 한 개의
Figure pat00118
값을 사용하지 않으면
Figure pat00119
개의 열을 사용하지 않는 것과 동일하다. 이러한 특징을 고려하여 도 9를 참조하여 설명될 단축 과정을 제안한다.However, the DVB-S2 LDPC code has one single rule as described in Rule 1 and Rule 2.
Figure pat00115
The value is
Figure pat00116
Corresponding to ten columns
Figure pat00117
Each column group has a structural form. Therefore, the DVB-S2 LDPC code is one
Figure pat00118
If no value is used
Figure pat00119
This is equivalent to not using two columns. In consideration of this feature, a shortening process to be described with reference to FIG. 9 is proposed.

도 9는 본 발명의 실시 예에 따라서 저장된 LDPC 부호의 패리티 체크 메트릭스로부터 다른 부호어로 LDPC 부호를 생성하는 과정을 나타낸다.9 illustrates a process of generating an LDPC code from another codeword from a parity check matrix of stored LDPC codes according to an embodiment of the present invention.

먼저, LDPC 부호화기는 901 단계에서 심볼 전송 변조 방식을 결정하고 903 단계에서 단축을 취할 DVB-S2 LDPC 부호의 열그룹 정보를 호출한다. 즉, 저장되어 있는 패리티 검사 행렬 정보를 호출한다. 이후, LDPC 부호화기는 905 단계에서 DVB-S2 LDPC 부호의 열그룹 정보에서 부호어 길이

Figure pat00120
와 정보어 길이
Figure pat00121
를 결정한다. 이후, LDPC 부호화기는 저장되어 있는 패리티 검사 행렬의 호출된 정보로부터 요구되는 LDPC 부호의 정보어 길이에 맞는 단축을 취하는데, 하기 907 단계 내지 913 단계와 같은 단축 과정을 진행한다.First, in step 901, the LDPC encoder determines a symbol transmission modulation scheme and calls column group information of a DVB-S2 LDPC code to be shortened in step 903. That is, the stored parity check matrix information is called. After that, in step 905, the LDPC coder has a codeword length in column group information of the DVB-S2 LDPC code.
Figure pat00120
And information word length
Figure pat00121
. Thereafter, the LDPC encoder obtains a shortening corresponding to the information word length of the required LDPC code from the called information of the stored parity check matrix, and proceeds with the shortening process as described in steps 907 to 913.

단축 단계 1: LDPC 부호화기는 907 단계에서

Figure pat00122
를 구한다. 여기서
Figure pat00123
Figure pat00124
보다 같거나 작은 최대 정수를 의미한다. Short Step 1 : LDPC Coder in Step 907
Figure pat00122
. here
Figure pat00123
The
Figure pat00124
Means a maximum integer greater than or equal to

단축 단계 2: LDPC 부호화기는 909 단계에서

Figure pat00125
중에서
Figure pat00126
개의 열그룹에 대한 시퀀스를 선택한다. 선택된 시퀀스를
Figure pat00127
라 정의한다. LDPC 부호화기는 상기 수열
Figure pat00128
에서 상기 부분 수열
Figure pat00129
을 제외한 나머지
Figure pat00130
개의 열그룹에 대한 수열은 없는 것으로 간주한다. Short Step 2 : The LDPC Coder in Step 909
Figure pat00125
Between
Figure pat00126
Select a sequence for ten column groups. The selected sequence
Figure pat00127
It is defined as An LDPC encoder
Figure pat00128
The partial sequence in
Figure pat00129
Except
Figure pat00130
No sequence of columns is assumed.

단축 단계 3: LDPC 부호화기는 911 단계에서 단축 단계 2에서 선택된

Figure pat00131
개의
Figure pat00132
로부터 DVB-S2 LDPC 부호의 정보어에 대응되는 열그룹의 위치를 결정한다. 이 경우에 단축된 DVB-S2 LDPC 부호를 생성한다. 이때 단축된 LDPC 부호는 정보어의 길이가
Figure pat00133
이 됨에 유의한다. 또한 이 값은 항상
Figure pat00134
보다 크거나 같다. Shortening Step 3 : The LDPC encoder is selected in shortening step 2 in step 911.
Figure pat00131
doggy
Figure pat00132
The position of the column group corresponding to the information word of the DVB-S2 LDPC code is determined. In this case, a shortened DVB-S2 LDPC code is generated. In this case, the shortened LDPC code has a length of information word.
Figure pat00133
Note that Also, this value is always
Figure pat00134
Is greater than or equal to

단축 단계 4: LDPC 부호화기는 913 단계에서 단축 단계 3에서 생성된 단축된 LDPC 부호에서

Figure pat00135
개의 열을 추가적으로 단축한다. Shortening Step 4 : The LDPC coder uses the shortened LDPC code generated in the shortening step 3 in step 913.
Figure pat00135
Shorten the rows of dogs further.

상기 단축 단계 4에서 추가적인 단축은 추가적인 단축이 이루어지는 열그룹의 맨 뒤에서부터 차례대로 수행하거나 맨 앞에서 차례대로 수행하면 보다 쉽게 구현할 수 있다.In the shortening step 4, the additional shortening may be more easily implemented by sequentially performing the rear of the column group in which the additional shortening is performed or sequentially performing the front.

상기에서 설명한 바와 같이 본 발명의 실시 예에서는 DVB-S2 LDPC 부호의 단축을 위해 통상적으로 사용하는 비트 단위 단축법과 달리 상기 DVB-S2 LDPC 부호의 구조적 특성을 이용하여 상기 DVB-S2 LDPC 부호의 열그룹에 대한 정보를 사용하지 않는 방법을 이용하여 효율적인 단축법을 적용할 수 있다. As described above, in the exemplary embodiment of the present invention, unlike the bit-wise shortening method commonly used for shortening the DVB-S2 LDPC code, the column group of the DVB-S2 LDPC code is utilized by using the structural characteristics of the DVB-S2 LDPC code. An efficient abbreviation can be applied using a method that does not use information about.

상기 DVB-S2 LDPC 부호의 단축 과정의 단계 2에서 열그룹에 대한 수열의 선택 기준에 대해서 간단히 정리하면 아래와 같다.In step 2 of the shortening process of the DVB-S2 LDPC code, the selection criteria of the sequence for the column group are briefly summarized as follows.

< 기준 1 >: LDPC 부호화기는 부호어 길이가

Figure pat00136
이며 정보어의 길이가
Figure pat00137
인 일반적인 LDPC 부호에 대해서 주어진 변조 방식을 고려하여 얻을 수 있는 최적의 차수 분포와, 부호어 길이가
Figure pat00138
이며 정보어의 길이가
Figure pat00139
인 DVB-S2 LDPC 부호에서 단축을 취하여 얻은 부호어 길이가
Figure pat00140
이며, 정보어의 길이가
Figure pat00141
인 단축된 LDPC 부호의 차수 분포가 가능한 한 유사하도록 열 그룹을 위한 단축 패턴 시퀀스를 선택한다. <Reference 1>: LDPC coder has a codeword length
Figure pat00136
And the length of the information word
Figure pat00137
For the normal LDPC code, the optimal order distribution and codeword length
Figure pat00138
And the length of the information word
Figure pat00139
Codeword length obtained by taking shortening from DVB-S2 LDPC code
Figure pat00140
And the length of the information word is
Figure pat00141
The shortened pattern sequence for the column group is selected so that the order distribution of the shortened LDPC code is as similar as possible.

< 기준 2 > : < 기준 1 >에서 선택한 단축된 부호들 중에서 Tanner 그래프 상의 사이클 특성이 좋은 부호가 되도록 하는 열 그룹을 위한 단축 패턴 시퀀스를 선택한다. 본 발명의 실시 예에 따르면 사이클 특성의 기준을 Tanner 그래프 내의 최소 길이 사이클이 가장 크면서, 상기 최소 길이 사이클의 개수가 가장 적은 시퀀스를 선택한다.<Criteria 2>: Among the short codes selected in <Criteria 1>, a short pattern sequence for a column group is selected so that the cycle characteristic on the Tanner graph becomes a good sign. According to an embodiment of the present invention, the cycle characteristics are selected based on a cycle having the largest minimum length cycle in the Tanner graph and having the smallest number of minimum cycles.

상기 <기준 1>에서 변조 방식을 고려한 일반적인 LDPC 부호의 최적의 차수 분포는 다양한 구현 방법이 당업자에게 알려져 있는 밀도 진화(density evolution) 분석 방법을 통하여 구할 수 있다. 하지만, 밀도 진화 방법을 통해 차수 분포를 결정하는 과정은 본 발명의 요지에 필수적이지 않으므로 구체적인 내용은 제공되지 않는다.The optimal order distribution of the general LDPC code considering the modulation scheme in <Reference 1> can be obtained through a density evolution analysis method in which various implementation methods are known to those skilled in the art. However, since the process of determining the order distribution through the density evolution method is not essential to the gist of the present invention, no specific details are provided.

만일 열그룹에 대한 가능한 모든 (단축 패턴) 시퀀스의 수가 많지 않은 경우에는 상기 <기준 1>과 <기준 2>와 같은 두 가지 조건과 무관하게 모든 시퀀스들에 대해 완전하게 조사하여 실제로 가장 좋은 성능을 가지는 열그룹에 대한 (단축 패턴) 시퀀스를 선택해도 된다. 하지만 상기 DVB-S2 LDPC 부호의 단축 단계 2에서 적용하는 열그룹에 대한 선택 기준은 상기 열그룹에 대한 가능한 모든 (단축 패턴) 시퀀스의 수가 너무 많을 경우에 상기 두 가지 조건을 만족하는 LDPC 부호를 선택함으로써 효율적으로 (단축 패턴)을 선택할 수 있게 된다.If the number of all possible (short pattern) sequences for a column group is not large, all sequences are examined thoroughly regardless of the two conditions, such as <Criteria 1> and <Criteria 2>, in order to obtain the best performance. The branch may select a (short pattern) sequence for the column group. However, the selection criterion for the column group applied in step 2 of the DVB-S2 LDPC code selects an LDPC code that satisfies the above two conditions when the number of all possible (short pattern) sequences for the column group is too large. By doing so, it is possible to efficiently select the shortening pattern.

상기 <기준 1>과 <기준 2>는

Figure pat00142
Figure pat00143
가 고정된 값을 때 적용된다. 그런데 만일 시스템에서 요구하는
Figure pat00144
,
Figure pat00145
의 값이 매우 가변적일 경우에는
Figure pat00146
의 값에 따라서 최적화된 단축 패턴이 상호 연관성이 없을 수도 있다. 즉, 시스템에서 요구하는
Figure pat00147
,
Figure pat00148
의 값이 매우 가변적일 경우에는 최적화된 성능을 위해서는
Figure pat00149
값에 따라서 최적화된 단축 패턴을 모두 따로 저장해야 된다는 단점이 있을 수 있다. <Reference 1> and <Reference 2> are
Figure pat00142
Wow
Figure pat00143
Is applied when it has a fixed value. But if the system requires
Figure pat00144
,
Figure pat00145
If the value of is very variable
Figure pat00146
Depending on the value of, the optimized shortening pattern may not be correlated. That is,
Figure pat00147
,
Figure pat00148
If the value of is very variable for optimal performance
Figure pat00149
According to the value, there may be a disadvantage in that all optimized short patterns must be stored separately.

따라서 시스템에서 요구하는

Figure pat00150
,
Figure pat00151
의 값이 매우 가변적일 경우에는 시스템의 효율성을 위해 아래에서 설명될 방법으로 준최적(suboptimal)의 단축 패턴을 찾을 수 있다. So the system requires
Figure pat00150
,
Figure pat00151
If the value of is very variable, the suboptimal shortening pattern can be found for the efficiency of the system as described below.

< < 준최적Suboptimal 단축 패턴 수열 찾는 방법 > How to find a short pattern sequence>

먼저 단축을 위해 1개의 열그룹의 선택이 필요하다고 가정하고, 선택할 수 있는 열그룹의 개수가 1개뿐이므로 가장 성능이 우수한 열그룹을 선택할 수 있다. 단축을 위해 2개의 열그룹의 선택이 필요할 경우에는 앞서 선택한 1개의 열그룹을 포함하여, 나머지 열그룹 중에서 가장 좋은 성능을 보이는 열그룹을 선택한다. 유사하게 단축을 위해 i개의 열그룹의 선택이 필요할 경우에 전 단계에서 단축을 위해 선택한 (i-1)개의 열그룹을 포함하여, 나머지 열그룹들 중에서 가장 성능이 우수한 열그룹 하나를 선택한다. First, it is assumed that the selection of one column group is required for shortening. Since there is only one column group to be selected, the column group having the best performance can be selected. If you need to select two column groups for shortening, select the one that performs the best among the remaining ones, including the one you selected earlier. Similarly, if it is necessary to select i column groups for shortening, select one of the best performing column groups among the remaining column groups, including the (i-1) column groups selected for shortening in the previous step.

상기 방법은 모든 경우에 대해 최적의 선택을 보장하지는 못하지만, 하나의 일정한 규칙을 가지는 단축 패턴으로부터

Figure pat00152
값의 변화에 무관하게 비교적 안정된 성능을 가지게 된다. 따라서 비교적 안정된 성능과 용이한 단축 패턴의 저장성에 대한 장점이 있게 된다. The method does not guarantee optimal selection in all cases, but from shortened patterns with one constant rule.
Figure pat00152
Regardless of the value change, it has a relatively stable performance. Therefore, there is an advantage in terms of relatively stable performance and easy storage of shortened pattern.

정보어 비트에 대응되는 열그룹이 총 G개가 있는 DVB-S2 LDPC 부호를 예를 들어 보기로 한다. 상기 단축 패턴을 결정하는 방법을 적용하여 단축을 취할 열그룹의 순서를

Figure pat00153
로 설정했다고 하면, 상기 열그룹의 순서를 의미하는 수열만 저장하고 있으면, 임의의
Figure pat00154
값에 대하여 상기 단축 단계 1부터 단축 단계 4의 과정을 거쳐 효율적인 단축이 가능하다. As an example, a DVB-S2 LDPC code having a total of G column groups corresponding to the information word bits will be described. Applying the method of determining the shortening pattern to order the group of columns to be shortened
Figure pat00153
If it is set to, and if only the sequence meaning the sequence of the column group is stored,
Figure pat00154
With respect to a value, an efficient shortening is possible through the process of shortening step 1 to shortening step 4.

각 변조 방식에 따라 상기 방법들을 통해서 찾은 단축 패턴의 차이에 대한 예를 나타내기 위하여 부호어 길이

Figure pat00155
이 16200이며 정보어의 길이
Figure pat00156
이 7200인 DVB-S2 LDPC 부호에 대하여 BPSK/QPSK, 16QAM, 64QAM 변조 방식에 대하여 준최적화된 단축 패턴 및 단축 방법을 하기 <표 1> 및 <표 2>에 나타내었다. Codeword length to show an example of the difference in the shortening pattern found through the above methods according to each modulation scheme
Figure pat00155
Is 16200 and the length of the information word
Figure pat00156
For the 7200 DVB-S2 LDPC code, semi-optimized shortening patterns and shortening methods for BPSK / QPSK, 16QAM, and 64QAM modulation schemes are shown in Tables 1 and 2 below.

Figure pat00157
Figure pat00157

Figure pat00158
Figure pat00158

상기 <표 1> 및 <표 2>을 살펴보면, 단축 방법은 변조 방식에 무관하게 단축될 정보어 비트의 길이가 정해지면 일정한 과정을 통해 수행되지만, 최적화된 단축 패턴을 나타내는 순열 함수관계는 각 변조 방식에 따라 모두 다름을 알 수 있다. 즉, 변조 방식을 고려하지 않고 일정한 단축 방법을 적용하면 변조 방식에 따라 큰 성능 열화가 발생할 수도 있다. Referring to Tables 1 and 2, the shortening method is performed through a predetermined process when the length of the information word bit to be shortened is determined irrespective of the modulation scheme, but the permutation function relation representing the optimized shortening pattern is determined by each modulation. You can see that it all depends on the method. That is, if a certain shortening method is applied without considering the modulation method, a large performance degradation may occur depending on the modulation method.

상기 <표 1>에 대해서 구한 상기 <표 2>와 같은 준최적화된 단축 패턴은 구하는 조건에 따라 유일하지 않을 수 있다. 예를 들어 상기 <준최적 단축 패턴 수열을 찾는 방법>의 중간 과정에서 유사한 성능을 보이는 열그룹들이 여러 가지 존재할 수 있다. 이러한 경우에는 열그룹의 선택에 따라 다음 열그룹의 선택이 달라질 수 있기 때문에 단축 과정의 성능 차이에 따라 준최적화된 단축 패턴은 유일하지 않을 수 있다. 실제로 다음의 <표 3>와 같은 단축 패턴도 상기 <표 1>에서 보여준 단축 방법 성능과 유사하게 매우 우수한 성능을 제공한다. The suboptimal shortened pattern as shown in Table 2 obtained with respect to Table 1 may not be unique depending on the conditions to be obtained. For example, in the middle of the method of finding a suboptimal shortened pattern sequence, there may be a plurality of heat groups having similar performances. In this case, since the selection of the next column group may vary depending on the selection of the column group, the quasi-optimized shortening pattern may not be unique depending on the performance difference of the shortening process. In fact, the shortening pattern as shown in Table 3 also provides very good performance similar to the shortening method performance shown in Table 1 above.

Figure pat00159
Figure pat00159

상기 <표 3>의 16-QAM 및 64-QAM 변조 방식에서 사용된 신호 성좌에 대응되는 비트의 사상 방법은 상기 도 7a, 도 7b, 도 8a, 도 8b에 나타낸 것과 동일한 비트 사상 방식을 각각 적용하여서 얻은 결과이다.Bit mapping methods corresponding to the signal constellations used in the 16-QAM and 64-QAM modulation schemes of Table 3 apply the same bit mapping schemes as shown in FIGS. 7A, 7B, 8A, and 8B, respectively. Is the result obtained.

도 9를 참조하면, 913 단계 이후, 천공이 필요한 경우, LDPC 부호화기는 915 단계에서 LDPC 부호화 과정에서 천공을 적용한다. 천공 방법은 아래와 같이 설명될 것이다.Referring to FIG. 9, if puncturing is required after step 913, the LDPC encoder applies puncture in an LDPC encoding process in step 915. The drilling method will be explained as follows.

부호어 길이 및 정보어 길이가 각각

Figure pat00160
,
Figure pat00161
인 DVB-S2 LDPC 부호로부터 단축법과 천공법을 통하여 우리가 최종적으로 얻고자하는 LDPC 부호의 부호어 길이와 정보어 길이를 각각
Figure pat00162
,
Figure pat00163
라 하고,
Figure pat00164
,
Figure pat00165
라고 정의하면, DVB-S2 LDPC 부호의 패리티 검사행렬에서
Figure pat00166
비트만큼 단축을 취하고,
Figure pat00167
비트만큼 천공을 취하면 부호어 길이와 정보어 길이를 각각
Figure pat00168
,
Figure pat00169
인 상기 LDPC 부호를 얻을 수 있었다. 이때 만일 편의를 위해 패리티 부분만 천공법을 적용한다고 가정할 때, 패리티의 길이는
Figure pat00170
이므로 패리티 비트에서
Figure pat00171
마다 1 비트씩 천공하는 방법이 있다. 하지만 천공법은 이러한 방법 외에도 다양한 방법을 적용할 수 있다. The codeword length and the information word length are respectively
Figure pat00160
,
Figure pat00161
The codeword length and information word length of the LDPC code that we finally obtain from the DVB-S2 LDPC code
Figure pat00162
,
Figure pat00163
,
Figure pat00164
,
Figure pat00165
Is defined in the parity check matrix of the DVB-S2 LDPC code.
Figure pat00166
Taking the bit as short as possible,
Figure pat00167
When puncturing bit by bit, the codeword length and information word length
Figure pat00168
,
Figure pat00169
The above LDPC code was obtained. If we assume that only the parity part is perforated for convenience, the length of parity is
Figure pat00170
In the parity bit
Figure pat00171
There is a method to drill 1 bit per time. However, the drilling method can be applied in addition to these methods.

도 10은 본 발명의 실시 예에 따른 단축된 LDPC 부호를 사용하는 송신 장치 블록 구성도이다.10 is a block diagram of a transmitter using a shortened LDPC code according to an embodiment of the present invention.

도 10을 참조하면, 송신 장치는 제어부(1010), 단축 패턴 적용부(1020), LDPC 부호 패리티 검사 행렬 추출부(1040), LDPC 부호화기(1060)를 포함한다.Referring to FIG. 10, the transmission apparatus includes a controller 1010, a shortened pattern applying unit 1020, an LDPC code parity check matrix extractor 1040, and an LDPC encoder 1060.

상기 LDPC 부호 패리티 검사 행렬 추출부(1040)는 단축을 취한 LDPC 부호 패리티 검사 행렬을 추출한다. 상기 LDPC 부호 패리티 검사 행렬은 메모리를 이용하여 추출할 수도 있고, 송신 장치 내에서 주어질 수도 있고, 송신 장치에서 생성될 수도 있다. 또한 상기 LDPC 부호 패리티 검사 행렬 추출부(1040)는 전송할 심볼의 전송 변조 방식을 결정하고, 상기 저밀도 패리티 검사 부호의 패리티 검사 행렬에서 정보어에 대응하는 열을 그룹화하여 복수 개의 열그룹으로 생성하여 순서화한다.The LDPC code parity check matrix extractor 1040 extracts the shortened LDPC code parity check matrix. The LDPC code parity check matrix may be extracted using a memory, may be given in a transmitting device, or may be generated in a transmitting device. In addition, the LDPC code parity check matrix extractor 1040 determines a transmission modulation scheme of a symbol to be transmitted, groups the columns corresponding to the information words in the parity check matrix of the low density parity check code, and generates a plurality of column groups for ordering. do.

상기 단축 패턴 적용부(1020)는 단축을 통해서 얻고자 하는 정보어의 범위를 결정하고, 상기 정보어의 범위에 기초하여 상기 결정된 변조 방식을 고려하여 결정된 단축 패턴에 따라 순서화된 열그룹을 열그룹 단위에 기반한 단축을 수행한다.
The shortened pattern applying unit 1020 determines a range of information words to be obtained through shortening, and heats up the column groups ordered according to the shortened pattern determined in consideration of the determined modulation scheme based on the range of the information words. Perform unit based shortcuts.

상기 제어부(1010)는 단축 패턴 적용부(1020)에서 전송 변조 방식, 정보어의 길이에 따라 단축 패턴을 결정하도록 제어하고, 상기 단축 패턴 적용부(1020)는 단축된 비트에 해당되는 위치에 0 값을 가지는 비트를 삽입(insertion)하거나, 주어진 LDPC 부호의 패리티 검사 행렬에서 단축된 비트에 해당되는 열을 제거하는 역할을 한다. 상기 단축 패턴을 결정하는 방법에는 메모리를 이용하여 저장된 단축 패턴을 사용하거나, 수열 생성기(도면에 도시하지 않음) 등을 이용하여 단축 패턴을 생성하거나, 패리티 검사 행렬과 주어진 정보어 길이에 대하여 밀도 진화 분석 알고리즘 등을 이용하여 얻을 수도 있다.The controller 1010 controls the shortened pattern applying unit 1020 to determine a shortened pattern according to the transmission modulation scheme and the length of the information word, and the shortened pattern applying unit 1020 is set to 0 at a position corresponding to the shortened bit. Insert a bit having a value or remove a column corresponding to a shortened bit from a parity check matrix of a given LDPC code. In the method of determining the shortened pattern, a shortened pattern stored using a memory is used, a shortened pattern is generated using a sequence generator (not shown), or the density is evolved with respect to a parity check matrix and a given information word length. It can also be obtained using an analysis algorithm.

상기 LDPC 부호화기(1060)는 상기 제어부(1010)와 단축 패턴 적용부(1020)에 의해서 단축된 LDPC 부호를 기반으로 부호화를 수행한다.The LDPC encoder 1060 performs encoding based on the LDPC code shortened by the controller 1010 and the shortened pattern applying unit 1020.

도 11은 단축과 천공을 동시에 적용하는 DVB-S2 LDPC 부호의 송신 장치를 도시한 블록 구성도이다.Fig. 11 is a block diagram showing a transmission device of a DVB-S2 LDPC code to simultaneously apply shortening and puncturing.

특히 도 11의 송신 장치는 도 10의 송신 장치에 천공 패턴 적용부(1180)를 추가한 것이다. 상기 도 11를 살펴보면 단축은 LDPC 부호화기(1060)의 입력 전 단계에서, 천공은 LDPC 부호화기(1060)의 출력 단계에서 수행됨을 알 수 있다.In particular, the transmitting apparatus of FIG. 11 adds the puncturing pattern applying unit 1180 to the transmitting apparatus of FIG. 10. Referring to FIG. 11, it can be seen that the shortening is performed before the input of the LDPC encoder 1060, and the puncturing is performed at the output stage of the LDPC encoder 1060.

상기 천공 패턴 적용부(1180)는 LDPC 부호화기(1060)의 출력에 천공을 적용한다. 천공을 적용하는 방법에 대해서는 도 9의 915 단계를 설명하였기 때문에 생략하기로 한다. The puncturing pattern applying unit 1180 applies puncturing to the output of the LDPC encoder 1060. Since the method of applying the puncture is described in step 915 of Figure 9 will be omitted.

도 12은 본 발명의 실시 예에 따른 단축을 적용한 LDPC 부호를 사용하는 수신 장치의 블록 구성도이다.12 is a block diagram of a receiver using an LDPC code to which a shortening is applied according to an exemplary embodiment of the present invention.

특히 도 12에는 상기 단축된 DVB-S2 LDPC 부호를 사용하는 통신 시스템에서 전송된 신호를 수신하고, 상기 수신된 신호로부터 단축된 DVB-S2 LDPC 부호의 전송 변조 방식 및 길이를 알게 되었을 때 상기 수신된 신호로부터 사용자가 원하는 데이터를 복원하는 수신 장치의 예를 나타내었다. Particularly, in FIG. 12, when a signal transmitted in a communication system using the shortened DVB-S2 LDPC code is received and the transmission modulation scheme and length of the shortened DVB-S2 LDPC code are known from the received signal, the received signal is received. An example of a receiving device for recovering data desired by a user from a signal is shown.

도 12를 참조하면, 수신 장치는 제어부(1210), 단축 패턴 판단 또는 추정부(1220), 복조기(1230), LDPC 복호기(1240)를 포함한다.Referring to FIG. 12, the receiving apparatus includes a controller 1210, a shortened pattern determiner or estimator 1220, a demodulator 1230, and an LDPC decoder 1240.

상기 복조기(1230)는 단축된 LDPC 부호를 수신하여 복조하고, 복조된 신호를 단축 패턴 판단 또는 추정부(1220)와 LDPC 복호기(1240)로 전달한다. The demodulator 1230 receives and demodulates the shortened LDPC code, and transmits the demodulated signal to the shortened pattern determination or estimator 1220 and the LDPC decoder 1240.

상기 단축 패턴 판단 또는 추정부(1220)는 상기 제어부(1210)의 제어 하에, 상기 복조된 신호로부터 LDPC 부호의 단축 패턴에 대한 정보를 추정 또는 판단하고, 단축된 비트의 위치 정보를 상기 LDPC 복호기(1240)로 전달한다. 상기 단축 패턴 판단 또는 추정부(1220)에서 단축 패턴을 판단 또는 추정하는 방법에는 메모리를 이용하여 저장된 단축 패턴을 사용하거나, 수열 생성기(도면에 도시하지 않음) 등을 이용하여 단축 패턴을 생성하거나, 패리티 검사 행렬과 주어진 정보어 길이에 대하여 밀도 진화 분석 알고리즘 등을 이용하여 얻을 수도 있다. The shortened pattern determination or estimator 1220 estimates or determines information on the shortened pattern of the LDPC code from the demodulated signal under the control of the controller 1210, and stores the shortened bit position information in the LDPC decoder ( 1240). In the method of determining or estimating the shortened pattern in the shortened pattern determination or estimator 1220, a shortened pattern stored using a memory is used, a shortened pattern is generated using a sequence generator (not shown), or the like. A parity check matrix and a given information word length may be obtained using a density evolution analysis algorithm.

상기 제어부(1210)는 변조 방식 및 정보어 길이에 따라 상기 단축 패턴 판단 또는 추정부에서 적합한 단축 패턴을 복호기(1240)에 전달하도록 제어하는 역할을 할 뿐만 아니라, LDPC 복호기(1240) 내에서 단축된 비트의 값이 0일 확률은 1(즉, 100%)이기 때문에 LDPC 복호기(1240)의 동작에 있어서 단축된 비트들을 LDPC 복호기(1240)의 동작에 참여하지 않도록 하거나, 단축된 비트들의 0일 확률값 1을 이용하여 복호에 참여하게 할 것인가를 결정하는 역할을 한다.The controller 1210 controls not only the shortened pattern determination or estimator to deliver a suitable shortened pattern to the decoder 1240 according to a modulation scheme and the information word length, but also a shortened in the LDPC decoder 1240. Since the probability that the value of the bit is 0 is 1 (that is, 100%), the shortened bits in the operation of the LDPC decoder 1240 may not participate in the operation of the LDPC decoder 1240, or the probability value of the shortened bits is 0. Use 1 to decide whether to participate in decryption.

상기 LDPC 복호기(1240)는 상기 단축 패턴 판단 또는 추정부(1220)에 의해서 단축된 DVB-S2 LDPC 부호의 길이를 알게 되면, 상기 수신된 신호로부터 사용자가 원하는 데이터를 복원한다.When the LDPC decoder 1240 knows the length of the DVB-S2 LDPC code shortened by the shortened pattern determination or estimator 1220, the LDPC decoder 1240 restores data desired by the user from the received signal.

특히 도 13은 본 발명의 실시 예에 따른 단축과 천공을 적용한 LDPC 부호를 사용하는 수신 장치의 블록 구성도이다.In particular, FIG. 13 is a block diagram of a receiver using an LDPC code to which shortening and puncturing is applied according to an exemplary embodiment of the present invention.

도 13은 도 12의 수신 장치의 단축 패턴 판단 또는 추정부(1220) 대신에 단축, 천공 패턴 판단 또는 추정부(1320)로 교체한 형태이다.FIG. 13 is a form in which the shortening and puncturing pattern determination or estimating unit 1320 is replaced with the shortening pattern determination or estimating unit 1220 of the receiving apparatus of FIG. 12.

도 13을 참조하면, 상기 단축, 천공 패턴 판단 또는 추정부(1320)는 송신 장치에서 단축과 천공을 모두 적용한 경우에 수신 장치에서 단축에 대한 패턴 판단 또는 추정을 먼저 진행할 수도 있고, 천공에 대한 패턴 판단 또는 추정을 먼저 진행할 수도 있고, 단축에 대한 패턴 판단 또는 추정과 천공에 대한 패턴 판단 또는 추정이 동시에 일어날 수도 있다. Referring to FIG. 13, when the shortening and the puncturing pattern determination or estimator 1320 apply both the shortening and the puncturing in the transmitting apparatus, the receiver may first proceed to determine or estimate the pattern for the shortening, and the pattern for puncturing. The determination or estimation may proceed first, or the pattern determination or estimation for shortening and the pattern determination or estimation for puncturing may occur simultaneously.

또한 LDPC 복호기(1240)에서는 단축과 천공에 대한 정보를 동시에 알고 있어야 복호가 가능하다.In addition, the LDPC decoder 1240 needs to know information about shortening and puncturing at the same time so that decoding can be performed.

도 14는 본 발명의 실시 예에 따른 수신 장치에서의 수신 동작을 도시한 흐름도이다.14 is a flowchart illustrating a receiving operation in a receiving apparatus according to an embodiment of the present invention.

복조기(1230)는 1401 단계에서 단축된 LDPC 부호를 수신하여 복조한다. 이후 단축 패턴 판단 또는 추정부(1220)는 1403 단계에서 복조된 신호로부터 단축/천공 패턴을 판단 또는 추정한다. The demodulator 1230 receives and demodulates the shortened LDPC code in step 1401. In operation 1403, the shortened pattern determination or estimator 1220 determines or estimates a shortened / punched pattern from the demodulated signal.

단축 패턴 판단 또는 추정부(1220)는 1405 단계에서 단축 또는 천공된 비트가 존재하는가를 판단한다.The shortened pattern determination or estimator 1220 determines whether there is a shortened or punctured bit in step 1405.

만약 단축 또는 천공된 비트가 존재하지 않은 경우, LDPC 복호기(1240)는 1411 단계에서 복호화를 수행한다. 그러나 단축 또는 천공된 비트가 존재한 경우 단축 패턴 판단 또는 추정부(1220)는 1407 단계에서 단축/천공된 비트의 위치 정보를 LDPC 복호기(1240)로 전달한다.If there is no shortened or punctured bit, the LDPC decoder 1240 performs decoding in step 1411. However, if there is a shortened or punctured bit, the shortened pattern determination or estimator 1220 transmits the position information of the shortened / punched bit to the LDPC decoder 1240 in step 1407.

상기 LDPC 복호기(1240)는 1409 단계에서 상기 단축/천공된 비트의 위치 정보를 바탕으로 단축된 비트의 값은 0일 확률을 1이고, 천공된 비트는 소실(erasure)된 비트임으로 결정하고, 1411 단계에서 LDPC 복호화를 수행한다.
In step 1409, the LDPC decoder 1240 determines that the value of the shortened bit is 0 based on the location information of the shortened / punched bit, and the punctured bit is an erased bit. In the step, LDPC decoding is performed.

Claims (10)

저밀도 패리티 검사 부호를 사용한 시스템에서 채널 복호화 방법에 있어서,
수신된 신호를 복조하는 과정;
단축된 정보 비트의 위치를 결정하는 과정; 및
상기 결정된 단축된 정보 비트의 위치를 고려하여 상기 복조된 신호를 복호하는 과정을 포함하고,
상기 단축된 정보 비트의 위치를 결정하는 과정은,
단축된 정보 비트의 수를 결정하는 과정;
상기 결정된 단축된 정보 비트의 수를 근거로 하여 단축된 비트 그룹의 수를 결정하는 과정; 및
미리 결정된 비트 그룹의 순서를 획득하는 과정을 포함함을 특징으로 하는 채널 복호화 방법.
In a channel decoding method in a system using a low density parity check code,
Demodulating the received signal;
Determining the location of the shortened information bits; And
Decoding the demodulated signal in consideration of the position of the determined shortened information bit;
Determining the location of the shortened information bit,
Determining a number of shortened information bits;
Determining the number of shortened bit groups based on the determined number of shortened information bits; And
And obtaining an order of a predetermined bit group.
제1항에 있어서,
상기 단축된 정보 비트의 수를 결정하기 위해 단축에 의해 획득될 수 있는 정보 비트 수를 결정하는 과정을 더 포함함을 특징으로 하는 채널 복호화 방법.
The method of claim 1,
And determining the number of information bits that can be obtained by the shortening to determine the number of shortened information bits.
제1항에 있어서, 변조 방식이 16 QAM이고, 부호어 길이가 16200인 경우, 상기 미리 결정된 비트 그룹의 순서는 18, 17, 16, 15, 14, 13, 12, 11, 4, 10, 9, 8, 7, 3, 2, 1, 6, 5, 19, 0임을 특징으로 하는 채널 복호화 방법.The method of claim 1, wherein when the modulation scheme is 16 QAM and the codeword length is 16200, the order of the predetermined bit group is 18, 17, 16, 15, 14, 13, 12, 11, 4, 10, 9 , 8, 7, 3, 2, 1, 6, 5, 19, 0. 제1항에 있어서, 변조 방식이 64 QAM이고, 부호어 길이가 16200인 경우, 상기 미리 결정된 비트 그룹의 순서는 18, 17, 16, 4, 15, 14, 13, 12, 3, 11, 10, 9, 2, 8, 7, 1, 6, 5, 19, 0임을 특징으로 하는 채널 복호화 방법.The method of claim 1, wherein when the modulation scheme is 64 QAM and the codeword length is 16200, the order of the predetermined bit group is 18, 17, 16, 4, 15, 14, 13, 12, 3, 11, 10. , 9, 2, 8, 7, 1, 6, 5, 19, 0. 제1항에 있어서,
비트 그룹의 길이가 360이고, 정보 비트들의 길이가 7200일 경우,
상기 미리 결정된 비트 그룹의 순서에 따라서 0 번째 비트 그룹부터 (m-1) 번째 비트 그룹까지의 비트 그룹의 정보 비트가 단축된 것으로 결정하는 과정; 및
상기 미리 결정된 비트 그룹의 순서에 따라서 m 번째 비트 그룹내의 (7200-K2-360m) 정보 비트가 단축된 것으로 결정하는 과정을 포함하고,
K2는 단축에 의해 얻어질 수 있는 정보 비트의 수이고, (7200-K2)는 단축된 정보 비트의 수이고,
Figure pat00172
임을 특징으로 하는 채널 복호화 방법.
The method of claim 1,
If the length of the bit group is 360 and the length of the information bits is 7200,
Determining that the information bits of the bit groups from the 0th bit group to the (m-1) th bit group are shortened according to the order of the predetermined bit group; And
Determining that (7200-K 2 -360m) information bits in the m-th bit group are shortened according to the order of the predetermined bit group,
K 2 is the number of information bits that can be obtained by shortening, 7200-K 2 is the number of shortened information bits,
Figure pat00172
Channel decoding method characterized in that.
저밀도 패리티 검사 부호를 사용한 시스템에서 채널 복호화 장치에 있어서,
수신된 신호를 복조하는 복조기;
단축된 정보 비트의 위치를 결정하는 단축 패턴 결정부; 및
상기 결정된 단축된 정보 비트의 위치를 고려하여 상기 복조된 신호를 복호하는 복호기를 포함하고,
상기 단축된 정보 비트의 위치를 결정하는 과정은,
단축된 정보 비트의 수를 결정하는 과정;
상기 결정된 단축된 정보 비트의 수를 근거로 하여 단축된 비트 그룹의 수를 결정하는 과정; 및
미리 결정된 비트 그룹의 순서를 획득하는 과정을 포함함을 특징으로 하는 채널 복호화 장치.
A channel decoding apparatus in a system using a low density parity check code,
A demodulator for demodulating the received signal;
A shortened pattern determiner which determines a position of a shortened information bit; And
A decoder which decodes the demodulated signal in consideration of the position of the determined shortened information bit;
Determining the location of the shortened information bit,
Determining a number of shortened information bits;
Determining the number of shortened bit groups based on the determined number of shortened information bits; And
And obtaining a sequence of a predetermined bit group.
제6항에 있어서,
상기 단축 패턴 결정부는, 상기 단축될 정보 비트의 수를 결정하기 위해 단축에 의해 획득될 수 있는 정보 비트 수를 결정하는 과정을 더 포함함을 특징으로 하는 채널 복호화 장치.
The method according to claim 6,
And the shortening pattern determination unit further includes determining a number of information bits that can be obtained by shortening to determine the number of information bits to be shortened.
제6항에 있어서, 변조 방식이 16 QAM이고, 부호어 길이가 16200인 경우, 상기 미리 결정된 비트 그룹의 순서는 18, 17, 16, 15, 14, 13, 12, 11, 4, 10, 9, 8, 7, 3, 2, 1, 6, 5, 19, 0임을 특징으로 하는 채널 복호화 장치.7. The method of claim 6, wherein when the modulation scheme is 16 QAM and the codeword length is 16200, the order of the predetermined bit group is 18, 17, 16, 15, 14, 13, 12, 11, 4, 10, 9 , 8, 7, 3, 2, 1, 6, 5, 19, 0. 제6항에 있어서, 변조 방식이 64 QAM이고, 부호어 길이가 16200인 경우, 상기 미리 결정된 비트 그룹의 순서는 18, 17, 16, 4, 15, 14, 13, 12, 3, 11, 10, 9, 2, 8, 7, 1, 6, 5, 19, 0임을 특징으로 하는 채널 복호화 장치.7. The method of claim 6, wherein when the modulation scheme is 64 QAM and the codeword length is 16200, the order of the predetermined bit group is 18, 17, 16, 4, 15, 14, 13, 12, 3, 11, 10. And 9, 2, 8, 7, 1, 6, 5, 19, and 0. 제6항에 있어서,
비트 그룹의 길이가 360이고, 정보 비트들의 길이가 7200일 경우,
상기 단축 패턴 결정부는 상기 미리 결정된 비트 그룹의 순서에 따라서 0 번째 비트 그룹부터 (m -1) 번째 비트 그룹까지의 비트 그룹의 정보 비트가 단축된 것으로 결정하고, 상기 미리 결정된 비트 그룹의 순서에 따라서 m 번째 비트 그룹내의 (7200-K2-360m) 정보 비트가 단축된 것으로 결정함을 포함하고,
K2는 단축에 의해 얻어질 수 있는 정보 비트의 수이고, (7200-K2)는 단축된 정보 비트의 수이고,
Figure pat00173
임을 특징으로 하는 채널 복호화 장치.
The method according to claim 6,
If the length of the bit group is 360 and the length of the information bits is 7200,
The shortened pattern determiner determines that the information bits of the bit group from the 0th bit group to the (m -1) th bit group are shortened according to the order of the predetermined bit group, and according to the order of the predetermined bit group. determining that the (7200-K 2 -360m) information bits in the m th bit group are shortened,
K 2 is the number of information bits that can be obtained by shortening, 7200-K 2 is the number of shortened information bits,
Figure pat00173
Channel decoding apparatus characterized in that.
KR1020130028851A 2008-02-26 2013-03-18 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes KR101503133B1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20080017279 2008-02-26
KR1020080017279 2008-02-26
KR20080022484 2008-03-11
KR1020080022484 2008-03-11

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020080025144A Division KR101503059B1 (en) 2008-02-26 2008-03-18 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes

Publications (2)

Publication Number Publication Date
KR20130044259A true KR20130044259A (en) 2013-05-02
KR101503133B1 KR101503133B1 (en) 2015-03-18

Family

ID=48656751

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020130028851A KR101503133B1 (en) 2008-02-26 2013-03-18 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR1020140182740A KR101503655B1 (en) 2008-02-26 2014-12-17 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020140182740A KR101503655B1 (en) 2008-02-26 2014-12-17 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes

Country Status (1)

Country Link
KR (2) KR101503133B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160023541A (en) * 2013-08-26 2016-03-03 삼성전자주식회사 Computing system having error handling mechanism and operating method thereof

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1947368B (en) * 2004-04-28 2010-06-16 三星电子株式会社 Apparatus and method for coding/decoding block low density parity check code with variable block length
KR20050118056A (en) * 2004-05-12 2005-12-15 삼성전자주식회사 Method and apparatus for channel encoding and decoding in mobile communication systems using multi-rate block ldpc codes
KR101351140B1 (en) * 2005-11-22 2014-01-15 조지아 테크 리서치 코오포레이션 Apparatus and method for transmitting/receiving signal in a communication system
KR101502624B1 (en) * 2007-12-06 2015-03-17 삼성전자주식회사 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160023541A (en) * 2013-08-26 2016-03-03 삼성전자주식회사 Computing system having error handling mechanism and operating method thereof

Also Published As

Publication number Publication date
KR101503655B1 (en) 2015-03-17
KR101503133B1 (en) 2015-03-18
KR20150004785A (en) 2015-01-13

Similar Documents

Publication Publication Date Title
KR101503059B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101503058B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101502623B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101503656B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101503655B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101503654B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180227

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190227

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200227

Year of fee payment: 6