KR20120000040A - Method for setting number of iterative decoding, apparatus and method for ldpc decoding - Google Patents

Method for setting number of iterative decoding, apparatus and method for ldpc decoding Download PDF

Info

Publication number
KR20120000040A
KR20120000040A KR1020110119435A KR20110119435A KR20120000040A KR 20120000040 A KR20120000040 A KR 20120000040A KR 1020110119435 A KR1020110119435 A KR 1020110119435A KR 20110119435 A KR20110119435 A KR 20110119435A KR 20120000040 A KR20120000040 A KR 20120000040A
Authority
KR
South Korea
Prior art keywords
decoding
received signal
iterative decoding
minimum
snr
Prior art date
Application number
KR1020110119435A
Other languages
Korean (ko)
Inventor
박주열
정기석
Original Assignee
한양대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한양대학교 산학협력단 filed Critical 한양대학교 산학협력단
Priority to KR1020110119435A priority Critical patent/KR20120000040A/en
Publication of KR20120000040A publication Critical patent/KR20120000040A/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/1105Decoding
    • H03M13/1128Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
    • 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/3707Adaptive decoding and hybrid decoding, e.g. decoding methods or techniques providing more than one decoding algorithm for one code
    • H03M13/3715Adaptation to the number of estimated errors or to the channel state
    • 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/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • H03M13/3753Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding using iteration stopping criteria
    • 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/6502Reduction of hardware complexity or efficient processing
    • 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/0036Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0052Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables
    • H04L1/0053Realisations of complexity reduction techniques, e.g. pipelining or use of look-up tables specially adapted for power saving

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)

Abstract

PURPOSE: A method for setting the number of iterative decoding, an LDPC decoding apparatus, and a decoding method thereof are provided to omit test decoding and parity check calculation by determining the times of repetitive decoding which is below minimum repetitive decoding number. CONSTITUTION: A decoding unit(210) restores a valid code word from a received signal by repetitively decoding the received signal. A decoding process, which is repetitively operated, includes test decode and error check. A SNR(Signal to Noise Ratio) estimation unit(220) estimates the SNR of a received signal. The SNR estimating unit estimates the SNR of the received signal according to an arbitrary SNR estimating method which is publicly known. A repetitive decode number setting unit(230) sets a minimum repetitive decode number about the received signal based on a measured SNR. A storage unit(240) stores one or more minimum repetitive decode numbers and one or more SNRs.

Description

반복 복호수 설정 방법, LDPC 복호화 장치 및 그 방법{Method for setting number of iterative decoding, Apparatus and Method for LDPC decoding}Method for setting an iterative decoding number, LDPC decoding apparatus and method therefor {Method for setting number of iterative decoding, Apparatus and Method for LDPC decoding}

본 발명의 일실시예들은 반복 복호수 설정 방법, LDPC 복호화 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 반복 복호화 수행 시 요구되는 연산량 및 소비되는 전력량을 줄일 수 있는 반복 복호수 설정 방법 및 이를 이용한 LDPC 복호화 장치 및 그 방법에 관한 것이다. Embodiments of the present invention relate to an iterative decoding number setting method, an LDPC decoding apparatus, and a method thereof, and more particularly, an iterative decoding number setting method for reducing the amount of computation and power consumption required for performing iterative decoding, and using the same. The present invention relates to an LDPC decoding apparatus and a method thereof.

4세대 무선 이동 통신 시스템에서는 사용자에게 다양한 멀티미디어 서비스를 제공하기 위해 고속의 데이터 전송률(data transfer rate)과 낮은 오류율(error rate)을 요구하고 있다. 보다 구체적으로, 4세대 무선 이동 통신에서는 고속 이동 시 최대 100Mbps, 저속 이동 또는 정지 시 최대 155Mbps~1Gbps의 데이터 전송 속도를 요구하고 있다. 따라서 열악한 전송 환경에서 고품질, 고신뢰성 통신을 수행하기 위해서는 채널 부호화/복호화 기술이 필수적으로 수반되어야 한다. 4G wireless mobile communication systems require high data transfer rates and low error rates to provide various multimedia services to users. More specifically, the fourth generation wireless mobile communication requires a data transfer rate of up to 100 Mbps at high speed and up to 155 Mbps to 1 Gbps at low speed or stop. Therefore, in order to perform high quality and high reliability communication in a poor transmission environment, channel encoding / decoding techniques must be accompanied.

채널 부호화 기술은 채널의 성격에 따라 여러 가지 형태로 변형되어 사용될 수 있는데, 기본적으로 오류 정정 코드(error correcting code)를 이용하여 신호를 부호화/복호화하는 기술이 공통적으로 사용된다. The channel encoding technique may be modified and used in various forms according to the characteristics of the channel. Basically, a technique of encoding / decoding a signal using an error correcting code is commonly used.

오류 정정 코드는 신뢰할 수 없는 채널 상에서 신뢰할 수 있는 통신을 달성하기 위해 사용되는 것으로서, 대표적인 예로 저 밀도 패리티 검사(LDPC: Low Density Parity Check) 코드를 이용한 부호화/복호화 기법(이하, 'LDPC 코딩'이라고 한다)이 있다. The error correction code is used to achieve reliable communication on an unreliable channel. A typical example is an encoding / decoding technique using a Low Density Parity Check (LDPC) code (hereinafter referred to as 'LDPC coding'). There is).

LDPC 코딩은 간단한 확률적(probabilistic) 복호법을 이용한 코딩 기법으로서, 반복 복호를 통하여 수신 신호를 복호화한다. LDPC 코딩은 대부분의 엘리먼트들이 0의 값(zero value)을 가지며, 0의 값을 가지는 엘리먼트들 이외의 극소수의 엘리먼트들이 0이 아닌 값(non-zero value, 예를 들어 1의 값)을 가지는 패리티 검사 행렬(Parity Check Matrix)에 의해 정의된다. LDPC coding is a coding technique using a simple probabilistic decoding method and decodes a received signal through iterative decoding. In LDPC coding, most elements have a zero value, and a small number of elements other than those with a zero value have a non-zero value (eg, a value of 1). Defined by the Parity Check Matrix.

LDPC 코딩 기법에서, 각각의 반복 복호화 단계에서는 시험 복호화(tentative decoding)를 통해 시험 코드(tentative code)를 생성하고, 패리티 검사(parity check)를 통해 생성된 시험 코드가 유효한 부호어(valid codeword)인지를 확인한다. 만약, 생성된 시험코드가 유효한 부호어가 아닌 경우 복호화가 반복되어 수행되고, 생성된 시험 코드가 유효한 부호어인 경우, 복호화가 중단된다. 이 때, 복호화 횟수가 증가할수록 생성된 시험 코드가 유효한 부호어일 확률은 증가한다. In the LDPC coding scheme, in each iterative decoding step, a tentative code is generated to generate a tentative code, and whether a test code generated through a parity check is a valid codeword. Check it. If the generated test code is not a valid codeword, decoding is repeatedly performed. If the generated test code is a valid codeword, decoding is stopped. At this time, as the number of decoding increases, the probability that the generated test code is a valid codeword increases.

따라서, 반복되어 수행되는 복호화의 횟수가 큰 수신신호의 경우, 초기 복호화 단계에서 생성된 시험 코드가 유효한 부호어일 확률이 낮고, 따라서, 초기 복호화 단계에서의 오류 검사는 불필요한 과정이 될 수 있다. 이에 따라, 복호화 시 연산량이 증가하여 복호화가 지연되고, 소비 전력이 증가하는 문제점이 발생한다.Therefore, in the case of a received signal having a large number of repeated decoding operations, the probability that the test code generated in the initial decoding step is a valid codeword is low, and therefore, error checking in the initial decoding step may be unnecessary. Accordingly, a problem arises in that the amount of calculation increases during decoding, delaying decoding, and increasing power consumption.

상기한 바와 같은 종래기술의 문제점을 해결하기 위해, 본 발명에서는 수신신호의 복호화 수행 시 요구되는 연산량 및 소비되는 전력량을 줄일 수 있는 LDPC 복호화 장치 및 그 방법을 제안하고자 한다.In order to solve the problems of the prior art as described above, the present invention proposes an LDPC decoding apparatus and method that can reduce the amount of computation required and the amount of power consumed when decoding a received signal.

상기한 목적을 달성하기 위해 본 발명의 바람직한 일 실시예에 따르면, LDPC 부호화 알고리즘에 따라 부호화된 수신신호의 신호 품질을 추정하는 신호 품질 추정부; 상기 수신신호에 대한 최소 반복 복호수를 상기 추정된 신호 품질에 반비례하도록 적응적으로 설정하는 반복 복호수 설정부; 및 체크 노드(check node)들에 대해 수행되는 복호화인 체크 노드 연산, 배리어블 노드(variable node)들에 대해 수행되는 복호화인 배리어블 노드 연산, 시험 코드에 대해 수행되는 복호화인 시험(tentative) 복호화 및 패리티 검사를 이용하여 상기 수신 신호를 반복적으로 복호화하는 복호화부를 포함하되, 상기 복호화부는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화 장치가 제공된다. According to a preferred embodiment of the present invention to achieve the above object, a signal quality estimator for estimating the signal quality of the received signal encoded according to the LDPC encoding algorithm; An iterative decoding setter which adaptively sets a minimum iterative decoding number for the received signal in inverse proportion to the estimated signal quality; And a check node operation that is decryption performed on check nodes, a variable node operation that is decryption performed on variable nodes, and a decryption test decryption performed on test code. And a decoder that repeatedly decodes the received signal using a parity check, wherein the decoder performs the check node operation and the variable node operation when the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number. An LDPC decoding apparatus is provided which does not perform the test decoding and the parity check operation.

또한, 본 발명의 다른 실시예에 따르면, LDPC 부호화 알고리즘에 따라 부호화된 수신신호를 체크 노드 연산, 배리어블 노드 연산, 시험 복호화 및 패리티 검사를 이용하여 반복적으로 복호화하는 LDPC 복호화 장치의 반복 복호수를 설정하는 방법에 있어서, 상기 수신신호의 신호 품질을 추정하는 단계; 및 상기 수신신호에 대한 최소 반복 복호수를 상기 추정된 신호 품질에 반비례하도록 적응적으로 설정하는 단계를 포함하되, 상기 최소 반복 복호수는 상기 LDPC 복호화 장치가 상기 시험 복호화 및 상기 패리티 검사를 수행할지를 결정하기 위해 사용되는 반복 복호수로서, 상기 LDPC 복호화 장치는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화를 위한 반복 복호수 설정 방법이 제공된다. According to another embodiment of the present invention, an iterative decoding number of an LDPC decoding apparatus repeatedly decoding a received signal encoded according to an LDPC encoding algorithm by using a check node operation, a variable node operation, a test decoding, and a parity check. A setting method, comprising: estimating a signal quality of the received signal; And adaptively setting a minimum repetition number for the received signal in inverse proportion to the estimated signal quality, wherein the minimum repetition number determines whether the LDPC decoding apparatus performs the test decoding and the parity check. As the iterative decoding number used for determining, the LDPC decoding apparatus performs the check node operation and the variable node operation when the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number, and performs the test decoding and the parity check. A method of setting an iterative decoding number for LDPC decoding, which does not perform an operation, is provided.

또한, 본 발명의 또 다른 실시예에 따르면, LDPC 부호화 알고리즘에 따라 부호화된 수신신호에 대한 최소 반복 복호수를 상기 수신신호의 신호 품질에 반비례하도록 적응적으로 설정하는 반복 복호수 설정부; 및 체크 노드(check node)들에 대해 수행되는 복호화인 체크 노드 연산, 배리어블 노드(variable node)들에 대해 수행되는 복호화인 배리어블 노드 연산, 시험 코드에 대해 수행되는 복호화인 시험(tentative) 복호화 및 패리티 검사를 이용하여 상기 수신 신호를 반복적으로 복호화하는 복호화부를 포함하되, 상기 복호화부는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화 장치가 제공된다.Further, according to another embodiment of the present invention, an iterative decoding number setting unit for adaptively setting the minimum iterative decoding number for a received signal encoded according to the LDPC encoding algorithm in inverse proportion to the signal quality of the received signal; And a check node operation that is decryption performed on check nodes, a variable node operation that is decryption performed on variable nodes, and a decryption test decryption performed on test code. And a decoder that repeatedly decodes the received signal using a parity check, wherein the decoder performs the check node operation and the variable node operation when the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number. An LDPC decoding apparatus is provided which does not perform the test decoding and the parity check operation.

본 발명에 따르면, 수신신호의 반복 복호화 시 요구되는 연산량 및 소비되는 전력량을 줄일 수 있게 된다. According to the present invention, it is possible to reduce the amount of computation required and the amount of power consumed when iteratively decoding a received signal.

도 1은 LDPC 코딩의 개념을 설명하기 위한 도면이다.
도 2는 본 발명의 일실시예에 따른 반복 복호화 장치의 상세한 구성을 도시한 블록도.
도 3은 본 발명의 일실시예에 따른 반복 복호수 설정 방법 및 반복 복호화 방법에 대한 흐름도를 도시한 도면.
도 4는 본 발명의 일실시예에 따른 반복 복호화 방법의 일례인 LDPC 복호화 방법의 알고리즘을 도시한 도면.
도 5는 본 발명의 일실시예에 따른 반복 복호화 방법의 일례인 LDPC 복호화 방법의 알고리즘을 도시한 도면.
1 is a diagram for explaining a concept of LDPC coding.
2 is a block diagram showing a detailed configuration of an iterative decoding apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating a method for setting an iterative decoding number and an iterative decoding method according to an embodiment of the present invention.
4 is a diagram illustrating an algorithm of an LDPC decoding method which is an example of an iterative decoding method according to an embodiment of the present invention.
5 is a diagram illustrating an algorithm of an LDPC decoding method as an example of an iterative decoding method according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. Like reference numerals are used for like elements in describing each drawing.

이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

이하에서는 본 발명에 따른 반복 복호화 장치 및 그 방법을 설명하기에 앞서, 반복 코딩(coding) 기법의 일례인 LDPC 코딩 기법에 대해 먼저 간단히 설명한 후, 첨부한 도면을 참고하여 본 발명의 바람직한 실시예들을 상세히 설명하기로 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면 번호에 상관없이 동일한 수단에 대해서는 동일한 참조 번호를 사용하기로 한다.
Before describing the iterative decoding apparatus and its method according to the present invention, the LDPC coding technique, which is an example of an iterative coding technique, will be briefly described. It will be described in detail. In the following description of the present invention, the same reference numerals will be used for the same means regardless of the reference numerals in order to facilitate the overall understanding.

도 1은 LDPC 코딩의 개념을 설명하기 위한 도면이다. 1 is a diagram for explaining a concept of LDPC coding.

도 1에서는 패리티 체크 행렬의 일 예 및 패리티 체크 행렬에 대응하는 팩터 그래프(factor graph)를 도시하고 있다. 1 illustrates an example of a parity check matrix and a factor graph corresponding to the parity check matrix.

블록 코드의 하나인 LDPC 코드는 패리티 체크 행렬에 의해 정의된다. LDPC 코드는 복호화의 복잡도를 줄이기 위하여 적은 개수의 '1'을 포함하는 패리티 체크 행렬을 사용한다. LDPC 코드에서, 복호화는 연판정(soft decision) 복호화 알고리즘인 합-곱(sum-product) 알고리즘 또는 최소 합(min-sum) 알고리즘 등을 이용하여 수행될 수 있다. One LDPC code, which is a block code, is defined by a parity check matrix. The LDPC code uses a parity check matrix including a small number of '1' to reduce the complexity of decoding. In the LDPC code, decoding may be performed using a sum-product algorithm, a min-sum algorithm, or the like, which is a soft decision decoding algorithm.

여기서, (소스) 데이터들이 k 비트(bits)이고, LDPC 코드에 따라 부호화된 데이터들이 n 비트라고 가정한다. 이 때, n 비트의 부호화된 데이터들은 k 비트의 데이터들과 (n-k) 비트의 패리티들을 포함한다. 이 때, k 비트의 데이터들과 (n-k) 비트의 패리티들이 배리어블 노드(variable node)들에 대응되고, 체크(check) 비트들이 체크 노드들에 대응된다고 가정하는 경우, 패리티 체크 행렬은 배리어블 노드들과 체크 노드들의 연결 관계를 기초로 정의될 수 있다.Here, it is assumed that the (source) data is k bits and the data encoded according to the LDPC code is n bits. At this time, n bits of encoded data include k bits of data and (n-k) bits of parity. In this case, when it is assumed that k bits of data and (nk) bits of parity correspond to variable nodes and check bits correspond to check nodes, the parity check matrix is variable. It may be defined based on the connection relationship between nodes and check nodes.

LDPC 부호화 장치는 하기 수학식 1의 제한(constraint)을 가지고 부호화된 데이터들을 생성할 수 있다.
The LDPC encoding apparatus may generate encoded data with a constraint of Equation 1 below.

Figure pat00001
Figure pat00001

Figure pat00002

Figure pat00002

여기서, H는 m x n 차원의 패리티 체크 행렬, m은 체크 노드들의 개수, X는 n 비트의 부호화된 데이터들(부호어(codeword)), u는 k 비트의 (소스) 데이터들, G는 n x k 차원의 생성 매트릭스(generating matrix)를 각각 의미한다.
Where H is a parity check matrix of dimension mxn, m is the number of check nodes, X is n bits of encoded data (codeword), u is k bits of (source) data, and G is nxk dimension Means a generating matrix, respectively.

패리티 체크 행렬의 각 열(column)에 포함되는 1의 개수는 배리어블 노드 차수로 불려진다. 또한, 패리티 체크 행렬의 각 행(row)에 포함되는 1의 개수는 체크 노드 차수로 불려진다. 각 열에 대한 배리어블 노드 차수가 모두 동일하고, 각 행에 대한 체크 노드 차수가 모두 동일한 경우, LDPC 코드는 균일(regular) LDPC 코드이며, 각 열에 대한 변수 노드 차수가 다르거나, 각 행에 대한 체크 노드 차수가 다른 경우, LDPC 코드는 비균일 LDPC 코드이다.The number of 1s included in each column of the parity check matrix is called a variable node order. In addition, the number of 1s included in each row of the parity check matrix is called a check node order. If the variable node orders for each column are all the same and the check node orders for each row are all the same, then the LDPC code is a regular LDPC code and the variable node orders for each column are different, or checks for each row If the node orders are different, the LDPC code is a nonuniform LDPC code.

도 1을 참고하면, 패리티 체크 행렬(H)은 배리어블 노드들(v1, v2, …, v10)과 체크 노드들(c1, c2, c3, …, c5)의 연결 관계에 기초하여 정의된다. 배리어블 노드들(v1, v2, …, v10)은 부호화된 데이터들에 대응되며, 부호화된 데이터들은 데이터 비트들과 패리티 비트들을 포함한다. 또한, 체크 노드들은 체크 비트들에 대응된다. 패리티 체크 행렬(H)의 차원은 배리어블 노드들의 개수 및 체크 노드들의 개수에 따라 5 x 10이다.Referring to FIG. 1, the parity check matrix H is connected to the variable nodes v 1 , v 2 ,..., V 10 and the check nodes c 1 , c 2 , c 3 ,..., C 5 . Defined based on the relationship. The variable nodes v 1 , v 2 ,..., V 10 correspond to coded data, and the coded data includes data bits and parity bits. In addition, the check nodes correspond to check bits. The dimension of the parity check matrix H is 5 × 10 depending on the number of variable nodes and the number of check nodes.

배리어블 노드들 및 체크 노드들 사이의 연결 관계를 나타낸 팩터 그래프 상에서, v1은 c1 및 c3와 연결되어 있으므로, 패리티 체크 행렬(H)의 1열1행 원소와 1열 3행 원소는 '1'이고, 1열의 나머지 원소들은 모두 0으로 결정된다. 마찬가지로, v2는 c1 및 c2와 연결되어 있으므로, 2열1행 원소와 2열2행 원소는 '1'이고 2열의 나머지 원소들은 모두 '0'임을 알 수 있다. 상술한 방식으로, 패리티 체크 행렬의 모든 원소들은 '1' 또는 '0' 중 어느 하나로 결정된다.On the factor graph showing the connection relationship between the variable nodes and the check nodes, since v 1 is connected to c 1 and c 3 , the element 1 row 1 and element 3 3 of the parity check matrix H '1' and all remaining elements in column 1 are determined to be zero. Similarly, since v 2 is connected to c 1 and c 2 , it can be seen that the two-row, one-row and two-row elements are '1' and the remaining elements of the second column are all '0'. In the manner described above, all elements of the parity check matrix are determined as either '1' or '0'.

또한, 배리어블 노드 차수는 각각의 변수 노드들에 연결된 선들의 개수와 동일하며, 체크 노드 차수는 각각의 체크 노드들에 연결된 선들의 개수와 동일하다. 즉, 도 1의 팩터 그래프를 참조하면, 배리어블 노드들 각각에는 두 개의 선들이 연결되어 있으므로, 변수 노드 차수는 '2'임을 알 수 있다. 또한, 체크 노드 차수는 '4'이다.In addition, the variable node order is equal to the number of lines connected to each variable node, and the check node order is equal to the number of lines connected to each check node. That is, referring to the factor graph of FIG. 1, since two lines are connected to each of the variable nodes, the variable node order is '2'. Also, the check node order is '4'.

상기의 부호화 방법에 따라 부호화된 데이터들에 대해 복호화를 수행하는 경우, 배리어블 노드들 및 체크 노드들 각각은 연결된 다른 노드들로 자신의 복호화 결과를 전송하거나, 다른 노드들의 복호화 결과를 수신한다. 즉, 하나의 노드가 다른 노드로부터 다른 노드의 복호화 결과를 수신하는 경우, 상기 하나의 노드는 다른 노드의 복호화 결과를 이용하여 복호화를 수행하고, 자신의 복호화 결과를 자신과 연결된 다른 노드로 전송한다. When decoding data encoded according to the above encoding method, each of the variable nodes and the check nodes transmit their decoding results to other connected nodes or receive decoding results of other nodes. That is, when one node receives a decoding result of another node from another node, the one node performs decoding using the decoding result of the other node and transmits its decoding result to another node connected to the node. .

이 때, 체크 노드들에서 수행되는 복호화 동작을 체크 노드 연산(check node operation)이라 하고, 배리어블 노드들에서 수행되는 복호화 동작을 배리어블 노드 연산(variable node operation)이라 한다. In this case, a decoding operation performed on the check nodes is called a check node operation, and a decoding operation performed on the variable nodes is called a variable node operation.

체크 노드 연산 및 배리어블 노드 연산을 통해 시험 코드(tentative code)가 생성되고, 생성된 시험 코드는 패리티 검사(parity check)를 통해 유효한 부호어(valid codeword)인지를 검사 받는다. A test code is generated through a check node operation and a variable node operation, and the generated test code is checked whether it is a valid codeword through parity check.

만약, 생성된 시험 코드가 유효한 부호어이면 복호화 동작이 종료되고, 유효한 부호어가 아니면 복호화 동작이 반복 수행된다.
If the generated test code is a valid codeword, the decoding operation is terminated. If the generated test code is not a valid codeword, the decoding operation is repeatedly performed.

도 2는 본 발명의 일실시예에 따른 반복 복호화 장치(200)의 상세한 구성을 도시한 블록도이다. 2 is a block diagram showing a detailed configuration of an iterative decoding apparatus 200 according to an embodiment of the present invention.

본 발명의 일실시예에 따른 반복 복호화 장치(200)는 복호화부(210), SNR 추정부(220), 반복 복호수 설정부(230)를 포함할 수 있다. 이하, 각 구성 요소 별로 그 기능을 상술하기로 한다. The iterative decoding apparatus 200 according to an embodiment of the present invention may include a decoder 210, an SNR estimator 220, and an iterative decoder set unit 230. Hereinafter, the function of each component will be described in detail.

복호화부(210)는 수신신호에 대해 반복적으로 복호화를 수행하여 수신신호로부터 유효한 부호어를 복원한다. The decoder 210 repeatedly decodes the received signal to recover valid codewords from the received signal.

이 때, 반복적으로 수행되는 복호화 동작 각각은 시험 복호화(tentative decoding) 및 오류 검사(error check)를 포함한다. At this time, each decoding operation repeatedly performed includes tentative decoding and error check.

시험 복호화는 수신신호 또는 이전 단계에서 복호화된 시험 코드(tentative code)를 복호화하는 동작을 의미하고, 오류 검사는 복호화된 시험 코드가 유효한 부호어인지를 검사하는 동작을 의미한다. Test decoding refers to an operation of decoding a received signal or a tentative code decoded in a previous step, and error checking refers to an operation of checking whether a decoded test code is a valid codeword.

일례로, 반복 복호화 장치(200)가 LDPC 복호화 기법을 이용하여 수신신호를 복호화하는 LDPC 복호화 장치인 경우, 시험 복호화는 체크 노드 연산 및 배리어블 노드 연산을 포함하고, 오류 검사는 패리티 검사를 포함한다. For example, when the iterative decoding apparatus 200 is an LDPC decoding apparatus that decodes a received signal by using an LDPC decoding technique, the test decoding includes a check node operation and a variable node operation, and the error check includes a parity check. .

본 발명의 일실시예에 따르면, 복호화부(210)는 최소 반복 복호수에 기초하여 오류 검사를 선택적으로 수행할 수 있다. 이에 대해서는 아래에서 보다 상세하게 설명하기로 한다. According to an embodiment of the present invention, the decoder 210 may selectively perform error checking based on the minimum repetitive decoding number. This will be described in more detail below.

SNR 추정부(220)는 수신신호의 신호 대 잡음비(SNR: Signal to Noise Ratio)를 추정한다. The SNR estimator 220 estimates a signal-to-noise ratio (SNR) of the received signal.

이 경우, SNR 추정부(220)는 공지된 임의의 SNR 추정 방법에 따라서 수신신호의 SNR을 추정할 수 있다. In this case, the SNR estimator 220 may estimate the SNR of the received signal according to a known SNR estimation method.

반복 복호수 설정부(230)는 측정된 SNR에 기초하여 수신신호에 대한 최소 반복 복호수를 설정한다. The iterative decoding number setting unit 230 sets a minimum iterative decoding number for the received signal based on the measured SNR.

일반적으로, 수신신호로부터 유효한 부호어를 복원하기 위해 수행되는 반복 복호화의 횟수, 즉 반복 복호수는 수신신호의 SNR에 따라 다른 값을 가진다. In general, the number of iterative decodings performed to recover a valid codeword from a received signal, that is, the number of repeated decodings, has a different value depending on the SNR of the received signal.

이하에서는, 표 1을 참고하여, 복호화부(210)가 LDPC 복호화 기법에 기초하여 수신신호를 복호화하는 경우에서 반복 복호화의 횟수와 수신신호의 SNR의 상관관계를 살펴보기로 한다.
Hereinafter, referring to Table 1, the correlation between the number of iterative decoding and the SNR of the received signal when the decoder 210 decodes the received signal based on the LDPC decoding scheme will be described.

SS NRNR
(( dBdB ))
NumberNumber ofof IterationIteration DecodingDecoding SS NRNR
(( dBdB ))
NumberNumber ofof IterationIteration DecodingDecoding
MinMin MaxMax AvgAvg MinMin MaxMax AvgAvg -1-One 5050 5050 5050 66 22 44 2.162.16 -0.5-0.5 5050 5050 5050 6.56.5 1One 33 2.022.02 00 5050 5050 5050 77 1One 33 1.861.86 0.50.5 5050 5050 5050 7.57.5 1One 33 1.481.48 1One 4242 5050 49.8849.88 88 1One 22 1.161.16 1.51.5 1010 5050 21.5121.51 8.58.5 1One 22 1.041.04 22 66 1919 10.9410.94 99 1One 22 1.011.01 2.52.5 44 1111 7.75.7.75. 9.59.5 1One 22 1One 33 44 99 6.036.03 1010 1One 22 1One 3.53.5 44 77 4.914.91 10.510.5 1One 22 1One 44 33 66 4.14.1 1111 1One 1One 1One 4.54.5 22 55 3.453.45 11.511.5 1One 1One 1One 55 22 44 3.023.02 1212 1One 1One 1One 5.55.5 22 44 2.62.6

표 1에서는 1,000,000개의 심볼에 대해, 1/2의 부호율을 갖고, 길이(length) 및 차원(dimension)이 각각 4608 및 9216인 정보 블록(information block)을 갖는 LDPC 코드에 이용하여 부호화된 수신신호에 대해 반복 복호화를 수행하는 경우에 있어서, 수신신호의 SNR에 따른 반복 복호수의 최대값(Max), 최소값(Min), 및 평균값(avg)을 표시하고 있다. In Table 1, a received signal encoded using an LDPC code having a code rate of 1/2 for 1,000,000 symbols and an information block having a length and a dimension of 4608 and 9216, respectively. In the case of performing iterative decoding on, the maximum value Max, minimum value Min, and average value avg of the repeated decoding number according to the SNR of the received signal are displayed.

표 1을 참고하면, 수신신호의 SNR이 커질수록 반복 수행되는 복호화의 최대 횟수, 최소 횟수 및 평균 횟수가 감소하는 것을 확인할 수 있다. Referring to Table 1, it can be seen that as the SNR of the received signal increases, the maximum number, minimum number, and average number of repeated decoding operations decrease.

즉, 수신신호의 SNR이 큰 경우, 복호화부(210)는 적은 횟수의 복호화만을 반복 수행하여도 되지만, 수신신호의 SNR이 작다면, 복호화부(210)는 많은 횟수의 복호화를 반복 수행하여야 한다. That is, when the SNR of the received signal is large, the decoder 210 may repeat only a small number of decryptions, but if the SNR of the received signal is small, the decoder 210 must repeatedly perform a large number of decryptions. .

일례로서, 표 1을 참고하면, 수신신호의 SNR이 2dB의 값을 갖는 경우, 복호화부(210)는 최소 6회, 최대 19회의 복호화를 반복 수행하여야 한다. As an example, referring to Table 1, when the SNR of the received signal has a value of 2 dB, the decoder 210 should repeatedly perform a minimum of six times and a maximum of 19 times of decoding.

따라서, 반복 복호화의 최소 횟수 보다 적은 횟수의 복호화 단계 (이하에서는 편의상 '초기 단계'라 칭하기로 한다)에서 시험 복호화를 통해 복원된 시험 코드는 오류 검사를 만족시킬 가능성이 낮으므로(즉, 시험 코드가 유효한 부호어일 가능성이 낮으므로), 초기 단계에서 수행되는 오류 검사는 불필요하다(redundant).Therefore, the test code reconstructed through the trial decoding in the number of decryption steps less than the minimum number of iterative decoding (hereinafter referred to as 'initial stage' for convenience) is unlikely to satisfy the error check (that is, the test code). Is unlikely to be a valid codeword), so error checking performed at an early stage is redundant.

따라서, 복호화부(210)는 반복 복호수 설정부(230)에서 설정된 최소 반복 복호수에 기초하여 오류 검사를 선택적으로 수행한다. 이 경우, 표 1을 참고하면, 설정된 최소 반복 복호수는 수신신호의 SNR과 반비례할 수 있다. Therefore, the decoder 210 selectively performs an error check based on the minimum iterative decoding number set by the iterative decoding number setting unit 230. In this case, referring to Table 1, the set minimum repetition number may be inversely proportional to the SNR of the received signal.

본 발명의 일실시예에 따르면, 복호화부(210)는 시험 복호화의 반복 횟수가 반복 복호수 설정부(230)에서 설정된 최소 반복 복호수 이하인 경우, 오류 검사를 수행하지 않고(즉, 시험 복호화 만을 수행하고), 시험 복호화의 반복 횟수가 최소 반복 복호수를 초과하는 경우, 시험 복호화 및 오류 검사를 모두 수행할 수 있다. According to an embodiment of the present invention, when the number of repetitions of the test decoding is less than or equal to the minimum repetition number set in the iterative decoding number setting unit 230, the decoder 210 does not perform error checking (that is, only test decoding is performed. And, if the number of repetitions of the test decoding exceeds the minimum number of repeated decoding, both the test decoding and the error check may be performed.

예를 들어, 수신신호의 SNR이 2dB의 값을 갖는 경우, 유효한 부호어를 복원하기 위한 최소 복호화 횟수가 '6'이므로, 복호화부(210)는 첫번째 복호화 단계 내지 다섯번째 복호화 단계에서는 시험 복호화 만을 수행하고, 여섯번째 복호화 단계부터 시험 복호화 및 오류 검사를 모두 수행할 수 있다. For example, when the SNR of the received signal has a value of 2 dB, since the minimum number of decoding times for restoring a valid codeword is '6', the decoder 210 performs only trial decoding in the first to fifth decoding steps. After the sixth decoding step, both test decoding and error checking can be performed.

이에 따라, 초기 단계에서 수행되는 불필요한 오류 검사 수행이 생략되므로, 복호화 연산량이 줄어들어, 소요되는 시간이 단축되고, 소비 전력이 감소된다. 특히, 수신신호의 SNR이 낮은 경우, 반복 복호수의 최소값(Min)이 크므로, 시간 단축 및 소비 전력 감소의 효율은 증가한다. Accordingly, since unnecessary error checking performed in the initial stage is omitted, the amount of decoding operations is reduced, the time required is shortened, and power consumption is reduced. In particular, when the SNR of the received signal is low, since the minimum value Min of the repetitive decoding number is large, the efficiency of time reduction and power consumption reduction is increased.

이하에서는 도 3을 참고하여, 본 발명의 일실시예에 따른 반복 복호화 장치(200)와 일반적인 반복 복호화 장치에서 소비되는 전력을 비교하여 설명하기로 한다.
Hereinafter, referring to FIG. 3, the power consumption of the iterative decoding apparatus 200 and the general iterative decoding apparatus according to an embodiment of the present invention will be described.

도 3은 본 발명의 일실시예에 따른 반복 복호화 장치(200)를 이용하여 수신신호를 복호화하는 경우, 수신신호의 SNR과 소비되는 전력의 상관 관계를 도시한 도면이다. 3 is a diagram illustrating a correlation between an SNR of a received signal and power consumed when decoding a received signal using the iterative decoding apparatus 200 according to an embodiment of the present invention.

도 3에서는 LDPC 복호화 기법을 이용하여 수신신호를 복호화하는 경우의 수신신호의 SNR과 소비 전력의 상관 관계를 도시하고 있다. 3 illustrates the correlation between the SNR of the received signal and the power consumption when the received signal is decoded using the LDPC decoding technique.

일례로, 수신신호의 SNR이 2.5dB인 경우, 본 발명과 같이 패리티 검사를 선택적으로 수행하는 경우(With Adaptive Parity Check)에는 557mW의 전력이 소비되지만, 패리티 검사를 항상 수행하는 경우(No Adaptive Parity Check)에는 766 mW의 전력이 소비된다. 따라서 208mW의 전력을 절약할 수 있다. For example, when the SNR of the received signal is 2.5dB, when the parity check is selectively performed (With Adaptive Parity Check) as in the present invention, power of 557mW is consumed, but the parity check is always performed (No Adaptive Parity). Check consumes 766 mW of power. This saves 208mW of power.

또한, 도 3을 참고하면, 수신신호의 SNR이 2dB 내지 6.5 dB인 경우에는 소비 전력의 차이가 발생하지만, 6.5dB 이상인 경우에는 소비 전력의 차이가 없는 것을 확인할 수 있다. 이는 수신신호의 SNR이 큰 경우에는 적은 횟수의 반복 복호화만으로도 유효한 부호어를 복원할 수 있다는 점에 기인한 것이다. In addition, referring to FIG. 3, when the SNR of the received signal is 2 dB to 6.5 dB, a difference in power consumption may occur. However, when the SNR of the received signal is greater than 6.5 dB, there is no difference in power consumption. This is due to the fact that when the SNR of the received signal is large, a valid codeword can be recovered only by a small number of iterative decoding.

다시 도 2를 참고하여, 본 발명의 일실시예에 따른 반복 복호화 장치(200)에 대해 상세히 설명하기로 한다.
Referring to FIG. 2 again, an iterative decoding apparatus 200 according to an embodiment of the present invention will be described in detail.

본 발명의 일실시예에 따르면, 반복 복호화 장치(200)는 저장부(240)를 더 포함할 수 있다. According to an embodiment of the present invention, the iterative decoding apparatus 200 may further include a storage unit 240.

저장부(240)는 적어도 하나의 SNR과 적어도 하나의 최소 반복 복호수를 대응시켜 저장한다. The storage unit 240 stores at least one SNR and at least one minimum repetitive decoding number in correspondence with each other.

이 경우, 반복 복호수 설정부(230)는 SNR 측정부(220)에서 측정된 수신신호의 SNR과 대응되는(즉, 가장 유사한) 최소 반복 복호수를 저장부(240)로부터 독출(read)하고, 이를 수신신호에 대한 최소 반복 복호수로 설정할 수 있다. In this case, the iterative decoding number setting unit 230 reads from the storage unit 240 a minimum iterative decoding number corresponding to (ie, most similar to) the SNR of the received signal measured by the SNR measuring unit 220. This can be set as the minimum repetition number of the received signal.

이 때, SNR에 대응되는 최소 반복 복호수는 실험적으로 결정될 수 있다. In this case, the minimum repetitive decoding number corresponding to the SNR may be determined experimentally.

일례로서, 1,000,000개의 심볼에 대해, 1/2의 부호율을 갖고, 길이 및 차원이 각각 4608 및 9216인 정보 블록을 갖는 LDPC 코드에 이용하여 부호화된 수신신호에 대해 반복 복호화를 수행하는 경우, 저장부(240)는 하기 표 2와 같은 룩 업 테이블(LUT: Look Up Table)을 저장할 수 있다. 이 경우, 반복 복호수 설정부(230)는 룩 업 테이블에 기초하여 수신신호에 대한 최소 반복 복호수를 설정할 수 있다.
As an example, when iterative decoding is performed on a received signal encoded using an LDPC code having an information block having a code rate of 1/2 and a length and a dimension of 4608 and 9216 for 1,000,000 symbols, respectively, The unit 240 may store a look up table (LUT) as shown in Table 2 below. In this case, the iterative decoding number setting unit 230 may set a minimum iterative decoding number for the received signal based on the lookup table.

SNR(SNR ( dBdB )) 0.5 이하0.5 or less 1One 1.51.5 22 2.52.5 33 3.53.5 최소 반복 Minimum repetition 복호수Decoders 4949 4141 99 55 33 33 33 SNR(SNR ( dBdB )) 44 4.54.5 55 5.55.5 66 6.5 이상 6.5 and above 최소 반복 Minimum repetition 복호수Decoders 22 1One 1One 1One 1One 00

이상에서는, 반복 복호화 장치가 LDPC 복호화 기법을 이용하여 수신신호를 복호화하는 경우를 일례로 설명하였으나, 이는 설명의 편의를 위한 것으로서, 본 발명이 시험 복호화 과정 및 오류 검사 과정을 통해 반복적으로 복호화를 수행하는 복호화 장치에 적용될 수 있음은 당업자에게 자명하다고 할 것이다. In the above, the case where the iterative decoding apparatus decodes the received signal by using the LDPC decoding technique has been described as an example, but for convenience of description, the present invention repeatedly performs decoding through a test decoding process and an error checking process. It will be apparent to those skilled in the art that the present invention can be applied to a decoding apparatus.

이하에서는 도 4를 참고하여, 본 발명의 일실시예에 따른 반복 복호수 설정 방법 및 반복 복호화 방법에 대해 상세히 설명한다.
Hereinafter, referring to FIG. 4, an iterative decoding method setting method and an iterative decoding method according to an embodiment of the present invention will be described in detail.

도 4는 본 발명의 일실시예에 따른 반복 복호수 설정 방법 및 반복 복호화 방법에 대한 흐름도를 도시한 도면이다. 4 is a flowchart illustrating a iterative decoding method setting method and an iterative decoding method according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 본 발명의 일실시예에 따른 반복 복호화 방법은 단계(S410) 내지 단계(S430)를 포함하여 구성되는데, 이 때, 단계(S410) 및 단계(S420)가 본 발명의 일실시예에 따른 반복 복호수 설정 방법을 구성할 수 있다. As shown in FIG. 4, the iterative decoding method according to an embodiment of the present invention includes steps S410 to S430, wherein steps S410 and S420 are performed according to the present invention. A method of setting a repetitive decoding number according to an embodiment may be configured.

먼저, 단계(S410)에서는 수신신호의 SNR을 추정한다. First, in step S410, the SNR of the received signal is estimated.

다음으로, 단계(S420)에서는 추정된 SNR에 기초하여 최소 반복 복호수를 설정한다. Next, in step S420, a minimum iterative decoding number is set based on the estimated SNR.

마지막으로, 단계(S430)에서는 시험 복호화 및 오류 검사를 이용하여 수신신호를 반복적으로 복호화한다. 이 때, 단계(S430)에서는 최소 반복 복호수에 기초하여 오류 검사를 선택적으로 수행할 수 있다. Finally, in step S430, the received signal is repeatedly decoded by using test decoding and error checking. In this case, in operation S430, error checking may be selectively performed based on the minimum repetitive decoding number.

일례로, 시험 복호화의 반복 횟수가 최소 반복 복호수 이하인 경우, 단계(S430)에서는 오류 검사를 수행하지 않고, 시험 복호화의 반복 횟수가 최소 반복 복호수를 초과하는 경우, 단계(S430)에서는 시험 복호화와 오류 검사를 모두 수행할 수 있다. For example, when the number of repetitions of the test decoding is less than or equal to the minimum repetition number, in step S430, error checking is not performed, and when the number of repetitions of the test decoding exceeds the minimum repetition number, in step S430, the test decoding is performed. And error checking can be performed.

이 경우, 본 발명의 일실시예에 따르면, 최소 반복 복호수는 수신신호의 SNR과 반비례할 수 있다. In this case, according to an embodiment of the present invention, the minimum repetitive decoding number may be inversely proportional to the SNR of the received signal.

또한, 본 발명의 일실시예에 따르면, 단계(S420)에서는 SNR과 최소 반복 복호수를 대응시켜 저장한 저장부를 이용하여 최소 반복 복호수를 설정할 수 있다. 이 경우, 단계(S430)에서는 단계(S410)에서 추정된 SNR과 대응되는 최소 반복 복호수를 저장부에서 독출하여 최소 반복 복호수를 설정할 수 있다. Further, according to an embodiment of the present invention, in step S420, the minimum repetitive decoding number may be set using a storage unit that stores the SNR and the minimum repetitive decoding number in correspondence. In this case, in step S430, the minimum repetition number may be set by reading the minimum repetition number corresponding to the SNR estimated in step S410 from the storage unit.

또한, 앞서 언급한 바와 같이, 본 발명의 일실시예에 따른 반복 복호화 방법은 LDPC 복호화 기법에 기초한 LDPC 복호화 방법에 적용될 수 있다. In addition, as mentioned above, the iterative decoding method according to an embodiment of the present invention may be applied to an LDPC decoding method based on an LDPC decoding technique.

지금까지 본 발명에 따른 반복 복호화 방법의 실시예들에 대하여 설명하였고, 앞서 도 2에서 설명한 반복 복호화 장치(200)에 관한 구성이 본 실시예에도 그대로 적용 가능하다. 이에, 보다 상세한 설명은 생략하기로 한다.
The embodiments of the iterative decoding method according to the present invention have been described so far, and the configuration of the iterative decoding apparatus 200 described with reference to FIG. 2 is also applicable to the present embodiment. Therefore, more detailed description will be omitted.

도 5는 본 발명의 다른 실시예에 따른 반복 복호화 방법의 일례인 LDPC 복호화 방법의 알고리즘을 도시한 도면이다. 5 is a diagram illustrating an algorithm of an LDPC decoding method which is an example of an iterative decoding method according to another embodiment of the present invention.

도 5에 도시된 LDPC 복호화 알고리즘에 있어, line 3 내지 line 4는 체크 노드 연산 단계, line 5 내지 line 6은 배리어블 노드 연산 단계, line 8 내지 line 9는 시험 복호화 단계, line 10 내지 line 11은 패리티 검사 단계를 각각 의미한다. 또한, i는 반복 복호수,

Figure pat00003
수신신호에 포함된 심볼 데이터,
Figure pat00004
은 패리티 검사 행렬의 행렬 원소,
Figure pat00005
은 배리어블 노드의 데이터 행렬 원소,
Figure pat00006
는 최대 반복 복호수,
Figure pat00007
은 최소 반복 복호수,
Figure pat00008
은 체크 노드의 데이터 행렬 원소,
Figure pat00009
은 시험 코드,
Figure pat00010
Figure pat00011
를 생성하기 위한 임시값을 각각 의미한다. In the LDPC decoding algorithm shown in FIG. 5, line 3 to line 4 are check node calculation steps, line 5 to line 6 are variable node calculation steps, line 8 to line 9 are test decoding steps, and line 10 to line 11 are Each parity check step. In addition, i is a repetitive decoder,
Figure pat00003
Symbol data included in the received signal,
Figure pat00004
Is the matrix element of the parity check matrix,
Figure pat00005
Is the data matrix element of the variable node,
Figure pat00006
Is the maximum iteration decoder,
Figure pat00007
Is the minimum iteration decode,
Figure pat00008
Is the data matrix element of the check node,
Figure pat00009
Silver test code,
Figure pat00010
silver
Figure pat00011
Each temporary value to create a.

도 5에 도시된 LDPC 복호화 알고리즘은 line 7 및 line 12가 추가된 것을 제외하면, 기존의 LDPC 복호화 알고리즘과 동일하다. The LDPC decoding algorithm shown in FIG. 5 is the same as the conventional LDPC decoding algorithm except that line 7 and line 12 are added.

line 7 및 line 12는 시험 복호화 및 패리티 검사를 선택적으로 수행하기 위해 추가된 것으로서, line 7에서는 현재 복호화 단계의 횟수(즉, i값)가 최소 반복 복호수(

Figure pat00012
)보다 큰지를 판단한다. 앞서 언급한 바와 같이 최소 반복 복호수(
Figure pat00013
)는 수신신호의 수신 품질인 SNR 값에 따라 결정된다. Lines 7 and 12 are added to selectively perform trial decoding and parity checking. In line 7, the number of current decoding steps (i.e., i) is the minimum iterative decoding number (
Figure pat00012
Determine if greater than As mentioned earlier, the minimum iterative decoding number (
Figure pat00013
) Is determined according to the SNR value, which is the reception quality of the received signal.

만약, i값이 최소 반복 복호수보다 작다면, line 8 내지 line 11이 수행되지 않고(즉, 시험 복호화 및 패리티 검사가 수행되지 않고), i값이 최소 반복 복호수보다 크다면, line 8 내지 line 11이 모두 수행된다(즉, 시험 복호화 및 패리티 검사가 모두 수행된다). 이에 따라, 최소 반복 복호수 이하의 복호화 단계에서는 패리티 검사가 수행되지 않는다.
If the value of i is smaller than the minimum iterative decoding number, line 8 to line 11 is not performed (that is, no trial decoding and parity check is performed), and if the value of i is larger than the minimum iterative decoding number, line 11 is all performed (ie, both test decoding and parity check are performed). Accordingly, no parity check is performed in the decoding step below the minimum iterative decoding number.

또한, 본 발명의 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 일실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, embodiments of the present invention may be implemented in the form of program instructions that may be executed by various computer means to be recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Examples of program instructions such as magneto-optical, ROM, RAM, flash memory, etc. may be executed by a computer using an interpreter as well as machine code such as produced by a compiler. Contains high-level language codes. The hardware device described above may be configured to operate as one or more software modules to perform the operations of one embodiment of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by specific embodiments such as specific components and the like. For those skilled in the art to which the present invention pertains, various modifications and variations are possible. Therefore, the spirit of the present invention should not be limited to the described embodiments, and all of the equivalents or equivalents of the claims as well as the claims to be described later will belong to the scope of the present invention. .

Claims (5)

LDPC 부호화 알고리즘에 따라 부호화된 수신신호의 신호 품질을 추정하는 신호 품질 추정부;
상기 수신신호에 대한 최소 반복 복호수를 상기 추정된 신호 품질에 반비례하도록 적응적으로 설정하는 반복 복호수 설정부; 및
체크 노드(check node)들에 대해 수행되는 복호화인 체크 노드 연산, 배리어블 노드(variable node)들에 대해 수행되는 복호화인 배리어블 노드 연산, 시험 코드에 대해 수행되는 복호화인 시험(tentative) 복호화 및 패리티 검사를 이용하여 상기 수신 신호를 반복적으로 복호화하는 복호화부를 포함하되,
상기 복호화부는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화 장치.
A signal quality estimator for estimating a signal quality of a received signal encoded according to an LDPC encoding algorithm;
An iterative decoding setter which adaptively sets a minimum iterative decoding number for the received signal in inverse proportion to the estimated signal quality; And
A check node operation that is decryption performed on check nodes, a variable node operation that is decryption performed on variable nodes, a tentative decryption operation that is performed on test code, and It includes a decoder for repeatedly decoding the received signal using a parity check,
And the decoding unit performs the check node operation and the variable node operation when the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number, and does not perform the test decoding and the parity check operation. .
제1항에 있어서,
상기 신호 품질은 SNR을 포함하고,
상기 LDPC 복호화 장치는 적어도 하나의 SNR과 적어도 하나의 최소 반복 복호수를 대응시켜 저장하는 저장부를 더 포함하되,
상기 반복 복호수 설정부는 상기 추정된 SNR과 대응되는 최소 반복 복호수를 상기 저장부에서 독출하여 상기 최소 반복 복호수를 설정하는 것을 특징으로 하는 LDPC 복호화 장치.
The method of claim 1,
The signal quality comprises an SNR,
The LDPC decoding apparatus further includes a storage unit for storing at least one SNR and at least one minimum repetitive decoding number in correspondence with each other.
The iterative decoding number setting unit reads the minimum iterative decoding number corresponding to the estimated SNR from the storage unit and sets the minimum iterative decoding number.
LDPC 부호화 알고리즘에 따라 부호화된 수신신호를 체크 노드 연산, 배리어블 노드 연산, 시험 복호화 및 패리티 검사를 이용하여 반복적으로 복호화하는 LDPC 복호화 장치의 반복 복호수를 설정하는 방법에 있어서,
상기 수신신호의 신호 품질을 추정하는 단계; 및
상기 수신신호에 대한 최소 반복 복호수를 상기 추정된 신호 품질에 반비례하도록 적응적으로 설정하는 단계를 포함하되,
상기 최소 반복 복호수는 상기 LDPC 복호화 장치가 상기 시험 복호화 및 상기 패리티 검사를 수행할지를 결정하기 위해 사용되는 반복 복호수로서, 상기 LDPC 복호화 장치는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화를 위한 반복 복호수 설정 방법.
In the method for setting the iterative decoding number of the LDPC decoding apparatus for repeatedly decoding the received signal encoded according to the LDPC encoding algorithm using a check node operation, a variable node operation, a test decoding and a parity check,
Estimating a signal quality of the received signal; And
Adaptively setting a minimum iterative decoding number for the received signal in inverse proportion to the estimated signal quality;
The minimum iterative decoding number is an iterative decoding number used by the LDPC decoding apparatus to determine whether to perform the trial decoding and the parity check, and the LDPC decoding apparatus is the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number. And performing the check node operation and the variable node operation and not performing the test decoding and the parity check operation.
LDPC 부호화 알고리즘에 따라 부호화된 수신신호에 대한 최소 반복 복호수를 상기 수신신호의 신호 품질에 반비례하도록 적응적으로 설정하는 반복 복호수 설정부; 및
체크 노드(check node)들에 대해 수행되는 복호화인 체크 노드 연산, 배리어블 노드(variable node)들에 대해 수행되는 복호화인 배리어블 노드 연산, 시험 코드에 대해 수행되는 복호화인 시험(tentative) 복호화 및 패리티 검사를 이용하여 상기 수신 신호를 반복적으로 복호화하는 복호화부를 포함하되,
상기 복호화부는 상기 반복적인 복호화의 횟수가 상기 최소 반복 복호수 이하인 경우, 상기 체크 노드 연산 및 상기 배리어블 노드 연산을 수행하고 상기 시험 복호화 및 상기 패리티 체크 연산을 수행하지 않는 것을 특징으로 하는 LDPC 복호화 장치.
An iterative decoding setter adapted to adaptively set a minimum iterative decoding number for a received signal encoded according to an LDPC encoding algorithm in inverse proportion to the signal quality of the received signal; And
A check node operation that is decryption performed on check nodes, a variable node operation that is decryption performed on variable nodes, a tentative decryption operation that is performed on test code, and Including a decoder for repeatedly decoding the received signal using a parity check,
And the decoding unit performs the check node operation and the variable node operation when the number of times of the iterative decoding is less than or equal to the minimum iterative decoding number, and does not perform the test decoding and the parity check operation. .
제4항에 있어서,
상기 신호 품질은 SNR을 포함하고,
상기 LDPC 복호화 장치는 적어도 하나의 SNR과 적어도 하나의 최소 반복 복호수를 대응시켜 저장하는 저장부를 더 포함하되,
상기 반복 복호수 설정부는 상기 추정된 SNR과 대응되는 최소 반복 복호수를 상기 저장부에서 독출하여 상기 최소 반복 복호수를 설정하는 것을 특징으로 하는 LDPC 복호화 장치.
The method of claim 4, wherein
The signal quality comprises an SNR,
The LDPC decoding apparatus further includes a storage unit for storing at least one SNR and at least one minimum repetitive decoding number in correspondence with each other.
The iterative decoding number setting unit reads the minimum iterative decoding number corresponding to the estimated SNR from the storage unit and sets the minimum iterative decoding number.
KR1020110119435A 2011-11-16 2011-11-16 Method for setting number of iterative decoding, apparatus and method for ldpc decoding KR20120000040A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110119435A KR20120000040A (en) 2011-11-16 2011-11-16 Method for setting number of iterative decoding, apparatus and method for ldpc decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110119435A KR20120000040A (en) 2011-11-16 2011-11-16 Method for setting number of iterative decoding, apparatus and method for ldpc decoding

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020090061902A Division KR101261091B1 (en) 2009-07-07 2009-07-07 Method for setting number of iterative decoding, Apparatus and Method for iterative decoding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020120020182A Division KR20120039577A (en) 2012-02-28 2012-02-28 Apparatus and method for ldpc decoding

Publications (1)

Publication Number Publication Date
KR20120000040A true KR20120000040A (en) 2012-01-03

Family

ID=45608031

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110119435A KR20120000040A (en) 2011-11-16 2011-11-16 Method for setting number of iterative decoding, apparatus and method for ldpc decoding

Country Status (1)

Country Link
KR (1) KR20120000040A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101462666B1 (en) * 2012-04-27 2014-11-21 주식회사 위즈디엔에스코리아 Information using record generation system using network packet and method thereof
KR20150019380A (en) * 2013-08-13 2015-02-25 삼성디스플레이 주식회사 Flexible display device
CN111049619A (en) * 2018-10-12 2020-04-21 瑞昱半导体股份有限公司 Decoding device and decoding method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101462666B1 (en) * 2012-04-27 2014-11-21 주식회사 위즈디엔에스코리아 Information using record generation system using network packet and method thereof
KR20150019380A (en) * 2013-08-13 2015-02-25 삼성디스플레이 주식회사 Flexible display device
CN111049619A (en) * 2018-10-12 2020-04-21 瑞昱半导体股份有限公司 Decoding device and decoding method

Similar Documents

Publication Publication Date Title
KR101261091B1 (en) Method for setting number of iterative decoding, Apparatus and Method for iterative decoding
JP4777876B2 (en) Early termination of turbo decoder iterations
US8341506B2 (en) Techniques for correcting errors using iterative decoding
US8543891B2 (en) Power-optimized decoding of linear codes
US20080235559A1 (en) Strengthening parity check bit protection for array-like LDPC codes
CN107565984B (en) Raptor code optimized coding method with precoding as irregular code
US9219501B2 (en) LDPC encoding/decoding method and device using same
TW201214982A (en) SISO decoder of (n, k) block code
KR20120000040A (en) Method for setting number of iterative decoding, apparatus and method for ldpc decoding
CN109787641B (en) Method, device and storage medium for decoding sta-irecase code
US11750219B2 (en) Decoding method, decoder, and decoding apparatus
Oh et al. Performance of quantized min-sum decoding algorithms for irregular LDPC codes
KR101630114B1 (en) LDPC Decoding Device and Method Using Min-Sum Algorithm
KR20120039577A (en) Apparatus and method for ldpc decoding
KR20110139178A (en) Method for setting number of iterative decoding, apparatus and method for ldpc decoding
KR102197751B1 (en) Syndrome-based hybrid decoding apparatus for low-complexity error correction of block turbo codes and method thereof
CN110212924B (en) LT code encoding and decoding method and system
KR101554488B1 (en) Method and apparatus for decording of low density parity check code
CN101841338A (en) Method for completing iterative decoding of low-density parity checking code in advance
WO2024084554A1 (en) Estimation device, design assistance device, estimation method, design assistance method, and computer program
US20120166905A1 (en) Method and apparatus for controlling decoding in receiver
Haghighat et al. Iterative joint decoding for sensor networks with binary CEO model
RU2811072C1 (en) Decoding method, decoder and decoding device
KR101079087B1 (en) Encoding method by using LDPC code and computer-readable medium for the same
KR20240069275A (en) Decoding method and apparatus for block fading channel

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E902 Notification of reason for refusal
E601 Decision to refuse application
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20130228

Effective date: 20140324

S901 Examination by remand of revocation
E902 Notification of reason for refusal