KR20160020991A - Low density parity check encoder with 16200 length and 3/15 rate, and method using the same - Google Patents
Low density parity check encoder with 16200 length and 3/15 rate, and method using the same Download PDFInfo
- Publication number
- KR20160020991A KR20160020991A KR1020140120009A KR20140120009A KR20160020991A KR 20160020991 A KR20160020991 A KR 20160020991A KR 1020140120009 A KR1020140120009 A KR 1020140120009A KR 20140120009 A KR20140120009 A KR 20140120009A KR 20160020991 A KR20160020991 A KR 20160020991A
- Authority
- KR
- South Korea
- Prior art keywords
- parity
- ldpc
- length
- line
- parity check
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
- H03M13/1165—QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/118—Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
- H03M13/1185—Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2703—Coding, 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 using interleaving techniques the interleaver involving at least two directions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
- H04L1/0043—Realisations of complexity reduction techniques, e.g. use of look-up tables
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
본 발명은 무선 채널에서 발생하는 오류를 정정하기 위한 LDPC(Low Density Parity Check) 부호에 관한 것으로, 특히 디지털 방송 시스템에 적용 가능한 LDPC 부호에 관한 것이다.The present invention relates to an LDPC (Low Density Parity Check) code for correcting an error occurring in a wireless channel, and more particularly to an LDPC code applicable to a digital broadcasting system.
현재의 지상파 TV 방송은 서비스 변경의 3배에 해당하는 동일채널간섭(co-channel interference)을 발생시키기 때문에, 서비스 반경의 3배 이내 지역에서는 같은 주파수를 재사용할 수 없다. 이처럼, 같은 주파수를 재사용할 수 없는 지역을 화이트 스페이스(white space)라고 하는데, 화이트 스페이스의 발생으로 인하여 스펙트럼 효율이 매우 낮아진다.Current terrestrial TV broadcasting generates co-channel interference equivalent to three times the service change, so the same frequency can not be reused within three times the service radius. In this way, a region where the same frequency can not be reused is called a white space, and the occurrence of white space causes a very low spectral efficiency.
따라서, 스펙트럼 효율 향상을 위해 수신 강인성에 중점을 둔 화이트 스페이스 제거 및 주파수 재사용이 용이한 전송기술 개발의 필요성이 대두되었다.Therefore, in order to improve spectral efficiency, there has been a need to develop a transmission technique which is easy to remove white space and to reuse frequency, which focuses on receiving robustness.
이에 따라 2012년 9월 IEEE Transactions on Broadcasting, vol. 58, no.3을 통해 공개된 학술 문헌 "Cloud Transmission: A New Spectrum-Reuse Friendly Digital Terrestrial Broadcasting Transmission System"에서는 재사용이 용이하고 화이트 스페이스를 발생시키지 않으며, 단일 주파수망 구축 및 운용이 용이한 지상파 클라우드 방송 기술이 제안되었다.Accordingly, IEEE Transactions on Broadcasting, vol. 58, No. 3, "Cloud Transmission: A New Spectrum-Reuse Friendly Digital Terrestrial Broadcasting Transmission System", which is easy to reuse and does not generate whitespace, is a terrestrial cloud Broadcasting technology was proposed.
이러한 지상파 클라우드 방송 기술을 이용하면, 방송사는 하나의 방송채널을 통해 전국적으로 동일하거나 또는 각 지역별로 서로 다른 방송 콘텐츠를 전송할 수 있다. 그러나, 이를 위해서는 수신기가 단일 주파수망에서 서로 다른 송신기로부터 송출된 신호가 겹치는 지역, 즉 중첩지역에서 하나 이상의 지상파 클라우드 방송 신호를 수신할 수 있어야 하며, 수신한 지상파 클라우드 방송 신호를 구분하여 복조할 수 있어야 한다. 즉, 동일채널간섭이 존재하고, 각 송신신호들의 타이밍 및 주파수 동기가 보장되지 않은 상황에서 수신기는 하나 이상의 클라우드 방송 신호를 복조할 수 있어야 한다.With the terrestrial cloud broadcasting technology, broadcasters can transmit different broadcasting contents to one another nationwide through the same broadcasting channel. However, in order to achieve this, the receiver must be able to receive one or more terrestrial cloud broadcast signals in a region where signals transmitted from different transmitters overlap in a single frequency network, that is, in an overlapped region, and demodulate the received terrestrial cloud broadcast signals . That is, in a situation where co-channel interference exists and the timing and frequency synchronization of each transmission signal is not guaranteed, the receiver must be able to demodulate one or more cloud broadcast signals.
한편, 한국공개특허 2013-0135746호의 "지상파 클라우드 방송을 위한 LDPC 부호"는 지상파 클라우드 방송에 최적화되어, 낮은 부호율(<0.5)에서 우수한 성능을 보이는 LDPC 부호를 개시하고 있다.On the other hand, Korean Patent Laid-Open Publication No. 2013-0135746, entitled "LDPC Code for Terrestrial Cloud Broadcasting" discloses an LDPC code that is optimized for terrestrial cloud broadcasting and exhibits excellent performance at a low code rate (< 0.5).
그러나, 한국공개특허 2013-0135746호는 DVB 방송 표준 등에서 사용되는 LDPC 부호 길이와 전혀 상이한 부호 길이에 관한 것이고, 구체적인 LDPC 부호 방법에 대해서는 침묵하고 있다.However, Korean Patent Laid-Open Publication No. 2013-0135746 relates to a code length which is completely different from the LDPC code length used in the DVB broadcasting standard or the like, and the specific LDPC code method is silent.
본 발명의 목적은 범용적으로 사용될 수 있는 부호어 길이가 16200이며, 부호율이 3/15인 새로운 LDPC 부호어를 제공하는 것이다.An object of the present invention is to provide a new LDPC codeword having a codeword length of 16,200 and a coding rate of 3/15, which can be used in general use.
또한, 본 발명의 목적은 LDPC 부호어의 시스터매틱 파트의 길이인 3240 및 제1 패러티 파트의 길이인 1080의 합을 360으로 나눈 값에 해당하는 수의 행들을 가지는 수열을 이용하여 효율적으로 LDPC 부호화를 수행할 수 있는 LDPC 부호화 기법을 제공하는 것이다.It is another object of the present invention to provide a method and apparatus for efficiently performing LDPC coding using a sequence having a number of rows corresponding to a value obtained by dividing the sum of 3240, which is the length of the systematic part of the LDPC codeword, and the length of the first parity part, And an LDPC coding method capable of performing LDPC coding.
상기한 목적을 달성하기 위한 본 발명에 따른 LDPC 부호화기는, 길이가 16200이고 부호율이 3/15인, LDPC 부호어를 저장하기 위한 제1 메모리; 0으로 초기화되는 제2 메모리; 및 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 제2 메모리에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성하는 프로세서를 포함한다.According to an aspect of the present invention, there is provided an LDPC encoder comprising: a first memory for storing an LDPC codeword having a length of 16,200 and a coding rate of 3/15; A second memory initialized to zero; And a processor for performing accumulation on the second memory using a sequence corresponding to a parity check matrix to generate the LDPC codeword corresponding to information bits, do.
이 때, 누적은 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행될 수 있다.At this time, the accumulation may be performed at parity bit addresses updated using a sequence corresponding to a parity check matrix.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하고 길이가 3240인 시스터매틱(systematic) 파트, 상기 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1080인 제1 패러티 파트 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 11880인 제2 패러티 파트를 포함할 수 있다.In this case, the LDPC codeword includes a systematic part corresponding to the information bits and having a length of 3240, a first parity part having a length of 1080 and a parity part corresponding to the double diagonal matrix included in the parity check matrix, And a second parity part having a length of 11880 corresponding to the identity matrix included in the first parity part.
이 때, 수열은 상기 시스터매틱 파트의 길이인 3240을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈인 360으로 나눈 값에 상기 제1 패러티 파트의 길이인 1080을 상기 CPM 사이즈로 나눈 값을 더한 수만큼의 행들(rows)을 가질 수 있다.At this time, the sequence is divided into a value obtained by dividing 3240, which is the length of the systematic part, by 360, the CPM size corresponding to the parity check matrix, and the value obtained by dividing 1080, which is the length of the first parity part, You can have rows.
이 때, 수열은 하기 테이블로 표현될 수 있다.
At this time, the sequence may be represented by the following table.
[테이블][table]
제1행: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988 First line: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988
제2행: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267 Second line: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267
제3행: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003 Third line: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003
제4행: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341 Fourth line: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341
제5행: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561 5th line: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561
제6행: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990 6th line: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990
제7행: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092 Line 7: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092
제8행: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689 Line 8: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689
제9행: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893 Ninth line: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893
제10행: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876 10th line: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876
제11행: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810 11th line: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810
제12행: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272
Line 12: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272
이 때, 누적은 패러티 검사 행렬의 CPM 사이즈(L) 단위로 상기 수열의 행을 바꿔가면서, 수행될 수 있다.In this case, accumulation may be performed while changing the rows of the series in units of the CPM size (L) of the parity check matrix.
또한, 본 발명의 일실시예에 따른 LDPC 부호화 방법은, LDPC 부호어를 저장하기 위한 제1 메모리, 및 제2 메모리를 초기화하는 단계; 및 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 제2 메모리에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성하는 단계를 포함한다.According to another aspect of the present invention, there is provided an LDPC encoding method including: initializing a first memory and a second memory for storing an LDPC codeword; And performing accumulation on the second memory using a sequence corresponding to a parity check matrix to generate the LDPC codeword corresponding to the information bits do.
이 때, 상기 누적은 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행될 수 있다.At this time, the accumulation may be performed at parity bit addresses updated using a sequence corresponding to a parity check matrix.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하는 길이가 3240인 시스터매틱(systematic) 파트, 상기 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1080인 제1 패러티 파트 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 11880인 제2 패러티 파트를 포함할 수 있다.In this case, the LDPC codeword includes a systematic part having a length of 3240 corresponding to the information bits, a first parity part having a length of 1080 corresponding to the double diagonal matrix included in the parity check matrix, and a parity check matrix And a second parity part having a length of 11880 corresponding to the identity matrix included in the first parity part.
이 때, 수열은 상기 시스터매틱 파트의 길이인 3240을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈인 360으로 나눈 값에 상기 제1 패러티 파트의 길이인 1080을 상기 CPM 사이즈로 나눈 값을 더한 수만큼의 행들(rows)을 가질 수 있다.At this time, the sequence is divided into a value obtained by dividing 3240, which is the length of the systematic part, by 360, the CPM size corresponding to the parity check matrix, and the value obtained by dividing 1080, which is the length of the first parity part, You can have rows.
이 때, 수열은 상기 테이블로 표현될 수 있다.At this time, the sequence may be represented by the table.
또한, 본 발명의 일실시예에 따른 LDPC 복호화기는, 패러티 검사 행렬에 상응하고 상기 테이블로 표현되는 수열을 이용하여 부호화된, LDPC(Low Density Parity Check) 부호어(codeword)를 수신하는 수신부; 및 상기 패러티 검사 행렬에 상응하는 복호화를 수행하여 수신된 상기 LDPC 부호어에서 정보 비트들(information bits)을 복원하는 복호화부를 포함한다.Also, an LDPC decoder according to an embodiment of the present invention includes: a receiver for receiving a Low Density Parity Check (LDPC) codeword encoded using a sequence corresponding to a parity check matrix and represented by the table; And a decoding unit which performs decoding corresponding to the parity check matrix and restores information bits in the received LDPC codeword.
본 발명에 따르면, 범용적으로 사용될 수 있는 부호어 길이가 16200이며, 부호율이 3/15인 새로운 LDPC 부호어가 제공된다.According to the present invention, a new LDPC codeword with a codeword length of 16200 and a coding rate of 3/15, which can be used in general use, is provided.
또한, 본 발명은 LDPC 부호어의 시스터매틱 파트의 길이인 3240 및 제1 패러티 파트의 길이인 1080의 합을 360으로 나눈 값에 해당하는 수의 행들을 가지는 수열을 이용하여 효율적으로 LDPC 부호화를 수행할 수 있다.In addition, the present invention efficiently performs LDPC coding using a sequence having a number of rows corresponding to a value obtained by dividing the sum of 3240, which is the length of the systematic part of the LDPC codeword, and 1080, which is the length of the first parity part, can do.
도 1은 본 발명의 일실시예에 따른 방송 신호 송/수신 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 방송 신호 송/수신 방법을 나타낸 동작 흐름도이다.
도 3은 본 발명의 일실시예에 따른 LDPC 부호에 상응하는 패러티 검사 행렬의 구조를 나타낸 도면이다.
도 4는 본 발명의 일실시예에 따른 LDPC 부호화기를 나타낸 블록도이다.
도 5는 본 발명의 일실시예에 따른 LDPC 복호화기를 나타낸 블록도이다.
도 6은 본 발명의 일실시예에 따른 LDPC 부호화 방법을 나타낸 동작 흐름도이다.
도 7은 본 발명의 일실시예에 따른 길이가 16200, 부호율이 3/15인 QC-LDPC 부호의 성능을 Eb/No에 대비하여 나타낸 그래프이다.1 is a block diagram illustrating a system for transmitting / receiving a broadcast signal according to an embodiment of the present invention.
2 is a flowchart illustrating a method of transmitting / receiving a broadcast signal according to an exemplary embodiment of the present invention.
3 is a diagram illustrating a structure of a parity check matrix corresponding to an LDPC code according to an embodiment of the present invention.
4 is a block diagram illustrating an LDPC encoder according to an embodiment of the present invention.
5 is a block diagram illustrating an LDPC decoder according to an embodiment of the present invention.
6 is a flowchart illustrating an LDPC encoding method according to an embodiment of the present invention.
FIG. 7 is a graph illustrating the performance of a QC-LDPC code having a length of 16200 and a coding rate of 3/15 according to an exemplary embodiment of the present invention in comparison with E b / N o .
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일실시예에 따른 방송 신호 송/수신 시스템을 나타낸 블록도이다.1 is a block diagram illustrating a system for transmitting / receiving a broadcast signal according to an embodiment of the present invention.
도 1을 참조하면, 송신기(10)와 수신기(30)가 무선 채널(20)을 매개로 통신을 수행하는 것을 알 수 있다.Referring to FIG. 1, it can be seen that the
송신기(10)는 k비트의 정보 비트들(information bits; 11)을 LDPC 부호화기(13)에서 부호화(encoding)하여 n비트의 코드워드(codeword)를 생성한다. 코드워드는 변조기(15)에 의해 변조되어 안테나(17)를 통해 전송된다. 무선 채널(20)을 통해 전송된 신호는 수신기(30)의 안테나(31)를 통해 수신되고, 수신기(30)에서는 송신기(10)에서 일어났던 과정의 역과정을 거친다. 즉, 수신된 데이터가 복조기(33)에 의해 복조되고, LDPC 복호화기(35)에 의해 복호되어 최종적으로 정보 비트들을 복원할 수 있다.The
전술한 바와 같은 송/수신 과정은 본 발명의 특징을 설명하기 위해 필요한 최소한의 범위 내에서 설명된 것으로 이외에도 데이터 전송을 위해 필요한 많은 과정이 추가될 수 있음은 당업자에게 자명하다.It will be apparent to those skilled in the art that the above-described transmission / reception process is described within the minimum range necessary to explain the features of the present invention, and that many other processes necessary for data transmission can be added.
이하에서, LDPC 부호화기(13) 또는 LDPC 복호화기(35)에서의 LDPC 코드를 통한 부호화 또는 복호화의 구체적인 과정 및 LDPC 부호화기(13) 또는 LDPC 복호화기(35)와 같은 부호화 또는 복호화 장치의 구체적인 구성에 대해 설명한다. 도 1에 도시된 LDPC 부호화기(13)는 도 4에 도시된 구조를 가질 수 있고, LDPC 복호화기(35)는 도 5에 도시된 구조를 가질 수 있다.
Hereinafter, the concrete procedure of encoding or decoding through the LDPC code in the
도 2는 본 발명의 일실시예에 따른 방송 신호 송/수신 방법을 나타낸 동작 흐름도이다.2 is a flowchart illustrating a method of transmitting / receiving a broadcast signal according to an exemplary embodiment of the present invention.
도 2를 참조하면, 본 발명의 일실시예에 따른 방송 신호 송/수신 방법은 먼저 입력 비트들(information bits)을 LDPC 부호화한다(S210).Referring to FIG. 2, a method for transmitting / receiving a broadcast signal according to an exemplary embodiment of the present invention first LDPC-codes input information bits (S210).
즉, 단계(S210)는 k비트의 정보 비트들(information bits)을 LDPC 부호화기에서 부호화하여 n비트의 코드워드(codeword)를 생성한다.That is, in step S210, k bits of information bits are encoded by the LDPC encoder to generate n-bit codewords.
이 때, 단계(S210)는 도 6에 도시된 LDPC 부호화 방법과 같이 수행될 수 있다.In this case, step S210 may be performed in the same manner as the LDPC coding method shown in FIG.
또한, 방송 신호 송/수신 방법은 부호화된 데이터를 변조한다(S220).Also, the broadcasting signal transmitting / receiving method modulates the encoded data (S220).
즉, 단계(S220)는 부호화된 n비트의 코드워드를 변조기에 의해 변조한다.That is, step S220 modulates the encoded n-bit code word by the modulator.
또한, 방송 신호 송/수신 방법은 변조된 데이터를 송신한다(S230).Also, the broadcasting signal transmitting / receiving method transmits the modulated data (S230).
즉, 단계(S230)는 변조된 코드워드를 안테나를 통해 무선 채널로 전송한다.That is, the step S230 transmits the modulated codeword to the radio channel through the antenna.
또한, 방송 신호 송/수신 방법은 수신된 데이터를 복조(demodulation)한다(S240).In addition, the broadcasting signal transmitting / receiving method demodulates the received data (S240).
즉, 단계(S240)는 수신기의 안테나를 통해 무선 채널을 통해 전송된 신호를 수신하고 수신된 데이터를 복조기에 의하여 복조한다.That is, the step S240 receives the signal transmitted through the radio channel through the antenna of the receiver and demodulates the received data by the demodulator.
또한, 방송 신호 송/수신 방법은 복조된 데이터를 LDPC 복호화한다(S250).Also, the broadcasting signal transmitting / receiving method performs LDPC decoding on the demodulated data (S250).
즉, 단계(S250)는 수신기의 복조기를 통해 LDPC 복호화를 수행하여 최종적으로 정보 비트들을 복원한다.That is, in step S250, LDPC decoding is performed through the demodulator of the receiver to finally recover the information bits.
이 때, 단계(S250)는 도 6에 도시된 LDPC 부호화 방법의 역과정에 해당하는 것으로 도 5의 LDPC 복호화기에 상응하는 것일 수 있다.In this case, step S250 corresponds to the inverse process of the LDPC encoding method shown in FIG. 6, and may correspond to the LDPC decoder of FIG.
LDPC(Low Density Parity Check) 부호는 AWGN(Additive White Gaussian Noise) 채널에서 쉐넌(Shannon) 한계에 근접하는 부호로 알려져 있으며, 터보부호보다 근사적으로(asymptotically) 우수한 성능, 병렬복호(parallelizable decoding) 등의 장점이 있다.The LDPC (Low Density Parity Check) code is known as a code close to the Shannon limit in an AWGN (Additive White Gaussian Noise) channel. The LDPC code is asymptotically superior to the turbo code, .
일반적으로, LDPC 부호는 랜덤하게 생성된 낮은 밀도의 PCM(Parity Check Matrix)에 의해 정의된다. 그러나, 랜덤하게 생성된 LDPC 부호는 PCM을 저장하기 위해 많은 메모리가 필요할 뿐만 아니라, 메모리를 액세스하는데 많은 시간이 소요된다. 이와 같은 문제를 해결하기 위해 쿼시-사이클릭(Quasi-cyclic) LDPC(QC-LDPC) 부호가 제안되었으며, 제로 메트릭스(zero matrix) 또는 CPM(Circulant Permutation Matrix)으로 구성된 QC-LDPC 부호는 하기 수학식 1에 의해 표현되는 PCM에 의해 정의된다.Generally, an LDPC code is defined by a randomly generated low density PCM (Parity Check Matrix). However, a randomly generated LDPC code not only requires a large amount of memory to store the PCM, but also takes a long time to access the memory. In order to solve such a problem, a quasi-cyclic LDPC (QC-LDPC) code has been proposed, and a QC-LDPC code composed of a zero matrix or a CPM (Circulant Permutation Matrix) Lt; RTI ID = 0.0 > PCM. ≪ / RTI >
[수학식 1][Equation 1]
여기서, J는 크기가 L x L인 CPM이며 하기 수학식 2와 같이 주어진다. 이하에서, L은 360일 수 있다.Here, J is a CPM whose size is L x L and is given by the following equation (2). In the following, L may be 360.
[수학식 2]&Quot; (2) "
또한, Ji는 L x L 항등행렬(identity matrix) I(=J0)를 오른쪽으로 i(0=i<L)번 이동시킨 것이며, J∞는 L x L 영행렬(zero matrix)이다. 따라서, QC-LDPC 부호에서는 Ji를 저장하기 위해 지수(exponent) i만 저장하면 되기 때문에, PCM를 저장하기 위해 요구되는 메모리가 크게 줄어든다.In addition, J i is the L x L identity matrix I (= J 0 ) shifted to the right i (0 = i L) times, and J ∞ is the L x L zero matrix. Therefore, in the QC-LDPC code, only the exponent i needs to be stored in order to store J i , so that the memory required to store the PCM is greatly reduced.
도 3은 본 발명의 일실시예에 따른 LDPC 부호에 상응하는 패러티 검사 행렬의 구조를 나타낸 도면이다.3 is a diagram illustrating a structure of a parity check matrix corresponding to an LDPC code according to an embodiment of the present invention.
도 3을 참조하면, 행렬 A와 C의 크기는 각각 g x K와 (N-K-g) x (K+g)이며, 크기가 L x L인 영행렬과 CPM으로 구성된다. 또한, 행렬 z는 크기가 g x (N-K-g)인 영행렬이고, 행렬 D는 크기가 (N-K-g) x (N-K-g)인 항등행렬(identity matrix)이며, 행렬 B는 크기가 g x g인 이중 대각행렬(dual diagonal matrix)이다. 이 때, 행렬 B는 대각선의 원소와 대각선의 아래쪽에 이웃하는 원소들 이외의 모든 원소들이 모두 0인 행렬일 수도 있고, 하기 수학식 3과 같이 정의될 수도 있다.Referring to FIG. 3, the sizes of the matrices A and C are g x K and (N-K-g) x (K + g), respectively. The matrix Z is a zero matrix whose magnitude is gx (NKg), the matrix D is an identity matrix whose magnitude is (NKg) x (NKg), the matrix B is a dual diagonal matrix of size gxg matrix. In this case, the matrix B may be a matrix in which all elements other than the diagonal elements and the elements neighboring the lower diagonal are 0, and may be defined as Equation (3).
[수학식 3]&Quot; (3) "
여기서, ILxL는 크기가 L x L인 항등행렬이다. Where I LxL is an identity matrix of size L x L.
즉, 행렬 B는 일반적인(bit-wise) 이중 대각행렬일 수도 있고, 상기 수학식 3에 표기된 바와 같이 항등행렬을 블록으로 하는 블럭와이즈(block-wise) 이중 대각행렬일 수도 있다. 일반적인(bit-wise) 이중 대각행렬에 대해서는 한국공개특허 2007-0058438호 등에 상세히 개시되어 있다.That is, the matrix B may be a general (bit-wise) diagonal diagonal matrix or a block-wise diagonal matrix as shown in Equation (3). A bit-wise double diagonal matrix is disclosed in detail in Korean Patent Publication No. 2007-0058438.
특히, 행렬 B가 일반적인(bit-wise) 이중 대각행렬인 경우, 이러한 행렬 B를 포함하는 도 3에 도시된 구조의 PCM에 행 퍼뮤테이션(row permutation) 또는 열 퍼뮤테이션(column permutation)을 적용하여 쿼시 사이클릭으로 변환할 수 있음은 당업자에게 자명하다. Particularly, when the matrix B is a bit-wise diagonal matrix, row permutation or column permutation is applied to the PCM of the structure shown in FIG. 3 including the matrix B It will be apparent to those skilled in the art that it may be converted to quasi-cyclic.
이 때, N은 부호어(codeword)의 길이이며, K는 정보(information)의 길이를 각각 나타낸다.In this case, N is the length of the codeword, and K is the length of the information.
본 발명에서는 아래 표 1과 같이 부호율(code rate)이 3/15이며, 부호어의 길이가 16200인 새롭게 설계된 QC-LDPC 부호를 제안한다. 즉, 길이가 3240인 정보를 입력 받아, 길이가 16200인 LDPC 부호어를 생성하는 LDPC 부호를 제안한다.The present invention proposes a newly designed QC-LDPC code having a code rate of 3/15 and a codeword length of 16200 as shown in Table 1 below. That is, we propose an LDPC code that receives information of length 3240 and generates an LDPC codeword of
표 1은 본 발명의 QC-LDPC 부호의 A, B, C, D, Z 행렬의 크기를 나타낸다.Table 1 shows the sizes of the A, B, C, D, and Z matrices of the QC-LDPC code of the present invention.
[표 1][Table 1]
새롭게 설계된 LDPC 부호는 수열 형태로 표시될 수 있으며, 수열과 행렬(패러티 비트 체크 행렬)은 등가(equivalent) 관계가 성립하고, 수열은 하기 테이블과 같이 표현될 수 있다.
The newly designed LDPC code can be displayed in a sequence, and an equivalent relation between the sequence and the matrix (parity bit check matrix) is established, and the sequence can be expressed as shown in the following table.
[테이블][table]
제1행: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988 First line: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988
제2행: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267 Second line: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267
제3행: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003 Third line: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003
제4행: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341 Fourth line: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341
제5행: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561 5th line: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561
제6행: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990 6th line: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990
제7행: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092 Line 7: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092
제8행: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689 Line 8: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689
제9행: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893 Ninth line: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893
제10행: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876 10th line: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876
제11행: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810 11th line: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810
제12행: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272
Line 12: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272
수열형태로 표기된 LDPC 부호는 DVB 표준에서 널리 사용되고 있다.The LDPC codes in the form of a sequence are widely used in the DVB standard.
본 발명의 일실시예에 따르면, 수열형태로 표기된 LDPC 부호는 다음과 같이 부호화(encoding)된다. 정보크기(information size)가 K인 정보블록(information block) S=(s0, s1, ..., sK -1)를 가정하자. LDPC 부호화기(encoder)는 크기가 K인 정보블록 S를 이용하여 크기가 N=K+M1+M2인 부호어(codeword) 를 생성한다. 여기서, M1=g, M2=N-K-g이다. 또한, M1은 이중 대각행렬(dual diagonal matrix) B에 대응하는 패러티(parity)의 크기이며, M2는 항등행렬 D에 대응하는 패러티의 크기이다. 부호화 과정은 다음과 같다.According to an embodiment of the present invention, an LDPC code denoted by a sequence is encoded as follows. Assume an information block S = (s 0 , s 1 , ..., s K -1 ) with an information size K. An LDPC encoder uses an information block S having a size K to generate a codeword having a size of N = K + M 1 + M 2 , . Here, M 1 = g and M 2 = NKg. Also, M 1 is the parity size corresponding to the dual diagonal matrix B, and M 2 is the parity size corresponding to the identity matrix D. The encoding process is as follows.
-초기화(initialization):- initialization:
[수학식 4]&Quot; (4) "
-첫 번째 를 상기 테이블의 수열의 제1행에 명시된 패러티 비트 주소들(parity bit addresses)에서 누적(accumulate)한다. 예를 들어, 길이가 16200이며, 부호율이 3/15인 LDPC 부호에서의 누적 과정은 다음과 같다.-first At the parity bit addresses specified in the first row of the table's sequence. For example, the accumulation process in an LDPC code having a length of 16200 and a code rate of 3/15 is as follows.
여기서 덧셈()은 GF(2)에서 일어난다.Here, add ( ) Occurs in GF (2).
-다음 L-1개의 정보비트, 즉 들에 대해서는, 하기 수학식 5에서 계산된 패러티 비트 주소들에서 누적한다.- the next L-1 information bits, i. Are accumulated at the parity bit addresses calculated in Equation (5) below.
[수학식 5]&Quot; (5) "
여기서, x는 첫 번째 비트 에 대응되는 패러티 비트 주소들, 즉 상기 테이블의 수열의 제1행에 표기된 패러티 비트 주소들을 나타내며, Q1 = M1/L, Q2 = M2/L, L = 360이다. 또한, Q1과 Q2는 하기 표 2에 정의된다. 예를 들어, 길이가 16200이며, 부호율이 3/15인 LDPC 부호는 M1 = 1080, Q1 = 3, M2 = 11880, Q2 = 33, L = 360이므로, 두 번째 비트 에 대해서는 상기 수학식 5를 이용하면 다음과 같은 연산이 수행된다.Where x is the first bit Q 1 = M 1 / L, Q 2 = M 2 / L, and L = 360, which are the parity bit addresses corresponding to the parity bit addresses corresponding to the parity bits in the table. Q 1 and Q 2 are defined in Table 2 below. For example, the LDPC code having a length of 16200 and a coding rate of 3/15 is M 1 = 1080, Q 1 = 3, M 2 = 11880, Q 2 = 33 and L = Using Equation (5), the following operation is performed.
표 2는 설계된 QC-LDPC 부호의 M1, M2, Q1, Q2의 크기를 나타낸다.Table 2 shows the sizes of M 1 , M 2 , Q 1 and Q 2 of the designed QC-LDPC code.
[표 2][Table 2]
-다음의 부터 까지의 새로운 360개의 정보비트들은 상기 수열의 제2행을 이용하여, 상기 수학식 5로부터 패러티 비트 누적기들의 주소를 계산하고, 누적한다.-the next from The new 360 information bits up to < RTI ID = 0.0 > Eq. 5 < / RTI > calculate and accumulate the addresses of the parity bit accumulators from Equation 5 using the second row of the sequence.
-비슷한 방법으로, 새로운 L개의 정보비트들로 구성된 모든 그룹(group)들에 대해서, 상기 수열들의 새로운 행을 이용하여, 상기 수학식 5로부터 패러티 비트 누적기들의 주소를 계산하고, 누적한다.Similarly, for all groups of new L information bits, the address of the parity bit accumulators from Equation (5) is calculated and accumulated using a new row of the sequences.
-에서 까지의 모든 정보비트들이 사용된 후, i = 1부터 시작하여 하기 수학식 6의 연산을 순차적으로 수행한다.- in All the information bits up to i = 1 are used, and then the operation of Equation (6) is sequentially performed starting from i = 1.
[수학식 6]&Quot; (6) "
-다음으로, 하기 수학식 7과 같은 패러티 인터리빙(interleaving)을 수행하면, 이중 대각행렬 B에 대응하는 패러티 생성이 완료된다.Next, when parity interleaving is performed as shown in Equation (7), parity generation corresponding to the diagonal diagonal matrix B is completed.
[수학식 7]&Quot; (7) "
K개의 정보비트()를 이용하여 이중 대각행렬 B에 대응하는 패러티 생성이 완료되면, M1개의 생성된 패러티()을 이용하여, 항등행렬 D에 대응하는 패러티를 생성한다.K information bits ( ), When parity generation corresponding to the diagonal diagonal matrix B is completed, M 1 generated parity ( ), And generates a parity corresponding to the identity matrix D.
-에서 까지의 L개의 비트들로 구성된 모든 그룹(group)들에 대해서, 상기 수열들의 새로운 행(이중 대각행렬 B에 대응하는 패러티를 생성할 때 이용한 마지막 행의 바로 다음 행부터 시작)과 상기 수학식 5를 이용하여 패러티 비트 누적기들의 주소를 계산하고, 관련 연산을 수행한다.- in For each group consisting of L bits from the first diagonal matrix B to the new row of the series (starting from the immediately following row of the last row used to generate the parity corresponding to the diagonal diagonal matrix B) To calculate the addresses of the parity bit accumulators, and to perform related calculations.
-에서 까지의 모든 비트들이 사용된 후, 하기 수학식 8과 같은 패러티 인터리빙을 수행하면, 항등행렬 D에 대응하는 패러티 생성이 완료된다.- in And parity interleaving as shown in Equation (8) below is performed, parity generation corresponding to the identity matrix D is completed.
[수학식 8]&Quot; (8) "
도 4는 본 발명의 일실시예에 따른 LDPC 부호화기를 나타낸 블록도이다.4 is a block diagram illustrating an LDPC encoder according to an embodiment of the present invention.
도 4를 참조하면, 본 발명의 일실시예에 따른 LDPC 부호화기는 메모리들(310, 320) 및 프로세서(330)를 포함한다.Referring to FIG. 4, an LDPC encoder according to an embodiment of the present invention includes
메모리(310)는 길이가 16200이고 부호율이 3/15인 LDPC 부호어(codeword)를 저장하기 위한 메모리이다.The
메모리(320)는 0으로 초기화되는 메모리이다.The
메모리(310) 및 메모리(320)는 각각 λi(i=0, 1, ..., N-1) 및 Pj(j=0, 1, ..., M1+M2-1)에 상응하는 것일 수 있다.
메모리(310) 및 메모리(320)는 비트들의 집합을 저장하기 위한 다양한 하드웨어에 상응하는 것일 수도 있고, 어레이(array), 리스트(list), 스택(stack), 큐(queue) 등의 자료구조(data structure)에 상응하는 것일 수도 있다.The
프로세서(330)는 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 메모리(320)에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성한다.The
이 때, 누적은 상기 테이블의 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행될 수 있다.At this time, the accumulation may be performed at parity bit addresses that are updated using the sequence of the table.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하고 길이가 3240(=K)인 시스터매틱(systematic) 파트(λ0, λ1, ..., λK-1), 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1080(=M1=g)인 제1 패러티 파트(λK, λK+1, ..., λK+ M1 -1) 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 11880(=M2)인 제2 패러티 파트(λK+ M1, λK+ M1 +1, ..., λK+ M1 + M2 -1)를 포함할 수 있다.At this time, the LDPC codeword includes systematic parts (? 0 ,? 1 , ...,? K-1 ) corresponding to the information bits and having a length of 3240 (= K) The first parity part (λ K , λ K + 1 , ..., λ K + M1 -1 ) corresponding to the diagonal diagonal matrix and having a length of 1080 (= M 1 = g) It corresponds to and may include the length of 11880 (= 2 M) of the second parity part (λ K + M1, λ K + M1 +1, ..., λ K + M1 + M2 -1).
이 때, 수열은 상기 시스터매틱 파트의 길이인 3240을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈(L)인 360으로 나눈 값에 제1 패러티 파트의 길이(M1)인 1080을 360으로 나눈 값을 더한 수(3240/360+1080/360=12)만큼의 행들(rows)을 가질 수 있다.In this case, a value obtained by dividing the length of the systematic part (3240) by the CPM size (L) 360 corresponding to the parity check matrix and dividing the length (M 1 ) of the first parity part by 1080 by 360 (3240/360 + 1080/360 = 12) rows.
전술한 바와 같이, 수열은 상기 테이블로 표현될 수 있다.As described above, the sequence may be represented by the table.
이 때, 메모리(320)는 제1 패러티 파트의 길이(M1) 및 제2 패러티 파트의 길이(M2)의 합(M1+M2)에 상응하는 사이즈를 가질 수 있다.At this time, the
이 때, 패러티 비트 주소들은 상기 수열의 각각의 행에 나타내진 이전 패러티 비트 주소들 각각(x)과 제1 패러티 파트의 길이(M1)를 비교한 결과에 기반하여 갱신될 수 있다.At this time, the parity bit addresses may be updated based on the result of comparing each of the previous parity bit addresses (x) shown in each row of the series with the length (M 1 ) of the first parity part.
즉, 패러티 비트 주소들은 상기 수학식 5에 의하여 갱신될 수 있다. 이 때, x는 이전 패러티 비트 주소, m은 정보 비트 인덱스로 0보다 크고 L보다 작은 정수, L은 상기 패러티 검사 행렬의 CPM 사이즈, Q1은 M1/L, M1은 상기 제1 패러티 파트의 사이즈, Q2는 M2/L, M2는 상기 제2 패러티 파트의 사이즈일 수 있다.That is, the parity bit addresses can be updated by Equation (5). Where m is an integer greater than 0 and less than L, and L is the CPM size of the parity check matrix, Q 1 is M 1 / L, and M 1 is the first parity part Q 2 may be M 2 / L, and M 2 may be the size of the second parity part.
이 때, 상기 누적은 전술한 바와 같이 상기 패러티 검사 행렬의 CPM 사이즈 L=360 단위로 수열의 행을 바꿔가면서 수행될 수 있다.At this time, the accumulation may be performed while changing the rows of the sequence with the CPM size L = 360 units of the parity check matrix as described above.
이 때, 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)는 상기 수학식 7을 통하여 설명한 바와 같이, 메모리(310) 및 메모리(320)를 이용한, 패러티 인터리빙(parity interleaving)을 수행하여 생성될 수 있다.In this case, the first parity part (? K ,? K + 1 , ...,? K + M1-1 ) uses the
이 때, 제2 패러티 파트(λK+ M1, λK+ M1 +1, ..., λK+ M1 + M2 -1)는 상기 수학식 8을 통하여 설명한 바와 같이 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)의 생성이 완료된 후 상기 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)와 상기 수열을 이용하여 수행되는 상기 누적이 완료된 후, 메모리(310) 및 메모리(320)를 이용한 패러티 인터리빙(parity interleaving)을 수행하여 생성될 수 있다.
At this time, the second parity part (M1 + K λ, λ K + M1 +1, ..., λ K + M1 + M2 -1) of the first parity part (λ, as described by Equation 8 K, λ K +1, ..., after the generation of λ K + M1-1) is completed by using the random number sequence and the first parity part (λ K, K + 1, λ, ..., λ K + M1-1) And performing parity interleaving using the
도 5는 본 발명의 일실시예에 따른 LDPC 복호화기를 나타낸 블록도이다.5 is a block diagram illustrating an LDPC decoder according to an embodiment of the present invention.
도 5를 참조하면, 본 발명의 일실시예에 따른 LDPC 복호화기는 수신부(410) 및 복호화부(420)를 포함한다.Referring to FIG. 5, an LDPC decoder according to an embodiment of the present invention includes a
수신부(410)는 상기 패러티 검사 행렬에 상응하고 상기 테이블로 표현되는 수열을 이용하여 부호화된, LDPC(Low Density Parity Check) 부호어(codeword)를 수신한다.The receiving
복호화부(420)는 상기 패러티 검사 행렬에 상응하는 복호화를 수행하여 수신된 상기 LDPC 부호어에서 정보 비트들(information bits)을 복원한다.The
이 때, 상기 수열은 메모리의 패러티 비트 주소들(parity bit addresses)을 갱신하는데 사용되고, 상기 패러티 비트 주소들은 상기 LDPC 부호어에 상응하는 패러티 비트들을 생성하기 위한 누적(accumulation)에 사용될 수 있다.At this time, the sequence is used to update parity bit addresses of the memory, and the parity bit addresses can be used for accumulation to generate parity bits corresponding to the LDPC codeword.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하는 시스터매틱(systematic) 파트(λ0, λ1, ..., λK-1), 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하는 제1 패러티 파트(λK, λK+1, ..., λK+ M1 -1) 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하는 제2 패러티 파트(λK+ M1, λK+ M1 +1, ..., λK+ M1 + M2 -1)를 포함할 수 있다.In this case, the LDPC codeword includes a systematic part (? 0 ,? 1 , ...,? K-1 ) corresponding to the information bits, a first part corresponding to the double diagonal matrix included in the parity check matrix parity part (K λ, λ K + 1, ..., λ M1 + K -1) and a second parity part (M1 + K λ, λ K + M1 +1 corresponding to the identity matrix included in the parity check matrix. .., K + M1 + M2 - 1 ).
이 때, 패러티 비트 주소들은 상기 수열의 각각의 행에 나타내진 이전 패러티 비트 주소들 각각(x)과 제1 패러티 파트의 길이(M1)를 비교한 결과에 기반하여 갱신될 수 있다.At this time, the parity bit addresses may be updated based on the result of comparing each of the previous parity bit addresses (x) shown in each row of the series with the length (M 1 ) of the first parity part.
즉, 패러티 비트 주소들은 상기 수학식 5에 의하여 갱신될 수 있다. 이 때, x는 이전 패러티 비트 주소, m은 정보 비트 인덱스로 0보다 크고 L보다 작은 정수, L은 상기 패러티 검사 행렬의 CPM 사이즈, Q1은 M1/L, M1은 상기 제1 패러티 파트의 사이즈, Q2는 M2/L, M2는 상기 제2 패러티 파트의 사이즈일 수 있다.
That is, the parity bit addresses can be updated by Equation (5). Where m is an integer greater than 0 and less than L, and L is the CPM size of the parity check matrix, Q 1 is M 1 / L, and M 1 is the first parity part Q 2 may be M 2 / L, and M 2 may be the size of the second parity part.
도 6은 본 발명의 일실시예에 따른 LDPC 부호화 방법을 나타낸 동작 흐름도이다.6 is a flowchart illustrating an LDPC encoding method according to an embodiment of the present invention.
도 6을 참조하면, 본 발명의 일실시예에 따른 LDPC 부호화 방법은 LDPC 부호어를 저장하기 위한 제1 메모리, 및 제2 메모리를 초기화한다(S510).Referring to FIG. 6, an LDPC encoding method according to an embodiment of the present invention initializes a first memory and a second memory for storing an LDPC codeword (S510).
이 때, 단계(S510)는 상기 수학식 4에 의하여 수행될 수 있다.In this case, step S510 may be performed according to Equation (4).
또한, 본 발명의 일실시예에 따른 LDPC 부호화 방법은 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 제2 메모리에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성한다(S520).Also, an LDPC encoding method according to an embodiment of the present invention performs accumulation on the second memory using a sequence corresponding to a parity check matrix, And generates the LDPC codeword corresponding to the LDPC codeword (S520).
이 때, 상기 누적은 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행될 수 있다.At this time, the accumulation may be performed at parity bit addresses updated using a sequence corresponding to a parity check matrix.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하고 길이가 3240(=K)인 시스터매틱(systematic) 파트(λ0, λ1, ..., λK-1), 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1080(=M1=g)인 제1 패러티 파트(λK, λK+1, ..., λK+ M1 -1) 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 11880(=M2)인 제2 패러티 파트(λK+ M1, λK+ M1 +1, ..., λK+ M1 + M2 -1)를 포함할 수 있다.At this time, the LDPC codeword includes systematic parts (? 0 ,? 1 , ...,? K-1 ) corresponding to the information bits and having a length of 3240 (= K) The first parity part (λ K , λ K + 1 , ..., λ K + M1 -1 ) corresponding to the diagonal diagonal matrix and having a length of 1080 (= M 1 = g) It corresponds to and may include the length of 11880 (= 2 M) of the second parity part (λ K + M1, λ K + M1 +1, ..., λ K + M1 + M2 -1).
이 때, 수열은 상기 시스터매틱 파트의 길이인 3240을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈(L)인 360으로 나눈 값에 제1 패러티 파트의 길이(M1)인 1080을 360으로 나눈 값을 더한 수(3240/360+1080/360=12)만큼의 행들(rows)을 가질 수 있다.In this case, a value obtained by dividing the length of the systematic part (3240) by the CPM size (L) 360 corresponding to the parity check matrix and dividing the length (M 1 ) of the first parity part by 1080 by 360 (3240/360 + 1080/360 = 12) rows.
전술한 바와 같이, 수열은 상기 테이블로 표현될 수 있다.As described above, the sequence may be represented by the table.
이 때, 패러티 비트 주소들은 상기 수열의 각각의 행에 나타내진 이전 패러티 비트 주소들 각각(x)과 제1 패러티 파트의 길이(M1)를 비교한 결과에 기반하여 갱신될 수 있다.At this time, the parity bit addresses may be updated based on the result of comparing each of the previous parity bit addresses (x) shown in each row of the series with the length (M 1 ) of the first parity part.
즉, 패러티 비트 주소들은 상기 수학식 5에 의하여 갱신될 수 있다. 이 때, x는 이전 패러티 비트 주소, m은 정보 비트 인덱스로 0보다 크고 L보다 작은 정수, L은 상기 패러티 검사 행렬의 CPM 사이즈, Q1은 M1/L, M1은 상기 제1 패러티 파트의 사이즈, Q2는 M2/L, M2는 상기 제2 패러티 파트의 사이즈일 수 있다.That is, the parity bit addresses can be updated by Equation (5). Where m is an integer greater than 0 and less than L, and L is the CPM size of the parity check matrix, Q 1 is M 1 / L, and M 1 is the first parity part Q 2 may be M 2 / L, and M 2 may be the size of the second parity part.
이 때, 상기 누적은 전술한 바와 같이 상기 패러티 검사 행렬의 CPM 사이즈 L=360 단위로 수열의 행을 바꿔가면서 수행될 수 있다.At this time, the accumulation may be performed while changing the rows of the sequence with the CPM size L = 360 units of the parity check matrix as described above.
이 때, 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)는 상기 수학식 7을 통하여 설명한 바와 같이, 제1 메모리 및 제2 메모리를 이용한, 패러티 인터리빙(parity interleaving)을 수행하여 생성될 수 있다.In this case, the first parity part (? K ,? K + 1 , ...,? K + M1-1 ) has parity interleaving using the first memory and the second memory, (parity interleaving).
이 때, 제2 패러티 파트(λK+ M1, λK+ M1 +1, ..., λK+ M1 + M2 -1)는 상기 수학식 8을 통하여 설명한 바와 같이 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)의 생성이 완료된 후 상기 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)와 상기 수열을 이용하여 수행되는 상기 누적이 완료된 후, 제1 메모리(310) 및 제2 메모리(320)를 이용한 패러티 인터리빙(parity interleaving)을 수행하여 생성될 수 있다.
At this time, the second parity part (M1 + K λ, λ K + M1 +1, ..., λ K + M1 + M2 -1) of the first parity part (λ, as described by Equation 8 K, λ K +1, ..., after the generation of λ K + M1-1) is completed by using the random number sequence and the first parity part (λ K, K + 1, λ, ..., λ K + M1-1) And performing parity interleaving using the
도 7은 본 발명의 일실시예에 따른 길이가 16200, 부호율이 3/15인 QC-LDPC 부호의 성능을 Eb/No에 대비하여 나타낸 그래프이다.FIG. 7 is a graph illustrating the performance of a QC-LDPC code having a length of 16200 and a coding rate of 3/15 according to an exemplary embodiment of the present invention in comparison with E b / N o .
도 7에 도시된 그래프는 전산실험을 위해 BPSK (Binary Phase Shift Keying) 변조와 50번의 반복복호를 수행하는 LLR(Log-likelihood Ratio) 기반의 합곱(sum-product) 알고리즘을 가정한 결과이다. 도 7에 도시된 바와 같이, 설계된 부호는 BER=10-6에서 쉐넌(Shannon) 한계로부터 약 1.25 dB 떨어져 있는 것을 알 수 있다.The graph shown in FIG. 7 is a result of assuming a log-likelihood ratio (LLR) -based sum-product algorithm for BPSK (Binary Phase Shift Keying) modulation and 50 iterative decoding for computational experiments. As shown in FIG. 7, the designed code is found to be about 1.25 dB away from the Shannon limit at BER = 10 -6 .
이상에서와 같이 본 발명에 따른 LDPC 부호화기, 복호화기 및 LDPC 부호화 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the LDPC encoder, the decoder, and the LDPC encoding method according to the present invention are not limited to the configuration and method of the embodiments described above, but the embodiments may be modified in various ways, All or some of the embodiments may be selectively combined.
310, 320:
메모리
330:
프로세서310, 320: memory
330: Processor
Claims (6)
0으로 초기화되는 제2 메모리; 및
패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 제2 메모리에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성하는 프로세서
를 포함하는 것을 특징으로 하는 LDPC 부호화기.A first memory for storing an LDPC codeword having a length of 16200 and a coding rate of 3/15;
A second memory initialized to zero; And
A processor for performing accumulation on the second memory using a sequence corresponding to a parity check matrix and generating the LDPC codeword corresponding to information bits,
And an LDPC encoder for decoding the LDPC code.
상기 LDPC 부호어는
상기 정보 비트들에 상응하고 길이가 3240인 시스터매틱(systematic) 파트, 상기 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1080인 제1 패러티 파트 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 11880인 제2 패러티 파트를 포함하는 것을 특징으로 하는 LDPC 부호화기.The method according to claim 1,
The LDPC codeword
A systematic part having a length of 3240 corresponding to the information bits, a first parity part corresponding to a double diagonal matrix included in the parity check matrix, a first parity part having a length of 1080, and an identity matrix included in the parity check matrix. And a second parity part having a length of 11880 corresponding to the first parity part.
상기 수열은 상기 시스터매틱 파트의 길이인 3240을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈인 360으로 나눈 값에 상기 제1 패러티 파트의 길이인 1080을 상기 CPM 사이즈로 나눈 값을 더한 수만큼의 행들(rows)을 가지는 것을 특징으로 하는 LDPC 부호화기.The method of claim 2,
The number of rows divided by the value obtained by dividing the length of the systematic part 3240 by the CPM size corresponding to the parity check matrix 360 and the value obtained by dividing the length of the first parity part 1080 by the CPM size and an LDPC encoder.
상기 수열은 하기 테이블로 표현되는 것을 특징으로 하는 LDPC 부호화기.
[테이블]
제1행: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988
제2행: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267
제3행: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003
제4행: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341
제5행: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561
제6행: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990
제7행: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092
제8행: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689
제9행: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893
제10행: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876
제11행: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810
제12행: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272The method of claim 3,
Wherein the sequence is represented by the following table.
[table]
First line: 8 372 841 4522 5253 7430 8542 9822 10550 11896 11988
Second line: 80 255 667 1511 3549 5239 5422 5497 7157 7854 11267
Third line: 257 406 792 2916 3072 3214 3638 4090 8175 8892 9003
Fourth line: 80 150 346 1883 6838 7818 9482 10366 10514 11468 12341
5th line: 32 100 978 3493 6751 7787 8496 10170 10318 10451 12561
6th line: 504 803 856 2048 6775 7631 8110 8221 8371 9443 10990
Line 7: 152 283 696 1164 4514 4649 7260 7370 11925 11986 12092
Line 8: 127 1034 1044 1842 3184 3397 5931 7577 11898 12339 12689
Ninth line: 107 513 979 3934 4374 4658 7286 7809 8830 10804 10893
10th line: 2045 2499 7197 8887 9420 9922 10132 10540 10816 11876
11th line: 2932 6241 7136 7835 8541 9403 9817 11679 12377 12810
Line 12: 2211 2288 3937 4310 5952 6597 9692 10445 11064 11272
상기 누적은,
상기 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행되는 것을 특징으로 하는 LDPC 부호화기.The method of claim 4,
The accumulation,
Wherein the parity bits are performed at parity bit addresses updated using the sequence.
상기 누적은
상기 패러티 검사 행렬의 CPM 사이즈(L) 단위로 상기 수열의 행을 바꿔가면서, 수행되는 것을 특징으로 하는 LDPC 부호화기.The method of claim 5,
The accumulation
Wherein the parity check matrix is performed while changing rows of the sequence in units of CPM size (L) of the parity check matrix.
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2864635A CA2864635C (en) | 2014-08-14 | 2014-09-25 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
CA2959619A CA2959619C (en) | 2014-08-14 | 2014-09-25 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
US14/496,356 US9490846B2 (en) | 2014-08-14 | 2014-09-25 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
MX2014012113A MX350606B (en) | 2014-08-14 | 2014-10-07 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same. |
US15/272,142 US10447304B2 (en) | 2014-08-14 | 2016-09-21 | Low density parity check encoder having length of 16200 code rate of 3/15, and low density parity check encoding method using the same |
US16/559,329 US10979074B2 (en) | 2014-08-14 | 2019-09-03 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
KR1020200159304A KR102312422B1 (en) | 2014-08-14 | 2020-11-24 | Low density parity check encoder with 16200 length and 3/15 rate, and method using the same |
US17/202,035 US11387846B2 (en) | 2014-08-14 | 2021-03-15 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
US17/835,651 US11711096B2 (en) | 2014-08-14 | 2022-06-08 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
US18/330,955 US20230318625A1 (en) | 2014-08-14 | 2023-06-07 | Low density parity check encoder having length of 16200 and code rate of 3/15, and low density parity check encoding method using the same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140106174 | 2014-08-14 | ||
KR1020140106174 | 2014-08-14 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200159304A Division KR102312422B1 (en) | 2014-08-14 | 2020-11-24 | Low density parity check encoder with 16200 length and 3/15 rate, and method using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160020991A true KR20160020991A (en) | 2016-02-24 |
KR102184826B1 KR102184826B1 (en) | 2020-12-01 |
Family
ID=55449740
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140120009A KR102184826B1 (en) | 2014-08-14 | 2014-09-11 | Low density parity check encoder with 16200 length and 3/15 rate, and method using the same |
KR1020200159304A KR102312422B1 (en) | 2014-08-14 | 2020-11-24 | Low density parity check encoder with 16200 length and 3/15 rate, and method using the same |
KR1020210132563A KR102513136B1 (en) | 2014-08-14 | 2021-10-06 | Low density parity check decoder with 16200 length and 3/15 rate, and method using the same |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200159304A KR102312422B1 (en) | 2014-08-14 | 2020-11-24 | Low density parity check encoder with 16200 length and 3/15 rate, and method using the same |
KR1020210132563A KR102513136B1 (en) | 2014-08-14 | 2021-10-06 | Low density parity check decoder with 16200 length and 3/15 rate, and method using the same |
Country Status (2)
Country | Link |
---|---|
KR (3) | KR102184826B1 (en) |
MX (1) | MX350606B (en) |
-
2014
- 2014-09-11 KR KR1020140120009A patent/KR102184826B1/en active IP Right Grant
- 2014-10-07 MX MX2014012113A patent/MX350606B/en active IP Right Grant
-
2020
- 2020-11-24 KR KR1020200159304A patent/KR102312422B1/en active Application Filing
-
2021
- 2021-10-06 KR KR1020210132563A patent/KR102513136B1/en active IP Right Grant
Non-Patent Citations (1)
Title |
---|
‘Digital video broadcasting (DVB): next generation broadcasting system to handheld, physical layer specification (DVB-NGH)’, DVB document A160, November 2012* * |
Also Published As
Publication number | Publication date |
---|---|
MX2014012113A (en) | 2016-02-15 |
KR102513136B1 (en) | 2023-03-24 |
MX350606B (en) | 2017-09-11 |
KR102184826B1 (en) | 2020-12-01 |
KR102312422B1 (en) | 2021-10-15 |
KR20200136342A (en) | 2020-12-07 |
KR20210124162A (en) | 2021-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102506682B1 (en) | Low density parity check decoder with 64800 length and 4/15 rate, and method using the same | |
KR102506681B1 (en) | Low density parity check decoder with 64800 length and 7/15 rate, and method using the same | |
KR20160024711A (en) | Low density parity check encoder and method using the same | |
KR102506683B1 (en) | Low density parity check decoder with 64800 length and 3/15 rate, and method using the same | |
KR102506685B1 (en) | Low density parity check decoder with 64800 length and 5/15 rate, and method using the same | |
KR102506686B1 (en) | Low density parity check decoder with 64800 length and 2/15 rate, and method using the same | |
KR102500053B1 (en) | Low density parity check decoder with 16200 length and 2/15 rate, and method using the same | |
KR102513136B1 (en) | Low density parity check decoder with 16200 length and 3/15 rate, and method using the same | |
KR102513139B1 (en) | Low density parity check decoder with 16200 length and 4/15 rate, and method using the same | |
KR102500084B1 (en) | Low density parity check decoder with 16200 length and 5/15 rate, and method using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |