KR20200116889A - Ldpc encoding, decoding method and device using the method - Google Patents

Ldpc encoding, decoding method and device using the method Download PDF

Info

Publication number
KR20200116889A
KR20200116889A KR1020200127770A KR20200127770A KR20200116889A KR 20200116889 A KR20200116889 A KR 20200116889A KR 1020200127770 A KR1020200127770 A KR 1020200127770A KR 20200127770 A KR20200127770 A KR 20200127770A KR 20200116889 A KR20200116889 A KR 20200116889A
Authority
KR
South Korea
Prior art keywords
decoding
ldpc
bit
encoding
code word
Prior art date
Application number
KR1020200127770A
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 KR1020200127770A priority Critical patent/KR20200116889A/en
Publication of KR20200116889A publication Critical patent/KR20200116889A/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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2948Iterative decoding

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

A low density parity check (LDPC) encoding and decoding method and an apparatus using the method are provided. According to the present invention, an LDPC encoding method comprises the steps of: (a) performing LDPC encoding on data to be encoded; and (b) performing additional encoding on a specific bit of a codeword on which the LDPC encoding has been performed.

Description

LDPC 부호화, 복호화 방법 및 그 방법을 이용하는 장치{LDPC ENCODING, DECODING METHOD AND DEVICE USING THE METHOD}An LDPC encoding and decoding method, and an apparatus using the method {LDPC ENCODING, DECODING METHOD AND DEVICE USING THE METHOD}

본 발명은 LDPC(Low Density Parity Check) 부호화, 복호화 방법 및 그 방법을 이용하는 장치에 관한 것으로, 더욱 상세하게는 오류 마루(error floor) 개선을 위한 LDPC 부호화, 복호화 방법 및 그 방법을 이용하는 장치에 관한 것이다.The present invention relates to a LDPC (Low Density Parity Check) encoding and decoding method, and an apparatus using the method, and more particularly, to an LDPC encoding and decoding method for improving an error floor, and an apparatus using the method. will be.

차세대 통신 시스템은 고속 대용량 데이터 송수신을 지원하는 형태로 나아가고 있으며, 고속 대용량 데이터 송수신을 지원하기 위해서 채널 용량에 근접하는 성능을 가지고 있는 터보 부호 및 LDPC(Low Density Parity Check) 부호가 사용되고 있다.Next-generation communication systems are advancing in a form that supports high-speed large-capacity data transmission and reception, and turbo codes and LDPC (Low Density Parity Check) codes having a performance close to channel capacity are used to support high-speed large-capacity data transmission and reception.

또한 저장 장치에서는 정보 저장의 집적도를 높이기 위하여 높은 부호율의 오류 정정 부호를 사용하는데, 최근 LDPC 부호를 저장 장치에 적용하는 사례가 늘고 있다.In addition, in storage devices, error correcting codes with a high code rate are used to increase the degree of integration of information storage. Recently, LDPC codes are increasingly applied to storage devices.

이러한 LDPC 부호는 복호기의 입력 범위와 부호의 복호 알고리즘에 의해 오류 마루(error floor) 현상이 발생되는 문제점이 있다.The LDPC code has a problem in that an error floor occurs due to an input range of a decoder and a decoding algorithm of the code.

이를 극복하기 위해서, 오류 마루 현상의 원인이라고 알려진 유사 부호어 혹은, 트레핑 세트 분석을 통해 오류 마루 개선하기 위한 여러 가지 방법이 제안되었다.In order to overcome this, various methods for improving the error floor through analysis of a pseudo codeword known as the cause of the error floor phenomenon or a trepping set have been proposed.

그러나, 기존 방법들은 주로 오류 마루 현상의 원인인 트레핑 세트의 구조를 이론적으로 분석하는 연구가 주를 이루고 있으며, 이를 제거하는 구체적인 기법은 제안된 것이 많지 않다.However, the existing methods are mainly researches that theoretically analyze the structure of the trapping set, which is the cause of the error-floor phenomenon, and there are not many specific techniques for removing this.

또한, 기존 방법들은 복호 알고리즘의 수정을 통한 오류 마루 개선에 집중하고 있어 추가적인 복호 복잡도를 야기할 뿐만 아니라 전송율(혹은 부호율) 손실이 발생하는 문제도 있어, 구현이 용이하면서 오류 마루를 개선할 수 있는 해결책을 여전히 제시하지 못하고 있는 실정이다.In addition, the existing methods focus on improving the error floor by modifying the decoding algorithm, which not only causes additional decoding complexity, but also causes a loss of transmission rate (or code rate), making it easy to implement and improving the error floor. It is still not able to present a solution that exists.

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로, LDPC(Low Density Parity Check) 부호의 오류 마루를 개선하는 LDPC 부호화, 복호화 방법 및 그 방법을 이용하는 장치를 제공하고자 한다.The present invention is to solve the problems of the prior art described above, and to provide an LDPC encoding and decoding method and an apparatus using the method for improving the error floor of LDPC (Low Density Parity Check) codes.

상기와 같은 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 LDPC 부호화 방법은 a) 부호화 대상인 데이터에 대하여 LDPC(Low Density Parity Check) 부호화를 수행하는 단계 및 (b) 상기 LDPC 부호화가 수행된 코드 워드의 특정 비트에 대해 추가적인(additional) 부호화를 수행하는 단계를 포함한다.In order to achieve the above object, the LDPC encoding method according to an embodiment of the present invention includes: a) performing LDPC (Low Density Parity Check) encoding on data to be encoded, and (b) performing the LDPC encoding. And performing additional encoding on specific bits of the code word.

본 발명의 일 측면에서, 상기 (b) 단계는 repetition, BCH(Bose-Chadhuri-Hocquenghem) 및 RS(Reed-Solomon) 부호화 중 하나 이상을 포함하는 부호화 방법을 이용하여 상기 추가적인 부호화를 수행한다.In one aspect of the present invention, in step (b), the additional encoding is performed using an encoding method including at least one of repetition, Bose-Chadhuri-Hocquenghem (BCH), and Reed-Solomon (RS) encoding.

또한, 본 발명의 일 측면에서, 상기 LDPC 부호화 방법은 (c) 상기 코드 워드에 천공(puncturing)을 수행하는 단계를 더 포함한다.In addition, in an aspect of the present invention, the LDPC encoding method further includes the step of (c) performing puncturing on the code word.

또한, 본 발명의 일 측면에서, 상기 (c) 단계는 상기 (b) 단계의 추가적인 부호화에 의해 부가되는 패러티 비트의 수에 대응하여 상기 천공을 수행할 비트의 수를 결정하는 단계를 포함한다.In addition, in one aspect of the present invention, step (c) includes determining the number of bits to be punctured in correspondence with the number of parity bits added by the additional encoding of step (b).

상기와 같은 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 LDPC 복호화 방법은 (a) 복호화 대상인 코드 워드(code word)에서, 미리 선택되어 추가적으로 부호화된 특정 비트에 대한 복호화를 수행하는 단계 및 (b) 상기 (a) 단계에서 복호화된 특정 비트에 대한 값을 이용하여 LDPC(Low Density Parity Check) 복호화를 수행하는 단계를 포함한다.In order to achieve the above object, the LDPC decoding method according to an embodiment of the present invention includes the steps of: (a) decoding a specific bit previously selected and additionally encoded from a code word to be decoded, and (b) performing LDPC (Low Density Parity Check) decoding by using the value for the specific bit decoded in step (a).

상기와 같은 목적을 달성하기 위해, 본 발명의 다른 실시예에 따른 LDPC 복호화 방법은 (a) 복호화 대상인 코드 워드(code word)에 대한 LDPC(Low Density Parity Check) 복호화를 수행하는 단계, (b) 상기 (a) 단계의 복호화가 실패하면, 상기 코드 워드에서, 미리 선택되어 추가적으로 부호화된 특정 비트에 대한 복호화를 수행하는 단계 및 (c) 상기 (b) 단계에서 복호화된 특정 비트에 대한 값을 이용하여 LDPC 복호화를 수행하는 단계를 포함한다.In order to achieve the above object, the LDPC decoding method according to another embodiment of the present invention includes the steps of: (a) performing LDPC (Low Density Parity Check) decoding on a code word to be decoded, (b) If the decoding in step (a) fails, decoding a specific bit previously selected and additionally encoded in the code word, and (c) using a value for the specific bit decoded in step (b) And performing LDPC decoding.

본 발명의 일 측면 또는 다른 측면에서, 상기 LDPC 복호화 방법은 상기 코드 워드에 천공(puncturing)된 비트가 존재하는 경우, 상기 천공된 비트를 LLR(Log Likelihood Ratio) 값이 0인 중립값으로 대체하여 복호화하는 단계를 더 포함한다.In one aspect or another aspect of the present invention, the LDPC decoding method, when a puncturing bit exists in the code word, replaces the punctured bit with a neutral value having a Log Likelihood Ratio (LLR) value of 0. It further includes the step of decoding.

본 발명의 일 측면에서, 상기 LDPC 복호화 방법은 (c) 상기 (b) 단계의 복호화가 실패하면, 상기 (a) 단계와 (b) 단계를 반복 수행하는 단계를 더 포함한다.In one aspect of the present invention, the LDPC decoding method further includes (c) repeating steps (a) and (b) when the decoding in step (b) fails.

본 발명의 일 측면 또는 다른 측면에서, 상기 LDPC 복호화 방법은 상기 추가적으로 부호화된 특정 비트에 대한 복호화 및 상기 LDPC 복호화에 대한 각 결과에 서로 다른 가중치를 반영한다.In one aspect or another aspect of the present invention, the LDPC decoding method reflects different weights in the decoding of the additionally coded specific bit and each result of the LDPC decoding.

상기와 같은 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 LDPC 부호화 장치는, 부호화 대상인 데이터에 대하여 LDPC(Low Density Parity Check) 부호화를 수행하는 LDPC 부호화부 및 상기 LDPC 부호화가 수행된 코드 워드의 특정 비트에 대해 추가적인(additional) 부호화를 수행하는 추가 부호화부를 포함한다.In order to achieve the above object, an LDPC encoding apparatus according to an embodiment of the present invention includes an LDPC encoding unit that performs Low Density Parity Check (LDPC) encoding on data to be encoded, and a code word on which the LDPC encoding is performed. It includes an additional encoding unit that performs additional encoding on a specific bit of.

본 발명의 일 측면에서, 상기 추가 부호화부는 repetition, BCH(Bose-Chadhuri-Hocquenghem) 및 RS(Reed-Solomon) 부호화 중 하나 이상을 포함하는 부호화 방법을 이용하여 상기 추가적인 부호화를 수행한다.In one aspect of the present invention, the additional encoding unit performs the additional encoding using an encoding method including at least one of repetition, Bose-Chadhuri-Hocquenghem (BCH), and Reed-Solomon (RS) encoding.

본 발명의 일 측면에서, 상기 LDPC 부호화 장치는 상기 코드 워드에 천공(puncturing)을 수행하는 천공부를 더 포함한다.In one aspect of the present invention, the LDPC encoding apparatus further includes a puncturing part for puncturing the code word.

본 발명의 일 측면에서, 상기 천공부는 상기 추가적인 부호화에 의해 부가되는 패러티 비트의 수에 대응하여 상기 천공을 수행할 비트의 수를 결정한다.In one aspect of the present invention, the puncturing unit determines the number of bits to be punctured corresponding to the number of parity bits added by the additional encoding.

상기와 같은 목적을 달성하기 위해, 본 발명의 일 실시예에 따른 LDPC 복호화 장치는, 복호화 대상인 코드 워드(code word)에서, 미리 선택되어 추가적으로 부호화된 특정 비트에 대한 복호화를 수행하는 추가 복호화부 및 상기 추가 복호화부에서 복호화된 특정 비트에 대한 값을 이용하여 LDPC(Low Density Parity Check) 복호화를 수행하는 LDPC 복호화부를 포함한다.In order to achieve the above object, the LDPC decoding apparatus according to an embodiment of the present invention includes an additional decoding unit for decoding a specific bit previously selected and additionally encoded from a code word to be decoded, and And an LDPC decoder for performing LDPC (Low Density Parity Check) decoding by using a value for a specific bit decoded by the additional decoder.

상기와 같은 목적을 달성하기 위해, 본 발명의 다른 실시예에 따른 LDPC 복호화 장치는, 복호화 대상인 코드 워드(code word)에 대한 LDPC(Low Density Parity Check) 복호화를 수행하는 LDPC 복호화부 및 상기 LDPC 복호화부의 복호화가 실패하면, 상기 코드 워드에서, 미리 선택되어 추가적으로 부호화된 특정 비트에 대한 복호화를 수행하는 추가 복호화부를 포함하되, 상기 LDPC 복호화부는 상기 추가 복호화부에서 복호화된 특정 비트에 대한 값을 이용하여 LDPC 복호화를 수행한다.In order to achieve the above object, an LDPC decoding apparatus according to another embodiment of the present invention includes an LDPC decoding unit performing LDPC (Low Density Parity Check) decoding on a code word to be decoded, and the LDPC decoding. When the negative decoding fails, the code word includes an additional decoding unit that decodes a specific bit previously selected and additionally encoded, wherein the LDPC decoding unit uses a value for a specific bit decoded by the additional decoding unit. LDPC decoding is performed.

본 발명의 일 측면 또는 다른 측면에서 상기 추가 복호화부는 코드 워드에 천공(puncturing)된 비트가 존재하는 경우, 상기 천공된 비트를 LLR(Log Likelihood Ratio) 값이 0인 중립값으로 대체하여 복호화한다.In one aspect or another aspect of the present invention, when there is a puncturing bit in a code word, the additional decoding unit decodes the punctured bit by replacing the punctured bit with a neutral value having a log likelihood ratio (LLR) of 0.

본 발명의 일 측면 또는 다른 측면에서 상기 LDPC 복호화부 및 추가 복호화부는 상기 수행된 각 복호화의 결과에 서로 다른 가중치를 반영한다.In one aspect or another aspect of the present invention, the LDPC decoding unit and the additional decoding unit reflect different weights in the result of each of the performed decoding.

본 발명의 일 실시예에 따르면, 전송율 손실을 최소화하면서도 오류 마루 현상을 개선하여 시스템 성능을 보장할 수 있다.According to an embodiment of the present invention, system performance can be guaranteed by minimizing a transmission rate loss and improving an error floor phenomenon.

또한, 실시간 고속 데이터 전송이 요구되는 통신 시스템 및 높은 정보 저장 집적도가 요구되는 저장 장치의 오류 정정 부호에 활용할 수 있다.In addition, it can be used for error correction codes of communication systems requiring real-time high-speed data transmission and storage devices requiring high information storage integration.

본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.The effects of the present invention are not limited to the above effects, and should be understood to include all effects that can be inferred from the configuration of the invention described in the detailed description or claims of the present invention.

도 1은 본 발명의 일 실시예에 따른 LDPC 부호화 장치의 구성을 도시한 도면이다.
도 2a는 본 발명의 다른 실시예에 따른 LDPC 복호화 장치의 구성을 도시한 도면이다.
도 2b는 본 발명의 실시예에 따른 추가적인 복호화를 적용하는 위치를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 LDPC 부호화 과정을 도시한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.
도 7 내지 도 9는 본 발명의 실시예에 따른 오류 마루 개선 결과를 그래프로 나타낸 도면이다.
1 is a diagram illustrating a configuration of an LDPC encoding apparatus according to an embodiment of the present invention.
2A is a diagram illustrating a configuration of an LDPC decoding apparatus according to another embodiment of the present invention.
2B is a diagram illustrating a location to which additional decoding is applied according to an embodiment of the present invention.
3 is a flowchart illustrating an LDPC encoding process according to an embodiment of the present invention.
4 is a flowchart illustrating an LDPC decoding process according to an embodiment of the present invention.
5 is a flowchart illustrating an LDPC decoding process according to another embodiment of the present invention.
6 is a flowchart illustrating an LDPC decoding process according to another embodiment of the present invention.
7 to 9 are graphs showing a result of improving an error floor according to an embodiment of the present invention.

이하에서는 첨부한 도면을 참조하여 본 발명을 설명하기로 한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 따라서 여기에서 설명하는 실시예로 한정되는 것은 아니다.Hereinafter, the present invention will be described with reference to the accompanying drawings. However, the present invention may be implemented in various different forms, and therefore is not limited to the embodiments described herein.

그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are assigned to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 부재를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다.Throughout the specification, when a part is said to be "connected" to another part, this includes not only "directly connected" but also "indirectly connected" with another member interposed therebetween. .

또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 구비할 수 있다는 것을 의미한다.In addition, when a part "includes" a certain component, it means that other components may be further provided, rather than excluding other components unless specifically stated to the contrary.

이하 첨부된 도면을 참고하여 본 발명의 실시예를 상세히 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 LDPC 부호화 장치의 구성을 도시한 도면이다.1 is a diagram illustrating a configuration of an LDPC encoding apparatus according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 LDPC(Low Density Parity Check) 부호화 장치(100)는 LDPC 부호화부(110), 추가 부호화부(120), 천공(puncturing)부(130) 및 코드 워드 제공부(140)를 포함할 수 있다.The LDPC (Low Density Parity Check) encoding apparatus 100 according to an embodiment of the present invention includes an LDPC encoding unit 110, an additional encoding unit 120, a puncturing unit 130, and a code word providing unit 140. ) Can be included.

참고로, 도 1에 도시된 LDPC 부호화 장치(100)는 실시간 고속 데이터 전송이 요구되는 통신 시스템(이하, '통신 시스템'이라 칭함)의 경우 송신단에 포함될 수 있으며, 높은 정보 저장 집적도가 요구되는 저장 장치(이하, '저장 장치'라 칭함)의 경우는 부호화부에 포함될 수 있다.For reference, the LDPC encoding apparatus 100 shown in FIG. 1 may be included in the transmitting end in the case of a communication system requiring real-time high-speed data transmission (hereinafter, referred to as a'communication system'), and a storage device requiring high information storage density. A device (hereinafter referred to as a'storage device') may be included in the encoding unit.

각 구성 요소를 설명하면, LDPC 부호화부(110)는 부호화 대상인 데이터에 대하여 LDPC부호화를 수행할 수 있으며, 이때 패러티 비트(parity bit)를 생성하여 부호화가 수행된 코드 워드에 포함시킬 수 있다.In describing each component, the LDPC encoder 110 may perform LDPC encoding on data to be encoded, and in this case, a parity bit may be generated and included in the encoded code word.

이하에서는, LDPC 부호화 시 생성된 패러티 비트를 '제 1 패러티 비트'라 칭하도록 한다.Hereinafter, a parity bit generated during LDPC encoding is referred to as a'first parity bit'.

한편, 추가 부호화부(120)는 LDPC 부호화가 수행된 코드 워드의 특정 비트에 대해 추가적인(additional) 부호화를 수행할 수 있다.Meanwhile, the additional encoder 120 may perform additional encoding on a specific bit of a code word on which LDPC encoding has been performed.

여기서, 상기 특정 비트는 트래핑 셋(trapping-set) 분석 결과에 따라 미리 선택될 수 있으며, 추가 부호화부(120)는 통신 시스템의 수신단 또는 저장 장치의 복호화부에서 상기 특정 비트를 복호화 시, 보다 정확한 복원이 가능하도록 추가적인 부호화를 수행(예를 들어, 코드 워드에 상기 특정 비트에 대한 패러티 비트를 추가하는 등)할 수 있다.Here, the specific bit may be selected in advance according to a trapping-set analysis result, and the additional encoding unit 120 is more accurate when decoding the specific bit at the receiving end of the communication system or the decoding unit of the storage device. Additional encoding may be performed to enable restoration (eg, adding a parity bit for the specific bit to a code word).

이때, 추가 부호화부(120)는 repetition, BCH(Bose-Chadhuri-Hocquenghem) code 및 RS(Reed-Solomon) 부호화 중 하나 이상을 포함하는 부호화 방법을 이용하여 상기 추가적인 부호화를 수행할 수 있다.In this case, the additional encoding unit 120 may perform the additional encoding using an encoding method including one or more of repetition, Bose-Chadhuri-Hocquenghem (BCH) code, and Reed-Solomon (RS) encoding.

이하에서는, 상기 특정 비트의 복원 정확도를 높이기 위해서 추가 부호화부(120)의 추가적인 부호화를 통해 코드 워드에 추가되는 비트를 '제 2 패러티 비트'라 칭하도록 한다.Hereinafter, in order to increase the reconstruction accuracy of the specific bit, a bit added to the code word through additional encoding by the additional encoder 120 is referred to as a'second parity bit'.

참고로, 추가적인 부호화를 위해, 트래핑 셋 분석 결과에 따라 미리 선택된 특정 비트는 송신단과 수신단의 미리 정한 약속에 따라 선택될 수 있으며, LDPC 부호화 장치(100)는 아래의 방법으로 한번에 하나 이상(j개)의 특정 비트를 선택할 수 있다.For reference, for additional encoding, a specific bit selected in advance according to the trapping set analysis result may be selected according to a predetermined appointment between the transmitting end and the receiving end, and the LDPC encoding apparatus 100 uses one or more (j pieces) at a time in the following manner. ) Can be selected.

한번에 하나 이상(j개)의 특정 비트를 선택하는 첫번째 방법으로, LDPC 부호화 장치(100)는 모의 실험을 통해 오류 마루 영역에서 부호어 비트 위치 별 오류 수에 대한 히스토그램을 구한다(1).As a first method of selecting one or more (j) specific bits at a time, the LDPC encoding apparatus 100 obtains a histogram of the number of errors for each codeword bit position in the error floor area through a simulation (1).

이후, LDPC 부호화 장치(100)는 트래핑 셋의 구조를 파악하여 서로 다른 트래핑 셋에서 오류가 가장 많이 발생한 비트를 선택한다(각 트래핑 셋 당 1 비트씩 총 j개 선택)(1-1).Thereafter, the LDPC encoding apparatus 100 determines the structure of the trapping set and selects the bit in which the error occurs most in the different trapping sets (a total of j bits are selected for each trapping set) (1-1).

첫번째 비트 선택 방법의 다른 예로서, LDPC 부호화 장치(100)는 모의 실험을 통해 오류 마루 영역에서 부호어 비트 위치 별 오류 수에 대한 히스토그램을 구한다(1).As another example of the first bit selection method, the LDPC encoding apparatus 100 obtains a histogram of the number of errors for each codeword bit position in the error floor area through a simulation (1).

이후, LDPC 부호화 장치(100)는 오류가 가장 많이 발생한 j개 비트를 선택할 수 있다(1-2).Thereafter, the LDPC encoding apparatus 100 may select j bits in which the error occurs the most (1-2).

한번에 하나 이상(j개)의 특정 비트를 선택하는 두번째 비트 선택 방법으로, LDPC 부호화 장치(100)는 모의 실험을 통해 오류 마루 영역에서 부호어 비트 위치 별 오류 수에 대한 히스토그램을 구한다(2-1).As a second bit selection method for selecting one or more (j) specific bits at a time, the LDPC encoding apparatus 100 obtains a histogram of the number of errors for each codeword bit position in the error ridge region through a simulation (2-1). ).

이후, LDPC 부호화 장치(100)는 오류가 가장 많이 발생한 하나의 비트를 선택한다(2-2).Thereafter, the LDPC encoding apparatus 100 selects one bit with the most error (2-2).

이후, LDPC 부호화 장치(100)는 선택된 비트에 known value(0 또는 1)를 넣어 부호어를 만들어 복호를 수행하는 모의 실험을 하여 부호어 비트 위치별 오류 수에 대한 히스토그램을 다시 구한다(2-3).Thereafter, the LDPC encoding apparatus 100 obtains a histogram of the number of errors for each codeword bit position by performing a simulation of decoding by creating a codeword by putting a known value (0 or 1) in the selected bit (2-3). ).

이후, LDPC 부호화 장치(100)는 j개의 비트가 선택될까지 2-2 및 2-3 과정을 반복한다(2-4).Thereafter, the LDPC encoding apparatus 100 repeats the processes 2-2 and 2-3 until j bits are selected (2-4).

한번에 하나 이상(j개)의 특정 비트를 선택하는 세번째 비트 선택 방법으로, LDPC 부호화 장치(100)는 모의 실험을 통해 오류 마루 영역에서 부호어 비트 위치별 오류 수에 대한 히스토그램을 구하고, 오류 마루에 큰 영향을 미치는 트래핑 셋 구조를 파악한다(3-1).As a third bit selection method for selecting one or more (j) specific bits at a time, the LDPC encoding apparatus 100 obtains a histogram of the number of errors for each codeword bit position in the error floor area through simulation, and Identify the trapping set structure that has a big impact (3-1).

이후, LDPC 부호화 장치(100)는 오류가 가장 큰 비트가 포함된 모든 트래핑 셋 중에서 오류 마루에 영향을 주는 트래핑 셋을 파악하여 그를 구성하는 비트 모두를 선택한다(3-2).Thereafter, the LDPC encoding apparatus 100 identifies a trapping set that affects the error floor among all the trapping sets including the bit having the largest error, and selects all of the bits constituting it (3-2).

이후, LDPC 부호화 장치(100)는 만일 선택된 비트 수가 j보다 작으면, 선택되지 않은 비트들 중에서 오류수가 가장 큰 비트를 선택하여 3-2 단계와 유사하게 비트를 선택한다(3-3).Thereafter, if the number of selected bits is less than j, the LDPC encoding apparatus 100 selects a bit with the largest error number from among unselected bits and selects a bit similar to step 3-2 (3-3).

이후, LDPC 부호화 장치(100)는 j 비트가 선택될 때까지 3-3 단계를 반복한다(3-4).Thereafter, the LDPC encoding apparatus 100 repeats steps 3-3 until j bits are selected (3-4).

만일 선택된 비트 수가 j보다 크다면, LDPC 부호화 장치(100)는 제일 마지막 단계에서 선택된 비트 중에서 상대적으로 오류 수가 큰 j개를 고르거나, 트래핑 셋 단위로 비트를 고르는 등의 방법을 적용할 수 있다.If the number of selected bits is greater than j, the LDPC encoding apparatus 100 may apply a method of selecting j with a relatively large number of errors among the bits selected in the last step, or selecting bits in units of a trapping set.

여기서, 세번째 방법은 첫번째 방법과 두번재 방법과는 다르게 트래핑 셋 단위로 비트를 선택할 수 있으므로, 작은 트래핑 셋의 경우 그 트레핑 세트를 완전히 제거 할 수 있다.Here, in the third method, different from the first method and the second method, bits can be selected in units of a trapping set, so in the case of a small trapping set, the trapping set can be completely removed.

참고로, 일반적으로 높은 SNR 영역에서 오류 마루에 악 영향을 주는 주요 트래핑 셋의 사이즈는 상대적으로 작은 편이다.For reference, in general, the size of the main trapping set that adversely affects the error floor in the high SNR region is relatively small.

몇 개의 비트를 선택할 지는 원하는 시스템 성능과 복잡도에 따라 다양하게 정할 수 있다.The number of bits to choose can vary depending on the desired system performance and complexity.

예를 들어, 복잡도를 크게 고려하지 않아도 되는 경우에는 보다 많은 비트를 선택 할수록 좋은 오류 마루 성능을 얻게 될 것이며, 시스템 복잡도가 주요 고려 대상이라면, 원하는 성능을 얻을 수 있는 최적의 비트 수를 다양한 방법으로 정할 수 있다.For example, if you do not need to consider complexity, the more bits you select, the better the error floor performance will be. If system complexity is the main consideration, the optimal number of bits to obtain the desired performance can be determined in various ways. Can be decided.

한편, 천공(puncturing)부(130)는 정보 비트(information bit)의 부호율을 유지하기 위해서, 코드 워드의 비트에 천공을 수행할 수 있으며, 천공이 수행되는 비트는 미리 선택될 수 있다.Meanwhile, the puncturing unit 130 may puncture the bit of the code word in order to maintain the code rate of the information bit, and the bit on which puncturing is performed may be selected in advance.

이때 천공부(130)는 추가적인 부호화가 수행된 제 2 패러티 비트의 수에 대응하여 천공을 수행할 비트의 수를 결정할 수 있다.In this case, the puncturing unit 130 may determine the number of bits to be punctured corresponding to the number of second parity bits for which additional encoding has been performed.

참고로, 천공부(130)는 아래의 기준에 의해 천공되는 비트를 선택할 수 있다.For reference, the perforation unit 130 may select a bit to be perforated according to the following criteria.

1. 천공되는 비트는 천공되는 비트에 의한 성능 열화가 최소화되도록 선택한다.1. The perforated bit is selected so that performance degradation by the perforated bit is minimized.

2. 천공되는 비트는 오류 마루에 영향을 미치는 주요 트래핑 셋에 포함된 비트를 피해서 선택한다.2. The bits to be punctured are selected, avoiding the bits included in the main trapping set that affect the error floor.

3. 천공되는 비트는 천공되는 비트에 의해 짧은 길이의 트래핑 셋이 생성되지 않도록 선택한다.3. The perforated bit is selected so that a short length trapping set is not created by the perforated bit.

4. 천공되는 비트는 가능한 규칙적인 간격(등간격)을 유지하도록 선택한다(특히, dual diagonal 형태로 패러티 비트가 생성되는 부호의 경우).4. Select the punctured bits to keep as regular intervals (equal intervals) as possible (especially in the case of codes where parity bits are generated in a dual diagonal form).

참고로, 천공의 대상인 특정 비트는 수신단에서 복호 시 LLR(Log Likelihood Ratio) 값이 0인 중립값으로 대체되어 복호화될 수 있으며, 이로 인해 복호 수렴 속도가 저하(복호화를 반복하여 여러 번 수행)되는 경우, 체크 노드 머징(check node merging) 방법을 적용할 수 있다.For reference, a specific bit that is the target of puncture can be decoded by being replaced with a neutral value with a Log Likelihood Ratio (LLR) value of 0 when decoding at the receiving end, which reduces the decoding convergence speed (decryption is repeated several times). In this case, a check node merging method may be applied.

한편, 코드 워드(code word) 제공부(140)는 LDPC 부호화부(110)에 의해 생성된 제 1 패러티 비트와, 추가 부호화부(120)에 의해 추가된 제 2 패러티 비트 및 천공부(130)에 의해 천공된 비트 중 하나 이상을 포함하여 부호화된 코드 워드를 특정 저장소에 저장하거나 임의의 통신 수단 또는 통신 채널을 통해 특정 매체(수신단, 복호화 장치)로 전송할 수 있다.Meanwhile, the code word providing unit 140 includes a first parity bit generated by the LDPC encoding unit 110, a second parity bit added by the additional encoding unit 120, and a puncturing unit 130. The code word encoded by including one or more of the bits punctured by may be stored in a specific storage or transmitted to a specific medium (receiver, decoding device) through an arbitrary communication means or communication channel.

도 2a는 본 발명의 다른 실시예에 따른 LDPC 복호화 장치의 구성을 도시한 도면이다.2A is a diagram illustrating a configuration of an LDPC decoding apparatus according to another embodiment of the present invention.

본 발명의 다른 실시예에 따른 LDPC 복호화 장치(200)는 추가 복호화부(additional decoder)(210) 및 LDPC 복호화부(LDPC decoder)(220)를 포함할 수 있다.The LDPC decoding apparatus 200 according to another embodiment of the present invention may include an additional decoder 210 and an LDPC decoder 220.

참고로, 도 2a에 도시된 LDPC 복호화 장치(200)는 통신 시스템의 경우 수신단에 포함될 수 있으며, 저장 장치의 경우는 복호화부에 포함될 수 있다.For reference, the LDPC decoding apparatus 200 shown in FIG. 2A may be included in a receiving end in the case of a communication system, and may be included in a decoding unit in the case of a storage device.

각 구성 요소를 설명하면, 추가 복호화부(210)는 통신 시스템의 전송단 또는 저장 장치의 부호화부로부터 코드 워드가 수신되면, 수신된 코드 워드에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행할 수 있다.In describing each component, when a code word is received from a transmission end of a communication system or an encoding unit of a storage device, the additional decoding unit 210 refers to a second parity bit included in the received code word, Decryption can be performed.

여기서, 제 2 패러티 비트는 통신 시스템의 송신단 또는 저장 장치의 부호화부에서 트래핑 셋 분석 결과에 따라 미리 선택된 특정 비트에 대해 추가적으로 부호화된 값이며, 추가 복호화부(210)는 제 2 패러티 비트를 참조하여 해당되는 특정 비트를 보다 정확히 복원할 수 있다.Here, the second parity bit is a value additionally encoded for a specific bit selected in advance according to the trapping set analysis result by the transmitting end of the communication system or the encoding unit of the storage device, and the additional decoding unit 210 refers to the second parity bit. The corresponding specific bit can be more accurately restored.

또한, 추가 복호화부(210)는 후술하는 LDPC 복호화부(220)에서 코드 워드에 대한 복호화가 실패하는 경우, 코드 워드에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행하고, 복호화가 수행된 특정 비트에 대한 보다 정확한 값을 LDPC 복호화부(220)로 전송할 수 있다.In addition, when the decoding of the code word in the LDPC decoder 220 to be described later fails, the additional decoding unit 210 performs decoding on a specific bit by referring to the second parity bit included in the code word, and decodes A more accurate value for a specific bit on which is performed may be transmitted to the LDPC decoder 220.

참고로, 추가 복호화부(210)는 코드 워드에 천공된 비트가 존재하는 경우, 천공된 비트를 LLR 값이 0인 중립값으로 대체하여 복호화할 수 있다.For reference, when there is a punctured bit in a code word, the additional decoding unit 210 may decode the punctured bit by replacing the punctured bit with a neutral value having an LLR value of 0.

따라서, 추가 복호화부(210)가 복호를 수행하는 시점은 LDPC 복호화부(220)가 코드 워드에 대한 LDPC 복호화를 수행하기 전 또는 LDPC 복호화부(220)가 코드 워드에 대한 LDPC 복호화를 수행하여 복호화에 실패한 경우일 수 있다.Therefore, the time when the additional decoding unit 210 performs decoding is before the LDPC decoding unit 220 performs LDPC decoding on the code word or the LDPC decoding unit 220 performs LDPC decoding on the code word to decode It may be a case of failure.

한편, LDPC 복호화부(220)는 통신 시스템의 전송단 또는 저장 장치의 부호화부로부터 코드 워드가 수신되면, 수신된 코드 워드에 포함된 제 1 패러티 비트를 참조하여 코드 워드에 대한 LDPC 복호화를 수행할 수 있다.Meanwhile, when a code word is received from a transmission end of a communication system or an encoder of a storage device, the LDPC decoding unit 220 performs LDPC decoding on the code word by referring to the first parity bit included in the received code word. I can.

만일, 코드 워드에 대한 LDPC 복호화가 실패한 경우, LDPC 복호화부(220)는 추가 복호화부(210)로부터 수신된 특정 비트에 대한 복원 값(즉, 제 2 패러티 비트를 참조하여 복호화한 값)을 참조하여 LDPC 복호화를 수행할 수 있다.If LDPC decoding for a code word fails, the LDPC decoding unit 220 refers to a restoration value for a specific bit received from the additional decoding unit 210 (ie, a value decoded with reference to the second parity bit). Thus, LDPC decoding can be performed.

따라서, LDPC 복호화부(220)의 복호화 시점은 통신 시스템의 전송단 또는 저장 장치의 부호화부로부터 코드 워드(LLR 값)를 수신한 후 또는 추가 복호화부(210)가 통신 시스템의 전송단 또는 저장 장치의 부호화부로부터 수신한 코드 워드(수신된 LLR 값)에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 우선 수행한 후일 수 있다.Therefore, the decoding time of the LDPC decoding unit 220 is after receiving the code word (LLR value) from the transmitting end of the communication system or the encoding unit of the storage device, or the additional decoding unit 210 is the transmitting end or the storage device of the communication system. It may be after first decoding a specific bit by referring to the second parity bit included in the code word (received LLR value) received from the encoder of.

도 2b는 본 발명의 실시예에 따른 추가적인 복호화를 적용하는 위치를 도시한 도면이다.2B is a diagram illustrating a location to which additional decoding is applied according to an embodiment of the present invention.

도 2b에 도시된 바와 같이, 채널로부터 수신되어 LDPC 복호화부(220)의 입력단으로 들어가는 값에 추가적인 복호화를 적용할 수 있고(a), LDPC 복호화부(220)의 출력단에서 출력된 decoded LLR 값에 추가적인 복호화를 적용할 수 있으며(b), 일례로 decoded LLR값과 추가적인 복호화를 통해 얻어진 값을 소정의 가중치를 두어 결합할 수 있다.As shown in FIG. 2B, additional decoding may be applied to a value received from the channel and input to the input terminal of the LDPC decoder 220 (a), and the decoded LLR value outputted from the output terminal of the LDPC decoder 220 Additional decoding can be applied (b), and as an example, a decoded LLR value and a value obtained through additional decoding can be combined with a predetermined weight.

도 3은 본 발명의 일 실시예에 따른 LDPC 부호화 과정을 도시한 흐름도이다.3 is a flowchart illustrating an LDPC encoding process according to an embodiment of the present invention.

참고로, 도 3에 도시된 LDPC 부호화 과정은 도 1에 도시된 LDPC 부호화 장치(100), 즉, 통신 시스템의 경우 송신단 또는 저장 장치의 경우 부호화부에 의해 수행될 수 있다.For reference, the LDPC encoding process illustrated in FIG. 3 may be performed by the LDPC encoding apparatus 100 illustrated in FIG. 1, that is, a transmitting end in the case of a communication system or an encoding unit in the case of a storage device.

먼저, LDPC 부호화 장치(100)는 부호화 대상인 데이터에 대하여 LDPC 부호화를 수행한다(S301).First, the LDPC encoding apparatus 100 performs LDPC encoding on data to be encoded (S301).

이때, LDPC 부호화 장치(100)는 제 1 패러티 비트를 생성할 수 있다.In this case, the LDPC encoding apparatus 100 may generate the first parity bit.

S301 후, LDPC 부호화 장치(100)는 LDPC 부호화가 수행된 코드 워드의 특정 비트에 대해 추가적인 부호화를 수행(제 2 패러티 비트 추가)한다(S302).After S301, the LDPC encoding apparatus 100 performs additional encoding (adding a second parity bit) on a specific bit of a code word on which LDPC encoding has been performed (S302).

이때, LDPC 부호화 장치(100)는repetition, BCH(Bose-Chadhuri-Hocquenghem) 및 RS(Reed-Solomon) 부호화 중 하나 이상을 포함하는 부호화 방법을 이용하여 추가적인 부호화를 수행할 수 있다.In this case, the LDPC encoding apparatus 100 may perform additional encoding using an encoding method including at least one of repetition, Bose-Chadhuri-Hocquenghem (BCH), and Reed-Solomon (RS) encoding.

S302 후, LDPC 부호화 장치(100)는 정보 비트의 부호율을 유지하기 위해, 코드 워드의 비트를 천공한다(S303).After S302, the LDPC encoding apparatus 100 punctures the bits of the code word in order to maintain the code rate of the information bits (S303).

이때, LDPC 부호화 장치(100)는 S302에서 추가된 제 2 패러티 비트의 수에 대응하여 상기 천공을 수행할 비트의 수를 결정할 수 있다.In this case, the LDPC encoding apparatus 100 may determine the number of bits to be punctured in response to the number of second parity bits added in S302.

S303 후, LDPC 부호화 장치(100)는 S301에서 생성된 제 1 패러티 비트와 S302에서 추가된 제 2 패러티 비트 및 S303에서 천공된 비트 중 하나 이상을 포함하는 코드 워드를 통신 시스템의 수신단 또는 저장 장치의 복호화부로 전송한다(S304).After S303, the LDPC encoding apparatus 100 transmits a code word including at least one of the first parity bit generated in S301, the second parity bit added in S302, and the punctured bit in S303 to the receiving end of the communication system or the storage device. It is transmitted to the decoding unit (S304).

이하, 도 4 내지 도 6을 참조하여 본 발명의 LDPC 복호화 과정을 설명하도록 한다.Hereinafter, the LDPC decoding process of the present invention will be described with reference to FIGS. 4 to 6.

참고로, 도 4 내지 도 6에 도시된 LDPC 복호화 과정은 도 2에 도시된 LDPC 복호화 장치(200), 즉, 통신 시스템의 경우 수신단 또는 저장 장치의 경우 복호화부에 의해 수행될 수 있으며, LDPC 복호화 수행 시점을 기준으로 1. pre-processing, 2. post-processing 및 3. hybrid-processing 방법으로 구분될 수 있다.For reference, the LDPC decoding process shown in FIGS. 4 to 6 may be performed by the LDPC decoding apparatus 200 shown in FIG. 2, that is, a receiver in the case of a communication system or a decoder in the case of a storage device, and LDPC decoding Based on the execution time, it can be classified into 1. pre-processing, 2. post-processing, and 3. hybrid-processing methods.

도 4는 본 발명의 일 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.4 is a flowchart illustrating an LDPC decoding process according to an embodiment of the present invention.

도 4는 통신 시스템의 경우 송신단 또는 저장 장치의 경우 부호화부로부터 수신된 코드 워드(수신된 LLR 값)에 포함된 제 2 패러티 비트를 참조하여 특정 비트를 우선적으로 복호화하는 경우로서 1. pre-processing에 해당될 수 있다.4 is a case in which a specific bit is preferentially decoded by referring to a second parity bit included in a code word (received LLR value) received from a code word (received LLR value) received from a transmitting end or a storage device in the case of a communication system. 1. Pre-processing It may correspond to.

먼저, LDPC 복호화 장치(200)는 복호화 대상인 코드 워드(수신된 LLR 값)에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행한다(S401).First, the LDPC decoding apparatus 200 performs decoding on a specific bit by referring to a second parity bit included in a code word (received LLR value) to be decoded (S401).

이때, 코드 워드에 천공(puncturing)된 비트가 존재하는 경우, LDPC 복호화 장치(200)는 천공된 비트를 LLR(Log Likelihood Ratio) 값이 0인 중립값으로 대체하여 복호화할 수 있다.In this case, when a puncturing bit exists in the code word, the LDPC decoding apparatus 200 may decode the punctured bit by replacing the punctured bit with a neutral value having a log likelihood ratio (LLR) of 0.

또한, LDPC 복호화 장치(200)는 S401에서 복호화된 특정 비트의 값에 가중치를 반영함으로써, 코드 워드 복호화 시 상기 특정 비트에 대해서는 S401에서 복호화된 값이 기존의 수신된 LLR 값 보다 더 높은 신뢰도를 가지도록 할 수 있다.In addition, the LDPC decoding apparatus 200 reflects the weight to the value of the specific bit decoded in S401, so that the value decoded in S401 has a higher reliability than the existing received LLR value for the specific bit when decoding the code word. Can be done.

참고로, 코드 워드 복화 시 연판정(soft decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과를 수신된 LLR 값과 결합하여 새로운 수신 값을 얻을 수 있으며, 상기 새로운 수신값이 기존의 수신된 LLR 값보다 더 높은 신뢰도를 가지도록 할 수 있다.For reference, in the case of using a soft decision when decoding a code word, the LDPC decoding apparatus 200 may obtain a new received value by combining the result of applying additional decoding on the specific bit with the received LLR value. , The new received value may have a higher reliability than the existing received LLR value.

만일, 코드 워드 복호화 시 경판정(hard decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과로 해당 위치의 수신 값을 변경할 수도 있다.If a hard decision is used when decoding a code word, the LDPC decoding apparatus 200 may change a received value of a corresponding position as a result of applying additional decoding to the specific bit.

S401 후, LDPC 복호화 장치(200)는 S401에서 복호화된 특정 비트 값과 제 1 패러티 비트를 참조하여 LDPC 복호화를 수행할 수 있다(S402).After S401, the LDPC decoding apparatus 200 may perform LDPC decoding by referring to the specific bit value decoded in S401 and the first parity bit (S402).

도 5는 본 발명의 다른 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.5 is a flowchart illustrating an LDPC decoding process according to another embodiment of the present invention.

도 5는 통신 시스템의 경우 송신단 또는 저장 장치의 경우 부호화부로부터 수신된 코드 워드(수신된 LLR 값)에 대하여, 우선적으로 LDPC 복호화를 수행하는 경우로서, 2. post-processing에 해당될 수 있다.5 is a case in which LDPC decoding is preferentially performed on a code word (received LLR value) received from an encoding unit in the case of a transmission end or a storage device in the case of a communication system, and may correspond to 2. post-processing.

먼저, LDPC 복호화 장치(200)는 복호화 대상인 코드 워드(수신된 LLR 값)에 포함된 제 1 패러티 비트를 참조하여 코드 워드를 복호화한다(S501).First, the LDPC decoding apparatus 200 decodes a code word by referring to a first parity bit included in a code word to be decoded (a received LLR value) (S501).

S501에서 복호화가 실패하면, LDPC 복호화 장치(200)는 S501에서 복호화된 결과에 대하여 특정 가중치(이하, 'w1'이라 칭함)를 반영하고, 코드 워드에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행한다(S502).If the decoding fails in S501, the LDPC decoding apparatus 200 reflects a specific weight (hereinafter referred to as'w1') with respect to the result decoded in S501, and refers to the second parity bit included in the code word. Decryption is performed (S502).

이때, 코드 워드에 천공된 비트가 존재하는 경우, LDPC 복호화 장치(200)는 해당 천공된 비트를 LLR 값이 0인 중립값으로 대체하여 복호화를 수행할 수 있다.In this case, when a punctured bit exists in the code word, the LDPC decoding apparatus 200 may perform decoding by replacing the punctured bit with a neutral value having an LLR value of 0.

참고로, 코드 워드 복화 시 연판정(soft decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과를 수신된 LLR 값과 결합하여 새로운 수신 값을 얻을 수 있으며, 상기 새로운 수신값이 기존의 수신된 LLR 값보다 더 높은 신뢰도를 가지도록 할 수 있다.For reference, in the case of using a soft decision when decoding a code word, the LDPC decoding apparatus 200 may obtain a new received value by combining the result of applying additional decoding on the specific bit with the received LLR value. , The new received value may have a higher reliability than the existing received LLR value.

만일, 코드 워드 복호화 시 경판정(hard decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과로 해당 위치의 수신 값을 변경할 수도 있다.If a hard decision is used when decoding a code word, the LDPC decoding apparatus 200 may change a received value of a corresponding position as a result of applying additional decoding to the specific bit.

또한, LDPC 복호화 장치(200)는 S502에서 복호화된 결과에 대하여 특정 가중치(이하, 'w2'이라 칭함)를 반영하여 신뢰도를 조절할 수 있다.In addition, the LDPC decoding apparatus 200 may adjust the reliability by reflecting a specific weight (hereinafter, referred to as'w2') with respect to the decoded result in S502.

참고로, w2 값은 S501에서 복호화가 실패한 경우 반영되는 값이기 때문에, 복호화된 특정 비트의 값에 대한 신뢰도를 매우 크게 가져갈 수 있으며, w1의 경우 역시, 복호화를 반복하는 경우 w2의 값이 반영된 결과를 적용하여 복호화가 수행되므로, 복호화가 반복될수록 복호화 결과에 반영되는 값이 증가할 수 있다(그러나, w1 < w2 이다).For reference, since the w2 value is a value that is reflected when the decoding fails in S501, the reliability of the value of a specific decoded bit can be very high.In the case of w1, too, when the decoding is repeated, the value of w2 is reflected. Since decoding is performed by applying, the value reflected in the decoding result may increase as the decoding is repeated (however, w1 <w2).

결국, w1 및 w2는 복호화된 결과 값이 수신된 LLR 값 보다 더 높은 신뢰도를 가지도록 하기 위함이다.Consequently, w1 and w2 are intended to have a higher reliability than the received LLR value of the decoded result value.

S502 후, LDPC 복호화 장치(200)는 S502에서 복호화된 특정 비트에 대한 값과 제 1 패러티 비트를 참조하여 LDPC 복호화를 수행할 수 있다(S503).After S502, the LDPC decoding apparatus 200 may perform LDPC decoding by referring to the value of the specific bit decoded in S502 and the first parity bit (S503).

도 6은 본 발명의 다른 실시예에 따른 LDPC 복호화 과정을 도시한 흐름도이다.6 is a flowchart illustrating an LDPC decoding process according to another embodiment of the present invention.

참고로, 도 6에 도시된 LDPC 복호화 과정은 도 4 및 도 5의 과정을 혼합하여 수행되는 경우로서, 3. hybrid-processing에 해당될 수 있다.For reference, the LDPC decoding process shown in FIG. 6 is performed by mixing the processes of FIGS. 4 and 5, and may correspond to 3. hybrid-processing.

먼저, LDPC 복호화 장치(200)는 복호화 대상인 코드 워드(수신된 LLR 값)에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행한다(S601).First, the LDPC decoding apparatus 200 performs decoding on a specific bit by referring to the second parity bit included in a code word (received LLR value) to be decoded (S601).

이때, 코드 워드에 제 2 패러티 비트와 관련된 천공된 비트가 존재하는 경우, LDPC 복호화 장치(200)는 천공된 비트를 LLR 값이 0인 중립값으로 대체하여 복호화를 수행할 수 있다.In this case, when there is a punctured bit related to the second parity bit in the code word, the LDPC decoding apparatus 200 may perform decoding by replacing the punctured bit with a neutral value having an LLR value of 0.

또한, LDPC 복호화 장치(200)는 S601에서 복호화된 결과에 특정 가중치(이하, 'w1'이라 칭함)를 반영하여 복호화된 결과 값이 수신된 LLR 값 보다 더 높은 신뢰도를 가지도록 할 수 있다.In addition, the LDPC decoding apparatus 200 may reflect a specific weight (hereinafter, referred to as'w1') to the decoded result in S601 so that the decoded result value has a higher reliability than the received LLR value.

참고로, 코드 워드 복화 시 연판정(soft decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과를 수신된 LLR 값과 결합하여 새로운 수신 값을 얻을 수 있으며, 상기 새로운 수신값이 기존의 수신된 LLR 값보다 더 높은 신뢰도를 가지도록 할 수 있다.For reference, in the case of using a soft decision when decoding a code word, the LDPC decoding apparatus 200 may obtain a new received value by combining the result of applying additional decoding on the specific bit with the received LLR value. , The new received value may have a higher reliability than the existing received LLR value.

만일, 코드 워드 복호화 시 경판정(hard decision)을 사용하는 경우, LDPC 복호화 장치(200)는 상기 특정 비트에 대하여 추가적인 복호화가 적용된 결과로 해당 위치의 수신 값을 변경할 수도 있다.If a hard decision is used when decoding a code word, the LDPC decoding apparatus 200 may change a received value of a corresponding position as a result of applying additional decoding to the specific bit.

S601 후, LDPC 복호화 장치(200)는 S601에서 복호화된 특정 비트의 값과 코드 워드에 포함된 제 1 패러티 비트를 참조하여 LDPC 복호화를 수행한다(S602).After S601, the LDPC decoding apparatus 200 performs LDPC decoding by referring to the value of the specific bit decoded in S601 and the first parity bit included in the code word (S602).

S602에서 복호화가 실패하면, LDPC 복호화 장치(200)는S602에서 복호화된 결과에 특정 가중치(이하, 'w2'이라 칭함)를 반영하고, w2를 반영한 복호화 결과와 코드 워드에 포함된 제 2 패러티 비트를 참조하여 특정 비트에 대한 복호화를 수행한다(S603).If the decoding fails in S602, the LDPC decoding apparatus 200 reflects a specific weight (hereinafter referred to as'w2') to the decoded result in S602, and the decoding result reflecting w2 and the second parity bit included in the code word. With reference to, decoding is performed on a specific bit (S603).

이때, LDPC 복호화 장치(200)는 S603에서 복호화된 결과에 특정 가중치(이하, 'w3'이라 칭함)를 반영하여 S603에서 복호화된 결과 값이 수신된 LLR 값 보다 더 높은 신뢰도를 가지도록 할 수 있다.In this case, the LDPC decoding apparatus 200 may reflect a specific weight (hereinafter, referred to as'w3') to the result decoded in S603 so that the result value decoded in S603 has a higher reliability than the received LLR value. .

S603 후, LDPC 복호화 장치(200)는 S603에서 w3가 반영된 특정 비트에 대한 값과, 제 1 패러티 비트를 참조하여 LDPC 복호화를 수행한다(S604).After S603, the LDPC decoding apparatus 200 performs LDPC decoding by referring to a value for a specific bit to which w3 is reflected and a first parity bit in S603 (S604).

참고로, S604의 복호화 과정은, S603을 통해 복호화된 값을 이용하여 수행되는 것이므로, 단순히 채널로부터 수신된 LLR 값을 복호화하는 경우보다 상대적으로 높은 신뢰도를 가질 수 있으며, 보다 적은 반복 복호화로도 원하는 성능을 얻을 수 있다.For reference, since the decoding process of S604 is performed using the value decoded through S603, it can have a relatively higher reliability than the case of simply decoding the LLR value received from the channel, and even with fewer repetitive decoding, You can get performance.

S604에서 복호화가 실패하면, LDPC 복호화 장치(200)는 S603과 S604 과정을 반복 수행할 수 있다.If the decoding fails in S604, the LDPC decoding apparatus 200 may repeat the processes S603 and S604.

도 7 내지 도 9는 본 발명의 실시예에 따른 오류 마루 개선 결과를 그래프로 나타낸 도면이다.7 to 9 are graphs showing a result of improving an error floor according to an embodiment of the present invention.

참고로, 모의 실험 환경으로 부호율 1/2의 연접 지그재그 부호, 부호어 길이(n, k)=(1000, 500), BPSK(Binary Phase Shift Key) 변조, AWGN(Additive White Gaussian Noise) 채널, min-sum 알고리즘, floating point 시뮬레이션을 가정하였다.For reference, as a simulation environment, concatenated zigzag codes with a code rate of 1/2, codeword length (n, k) = (1000, 500), BPSK (Binary Phase Shift Key) modulation, AWGN (Additive White Gaussian Noise) channel, A min-sum algorithm and floating point simulation are assumed.

먼저, 도 7 및 도 8은 트래핑 셋 분석 결과에 따라 미리 선택된 특정 비트에 추가적으로 패러티 비트를 적용했을 때 시스템이 얻을 수 있는 최대 성능을 나타내는 그래프이다.First, FIGS. 7 and 8 are graphs showing the maximum performance that the system can obtain when a parity bit is additionally applied to a specific bit selected in advance according to a trapping set analysis result.

도 7 및 도 8은 선택된 비트의 개수에 따른 다양한 기법의 FER 성능 그래프를 나타내고 있으며, 여기서 선택된 각각의 비트는 서로 다른 트레핑 세트에서 1 비트씩 선택되었고, 선택된 3개의 비트는 351번 비트, 368번 비트 및 504번 비트이다7 and 8 show graphs of FER performance of various techniques according to the number of selected bits, where each selected bit is selected by 1 bit from a different trepping set, and the selected three bits are bit 351 and 368. Bit times and bit 504

도 7 및 도 8에서 original은 아무것도 적용하지 않은 원래 부호의 성능을 나타내며, known value는 부호화 단계에서 트레핑 세트 중 선택된 비트(참고로, 정보 비트 뿐만 아니라 패러티 비트도 선택될 수 있음)로서, 채널로 전송 전에 천공될 수 있고, 복호화단에서 선택된 비트의 부호에 따라 해당 비트의 LLR 값은 최대치(±∞)로 할당될 수 있다.In FIGS. 7 and 8, original indicates the performance of the original code to which nothing is applied, and the known value is a bit selected from the trepping set in the encoding step (for reference, not only the information bit but also the parity bit can be selected), the channel May be punctured prior to transmission, and the LLR value of the corresponding bit may be assigned a maximum value (±∞) according to the sign of the bit selected at the decoding stage.

복호화 기법의 적용 위치는 LDPC 복호화부(220) 입력 단의 수신 값에 적용하였고, 이때, 선택된 비트에 대한 추가적인 코딩 방법으로 repetition code를 선택하였으며, 부호에 사용된 반복(repetition) 횟수는 3회이다.The location of the decoding technique was applied to the received value of the input terminal of the LDPC decoder 220, and at this time, a repetition code was selected as an additional coding method for the selected bit, and the number of repetitions used for the code was 3 times. .

pre-processing 기법을 적용할 때에는 선택된 비트와 그와 관련된 3개의 비트의 수신 값을 soft combining하여 새로운 수신 값으로 결정하였으며, weight factor 는 1로 가정하였다.When applying the pre-processing technique, a new received value was determined by soft combining the received values of the selected bit and three related bits, and the weight factor was assumed to be 1.

post-processing 기법에서는 추가적인 코딩(트래핑 셋 분석 결과에 따라 미리 선택된 특정 비트에 대해 추가된 패러티 비트)으로 얻어진 3개의 비트에 대해서 soft decision majority decoding을 이용하여 선택된 비트를 복호하고 복호된 비트의 부호에 따라 해당 비트에 LLR 값을 할당하여 LDPC 복호화부(220)의 새로운 수신 값으로 결정하였다.In the post-processing technique, the selected bit is decoded using soft decision majority decoding for 3 bits obtained by additional coding (parity bits added for a specific bit previously selected according to the trapping set analysis result), and the code of the decoded bit is decoded. Accordingly, the LLR value is allocated to the corresponding bit to determine the new reception value of the LDPC decoder 220.

즉, 에디셔널 복호화부(210)의 출력을 마치 known bit처럼(에디셔널 복호화부(210)에 의해 복호된 신호의 신뢰도를 매우 크게 설정(w2=∞)) LDPC 복호화부(220)에 적용하였다.That is, the output of the additional decoding unit 210 is applied to the LDPC decoding unit 220 like a known bit (the reliability of the signal decoded by the additional decoding unit 210 is set very high (w2=∞)). .

또한, LDPC 복호화부(220)와 에디셔널 복호화부(210) 사이의 반복은 1회로 가정하였다(w1=0).In addition, it is assumed that the repetition between the LDPC decoding unit 220 and the additional decoding unit 210 is one (w1 = 0).

도 7에서 LDPC 복호화부(220)의 반복 복호를 위해 original, known, pre-processing 기법은 최대 반복 회수 50회를 적용하였고, post-processing은 기본 50회에 추가적인 30회를 적용하였다.In FIG. 7, for repetitive decoding of the LDPC decoder 220, the original, known, and pre-processing techniques applied a maximum number of repetitions of 50 times, and post-processing applied an additional 30 times to the basic 50 times.

즉, 최대 50회의 반복 복호에도 LDPC 복호화부(220)가 복호에 실패하면, post-processing을 통해 새롭게 구해진 값을 이용하여 추가적인 30회(최대 30회)의 반복 복호를 수행하였다.That is, if the LDPC decoding unit 220 fails to decode even after repetitive decoding up to 50 times, additional 30 times (up to 30 times) of repetitive decoding are performed using a value newly obtained through post-processing.

도 7에서 보듯이 선택된 특정 비트에 대해 단순한 반복 부호를 사용하고, 제안된 pre-processing과 post-processing기법을 적용하면 original에 비해 매우 우수한 오류 마루 개선 효과를 보임을 알 수 있다.As shown in FIG. 7, when a simple repetition code is used for a selected specific bit and the proposed pre-processing and post-processing techniques are applied, it can be seen that the error floor improvement effect is superior to that of the original.

또한, 선택된 특정 비트의 수가 많아질수록 성능 이득은 커지며, 총 3 비트를 선택하는 경우, FER = 3X10-4에서 약 0.6 dB 이득을 가질 수 있다.In addition, as the number of selected specific bits increases, the performance gain increases, and when a total of 3 bits are selected, a gain of about 0.6 dB may be obtained at FER = 3X10-4.

한편, 도 8은 post-processing 기법의 복호 복잡도와 동일한 복호 복잡도를 가정 했을 때의 FER 성능 그래프를 나타낸다.Meanwhile, FIG. 8 shows a graph of FER performance assuming the same decoding complexity as that of the post-processing technique.

즉, 모든 기법에 동일한 반복 복호 회수(최대 반복 회수=80)를 적용하여 FER 성능을 비교하였으며, 이 결과는 도 7의 그래프와 유사한 경향을 보임을 알 수 있다.That is, the FER performance was compared by applying the same number of iterations of decoding (maximum number of iterations = 80) to all techniques, and it can be seen that this result shows a similar trend to the graph of FIG. 7.

참고로, pre-processing 기법과 post-processing 기법을 결합한 하이브리드 기법(hybrid-processing)의 경우, 상기 모의 실험 환경에서는 post-processing 기법과 거의 유사한 성능을 보였다.For reference, the hybrid-processing technique that combines the pre-processing technique and the post-processing technique showed almost similar performance to the post-processing technique in the simulation environment.

하지만 같은 성능을 얻기 위해 복호에 사용되는 반복 횟수를 줄일 수도 있으며, 에디셔널 복호화부(210)에 서로 다른 복호 알고리즘을 사용할 경우 추가적인 성능 이득을 얻을 수도 있다.However, in order to obtain the same performance, the number of repetitions used for decoding may be reduced, and additional performance gains may be obtained when different decoding algorithms are used in the additional decoding unit 210.

한편, 도 9는 선택된 비트의 개수에 따른 post-processing 기법과 천공이 반영된 post-processing 기법의 FER 성능 그래프를 나타낸 도면이다.Meanwhile, FIG. 9 is a diagram showing an FER performance graph of a post-processing technique according to the number of selected bits and a post-processing technique in which puncturing is reflected.

known value 기법은 대략 (k-j)/(n-j)의 부호율을 가지며, pre-processing과 post-processing은 k/(n+jm)의 부호율을 갖는다.The known value technique has a code rate of approximately (k-j)/(n-j), and pre-processing and post-processing have a code rate of k/(n+jm).

따라서 낮은 부호율을 지원하는 부호를 사용할 때, 선택되는 비트(j)가 많아지거나, 추가적인 코딩에 사용하는 비트(jm)가 적으면 제안하는 기법의 전송 효율이 더 좋아질 수 있다.Therefore, when a code supporting a low code rate is used, if the number of bits j to be selected increases or the number of bits jm used for additional coding is small, the transmission efficiency of the proposed scheme may be improved.

또한 제안하는 기법에 추가적인 비트(jm)만큼 천공을 하게 되면 모 부호의 부호율 k/n을 지원할 수 있다In addition, if the proposed scheme is punctured by an additional bit (jm), the code rate k/n of the mother code can be supported.

이 경우 천공을 하지 않은 것과 비교하여 약간의 성능 열화를 가져올 수 있는데, 천공을 적용하여 모 부호의 부호율을 지원하는 경우의 성능 그래프는 도 9에 나타낸 바와 같다.In this case, performance may be slightly deteriorated compared to that without puncturing, and a performance graph when puncturing is applied to support the code rate of the mother code is as shown in FIG. 9.

천공되는 비트가 많아질수록 약간의 성능 저하가 생기지만, original에 비하면 같은 부호율을 지원하면서도 매우 우수한 성능을 보임을 알 수 있다.As the number of bits to be punctured increases, the performance decreases slightly, but it can be seen that the performance is very good while supporting the same code rate compared to the original.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다.The above description of the present invention is for illustrative purposes only, and those of ordinary skill in the art to which the present invention pertains will be able to understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be.

그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting.

예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the claims to be described later, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention.

100 : LDPC 부호화 장치
110 : LDPC 부호화부
120 : 추가 부호화부
130 : 천공부
140 : 코드 워드 제공부
200 : LDPC 복호화 장치
210 : 추가 복호화부
220 : LDPC 복호화부
100: LDPC encoding device
110: LDPC encoding unit
120: additional encoding unit
130: perforation
140: code word provider
200: LDPC decoding device
210: additional decoding unit
220: LDPC decoding unit

Claims (5)

데이터 전송 방법에 있어서,
부호화 코드 워드를 생성하는 단계; 및
상기 부호화 코드 워드를 전송하는 단계를 포함하고,
상기 부호화 코드 워드를 생성하는 단계는,
부호화 대상 데이터에 대하여 제1 부호화를 수행하여 제1 패러티 비트를 생성하는 단계와,
상기 부호화 대상 데이터에 상기 제1 패러티 비트를 추가하여 제1 코드 워드를 생성하는 단계와,
상기 제1 코드 워드 내의 비트에 대해 제2 부호화를 수행하여 제2 패러티 비트를 생성하는 단계와,
상기 제1 코드 워드에 상기 제2 패러티 비트를 추가하여 제2 코드 워드를 생성하는 단계를 포함하는
데이터 전송 방법.
In the data transmission method,
Generating an encoded code word; And
And transmitting the encoded code word,
Generating the encoded code word,
Generating a first parity bit by performing first encoding on the encoding target data; and
Generating a first code word by adding the first parity bit to the encoding target data,
Generating a second parity bit by performing a second encoding on the bits in the first code word; and
And generating a second code word by adding the second parity bit to the first code word.
Data transfer method.
제1항에 있어서,
상기 부호화 코드 워드를 생성하는 단계는,
선택될 비트의 총 수를 결정하는 단계와,
상기 선택될 비트의 총수에 기초하여 상기 제2 코드 워드 중 일부의 비트를 선택하는 단계를 더 포함하는
데이터 전송 방법.
The method of claim 1,
Generating the encoded code word,
Determining the total number of bits to be selected;
The step of selecting some bits of the second code word based on the total number of bits to be selected.
Data transfer method.
제2항에 있어서,
상기 선택될 비트의 총 수를 결정하는 단계는
적어도 둘 이상의 팩터에 기초하여 상기 선택될 비트의 총 수를 결정하는 단계를 포함하는
데이터 전송 방법.
The method of claim 2,
The step of determining the total number of bits to be selected is
Determining the total number of bits to be selected based on at least two or more factors.
Data transfer method.
제3항에 있어서,
상기 적어도 둘 이상의 팩터는 시스템 성능 및 복잡도 중 적어도 하나를 포함하는
데이터 전송 방법.
The method of claim 3,
The at least two or more factors include at least one of system performance and complexity.
Data transfer method.
제1항에 있어서,
상기 제1 부호화는 LDPC (Low Density Parity Check)이고,
상기 제2 부호화는 repetition, BCH(Bose-Chadhuri-Hocquenghem) 및 RS(Reed-Solomon) 부호화 중 하나 이상을 포함하는
데이터 전송 방법.

The method of claim 1,
The first encoding is LDPC (Low Density Parity Check),
The second encoding includes at least one of repetition, Bose-Chadhuri-Hocquenghem (BCH), and Reed-Solomon (RS) encoding.
Data transfer method.

KR1020200127770A 2020-10-05 2020-10-05 Ldpc encoding, decoding method and device using the method KR20200116889A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200127770A KR20200116889A (en) 2020-10-05 2020-10-05 Ldpc encoding, decoding method and device using the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200127770A KR20200116889A (en) 2020-10-05 2020-10-05 Ldpc encoding, decoding method and device using the method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190148875A Division KR102163876B1 (en) 2019-11-19 2019-11-19 Ldpc encoding, decoding method and device using the method

Publications (1)

Publication Number Publication Date
KR20200116889A true KR20200116889A (en) 2020-10-13

Family

ID=72885221

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200127770A KR20200116889A (en) 2020-10-05 2020-10-05 Ldpc encoding, decoding method and device using the method

Country Status (1)

Country Link
KR (1) KR20200116889A (en)

Similar Documents

Publication Publication Date Title
US10673468B2 (en) Concatenated and sliding-window polar coding
KR102007770B1 (en) Packet coding method and for decoding apparatus and method therof
US8751907B2 (en) Joint encoding and decoding methods for improving the error rate performance
US8484531B1 (en) Post-processing decoder of LDPC codes for improved error floors
TWI594583B (en) Gldpc soft decoding with hard decision inputs
US8737519B2 (en) Apparatus and method for channel coding in a communication system
JP4253332B2 (en) Decoding device, method and program
KR20090083758A (en) Method and apparatus for decoding concatenated code
AU762092B2 (en) Generating codes in a communication system
CN115398809A (en) List decoding of polarization-adjusted convolutional codes
WO2018179246A1 (en) Check bit concatenated polar codes
US9219501B2 (en) LDPC encoding/decoding method and device using same
EP3713096B1 (en) Method and device for decoding staircase code, and storage medium
KR102048515B1 (en) Ldpc encoding, decoding method and device using the method
US8429509B2 (en) Apparatus and method for determining reliability of decoded data in communication system
KR102163876B1 (en) Ldpc encoding, decoding method and device using the method
JP2001285261A (en) Error correction coding-type digital transmission method
KR20200116889A (en) Ldpc encoding, decoding method and device using the method
JP2004349901A (en) Turbo decoder and dynamic decoding method used therefor
US9189321B2 (en) Error correction encoding method, decoding method and associated devices
CN111277355A (en) Method and device for correcting deadlock in TPC (transmit power control) decoding
CN114448448B (en) CA-SCL-based polarization code encoding and decoding method
JP2005167513A (en) Decoding device and decoding method
KR20190016296A (en) Apparatus and method for decoding a signal in wireless communication system
KR101531184B1 (en) Decoding Method and Apparatus Using Cooperation between Higher Layer and Lower Layer and Data Transmitting/Recieving System

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E601 Decision to refuse application