KR20070107521A - 비이진 구조적 저밀도 패리티 검사 부호 생성 방법 - Google Patents
비이진 구조적 저밀도 패리티 검사 부호 생성 방법 Download PDFInfo
- Publication number
- KR20070107521A KR20070107521A KR1020060040135A KR20060040135A KR20070107521A KR 20070107521 A KR20070107521 A KR 20070107521A KR 1020060040135 A KR1020060040135 A KR 1020060040135A KR 20060040135 A KR20060040135 A KR 20060040135A KR 20070107521 A KR20070107521 A KR 20070107521A
- Authority
- KR
- South Korea
- Prior art keywords
- matrix
- binary
- parity check
- ldpc code
- generated
- 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/033—Theoretical methods to calculate these checking 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/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
-
- 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
-
- 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/1171—Parity-check or generator matrices with non-binary elements, e.g. for non-binary LDPC codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 비이진 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호를 생성하는 방법에 있어서, 상기 비이진 LDPC 부호는 패리티 검사 행렬로 정의되며, 상기 패리티 검사 행렬은 다수의 서브 행렬들로 구성되며, 상기 다수의 서브 행렬들은 영(zero) 행렬과 비이진 항등(identity) 행렬이며, 상기 비이진 항등 행렬은 미리 결정된 조건들 중 어느 하나의 조건을 만족하여 생성한다.
비이진 저밀도 패리티 검사, 항등 행렬, 영 행렬, 패리티 검사 행렬
Description
도 1은 구조적 LDPC 부호에서 Pi 를 나타낸 도면
도 2는 본 발명의 실시예에 따른 각 타입별 비이진 구조적 LDPC 부호들을 나타낸 도면
도 3a 및 3b는 본 발명의 실시예에 따른 각 타입별 성능을 GF(q=2p)의 변화로 나타낸 그래프들
본 발명은 비이진(Non-binary) 구조적(structured) 저밀도 패리티 검사(Low Density Parity Check, 이하 'LDPC'라 칭함) 부호에 관한 것으로서, 특히 비이진 구조적 LDPC 부호를 생성하는 방법에 관한 것이다.
통신에서 가장 근본적인 문제는 채널(channel)을 통하여 얼마나 효율적이고 신뢰성 있게(reliably) 데이터(data)를 전송할 수 있느냐 하는 것이다. 최근에 활 발하게 연구되고 있는 차세대 멀티미디어 이동 통신 시스템에서는 초기의 음성 위주의 서비스를 벗어나 영상, 무선 데이터 등의 다양한 정보를 처리하고 전송할 수 있는 고속 통신 시스템이 요구됨에 따라 시스템에 적절한 채널 부호화 기법을 사용하여 시스템의 효율을 높이는 것이 필수적이다.
데이터를 전송할 때 채널의 상황에 따라 잡음, 간섭 그리고 페이딩(fading) 등으로 인한 불가피한 오류가 발생하여 정보의 손실이 생긴다. 일반적으로 이러한 정보의 손실을 감소시키기 위해 채널의 성격에 따라 다양한 오류 제어 기법(error control technique)을 이용하여 시스템의 신뢰도를 높인다. 이러한 오류 제어 기법 중에 가장 기본적인 방법은 오류 정정 부호(error correcting code)를 사용하는 것이다. 상기 LDPC 부호는 상기 오류 정정 부호 중 하나이다.
상기 LDPC 부호는 갈라거(Gallager)에 의해 제안된 부호로, 대부분의 행렬을 구성하는 원소(element)들이 0의 값을 가지며, 상기 0의 값을 가지는 원소들 이외의 소수의 원소들이 1의 값을 가지는 성긴(sparse) 구조의 이진(binary) 패리티 검사 행렬(parity check matrix)에 의해 정의된다. 즉, 이진 패리티 검사 행렬을 구성하는 원소들은 0 혹은 1의 값만을 가진다.
이와는 달리, 비이진 LDPC 부호의 패리티 검사 행렬은 갈로아 필드(Galois Field, 이하 'GF'라 칭함)(q=2p, q는 2보다 큰 정수임)상의 원소들로 구성된다. 여기서, 상기 p는 1보다 큰 정수값을 가지며, 상기 p가 1이면 이진 LDPC 부호가 된다.
상기 비이진 LDPC 부호는 상기 이진 LDPC 부호의 성능보다 우수하다는 것이 실험적으로 입증되었다. 또한, 구조적 형태의 패리티 검사 행렬이 반구조적 형태의 패리티 검사 행렬보다 복호의 신속성 및 저장 용량을 최소화 할 수 있는 장점이 있다. 따라서, 상기 비이진 구조적 LDPC 부호를 생성(설계)하는 방안이 연구되고 있다.
본 발명은 상기와 같은 문제점을 해결 위해 창안된 것으로, 본 발명의 목적은 비이진 구조적 저밀도 패리티 검사 부호를 생성하는 방법을 제공함에 있다.
본 발명의 다른 목적은 저장 용량을 최소화 하는 비이진 구조적 저밀도 패리티 검사 부호를 생성하는 방법을 제공함에 있다.
상기한 바와 같은 목적을 달성하기 위한 본 발명의 방법은; 비이진 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호를 생성하는 방법에 있어서, 상기 비이진 LDPC 부호는 패리티 검사 행렬로 정의되며, 상기 패리티 검사 행렬은 다수의 서브 행렬들로 구성되며, 상기 다수의 서브 행렬들은 영(zero) 행렬과 비이진 항등(identity) 행렬이며, 상기 비이진 항등 행렬은 미리 결정된 조건들 중 어느 하나의 조건을 만족하여 생성함을 특징으로 한다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면을 참조하여 상세히 설명한 다. 하기의 설명에서는 본 발명의 동작을 이해하는데 필요한 부분만을 설명하며 그 이외의 배경 기술은 본 발명의 요지를 흩트리지 않도록 생략한다.
본 발명은 비이진(Non-binary) 구조적(structured) 저밀도 패리티 검사(Low Density Parity Check, 이하 'LDPC'라 칭함) 부호를 생성하는 방법을 제안한다.
일반적으로 좋은 성능을 나타내는 이진 LDPC 부호를 설계하기 위해서는 차수 분포(degree distribution)를 고려하여야 한다. 여기서 상기 차수란, 상기 LDPC 부호의 팩터(factor) 그래프상에서 각 노드들, 즉 변수 노드들과 검사 노드들에 연결되어 있는 에지(edge)의 개수를 나타낸다. 또한, LDPC 부호의 팩터 그래프상의 차수 분포란, 특정 차수를 가지는 노드들이 전체 노드들 중 얼마만큼 존재하는지를 나타내는 것이다. 특정한 차수 분포를 가지는 LDPC 부호의 성능이 우수하다는 것은 리차드슨(Richardson) 등이 이미 증명한 바가 있다. 따라서, 본 발명에 따른 비이진 구조적 LDPC 부호를 설계하는 경우에도 상기 차수 분포가 고려되어야 함은 물론이다.
그러면, 본 발명에서 제안하는 비이진 구조적 LDPC 부호에서 패리티 검사 행렬(H matrix)을 생성하는 방법에 대해 설명하기로 한다.
비이진 구조적 LDPC 부호의 패리티 검사 행렬은 다수의 서브 행렬들로 구성된다. 상기 서브 행렬은 차원(dimension)이 Zf인 정방 행렬이며, 영 행렬(zero matrix)과 쉬프트 된 항등 행렬(shifted identity matrix, 이하 'Pi'라 칭함)로 다시 구분할 수 있다. 여기서, 상기 Pi는 항등 행렬의 각 행(row)의 위치를 i만큼씩 순환(cyclic) 쉬프트 한 형태의 행렬을 의미한다.
도 1은 구조적 LDPC 부호에서 Pi 를 나타낸 도면이다.
상기 도 1을 참조하면, P1 은 항등 행렬의 각 행에서의 1의 위치를 오른쪽으로 하나의 원소만큼 순환 쉬프트 한 행렬이다. 또한, Pi 는 항등 행렬의 각 행에서의 1의 위치를 오른쪽으로 i개의 원소만큼 순환 쉬프트 한 행렬이다. 여기서, 상기 Pi 의 모든 원소들이 0 혹은 1의 값만을 가지고 있는 경우에는 이진 LDPC 부호가 되며, 이와는 달리 상기 Pi 의 모든 원소들이 0 혹은 GF(q=2p)상의 원소들로 구성되는 경우 비이진 LDPC 부호가 된다. 따라서, 비이진 구조적 LDPC 부호의 패리티 검사 행렬을 구성하는 서브 행렬은 영 행렬과 비이진 쉬프트 된 항등 행렬(이하, 'Q'라 칭함)로 나타낼 수 있으며, 상기 Q는 세 가지 형태의 행렬로 나타낼 수 있다. 본 발명에서는 상기 세 가지 형태의 Q를 Type 1, Type 2 및 Type 3로 각각 표기하기로 한다. 하기 수학식 1 내지 수학식 3은 상기 Type 1 내지 Type 3을 각각 표현한 것이다.
상기 수학식 1 내지 3에서 는 GF(q=2p)상의 원시원소(primitive element)를 의미한다. 그리고, 상기 수학식 1 및 2에서 은 스칼라 곱(scalar product)을 의미하고, 상기 수학식 3에서 는 행렬 곱(matrix product)을 의미한다. 한편, 상기 수학식 1에서 F(i)는 일대일 매핑 함수를 의미하며, 일 례로 F(i)=i가 될 수 있다. 이 경우 상기 수학식 1은 로 간단히 나타낼 수 있다. 상기 수학식 3에서 jk는 범위를 만족하는 k 중 임의의 값을 의미한다.
상기와 같은 세 가지 형태의 Q 행렬을 이용한 서브 행렬을 생성하고, 생성된 서브 행렬을 이용하여 패리티 검사 행렬을 구성하면 비이진 구조적 LDPC 부호를 생성할 수 있게 된다. 여기서 상기 패리티 검사 행렬은 상기 세 가지 타입의 Q 행렬들 중 어느 하나의 Q 행렬만을 사용하여 구성되어야 한다.
도 2는 본 발명의 실시예에 따른 각 타입별 비이진 구조적 LDPC 부호들을 나 타낸 도면이다.
도 2에 나타낸 각 타입별 비이진 구조적 LDPC 부호들을 하드웨어에 적용하기 위해서는 Q 행렬의 위치 정보와 i 및 j 값들에 대한 정보가 저장되어 있어야 한다. 따라서, 각 타입별로 상기 정보들이 메모리에 저장되는 용량은 차이가 있을 수 있다. 예컨대, 상기 Type 1, Type 2, Type 3 순으로 필요로 하는 메모리 크기가 커진다. 하기 수학식 4 내지 6은 각 타입별로 필요로 하는 메모리 크기(비트 단위)를 나타내는 수학식들이다.
상기 수학식 4 내지 6에서, Nb 및 Mb는 각각 패리티 검사 행렬의 행과 열에서의 서브 행렬들의 개수를 의미하며, Avg.Dv는 패리티 검사 행렬의 열(column)에서 Q 행렬 개수의 평균을 의미한다. 그리고, p는 GF(q=2p)에서의 p 값에 해당한다.
상기 수학식 4 내지 6에 따른 소요되는 메모리 크기만을 고려한다면 Type 1 형태의 Q 행렬을 포함하는 비이진 구조적 LDPC 부호가 Type 2 또는 Type 3 형태의 Q 행렬을 포함하는 비이진 구조적 LDPC 부호에 비해 더 효율적임을 알 수 있다. 그러나, 성능적인 측면까지 고려한다면 Type 1 형태의 Q 행렬을 구성된 비이진 구조적 LDPC 부호가 Type 2 또는 Type 3 형태의 Q 행렬을 포함하는 비이진 구조적 LDPC 부호에 비해 효율적이라고 단언할 수는 없다.
각 타입별 Q 행렬간 성능 비교시 고려되어야 할 요소는 Zf와 갈로아 필드의 차수(order)인 q의 관계이다.
도 3a 및 3b는 본 발명의 실시예에 따른 각 타입별 성능을 GF(q=2p)의 변화로 나타낸 그래프들이다.
도시한 바와 같이, 인 경우(즉, GF(4) 및 GF(8)인 경우)에는 Type 1, Type 2 및 Type 3 형태의 Q 행렬을 포함하는 비이진 구조적 LDPC 부호가 서로 유사한 FER(Frame Error Rate) 성능을 나타냄을 알 수 있다. 그러나, 인 경우(즉, GF(64) 및 GF(256)인 경우)에는 Type 2 및 Type 3 형태의 Q 행렬을 포함하는 비이진 구조적 LDPC 부호가 Type 1에 비해 FER 성능이 우수함을 알 수 있다.
본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되지 않으며, 후술되는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같이, 본 발명은 비이진 구조적 LDPC 부호에서 패리티 검사 행렬을 생성하는 방안을 제안함으로써, 복호 성능을 향상시킬 수 있는 이점이 존재한다.
Claims (4)
- 비이진 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호를 생성하는 방법에 있어서,상기 비이진 LDPC 부호는 패리티 검사 행렬로 정의되며, 상기 패리티 검사 행렬은 다수의 서브 행렬들로 구성되며, 상기 다수의 서브 행렬들은 영(zero) 행렬과 비이진 항등(identity) 행렬이며,상기 비이진 항등 행렬은 미리 결정된 조건들 중 어느 하나의 조건을 만족하여 생성함을 특징으로 하는 상기 비이진 LDPC 부호 생성 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060040135A KR20070107521A (ko) | 2006-05-03 | 2006-05-03 | 비이진 구조적 저밀도 패리티 검사 부호 생성 방법 |
US11/800,022 US8015469B2 (en) | 2006-05-03 | 2007-05-03 | Method for generating non-binary structured low density parity check code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060040135A KR20070107521A (ko) | 2006-05-03 | 2006-05-03 | 비이진 구조적 저밀도 패리티 검사 부호 생성 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20070107521A true KR20070107521A (ko) | 2007-11-07 |
Family
ID=39062856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060040135A KR20070107521A (ko) | 2006-05-03 | 2006-05-03 | 비이진 구조적 저밀도 패리티 검사 부호 생성 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8015469B2 (ko) |
KR (1) | KR20070107521A (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10693498B2 (en) | 2018-06-04 | 2020-06-23 | SK Hynix Inc. | Parity check matrix generator, operating method thereof and error correction circuit using parity check matrix generated by the same |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007091327A1 (ja) * | 2006-02-09 | 2007-08-16 | Fujitsu Limited | Ldpc検査行列生成方法及び検査行列生成器並びに符号再送方法 |
GB2481051B (en) * | 2010-06-10 | 2016-06-01 | Samsung Electronics Co Ltd | Method for mapping and de-mapping of non-binary symbols in data communication systems |
US9553608B2 (en) * | 2013-12-20 | 2017-01-24 | Sandisk Technologies Llc | Data storage device decoder and method of operation |
CN107863971B (zh) * | 2017-10-16 | 2020-09-18 | 山东电力工程咨询院有限公司 | 一种针对ptn的ldpc码校验矩阵的构造方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US36925A (en) * | 1862-11-11 | Improvement in breech-loading fire-arms | ||
US7181677B1 (en) * | 2003-02-10 | 2007-02-20 | Maxtor Corporation | System and method for producing data and ECC code words using a high rate restricted-symbol code |
US7516391B2 (en) | 2004-08-16 | 2009-04-07 | Samsung Electronics Co., Ltd | Apparatus and method for coding/decoding block low density parity check code with variable block length |
KR20060016059A (ko) | 2004-08-16 | 2006-02-21 | 삼성전자주식회사 | 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법 |
US7996746B2 (en) * | 2004-10-12 | 2011-08-09 | Nortel Networks Limited | Structured low-density parity-check (LDPC) code |
-
2006
- 2006-05-03 KR KR1020060040135A patent/KR20070107521A/ko not_active Application Discontinuation
-
2007
- 2007-05-03 US US11/800,022 patent/US8015469B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10693498B2 (en) | 2018-06-04 | 2020-06-23 | SK Hynix Inc. | Parity check matrix generator, operating method thereof and error correction circuit using parity check matrix generated by the same |
Also Published As
Publication number | Publication date |
---|---|
US8015469B2 (en) | 2011-09-06 |
US20080250305A1 (en) | 2008-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200220557A1 (en) | Vertical Layered Finite Alphabet Iterative Decoding | |
KR100905814B1 (ko) | Ldpc 인코딩 방법 | |
US8347170B2 (en) | Method and apparatus for performing decoding using LDPC code | |
EP3457575B1 (en) | Encoding method and device and decoding method and device for structured ldpc | |
US8185797B2 (en) | Basic matrix, coder/encoder and generation method of the low density parity check codes | |
US8225173B2 (en) | Multi-rate LDPC code system and method | |
US8341492B2 (en) | Quasi-cyclic LDPC (low density parity check) code construction | |
JP4820368B2 (ja) | Ldpcコードを用いた符号化及び復号化方法 | |
KR101227264B1 (ko) | Ldpc 코드용 디코더 | |
US9432052B2 (en) | Puncture-aware low density parity check (LDPC) decoding | |
US8627172B2 (en) | Error correction encoding apparatus, decoding apparatus, encoding method, decoding method, and programs thereof | |
JP4822452B2 (ja) | Ldpcコードを用いた符号化または復号化方法及びその装置 | |
JPWO2007080827A1 (ja) | 検査行列生成方法 | |
KR20080102902A (ko) | 가변 부호화율을 가지는 ldpc 부호 설계 방법, 장치 및그 정보 저장 매체 | |
EP1597828B1 (en) | Method and apparatus for performing low-density parity-check (ldpc) code operations using a multi-level permutation | |
KR101216075B1 (ko) | 채널 코드를 이용한 복호화 및 복호화 장치 | |
US8214717B2 (en) | Apparatus and method for decoding LDPC code based on prototype parity check matrixes | |
US8145971B2 (en) | Data processing systems and methods for processing digital data with low density parity check matrix | |
KR20070107521A (ko) | 비이진 구조적 저밀도 패리티 검사 부호 생성 방법 | |
EP3648357B1 (en) | Encoding method and apparatus, and computer storage medium | |
CN112204888A (zh) | 具有高效编码和良好误码平层特性的一类qc-ldpc码 | |
EP1820275A1 (en) | Ldpc encoder and decoder and ldpc encoding and decoding methods | |
KR100684168B1 (ko) | 최적붙임방법을 이용한 다중 부호율 ldpc 부호의디자인 방법 | |
CN101364809B (zh) | 解码器 | |
Talati et al. | Rate-compatible and high-throughput architecture designs for encoding LDPC codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
J301 | Trial decision |
Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20110325 Effective date: 20111118 |