KR101562220B1 - Apparatus and method for decoding for non binary low density parity check incodeing - Google Patents

Apparatus and method for decoding for non binary low density parity check incodeing Download PDF

Info

Publication number
KR101562220B1
KR101562220B1 KR1020080112324A KR20080112324A KR101562220B1 KR 101562220 B1 KR101562220 B1 KR 101562220B1 KR 1020080112324 A KR1020080112324 A KR 1020080112324A KR 20080112324 A KR20080112324 A KR 20080112324A KR 101562220 B1 KR101562220 B1 KR 101562220B1
Authority
KR
South Korea
Prior art keywords
signal
llr
message vector
values
parity check
Prior art date
Application number
KR1020080112324A
Other languages
Korean (ko)
Other versions
KR20100053280A (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 KR1020080112324A priority Critical patent/KR101562220B1/en
Publication of KR20100053280A publication Critical patent/KR20100053280A/en
Application granted granted Critical
Publication of KR101562220B1 publication Critical patent/KR101562220B1/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/1171Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • 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

Landscapes

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

Abstract

비이진 저밀도 패리티 검사 부호를 위한 복호 방법 및 장치에 관한 것으로서, 저밀도 패리티 검사 부호를 위한 복호 방법은, 채널로부터 수신되는 신호를 복조하여 LLR 값을 생성하는 과정과, 상기 생성된 LLR 값들 중 큰 값을 가지는 순서대로 소정 수의 LLR 값을 선택하는 과정과, 상기 선택된 LLR값들 중 가장 큰 LLR값과 나머지 LLR값들 각각의 차이값을 계산하는 과정과, 상기 가장 큰 LLR값과 상기 계산된 차이 값들로 이루어진 메시지 벡터를 이용하여 LDPC 복호를 수행하는 과정을 포함하여, 검사 노드 갱신의 연산 복잡도를 감소시키면서 동시에 성능이 열화되는 정도를 줄일 수 있다.A method and apparatus for decoding a low density parity check code, the method comprising: generating an LLR value by demodulating a signal received from a channel; Calculating a difference between the largest LLR value and the remaining LLR values among the selected LLR values, and calculating a difference value between the largest LLR value and the calculated difference values And performing LDPC decoding using the generated message vector, thereby reducing the computational complexity of the check node update and degrading the performance.

LDPC(Low-Density Parity Check), EMS(Extended Min-Sum), 검사노드, 복호 알고리즘 LDPC (Low-Density Parity Check), EMS (Extended Min-Sum), check node, decoding algorithm

Description

비이진 저밀도 패리티 검사 부호를 위한 복호 방법 및 장치{APPARATUS AND METHOD FOR DECODING FOR NON BINARY LOW DENSITY PARITY CHECK INCODEING}[0001] APPARATUS AND METHOD FOR DECODING FOR NON BINARY LOW DENSITY PARITY CHECK INCODING [0002]

본 발명은 비이진(non binary) 저밀도 패리티 검사(Low-Density Parity-Check; 이하 'LDPC'라 칭함) 부호를 위한 복호 방법 및 장치에 관한 것으로서, 특히 비이진 LDPC 부호를 위한 고속의 EMS(Extended Min-Sum) 복호 방법 및 장치에 관한 것이다.The present invention relates to a decoding method and apparatus for a non-binary low-density parity-check (LDPC) code, and more particularly, to a decoding method and apparatus for a non-binary LDPC code, Min-Sum decoding method and apparatus.

통상적으로 통신 시스템에서는 데이터의 전송 시, 전송되는 데이터를 부호화하여 전송함으로써, 전송의 안정성을 높이고 재전송을 최소화시켜 전송 효율을 향상시키고 있다. 이러한 부호화 방법 하나로 저밀도 패리티 검사(LDPC) 부호가 있다. Generally, in a communication system, when data is transmitted, data to be transmitted is encoded and transmitted, thereby improving transmission stability and minimizing retransmission, thereby improving transmission efficiency. One such coding method is a low density parity check (LDPC) code.

상기 LDPC 부호는 합-곱(sum-product) 알고리즘을 이용한 복호 방법에 기반하며, 샤논(Shannon)의 용량 한계(capacity limit)에 근접하는 우수한 성능을 나타내는 장점이 있으나, 비이진 부호를 사용할 경우, 복호기의 복잡도를 크게 증가시키는 단점이 있다. 여기서, 상기 복호기의 복잡도는 상기 검사 노드 갱신의 복잡도 에 의해 큰 영향을 받게 되므로, 종래에는 상기 검사 노드 갱신의 복잡도를 줄이기 위한 연구가 진행되고 있다.The LDPC code is based on a decoding method using a sum-product algorithm and has an advantage of exhibiting excellent performance close to the capacity limit of Shannon. However, when a non-binary code is used, There is a disadvantage that the complexity of the decoder is greatly increased. Here, since the complexity of the decoder is greatly affected by the complexity of the check node update, research is underway to reduce the complexity of the check node update.

최근에는, 상기 검사 노드 갱신의 복잡도를 줄이기 위한 복호기들 중 하나로 EMS 복호 알고리즘이 주목받고 있다. 상기 EMS 복호 알고리즘은 BF(Belief Propagation) 복호기에서 사용되는 메시지 값들 중 영향력이 큰 몇 개의 값으로만 이루어진 메시지, 즉, nm(<<q)개로 잘려진 메시지를 사용하며, 검사 노드 갱신 과정을 간략화함으로써, 복호 속도가 빠르고 계산 복잡도가 낮은 장점을 갖는다. 여기서, 상기 EMS 복호 알고리즘의 기본 갱신 과정은 도 1에 도시된 바와 같이 두 개의 입력 LLR 메시지 벡터 U 및 I와 출력 LLR 메시지 벡터 V를 포함한다.In recent years, an EMS decoding algorithm has been attracting attention as one of the decoders for reducing the complexity of updating the check nodes. The EMS decoding algorithm uses a message consisting only of a few significant values among the message values used in the BF (Belief Propagation) decoder, that is, a message truncated to n m (<< q) The decoding speed is fast and the calculation complexity is low. The basic updating process of the EMS decoding algorithm includes two input LLR message vectors U and I and an output LLR message vector V as shown in FIG.

도 2는 EMS 복호 알고리즘의 검사 노드 갱신 과정을 나타내는 도면이다.2 is a diagram illustrating a check node updating process of the EMS decoding algorithm.

상기 도 2를 참조하면, 상기 EMS 복호 알고리즘의 검사 노드 갱신 과정은 다음과 같다. 먼저, 정렬기(200)에 입력벡터 I(210)와 U(220)로 이루어진 행렬 M(230)의 첫 번째 열(232)이 입력되면, 상기 정렬기(200)의 출력단에서 LLR 벡터 중 가장 큰 값이 출력된다. 이후, 출력 벡터 V(240)에서 상기 출력된 LLR 값에 해당하는 GF(q) 색인에 값이 존재하지 않을 경우에 상기 LLR값이 상기 출력 벡터 V(240)의 해당 색인에 삽입되고, 행렬 M(230)에서 상기 출력 벡터 V(240)에 삽인된 값의 오른쪽 값이 상기 정렬기(200)에 다시 입력된다.Referring to FIG. 2, the check node updating process of the EMS decoding algorithm is as follows. When the first column 232 of the matrix M 230 including the input vectors I 210 and U 220 is input to the aligner 200, A large value is output. Thereafter, when there is no value in the GF (q) index corresponding to the output LLR value in the output vector V 240, the LLR value is inserted into the corresponding index of the output vector V 240, The right value of the value added to the output vector V 240 is input to the sorter 200 again.

상기와 같이, EMS 복호 알고리즘은 노드 갱신 시에 각각의 색인에 대해서 패리티 검사 식을 만족하는 입력 메시지 값의 합 중에서 결과에 영향력이 큰 최대값 만을 선택하고, 각각의 메시지에서 nm개의 LLR 값만을 취함으로써, 복호기의 복잡도를 개선하였으며, 가상 행렬의 계산 중간값을 저장하기 위해 필요한 메모리의 크기를 감소시켰다. 그러나, 상기 EMS 복호 알고리즘은 영향력이 큰 nm개의 LLR 값들로만 이루어진 메시지를 사용함으로 인해 오류 정정 성능이 열화되는 단점이 있다.As described above, the EMS decoding algorithm selects only the maximum value having a large influence on the result among the sum of the input message values satisfying the parity check equation for each index at the time of updating the node, and only n m LLR values , The complexity of the decoder is improved and the size of the memory required to store the computed intermediate value of the virtual matrix is reduced. However, the EMS decoding algorithm has a disadvantage in that the error correction performance is deteriorated due to the use of a message composed only of n m LLR values having a large influence.

따라서, 상기 EMS 복호기에 비교하여 복잡도가 낮으면서도 오류 정정 성능이 좋은 복호 방식이 제공될 필요성이 있다.Therefore, there is a need to provide a decoding method that is low in complexity and has good error correction performance as compared with the EMS decoder.

본 발명은 상술한 바와 같은 문제점을 해결하기 위해 도출된 것으로서, 본 발명의 목적은 비이진(non binary) 저밀도 패리티 검사(Low-Density Parity-Check; 이하 'LDPC'라 칭함) 부호를 위한 복호 방법 및 장치를 제공함에 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a decoding method for a non-binary low-density parity-check (LDPC) And an apparatus.

본 발명의 다른 목적은 비이진 LDPC 부호를 위한 개선된 고속 EMS(Extended Min-Sum) 복호 방법 및 장치를 제공함에 있다.It is another object of the present invention to provide an improved fast EMS (Extended Min-Sum) decoding method and apparatus for a non-binary LDPC code.

상술한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 저밀도 패리티 검사 부호를 위한 복호 방법은, 채널로부터 수신되는 신호를 복조하여 LLR 값을 생성하는 과정과, 상기 생성된 LLR 값들 중 큰 값을 가지는 순서대로 소정 수의 LLR 값을 선택하는 과정과, 상기 선택된 LLR값들 중 가장 큰 LLR값과 나머지 LLR값들 각각의 차이값을 계산하는 과정과, 상기 가장 큰 LLR값과 상기 계산된 차이 값들로 이루어진 메시지 벡터를 이용하여 LDPC 복호를 수행하는 과정을 포함하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a decoding method for a low density parity check code, the method comprising: generating an LLR value by demodulating a signal received from a channel; Calculating a difference between the largest LLR value and the remaining LLR values among the selected LLR values, and calculating a difference value between the largest LLR value and the calculated difference values And performing LDPC decoding using the generated message vector.

상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 저밀도 패리티 검사 부호를 위한 복호 장치는, 채널로부터 수신되는 신호를 복조하여 LLR 값을 생성하는 복조기와, 상기 생성된 LLR 값들 중 큰 값을 가지는 순서대로 소정 수의 LLR 값을 선택하고, 상기 선택된 LLR값들 중 가장 큰 LLR값과 나머지 LLR값들 각각의 차이값을 계산한 후, 상기 가장 큰 LLR값과 계산된 차이 값들로 이루어진 메시지 벡터를 이용하여 LDPC 복호를 수행하는 복호기를 포함하는 것을 특징으로 한다.According to a second aspect of the present invention, there is provided a decoding apparatus for a low density parity check code, the apparatus comprising: a demodulator for demodulating a signal received from a channel to generate an LLR value; And calculates a difference value between the largest LLR value and the remaining LLR value among the selected LLR values and then calculates a difference value between the largest LLR value and a message vector composed of the calculated difference values And a decoder for performing LDPC decoding using the LDPC code.

본 발명은 비이진 LDPC 부호를 위한 EMS(Extended Min-Sum) 복호 알고리즘에 새로운 메시지 구조를 이용함으로써, 검사 노드 갱신의 연산 복잡도를 감소시키면서 동시에 성능이 열화되는 정도를 줄일 수 있는 효과가 있다.The present invention uses a new message structure for an EMS (Extended Min-Sum) decoding algorithm for a non-binary LDPC code, thereby reducing the degree of deterioration in performance while reducing computational complexity of check node update.

이하 본 발명의 바람직한 실시 예를 첨부된 도면을 참조하여 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생 략한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

이하 본 발명에서는 비이진 LDPC 부호를 위한 개선된 고속 EMS(Extended Min-Sum) 복호 방법 및 장치에 관해 설명할 것이다. Hereinafter, an improved fast min-sum (EMS) decoding method and apparatus for a non-binary LDPC code will be described.

도 3은 EMS 복호 알고리즘과 본 발명에 따른 복호 알고리즘의 메시지 구조를 도시하고 있다. 여기서, 도 3의 좌측 메시지 구조는 기존의 EMS 복호 알고리즘에서 사용하는 메시지의 구조를 나타내며, 도 3의 우측 메시지 구조는 본 발명에서 제안하는 메시지의 구조를 나타낸다.3 shows a message structure of an EMS decoding algorithm and a decoding algorithm according to the present invention. Here, the left message structure of FIG. 3 represents the structure of a message used in the existing EMS decoding algorithm, and the right message structure of FIG. 3 represents the structure of a message proposed by the present invention.

상기 도 3에 도시된 바와 같이, 기존의 EMS 복호 알고리즘에서는 LLR 값의 크기에 따라 내림차순으로 정렬된 메시지 구조를 이용하였으나, 본 발명에서는 색인이 0인 위치(300)에 최대값을 갖는 LLR값(L(αk0))이 존재하고, 색인이 0보다 큰 i번째 위치(302, 304, 306)에는 상기 최대값을 갖는 LLR값과 기존 메시지 구조에서 색인 i에 위치한 값의 차이값(L(αk0)- L(αki))이 존재하는 메시지 구조를 이용한다. 즉, 본 발명에서 제안하는 메시지 구조에서 i번째 색인의 값(dUi)은 하기 수학식 1과 같이 나타낼 수 있다.As shown in FIG. 3, in the conventional EMS decoding algorithm, a message structure arranged in descending order according to the size of the LLR value is used. However, in the present invention, the LLR value having the maximum value at the position 300 having the index 0 (L (? K0 )) exists between the LLR value having the maximum value and the i-th position (302, 304, 306) k0 ) - L (? ki )). That is, the value (dU i ) of the i-th index in the message structure proposed by the present invention can be expressed by the following equation (1).

Figure 112008078286238-pat00001
Figure 112008078286238-pat00001

여기서, U0은 색인 0에 위치하는 최대 LLR값이며, Ui는 기존 메시지 구조에서 i번째 색인에 위치한 LLR 값, 즉, 상기 최대 LLR값을 제외한 LLR값들 중 i번째 로 큰 LLR값을 의미한다.Here, U0 denotes a maximum LLR value located at index 0, and Ui denotes an LLR value located in the i-th index in the existing message structure, that is, the i-th largest LLR value of the LLR values excluding the maximum LLR value.

상기와 같은 메시지 구조를 사용할 경우, 도 4에 도시된 바와 같은 가상 행렬을 갖게 됨으로써, 검사 노드 갱신 작업은 기존의 EMS 복호 알고리즘과 차이를 갖게된다. 기존 EMS 복호 알고리즘에서 가상 행렬은 입력 벡터 U와 입력 벡터 I에 속한 원소들의 합으로 이루어지는 비해, 본 발명에서 제안한 복호 알고리즘의 가상 행렬은 상기 도 4에 도시된 바와 같이 색인 (0,0)에 입력벡터 U와 I의 원소들의 합의 최대값을 가지며, 그 외 색인에는 상기 가상행렬에서 갖는 최대값과 기존의 가상 행렬에서 해당 색인의 LLR값과의 차이 값을 갖는다. 따라서, 상기 가상 행렬에서 (0,0) 색인을 제외한 첫 번째 행과 첫 번째 열의 경우, 하기 수학식 2와 같이 나타낼 수 있으므로, 해당 색인의 값을 얻기 위한 연산이 필요없다는 특징이 있다.In the case of using the message structure as described above, since the virtual matrix is provided as shown in FIG. 4, the check node update operation differs from the existing EMS decoding algorithm. In the conventional EMS decoding algorithm, the virtual matrix consists of the input vector U and the sum of the elements belonging to the input vector I, whereas the virtual matrix of the decoding algorithm proposed by the present invention is input to the index (0, 0) And has the maximum value of the sum of the elements of the vectors U and I. The other index has a difference between the maximum value of the virtual matrix and the LLR value of the index in the existing virtual matrix. Therefore, in the case of the first row and the first column excluding the (0, 0) index in the virtual matrix, it can be expressed by the following equation (2), so that an operation for obtaining the index value is not necessary.

Figure 112008078286238-pat00002
Figure 112008078286238-pat00002

Figure 112008078286238-pat00003
Figure 112008078286238-pat00003

여기서, dIp와 dUp는 상기 가상 행렬에서 각각 첫 번째 행의 p번재 원소의 값과 첫 번째 열의 j번째 값을 나타낸다. 즉, 상기 본 발명에서 제안하는 메시지 구조를 사용할 경우, 상기 수학식 2에서 볼 수 있듯이 가상 행렬에서 색인 (0,0)에 해당하는 원소를 제외한 첫 번째 행과 첫 번째 열의 원소들은 별도의 연산 없이 각각의 입력 벡터의 해당 원소 값을 그대로 사용할 수 있다.Here, dIp and dUp represent the value of the p-th element in the first row and the j-th value of the first column in the virtual matrix, respectively. That is, when the message structure proposed in the present invention is used, as shown in Equation (2), the elements of the first row and the first column excluding the elements corresponding to the index (0, 0) The corresponding element values of the respective input vectors can be used as they are.

이와 같은 가상 행렬 원소는 하기 표 1과 같이 나타낼 수 있다.Such a virtual matrix element can be represented as shown in Table 1 below.

가상 행렬의 색인Index of the virtual matrix 가상 행렬의 원소 값The element value of the virtual matrix (0, 0)(0, 0) U[0] + I[0]U [0] + I [0] (j, 0) , 0 < j < nm (j, 0), 0 < j < n m △U[j][Delta] U [j] (0, p) , 0 < p < nm (0, p), 0 < p < n m △I[p]△ I [p] (j, p) , 0 < j, p < nm (j, p), 0 <j, p <n m △U[j]+△I[p][Delta] U [j] + DELTA I [p]

상기 표 1과 같이, 본 발명에서 제안한 메시지 구조를 이용하여 가상 행렬의 원소 값을 계산할 경우, 색인 (0,0)에 해당하는 원소 값을 제외한 첫 번째 행과 첫 번째 열의 원소 값은 본 발명에서 제안한 메시지 구조의 값을 그대로 이용할 수 있다. 이와 같은 장점을 취하여 본 발명에서는 검사 노드 갱신을 위한 가상 행렬에서 사용되는 원소를 상기 도 4에 도시된 바와 같이 첫 번째 열과 첫 번째 행으로 제한한다. As shown in Table 1, when calculating the element value of the virtual matrix using the message structure proposed in the present invention, the element values of the first row and the first column excluding the element value corresponding to the index (0, 0) The value of the proposed message structure can be used as it is. Taking these advantages, the present invention limits the elements used in the virtual matrix for updating the check nodes to the first row and the first row as shown in FIG.

도 5는 본 발명에 따른 복호 알고리즘에서 검사 노드 차수에 따라 가상 공간으로 확장한 경우를 예로 들어 도시하고 있다. FIG. 5 shows an example in which the decoding algorithm according to the present invention is extended to a virtual space according to the check node degree.

상기 도 5는 검사 노드 차수가 4이며, 메시지 크기가 6인 경우(dc = 4, nm=6)를 가상 공간으로 확장하여 나타내고 있다. 즉, 검사 노드 차수가 dc인 경우 본 발명의 출력 메시지 벡터의 최대 LLR 값은 각각의 입력 벡터에서 최대 LLR 값들을 합한 값이 되며, 출력 메시지 벡터의 나머지 값은 상기 각각의 입력 벡터에서 최대 값을 제외한 나머지 차이 값들을 크기에 따라 오름차순으로 정렬하여 nm-1개만 취하여 얻을 수 있다.5, the check node degree is 4 and the message size is 6 (d c = 4, n m = 6) is extended to the virtual space. That is, when the check node degree is d c , the maximum LLR value of the output message vector of the present invention is the sum of the maximum LLR values in each input vector, and the remaining value of the output message vector is the maximum value And the remaining difference values are sorted in ascending order according to their sizes and can be obtained by taking only n m -1.

상술한 설명에서 상기 최대 LLR값과의 차이값은 변조 방식에 따라 계산을 통해 얻을 수도 있으며, 채널에서 그대로 얻을 수도 있다. 즉, BPSK 변조 방식의 경우, 비이진 LDPC 부호를 사용하더라도 한 번에 한 비트씩 보내기 위해 GF(q) 원소를 비트로 변환하여 보내게 되고 수신단에서는 비트 단위로 보내진 정보를 이용하여 각 GF(q) 원소에 대한 LLR값을 계산한다. 즉, GF(4)에서 각 원소는 두 개의 비트로 표현할 수 있으므로, BPSK 변조 방식을 이용하는 경우에 GF(4)에 대한 LLR값은 각 비트에 대한 LLR값을 합한 것과 같기 때문에, 별도의 연산없이 채널로부터 수신된 비트 LLR값을 취하여 본 발명에서 제안하는 메시지 구조를 얻을 수 있다. 또한, QAM 혹은 PAM과 같은 고차변조 방식에서는 메시지를 얻기 위해 별도의 연산이 필요하긴 하지만, 상기 메시지를 한번 구한 후에는 복호 과정 중에 다시 구하지 않아도 되므로, 실제적으로 무시할 수 있을 정도의 복잡도를 갖게 된다.In the above description, the difference from the maximum LLR value may be obtained through calculation according to the modulation scheme, or may be obtained directly from the channel. That is, in the case of the BPSK modulation scheme, even if a non-binary LDPC code is used, the GF (q) element is converted into bits for transmission in one bit at a time, Calculate the LLR value for the element. That is, since each element in GF (4) can be represented by two bits, the LLR value for GF (4) is equal to the sum of the LLR values for each bit in the case of using the BPSK modulation method, The LLR value of the received bit can be obtained to obtain the message structure proposed in the present invention. In addition, in a higher order modulation scheme such as QAM or PAM, a separate operation is required to obtain a message. However, after the message is obtained once, it is not required to be obtained again in the decoding process, so that the complexity can be neglected.

그러면, 이하에서 상기와 같은 메시지 구조를 이용하는 LDPC 복호기의 구성 및 동작 절차를 살펴보기로 한다.Hereinafter, the configuration and operation procedure of the LDPC decoder using the message structure will be described.

도 6은 본 발명에 따른 LDPC 복호를 수행하는 수신단의 간략한 블록 구성을 도시하고 있다. 도시된 바와 같이, 상기 수신단은 수신기(600), 복조기(610), LDPC 복호기(620)를 포함하여 구성되며, 상기 LDPC 복호기(620)는 메시지 벡터를 생성하는 메시지 벡터 생성기(622)와 가변 노드(Variable Node)부(624) 및 제 1 및 제 2가산기(626, 634), 인터리버(636) 및 디인터리버(628), 검사 노드(Check Node)부(630) 및 경판정부(632)를 포함하여 구성된다.FIG. 6 shows a simplified block diagram of a receiving end for performing LDPC decoding according to the present invention. The LDPC decoder 620 includes a message vector generator 622 for generating a message vector, a variable vector generator 622 for generating a message vector, A variable node unit 624 and first and second adders 626 and 634, an interleaver 636 and a deinterleaver 628, a check node unit 630 and a hard decision unit 632 .

상기 도 6을 참조하면, 상기 수신기(600)는 안테나를 통해 수신된 고주파 신호를 기저대역 신호로 변환 처리하여 상기 복조기(610)로 제공하고, 상기 복조기(610)는 상기 수신기(600)로부터 제공되는 신호를 복조하여 심볼 LLR 값을 생성한다.6, the receiver 600 converts a high-frequency signal received through an antenna into a baseband signal and provides the baseband signal to the demodulator 610. The demodulator 610 receives the high frequency signal from the receiver 600 To generate a symbol LLR value.

상기 LDPC 복호기(620)는 반복적인 메시지 경과(Iterative Message Passing) 알고리즘을 바탕으로 복호 과정을 수행하여 채널로부터 수신된 신호에서 특정 조건을 만족하는 정보심볼을 획득한다. 이때, 각각의 노드에서 발생하는 과정을 노드 갱신이라고 한다. 특히, 본 발명에 따라 상기 LDPC 복호기(620)는 본 발명에 따라 상기 도 3의 우측에 도시된 바와 같은 메시지 벡터를 이용하여 상기 비이진 LDPC 복호를 수행한다.The LDPC decoder 620 performs a decoding process based on an iterative message passing algorithm to obtain an information symbol satisfying a specific condition in a signal received from a channel. At this time, the process occurring in each node is called node update. In particular, according to the present invention, the LDPC decoder 620 performs the non-binary LDPC decoding using a message vector as shown in the right side of FIG. 3 according to the present invention.

상기 LDPC 복호기(620)에 대해 자세히 살펴보면, 먼저 상기 메시지 벡터 생성기(622)는 상기 복조기(610)로부터 제공되는 심볼 LLR값들로부터 상기 도 3의 우측에 도시된 바와 같은 메시지 벡터를 생성한다. 즉, 상기 심볼 LLR 값들을 내림차순으로 정렬하여 큰 값을 가지는 기 설정된 소정 수(nm)의 LLR 값들만을 선택한 후, 상기 선택된 LLR 값들을 이용하여 상기 도 3의 우측에 도시된 바와 같은 메시지 벡터를 생성한다. 상기 메시지 벡터 생성기(622)는 하기에서 도 7을 참조하여 상세히 설명하기로 한다.3, the message vector generator 622 generates a message vector as shown in the right side of FIG. 3 from the symbol LLR values provided from the demodulator 610. That is, by selecting the LLR values of predetermined predetermined number (n m ) having a large value by sorting the symbol LLR values in descending order and then using the selected LLR values, the message vector . The message vector generator 622 will be described in detail below with reference to FIG.

상기 가변 노드부(624)는 상기 메시지 벡터 생성기(622)로부터 메시지 벡터를 제공받아 기존과 같이 동작한다. 상기 가변 노드부(624)는 기 설정된 패리티 검사 행렬에 상응하게 가변 노드들을 연결하며, LLR값들을 더하여 업데이트 한 후, 상기 제 1 가산기(626)로 제공한다. The variable node unit 624 receives the message vector from the message vector generator 622 and operates as it is. The variable node unit 624 connects the variable nodes according to a predetermined parity check matrix, updates the LLR values, and provides the updated variable nodes to the first adder 626.

상기 제 1 가산기(626)는 상기 가변 노드부(624)에서 출력한 신호와 이전 반복 복호화(iteration decoding) 과정에서의 상기 인터리버(636)의 출력 신호를 입력받아, 상기 가변 노드부(624)에서 출력한 신호에서 이전 반복 복호화과정에서의 상기 인터리버(636)의 출력 신호를 감산한 후 상기 디인터리버(628)로 출력한다. The first adder 626 receives the signal output from the variable node unit 624 and the output signal of the interleaver 636 in the previous iteration decoding process and outputs the signal to the variable node unit 624 Subtracts the output signal of the interleaver 636 in the previous iterative decoding process from the output signal, and outputs the subtracted result to the deinterleaver 628.

상기 디인터리버(628) 상기 제 1 가산기(624)로부터 제공되는 신호에 대해 기 설정된 방식에 상응하게 디인터리빙(de-interleaving)을 수행한 후 상기 제 2 가산기(634)와 상기 검사 노드부(630)로 출력한다. The deinterleaver 628 de-interleaves the signal provided from the first adder 624 in accordance with a predetermined scheme and then outputs the deinterleaved signal to the second adder 634 and the check node unit 630 .

상기 인터리버(636)는 상기 제 2 가산기(634)로부터 제공되는 신호에 대해 기 설정된 방식으로 인터리빙을 수행한 후 상기 제 1 가산기(626) 및 상기 가변 노드부(624)로 출력한다. The interleaver 636 interleaves the signal provided from the second adder 634 in a predetermined manner and outputs the interleaved signal to the first adder 626 and the variable node unit 624.

상기 제 2 가산기(634) 이전 반복 복호화 과정에서의 상기 검사 노드부(630)로부터 제공된 신호에서 상기 디인터리버(628)의 신호를 감산한 후, 감산 결과를 상기 인터리버(636)로 출력한다. Subtracts the signal of the deinterleaver 628 from the signal provided from the check node unit 630 in the iterative decoding process before the second adder 634 and outputs the subtraction result to the interleaver 636.

상기 검사 노드부(Check Node)(630)는 기 설정되어 있는 패리티 검사 행렬에 상응하게 검사 노드들을 연결하며, 본 발명에 따라 상기 디인터리버(628)를 통해 가변 노드들로부터 제공되는 신호, 즉, 메시지 벡터에서 색인이 0인 최대값들과 상기 최대값들과의 차이를 나타내는 차이값들을 분류한 후, 상기 최대값들의 합을 계산하고, 상기 차이값들을 오름차순 정렬하여 크기가 작은 순으로 기 설정된 nm-1개의 차이값을 선택한 후, 상기 최대값들의 합과 상기 선택된 nm-1개의 차이값을 연접하여 메시지 백터를 생성하고, 생성된 메시지 벡터를 상기 제 2 가산기(634)로 출력한다.The check node unit 630 connects the check nodes according to a predetermined parity check matrix and transmits a signal provided from the variable nodes through the deinterleaver 628 according to the present invention, A message vector is generated by classifying the difference values indicating the difference between the maximum values having the index 0 and the maximum values and then calculating the sum of the maximum values and arranging the difference values in ascending order, after selecting the n m -1 of the difference values, concatenating the selected n m -1 of the difference value to the sum of the maximum value to generate a message vector, and outputs the message vector generated by the second adder 634 .

상기 경판정부(632)는 상기 가변 노드부(624)로부터 제공되는 신호를 경판정한 후, 그 경판정 결과를 출력한다. 여기서, 상기 경판정부(632)의 출력값이 최종적으로 복호화된 정보심볼이 된다.The hard decision unit 632 determines the hard decision of the signal provided from the variable node unit 624, and then outputs the hard decision result. Here, the output value of the hard decision unit 632 becomes the finally decoded information symbol.

도 7은 본 발명의 실시 예에 따른 LDPC 복호기에서 메시지 벡터 생성기의 상세한 블록 구성을 도시하고 있다. 도시된 바와 같이, 메시지 벡터 생성기는 내림차순 정렬기/메시지 절단기(700), 메시지 벡터 분류기(702), 가산기(704) 및 메시지 벡터 연접기(706)를 포함하여 구성된다.FIG. 7 is a detailed block diagram of a message vector generator in an LDPC decoder according to an embodiment of the present invention. As shown, the message vector generator comprises a descending sorter / message cutter 700, a message vector classifier 702, an adder 704 and a message vector combiner 706.

상기 도 7을 참조하면, 상기 내림차순 정렬기/메시지 절단기(700)는 크기가 q-1인 심볼 LLR값들로 이루어진 벡터가 입력되면, 상기 입력된 LLR 값들을 내림 차순으로 정렬한 후, 기 설정된 소정 수(nm)의 LLR 값들을 선택하여 상기 메시지 벡터 분류기(702)로 제공한다. Referring to FIG. 7, the descending sorting unit / message scrambler 700 may sort the input LLR values in descending order when a vector of symbol LLR values of size q-1 is input, (N m ) LLR values to the message vector classifier 702.

상기 메시지 벡터 분류기(702)는 상기 내림차순 정렬기/메시지 절단기(700)로부터 nm개의 LLR 값들로 이루어진 메시지 벡터를 제공받고, 상기 메시지 벡터에서 색인 0에 위치한 LLR 값 즉, 상기 메시지 벡터에서 최대값을 갖는 LLR값을 분류한 후, 상기 메시지 벡터 연접기(706)와 가산기(704)로 제공하고, 나머지 색인에 위치한 nm-1개의 LLR 값들은 가산기(704)로 제공한다.The message vector classifier 702 receives a message vector composed of n m LLR values from the descending sorting unit / message cutter 700 and calculates an LLR value at an index 0 in the message vector, that is, And supplies it to the message vector adder 706 and the adder 704, and provides n m -1 LLR values located in the remaining indexes to the adder 704.

상기 가산기(704)는 상기 메시지 벡터 분류기(702)로부터 최대값을 갖는 LLR값과 그 외 LLR 값이 제공되면, 상기 최대값을 갖는 LLR값에서 상기 그 외 LLR 값을 각각 감산하여 차이를 구한 후, 상기 메시지 벡터 연접기(706)로 제공한다. If the LLR value having the maximum value and the other LLR values are provided from the message vector classifier 702, the adder 704 subtracts the other LLR values from the LLR value having the maximum value to obtain a difference And provides it to the message vector combiner 706.

상기 메시지 벡터 연접기(706)는 상기 메시지 벡터 분류기(702)로부터 최대값을 갖는 LLR값을 제공받고, 상기 가산기(704)를 통해 상기 nm-1개의 LLR 값들과 상기 최대 LLR값의 차이를 나타내는 값들을 제공받은 후, 이 값들을 연접하여 본 발명에 따른 메시지 벡터를 획득한다.The message vector combiner 706 receives an LLR value having a maximum value from the message vector classifier 702 and calculates a difference between the n m -1 LLR values and the maximum LLR value through the adder 704 And then combines these values to obtain a message vector according to the present invention.

도 8은 본 발명의 실시 예에 따른 LDPC 복호기에서 검사 노드부의 상세한 블록 구성을 도시하고 있다. 도시된 바와 같이, 상기 검사 노드부는 메시지 벡터 분류기(800), 합산기(802), 오름차순 정렬기(804), 메시지 벡터 연접기(806)를 포함하여 구성된다.FIG. 8 shows a detailed block configuration of the check node unit in the LDPC decoder according to the embodiment of the present invention. As shown in the figure, the check node unit includes a message vector classifier 800, a summer 802, an ascending sorting unit 804, and a message vector sorter 806.

상기 도 8을 참조하면, 상기 메시지 벡터 분류기(800)는 검사 노드와 연결된 dc-1 개의 가변 노드들로부터 메시지 벡터를 제공받고, 상기 각각의 메시지 벡터에서 색인이 0인 최대값과 그 외 색인에 존재하는 값들 즉, 최대값과의 차이를 나타내는 값들로 분류하여 상기 색인이 0인 값을 상기 합산기(802)로 제공하고, 상기 그 외 색인에 존재하는 차이 값들을 상기 오름차순 정렬기(804)로 제공한다. Referring to FIG. 8, the message vector classifier 800 receives a message vector from d c -1 variable nodes connected to a check node, calculates a maximum value of an index 0 and an index And provides the value of the index 0 to the summer 802. The difference values present in the other indexes are classified by the ascending sorting unit 804 ).

상기 합산기(802)는 상기 메시지 벡터 분류기(800)로부터 dc-1 개의 메시지 벡터의 색인 0에 존재하는 최대값들을 제공받고, 상기 최대값 값들을 전부 덧셈 연산하여 상기 메시지 벡터 연접기(806)로 제공한다.The adder 802 receives the maximum values existing at the index 0 of the d c -1 message vectors from the message vector classifier 800 and adds all the maximum values to the message vector combiner 806 ).

상기 오름차순 정렬기(804)는 상기 메시지 벡터 분류기(800)에서 제공된 차이 값들을 오름차순으로 정렬하여 작은 값 순서로 nm-1개의 차이 값을 선택한 후, 상기 메시지 벡터 연접기(806)로 제공한다.The ascending sorting unit 804 sorts the difference values provided by the message vector classifier 800 in ascending order, selects n m -1 difference values in a small value order, and provides the difference values to the message vector smoothing unit 806 .

상기 메시지 벡터 연접기(806)는 상기 합산기(802)에서 제공되는 최대값들의 합과 상기 오름차순 정렬기(804)로부터 제공되는 nm-1개의 차이 값을 연접하여 검사 노드 갱신을 수행한다.The message vector synchronizer 806 performs check node update by concatenating the sum of the maximum values provided by the summer 802 and the difference values of n m -1 provided from the ascending sorting unit 804.

도 9는 본 발명의 실시 예에 따른 LDPC 복호기의 동작 절차를 도시하고 있다.FIG. 9 illustrates an operation procedure of an LDPC decoder according to an embodiment of the present invention.

상기 도 9를 참조하면, 상기 복호기는 901단계에서 채널로부터 수신되는 신호의 LLR값들을 복조기로부터 수신하고, 903단계에서 상기 LLR값들을 내림차순으로 정렬하고, 정렬된 LLR값들 중 큰 값을 가지는 기 설정된 nm개의 LLR값을 선택한다.9, the decoder receives LLR values of a signal received from a channel in step 901, arranges the LLR values in descending order in step 903, and outputs the LLR values in a descending order of preset LLR values Select n m LLR values.

이후, 상기 복호기는 905단계에서 상기 선택된 LLR 값들 중 최대값을 갖는 LLR값을 분류하고, 907단계에서 상기 최대값을 갖는 LLR값과 상기 선택된 LLR 값들 중 상기 최대값을 갖는 LLR값을 제외한 나머지 LLR값들의 차이값을 계산한 후, 909단계에서 상기 최대값을 갖는 LLR 값과 상기 차이값을 연접하여 상기 도 3의 우측에 도시된 바와 같은 메시지 벡터를 생성한다.In step 905, the decoder classifies the LLR value having the maximum value among the selected LLR values in step 905. In step 907, the LLR value having the maximum value and the remaining LLR values excluding the LLR value having the maximum value among the selected LLR values, In step 909, the LLR value having the maximum value is concatenated with the difference value to generate a message vector as shown in the right side of FIG.

이후, 상기 복호기는 911단계에서 생성된 메시지 벡터를 가변 노드에서 검사 노드로 제공하고, 913단계에서 상기 검사 노드에 연결된 dc-1개의 가변 노드들의 메시지 벡터가 상기 검사노드에 제공되었는지 검사한다.Then, the decoder provides the message vector generated in step 911 from the variable node to the check node. In step 913, the decoder checks whether a message vector of d c -1 variable nodes connected to the check node is provided to the check node.

상기 검사 노드에 연결된 dc-1개의 가변 노드들의 메시지 벡터가 상기 검사노드에 제공되면, 상기 복호기는 915단계에서 상기 dc-1개의 가변 노드들로부터 제공된 각 메시지 벡터에서 최대값과 차이값을 분류한다. 여기서, 상기 최대값은 각 메시지 벡터의 색인 0에 존재하는 LLR 값이며, 차이값은 색인 0이외의 위치에 존재하는 값들이다.If a message vector of d c -1 variable nodes connected to the check node is provided to the check node, the decoder calculates a maximum value and a difference value in each message vector provided from the d c -1 variable nodes in step 915. Classify. Here, the maximum value is an LLR value existing at index 0 of each message vector, and the difference value is a value existing at a position other than index 0.

이후, 상기 복호기는 917단계에서 상기 각 메시지 벡터에서 분류된 최대값들의 합을 계산하고, 919단계에서 상기 각 메시지 벡터에서 분류된 차이값들을 오름차순으로 정렬하여 정렬된 차이 값들 중 작은 값을 가지는 nm-1개의 차이값들을 선택한다.In step 917, the decoder calculates the sum of the maximum values classified in the respective message vectors. In step 919, the decoder aligns the difference values classified in each message vector in ascending order, Select m -1 difference values.

이후, 상기 복호기는 921단계에서 최대값들의 합과 선택된 nm-1개의 차이값을 연접하여 메시지 벡터 생성함으로써 검사 노드를 갱신하고, 본 발명에 따른 알고리즘을 종료한다.Thereafter, in step 921, the decoder updates the check node by concatenating the sum of the maximum values and the difference values of the selected n m -1 to generate a message vector, and terminates the algorithm according to the present invention.

종래에 제공된 EMS 복호기는 메시지의 크기(nm)가 작아질수록 복잡도를 감소시킬 수 있으나, 그에 따른 성능열화가 발생하며. 고차 변조(Higher order modulation)의 경우, 메시지의 크기(nm)의 감소에 따른 성능열화 정도가 저차 변조(low order modulation)에서의 메시지의 크기(nm)의 감소에 따른 성능열화 정도보다 작다. 즉, 본 발명은 상기 EMS 복호기를 기반으로 하며, 다른 메시지 구조를 이용하기 때문에 고차 변조에서 적용될 경우, 복잡도가 낮으면서도 성능열화가 작은 시스템 구현할 수 있다.The conventional EMS decoder can reduce the complexity as the message size (n m ) becomes smaller, but the performance deteriorates accordingly. For higher-order modulation (Higher order modulation), the performance degradation degree of the reduction in the size of the message (n m) low order modulation (low order modulation) performance deterioration is smaller than the extent of the reduction in the size of the message (n m) in . That is, the present invention is based on the EMS decoder and uses a different message structure. Therefore, when applied to high-order modulation, a system with low complexity and low performance degradation can be realized.

한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments. Therefore, the scope of the present invention should not be limited by the illustrated embodiments, but should be determined by the scope of the appended claims and equivalents thereof.

도 1은 EMS 복호 알고리즘의 기본 갱신 과정을 도시하는 도면,1 is a diagram showing a basic updating process of an EMS decoding algorithm,

도 2는 EMS 복호 알고리즘의 검사 노드 갱신 과정을 나타내는 도면,2 is a diagram showing a check node updating process of the EMS decoding algorithm,

도 3은 EMS 복호 알고리즘과 본 발명에 따른 복호 알고리즘의 메시지 구조를 도시하는 도면,3 is a diagram showing a message structure of an EMS decoding algorithm and a decoding algorithm according to the present invention,

도 4는 본 발명에 따른 복호 알고리즘에서 검사 노드 갱신을 위한 가상 행렬 구조를 도시하는 도면,4 is a diagram illustrating a virtual matrix structure for check node update in the decoding algorithm according to the present invention;

도 5는 본 발명에 따른 복호 알고리즘에서 검사 노드 차수에 따라 가상 공간으로 확장한 경우를 예로 들어 도시하는 도면,FIG. 5 is a diagram illustrating an example of a case where a decoding algorithm according to the present invention is extended to a virtual space according to a check node degree,

도 6은 본 발명에 따른 LDPC 복호를 수행하는 수신단의 간략한 블록 구성을 도시하는 도면, FIG. 6 is a block diagram showing a simplified block diagram of a receiving end for performing LDPC decoding according to the present invention;

도 7은 본 발명의 실시 예에 따른 LDPC 복호기에서 메시지 벡터 생성기의 상세한 블록 구성을 도시하는 도면,7 is a detailed block diagram of a message vector generator in an LDPC decoder according to an embodiment of the present invention.

도 8은 본 발명의 실시 예에 따른 LDPC 복호기에서 검사 노드부의 상세한 블록 구성을 도시하는 도면, 및8 is a diagram showing a detailed block configuration of a check node unit in an LDPC decoder according to an embodiment of the present invention, and FIG.

도 9는 본 발명의 실시 예에 따른 LDPC 복호기의 동작 절차를 도시하는 도면.9 is a diagram illustrating an operation procedure of an LDPC decoder according to an embodiment of the present invention.

Claims (6)

저밀도 패리티 검사의 부호를 위한 복호 방법에 있어서,A decoding method for a code of a low density parity check, 채널로부터 수신되는 신호를 복조하여 LLR(log likelihood ratio) 값들을 생성하는 과정과,Demodulating a signal received from the channel to generate log likelihood ratio (LLR) 상기 생성된 LLR 값들 중 내림차순으로 소정 수의 LLR 값들을 선택하는 과정과,Selecting a predetermined number of LLR values in descending order of the generated LLR values; 상기 선택된 LLR 값들 중 가장 큰 LLR 값과 나머지 LLR 값들의 차이 값들을 계산하는 과정과,Calculating difference values between a largest LLR value and a remaining LLR value among the selected LLR values; 상기 가장 큰 LLR 값 및 상기 차이 값들을 포함하는 메시지 벡터를 생성하는 과정과,Generating a message vector including the largest LLR value and the difference values; 상기 메시지 벡터를 이용하여 저밀도 패리티 검사의 복호를 수행하는 과정을 포함하는 것을 특징으로 하는 방법.And performing decoding of a low density parity check using the message vector. 제 1항에 있어서,The method according to claim 1, 상기 저밀도 패리티 검사의 복호를 수행하는 과정은,Wherein the decoding of the low density parity check comprises: 패리티 검사 행렬에 상응하게 가변 노드들을 연결한 제1 신호를 생성하는 과정과,Generating a first signal by connecting variable nodes according to a parity check matrix; 상기 제1 신호에서 이전 반복 과정에서 인터리빙된 제2 신호를 감산한 결과를 디인터리빙한 제3 신호를 생성하는 과정과,Generating a third signal by deinterleaving a result of subtracting the interleaved second signal from the first signal in the previous iterative process; 상기 제3 신호를 이용하여 상기 패리티 검사 행렬에 상응하게 검사 노드들을 연결한 제4 신호를 생성하는 과정과,Generating a fourth signal by connecting check nodes according to the parity check matrix using the third signal; 상기 제4 신호에서 상기 제3 신호를 감산한 결과를 인터리빙한 제5 신호를 생성하는 과정을 포함하는 것을 특징으로 하는 방법.And generating a fifth signal by interleaving the result of subtracting the third signal from the fourth signal. 제 1항에 있어서,The method according to claim 1, 상기 메시지 벡터는, 상기 메시지 벡터의 색인 0에서 상기 가장 큰 LLR 값을 포함하고, 상기 메시지 벡터의 색인 1부터 상기 메시지 벡터의 색인 N까지 상기 차이 값들을 오름차순으로 포함하는 것을 특징으로 하는 방법.Wherein the message vector comprises the largest LLR value at index 0 of the message vector and includes the difference values in ascending order from index 1 of the message vector to index N of the message vector. 저밀도 패리티 검사의 부호를 위한 복호 장치에 있어서,A decoding apparatus for coding a low density parity check, 채널로부터 수신되는 신호를 복조하여 LLR(log likelihood ratio) 값들을 생성하는 복조기와,A demodulator for demodulating a signal received from the channel to generate log likelihood ratio (LLR) 상기 생성된 LLR 값들 중 내림차순으로 소정 수의 LLR 값들을 선택하고, 상기 선택된 LLR 값들 중 가장 큰 LLR 값과 나머지 LLR값들의 차이값 들을 계산한 후, 상기 가장 큰 LLR 값과 상기 차이 값들을 포함하는 메시지 벡터를 생성하는 메시지 벡터 생성기와,Selecting a predetermined number of LLR values in descending order among the generated LLR values, calculating differences between the largest LLR value and the remaining LLR values among the selected LLR values, A message vector generator for generating a message vector, 상기 메시지 벡터를 이용하여 저밀도 패리티 검사의 복호를 수행하는 복호기를 포함하는 것을 특징으로 하는 장치.And a decoder for performing low-density parity check decoding using the message vector. 제 4항에 있어서,5. The method of claim 4, 상기 복호기는,The decoder includes: 상기 메시지 벡터를 생성하는 생성기와,A generator for generating the message vector; 패리티 검사 행렬에 상응하게 가변 노드들을 연결한 제1 신호를 출력하는 가변 노드부와,A variable node unit for outputting a first signal connecting variable nodes according to a parity check matrix, 상기 제1 신호에서 이전 반복 과정에서 인터리빙된 제2 신호를 감산한 결과를 디인터리빙한 제3 신호를 출력하는 디인터리버와,A deinterleaver for deinterleaving a result of subtracting the interleaved second signal from the first signal in a previous iterative process, 상기 제3 신호를 제공받아 상기 패리티 검사 행렬에 상응하게 검사 노드들을 연결한 제4 신호를 출력하는 검사 노드부와,A check node receiving a third signal and outputting a fourth signal connected to the check nodes according to the parity check matrix; 상기 제4 신호에서 상기 제3 신호를 감산한 결과를 인터리빙한 제5 신호를 상기 가변 노드부로 출력하는 인터리버를 포함하는 것을 특징으로 하는 장치.And an interleaver outputting a fifth signal interleaved with a result of subtracting the third signal from the fourth signal to the variable node unit. 제 4항에 있어서,5. The method of claim 4, 상기 메시지 벡터는, 상기 메시지 벡터의 색인 0에서 상기 가장 큰 LLR 값을 포함하고, 상기 메시지 벡터의 색인 1부터 상기 메시지 벡터의 색인 N까지 상기 차이 값들을 오름차순으로 포함하는 것을 특징으로 하는 장치.Wherein the message vector comprises the largest LLR value at index 0 of the message vector and includes the difference values in ascending order from index 1 of the message vector to index N of the message vector.
KR1020080112324A 2008-11-12 2008-11-12 Apparatus and method for decoding for non binary low density parity check incodeing KR101562220B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080112324A KR101562220B1 (en) 2008-11-12 2008-11-12 Apparatus and method for decoding for non binary low density parity check incodeing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080112324A KR101562220B1 (en) 2008-11-12 2008-11-12 Apparatus and method for decoding for non binary low density parity check incodeing

Publications (2)

Publication Number Publication Date
KR20100053280A KR20100053280A (en) 2010-05-20
KR101562220B1 true KR101562220B1 (en) 2015-10-22

Family

ID=42278427

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080112324A KR101562220B1 (en) 2008-11-12 2008-11-12 Apparatus and method for decoding for non binary low density parity check incodeing

Country Status (1)

Country Link
KR (1) KR101562220B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102080069B1 (en) * 2013-09-25 2020-04-14 삼성전자주식회사 Apparatua and method for decoding data in a receiver using a nonbinary low density parity check code
KR102394458B1 (en) * 2015-07-06 2022-05-04 삼성전자주식회사 Decoder and decoding method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100849991B1 (en) 2007-02-23 2008-08-01 주식회사 젤라인 Coding system and coding method using the coding technique of low density parity check and decoding system and decoding method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100849991B1 (en) 2007-02-23 2008-08-01 주식회사 젤라인 Coding system and coding method using the coding technique of low density parity check and decoding system and decoding method thereof

Also Published As

Publication number Publication date
KR20100053280A (en) 2010-05-20

Similar Documents

Publication Publication Date Title
US11362682B2 (en) Encoding method and apparatus using CRC code and polar code
JP5354979B2 (en) Low density parity check convolutional code (LDPC-CC) encoder and LDPC-CC decoder
EP1596501B1 (en) Apparatus and method for encoding and decoding block low density parity check codes with a variable coding rate
CA2560852C (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
EP2239854B1 (en) Shortening and puncturing of low-density parity-check (LDPC) codes for channel decoding
JP4555334B2 (en) Apparatus and method for encoding / decoding block low density parity check code having variable block length
US7962828B2 (en) Apparatus and method for coding/decoding block low density parity check code in a mobile communication system
US8261152B2 (en) Apparatus and method for channel encoding/decoding in communication system using variable-length LDPC codes
US7814393B2 (en) Apparatus and method for coding/decoding block low density parity check code with variable block length
CN109314600B (en) System and method for rate matching when using generic polarization codes
US8161363B2 (en) Apparatus and method to encode/decode block low density parity check codes in a communication system
CN101039119B (en) Encoding and decoding methods and systems
US8321745B2 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR20090048465A (en) Message-passing decoding method with sequencing according to reliability of vicinity
He et al. A joint source and channel coding scheme base on simple protograph structured codes
KR20180028981A (en) Elementary check node processing for syndrome computation for non-binary ldpc codes decoding
KR101562220B1 (en) Apparatus and method for decoding for non binary low density parity check incodeing
Tajima et al. Iterative decoding based on concatenated belief propagation for CRC-aided polar codes
Chi et al. A study on the performance, complexity tradeoffs of block turbo decoder design
CN101150378A (en) Interleaving scheme of 32APSK system for low-density checksum coding
CN101150550A (en) Interweaving scheme of 16APSK system for low-density checksum coding
CN113810159B (en) Intermediate channel selection and distribution method for LDPC-Polar cascade system
Ghouri et al. Performance of modified iterative decoding algorithm for product codes
WO2023025960A1 (en) A method for decoding a codeword encoded using a non-binary code, corresponding device and computer program
CN117614547A (en) Delay serial cascade pulse position modulation system, method and deep space optical communication system

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
LAPS Lapse due to unpaid annual fee