KR20160092354A - 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법 - Google Patents

길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법 Download PDF

Info

Publication number
KR20160092354A
KR20160092354A KR1020150012880A KR20150012880A KR20160092354A KR 20160092354 A KR20160092354 A KR 20160092354A KR 1020150012880 A KR1020150012880 A KR 1020150012880A KR 20150012880 A KR20150012880 A KR 20150012880A KR 20160092354 A KR20160092354 A KR 20160092354A
Authority
KR
South Korea
Prior art keywords
bit
codeword
ldpc
interleaving
length
Prior art date
Application number
KR1020150012880A
Other languages
English (en)
Other versions
KR102240728B1 (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 KR1020150012880A priority Critical patent/KR102240728B1/ko
Priority to US14/626,140 priority patent/US9577680B2/en
Priority to CA2882459A priority patent/CA2882459C/en
Publication of KR20160092354A publication Critical patent/KR20160092354A/ko
Priority to US15/401,819 priority patent/US10230400B2/en
Priority to US16/255,713 priority patent/US10623024B2/en
Priority to KR1020210046045A priority patent/KR102371688B1/ko
Application granted granted Critical
Publication of KR102240728B1 publication Critical patent/KR102240728B1/ko

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/27Coding, 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/2703Coding, 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
    • 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/27Coding, 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/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • 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/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1128Judging correct decoding and iterative stopping criteria other than syndrome check and upper limit for decoding iterations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1185Parity 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
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with 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/27Coding, 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/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/6552DVB-T2
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • H04L1/0058Block-coded modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving

Abstract

비트 인터리버, BICM 장치 및 비트 인터리빙 방법이 개시된다. 본 발명의 일실시예에 따른 비트 인터리버는 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장하는 제1 메모리; 상기 LDPC 부호어를, 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성하는 프로세서; 및 상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 제공하는 제2 메모리를 포함한다.

Description

길이가 64800이며, 부호율이 4/15인 LDPC 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법 {BIT INTERLEAVER FOR 64-SYMBOL MAPPING AND LOW DENSITY PARITY CHECK CODEWORD WITH 64800 LENGTH, 4/15 RATE, AND METHOD USING THE SAME}
본 발명은 인터리버(interleaver)에 관한 것으로, 특히 디지털 방송 채널에서 발생한 군집오류(burst error)를 분산시키기 위한 비트 인터리버에 관한 것이다.
BICM(Bit-Interleaved Coded Modulation)은 대역-효율적인(bandwidth-efficient) 전송기술로 오류정정부호기(error-correction coder), 비트단위 인터리버(bit-by-bit interleaver) 및 높은 차수의 변조기(modulator)가 결합된 형태이다.
BICM은 오류정정부호기로 LDPC(Low-Density Parity Check) 부호기 또는 터보 부호기를 이용함으로써, 간단한 구조로 뛰어난 성능을 제공할 수 있다. 또한, BICM은 변조 차수(modulation order)와 오류정정부호의 길이 및 부호율 등을 다양하게 선택할 수 있기 때문에, 높은 수준의 플렉서빌러티(flexibility)를 제공한다. 이와 같은 장점 때문에, BICM은 DVB-T2나 DVB-NGH 와 같은 방송표준에서 사용되고 있을 뿐만 아니라 다른 차세대 방송시스템에서도 사용될 가능성이 높다.
이와 같은 장점에도 불구하고, BICM은 채널에서 발생한 군집오류(burst errors)를 비트 단위 인터리버를 통해 적절히 분산시키지 못하면, 그 성능이 급격하게 열화된다. 따라서, BICM에 사용되는 비트단위 인터리버는 변조차수나 오류정정부호의 길이 및 부호율 등에 최적화되어 설계되어야 한다.
본 발명의 목적은 방송 시스템 채널에서 발생한 군집오류(burst errors)를 효과적으로 분산시킬 수 있는 BICM 내부의 비트 인터리버를 제공하는 것이다.
또한, 본 발명의 목적은 길이가 64800이고 부호율이 4/15인 LDPC 부호기 및 64-심볼 맵핑(symbol mapping)을 수행하는 변조기에 최적화되어 ATSC 3.0 등 차세대 방송시스템에 적용될 수 있는 비트 인터리버를 제공하는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 비트 인터리버는 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장하는 제1 메모리; 상기 LDPC 부호어를, 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성하는 프로세서; 및 상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 제공하는 제2 메모리를 포함한다.
이 때, 64-심볼 맵핑은 64개의 컨스틸레이션들을 가지는 NUC(Non-Uniform Constellation) 심볼 맵핑일 수 있다.
이 때, 패러럴 팩터는 360이고, 상기 비트그룹은 360비트들을 포함할 수 있다.
이 때, LDPC 부호어는 부호어는
Figure pat00001
(N ldpc 는 64800)와 같이 표현되고, 하기 수학식 9와 같이 각각 360개의 비트들로 구성된 180개의 비트그룹들로 분할될 수 있다.
[수학식 9]
Figure pat00002
(X j 는 j번째 비트그룹, N ldpc 는 64800, N group 은 180)
이 때, 인터리빙은 퍼뮤테이션 오더(permutation order)를 이용한 하기 수학식 10을 이용하여 수행될 수 있다.
[수학식 10]
Figure pat00003
(X j 는 j번째 비트그룹, Y j 는 인터리빙된 j번째 비트그룹, π(j)는 비트그룹 단위 인터리빙을 위한 퍼뮤테이션 오더)
이 때, 퍼뮤테이션 오더는 하기 수학식 11에 의하여 표현되는 인터리빙 시퀀스에 상응하는 것일 수 있다.
[수학식 11]
인터리빙 시퀀스
={141 80 47 89 44 7 46 11 175 173 99 2 155 52 86 128 174 33 170 31 35 162 64 95 92 4 16 49 137 104 29 9 60 167 50 23 43 176 121 71 132 103 144 39 12 90 114 131 106 76 118 66 24 58 122 150 57 149 93 53 14 73 165 82 126 97 59 133 154 153 72 36 5 96 120 134 101 61 115 0 28 42 18 145 156 85 146 6 161 10 22 138 127 151 87 54 20 139 140 152 13 91 111 25 123 77 78 69 3 177 41 81 19 107 45 148 70 160 51 21 116 48 157 17 125 142 83 110 37 98 179 129 168 172 1 40 166 159 147 56 100 63 26 169 135 15 75 84 163 79 143 113 94 74 102 30 38 178 68 108 136 105 158 117 34 109 67 62 32 119 124 171 8 55 65 130 88 112 27 164}
또한, 본 발명에 따른 비트 인터리빙 방법은 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장하는 단계; 상기 LDPC 부호어를 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성하는 단계; 및 상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 출력하는 단계를 포함한다.
또한, 본 발명에 따른 BICM 장치는 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 출력하는 오류정정 부호화기; 상기 LDPC 부호어를 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 출력하는 비트 인터리버; 및 상기 인터리빙된 부호어를 64-심볼 맵핑하는 변조기를 포함한다.
본 발명에 따르면, 방송 시스템 채널에서 발생한 군집오류(burst errors)를 효과적으로 분산시킬 수 있는 BICM 내부의 비트 인터리버가 제공된다.
또한, 본 발명은 길이가 64800이고 부효율이 4/15인 LDPC 부호기 및 64-심볼 맵핑을 수행하는 변조기에 최적화되어 ATSC 3.0 등 차세대 방송시스템에 적용될 수 있는 비트 인터리버가 제공된다.
도 1은 본 발명의 일실시예에 따른 방송 신호 송/수신 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 방송 신호 송/수신 방법을 나타낸 동작 흐름도이다.
도 3은 본 발명의 일실시예에 따른 LDPC 부호에 상응하는 패러티 검사 행렬의 구조를 나타낸 도면이다.
도 4는 길이가 64800인 LDPC 부호어의 비트그룹들을 나타낸 도면이다.
도 5는 길이가 16200인 LDPC 부호어의 비트그룹들을 나타낸 도면이다.
도 6은 인터리빙 시퀀스에 따른 비트 그룹들 단위의 인터리빙을 나타낸 도면이다.
도 7은 본 발명의 일실시예에 따른 비트 인터리버를 나타낸 블록도이다.
도 8은 본 발명의 일실시예에 따른 비트 인터리빙 방법을 나타낸 동작 흐름도이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 방송 신호 송/수신 시스템을 나타낸 블록도이다.
도 1을 참조하면, BICM 장치(10)와 BICM 수신 장치(30)가 무선 채널(20)을 매개로 통신을 수행하는 것을 알 수 있다.
BICM 장치(10)는 k비트의 정보 비트들(information bits; 11)을 오류정정 부호화기(13)에서 부호화(encoding)하여 n비트의 부호어(codeword)를 생성한다. 이 때, 오류정정 부호화기(13)는 LDPC 부호화기 또는 터보 부호화기 등일 수 있다.
부호어는 비트 인터리버(14)에 의하여 인터리빙되어 인터리빙된 부호어가 생성된다.
이 때, 인터리빙은 비트그룹 단위로 수행될 수 있다. 이 때, 오류정정 부호화기(13)는 길이가 64800이고 부호율이 4/15인 LDPC 부호화기일 수 있고, 길이 64800의 부호어는 총 180개의 비트그룹들로 구분될 수 있고, 비트그룹들 각각은 LDPC 부호어의 패러럴 팩터(parallel factor)인 360개의 비트들을 포함할 수 있다.
이 때, 인터리빙은 후술할 인터리빙 시퀀스에 상응하여 비트그룹 단위로 수행될 수 있다.
이 때, 비트 인터리버(14)는 채널에서 발생한 군집오류를 효과적으로 분산시켜서 오류정정부호의 성능열화를 방지한다. 이 때, 비트 인터리버(14)는 오류정정부호의 길이 및 부호율, 그리고 변조차수에 따라서 개별적으로 설계될 수 있다.
인터리빙된 부호어는 변조기(15)에 의해 변조되어 안테나(17)를 통해 전송된다.
이 때, 변조기(15)는 심볼 맵핑장치를 포함하는 개념이다. 이 때, 변조기(15)는 64개의 컨스틸레이션(constellation)들에 코드들을 맵핑하는 64-심볼 맵핑을 수행하는 심볼 맵핑 장치일 수 있다.
이 때, 변조기(15)는 QAM(Quadrature Amplitude Modulation) 변조기 등의 균등(uniform) 변조기일 수도 있고, 비균등(non-uniform) 변조기일 수도 있다.
특히, 변조기(15)는 64개의 컨스틸레이션(constellation)들을 가지는 NUC(Non-Uniform Constellation) 심볼맵핑을 수행하는 심볼 맵핑 장치일 수 있다.
무선 채널(20)을 통해 전송된 신호는 BICM 수신 장치(30)의 안테나(31)를 통해 수신되고, BICM 수신 장치(30)에서는 BICM 장치(10)에서 일어났던 과정의 역과정을 거친다. 즉, 수신된 데이터가 복조기(33)에 의해 복조되고, 비트 디인터리버(34)에 의해 디인터리빙되고, 오류정정 복호화기(35)에 의해 복호되어 최종적으로 정보 비트들을 복원할 수 있다.
전술한 바와 같은 송/수신 과정은 본 발명의 특징을 설명하기 위해 필요한 최소한의 범위 내에서 설명된 것으로 이외에도 데이터 전송을 위해 필요한 많은 과정이 추가될 수 있음은 당업자에게 자명하다.
도 2는 본 발명의 일실시예에 따른 방송 신호 송/수신 방법을 나타낸 동작 흐름도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 방송 신호 송/수신 방법은 먼저 입력 비트들(information bits)을 오류정정 부호화한다(S210).
즉, 단계(S210)는 k비트의 정보 비트들(information bits)을 오류정정 부호화기에서 부호화하여 n비트의 부호어(codeword)를 생성한다.
이 때, 단계(S210)는 후술할 LDPC 부호화 방법과 같이 수행될 수 있다.
또한, 방송 신호 송/수신 방법은 n비트의 부호어를 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성한다(S220).
이 때, n비트의 부호어는 길이가 64800이고 부호율이 4/15인 LDPC 부호어일 수 있고, 길이 64800의 부호어는 총 180개의 비트그룹들로 구분될 수 있고, 비트그룹들 각각은 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 360개의 비트들을 포함할 수 있다.
이 때, 인터리빙은 후술할 인터리빙 시퀀스에 상응하여 비트그룹 단위로 수행될 수 있다.
또한, 방송 신호 송/수신 방법은 부호화된 데이터를 변조한다(S230).
즉, 단계(S230)는 인터리빙된 부호어를 변조기에 의해 변조한다.
이 때, 변조기는 심볼 맵핑장치를 포함하는 개념이다. 이 때, 변조기는 64개의 컨스틸레이션(constellation)들에 코드들을 맵핑하는 64-심볼 맵핑을 수행하는 심볼 맵핑 장치일 수 있다.
이 때, 변조기는 QAM(Quadrature Amplitude Modulation) 변조기 등의 균등(uniform) 변조기일 수도 있고, 비균등(non-uniform) 변조기일 수도 있다.
특히, 변조기는 64개의 컨스틸레이션(constellation)들을 가지는 NUC(Non-Uniform Constellation) 심볼맵핑을 수행하는 심볼 맵핑 장치일 수 있다.
또한, 방송 신호 송/수신 방법은 변조된 데이터를 송신한다(S240).
즉, 단계(S240)는 변조된 부호어를 안테나를 통해 무선 채널로 전송한다.
또한, 방송 신호 송/수신 방법은 수신된 데이터를 복조(demodulation)한다(S250).
즉, 단계(S250)는 수신기의 안테나를 통해 무선 채널을 통해 전송된 신호를 수신하고 수신된 데이터를 복조기에 의하여 복조한다.
또한, 방송 신호 송/수신 방법은 복조된 데이터를 디인터리빙한다(S260). 이 때, 단계(S260)의 디인터리빙은 단계(S220)의 역과정에 해당하는 것일 수 있다.
또한, 방송 신호 송/수신 방법은 디인터리빙된 부호어를 오류정정 복호화한다(S270).
즉, 단계(S270)는 수신기의 오류정정 복호기를 통해 오류정정 복호화를 수행하여 최종적으로 정보 비트들을 복원한다.
이 때, 단계(S270)는 후술할 LDPC 부호화 방법의 역과정에 해당하는 것일 수 있다.
LDPC(Low Density Parity Check) 부호는 AWGN(Additive White Gaussian Noise) 채널에서 쉐넌(Shannon) 한계에 근접하는 부호로 알려져 있으며, 터보부호보다 근사적으로(asymptotically) 우수한 성능, 병렬복호(parallelizable decoding) 등의 장점이 있다.
일반적으로, LDPC 부호는 랜덤하게 생성된 낮은 밀도의 PCM(Parity Check Matrix)에 의해 정의된다. 그러나, 랜덤하게 생성된 LDPC 부호는 PCM을 저장하기 위해 많은 메모리가 필요할 뿐만 아니라, 메모리를 액세스하는데 많은 시간이 소요된다. 이와 같은 문제를 해결하기 위해 쿼시-사이클릭(Quasi-cyclic) LDPC(QC-LDPC) 부호가 제안되었으며, 제로 메트릭스(zero matrix) 또는 CPM(Circulant Permutation Matrix)으로 구성된 QC-LDPC 부호는 하기 수학식 1에 의해 표현되는 PCM에 의해 정의된다.
[수학식 1]
Figure pat00004
여기서, J는 크기가 L x L인 CPM이며 하기 수학식 2와 같이 주어진다. 이하에서, L은 360일 수 있다.
[수학식 2]
Figure pat00005
또한, Ji는 L x L 항등행렬(identity matrix) I(=J0)를 오른쪽으로 i(0=i<L)번 이동시킨 것이며, J는 L x L 영행렬(zero matrix)이다. 따라서, QC-LDPC 부호에서는 Ji를 저장하기 위해 지수(exponent) i만 저장하면 되기 때문에, PCM를 저장하기 위해 요구되는 메모리가 크게 줄어든다.
도 3은 본 발명의 일실시예에 따른 LDPC 부호에 상응하는 패러티 검사 행렬의 구조를 나타낸 도면이다.
도 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과 같이 정의될 수도 있다.
[수학식 3]
Figure pat00006
여기서, ILxL는 크기가 L x L인 항등행렬이다.
즉, 행렬 B는 일반적인(bit-wise) 이중 대각행렬일 수도 있고, 상기 수학식 3에 표기된 바와 같이 항등행렬을 블록으로 하는 블럭와이즈(block-wise) 이중 대각행렬일 수도 있다. 일반적인(bit-wise) 이중 대각행렬에 대해서는 한국공개특허 2007-0058438호 등에 상세히 개시되어 있다.
특히, 행렬 B가 일반적인(bit-wise) 이중 대각행렬인 경우, 이러한 행렬 B를 포함하는 도 3에 도시된 구조의 PCM에 행 퍼뮤테이션(row permutation) 또는 열 퍼뮤테이션(column permutation)을 적용하여 쿼시 사이클릭으로 변환할 수 있음은 당업자에게 자명하다.
이 때, N은 부호어(codeword)의 길이이며, K는 정보(information)의 길이를 각각 나타낸다.
본 발명에서는 아래 표 1과 같이 부호율(code rate)이 4/15이며, 부호어의 길이가 64800인 새롭게 설계된 QC-LDPC 부호를 제안한다. 즉, 길이가 17280인 정보를 입력 받아, 길이가 64800인 LDPC 부호어를 생성하는 LDPC 부호를 제안한다.
표 1은 본 발명의 QC-LDPC 부호의 A, B, C, D, Z 행렬의 크기를 나타낸다.
[표 1]
Figure pat00007
새롭게 설계된 LDPC 부호는 수열 형태로 표시될 수 있으며, 수열과 행렬(패러티 비트 체크 행렬)은 등가(equivalent) 관계가 성립하고, 수열은 하기 테이블과 같이 표현될 수 있다.
[테이블]
제1행: 276 1754 1780 3597 8549 15196 26305 27003 33883 37189 41042 41849 42356
제2행: 730 873 927 9310 9867 17594 21969 25106 25922 31167 35434 37742 45866
제3행: 925 1202 1564 2575 2831 2951 5193 13096 18363 20592 33786 34090 40900
제4행: 973 1045 1071 8545 8980 11983 18649 21323 22789 22843 26821 36720 37856
제5행: 402 1038 1689 2466 2893 13474 15710 24137 29709 30451 35568 35966 46436
제6행: 263 271 395 5089 5645 15488 16314 28778 29729 34350 34533 39608 45371
제7행: 387 1059 1306 1955 6990 20001 24606 28167 33802 35181 38481 38688 45140
제8행: 53 851 1750 3493 11415 18882 20244 23411 28715 30722 36487 38019 45416
제9행: 810 1044 1772 3906 5832 16793 17333 17910 23946 29650 34190 40673 45828
제10행: 97 491 948 12156 13788 24970 33774 37539 39750 39820 41195 46464 46820
제11행: 192 899 1283 3732 7310 13637 13810 19005 24227 26772 31273 37665 44005
제12행: 424 531 1300 4860 8983 10137 16323 16888 17933 22458 26917 27835 37931
제13행: 130 279 731 3024 6378 18838 19746 21007 22825 23109 28644 32048 34667
제14행: 938 1041 1482 9589 10065 11535 17477 25816 27966 35022 35025 42536
제15행: 170 454 1312 5326 6765 23408 24090 26072 33037 38088 42985 46413
제16행: 220 804 843 2921 4841 7760 8303 11259 21058 21276 34346 37604
제17행: 676 713 832 11937 12006 12309 16329 26438 34214 37471 38179 42420
제18행: 714 931 1580 6837 9824 11257 15556 26730 32053 34461 35889 45821
제19행: 28 1097 1340 8767 9406 17253 29558 32857 37856 38593 41781 47101
제20행: 158 722 754 14489 23851 28160 30371 30579 34963 44216 46462 47463
제21행: 833 1326 1332 7032 9566 11011 21424 26827 29789 31699 32876 37498
제22행: 251 504 1075 4470 7736 11242 20397 32719 34453 36571 40344 46341
제23행: 330 581 868 15168 20265 26354 33624 35134 38609 44965 45209 46909
제24행: 729 1643 1732 3946 4912 9615 19699 30993 33658 38712 39424 46799
제25행: 546 982 1274 9264 11017 11868 15674 16277 19204 28606 39063 43331
제26행: 73 1160 1196 4334 12560 13583 14703 18270 18719 19327 38985 46779
제27행: 1147 1625 1759 3767 5912 11599 18561 19330 29619 33671 43346 44098
제28행: 104 1507 1586 9387 17890 23532 27008 27861 30966 33579 35541 39801
제29행: 1700 1746 1793 4941 7814 13746 20375 27441 30262 30392 35385 42848
제30행: 183 555 1029 3090 5412 8148 19662 23312 23933 28179 29962 35514
제31행: 891 908 1127 2827 4077 4376 4570 26923 27456 33699 43431 46071
제32행: 404 1110 1782 6003 14452 19247 26998 30137 31404 31624 46621 47366
제33행: 886 1627 1704 8193 8980 9648 10928 16267 19774 35111 38545 44735
제34행: 268 380 1214 4797 5168 9109 9288 17992 21309 33210 36210 41429
제35행: 572 1121 1165 6944 7114 20978 23540 25863 26190 26365 41521 44690
제36행: 18 185 496 5885 6165 20468 23895 24745 31226 33680 37665 38587
제37행: 289 527 1118 11275 12015 18088 22805 24679 28262 30160 34892 43212
제38행: 658 926 1589 7634 16231 22193 25320 26057 26512 27498 29472 34219
제39행: 337 801 1525 2023 3512 16031 26911 32719 35620 39035 43779 44316
제40행: 248 534 670 6217 11430 24090 26509 28712 33073 33912 38048 39813
제41행: 82 1556 1575 7879 7892 14714 22404 22773 25531 34170 38203 38254
제42행: 247 313 1224 3694 14304 24033 26394 28101 37455 37859 38997 41344
제43행: 790 887 1418 2811 3288 9049 9704 13303 14262 38149 40109 40477
제44행: 1310 1384 1471 3716 8250 25371 26329 26997 30138 40842 41041 44921
제45행: 86 288 367 1860 8713 18211 22628 22811 28342 28463 40415 45845
제46행: 719 1438 1741 8258 10797 29270 29404 32096 34433 34616 36030 45597
제47행: 215 1182 1364 8146 9949 10498 18603 19304 19803 23685 43304 45121
제48행: 1243 1496 1537 8484 8851 16589 17665 20152 24283 28993 34274 39795
제49행: 6320 6785 15841 16309 20512 25804 27421 28941 43871 44647
제50행: 2207 2713 4450 12217 16506 21188 23933 28789 38099 42392
제51행: 14064 14307 14599 14866 17540 18881 21065 25823 30341 36963
제52행: 14259 14396 17037 26769 29219 29319 31689 33013 35631 37319
제53행: 7798 10495 12868 14298 17221 23344 31908 39809 41001 41965
수열형태로 표기된 LDPC 부호는 DVB 표준에서 널리 사용되고 있다.
본 발명의 일실시예에 따르면, 수열형태로 표기된 LDPC 부호는 다음과 같이 부호화(encoding)된다. 정보크기(information size)가 K인 정보블록(information block) S=(s0, s1, ..., sK - 1)를 가정하자. LDPC 부호화기(encoder)는 크기가 K인 정보블록 S를 이용하여 크기가 N=K+M1+M2인 부호어(codeword)
Figure pat00008
를 생성한다. 여기서, M1=g, M2=N-K-g이다. 또한, M1은 이중 대각행렬(dual diagonal matrix) B에 대응하는 패러티(parity)의 크기이며, M2는 항등행렬 D에 대응하는 패러티의 크기이다. 부호화 과정은 다음과 같다.
-초기화(initialization):
[수학식 4]
Figure pat00009
-첫 번째
Figure pat00010
를 상기 테이블의 수열의 제1행에 명시된 패러티 비트 주소들(parity bit addresses)에서 누적(accumulate)한다. 예를 들어, 길이가 64800이며, 부호율이 4/15인 LDPC 부호에서의 누적 과정은 다음과 같다.
Figure pat00011
여기서 덧셈(
Figure pat00012
)은 GF(2)에서 일어난다.
-다음 L-1개의 정보비트, 즉
Figure pat00013
들에 대해서는, 하기 수학식 5에서 계산된 패러티 비트 주소들에서 누적한다.
[수학식 5]
Figure pat00014
여기서, x는 첫 번째 비트
Figure pat00015
에 대응되는 패러티 비트 주소들, 즉 상기 테이블의 수열의 제1행에 표기된 패러티 비트 주소들을 나타내며, Q1 = M1/L, Q2 = M2/L, L = 360이다. 또한, Q1과 Q2는 하기 표 2에 정의된다. 예를 들어, 길이가 64800이며, 부호율이 4/15인 LDPC 부호는 M1 = 1800, Q1 = 5, M2 = 45720, Q2 = 127, L = 360이므로, 두 번째 비트
Figure pat00016
에 대해서는 상기 수학식 5를 이용하면 다음과 같은 연산이 수행된다.
Figure pat00017
표 2는 설계된 QC-LDPC 부호의 M1, M2, Q1, Q2의 크기를 나타낸다.
[표 2]
Figure pat00018
-다음의
Figure pat00019
부터
Figure pat00020
까지의 새로운 360개의 정보비트들은 상기 수열의 제2행을 이용하여, 상기 수학식 5로부터 패러티 비트 누적기들의 주소를 계산하고, 누적한다.
-비슷한 방법으로, 새로운 L개의 정보비트들로 구성된 모든 그룹(group)들에 대해서, 상기 수열들의 새로운 행을 이용하여, 상기 수학식 5로부터 패러티 비트 누적기들의 주소를 계산하고, 누적한다.
-
Figure pat00021
에서
Figure pat00022
까지의 모든 정보비트들이 사용된 후, i = 1부터 시작하여 하기 수학식 6의 연산을 순차적으로 수행한다.
[수학식 6]
Figure pat00023
-다음으로, 하기 수학식 7과 같은 패러티 인터리빙(interleaving)을 수행하면, 이중 대각행렬 B에 대응하는 패러티 생성이 완료된다.
[수학식 7]
Figure pat00024
K개의 정보비트(
Figure pat00025
)를 이용하여 이중 대각행렬 B에 대응하는 패러티 생성이 완료되면, M1개의 생성된 패러티(
Figure pat00026
)을 이용하여, 항등행렬 D에 대응하는 패러티를 생성한다.
-
Figure pat00027
에서
Figure pat00028
까지의 L개의 비트들로 구성된 모든 그룹(group)들에 대해서, 상기 수열들의 새로운 행(이중 대각행렬 B에 대응하는 패러티를 생성할 때 이용한 마지막 행의 바로 다음 행부터 시작)과 상기 수학식 5를 이용하여 패러티 비트 누적기들의 주소를 계산하고, 관련 연산을 수행한다.
-
Figure pat00029
에서
Figure pat00030
까지의 모든 비트들이 사용된 후, 하기 수학식 8과 같은 패러티 인터리빙을 수행하면, 항등행렬 D에 대응하는 패러티 생성이 완료된다.
[수학식 8]
Figure pat00031
도 4는 길이가 64800인 LDPC 부호어의 비트그룹들을 나타낸 도면이다.
도 4를 참조하면, 길이가 64800인 LDPC 부호어가 180개의 비트그룹들(0th group ~ 179th group)로 구분되는 것을 알 수 있다.
이 때, 360은 LDPC 부호어의 패러럴 팩터(Parallel Factor; PF)일수 있다. 즉, PF가 360이기 때문에, 길이가 64800인 LDPC 부호어는 도 4에 도시된 바와 같이 180개의 비트그룹들로 구분되고, 각각의 비트그룹들은 360비트들을 포함한다.
도 5는 길이가 16200인 LDPC 부호어의 비트그룹들을 나타낸 도면이다.
도 5를 참조하면, 길이가 16200인 LDPC 부호어가 45개의 비트그룹들(0th group ~ 44th group)으로 구분되는 것을 알 수 있다.
이 때, 360은 LDPC 부호어의 패러럴 팩터(Parallel Factor; PF)일수 있다. 즉, PF가 360이기 때문에, 길이가 16200인 LDPC 부호어는 도 5에 도시된 바와 같이 45개의 비트그룹들로 구분되고, 각각의 비트그룹들은 360비트들을 포함한다.
도 6은 인터리빙 시퀀스에 따른 비트 그룹들 단위의 인터리빙을 나타낸 도면이다.
도 6을 참조하면, 설계된 인터리빙 시퀀스에 의해 비트그룹의 순서를 바꿈으로써 인터리빙이 수행되는 것을 알 수 있다.
예를 들어, 길이가 16200인 LDPC 부호어에 대한 인터리빙 시퀀스가 아래와 같다고 가정하자.
인터리빙 시퀀스 = {24 34 15 11 2 28 17 25 5 38 19 13 6 39 1 14 33 37 29 12 42 31 30 32 36 40 26 35 44 4 16 8 20 43 21 7 0 18 23 3 10 41 9 27 22}
그러면, 도 4에 도시된 것과 같은 LDPC 부호어의 비트그룹들의 순서는 인터리빙 시퀀스에 의해 도 6에 도시된 것처럼 바뀐다.
즉, LDPC 부호어(610) 및 인터리빙된 부호어(620)가 각각 45개의 비트그룹들을 포함하고, 인터리빙 시퀀스에 의해 LDPC 부호어(610)의 24번째 비트그룹이 인터리빙된 LDPC 부호어(620)의 0번째 비트그룹이 되고, LDPC 부호어(610)의 34번째 비트그룹이 인터리빙된 LDPC 부호어(620)의 1번째 비트그룹이 되고, LDPC 부호어(610)의 15번째 비트그룹이 인터리빙된 LDPC 부호어(620)의 2번째 비트그룹이 되고, LDPC 부호어(610)의 11번째 비트그룹이 인터리빙된 LDPC 부호어(620)의 3번째 비트그룹이 되고, LDPC 부호어(610)의 2번째 비트그룹이 인터리빙된 LDPC 부호어(620)의 4번째 비트그룹이 되는 것을 알 수 있다.
길이가 N ldpc 인 LDPC 부호어
Figure pat00032
N group = N ldpc / 360 개의 비트그룹들로 쪼개어진다.
[수학식 9]
Figure pat00033
여기서, X j 는 j번째 비트그룹을 나타내며, 각각의 X j 는 360 비트들로 구성된다.
비트그룹들로 분할된 LDPC 부호어는 하기 수학식 10과 같이 인터리빙된다.
[수학식 10]
Figure pat00034
여기서, Y j 는 인터리빙된 j번째 비트그룹을 나타내며, π(j)는 비트그룹 단위 인터리빙을 위한 퍼뮤테이션 오더(permutation order)이다. 퍼뮤테이션 오더는 하기 수학식 11의 인터리빙 시퀀스에 대응한다.
[수학식 11]
인터리빙 시퀀스
={141 80 47 89 44 7 46 11 175 173 99 2 155 52 86 128 174 33 170 31 35 162 64 95 92 4 16 49 137 104 29 9 60 167 50 23 43 176 121 71 132 103 144 39 12 90 114 131 106 76 118 66 24 58 122 150 57 149 93 53 14 73 165 82 126 97 59 133 154 153 72 36 5 96 120 134 101 61 115 0 28 42 18 145 156 85 146 6 161 10 22 138 127 151 87 54 20 139 140 152 13 91 111 25 123 77 78 69 3 177 41 81 19 107 45 148 70 160 51 21 116 48 157 17 125 142 83 110 37 98 179 129 168 172 1 40 166 159 147 56 100 63 26 169 135 15 75 84 163 79 143 113 94 74 102 30 38 178 68 108 136 105 158 117 34 109 67 62 32 119 124 171 8 55 65 130 88 112 27 164}
즉, 부호어 및 인터리빙된 부호어 각각이 0번째 비트그룹부터 179번째 비트그룹까지 180개의 비트그룹들을 포함한다고 할 때, 수학식 11의 인터리빙 시퀀스는 부호어의 141번째 비트그룹이 인터리빙된 부호어의 0번째 비트그룹이 되고, 부호어의 80번째 비트그룹이 인터리빙된 부호어의 1번째 비트그룹이 되고, 부호어의 47번째 비트그룹이 인터리빙된 부호어의 2번째 비트그룹이 되고, 부호어의 89번째 비트그룹이 인터리빙된 부호어의 3번째 비트그룹이 되고, ..., 부호어의 27번째 비트그룹이 인터리빙된 부호어의 178번째 비트그룹이 되고, 부호어의 164번째 비트그룹이 인터리빙된 부호어의 179번째 비트그룹이 됨을 의미한다.
특히, 수학식 11에 나타내어진 인터리빙 시퀀스는 64-심볼 맵핑(특히, NUC 심볼 맵핑)이 사용되고, 길이가 64800이고 부호율이 4/15인 LDPC 부호기가 사용되는 경우에 최적화된 것이다.
도 7은 본 발명의 일실시예에 따른 비트 인터리버를 나타낸 블록도이다.
도 7을 참조하면, 본 발명의 일실시예에 따른 비트 인터리버는 메모리들(710, 730) 및 프로세서(720)를 포함한다.
메모리(710)는 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장한다.
프로세서(720)는 상기 LDPC 부호어를, 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성한다.
이 때, 패러럴 팩터는 360일 수 있다. 이 때, 비트그룹은 360 비트들을 포함할 수 있다.
이 때, LDPC 부호어는 상기 수학식 9와 같이 180개의 비트그룹들로 분할될 수 있다.
이 때, 인터리빙은 퍼뮤테이션 오더(permutation order)를 이용한 상기 수학식 10을 이용하여 수행될 수 있다.
이 때, 퍼뮤테이션 오더는 상기 수학식 11에 의하여 표현되는 인터리빙 시퀀스에 상응하는 것일 수 있다.
메모리(730)는 상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 제공한다.
이 때, 변조기는 NUC(Non-Uniform Constellation) 심볼 맵핑을 수행하는 심볼 맵핑 장치일 수 있다.
메모리(710) 및 메모리(730)는 비트들의 집합을 저장하기 위한 다양한 하드웨어에 상응하는 것일 수도 있고, 어레이(array), 리스트(list), 스택(stack), 큐(queue) 등의 자료구조(data structure)에 상응하는 것일 수도 있다.
이 때, 메모리(710) 및 메모리(730)는 물리적으로 별개의 장치가 아니라, 물리적으로는 하나의 장치의 서로 다른 주소에 상응하는 것일 수 있다. 즉, 메모리(710) 및 메모리(730)는 물리적으로는 구분되지 않고, 논리적으로만 구분되는 것일 수 있다.
도 1에 도시된 오류정정 부호화기(13)는 도 7과 같은 구조로 구현될 수도 있다.
즉, 오류정정 부호화기는 메모리들 및 프로세서를 포함할 수 있다. 이 때, 제1 메모리는 길이가 64800이고 부호율이 4/15인 LDPC 부호어(codeword)를 저장하기 위한 메모리이고, 제2 메모리는 0으로 초기화되는 메모리일 수 있다.
메모리들은 각각 λi(i=0, 1, ..., N-1) 및 Pj(j=0, 1, ..., M1+M2-1)에 상응하는 것일 수 있다.
프로세서는 패러티 검사 행렬(parity check matrix)에 상응하는 수열을 이용하여 상기 메모리에 대한 누적(accumulation)을 수행하여, 정보 비트들(information bits)에 상응하는 상기 LDPC 부호어를 생성할 수 있다.
이 때, 누적은 상기 테이블의 수열을 이용하여 갱신되는 패러티 비트 주소들(parity bit addresses)에서 수행될 수 있다.
이 때, LDPC 부호어는 상기 정보 비트들에 상응하고 길이가 17280(=K)인 시스터매틱(systematic) 파트(λ0, λ1, ..., λK -1), 패러티 검사 행렬에 포함된 이중 대각행렬에 상응하고 길이가 1800(=M1=g)인 제1 패러티 파트(λK, λK + 1, ..., λK +M1-1) 및 상기 패러티 검사 행렬에 포함된 항등행렬에 상응하고 길이가 45720(=M2)인 제2 패러티 파트(λK +M1, λK +M1+ 1, ..., λK +M1+M2- 1)를 포함할 수 있다.
이 때, 수열은 상기 시스터매틱 파트의 길이인 17280을 상기 패러티 검사 행렬에 상응하는 CPM 사이즈(L)인 360으로 나눈 값에 제1 패러티 파트의 길이(M1)인 1800을 360으로 나눈 값을 더한 수(17280/360+1800/360=53)만큼의 행들(rows)을 가질 수 있다.
전술한 바와 같이, 수열은 상기 테이블로 표현될 수 있다.
이 때, 제2 메모리는 제1 패러티 파트의 길이(M1) 및 제2 패러티 파트의 길이(M2)의 합(M1+M2)에 상응하는 사이즈를 가질 수 있다.
이 때, 패러티 비트 주소들은 상기 수열의 각각의 행에 나타내진 이전 패러티 비트 주소들 각각(x)과 제1 패러티 파트의 길이(M1)를 비교한 결과에 기반하여 갱신될 수 있다.
즉, 패러티 비트 주소들은 상기 수학식 5에 의하여 갱신될 수 있다. 이 때, x는 이전 패러티 비트 주소, m은 정보 비트 인덱스로 0보다 크고 L보다 작은 정수, L은 상기 패러티 검사 행렬의 CPM 사이즈, Q1은 M1/L, M1은 상기 제1 패러티 파트의 사이즈, Q2는 M2/L, M2는 상기 제2 패러티 파트의 사이즈일 수 있다.
이 때, 상기 누적은 전술한 바와 같이 상기 패러티 검사 행렬의 CPM 사이즈 L=360 단위로 수열의 행을 바꿔가면서 수행될 수 있다.
이 때, 제1 패러티 파트(λK, λK+1, ..., λK+M1-1)는 상기 수학식 7을 통하여 설명한 바와 같이, 제1 메모리 및 제2 메모리를 이용한, 패러티 인터리빙(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 메모리 및 제2 메모리를 이용한 패러티 인터리빙(parity interleaving)을 수행하여 생성될 수 있다.
도 8은 본 발명의 일실시예에 따른 비트 인터리빙 방법을 나타낸 동작 흐름도이다.
도 8을 참조하면, 본 발명의 일실시예에 따른 비트 인터리빙 방법은 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장한다(S810).
이 때, LDPC 부호어는
Figure pat00035
(N ldpc 는 64800)와 같이 표현되고, 상기 수학식 9와 같이 각각 360개의 비트들로 구성된 180개의 비트그룹들로 분할될 수 있다.
또한, 본 발명의 일실시예에 따른 비트 인터리빙 방법은 상기 LDPC 부호어를 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성한다(S820).
이 때, 인터리빙은 퍼뮤테이션 오더(permutation order)를 이용한 상기 수학식 10을 이용하여 수행될 수 있다.
이 때, 퍼뮤테이션 오더는 상기 수학식 11에 의하여 표현되는 인터리빙 시퀀스에 상응하는 것일 수 있다.
이 때, 패러럴 팩터는 360이고, 비트그룹은 360 비트들을 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 비트 인터리빙 방법은 상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 출력한다(S830).
이상에서와 같이 본 발명에 따른 비트 인터리버, BICM 장치 및 비트 인터리빙 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
710, 730: 메모리
720: 프로세서

Claims (6)

  1. 길이가 64800이고 부호율이 4/15인 LDPC 부호어를 저장하는 제1 메모리;
    상기 LDPC 부호어를, 상기 LDPC 부호어의 패러럴 팩터(parallel factor)에 상응하는 사이즈의 비트그룹 단위로 인터리빙하여 인터리빙된 부호어를 생성하는 프로세서; 및
    상기 인터리빙된 부호어를 64-심볼 맵핑을 위한 변조기로 제공하는 제2 메모리
    를 포함하는 것을 특징으로 하는 비트 인터리버.
  2. 청구항 1에 있어서,
    상기 64-심볼 맵핑은 64개의 컨스틸레이션들을 가지는 NUC(Non-Uniform Constellation) 심볼 맵핑인 것을 특징으로 하는 비트 인터리버.
  3. 청구항 2에 있어서,
    상기 패러럴 팩터는 360이고, 상기 비트그룹은 360비트들을 포함하는 것을 특징으로 하는 비트 인터리버.
  4. 청구항 3에 있어서,
    상기 LDPC 부호어는
    Figure pat00036
    (N ldpc 는 64800)와 같이 표현되고, 하기 수학식과 같이 각각 360개의 비트들로 구성된 180개의 비트그룹들로 분할되는 것을 특징으로 하는 비트 인터리버.
    [수학식]
    Figure pat00037

    (X j 는 j번째 비트그룹, N ldpc 는 64800, N group 은 180)
  5. 청구항 4에 있어서,
    상기 인터리빙은
    퍼뮤테이션 오더(permutation order)를 이용한 하기 수학식을 이용하여 수행되는 것을 특징으로 하는 비트 인터리버.
    [수학식]
    Figure pat00038

    (X j 는 j번째 비트그룹, Y j 는 인터리빙된 j번째 비트그룹, π(j)는 비트그룹 단위 인터리빙을 위한 퍼뮤테이션 오더)
  6. 청구항 5에 있어서,
    상기 퍼뮤테이션 오더는
    하기 수학식에 의하여 표현되는 인터리빙 시퀀스에 상응하는 것을 특징으로 하는 비트 인터리버.
    [수학식]
    인터리빙 시퀀스
    ={141 80 47 89 44 7 46 11 175 173 99 2 155 52 86 128 174 33 170 31 35 162 64 95 92 4 16 49 137 104 29 9 60 167 50 23 43 176 121 71 132 103 144 39 12 90 114 131 106 76 118 66 24 58 122 150 57 149 93 53 14 73 165 82 126 97 59 133 154 153 72 36 5 96 120 134 101 61 115 0 28 42 18 145 156 85 146 6 161 10 22 138 127 151 87 54 20 139 140 152 13 91 111 25 123 77 78 69 3 177 41 81 19 107 45 148 70 160 51 21 116 48 157 17 125 142 83 110 37 98 179 129 168 172 1 40 166 159 147 56 100 63 26 169 135 15 75 84 163 79 143 113 94 74 102 30 38 178 68 108 136 105 158 117 34 109 67 62 32 119 124 171 8 55 65 130 88 112 27 164}
KR1020150012880A 2015-01-27 2015-01-27 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법 KR102240728B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020150012880A KR102240728B1 (ko) 2015-01-27 2015-01-27 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
US14/626,140 US9577680B2 (en) 2015-01-27 2015-02-19 Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 64-symbol mapping, and bit interleaving method using same
CA2882459A CA2882459C (en) 2015-01-27 2015-02-19 Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 64-symbol mapping, and bit interleaving method using same
US15/401,819 US10230400B2 (en) 2015-01-27 2017-01-09 Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 64-symbol mapping, and bit interleaving method using same
US16/255,713 US10623024B2 (en) 2015-01-27 2019-01-23 Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 64-symbol mapping, and bit interleaving method using same
KR1020210046045A KR102371688B1 (ko) 2015-01-27 2021-04-08 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150012880A KR102240728B1 (ko) 2015-01-27 2015-01-27 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210046045A Division KR102371688B1 (ko) 2015-01-27 2021-04-08 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

Publications (2)

Publication Number Publication Date
KR20160092354A true KR20160092354A (ko) 2016-08-04
KR102240728B1 KR102240728B1 (ko) 2021-04-16

Family

ID=56434290

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150012880A KR102240728B1 (ko) 2015-01-27 2015-01-27 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

Country Status (3)

Country Link
US (3) US9577680B2 (ko)
KR (1) KR102240728B1 (ko)
CA (1) CA2882459C (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200107952A (ko) * 2018-01-18 2020-09-16 소니 주식회사 송신 방법 및 수신 장치
KR20200107954A (ko) * 2018-01-18 2020-09-16 소니 주식회사 송신 방법 및 수신 장치
KR20200108832A (ko) * 2018-01-18 2020-09-21 소니 주식회사 송신 방법 및 수신 장치

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9602136B2 (en) * 2014-03-06 2017-03-21 Electronics And Telecommunications Research Institute Bit interleaver for low-density parity check codeword having length of 64800 and code rate of 4/15 and 256-symbol mapping, and bit interleaving method using same
KR102240748B1 (ko) * 2015-01-20 2021-04-16 한국전자통신연구원 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240744B1 (ko) * 2015-01-27 2021-04-16 한국전자통신연구원 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287616B1 (ko) * 2015-02-16 2021-08-10 한국전자통신연구원 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287639B1 (ko) * 2015-02-17 2021-08-10 한국전자통신연구원 길이가 16200이며, 부호율이 4/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102287635B1 (ko) * 2015-02-17 2021-08-10 한국전자통신연구원 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
JP6930372B2 (ja) * 2017-10-31 2021-09-01 ソニーグループ株式会社 送信装置及び送信方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150005426A (ko) * 2013-07-05 2015-01-14 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6347124B1 (en) * 1998-10-29 2002-02-12 Hughes Electronics Corporation System and method of soft decision decoding
US6567465B2 (en) * 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
US20030152158A1 (en) * 2002-02-11 2003-08-14 Vocal Technologies, Ltd. Method of asymmetrical forward error correction in a communication system. application to wireless local area networks (WLAN) using turbo codes and low density parity check codes
WO2004006443A1 (en) * 2002-07-03 2004-01-15 Hughes Electronics Corporation Bit-interleaved coded modulation using low density parity check (ldpc) codes
US7756217B2 (en) * 2004-12-21 2010-07-13 Broadcom Corporation Method and system for a robust initialization symbol for digital duplexing
RU2437237C1 (ru) * 2007-09-28 2011-12-20 ЭлДжи ЭЛЕКТРОНИКС ИНК. Устройство для передачи и приема сигнала и способ передачи и приема сигнала
US8654886B2 (en) 2008-05-29 2014-02-18 Electronics & Telecommunications Research Institute Method and apparatus for transmitting/receiving broadcasting-communication data
EP2134051A1 (en) 2008-06-13 2009-12-16 THOMSON Licensing An adaptive QAM transmission scheme for improving performance on an AWGN channel
KR20090130808A (ko) 2008-06-16 2009-12-24 한국전자통신연구원 디지털 케이블 송수신 시스템에서 적응/가변형 변복조 장치
WO2011062424A2 (en) * 2009-11-18 2011-05-26 Samsung Electronics Co., Ltd. Method and apparatus for transmitting and receiving data in a communication system
US8402341B2 (en) * 2010-02-18 2013-03-19 Mustafa Eroz Method and system for providing low density parity check (LDPC) encoding and decoding
US9009775B2 (en) * 2010-02-23 2015-04-14 Lg Electronics Inc. Broadcasting signal transmission device, broadcasting signal reception device, and method for transmitting/receiving broadcasting signal using same
EP2540008B1 (en) * 2010-02-25 2013-12-11 Sony Corporation Mapping apparatus and method for transmission of data in a multi-carrier broadcast system
JP5500379B2 (ja) 2010-09-03 2014-05-21 ソニー株式会社 データ処理装置、及びデータ処理方法
JP5630282B2 (ja) * 2011-01-19 2014-11-26 ソニー株式会社 データ処理装置、及び、データ処理方法
EP2525495A1 (en) 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
EP2525497A1 (en) * 2011-05-18 2012-11-21 Panasonic Corporation Bit-interleaved coding and modulation (BICM) with quasi-cyclic LDPC codes
EP2536030A1 (en) * 2011-06-16 2012-12-19 Panasonic Corporation Bit permutation patterns for BICM with LDPC codes and QAM constellations
EP2958319B1 (en) * 2013-05-09 2018-10-31 LG Electronics Inc. Broadcast signal transmission and reception apparatus and methods therefor
US9735809B2 (en) * 2013-09-26 2017-08-15 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US9577679B2 (en) * 2013-10-04 2017-02-21 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US10355714B2 (en) * 2013-10-04 2019-07-16 Samsung Electronics Co., Ltd. Transmitting apparatus and signal processing method thereof
US9977676B2 (en) * 2013-11-15 2018-05-22 Qualcomm Incorporated Vector processing engines (VPEs) employing reordering circuitry in data flow paths between execution units and vector data memory to provide in-flight reordering of output vector data stored to vector data memory, and related vector processor systems and methods
CN105960788B (zh) * 2014-02-05 2021-06-08 三星电子株式会社 发送设备及其调制方法
US9602137B2 (en) * 2014-02-19 2017-03-21 Samsung Electronics Co., Ltd. Transmitting apparatus and interleaving method thereof
US9143375B1 (en) * 2014-03-09 2015-09-22 Allen LeRoy Limberg Iterative-diversity COFDM broadcasting with improved shaping gain
US20160204804A1 (en) 2015-01-13 2016-07-14 Sony Corporation Data processing apparatus and method
US9590758B2 (en) * 2015-05-19 2017-03-07 Samsung Electronics Co., Ltd. Transmitting apparatus and mapping method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150005426A (ko) * 2013-07-05 2015-01-14 삼성전자주식회사 송신 장치 및 그의 신호 처리 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200107952A (ko) * 2018-01-18 2020-09-16 소니 주식회사 송신 방법 및 수신 장치
KR20200107954A (ko) * 2018-01-18 2020-09-16 소니 주식회사 송신 방법 및 수신 장치
KR20200108832A (ko) * 2018-01-18 2020-09-21 소니 주식회사 송신 방법 및 수신 장치

Also Published As

Publication number Publication date
CA2882459C (en) 2021-04-27
KR102240728B1 (ko) 2021-04-16
US9577680B2 (en) 2017-02-21
US20160218744A1 (en) 2016-07-28
US20190158123A1 (en) 2019-05-23
US20170117920A1 (en) 2017-04-27
CA2882459A1 (en) 2016-07-27
US10623024B2 (en) 2020-04-14
US10230400B2 (en) 2019-03-12

Similar Documents

Publication Publication Date Title
KR20210064166A (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102557434B1 (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 256-심볼 맵핑에 상응하는 bicm 수신 장치 및 방법
KR20160089767A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160092354A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102429471B1 (ko) 길이가 16200이며, 부호율이 4/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20210098418A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20210098416A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 1024-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160099265A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102554687B1 (ko) 길이가 16200이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑에 상응하는 bicm 수신 장치 및 방법
KR20160100665A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160089766A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160092351A (ko) 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160092350A (ko) 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20210097684A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160100669A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 4096-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160089765A (ko) 길이가 64800이며, 부호율이 2/15인 ldpc 부호어 및 qpsk를 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR102240740B1 (ko) 길이가 16200이며, 부호율이 2/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160100668A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 1024-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160100666A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160092353A (ko) 길이가 64800이며, 부호율이 3/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20160101390A (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 16-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20150105191A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20220110712A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 4096-심볼 맵핑에 상응하는 bicm 수신 장치 및 방법
KR20150135054A (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법
KR20210042075A (ko) 길이가 64800이며, 부호율이 4/15인 ldpc 부호어 및 64-심볼 맵핑을 위한 비트 인터리버 및 이를 이용한 비트 인터리빙 방법

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