KR20080104684A - Method for puncturing of block type low density parity check code - Google Patents

Method for puncturing of block type low density parity check code Download PDF

Info

Publication number
KR20080104684A
KR20080104684A KR1020070051785A KR20070051785A KR20080104684A KR 20080104684 A KR20080104684 A KR 20080104684A KR 1020070051785 A KR1020070051785 A KR 1020070051785A KR 20070051785 A KR20070051785 A KR 20070051785A KR 20080104684 A KR20080104684 A KR 20080104684A
Authority
KR
South Korea
Prior art keywords
puncturing
block
bit
group
code rate
Prior art date
Application number
KR1020070051785A
Other languages
Korean (ko)
Other versions
KR100895612B1 (en
Inventor
황금찬
김광순
박효열
Original Assignee
연세대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 연세대학교 산학협력단 filed Critical 연세대학교 산학협력단
Priority to KR1020070051785A priority Critical patent/KR100895612B1/en
Publication of KR20080104684A publication Critical patent/KR20080104684A/en
Application granted granted Critical
Publication of KR100895612B1 publication Critical patent/KR100895612B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/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
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/1174Parity-check or generator matrices built from sub-matrices representing known block codes such as, e.g. Hamming codes, e.g. generalized LDPC 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems

Abstract

A method for punching a block type low density parity check in a bit unit is provided to obtain high decoding performance by punching bit uniformly when connecting a zigzag edge. A communication system supporting a variable code rate includes a code rate controller(S121), a punching position operator(S122,S172), a transmitter(S140), and a receiver(S150). The code rate controller delivers the information required for punching. The punching position operator calculates the position of the punching bit by using the information connected to the code rate controller. The punching position operator receives the information in the code rate controller through the control channel and calculates the position of the punching bit. A transmitter is connected to the punching position operator. The transmitter includes a coding bit selector(S123) which selects the bit which is not punched among the coded bit inputted to the punching device and delivers the bit. The receiver is connected to the punching position operator. A coding bit distribution and 0 inserter(S171) distributes temporary determining variable of the coding bit unit and inserts 0 into the position of the punching bit, and outputs the punching bit.

Description

블록 형태 저밀도 패러티 검사 부호의 천공 방법{Method For Puncturing Of Block Type Low Density Parity Check Code}Method for Puncturing Of Block Type Low Density Parity Check Code}

도 1은 본 발명에 따른 천공을 위한 비트 위치 탐색 순서를 나타낸 도면, 1 is a view showing a bit position search order for puncturing according to the present invention;

도 2는 본 발명에 따른 가변 부호율 지원을 위한 송수신단의 구성을 나타낸 도면,2 is a diagram illustrating a configuration of a transceiver for supporting variable code rate according to the present invention;

도 3은 본 발명에 따른 HARQ 작동을 위한 송수신단의 구성을 나타낸 도면,3 is a diagram illustrating a configuration of a transceiver for HARQ operation according to the present invention;

도 4는 본 발명에 따른 천공할 블록을 선택하는 순서를 나타낸 도면,4 is a view showing a procedure for selecting a block to be drilled according to the present invention;

도 5는 본 발명에 따른 천공 방법을 나타내는 순서도,5 is a flow chart showing a drilling method according to the present invention,

도 6은 본 발명에 따른 천공 방법을 수식적으로 나타낸 순서도,6 is a flow chart that shows the punching method according to the present invention formulaally,

도 7은 도 6의 순서도를 이용하여 천공할 블록단위 및 비트단위 선택을 도식적으로 나타내는 도면,7 is a diagram schematically illustrating selection of a block unit and a bit unit to be punctured using the flowchart of FIG. 6;

도 8은 천공 방법에 있어서 비트단위의 선택의 효용성을 나타내는 그래프,8 is a graph showing the effectiveness of bit unit selection in the drilling method;

도 9는 부호율이 1/2인 블록 LDPC 모부호에서 천공 알고리즘을 적용하여 천공한 부호의 성능을 나타내는 그래프,9 is a graph showing the performance of a punctured code by applying a puncture algorithm in a block LDPC mother code having a code rate of 1/2;

도 10은 부호율이 1/3인 블록 LDPC 모부호에서 천공 알고리즘을 적용하여 천공한 부호의 성능을 나타내는 그래프이다.10 is a graph showing the performance of a code punctured by applying a puncturing algorithm in a block LDPC mother code having a code rate of 1/3.

본 발명은 블록 형태 저밀도 패러티 검사 부호의 천공 방법에 대한 것으로서, 더욱 상세하게는 쌍대각 패러티 블록 구조를 갖는 블록 형태의 저밀도 패러티 검사 부호에 있어서 천공 노드 중 최소의 복구 속도를 갖는 것의 속도가 최대화되도록 패러티 비트 노드를 천공하고 지그재그 형태의 엣지 연결에서 천공 노드가 최대한 균일하게 배치되도록 함으로써, 천공에 의한 성능 열화를 최소화하며, 천공할 노드의 숫자가 블록크기의 정수배가 아닐 경우에도 비트 단위의 효율적인 천공 패턴을 제공하고 HARQ(Hybrid Automatic Repeat and reQuest) 기술을 효과적으로 사용할 수 있는 천공 방법에 관한 것이다.The present invention relates to a method for puncturing a block type low density parity check code, and more particularly, in a block type low density parity check code having a bi-diagonal parity block structure to maximize the speed of the minimum recovery speed among the puncturing nodes. By drilling the parity bit nodes and arranging the puncture nodes as uniformly as possible in the zigzag edge connection, it minimizes performance degradation due to puncturing.Effective puncture in bits even when the number of nodes to be punctured is not an integer multiple of the block size The present invention relates to a drilling method that provides a pattern and effectively uses Hybrid Automatic Repeat and reQuest (HARQ) technology.

일반적으로, 이동 통신 시스템이 급속하게 발전해나감에 따라 무선 네트워크에서 유선 네트워크의 용량(capacity)에 근접하는 대용량 데이터를 전송할 수 있는 기술 개발이 요구되고 있다. 이렇게, 음성 위주의 서비스를 벗어나 영상, 무선 데이터 등의 다양한 정보를 처리하고 전송할 수 있는 고속 대용량 통신 시스템이 요구됨에 따라 적정한 채널 부호화(channel coding) 방식을 사용하여 시스템 전송 효율을 높이는 것이 시스템 성능 향상에 필수적인 요소로 작용하게 된다. 그러나, 이동 통신 시스템은 이동 통신 시스템의 특성상 데이터를 전송할 때 채널의 상황에 따라 잡음(noise)과, 간섭(interference) 및 페이딩(fading) 등으로 인해 불가피하 게 에러(error)가 발생하고, 따라서 상기 에러 발생으로 인한 정보 데이터의 손실이 발생한다.In general, as the mobile communication system develops rapidly, there is a demand for developing a technology capable of transmitting a large amount of data approaching the capacity of a wired network in a wireless network. In this way, as a high-speed mass communication system capable of processing and transmitting various information such as video and wireless data beyond voice-oriented services is required, improving system transmission efficiency by using an appropriate channel coding method is improved system performance. It becomes an essential element for. However, due to the characteristics of the mobile communication system, the mobile communication system inevitably generates an error due to noise, interference, fading, etc. according to channel conditions when data is transmitted. The loss of the information data due to the error occurs.

따라서, 송신기에서 송신한 정보를 수신기에서 에러 없이 복원하기 위해서 성능이 우수한 부호화기 및 복호기에 대한 필요성이 부각되고 있다. 특히, 이동 통신 시스템의 특성상 무선 채널 환경을 고려해야만 하므로 무선 채널 환경에 의해 발생할 수 있는 에러는 보다 심각하게 고려되어야만 한다.Therefore, there is a need for an encoder and decoder having high performance in order to recover information transmitted from a transmitter without error in a receiver. In particular, due to the characteristics of the mobile communication system, the radio channel environment must be taken into consideration, so that an error caused by the radio channel environment must be considered more seriously.

이러한 에러 발생으로 인한 정보 데이터 손실을 감소시키기 위해서 채널의 특성에 따라 다양한 에러 제어 방식(errorcontrolscheme)들을 사용함으로써 상기 이동 통신 시스템의 신뢰도를 향상시킬 수 있다. 상기 에러 제어 방식들 중에서 가장 보편적으로 사용되고 있는 에러 제어 방식은 에러 정정 부호(error-correcting code)를 사용하는 방식이다.In order to reduce information data loss due to such an error, reliability of the mobile communication system may be improved by using various error control schemes according to the characteristics of the channel. Among the error control schemes, the most commonly used error control scheme is an error-correcting code.

한편, 상기 에러 정정 부호의 대표적인 부호들로는 터보 부호(turbo code)와, 저밀도 패리티 검사(LDPC: Low DensityParity Check, 이하 'LDPC'라 칭하기로 한다) 부호 등이 있다. 상기 터보 부호는 종래 오류 정정을 위해 주로 사용되던 컨벌루셔널 부호(convolutional code)에 비하여 고속 데이터 전송시에 성능 이득이 우수한 것으로 알려져 있으며, 전송 채널에서 발생하는 잡음에 의한 오류를 효과적으로 정정하여 데이터 전송의 신뢰도를 높일 수 있다는 장점을 가진다. 또한, 상기 LDPC 부호는 팩터(factor) 그래프 상에서 합곱(sum-product) 알고리즘(algorithm)에 기반한 반복 복호(iterative decoding) 알고리즘을 사용하여 복호할 수 있다. Representative codes of the error correction code include a turbo code, a low density parity check (LDPC) code, and the like. The turbo code is known to have a superior performance gain in high-speed data transmission, compared to a convolutional code used mainly for error correction. The turbo code effectively corrects errors due to noise generated in a transmission channel and transmits data. It has the advantage of increasing the reliability of. In addition, the LDPC code can be decoded using an iterative decoding algorithm based on a sum-product algorithm on a factor graph.

LDPC는 1962년 Gallager에 의해 처음 제안되었으며, 패러티 검사 행 렬(Parity Check Matrix) H의 원소들의 대부분이'0'인 선형 블록 부호(Linear block code)로서 당시의 기술력으로는 구현이 불가능한 부호 복잡도로 인해 오랫동안 잊혀져 왔다. 그러나, Mackay와 Neal은 이를 재발견하였고, Gallager의 간단한 확률적(Prababilistic) 복호법을 이용하여 성능이 매우 우수함을 보였다.LDPC was first proposed by Gallager in 1962, and is a linear block code in which most of the elements of the parity check matrix H are '0'. Has long been forgotten. However, Mackay and Neal rediscovered it and showed excellent performance using Gallager's simple probabilistic decoding method.

상기 LDPC 부호는 행렬 안의 '1'의 개수가 적은(sparse)한 랜덤 패러티 검사 행렬 H에 의해 정의된다. 상기 패러티 검사 행렬 H는 수신된 신호에 대한 정상적인 복호 여부를 확인하기 위한 행렬로서, 부호화된 수신 신호와 패러티 검사 행렬 H의곱이 '0'이 되었을 경우 에러가 발생하지 않은 것으로 판단한다. 따라서, 상기 LDPC 부호는 모든 부호화된 수신 신호에 대해 곱하였을 경우 '0'이 될 수 있는 소정의 패러티 검사 행렬을 먼저 설계한 후, 상기 결정된 패러티 검사 행렬에 따른 송신측의 부호화기에서 부호화시키는 연산을 역으로 산출하게 된다.The LDPC code is defined by a random parity check matrix H having a small number of '1's in the matrix. The parity check matrix H is a matrix for checking whether the received signal is normally decoded. When the product of the encoded received signal and the parity check matrix H becomes '0', it is determined that no error occurs. Accordingly, the LDPC code first designs a parity check matrix, which may be '0' when multiplied for all the encoded received signals, and then performs an operation of encoding by the encoder on the transmitting side according to the determined parity check matrix. Inversely, it is calculated.

상기와 같은 LDPC부호는 터보 부호에 비해서 우수한 성능과 낮은 복호 복잡도 및 병렬 처리가 가능한 장점을 가지고 있으나, 상대적으로 높은 부호화 복잡도와 부호기에서 생성행렬을 저장하기 위한 많은 메모리를 요구하는 문제점이 있었다. The LDPC code has advantages such as superior performance, low decoding complexity, and parallel processing, compared to a turbo code, but has a problem of requiring a relatively high coding complexity and a large amount of memory for storing a generation matrix in an encoder.

이러한 문제점을 해결하기 위해서 부호어의 길이에 단순 비례하는 간단한 복잡도를 가지며 효과적으로 간단한 부호화를 할 수 있는 블록 형태의 LDPC (B-LDPC) 부호가 제안되었다. 이러한 B-LDPC부호는 매우 적은 메모리 양으로도 표현이 가능하며 다양한 부호어 길이로 변화가 용이한 장점을 가지고있고, 성능에 있어서도 블록 구조가 아닌 잘 설계된 LDPC부호와 견줄만 하다. 이러한 장점 때문에 IEEE 802.16e (WiMax) 와 같은 표준화 기술에 선택기술로서 채택되었다. In order to solve this problem, a block-type LDPC (B-LDPC) code that has a simple complexity that is simply proportional to the length of a codeword and can be efficiently encoded has been proposed. This B-LDPC code can be represented with very small amount of memory and has the advantage that it can be easily changed with various codeword lengths, and it is comparable to well-designed LDPC code rather than block structure in performance. Because of this advantage, it has been adopted as an optional technology in standardization technologies such as IEEE 802.16e (WiMax).

하지만 이러한 부호는 여전히 터보부호에 비해서 다양한 부호율을 지원할 수 없다는 단점을 가지고 있다. 다양한 부호율을 지원하기 위해서는 복잡한 여러 개의 패러티 검사 행렬을 가지고 있어야 한다. 또한, 잉여 증분 (IR) 방식의 Hybrid ARQ 기술은 현재 802.16e에서 지원되지 않는다. However, these codes still have a disadvantage in that they cannot support various code rates compared to turbo codes. In order to support various code rates, it must have multiple parity check matrices. In addition, the Hybrid ARQ technology of the surplus incremental (IR) method is not currently supported in 802.16e.

상기와 같은 문제점을 해결하기 위하여, B-LDPC 부호의 효과적인 천공기술이 필요하다. 최근에 임의의 방식으로 설계된 LDPC부호의 천공 기술은 몇 가지가 제시되어 있다. 이들은 비록 성능이 좋은 천공 패턴을 얻을 수 있지만 복잡한 천공 알고리즘으로 인해 천공 패턴을 실시간으로 얻기가 힘들며, 임의의 천공 패턴을 저장하기 위해서 많은 메모리가 요구된다. 최근에 몇 개의 B-LDPC부호를 위한 천공 패턴이 제시되었지만, 구체적이고 일반적으로 천공패턴을 얻는 것이 아니었고, 단지 블록 단위로의 천공만 가능한 구조였기 때문에 비트 단위의 천공을 해야하는 경우에는 의미가 없게 된다. 그 이후에 비트 단위의 천공방법이 제시되었지만, 실제 B-LDPC 부호의 블록 마다의 비트 치환구조를 제대로 활용하지 못한 단순한 방법이었다.In order to solve the above problems, an effective puncturing technique of the B-LDPC code is required. Recently, some techniques for drilling LDPC codes designed in any manner have been proposed. Although they can obtain a good puncturing pattern, it is difficult to obtain a puncturing pattern in real time due to a complicated puncturing algorithm, and a lot of memory is required to store an arbitrary puncturing pattern. Recently, a puncturing pattern for several B-LDPC codes has been proposed, but since it was not a specific and general puncturing pattern, but only a block puncturing structure, it is meaningless when a bit puncturing is required. do. Since then, a bitwise puncturing method has been proposed, but it was a simple method that did not properly utilize the bit substitution structure for each block of the actual B-LDPC code.

본 발명은 상기와 같은 점을 감안하여 안출한 것으로서, 적은 메모리를 사용하며 천공 패턴을 실시간으로 얻을 수 있고, 천공 노드의 숫자가 블록크기의 정수배가 아닐 경우에도 비트 단위의 효율적인 천공 패턴을 제공하며, HARQ(Hybrid Automatic Repeat and reQuest) 기술을 효과적으로 사용할 수 있는 천공 방법을 제공하는데 그 목적이 있다.The present invention has been conceived in view of the above, it is possible to obtain a puncturing pattern in real time using less memory, and provides an efficient puncturing pattern in bits even when the number of puncture nodes is not an integer multiple of the block size. The purpose of this invention is to provide a drilling method that can effectively use the HARQ (Hybrid Automatic Repeat and reQuest) technology.

상기와 같은 본 발명 블록 형태 저밀도 패러티 검사 부호의 천공 방법에 있어서,In the above-described puncturing method of the block-type low density parity check code of the present invention,

쌍대각 패리티 블록 구조를 가지는 블록 형태의 저밀도 패러티 검사 부호에 있어서,In the block-type low density parity check code having a bi-diagonal parity block structure,

사전에 결정된 블록 그룹을 정하는 단계;Determining a predetermined block group;

상기 그룹 내에서 블록의 위치를 정하는 단계;Positioning a block within the group;

상기 블록 내에서 천공할 비트의 위치를 정하는 단계를 포함하여 구성되는 것을 특징으로 한다.And determining a position of a bit to be punctured in the block.

또한, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 천공된 노드가 최대한 작은 횟수의 반복복호로 복구되는 것을 특징으로 한다.In the determining of the predetermined block group, the punctured node may be recovered by repeated decoding of the smallest number of times.

또한, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 가장 작은 k값을 가지는 k-SR 노드의 수가 최대가 되도록 그룹화 하는 것을 특징으로 한다.In addition, the step of determining the predetermined block group, characterized in that the grouping so that the maximum number of k-SR node having the smallest k value.

또한, 상기 그룹 내에서 블록의 위치를 정하는 단계는, In addition, the step of positioning the block in the group,

남아 있는 블록의 개수가 홀수인지 확인하는 단계;Checking whether the number of remaining blocks is odd;

현재 그룹에서 천공되지 않고 남아있는 블록의 유무를 확인하는 단계를 포함하여 구성되는 것을 특징으로 한다.And determining whether there are any blocks left unperforated in the current group.

또한, 상기 남아 있는 블록의 개수가 홀수인지 확인하는 단계는 mb/2t가 정수인지 확인함으로써 이루어지며, 상기 mb값은 블록의 행의 개수이며, t는 그룹 인덱스를 나타내는 것을 특징으로 한다.In addition, the step of checking whether the number of remaining blocks is odd is made by checking whether m b / 2 t is an integer, wherein the value of m b is the number of rows of blocks, and t represents a group index. .

또한, 상기 블록 내에서 천공할 비트의 위치를 정하는 단계는,In addition, the step of positioning the bits to be punctured in the block,

남아 있는 블록의 개수가 짝수이며 현재 그룹에서 천공되지 않고 남아 있는 블록이 있는 경우 L1(i)에 의하여, 남아 있는 블록의 개수가 홀수이면 L2(i)에 의하여 천공 비트 위치를 결정하며, 상기 L1(i) 및 L2(i)는 각각The number of the remaining blocks the even and to determine the drilling bit positions by, left L 2 (i) if the number is an odd number of blocks by L 1 (i) If the block remains without being punctured in the current group, L 1 (i) and L 2 (i) are each

Figure 112007039111219-PAT00001
이며, 상기
Figure 112007039111219-PAT00002
Figure 112007039111219-PAT00003
그리고
Figure 112007039111219-PAT00004
는 c 보다 작거나 같은 최대 정수를 의미하는 것을 특징으로 한다.
Figure 112007039111219-PAT00001
And said
Figure 112007039111219-PAT00002
Is
Figure 112007039111219-PAT00003
And
Figure 112007039111219-PAT00004
Is a maximum integer less than or equal to c.

또한, 상기 L1(i) 및 L2(i)는 각각In addition, L 1 (i) and L 2 (i) are each

Figure 112007039111219-PAT00005
Figure 112007039111219-PAT00005

이며, 상기 u'z(i) 및 u''z(i)는 각각And u ' z (i) and u'' z (i) are each

Figure 112007039111219-PAT00006
Figure 112007039111219-PAT00006

이고, 상기 uz(i)는 And u z (i) is

Figure 112007039111219-PAT00007
Figure 112007039111219-PAT00007

인 것을 특징으로 한다.It is characterized by that.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 출원에서, “포함하다” 또는 “가지다” 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들의 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. A singular expression includes a plural expression unless the context clearly indicates otherwise. In this application, the terms “comprises” or “having” are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described in the specification, and one or more other It is to be understood that the present invention does not exclude the possibility of the presence or the addition of features, numbers, steps, operations, components, parts, or a combination thereof.

이하, 본 발명을 첨부도면을 참조하여 상세하게 설명한다. Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

본 발명은 블록 쌍 대각 패리티 구조를 가진 모든 B-LDPC부호에 적용된다. 본 발명의 천공 방법은 미리 정의된 수의 블록들로 구성되는 정보 영역과 패러티 영역을 포함하는 저밀도 패러티 검사행렬을 가지는 B-LDPC 부호를 기반으로 하며, 천공을 수행하기 전에 사전에 결정된 블록 그룹(S10)에 따라서 블록의 위치(S20)를 정하고 정해진 블록 내에서 천공할 비트의 위치(S30)를 정한다.The present invention applies to all B-LDPC codes having a block pair diagonal parity structure. The puncturing method of the present invention is based on a B-LDPC code having a low density parity check matrix including an information region and a parity region composed of a predefined number of blocks, and a predetermined block group ( According to S10, the position S20 of the block is determined, and the position S30 of the bit to be punctured within the determined block is determined.

이하, 도 1을 참조하여 가변 부호율 지원을 위해 본 발명의 천공기와 분배기가 사용되는 송수신단의 구조에 대하여 설명한다.Hereinafter, a structure of a transmitter / receiver using a puncturer and a divider according to the present invention to support variable code rates will be described with reference to FIG. 1.

우선 정보비트를 입력받아 부호화기 (S110)에서 부호화되어 출력된 부호화 비트는 천공기 (S120)로 입력된다. 천공기의 부호화 비트 선택기 (S123)은 천공 위치 연산기 (S122)에 의해서 송신할 부호화 비트만을 선택한다. 이 때 천공 위치 연산기는 부호율 제어기 (S121)에서 모부호어의 길이와 부호율 및 송신할 부호율에 따른 천공량에 대한 정보를 받아 실시간으로 천공 위치 연산을 수행하여 선택기에게 천공할 비트를 알려주고 선택기 (S123)은 전체 부호화 비트 중에서 천공되지 않은 비트만을 선택한다. 선택된 부호화 비트는 변조기 (S130)를 거쳐 심볼로 변환되고 송신기 (S140)을 거쳐 송신된다. First, the information bits are received, and the encoded bits encoded and output by the encoder S110 are input to the puncturer S120. The encoding bit selector S123 of the puncturer selects only the encoding bits to be transmitted by the puncturing position calculator S122. At this time, the puncturing position calculator receives the information about the length of the parent code and the puncturing amount according to the code rate to be transmitted from the code rate controller (S121) and performs the puncturing position calculation in real time to inform the selector of the bits to be punctured. The selector S123 selects only bits that are not punctured among all coded bits. The selected coded bits are converted into symbols through a modulator (S130) and transmitted via a transmitter (S140).

한편, 수신기 (S150)에서는 송신된 심볼이 입력되고 복조기 (S160)을 거쳐 부호화 비트단위의 임시 결정 변수로 변환되어 분배기 (S170)에 입력된다. 분배기의 부호화 비트 분배 및 ‘0’삽입기 (S171)는 천공 위치 연산기 (S172)에 의해서 수신된 임시 결정 변수를 분배시키고 천공된 위치에는 ‘0’을 입력시킨다. 이 때, 천공 위치 연산기 (S172)는 송신단의 부호율 제어기 (S121)로부터 별도의 제어 채널을 통해, 모부호에 대한 정보와 천공량에 대한 정보를 받아 실시간으로 천공 위치를 계산하고 부호화 비트 분배 및 ‘0’삽입기에게 천공된 비트의 위치를 알려주고, 부호화 비트 분배 및 삽입기 (S171)는 천공된 위치를 제외한 위치에 수신된 임 시 결정 변수를 분배시키고, 천공된 위치에‘0’을 삽입한다. 이러한 순서로 출력된 임시 결정 변수들은 복호기(S180)으로 입력되어 복호되고 정보비트로 출력된다.Meanwhile, in the receiver S150, the transmitted symbol is input, converted into a temporary decision variable in units of coding bits through the demodulator S160, and input to the divider S170. The coded bit distribution and '0' inserter S171 of the distributor divides the temporary decision variable received by the puncturing position calculator S172 and inputs '0' into the punctured position. At this time, the puncturing position calculator (S172) receives the information on the parent code and the puncturing amount through a separate control channel from the code rate controller (S121) of the transmitting end, calculates the puncturing position in real time, and distributes the coded bits. The '0' inserter is notified of the position of the punctured bit, the coded bit distribution and inserter (S171) distributes the received temporary decision variables at positions other than the punctured position, and inserts '0' at the punctured position. do. The temporary decision variables output in this order are input to the decoder S180, decoded, and output as information bits.

이하, 도 2를 참조하여 HARQ를 지원하기 위한 송수신 장치에 대하여 설명한다.Hereinafter, a transceiver for supporting HARQ will be described with reference to FIG. 2.

우선 정보비트는 부호화기(S210)에 입력되어 부호화 비트로 변환되고 천공기(S220)에 입력된다. 천공기에 입력된 부호화 비트는 송신 부호화 비트 버퍼(S221)에 저장된다. 부호화 비트 선택기(S224)은 천공 위치 연산기 (S223)의 정보에 따라 현재 송신할 부호화 비트만를 버퍼(S221)로부터 선택하여 출력한다. 이 때, 천공 위치 연산기 (S223)는 HARQ 제어기로 (S222)로부터 모부호에 대한 정보, 천공량, 그리고 재전송횟수에 대한 정보를 받아 실시간으로 천공위치 연산을 수행하여 천공된 위치를 선택기 (S224)에 알려주고 선택기는 송신 부호화 비트 버퍼 (S221)로부터 천공되지 않는 위치의 부호화 비트를 선택한다. 출력된 부호화 비트는 변조기 (S230)에서 심볼로 변환되고 송신기 (S240)을 거쳐서 송신된다. First, the information bits are input to the encoder S210, converted into encoded bits, and input to the puncturer S220. The encoded bits input to the puncturer are stored in the transmission encoded bit buffer (S221). The encoding bit selector S224 selects and outputs only the encoding bit to be transmitted currently from the buffer S221 according to the information of the puncturing position calculator S223. At this time, the puncturing position calculator (S223) receives the information on the mother code, the puncturing amount, and the number of retransmissions from the HARQ controller (S222) to perform the puncturing position calculation in real time to select the punctured position (S224). The selector selects the coded bits at positions not punctured from the transmit coded bit buffer S221. The output encoded bits are converted into symbols by the modulator S230 and transmitted via the transmitter S240.

송신된 심볼은 수신기 (S250)에 입력되고 복조기 (S260)에서 부호화 비트 단위의 임시결정변수로 복조된다. 복조된 임시 결정 변수는 분배기 (S270)에서 천공 위치 연산기 (S271)의 정보에 따라 부호화 비트 분배기 (S272)를 통해 수신 부호화 비트 버퍼 (S274)에 분배된다. 한번도 전송이 되지 않은 부호화 비트의 위치에는 천공 위치 연산기의 정보에 따라‘0’삽입기 (S273)를 통해‘0’이 버퍼(S274)에 저장된다. 이때 천공 위치 연산기 (S271)는 천공된 위치를 부호화 비트 분배기 (S272)와‘0’삽입기 (S273)에 전달하고, 분배기 (S272)는 천공되지 않은 위치에 입력된 임시 결정 변수를 수신 부호화 비트 버퍼 (S274)의 해당 위치에 저장한다. 마찬가지로‘0’삽입기 (S273)은 수신 부호화 비트 버퍼(S274)의 천공된 위치에 ‘0’을 삽입한다. 버퍼 (S274)에 저장된 0’을 포함한 모든 임시결정 변수들은 복호기 (S280)에 전달되어 복호되고 패리티 검사기(S280)로 전달된다. The transmitted symbol is input to the receiver S250 and demodulated to a temporary decision variable in units of coding bits in the demodulator S260. The demodulated temporary decision variable is distributed to the received encoded bit buffer S274 through the encoded bit divider S272 according to the information of the puncturing position calculator S271 in the divider S270. At the position of the coded bit that has never been transmitted, '0' is stored in the buffer S274 through the '0' inserter S273 according to the information of the puncturing position calculator. At this time, the puncturing position calculator S271 transmits the punctured position to the encoding bit divider S272 and the '0' inserter S273, and the divider S272 receives the temporary decision variable input to the unpunctured position. It is stored in the corresponding position of the buffer S274. Similarly, the '0' inserter S273 inserts '0' at the punctured position of the reception encoding bit buffer S274. All temporary decision variables including 0 'stored in the buffer S274 are transmitted to the decoder S280, decoded, and passed to the parity checker S280.

패리티 검사기에서는 패리티 검사를 수행하여, 통과되면 송신단에 ACK를 전송하고 정보비트를 검출하고, 실패하면 송신단에 NACK를 전송하여 이 정보를 송신단의 HARQ제어기(S222)에서 다음 패킷 전송을 위한 제어 정보로 사용한다. The parity checker performs a parity check, and if it passes, transmits an ACK to the transmitting end and detects an information bit. If it fails, the parity checker transmits a NACK to the transmitting end. use.

이하, 첨부도면을 참조하여 쌍대각 구조를 가진 블록 형태 저밀도 패러티 검사 부호의 천공 방법에 대하여 설명한다.Hereinafter, a method of puncturing a block-type low density parity check code having a bi-diagonal structure will be described with reference to the accompanying drawings.

일반적으로, n개의 열과 m개의 행을 가지는 B-LDPC의 패리티 검사 행렬 H 는 다음과 같이 정보부분과 패리티 부분으로 나누어 쓸 수 있다.

Figure 112007039111219-PAT00008
여기서 z는 블록의 행 또는 열의 길이이며,
Figure 112007039111219-PAT00009
그리고
Figure 112007039111219-PAT00010
이다. 블록 쌍 대각 패리티 구조
Figure 112007039111219-PAT00011
의 형태는 다음 수학식 1과 같이 표현할 수 있다. In general, the parity check matrix H of a B-LDPC having n columns and m rows can be divided into an information part and a parity part as follows.
Figure 112007039111219-PAT00008
Where z is the length of the row or column of the block,
Figure 112007039111219-PAT00009
And
Figure 112007039111219-PAT00010
to be. Block Pair Diagonal Parity Structure
Figure 112007039111219-PAT00011
Can be expressed as Equation 1 below.

Figure 112007039111219-PAT00012
Figure 112007039111219-PAT00012

상기에서 행렬

Figure 112007039111219-PAT00013
는 3개의 0이 아닌 블록을 가지고 있으며
Figure 112007039111219-PAT00014
는 쌍 대각 블록을 가진
Figure 112007039111219-PAT00015
크기의 행렬이다. 여기서
Figure 112007039111219-PAT00016
의 i번째 행과 j번째 열은 i와 j가 같을 때는
Figure 112007039111219-PAT00017
크기의 단위행렬 I이며,
Figure 112007039111219-PAT00018
일 때는
Figure 112007039111219-PAT00019
이다. 여기서
Figure 112007039111219-PAT00020
Figure 112007039111219-PAT00021
크기의 단위행렬을 오른쪽으로
Figure 112007039111219-PAT00022
번 순환이동 시키고 나서의 행렬이다.
Figure 112007039111219-PAT00023
의 위치는 블록 단위로 l 번째 행에 위치한다. IEEE 802.16e에서 사용되는 B-LDPC부호들은
Figure 112007039111219-PAT00024
이고, 효과적인 인코딩을 위해서
Figure 112007039111219-PAT00025
, 그리고
Figure 112007039111219-PAT00026
으로 설계되어있다. q는 블록 사이즈 z와 서로 소가 되도록 결정된다. 그러면 모든 패리티 블록안의 비트들끼리는
Figure 112007039111219-PAT00027
의 길이를 가지는 사이클 한 개와
Figure 112007039111219-PAT00028
의 길이를 가지는 사이클 한 개와
Figure 112007039111219-PAT00029
의 길이를 가지는 사이클 z개로 서로 연결이 되며, 이를 각각 연결 1, 연결 2 그리고 연결 3 이라 정의한다.Matrix above
Figure 112007039111219-PAT00013
Has three non-zero blocks
Figure 112007039111219-PAT00014
Has a pair of diagonal blocks
Figure 112007039111219-PAT00015
Is a matrix of magnitudes. here
Figure 112007039111219-PAT00016
The i th row and the j th column of are equal to i
Figure 112007039111219-PAT00017
Unit matrix I of size,
Figure 112007039111219-PAT00018
When
Figure 112007039111219-PAT00019
to be. here
Figure 112007039111219-PAT00020
Is
Figure 112007039111219-PAT00021
Unit matrix of size to the right
Figure 112007039111219-PAT00022
This is the matrix after the first cycle.
Figure 112007039111219-PAT00023
The position of is in the lth row in block units. B-LDPC codes used in IEEE 802.16e
Figure 112007039111219-PAT00024
For efficient encoding
Figure 112007039111219-PAT00025
, And
Figure 112007039111219-PAT00026
Is designed. q is determined to be small with the block size z. Then the bits in every parity block
Figure 112007039111219-PAT00027
One cycle with the length of
Figure 112007039111219-PAT00028
One cycle with the length of
Figure 112007039111219-PAT00029
Z cycles with lengths are connected to each other and are defined as connection 1, connection 2 and connection 3, respectively.

이하, 도 4을 참조하여 상기에 언급한 블록 그룹화 순서에 대하여 설명한다. Hereinafter, the above-described block grouping order will be described with reference to FIG. 4.

우선, 가장 작은 값을 가지는 k-SR노드의 수를 최대화한다. 여기에서 디그리(degree) 2인 블록만을 선택한다. 우선 (2n+1) 번째 블록을 (n=0,1,...,mb/2-1) 첫 번째 블록 그룹으로 정한다. 이렇게 함으로써 최대의 개수인 mbz/2 개의 1-SR 노드가 얻어지고 각 1-SR 노드는 복구시 모든 연결된 체크노드로부터 신뢰도를 갱신한다. 첫 번째 블록 그룹의 모든 비트가 천공되면 2(2n+1)번째 블록을 (n=0,1,...,mb/4-1) 두 번째 블록 그룹으로 정한다. 이렇게 함으로써 최대의 개수인 mbz/4 개의 2-SR 노드가 얻어지고 각 2-SR 노드는 복구시 모든 연결된 체크노드로부터 신뢰도를 갱신한다. 이러한 방식으로 t번째 블록 그룹에서는 2t-1(2n+1)번째 블록에서 (n=0,1,...mb-1) 2t-1-SR노드 (t=1,2,...)의 수가 최대화되고 이런 방법을 남아있는 블록의 개수가 홀수가 될 때까지 계속한다. 남아있는 블록의 개수가 홀수이면 천공되지 않은 디그리 2를 가진 블록이 마지막 블록 그룹이 된다.First, maximize the number of k-SR nodes having the smallest value. Select only blocks of degree 2 here. First, set the (2n + 1) th block as the first block group (n = 0,1, ..., m b / 2-1). In this way, a maximum number of m b z / 2 1-SR nodes are obtained, and each 1-SR node updates reliability from all connected check nodes in recovery. If all bits of the first block group are punctured, the 2 (2n + 1) th block is defined as (n = 0,1, ..., m b / 4-1) as the second block group. In this way, a maximum number of m b z / 4 2-SR nodes is obtained, and each 2-SR node updates reliability from all connected check nodes in recovery. In this way, in the t-th block group, in the 2 t-1 (2n + 1) th block, (n = 0,1, ... m b -1), the 2 t-1 -SR node (t = 1,2 ,. Continue until the number of blocks is maximized and the number of remaining blocks is odd. If the number of blocks remaining is odd, the block with the unpunctured degree 2 becomes the last block group.

이하, 도 5 및 도 6을 참조하여 천공 방법에 대하여 설명한다.Hereinafter, the drilling method will be described with reference to FIGS. 5 and 6.

우선, 그룹 인덱스 t는 1로 현재 천공비트의 수 i는 0으로 초기화 (S410)한다. i가 Np 가 되면 (S420) 천공 과정을 중지한다 (S490). 상기 Np는 총 천공할 비트의 수이다. 만일 mb/2t가 정수이고 (S430) 현재 그룹에서 천공되지 않고 남아있는 블록이 있다면, 즉 i<(2t-1)mbz/2t이면 (S440), i번째 천공비트의 위치는 L1(i)에 의해서 결정한다 (S450). 현재의 블록 그룹내의 모든 비트가 천공되었다면 (S440), 그룹 인덱스 t를 1만큼 증가시킨다 (S480). 만일 mb/2t가 정수가 아니면 (S430), 즉, 그룹 인덱스가 증가된 직후, 남아있는 블록의 개수가 홀수이면, i번째 천공비트의 위치는 L2(i)에 의해서 결정된다. (S460). 한 개의 비트를 천공한 후에는 i를 1만큼 증가시키고 (S470) 천공 작업을 계속한다 (S420). First, the group index t is 1 and the number i of the current puncturing bits is initialized to 0 (S410). When i becomes Np (S420), the puncturing process is stopped (S490). Np is the total number of bits to puncture. If m b / 2 t is an integer (S430) and there are blocks left unperforated in the current group, i.e. i <(2 t -1) m b z / 2 t (S440), the position of the i th puncturing bit Is determined by L 1 (i) (S450). If all bits in the current block group are punctured (S440), the group index t is increased by 1 (S480). If m b / 2 t is not an integer (S430), that is, immediately after the group index is increased, if the number of remaining blocks is odd, the position of the i th puncturing bit is determined by L 2 (i). (S460). After punching one bit, i is increased by 1 (S470) and the drilling operation is continued (S420).

i번째 천공 비트의 위치는 블록 선택과 비트선택의 단계로 나눌 수 있다. The position of the i th puncturing bit may be divided into a block selection and a bit selection step.

간단한 선택방법으로서, 선택된 블록 그룹에서 가장 왼쪽의 블록을 선택하고 선택된 블록에서 가장 왼쪽의 비트를 선택할 수 있다. 이 경우에 i번째 천공 비트의 위치 결정은 수학식 2와 같다.As a simple selection method, the leftmost block may be selected from the selected block group and the leftmost bit may be selected from the selected block. In this case, the positioning of the i th puncturing bit is expressed by Equation 2 below.

Figure 112007039111219-PAT00030
Figure 112007039111219-PAT00030

상기

Figure 112007039111219-PAT00031
Figure 112007039111219-PAT00032
그리고
Figure 112007039111219-PAT00033
는 c 보다 작거나 같은 최대 정수를 의미한다. remind
Figure 112007039111219-PAT00031
Is
Figure 112007039111219-PAT00032
And
Figure 112007039111219-PAT00033
Is the largest integer less than or equal to c.

이러한 방법은 쉽고 단순한 방법이지만, 천공비트의 균일한 분포를 보장하지 않는다. 따라서 상대적으로 낮은 신뢰도를 가지는 비트 노드가 존재하게 되고 성능 열화가 발생하게 된다. This method is easy and simple, but does not guarantee a uniform distribution of the puncturing bits. Therefore, a bit node having a relatively low reliability is present and performance degradation occurs.

상기와 같은 문제를 해결하기 위해, 지그재그 엣지 연결에서 균일하게 천공비트를 분포시키기 위한 균일 선택 수열 un을 다음 수학식 3과 같이 정의한다. In order to solve the above problem, a uniform selection sequence u n for uniformly distributing the puncturing bits in the zigzag edge connection is defined as in Equation 3 below.

Figure 112007039111219-PAT00034
Figure 112007039111219-PAT00034

상기에서, k는 자연수이고 un(i), (i=0,1,...,n-1) 은 수열 un에서의 i번째 원소이다. 상기의 수열 un은 실시간으로 쉽게 구하기 위해서 재귀적으로 계산될 수 있다. In the above, k is a natural number and u n (i), (i = 0,1, ..., n-1) is the i th element in the sequence u n . The above sequence u n can be calculated recursively in order to easily obtain in real time.

또한 수열 un의 부분 수열

Figure 112007039111219-PAT00035
은 또 다른 균일 선택 수열이 된다. Also the partial sequence of the sequence u n
Figure 112007039111219-PAT00035
Becomes another uniform selection sequence.

그러므로 상기의 균일 선택 수열을 블록 선택 수열로서 사용하면, 각 연결들에 대해서 균일한 선택이 가능하다. Therefore, by using the above uniform selection sequence as the block selection sequence, uniform selection is possible for each connection.

또한 상기의 블록 내의 비트 선택에 있어서 어떤 비트를 천공할 경우에도 균일하게 하기 위해서는 비트 선택에서도 상기의 균일 선택 수열을 사용하면 된다. The above uniform selection sequence may also be used for bit selection in order to make uniform even when any bit is punctured in the above-described bit selection in the block.

하지만

Figure 112007039111219-PAT00036
인 블록들은 내부의 비트 연결을 치환시키게 되므로, 비트 치환정보와 균일 선택 수열을 동시에 사용하여야 지그재그 엣지 연결에서 완전히 균일하게 천공 비트를 할당할 수 있다. 따라서 비트 치환정보를 이용한 변형된 균일 선택 수열은 다음과 같이 수학식 4로 정의한다.However
Figure 112007039111219-PAT00036
Since the in-blocks replace the internal bit connection, the bit replacement information and the uniform selection sequence must be used at the same time so that the puncturing bits can be completely uniformly allocated in the zigzag edge connection. Therefore, the modified uniform selection sequence using the bit substitution information is defined by Equation 4 as follows.

Figure 112007039111219-PAT00037
Figure 112007039111219-PAT00037

상기의 수학식 4를 이용하여, 제안된 천공 비트의 위치의 결정을 다음의 수학식 5와 같이 나타낼 수 있다.Using Equation 4, the determination of the position of the proposed puncturing bit may be expressed as Equation 5 below.

Figure 112007039111219-PAT00038
Figure 112007039111219-PAT00038

이하, 도 7를 참조하여 본 발명의 실시예에 대하여 설명한다.Hereinafter, an embodiment of the present invention will be described with reference to FIG. 7.

도 7의 윗부분은 제안한 블록 그룹화만 사용했을 경우이고, 아랫 부분은 본 블록 그룹화 후에 블록 선택과 비트 선택을 상기의 내용처럼 균일하게 천공한 경우의 실시 예를 보인 것이다. 여기에서 z = 4, b1 = q, p = bi = 0 for 2 < i < 8 이 고 총 천공비트의 수는 6인 경우이다. The upper part of FIG. 7 shows a case where only the proposed block grouping is used, and the lower part shows an embodiment in which the block selection and the bit selection are uniformly punctured as described above after the block grouping. Where z = 4, b 1 = q, p = b i = 0 for 2 <i <8 and the total number of puncture bits is six.

블록 그룹화만 사용한 경우 첫 번째 블록 그룹 중에서 가장 왼쪽의 천공되지 않은 블록을 선택하고 그 블록 안에서 가장 왼쪽의 천공되지 않은 비트를 선택한다. 즉 블록 그룹화만 사용하게 되면 5번 비트 -> 6번 비트-> 7번 비트-> 8번 비트-> 13번 비트-> 14번 비트의 순서로 천공을 하게 된다. 상기의 6개의 비트를 천공하고 난 후, 각 연결 1,2, 그리고 3에서 보면 천공된 비트가 균일하게 분포되어 있지 않은 것을 확인할 수 있다.If only block grouping is used, the leftmost unperforated block is selected from the first block group, and the leftmost unperforated bit is selected within that block. In other words, if only block grouping is used, perforation is performed in the order of 5 bit-> 6 bit-> 7 bit-> 8 bit-> 13 bit-> 14 bit. After punching the six bits, it can be seen from the connections 1,2 and 3 that the punched bits are not evenly distributed.

하지만, 블록 선택과 비트 선택을 비트 치환을 고려한 균일 선택 수열을 이용하여 천공하게 되면, 5번 비트 -> 7번 비트-> 8번 비트-> 6번 비트-> 21번 비트-> 23번 비트의 순서대로 천공을 하게 된다. 그리고 천공한 결과, 모든 3종류의 연결들에서 천공된 비트가 균일하게 분포되어 있음을 확인할 수 있다. 처음 4개의 비트는 수열

Figure 112007039111219-PAT00039
를 사용하여 마지막 2개의 비트는 수열
Figure 112007039111219-PAT00040
를 사용하여 위치를 결정하게 된 것이다. However, if block selection and bit selection are punctured by using a uniform selection sequence considering bit substitution, bit 5-> bit 7-> bit 8-> bit 6-> bit 21-> bit 23 Perforations are made in the order of. As a result of the puncturing, it can be seen that the punched bits are uniformly distributed in all three types of connections. The first four bits are a sequence
Figure 112007039111219-PAT00039
The last two bits using a sequence
Figure 112007039111219-PAT00040
To determine the location.

상기와 같은 결과를 통해, 본 발명을 사용하게 되면 임의의 천공 비트의 수의 경우에도 연결 1,2, 그리고 3에서 균일하게 천공 노드가 분포하게 됨을 알 수 있다.Through the above results, it can be seen that using the present invention, even in the case of any number of puncturing bits, the puncturing nodes are uniformly distributed in the connections 1,2 and 3.

이하, 도 8, 도 9, 도 10을 참조하여 본 발명의 효과에 대하여 상세히 설명한다.Hereinafter, the effects of the present invention will be described in detail with reference to FIGS. 8, 9, and 10.

도 8에서는 4가지의 천공비트 선택에 대하여 두 가지의 부호율을 기준으로 그 성능이 비교되었다. 여기서는 부호율 1/2, 부호어 길이 2304, z=96인 IEEE 802.16e의 B-LDPC부호가 모부호로 사용되었고, 그 모 부호로부터 부호율 5/6 (7/8)의 천공부호가 922 (987)개의 비트를 본 발명의 천공으로 만들어졌다. In FIG. 8, the performance of the four puncturing bits is compared based on two code rates. In this case, the B-LDPC code of IEEE 802.16e with code rate 1/2, codeword length 2304 and z = 96 is used as the mother code, and the puncturing code of code rate 5/6 (7/8) is 922 from the mother code. (987) bits were made with the perforation of the present invention.

상기의 해당 천공량은 블록의 크기로 나누어 떨어지지 않으므로 기존의 블록 단위의 천공을 하는 기술로는 상기와 같은 부호율을 얻지 못함을 알 수 있다. Since the corresponding puncturing amount is not divided by the size of the block, it can be seen that the code rate as described above cannot be obtained by the conventional puncturing technique.

도 8에서 'LF' 방법는 제안된 블록 그룹 방법을 사용하지 않고 단순히 가장 왼쪽의 비트를 선택하여 천공하는 방법이다. 이런 경우에는 큰 k값을 가진 k-SR 노드가 상당수 존재하게 되므로 성능이 매우 나빠진다. In FIG. 8, the 'LF' method is a method of puncturing by simply selecting the leftmost bit without using the proposed block group method. In this case, there are many k-SR nodes with large k values, so the performance is very poor.

두 번째로 'PG/LFB/WBS’방법은 블록 선택에 있어서는 제안된 블록 그룹 방법 후 가장 왼쪽의 블록을 선택하는 방식을 택하고 비트 선택에 있어서는 의도적으로 치환 후 바로 오른쪽의 비트를 선택하는 (즉 가장 나쁜 선택을 하는) 방법이다. 'LF'와 'PG/LFB/WBS’의 성능 차이에서 볼 수 있듯이 제안된 블록 그룹방법은 천공된 B-LDPC부호의 상당한 성능개선을 얻을 수 있으며 이러한 그룹방법은 몇 가지의 특별한 경우만 가능한 것이 아니라 일반적으로 사용 가능한 것이기 때문에 중요한 의미가 있다.Secondly, the 'PG / LFB / WBS' method selects the leftmost block after the proposed block group method for block selection, and intentionally selects the right bit after substitution for bit selection (i.e. The worst choice). As can be seen from the performance difference between 'LF' and 'PG / LFB / WBS', the proposed block group method can achieve a significant performance improvement of perforated B-LDPC codes. It is important because it is generally available.

세 번째로 제안된 블록 그룹화만 사용하는 ‘그룹화만 한 방법'은 블록 그룹화를 한 후 가 장 왼쪽 블록을 선택하고 블락 내에서 가장 오른쪽 비트를 선택하는 방법으로서,‘제안된 방법’과 PG/LFB/WBS’방법의 성능의 사이에서 성능을 얻을 수 있다. 또한 모부호의 치환정보가 없을 경우에 심각한 성능손해 없이 간단하게 사용할 수 있는 장점이 있다.The third grouping method, which uses only the proposed block grouping, is to select the leftmost block and select the rightmost bits in the block after grouping the blocks. The proposed method and the PG / LFB Performance can be achieved between the performance of the / WBS 'method. In addition, there is an advantage that can be used simply without serious performance loss in the absence of substitution information of the parent code.

네 번째로 제안된 천공 비트 선택에 있어서 균일하게 블록을 선택하고 치환방식과 결합되어 균일하게 비트를 선택한 '제안된 방법’으로서, 도 6에서 볼 수 있듯이 가장 우수한 프레임 오율 성능을 보이고 있다. 또한, '제안된 방법’과 ‘PG/LFB/WBS’방법의 성능차이에서 제안된 블록 선택과 비트 선택은 상당한 성능이득을 가져다준다는 것을 알 수 있다. Fourth, the proposed method of uniformly selecting blocks and uniformly selecting bits in combination with the substitution method in the proposed puncturing bit selection shows the best frame error rate performance as shown in FIG. 6. In addition, it can be seen that the proposed block selection and bit selection have significant performance gains in the performance difference between the proposed method and the PG / LFB / WBS method.

도 9에서는 같은 IEEE 802.16e의 부호율 1/2, 부호어 길이 2304의 B-LDPC 모부호로부터 얻어진 부호율 2/3, 부호어 길이 1728, 그리고 부호율 3/4, 부호어 길이 1536인 천공된 B-LDPC부호와, 동일한 부호율과 길이를 가지는 천공되지 않은 IEEE802.16e의 부호 및 터보부호와 성능을 비교하였다. In Fig. 9, a puncturing rate of code rate 1/2 of the IEEE 802.16e code rate, code rate 2/3 obtained from a B-LDPC mother code of codeword length 2304, codeword length 1728, code rate 3/4, and codeword length 1536 are shown. The performance of the B-LDPC code and the uncoded IEEE802.16e code and turbo code with the same code rate and length are compared.

도 9에서 알 수 있듯이, 본 발명으로 얻어진 천공된 부호가 기존의 천공되지 않은 부호 및 터보 부호보다 낮은 신호대 잡음비(SNR)의 환경을 제외하고는 성능이 더 우수하다.As can be seen in FIG. 9, the perforated code obtained by the present invention is superior in performance except in the environment of a lower signal-to-noise ratio (SNR) than the conventional unperforated code and turbo code.

도 10에서는 girth을 최대화하도록 하는 조건으로 생성된 부호율 1/3, 부호어 길이 3456의 B-LDPC 모부호로부터 각각의 부호율 1/2, 2/3, 그리고 3/4, 각각의 부호어 길이 2304, 1728, 그리고 1536인 3가지의 천공된 B-LDPC부호를 본 발명에 의해 생성하였다. 그리고 터보 부호 및 IEEE802.16e의 천공되지 않은 B-LDPC 부호와 동일한 조건에서 프레임 오율의 성능을 비교하였다. In Figure 10, code rates 1/3, 2/3, and 3/4, respectively, from code rate 1/3, codeword length 3456 generated B-LDPC mother code under conditions that maximize girth. Three perforated B-LDPC codes of length 2304, 1728, and 1536 were generated by the present invention. And the performance of frame error rate was compared under the same condition as turbo code and unperforated B-LDPC code of IEEE802.16e.

도 10으로부터 제안된 천공부호가 터보 부호 및 천공되지 않은 부호보다 성능이 우수한 것을 알 수 있다. 따라서, 본 발명의 천공기법을 이용하여, 한 개의 좋은 모 B-LDPC부호로부터 상업적인 표준에 쓰이는 부호보다 우수한 가변 부호율 B-LDPC부호를 얻을 수 있다. It can be seen from FIG. 10 that the proposed puncturing code outperforms the turbo code and the unpunched code. Therefore, using the puncturing technique of the present invention, a variable code rate B-LDPC code can be obtained from one good mother B-LDPC code, which is superior to the code used in commercial standards.

이상에서는 본 발명을 특정의 바람직한 실시예에 대하여 도시하고 설명하였으나, 본 발명은 이러한 실시예에 한정되지 않으며, 당해 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 특허청구범위에서 청구하는 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 실시할 수 있는 다양한 형태의 실시예들을 모두 포함한다. While the invention has been shown and described with respect to certain preferred embodiments, the invention is not limited to these embodiments, and those of ordinary skill in the art claim the invention as claimed in the appended claims. It includes all the various forms of embodiments that can be implemented without departing from the spirit.

상기와 같은 본 발명 블록 형태 저밀도 패러티 검사 부호의 천공 방법에 의하면,According to the puncturing method of the present invention block type low density parity check code as described above,

첫째, 쌍대각 패리티 구조를 가지는 B-LDPC 부호를 위한 보다 효율적인 비트 단위의 천공을 할 수 있고,First, more efficient bitwise puncturing for a B-LDPC code having a bi-diagonal parity structure can be achieved.

둘째, 임의의 천공 패턴들을 저장하기 위한 메모리가 필요로 하지 않으며 수식화된 천공 패턴을 통해 실시간으로 천공을 할 수 있으며, Secondly, it does not need memory to store arbitrary puncturing patterns and can puncture in real time through the formulated puncturing pattern,

둘째, 어떠한 쌍대각 구조를 가진 B-LDPC부호에 있어서도 적용가능한 천공 패턴 생성이 가능하고,Second, it is possible to generate a perforation pattern applicable to the B-LDPC code having a bi-diagonal structure,

셋째, 어떠한 비트 단위의 천공량, 즉 어떠한 부호율의 변화에 있어서도 가장 우수한 성능을 가진 구조적인 천공패턴을 제공할 수 있으며,Third, it is possible to provide a structural puncturing pattern having the best performance in any bit rate, that is, any code rate change,

넷째, 사전에 결정된 블록 그룹에 따라서 천공할 블록 및 비트를 정하므로 이를 통해 천공된 부호의 성능을 기본적으로 보장할 수 있고,Fourth, since the blocks and bits to be punctured are determined according to a predetermined block group, the performance of the punctured code can be basically guaranteed through this.

다섯째, 지그재그 엣지의 연결에서 천공된 비트가 균일하게 분포하도록 천공하므로 천공비트의 및 그와 인접한 천공되지 않는 비트의 신뢰도 열화가 균일하게 분포되어 보다 우수한 복호 성능을 얻을 수 있으며,Fifth, since the perforated bits are uniformly distributed in the zigzag edge connection, the degradation of reliability of the perforated bits and the non-perforated bits adjacent thereto are uniformly distributed to obtain better decoding performance.

여섯째, 본 발명의 천공 방법으로 임의의 형태의 H-ARQ 기술을 적용할 수 있다.Sixth, any form of H-ARQ technique can be applied to the puncture method of the present invention.

Claims (27)

천공에 필요한 정보를 전달하는 부호율 제어기;A code rate controller for transmitting information necessary for puncturing; 상기 부호율 제어기에 연결되어 주어진 정보를 이용하여 천공 비트의 위치를 계산하는 천공 위치 연산기(a);A puncturing position calculator (a) coupled to the code rate controller for calculating a puncturing bit position using given information; 상기 천공 위치 연산기(a)에 연결되어 천공기에 입력된 부호화 비트 중에서 천공되지 않은 비트를 선택하여 전달하는 부호화 비트 선택기를 포함하여 구성되는 송신기와,A transmitter connected to the puncturing position calculator (a) and including an encoding bit selector for selecting and transmitting an unpunctured bit among the encoding bits input to the puncturer; 상기 송신기의 부호율 제어기에 제어 채널을 통해 정보를 받고 천공 비트의 위치를 계산하는 천공 위치 연산기(b);A puncturing position calculator (b) for receiving information through a control channel to the code rate controller of the transmitter and calculating a puncturing bit position; 상기 천공 위치 연산기(b)에 연결되어 부호화 비트 단위의 임시 결정 변수를 분배하고 천공 비트의 위치에 '0'을 삽입하여 출력하는 부호화 비트 분배 및 '0' 삽입기를 포함하여 구성되는 수신기,A receiver connected to the puncturing position calculator (b) and configured to distribute a temporal decision variable in units of coding bits and to insert and output '0' at a puncturing bit position and to output a '0' inserter; 를 포함하여 구성되는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.Communication system supporting a variable code rate, characterized in that configured to include. 청구항 1에 있어서, 상기 부호율 제어기는 모부호의 부호어 길이, 부호율, 전송 부호율에 따른 천공량 정보를 전달하는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.The communication system of claim 1, wherein the code rate controller delivers puncturing amount information according to a codeword length, a code rate, and a transmission code rate of a mother code. 청구항 1 또는 2에 있어서,The method according to claim 1 or 2, 상기 송신기의 천공 위치 연산기(a)와 수신기의 천공 위치 연산기(b)는 천공 비트의 위치를 실시간으로 계산하는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.The puncturing position calculator (a) of the transmitter and the puncturing position calculator (b) of the receiver calculate a position of a puncturing bit in real time. 청구항 3에 있어서,The method according to claim 3, 상기 천공 위치 연산기(a), (b)는,The puncture position calculator (a), (b), 사전에 결정된 블록 그룹을 정하는 단계;Determining a predetermined block group; 상기 그룹 내에서 블록의 위치를 정하는 단계;Positioning a block within the group; 상기 블록 내에서 천공할 비트의 위치를 정하는 단계를 포함하여 구성되는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.And determining a position of a bit to be punctured in the block. 청구항 4에 있어서, The method according to claim 4, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 천공된 노드가 최대한 작은 횟수의 반복복호로 복구되는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.The step of determining the predetermined block group, the communication system supporting a variable code rate, characterized in that the punctured node is recovered with the smallest number of iterations. 청구항 5에 있어서, The method according to claim 5, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 가장 작은 k값을 가지는 k-SR 노드의 수가 최대가 되도록 그룹화 하는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.The step of determining the predetermined block group, the communication system supporting a variable code rate, characterized in that the grouping so that the maximum number of k-SR nodes having the smallest k value. 청구항 4에 있어서,The method according to claim 4, 상기 그룹 내에서 블록의 위치를 정하는 단계는, Positioning the block within the group, 남아 있는 블록의 개수가 홀수인지 확인하는 단계;Checking whether the number of remaining blocks is odd; 현재 그룹에서 천공되지 않고 남아있는 블록의 유무를 확인하는 단계를 포함하여 구성되는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.And determining whether there are blocks left unperforated in the current group. 청구항 7에 있어서, The method according to claim 7, 상기 남아 있는 블록의 개수가 홀수인지 확인하는 단계는 t가 1만큼 증가된 직후에 mb/2t가 정수인지 확인함으로써 이루어지며, 상기 mb값은 블록의 행의 개수이며, t는 그룹 인덱스를 나타내는 것을 특징으로 하는 가변 부호율을 지원하는 통 신 시스템.The step of checking whether the number of remaining blocks is an odd number is performed by checking whether m b / 2 t is an integer immediately after t is increased by 1, wherein the value of m b is the number of rows of blocks, and t is a group index. Communication system that supports a variable code rate, characterized in that for showing. 청구항 4에 있어서,The method according to claim 4, 상기 블록 내에서 천공할 비트의 위치를 정하는 단계는,Positioning the bits to be punctured in the block, 남아 있는 블록의 개수가 짝수이며 현재 그룹에서 천공되지 않고 남아 있는 블록이 있는 경우 L1(i)에 의하여, 남아 있는 블록의 개수가 홀수이면 L2(i)에 의하여 천공 비트 위치를 결정하며, 상기 L1(i) 및 L2(i)는 각각The number of the remaining blocks the even and to determine the drilling bit positions by, left L 2 (i) if the number is an odd number of blocks by L 1 (i) If the block remains without being punctured in the current group, L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00041
이며, 상기
Figure 112007039111219-PAT00042
Figure 112007039111219-PAT00043
그리고
Figure 112007039111219-PAT00044
는 c 보다 작거나 같은 최대 정수를 의미하는 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.
Figure 112007039111219-PAT00041
And said
Figure 112007039111219-PAT00042
Is
Figure 112007039111219-PAT00043
And
Figure 112007039111219-PAT00044
Is a communication system supporting a variable code rate, the maximum integer being less than or equal to c.
청구항 9에 있어서,The method according to claim 9, 상기 L1(i) 및 L2(i)는 각각L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00045
Figure 112007039111219-PAT00045
이며, 상기 u'z(i) 및 u''z(i)는 각각And u ' z (i) and u'' z (i) are each
Figure 112007039111219-PAT00046
Figure 112007039111219-PAT00046
이고, 상기 uz(i)는 And u z (i) is
Figure 112007039111219-PAT00047
Figure 112007039111219-PAT00047
인 것을 특징으로 하는 가변 부호율을 지원하는 통신 시스템.Communication system supporting a variable code rate, characterized in that.
부호화 비트를 저장하는 송신 부호화 비트 버퍼;A transmit encoded bit buffer for storing encoded bits; 궤환 신호 및 천공에 필요한 정보를 제어하는 HARQ 제어기;A HARQ controller for controlling feedback signals and information necessary for puncturing; 상기 HARQ 제어기에 연결되어 정보를 받아 천공 위치를 연산하는 천공 위치 연산기(a);A puncturing position calculator (a) connected to the HARQ controller and receiving the information to calculate the puncturing position; 상기 부호화 비트 버퍼와 천공 위치 연산기(a)에 연결되어 송신할 부호화 비트만을 선택하는 부호화 비트 선택기를 포함하여 구성되는 송신기와,A transmitter connected to the encoding bit buffer and the puncturing position calculator (a) and including an encoding bit selector for selecting only encoding bits to be transmitted; 상기 송신기의 HARQ 제어기에 제어 채널을 통해 정보를 받고 천공 위치를 연산하는 천공 위치 연산기(b);A puncturing position calculator (b) that receives information through a control channel to the HARQ controller of the transmitter and calculates a puncturing position; 상기 천공 위치 연산기(b)에 연결되어 수신 부호화 비트를 분배하는 부호화 비트 분배기;A coded bit divider connected to the puncturing position calculator (b) to distribute received coded bits; 상기 천공 위치 연산기(b)에 연결되어 전송이 되지 않은 부보화 비트 위치에 '0'을 삽입하는 '0' 삽입기;A '0' inserter connected to the puncturing position calculator (b) to insert a '0' into a sub-compensation bit position that has not been transmitted; 상기 부호화 비트 분배기와 상기 '0'삽입기에 연결되어 수신 부호화 비트를 저장하는 수신 부호화 비트 버퍼를 포함하여 구성되는 수신기,A receiver coupled to the encoded bit divider and the '0' inserter and including a received encoded bit buffer for storing received encoded bits; 를 포함하여 구성되는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.Communication system supporting HARQ, characterized in that configured to include. 청구항 11에 있어서, 상기 HARQ 제어기는 모부호의 부호어 길이, 부호율, 전송 부호율에 따른 천공량 정보를 전달하는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.12. The communication system of claim 11, wherein the HARQ controller transmits puncturing amount information according to a codeword length, a code rate, and a transmission code rate of a mother code. 청구항 11 또는 12에 있어서,The method according to claim 11 or 12, 상기 송신기의 천공 위치 연산기(a)와 수신기의 천공 위치 연산기(b)는 천공 비트의 위치를 실시간으로 계산하는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.The puncturing position calculator (a) of the transmitter and the puncturing position calculator (b) of the receiver calculate a position of a puncturing bit in real time. 청구항 13에 있어서,The method according to claim 13, 상기 천공 위치 연산기(a), (b)는,The puncture position calculator (a), (b), 사전에 결정된 블록 그룹을 정하는 단계;Determining a predetermined block group; 상기 그룹 내에서 블록의 위치를 정하는 단계;Positioning a block within the group; 상기 블록 내에서 천공할 비트의 위치를 정하는 단계를 포함하여 구성되는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.And positioning the bits to be punctured in the block. 청구항 14에 있어서, The method according to claim 14, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 천공된 노드가 최대한 작은 횟수의 반복복호로 복구되는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.The step of determining the predetermined block group, the communication system for supporting HARQ, characterized in that the punctured node is recovered with the smallest number of iterations. 청구항 15에 있어서, The method according to claim 15, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 가장 작은 k값을 가지는 k-SR 노드의 수가 최대가 되도록 그룹화 하는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.The determining of the predetermined block group may include grouping the maximum number of k-SR nodes having the smallest k value to maximize the number of k-SR nodes. 청구항 14에 있어서,The method according to claim 14, 상기 그룹 내에서 블록의 위치를 정하는 단계는, Positioning the block within the group, 남아 있는 블록의 개수가 홀수인지 확인하는 단계;Checking whether the number of remaining blocks is odd; 현재 그룹에서 천공되지 않고 남아있는 블록의 유무를 확인하는 단계를 포함하여 구성되는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.A communication system supporting HARQ, characterized in that it comprises a step of checking the presence of blocks that are not punctured in the current group. 청구항 17에 있어서, The method according to claim 17, 상기 남아 있는 블록의 개수가 홀수인지 확인하는 단계는 t가 1만큼 증가된 직후에 mb/2t가 정수인지 확인함으로써 이루어지며, 상기 mb값은 블록의 행의 개수이며, t는 그룹 인덱스를 나타내는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.The step of checking whether the number of remaining blocks is an odd number is performed by checking whether m b / 2 t is an integer immediately after t is increased by 1, wherein the mb value is the number of rows of blocks, and t is a group index. Communication system supporting HARQ, characterized in that represented. 청구항 14에 있어서,The method according to claim 14, 상기 블록 내에서 천공할 비트의 위치를 정하는 단계는,Positioning the bits to be punctured in the block, 남아 있는 블록의 개수가 짝수이며 현재 그룹에서 천공되지 않고 남아 있는 블록이 있는 경우 L1(i)에 의하여, 남아 있는 블록의 개수가 홀수이면 L2(i)에 의하여 천공 비트 위치를 결정하며, 상기 L1(i) 및 L2(i)는 각각The number of the remaining blocks the even and to determine the drilling bit positions by, left L 2 (i) if the number is an odd number of blocks by L 1 (i) If the block remains without being punctured in the current group, L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00048
이며, 상기
Figure 112007039111219-PAT00049
Figure 112007039111219-PAT00050
그리고
Figure 112007039111219-PAT00051
는 c 보다 작거나 같은 최대 정수를 의미하는 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.
Figure 112007039111219-PAT00048
And said
Figure 112007039111219-PAT00049
Is
Figure 112007039111219-PAT00050
And
Figure 112007039111219-PAT00051
Is a communication system supporting HARQ, which means a maximum integer less than or equal to c.
청구항 19에 있어서,The method according to claim 19, 상기 L1(i) 및 L2(i)는 각각L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00052
Figure 112007039111219-PAT00052
이며, 상기 u'z(i) 및 u''z(i)는 각각And u ' z (i) and u'' z (i) are each
Figure 112007039111219-PAT00053
Figure 112007039111219-PAT00053
이고, 상기 uz(i)는 And u z (i) is
Figure 112007039111219-PAT00054
Figure 112007039111219-PAT00054
인 것을 특징으로 하는 HARQ를 지원하는 통신 시스템.A communication system supporting HARQ, characterized in that the.
쌍대각 패리티 블록 구조를 가지는 블록 형태의 저밀도 패러티 검사 부호에 있어서,In the block-type low density parity check code having a bi-diagonal parity block structure, 사전에 결정된 블록 그룹을 정하는 단계;Determining a predetermined block group; 상기 그룹 내에서 블록의 위치를 정하는 단계;Positioning a block within the group; 상기 블록 내에서 천공할 비트의 위치를 정하는 단계를 포함하여 구성되는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.And determining a position of a bit to be punctured in the block. 청구항 21에 있어서, The method according to claim 21, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 천공된 노드가 최대한 작은 횟수의 반복복호로 복구되는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.The step of determining the predetermined block group, the puncturing method of the block-type low density parity check code, characterized in that the punctured node is recovered with the smallest number of iterations. 청구항 22에 있어서, The method according to claim 22, 상기 사전에 결정된 블록 그룹을 정하는 단계는, 가장 작은 k값을 가지는 k-SR 노드의 수가 최대가 되도록 그룹화 하는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.The step of determining the predetermined block group, the method of puncturing block type low density parity check code, characterized in that the grouping so that the number of k-SR node having the smallest k value to the maximum. 청구항 21에 있어서,The method according to claim 21, 상기 그룹 내에서 블록의 위치를 정하는 단계는, Positioning the block within the group, 남아 있는 블록의 개수가 홀수인지 확인하는 단계;Checking whether the number of remaining blocks is odd; 현재 그룹에서 천공되지 않고 남아있는 블록의 유무를 확인하는 단계를 포함하여 구성되는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.A method for puncturing a block type low density parity check code, characterized in that it comprises the step of checking for the existence of blocks that are not punctured in the current group. 청구항 24에 있어서, The method of claim 24, 상기 남아 있는 블록의 개수가 홀수인지 확인하는 단계는 t가 1 증가된 직후에 mb/2t가 정수인지 확인함으로써 이루어지며, 상기 mb값은 블록의 행의 개수이며, t는 그룹 인덱스를 나타내는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.The step of checking whether the number of remaining blocks is an odd number is performed by checking whether m b / 2 t is an integer immediately after t is increased by 1, wherein the mb value is the number of rows of blocks, and t represents a group index. A puncturing method for a block type low density parity check code, characterized in that. 청구항 21에 있어서,The method according to claim 21, 상기 블록 내에서 천공할 비트의 위치를 정하는 단계는,Positioning the bits to be punctured in the block, 남아 있는 블록의 개수가 짝수이며 현재 그룹에서 천공되지 않고 남아 있는 블록이 있는 경우 L1(i)에 의하여, 남아 있는 블록의 개수가 홀수이면 L2(i)에 의하여 천공 비트 위치를 결정하며, 상기 L1(i) 및 L2(i)는 각각The number of the remaining blocks the even and to determine the drilling bit positions by, left L 2 (i) if the number is an odd number of blocks by L 1 (i) If the block remains without being punctured in the current group, L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00055
이며, 상기
Figure 112007039111219-PAT00056
Figure 112007039111219-PAT00057
그리고
Figure 112007039111219-PAT00058
는 c 보다 작거나 같은 최대 정수를 의미하는 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.
Figure 112007039111219-PAT00055
And said
Figure 112007039111219-PAT00056
Is
Figure 112007039111219-PAT00057
And
Figure 112007039111219-PAT00058
Is a puncturing method of a block type low density parity check code, characterized in that it means a maximum integer less than or equal to c.
청구항 26에 있어서,The method of claim 26, 상기 L1(i) 및 L2(i)는 각각L 1 (i) and L 2 (i) are each
Figure 112007039111219-PAT00059
Figure 112007039111219-PAT00059
이며, 상기 u'z(i) 및 u''z(i)는 각각And u ' z (i) and u'' z (i) are each
Figure 112007039111219-PAT00060
Figure 112007039111219-PAT00060
이고, 상기 uz(i)는 And u z (i) is
Figure 112007039111219-PAT00061
Figure 112007039111219-PAT00061
인 것을 특징으로 하는 블록 형태 저밀도 패러티 검사 부호의 천공 방법.A puncturing method for a block-type low density parity check code, characterized in that.
KR1020070051785A 2007-05-29 2007-05-29 Method For Puncturing Of Block Type Low Density Parity Check Code KR100895612B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070051785A KR100895612B1 (en) 2007-05-29 2007-05-29 Method For Puncturing Of Block Type Low Density Parity Check Code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070051785A KR100895612B1 (en) 2007-05-29 2007-05-29 Method For Puncturing Of Block Type Low Density Parity Check Code

Publications (2)

Publication Number Publication Date
KR20080104684A true KR20080104684A (en) 2008-12-03
KR100895612B1 KR100895612B1 (en) 2009-05-06

Family

ID=40366263

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070051785A KR100895612B1 (en) 2007-05-29 2007-05-29 Method For Puncturing Of Block Type Low Density Parity Check Code

Country Status (1)

Country Link
KR (1) KR100895612B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160205A1 (en) * 2014-04-17 2015-10-22 삼성전자 주식회사 Method and apparatus for generating codeword, and method and apparatus for recovering codeword
KR20150120235A (en) * 2014-04-17 2015-10-27 삼성전자주식회사 a method amd an apparatus for generating a codeword and a method and an apparatus of recovering a codeword
WO2016137255A1 (en) * 2015-02-27 2016-09-01 한국전자통신연구원 Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same
WO2016137253A1 (en) * 2015-02-27 2016-09-01 한국전자통신연구원 Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US10511333B2 (en) 2015-02-27 2019-12-17 Electronics And Telecommunications Research Institute Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109391373B (en) * 2017-08-11 2022-01-28 中兴通讯股份有限公司 Data retransmission method, base station, terminal and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101351140B1 (en) * 2005-11-22 2014-01-15 조지아 테크 리서치 코오포레이션 Apparatus and method for transmitting/receiving signal in a communication system

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015160205A1 (en) * 2014-04-17 2015-10-22 삼성전자 주식회사 Method and apparatus for generating codeword, and method and apparatus for recovering codeword
KR20150120235A (en) * 2014-04-17 2015-10-27 삼성전자주식회사 a method amd an apparatus for generating a codeword and a method and an apparatus of recovering a codeword
US10070441B2 (en) 2014-04-17 2018-09-04 Samsung Electronics Co., Ltd. Method and apparatus for generating codeword, and method and apparatus for recovering codeword
WO2016137255A1 (en) * 2015-02-27 2016-09-01 한국전자통신연구원 Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same
WO2016137253A1 (en) * 2015-02-27 2016-09-01 한국전자통신연구원 Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US10284227B2 (en) 2015-02-27 2019-05-07 Electronics And Telecommunications Research Institute Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US10511333B2 (en) 2015-02-27 2019-12-17 Electronics And Telecommunications Research Institute Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same
US10812104B2 (en) 2015-02-27 2020-10-20 Electronics And Telecommunications Research Institute Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US11038535B2 (en) 2015-02-27 2021-06-15 Electronics And Telecommunications Research Institute Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same
US11316531B2 (en) 2015-02-27 2022-04-26 Electronics And Telecommunications Research Institute Parity puncturing device for fixed-length signaling information encoding, and parity puncturing method using same
US11588503B2 (en) 2015-02-27 2023-02-21 Electronics And Telecommunications Research Institute Parity puncturing device for variable-length signaling information encoding, and parity puncturing method using same

Also Published As

Publication number Publication date
KR100895612B1 (en) 2009-05-06

Similar Documents

Publication Publication Date Title
KR101503058B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR100966043B1 (en) Apparatus and method for transmitting/receiving signal in a communication system using low density parity check codes
KR101191196B1 (en) Method of encoding and decoding using a parity check matrix
KR100984289B1 (en) Signal transmitting/receiving apparatus for supporting variable coding rate in a communication system and method thereof
KR101502623B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR100881002B1 (en) Apparatus and method for generation of low density parity check code using zigzag code in communication system
US8737519B2 (en) Apparatus and method for channel coding in a communication system
KR100929079B1 (en) Decoding Apparatus and Method of Communication System Using Low Density Parity Check Code
US8161363B2 (en) Apparatus and method to encode/decode block low density parity check codes in a communication system
US6560748B2 (en) Encoding device
KR20060047842A (en) Puncturing method for ldpc channel code
KR100744343B1 (en) Apparatus for transmitting and receiving coded data by encoder having unequal error probability in mobile communication system and the method therof
KR20090092197A (en) Apparatus and method for encoding and decoding channel in communication system using low-density parity-check codes
KR20110055410A (en) Method and apparatus for transmitting and receiving data in communication system
KR100895612B1 (en) Method For Puncturing Of Block Type Low Density Parity Check Code
JPWO2008075627A1 (en) Encoding device, encoding method, encoding / decoding device, and communication device
KR101503656B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR20130044254A (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR20080050957A (en) Apparatus and method of encoding/decoding block low density parity check codes in a communication system
KR101276845B1 (en) Method of Low Density Parity Check Code decoding using a plurality of layers
KR20080106738A (en) Encoding and decoding apparatus and method of low density parity check code
KR101503655B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR101411720B1 (en) Method and apparatus for decoding system consisting of multiple decoders corresponding to variations of a single parity check matrix
KR101503654B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
JP2017143341A (en) Communication device and communication system

Legal Events

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

Payment date: 20130311

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140304

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee