KR100975061B1 - 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 - Google Patents
저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 Download PDFInfo
- Publication number
- KR100975061B1 KR100975061B1 KR1020030085770A KR20030085770A KR100975061B1 KR 100975061 B1 KR100975061 B1 KR 100975061B1 KR 1020030085770 A KR1020030085770 A KR 1020030085770A KR 20030085770 A KR20030085770 A KR 20030085770A KR 100975061 B1 KR100975061 B1 KR 100975061B1
- Authority
- KR
- South Korea
- Prior art keywords
- code word
- column
- word bit
- generating
- bit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 239000011159 matrix material Substances 0.000 claims abstract description 61
- 239000013598 vector Substances 0.000 claims abstract description 37
- 230000000875 corresponding effect Effects 0.000 claims description 25
- 230000002596 correlated effect Effects 0.000 claims description 23
- 238000010187 selection method Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 15
- 239000000470 constituent Substances 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
-
- 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
-
- 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
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2903—Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
Abstract
본 발명은 패리티 정보 생성 방법에 관한 것으로서, 보다 상세하게는 저밀도 패리티 검사 행렬을 이용한 부호화 방법에서 열 방향 패리티 정보와 행 방향 패리티 정보를 서로 독립적으로 생성하는 방법에 관한 것이다. 본 발명은 패리티 검사 행렬 및 메시지 정보를 이용하여 열 방향 패리티 정보를 생성함으로써 코드 워드 벡터를 생성하는 단계; 상기 생성된 코드 워드 벡터내의 코드 워드 비트 중에서 행 방향 패리티 정보를 생성하기 위한 코드 워드 비트를 선택하는 단계; 및 상기 선택된 코드 워드 비트에 기초하여 행 방향 패리티 정보를 생성하는 단계를 포함하고, 상기 코드 워드 비트를 선택하는 단계는 서로 동일한 열 방향 패리티 정보 생성에 관여하는 코드 워드 비트를 제외시키는 단계를 포함하는 특징으로 한다. 본 발명에 의하면, 열 방향 패리티 정보 생성에 관여하지 않은 코드 워드 비트에 기초하여 행 방향 패리티 정보를 생성함으로써 서로 독립된 패리티 정보의 생성이 가능하다.
Description
도 1은 LDPC 부호화에서 행 방향 패리티 정보 생성의 개념을 나타내는 도면.
도 2는 본 발명에 따른 LDPC 부호화 방법을 나타내는 시간 흐름도.
도 3은 본 발명에 따른 LDPC 부호화에서 행 방향 패리티 정보를 생성하기 선택된 코드 워드 비트의 배치를 나타내는 도면.
도 4는 패리티 검사 행렬의 구조와 코드 워드 비트들간의 상관성의 관계를 나타내는 도면.
도 5는 도 4의 패리티 검사 행렬을 나타내는 인자 그래프.
도 6은 인자 그래프를 이용하여 서로 상관된 코드 워드 비트를 찾는 방법을 나타내는 도면.
도 7은 도 6에서 3번 코드 워드 비트를 두 번째 코드 워드 비트로 선택하였을 때 다음 선택 가능한 코드 워드 비트를 찾는 방법을 나타내는 도면.
도 8 내지 10은 도 4의 패리티 검사 행렬의 경우 제 1 코드 워드 비트로서 2번 코드 워드 비트를 선택하였을 때의 나머지 코드 워드 비트를 선택하는 과정을 나타내는 도면.
도 11은 인자 그래프를 이용하여 행 방향 패리티 정보를 생성하기 위한 코드 워드 비트를 선택하는 방법을 나타내는 시간흐름도이다.
본 발명은 패리티 정보 생성 방법에 관한 것으로서, 보다 상세하게는 저밀도 패리티 검사 행렬을 이용한 부호화 방법에서 열 방향 패리티 정보와 행 방향 패리티 정보를 서로 독립적으로 생성하는 방법에 관한 것이다.
무선통신분야 또는 광 기록재생 분야 등에서 사용되는 에러 정정 부호화 및 복호화 기술의 한 가지로서 저밀도 패리티 검사(Low Density Parity Check, 이하 LDPC 라 한다) 부호화 및 복호화 방법이 있다. LDPC 부호화는 1962년 갤러거(Gallager) 에 의해 처음 제안되었으나, 당시의 기술력으로는 복호기의 구현이 어려워 잊혀져 오다 최근 맥케이 (Mackay) 등에 의해 재발견되었다.
LDPC 부호화는 패리티 검사 행렬을 이용하여 패리티 정보를 생성하는 과정을 포함한다. 이 때 패리티 검사 행렬의 구성 성분 대부분은 0 d고 극히 일부 구성 성분만이 1 이다. 이러한 LDPC 부호화는 합곱 알고리즘을 사용하여 반복 부호를 수행함으로써 우수한 오류 성능을 가진다. 예를 들어, 부호어의 길이가 106
이며 부호율이 1/2 인 비정규 LDPC 부호는 터보 부호보다 셰년(Shannon) 한계에 더욱 근접하는 성능을 가진다.
LDPC 부호화는 규칙적 LDPC 부호화(regular LDPC) 와 불규칙적 LDPC 부호화(irregular LDPC)로 나뉜다. 규칙적 LDPC 는 부호화 및 복호화에 사용되는 패리티 검사 행렬이 포함하는 구성 성분 1 의 개수가 행(row) 및 열(column)마다 동일한 개수인 경우이고, 불규칙적 LDPC 는 그렇지 않은 경우이다.
LDPC 부호화는 이하 수학식 1로 표현될 수 있다.
H는 패리티 검사 행렬이고 0는 영행렬, ·는 XOR 연산 및 모듈러 2 연산을 의미한다. C
e 는 코드 워드 벡터로서, 부호화 대상이 되는 코드 워드를 나타내는 열행렬(column matrix)이다. 코드 워드는 x비트의 메시지 워드 x1,x2,...,xx
과 p비트의 패리티 정보 p1,p2,...,pp로 이루어진다.
패리티 정보 p1,p2,...,pp 는 각 메시지 워드 x1,x2,
...,xx 가 수학식 1 을 만족하도록 생성된다. 즉 패리티 검사 행렬 H와 행렬 C
e 의 구성 성분중 부호화 대상인 메시지 워드의 이진값은 결정되어 있으므로 상기 수학식 1에 의해 패리티 정보 pi(i=1,2...p)를 결정할 수 있다.
LDPC 부호화에 대한 보다 상세한 설명은 "Good error correction codes based on very sparse matrices"(D.J.MacKay, IEEE Trans. on Information Theory, vol. 45, no.2, pp.399-431, 1999)" 에 기술되어 있다.
LDPC 부호화에서, 패리티 정보는 각 코드 워드 벡터마다 생성된다. 즉 복호 화를 위한 패리티 정보는 행 방향으로 생성된다. 일반적인 블록 부호화에서 열 방향으로의 패리티 정보 생성은 우수한 복호 성능을 위해 필요하다. 대표적인 블록 부호인 리드-솔로몬 부호화에서는 열 방향 뿐아니라 행 방향에서도 패리티 정보를 생성한다.
도 1은 LDPC 부호화에서 행 방향 패리티 정보 생성의 개념을 나타내는 도면이다. 도 1에서 A,B,C,D 는 각각의 코드 워드 벡터를 나타내며, a1,a2,...b1,b2,... 등은 각 코드 워드 벡터내의 메시지 워드 비트이고, PA,PB,P
C,... 는 각 코드 워드 벡터에서 생성된 열 방향 패리티 정보이다.
DVD 같은 광 디스크 시스템에서 사용되는 일반적인 블록 부호화에서 하나의 블록 크기(block size) 는 32 내지 64 KByte 이다. 반면 LDPC 부호화에서 사용되는 일반적인 코드 워드 벡터의 길이는 1KByte 정도이므로, 결국 LDPC 부호화에서 사용되는 블록의 열 개수는 32 내지 64 개가 된다. 행 방향으로 패리티 정보를 생성함에 있어서, 32 내지 64 개 비트에 대해서 패리티 정보를 생성하는 것은 패리티 정보를 이용한 에러 정정의 성능에 있어서 효율적이지 못하다. 따라서 LDPC 부호화에서 행 방향으로 패리티 정보를 생성할 때 여러 행을 하나로 묶어 패리티 정보의 생성 대상으로 하는 것이 일반적이다. 도 1에서는 4개의 코드 워드 벡터에 대해 2개의 행을 하나로 묶어 행 방향 부호화를 수행하는 것을 나타내었다.
그러나, 이러한 행 방향 부호화 방법은 행 부호화의 대상이 되는 각 코드 워드 벡터 내에 존재하는 코드 워드 비트를 위에서부터 순차적으로 추출하기 때문에, LDPC 부호화에 존재하는 상관성(correlation)으로 인한 에러의 발생 원인에 독립된 패리티 정보의 생성이 불가능하다. 즉 하나의 코드 워드 벡터에서 행방향 패리티 정보의 대상을 선택하는 방법에 따라 생성된 행 방향 패리티 정보는 열 방향 패리티 정보과 상관성이 존재하는 경우가 있고, 이 경우에는 열 방향 패리티 정보에 에러가 생겼을 때 행 방향 패리티 정보에도 에러가 발생하여 더 이상 행 방향 패리티 정보에 의한 부호화에 대한 신뢰성이 상실되는 경우가 발생하는 문제점이 존재한다.
따라서, 본 발명은 전술한 과제를 해결하기 위해 안출된 것으로서, 저밀도 패리티 검사를 이용한 부호화에 있어서, 열 방향 패리티 정보 생성과 상관성이 존재하지 않는 행 방향 패리티 정보를 생성하는 방법을 제공하고자 한다.
전술한 과제를 해결하기 위한 본 발명은, 저밀도 패리티 검사를 이용한 부호화 방법에 있어서, 패리티 검사 행렬 및 메시지 정보를 이용하여 열 방향 패리티 정보를 생성함으로써 코드 워드 벡터를 생성하는 단계; 상기 생성된 코드 워드 벡터내의 코드 워드 비트 중에서 행 방향 패리티 정보를 생성하기 위한 코드 워드 비트를 선택하는 단계; 및 상기 선택된 코드 워드 비트에 기초하여 행 방향 패리티 정보를 생성하는 단계를 포함하고, 상기 코드 워드 비트를 선택하는 단계는 서로 동일한 열 방향 패리티 정보 생성에 관여하는 코드 워드 비트를 제외시키는 단계를 포함하는 특징으로 한다.
또한 본 발명은, 저밀도 패리티 검사 행렬을 이용한 패리티 정보 생성 동작에서 패리티 정보를 생성하는데 기초가 되는 코드 워드 비트를 선택하는 방법에 있어서, 임의의 제 1 코드 워드 비트를 선택하는 단계; 및 상기 제 1 코드 워드 비트와 서로 상관 관계를 가지는 코드 워드 비트를 제외한 나머지 코드 워드 비트중에서 제 2 선택 코드 워드 비트를 선택하는 단계를 포함하고, 상기 상관 관계는, 제 1 코드 워드 비트가 행 방향 패리티 정보 생성에 관여하고, 상기 제 1 코드 워드 비트에 대응되는 위치에 있는 제 1 패리티 검사 행렬내의 구성 성분이 1 인 행 번호에서, 제 2 코드 워드 비트에 대응되는 위치에 있는 패리티 검사 행렬 열 내의 구성 성분이 1 이면, 상기 제 1 및 제 2 코드 워드 비트는 상관 관계에 있다고 정의되는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명한다.
도 2는 본 발명에 따른 LDPC 부호화 방법을 나타내는 시간 흐름도이다.
메시지 워드 비트가 정해지면, 전술한 수학식 1을 기초로하여 열 방향 패리티 정보를 생성함으로써 코드 워드 벡터 A,B,C,... 를 생성한다. 열 인코딩 과정은 열 방향 패리티 정보를 생성하는 과정이다(단계 210). 하나의 코드 워드 벡터에 대하여, 행 방향 부호화를 수행할 코드 워드 비트를 선택한다(단계 220). 이 때 선택된 모든 코드 워드 비트가 패리티 검사 행렬 H 에 의해 상관성을 가지지 않아야 한다. 다른 코드 워드 벡터에 대해서도 행 방향 부호화를 수행할 코드 워드 비트를 선택한다(단계 230 등). 선택된 코드 워드 비트를 기준으로 미리결정된 블록 사이 즈에 따른 행 수 만큼 행 방향 패리티 정보를 생성함으로써 행 방향 부호화를 수행한다(단계 240).
도 3은 본 발명에 따른 LDPC 부호화에서 행 방향 패리티 정보를 생성하기 선택된 코드 워드 비트의 배치를 나타내는 도면이다. 도 3을 참조하면, 각 코드 워드 벡터 A,B,C,D 는 각각의 코드 워드 비트 a1,a2,a3,..., b1,b2,b3,... 등을 가진다. 도 1에서의 종래의 방법과 달리, 본 발명에 따른 행 방향 부호화 방법에 의해 선택된 코드 워드 비트는 각 코드 워드 벡터내에서 순차적으로 선택되지 않는다. 코드 워드 벡터 A에서 선택된 코드 워드 비트 a1,a5 는 서로 상관적이지 않다. 본 발명은 이러한 상관적이지 않은 코드 워드 비트를 선택하는 방법을 제공한다. 이러한 방법은 하나의 코드 워드 비트를 임의로 선택한 후 이와 상관적인 코드 워드 비트를 제거함으로써 수행된다.
도 4는 패리티 검사 행렬의 구조와 코드 워드 비트들간의 상관성의 관계를 나타내는 도면이다.
하나의 코드 워드 벡터내에서 각각의 코드 워드 비트의 이진값 변화가 동일한 열 방향 패리티 정보의 변화를 야기시킬때, 이들 각 코드 워드 비트는 서로 상관적이라고 정의된다. 이하에서는 패리티 검사 행렬의 구조로부터 특정 코드 워드 비트와 상관적인 코드 워드 비트를 찾는 방법을 설명한다.
수학식 1 에 의해, 패리티 검사 행렬 H 와 각각의 코드 워드 벡터 A,B,C,D 와 곱해(XOR 연산 및 모듈러 2연산)진 결과가 영 행렬이 되도록 열 방향 패리티 정 보 PA, PB, ... 가 생성된다. 열 방향 패리티 정보 PA 가 생성되기 위해서, 패리티 검사 행렬 H에서 열 방향 패리티 정보 PA 에 영향을 미치는 인자는 각 패리티 검사 행렬 H 의 존재하는 모든 "1" 이다. 그러나 열 방향 패리티 정보 PA 의 생성에 있어, 특정 구성 성분 예를 들어 a1 과 함께 패리티 정보 PA 의 생성에 영향을 미치는 다른 구성 요소들은 그 다른 구성 요소와 곱해지는 패리티 검사 행렬의 구성 성분 hjk 가 1 인 경우 만이다. 이는 이하 수학식 3을 검토함으로써 알 수 있다.
[수학식 3]
mod 2[h11a1 + h12a2 + ... h1np1A
+ h1n+1p2A + ... ] = z1
mod 2[h21a1 + h22a2 + ... h2np1B
+ h2n+1p2B + ... ] = z2
...
수학식 3에서 hjk 는 패리티 검사 행렬의 각 구성 성분이고, a1,a2, 는 코드 워드 벡터 A 의 구성 성분이다. 또한 P1A,P1B, ... 는 코드 워드 벡터 A 에 대해 생성된 열 방향 패리티 정보이다. 즉 PA =[P1A,P1B, ... ] 이다.
따라서, 특정 코드 워드 비트(도4에서 a1)에 대응되는 패리티 검사 행렬의 구성 성분이 "1" 일 때, 그 때 곱해지는 다른 코드 워드 비트들에 대응되는 패리티 검사 행렬의 구성 성분(도4에서 403, 404, 405) 가 "1" 이면, 이때 다른 코드 워드 비트들은 특정 코드 워드 비트와 상관적이다. 즉, 패리티 검사 행렬의 동일한 행에 서 구성 성분이 서로 1 인 위치에 대응하는 코드 워드 비트들은 서로 "상관적" 이다.
도 4에 나타난 패리티 검사 행렬에서, 특정 코드 워드 비트가 a1 이라 가정하면, 패리티 검사 행렬에서 a1 에 대응되는 구성 성분이 1 인 경우는 구성 성분(401,402)인 경우이다.
먼저 구성 성분 (401)의 경우, 즉 코드 워드 비트 a1 이 패리티 검사 행렬 1행1열에서 1 과 곱해지는 경우, 구성 성분(401)을 포함하는 패리티 검사 행렬의 행에서 구성 성분이 1 인 위치는 구성 성분(404,406)이다. 따라서 구성 성분(404,406)에 대응되는 코드 워드 비트 a4,a6 는 코드 워드 비트 a1 에 상관적이다.
다음으로 구성 성분 (402)의 경우, 즉 코드 워드 비트 a1 이 패리티 검사 행렬3행1열에서 1과 곱해지는 경우, 구성 성분(402)을 포함하는 패리티 검사 행렬의 행에서 구성 성분이 1 인 위치는 구성 성분(403)이다. 따라서 구성 성분(403)에 대응되는 코드 워드 비트 a2 는 코드 워드 비트 a1 에 상관적이다.
결국, a1 에 대해 상관적인 코드 워드 비트는 a2,a4,a6 이다. 즉 a1,a2,a4,a6 은 열 방향 패리티 정보 PA 의 생성에 있어서 함께 영향을 미친다.
이러한 서로 상관적인 코드 워드 비트들은 인자 그래프(factor graph)를 이용하면 더욱 용이하게 발견될 수 있다.
도 5는 도 4의 패리티 검사 행렬을 나타내는 인자 그래프이다.
인자 그래프는 패리티 검사 행렬을 특정한다. 인자 그래프는 행 노드, 열 노드 및 연결선으로 구성된다. 도 5에서 사각형 노드(위에 있는 4개의 노드)는 행 노드이고, 원형 노드(아래에 있는 6개의 노드)는 열 노드, 이들을 연결한 선이 연결선이다. 행 노드는 패리티 검사 행렬의 행 열을 나타내고, 열 노드는 패리티 검사 행렬의 각 열을 나타낸다. 패리티 검사 행렬에서 각 행과 각 열이 교차하는 지점에 행렬 구성 성분이 1 일 때 해당 열 노드와 행 노드는 연결선으로 연결된다. 도 4에서 패리티 검사 행렬의 1행 1열의 구성 성분은 1 이므로, 도 5의 인자 그래프에서 1번 행 노드와 1 번 열 노드가 연결선으로 연결되었다.
도 6은 인자 그래프를 이용하여 서로 상관된 코드 워드 비트를 찾는 방법을 나타내는 도면이다.
인자 그래프는 서로 상관적인 패리티 검사 행렬의 구성 성분을 찾는데 이용된다. 인자 그래프에서 서로 연결된 모든 열 노드들은 상관적이다. 도 6에서, 1번 열 노드는 1번 행 노드를 통해 4번 열 노드 및 6번 열 노드와 연결된다. 또한 1번 열 노드는 3번 행 노드를 통하여 2번 열 노드와 연결된다. 3번 열 노드 및 5번 열 노드는 1번 열 노드와 연결되지 않는다. 결국 2번,4번,6번 열 노드 만이 1번 열 노드에 상관적이다.
인자 그래프에서 각 열 노드의 번호는 각 코드 워드 비트의 번호를 나타낸다. 각 열 노드는 함께 가로로 배열되어 패리티 검사 행렬에서 하나의 행을 구성하고, 이 행의 각 구성 요소가 열 방향 패리티 정보의 생성을 위해 각 코드 워드 비트와 곱해지기 때문이다.
결국, 상관적인 각 열 노드 번호와 동일한 번호의 코드 워드 비트들은 서로 상관적이다.
도 6은 패리티 정보를 생성하기 위한 첫 번째 코드 워드 비트로 1번 열 노드를 선택한 경우를 나타낸다. 전술한 바와 같이 연결선 관계를 이용하여 서로 상관적인 열 노드들을 찾아보자. 우선 1 번 열 노드는 1 번 행 노드를 통하여 4번 및 6번 열 노드에 연결된다. 따라서 1번, 4번, 6번 열 노드는 서로 상관적이다. 또한 2번 열 노드는 3번 행 노드를 통하여 2번 열 노드에 연결된다. 따라서 1번 열 노드와 2번 열노드는 상관적이다. 종합하면, 1,2,4,6 번 열 노드가 상관적이다. 이를 다시 말하면 1,2,4,6 번 코드 워드 비트는 서로 상관적이다.
결국 우리는 행 방향 패리티 정보를 생성하기 위해 1번 코드 워드 비트를 선택하였다면, 2,4,6번 코드 워드 비트는 동일한 패리티 정보 PA 를 생성하는데 사용하지 않는 것이 바람직하다. 즉 3,5번 코드 워드 비트만이 동일한 패리티 정보 PA 를 생성하는데 사용될 수 있다.
도 7은 도 6에서 3번 코드 워드 비트를 두 번째 코드 워드 비트로 선택하였을 때 다음 선택 가능한 코드 워드 비트를 찾는 방법을 나타내는 도면이다.
패리티 정보 PA 를 생성하기 위해 3번 코드 워드 비트가 사용되었으므로 이제는 3 번 코드 워드 비트와 상관적인 코드 워드 비트는 선택할 수 없다. 도 7 의 인자 그래프를 참조하면,3번 열 노드가 4번 행 노드를 통해 5번 열 노드와 연결되어 있다. 따라서 세 번째 코드 워드 비트의 선택에 있어서 5번 열 노드는 제외 되어야 한다.
만약 5번 코드 워드 비트를 선택하였다면 3번 코드 워드 비트가 제외될 것이다. 3번 열 노드 또한 4번 행 노드를 통해 5 번 열 노드에 연결되어 있기 때문이다.
네 번째 이상의 코드 워드 비트에 대해서도, 전술한 방법과 동일한 방법으로 선택되어서는 안될 코드 워드 비트를 제외시킨 후 나머지 코드 워드 비트 중에서 코드 워드 비트를 선택한다.
동일한 행 방향 패리티 정보를 생성하기 위해 하나의 코드 워드 벡터내에서 선택되어져야 되는 코드 워드 비트의 수는 블록 크기(block size), 행 방향 패리티 정보 생성에 사용될 코드 워드 벡터의 수, 코드 워드 벡터의 길이에 따라 상이하다. 만약 에러 정정의 블록 크기가 32KByte, 코드 워드 벡터의 길이가 1KByte, 행 방향 패리티 정보 생성에 사용되는 코드 워드 벡터의 수가 16 이라면, 하나의 코드 워드 벡터내에서 패리티 정보생성을 위해 선택되어질 코드 워드 비트의 수는 32/(1*16) = 2 이다.
도 8 내지 10은 도 4의 패리티 검사 행렬의 경우 제 1 코드 워드 비트로서 2번 코드 워드 비트를 선택하였을 때의 나머지 코드 워드 비트를 선택하는 과정을 나타내는 도면이다.
도 8에서, 2번 코드 워드 비트를 제 1 코드 워드 비트로 선택하였기 때문에, 1,4,6 번 코드 워드 비트는 제 2 코드 워드 비트로 선택될 수 없다. 또한 도 9에서처럼, 3번 코드 워드 비트를 제 2 코드 워드 비트로 선택한 경우에는, 5번 코드 워 드 비트는 제 3 코드 워드 비트로 선택될 수 없다. 만약 도 10에서처럼, 5번 코드 워드 비트를 제 2 코드 워드 비트로 선택하였다면, 역시 3번 코드 워드 비트는 제 3 코드 워드 비트로 선택될 수 없다. 따라서, 어떤 시점에서 선택가능한 코드 워드 비트는 이전의 선택된 코드 워드 비트에 의존한다.
이러한 맥락으로, 본 발명의 이해를 위해, 행 방향 코드 워드 비트 선택을 위한 선택 그룹으로서, 제 1 , 제 2 ,... 선택 그룹이라는 용어가 정의될 수 있다. 즉 제 1 선택 그룹은 제 1 코드 워드 비트를 선택함으로써 결정된 제 2 코드 워드 비트로서 선택가능한 코드 워드 비트들의 집합이며, 제 2 선택 그룹은 제 3 코드 워드 비트를 선택함으로써 결정된 제 2 코드 워드 비트로서 선택가능한 코드 워드 비트들의 집합이며, 그 이상의 선택 그룹에 대해서도 이러한 정의가 적용된다.
도 11은 인자 그래프를 이용하여 행 방향 패리티 정보를 생성하기 위한 코드 워드 비트를 선택하는 방법을 나타내는 시간흐름도이다.
열 방향 패리티 정보의 생성에 의해 코드 워드 벡터가 결정되면, 코드 워드 벡터내의 임의의 코드 워드 비트를 제 1 코드 워드 비트로 결정한다. 즉 인자 그래프에서 임의의 열 노드를 첫 번째 선택 노드로 선택한다(단계 1110). 그 후 인자 그래프의 구조적 연결 관계를 검토함으로써, 첫 번째 선택 노드와 연결된 모든 열 노드를 제외한 나머지 노드들만으로 구성된 제 1 선택 그룹을 생성한다(단계 1120). 이 때 선택 노드와 연결된 모든 열 노드란 전술한 선택 노드와 임의의 행 노드를 통해 연결된 모든 열 노드를 포함한다.
제 1 선택 그룹에서 임의의 열 노드를 두 번째 선택 노드로 선택한다(단계 1130). 그 후 단계 1120 와 마찬가지로, 두 번째 선택 노드와 연결된 모든 다른 열 노드를 제외한 열 노드들만으로 구성된 제 2 선택 그룹을 생성한다(단계 1140). 이하 단계 1130 및 1140 가 모든 선택 노드를 선택할 때까지 계속된다(단계 1150 이하). 모든 선택 노드가 결정되면, 각 선택 노드에 대응되는 코드 워드 비트는 하나의 코드 워드 벡터내에서 하나의 행 방향 패리티 정보 생성을 위한 코드 워드 비트가 된다(단계 1160).
다음으로 두 번째 코드 워드 벡터내에서 단계 1110 내지 1160 가 반복됨으로써 역시 코드 워드 비트를 선택하고 이들 역시 전술한 하나의 행 방향 패리티 정보 생성의 기초가 된다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
전술한 바와 같이 본 발명에 의하면, 저밀도 패리티 검사를 이용한 부호화에 있어서, 열 방향 패리티 정보 생성과 상관성이 존재하지 않는 행 방향 패리티 정보를 생성하는 방법이 제공됨으로써, 열 방향 패리티 정보에 발생한 에러가 행 방향 패리티 정보에는 영향을 미치지 않게 된다.
Claims (12)
- 저밀도 패리티 검사를 이용한 부호화 방법에 있어서,패리티 검사 행렬 및 메시지 정보를 이용하여 열 방향 패리티 정보를 생성함으로써 코드 워드 벡터를 생성하는 단계;상기 생성된 코드 워드 벡터내의 코드 워드 비트 중에서, 서로 동일한 열 방향 패리티 정보 생성의 대상이 되는 코드 워드 비트들은 제외한 코드 워드 비트 중에서 행 방향 패리티 정보 생성의 대상이 되는 코드 워드 비트를 선택하는 단계; 및상기 선택된 코드 워드 비트에 기초하여 행 방향 패리티 정보를 생성하는 단계를 포함하는 특징으로 하는 부호화 방법.
- 제 1 항에 있어서, 상기 코드 워드 비트를 선택하는 단계는, 상기 패리티 검사 행렬의 구성 성분이 1 인 위치에 기초하여 수행되는 것을 특징으로 하는 부호화 방법.
- 제 1 항에 있어서, 상기 코드 워드 비트를 선택하는 단계는,제 1 코드 워드 비트가 상기 행 방향 패리티 정보 생성에 관여하고, 상기 제 1 코드 워드 비트에 대응되는 위치에 있는 제 1 패리티 검사 행렬 열 내의 구성 성 분이 1 인 행 번호에서, 제 2 코드 워드 비트에 대응되는 위치에 있는 패리티 검사 행렬 열 내의 구성 성분이 1 이면,상기 제 2 코드 워드 비트를 제외한 나머지 코드 워드 비트 중에서 임의의 코드 워드 비트를 상기 행 방향 패리티 정보 생성의 대상으로 선택하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
- 제 1 항에 있어서, 상기 코드 워드 비트를 선택하는 단계는,상기 코드 워드 벡터내에서 임의의 코드 워드 비트를 제 1 선택 코드 워드 비트로 선택하는 단계;상기 코드 워드 벡터내에서 상기 제 1 선택 코드 워드 비트와 상관 관계에 있는 코드 워드 비트를 제외시킨 코드 워드 비트를 포함하는 제 1 선택 그룹을 생성하는 단계; 및상기 제 1 선택 그룹내의 코드 워드 비트 중에서 임의의 코드 워드 비트를 제 2 선택 코드 워드 비트로 선택하는 단계를 포함하고,상기 상관 관계는, 제 1 코드 워드 비트가 상기 행 방향 패리티 정보 생성에 관여하고, 상기 제 1 코드 워드 비트에 대응되는 위치에 있는 제 1 패리티 검사 행렬 열 내의 구성 성분이 1 인 행 번호에서, 제 2 코드 워드 비트에 대응되는 위치에 있는 패리티 검사 행렬 열 내의 구성 성분이 1 이면, 상기 제 1 및 제 2 코드 워드 비트가 상관 관계에 있다고 정의되는 것을 특징으로 하는 부호화 방법.
- 제 1 항에 있어서, 상기 코드 워드 비트를 선택하는 단계는, 상기 패리티 검사 행렬의 인자 그래프에 기초하여 수행되는 것을 특징으로 하는 부호화 방법.
- 제 5 항에 있어서, 상기 코드 워드 비트를 선택하는 단계는,상기 패리티 검사 행렬의 인자 그래프를 생성하는 단계;상기 인자 그래프에 포함된 열 노드 사이의 연결 관계에 기초하여 상기 서로 동일한 열 방향 패리티 정보 생성의 대상이 되는 코드 워드 비트를 추출하는 단계; 및상기 서로 동일한 열 방향 열 방향 패리티 정보 생성의 대상이 되는 코드 워드 비트를 제외한 나머지 코드 워드 비트 중에서 임의의 코드 워드 비트를 행 방향 패리티 정보 생성의 대상으로 선택하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
- 제 6 항에 있어서, 상기 인자 그래프를 생성하는 단계는,상기 패리티 검사 행렬의 행 및 열 번호에 대응하는 행 노드 및 열 노드를 배열하는 단계; 및상기 패리티 검사 행렬의 상기 행 및 열 번호에 대응하는 위치의 구성 성분이 1 일 때, 상기 행 노드 및 열 노드를 연결선으로 연결하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
- 제 6 항에 있어서, 상기 코드 워드 비트를 추출하는 단계는,상기 코드 워드 벡터에서 임의의 코드 워드 비트를 제 1 선택 코드 워드 비트로 선택하는 단계;상기 제 1 선택 코드 워드 비트에 대응되는 제 1 열 노드를 상기 인자 그래프에서 추출하는 단계;상기 선택된 열 노드와 연결선으로 연결된 모든 열 노드를 제외한 나머지 열 노드 중에서 임의의 제 2 열 노드를 추출하는 단계; 및상기 제 2 열 노드에 대응하는 코드 워드 비트를 제 2 선택 코드 워드 비트로 추출하는 단계를 포함하는 것을 특징으로 하는 부호화 방법.
- 제 8 항에 있어서, 상기 선택된 열 노드와 연결선으로 연결된 열 노드는, 임의의 행 노드를 통해 상기 선택된 열 노드와 연결되는 모든 열 노드를 포함하는 것을 특징으로 하는 부호화 방법.
- 저밀도 패리티 검사 행렬을 이용한 패리티 정보 생성 동작에서 패리티 정보를 생성하는데 기초가 되는 코드 워드 비트를 선택하는 방법에 있어서,임의의 제 1 코드 워드 비트를 선택하는 단계; 및상기 제 1 코드 워드 비트와 서로 상관 관계를 가지는 코드 워드 비트를 제외한 나머지 코드 워드 비트중에서 제 2 선택 코드 워드 비트를 선택하는 단계를 포함하고,상기 상관 관계는, 제 1 코드 워드 비트가 행 방향 패리티 정보 생성에 관여하고, 상기 제 1 코드 워드 비트에 대응되는 위치에 있는 제 1 패리티 검사 행렬내의 구성 성분이 1 인 행 번호에서, 제 2 코드 워드 비트에 대응되는 위치에 있는 패리티 검사 행렬 열 내의 구성 성분이 1 이면, 상기 제 1 및 제 2 코드 워드 비트는 상관 관계에 있다고 정의되는 것을 특징으로 하는 코드 워드 비트 선택 방법.
- 제 10 항에서, 상기 상관 관계는, 상기 패리티 검사 행렬의 인자 그래프에서, 상기 제 1 코드 워드 비트에 대응되는 열 노드가 상기 제 2 코드 워드 비트에 대응되는 열 노드와 연결되었을 때 성립하는 것을 특징으로 하는 코드 워드 비트 선택 방법.
- 제 11 항에서, 상기 상관 관계는, 상기 패리티 검사 행렬의 인자 그래프에서, 상기 제 2 코드 워드 비트에 대응되는 열 노드가, 임의의 행 노드를 통해 상기 제 1 코드 워드 비트에 대응되는 열 노드와 연결되었을 때 성립하는 것을 특징으로 하는 코드 워드 비트 선택 방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030085770A KR100975061B1 (ko) | 2003-11-28 | 2003-11-28 | 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 |
PCT/KR2004/003060 WO2005053213A1 (en) | 2003-11-28 | 2004-11-25 | Method of generating parity information using low density parity check |
US10/580,911 US20070277075A1 (en) | 2003-11-28 | 2004-11-25 | Method of Generating Parity Information Using Low Density Parity Check |
TW093136446A TWI263887B (en) | 2003-11-28 | 2004-11-26 | Method of generating parity information using low density parity check |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030085770A KR100975061B1 (ko) | 2003-11-28 | 2003-11-28 | 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050052602A KR20050052602A (ko) | 2005-06-03 |
KR100975061B1 true KR100975061B1 (ko) | 2010-08-11 |
Family
ID=34632041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030085770A KR100975061B1 (ko) | 2003-11-28 | 2003-11-28 | 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20070277075A1 (ko) |
KR (1) | KR100975061B1 (ko) |
TW (1) | TWI263887B (ko) |
WO (1) | WO2005053213A1 (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060135451A (ko) * | 2005-06-25 | 2006-12-29 | 삼성전자주식회사 | 저밀도 패리티 검사 행렬 부호화 방법 및 장치 |
TWI390856B (zh) * | 2007-11-26 | 2013-03-21 | Sony Corp | Data processing device and data processing method |
TWI410055B (zh) * | 2007-11-26 | 2013-09-21 | Sony Corp | Data processing device, data processing method and program product for performing data processing method on computer |
WO2011024260A1 (ja) * | 2009-08-25 | 2011-03-03 | 富士通株式会社 | 送信機、符号化装置、受信機、及び、復号化装置 |
CN104508982B (zh) * | 2012-10-31 | 2017-05-31 | 慧与发展有限责任合伙企业 | 组合的块符号纠错 |
KR101512081B1 (ko) * | 2013-02-07 | 2015-04-14 | 최수정 | 특정 밀도를 기반으로 하는 저밀도 행렬을 이용한 부호화/복호화 방법 및 장치 |
KR101512078B1 (ko) * | 2013-02-07 | 2015-04-14 | 최수정 | 특정밀도를 기반으로 하는 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치 |
US20160197703A1 (en) * | 2013-09-10 | 2016-07-07 | Electronics And Telecommunications Research Institute | Ldpc-rs two-dimensional code for ground wave cloud broadcasting |
WO2018066781A1 (ko) * | 2016-10-07 | 2018-04-12 | 엘지전자 주식회사 | 경쟁 기반 비직교 다중 접속 방식에 기초하여 신호를 송수신하는 방법 및 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6081909A (en) * | 1997-11-06 | 2000-06-27 | Digital Equipment Corporation | Irregularly graphed encoding technique |
JP2001168733A (ja) | 1999-10-12 | 2001-06-22 | Thomson Csf | Ldpcコードの構築およびコーディングのためのプロセス |
WO2002099976A2 (en) * | 2001-06-06 | 2002-12-12 | Seagate Technology Llc | A method and coding apparatus using low density parity check codes for data storage or data transmission |
US20030104788A1 (en) | 2001-09-01 | 2003-06-05 | Sungwook Kim | Decoding architecture for low density parity check codes |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5878061A (en) * | 1996-03-14 | 1999-03-02 | Intel Corporation | Providing serial data clock signal transitions with parity bits |
US7072417B1 (en) * | 2000-06-28 | 2006-07-04 | Marvell International Ltd. | LDPC encoder and method thereof |
US6567465B2 (en) * | 2001-05-21 | 2003-05-20 | Pc Tel Inc. | DSL modem utilizing low density parity check codes |
US7162684B2 (en) * | 2003-01-27 | 2007-01-09 | Texas Instruments Incorporated | Efficient encoder for low-density-parity-check codes |
CA2465332C (en) * | 2003-05-05 | 2012-12-04 | Ron Kerr | Soft input decoding for linear codes |
US7395494B2 (en) * | 2003-12-22 | 2008-07-01 | Electronics And Telecommunications Research Institute | Apparatus for encoding and decoding of low-density parity-check codes, and method thereof |
US7406648B2 (en) * | 2003-12-24 | 2008-07-29 | Electronics And Telecommunications Research Institute | Methods for coding and decoding LDPC codes, and method for forming LDPC parity check matrix |
-
2003
- 2003-11-28 KR KR1020030085770A patent/KR100975061B1/ko not_active IP Right Cessation
-
2004
- 2004-11-25 WO PCT/KR2004/003060 patent/WO2005053213A1/en active Application Filing
- 2004-11-25 US US10/580,911 patent/US20070277075A1/en not_active Abandoned
- 2004-11-26 TW TW093136446A patent/TWI263887B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6081909A (en) * | 1997-11-06 | 2000-06-27 | Digital Equipment Corporation | Irregularly graphed encoding technique |
JP2001168733A (ja) | 1999-10-12 | 2001-06-22 | Thomson Csf | Ldpcコードの構築およびコーディングのためのプロセス |
WO2002099976A2 (en) * | 2001-06-06 | 2002-12-12 | Seagate Technology Llc | A method and coding apparatus using low density parity check codes for data storage or data transmission |
US20030104788A1 (en) | 2001-09-01 | 2003-06-05 | Sungwook Kim | Decoding architecture for low density parity check codes |
Also Published As
Publication number | Publication date |
---|---|
US20070277075A1 (en) | 2007-11-29 |
WO2005053213A1 (en) | 2005-06-09 |
TWI263887B (en) | 2006-10-11 |
TW200532432A (en) | 2005-10-01 |
KR20050052602A (ko) | 2005-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6856263B2 (en) | Systems and processes for decoding chain reaction codes through inactivation | |
US20040093549A1 (en) | Encoding method using a low density parity check code with a column weight of two | |
JP5116735B2 (ja) | 符号を構成する方法 | |
US8595589B2 (en) | Quasi-cyclic low-density parity-check codes | |
KR101143732B1 (ko) | 복호 방법 및 복호 장치, 기록 재생 장치 및 방법과, 재생 장치 및 방법 | |
US20030079171A1 (en) | Forward error correction | |
EP1258999B1 (en) | Evaluating and optimizing error-correcting codes using a renormalization group transformation | |
US20040153959A1 (en) | LDPC decoding apparatus and method | |
US7644336B2 (en) | Techniques for providing greater error protection to error-prone bits in codewords generated from irregular codes | |
JP2007166605A (ja) | パリティ検査行列、パリティ検査行列の生成方法、エンコーディング方法及びエラー訂正装置 | |
Pfister et al. | Symmetric product codes | |
KR100975061B1 (ko) | 저밀도 패리티 검사를 이용한 패리티 정보 생성 방법 | |
JP4591371B2 (ja) | Qc符号の符号化方法 | |
US20060107180A1 (en) | Apparatus and method for constructing low-density parity check matrix | |
US7447972B2 (en) | Methods and apparatus for constructing low-density parity check (LDPC) matrix | |
Hirotomo et al. | A probabilistic computation method for the weight distribution of low-density parity-check codes | |
JP2010098735A (ja) | バイナリデータの誤り訂正及び誤り検出の方法 | |
KR20050052184A (ko) | 저밀도 패리티 검사 부호화를 위한 인터리빙 방법 | |
Farkaš et al. | On run-length limited error control codes constructed from binary single parity check product codes | |
Van Wonterghem et al. | On constructions of Reed-Muller subcodes | |
Lu et al. | Efficient encoding of cycle codes: A graphical approach | |
US11218168B2 (en) | Method and apparatus for generating an LDPC code with a required error floor | |
Hosoya et al. | Spatially-coupled LDPC codes for two dimensional erasure channel | |
Sousa-da Silv et al. | Burst erasure correction using LDPC codes constructed on base matrices generated by matched groups, nested polygons and superposed circulant matrices | |
JP2010041628A (ja) | 符号化装置、符号化方法および符号化プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140730 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150730 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160728 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |