KR20070042105A - 저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법 - Google Patents

저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법 Download PDF

Info

Publication number
KR20070042105A
KR20070042105A KR1020060100845A KR20060100845A KR20070042105A KR 20070042105 A KR20070042105 A KR 20070042105A KR 1020060100845 A KR1020060100845 A KR 1020060100845A KR 20060100845 A KR20060100845 A KR 20060100845A KR 20070042105 A KR20070042105 A KR 20070042105A
Authority
KR
South Korea
Prior art keywords
matrix
sub
parity check
matrices
integer distance
Prior art date
Application number
KR1020060100845A
Other languages
English (en)
Other versions
KR100842597B1 (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 삼성전자주식회사
Publication of KR20070042105A publication Critical patent/KR20070042105A/ko
Application granted granted Critical
Publication of KR100842597B1 publication Critical patent/KR100842597B1/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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/033Theoretical methods to calculate these checking 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
    • 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

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

본 발명의 저밀도 패리티 검사 부호를 위한 패리티 검사 행렬 생성 방법은 값이 1인 원소가 균일하게 분포된 기저 행렬을 생성하고 상기 기저 행렬의 값이 1인 원소들을 미리 정해진 부행렬들로 치환하여 패리티 검사 행렬을 생성한다. 본 발명의 저밀도 패리티 검사 부호의 패리티 검사 행렬 생성을 통해 패리티 검사 부호 성능에 악영향을 미치는 4 사이클 또는 6 사이클을 최소화하는 패리티 검사 행렬을 구현함으로써 저밀도 패리티 검사 부호의 성능을 향상시킬 수 있다.
저밀도 패리티 검사 부호(LDPC code), 준-순환 저밀도 패리티 검사 부호(QC LDPC), 패리티 검사 행렬, 부행렬, 블록 행렬

Description

저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법{METHOD FOR CONSTRUCTING PARITY CHECK MATRIX OF LOW DENSITY PARITY CHECK CODE}
도 1은 본 발명에 따른 저밀도 패리티 검사 행렬의 기반이 되는 기저 행렬을 구성하는 IDCM을 보인 예시도,
도 2는 도 1의 ICDM 에 대응하는 IDQCM을 보인 예시도,
도 3은 본 발명의 일 실시예에 따른 부호율 1/2인 QC LDPC 부호를 생성하기 위한 기저 행렬을 보인 도면,
도 4는 도 3의 기저 행렬을 구성하는 IDCM들을 IDQCM으로 치환하여 생성된 패리티 검사 행렬을 보인 도면,
도 5는 본 발명의 실시예에 따른 패리티 검사 행렬 생성 과정을 도시한 순서도.
본 발명은 통신 시스템에서의 채널 부호화에 관한 것으로 특히, 통신 시스템에서 저밀도 패리티 검사(Low Density Parity Check, 이하 'LDPC'라 칭하기로 한 다) 부호의 패리티 검사 행렬 설계 방법에 관한 것이다.
LDPC 부호는 터보 부호보다 우수한 성능, 낮은 복호 복잡도, 병렬처리로 고속 처리가 가능하기 때문에 4세대 이동 통신 시스템에 적합한 부호화 방식으로 많은 관심을 받고 있다.
LDPC부호는 1962년 Gallager에 의해 처음 제안되었으며, 패리티 검사 행렬(Parity Check Matrix) H의 원소들의 대부분이 '0'인 선형 블록 부호(Linear block code)로서 당시의 기술력으로는 구현이 불가능한 부호 복잡도로 인해 잊혀져 왔다. 그러나 Mackay와 Neal은 이를 재발견하였고, Gallager의 간단한 확률적(Prababilistic) 복호법을 이용하여 성능이 매우 우수함을 보였다.
LDPC 부호 구현에 있어서 장애가 되는 요소 중 하나는 부호화 복잡도이다. 행렬 곱셈에 의해 수행되는 부호화는 부호 길이의 자승으로 복잡도를 증가시킨다. 이러한 복잡도를 줄이기 위해 순환부호들이 제안된 바 있으나 복호화 복잡도를 줄이는 것은 부호가 매우 성긴(sparse) 패리티 검사 행렬을 가지는 경우에만 가능하며 대부분의 알려진 순환 부호들은 이러한 조건을 만족시키지 못한다.
순환 특성과 수용 가능할 정도의 성긴 패리티 검사 행렬을 통해 상당히 개선된 반복 복호 성능을 보이는 유한 기하구조의 부호들이 또한 제안된 바 있으나 순환 유한 기하구조 부호(cyclic finite geometry codes) 는 제한된 부호 길이 및 부호율의 범위에 대해서 존재하며 부호 길이에 비례하여 열 무게(column weight)가 증가하여 결국 복호화 복잡도를 증가시킨다
따라서, 본 발명의 목적은 부호화 복잡도를 감소하는 LDPC 부호의 패리티 검사 행렬 설계 방법을 제공함에 있다.
본 발명의 목적은 4 사이클 또는 6 사이클이 발생하지 않도록 하는 패리티 검사 행렬을 구현하는 LDPC 부호의 패리티 검사 행렬 설계 방법을 제공함에 있다.
본 발명의 또 다른 목적은 부호화 과정에서 요구되는 역행렬 연산을 제거함으로써 부호화 복잡도를 최소화할 수 있는 LDPC 부호의 패리티 검사 행렬 설계 방법을 제공함에 있다.
본 발명의 또 다른 목적은 부호화 복잡도를 감소하기 위한 순환 특성을 갖는 준-순환 부호를 설계하는 LDPC 부호의 패리티 검사 행렬 설계 방법을 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 방법은 저밀도 패리티 검사 부호의 패리티 검사 행렬 생성 방법에 있어서, 값이 1인 원소가 균일하게 분포된 기저 행렬을 생성하는 과정과, 상기 기저 행렬의 값이 1인 원소들을 미리 정해진 부행렬들로 치환하여 패리티 검사 행렬을 생성한다.
상기 기저 행렬은 상기 저밀도 패리티 검사 부호의 부호율을 결정하고, 상기 부호율에 대응하는 적어도 두 개의 정수거리순환행렬을 생성하고, 상기 정수거리순환행렬을 배열하여 생성된다. 또한, 상기 부행렬은 비균일 부행렬을 사용한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
이하, 본 발명에 따른 저밀도 패리티 검사 부호(Low Density Parity Check, 이하 'LDPC'라 칭하기로 한다)에서 패리티 검사 행렬 설계 방법을 제안한다. 또한, 본 발명에서는 부호화 복잡도 감소를 위한 순환 특성을 갖는 준-순환 부호를 설계한다. 상기 준-순환 부호를 설계하는데 있어 4 사이클 또는 6 사이클을 회피하도록 패리티 검사 행렬을 구현하여 복호 성능을 향상 시킬 수 있는 LDPC 부호의 비균일 패리티 검사 행렬 설계 방법을 제공한다.
본 발명의 저밀도 패리티 검사 행렬 설계 방법에서는 부호율이 결정되면, 부호율에 대응하는 적어도 두개의 정수거리순환행렬(Integer Distance Cyclic Matrix, 이하 'IDCM'라 칭하기로 한다)을 선택하고, 선택된 IDCM 들을 조합하여 기저 행렬을 생성하고, 상기 기저 행렬을 형성하는 IDCM들에 대응하는 정수거리준-순환행렬(Integer Distance Quasi-Cyclic Matrix 이하 'IDQCM'라 칭하기로 한다)들로 치환하여 4 사이클 또는 6사이클이 발생하지 않도록 하는 즉, 4 사이클 또는 6 사 이클의 발생 횟수가 감소된 패리티 검사 행렬을 생성한다.
상기 IDQCM은 대응하는 IDCM을 구성하는 원소들 중 값이 1인 원소들을 미리 정해진 부행렬, 즉 비균일 부행렬들로 대치시킴으로써 생성된다.
도 1은 본 발명에 따른 저밀도 패리티 검사행렬의 기반이 되는 기저 행렬을 구성하는 IDCM을 보인 예시도이다. IDCM은 도 1에서 보는 바와 같이 값이 1인 원소를 미리 정해진 거리로 배치하여 생성된 행(부호어)(101)을 1씩 쉬프트시켜 형성한다.
도 1에서 값이 1인 첫 번째 원소와 두 번째 원소의 거리는 2이고, 두 번째와 세 번째 원소의 거리는 3, 세 번째 원소와 네 번째 원소의 거리는 4, 네 번째와 다섯 번째 원소의 거리는 5, 그리고 다섯 번째 원소와 여섯 번째 원소의 거리는 10이다. 설명의 편의상 이와 같은 거리 특성을 가진 IDCM을 IDCM [2,3,4,5,10]로 표시한다.
도 2는 도 1의 ICDM 에 대응하는 IDQCM을 보인 예시도이다. 도 2에서 보는 바와 같이, IDCM을 구성하는 첫 번째 대각 원소들은 부행렬 R1 으로 대치되고, 두 번째 대각 원소들은 부행렬 R2, 세 번째 대각 원소들 부행렬 R3, 네 번째 대각 원소들은 부행렬 R4, 그리고 다섯 번째 대각 원소들은 부행렬 R5로 각각 대치되며, 이러한 거리 특성을 가지는 IDQCM을 IDQCM[2,3,4,5,10|R1,R2,R3,R4,R5]로 표시한다.
상기 부행렬들은 각각 더 작은 크기를 갖는 블록 행렬들로 구성된다. 그리 고, 상기 블록 행렬은 영행렬(zero matrix), 단위행렬(unit matrix), 그리고 단위행렬을 미리 결정된 크기로 우측 쉬프트(shift)하여 생성한 준-순환 행렬(Quasi-Cyclic matrix) 중 적어도 하나를 포함하며, 상기 블록 행렬은 상기 부행렬들 내부에 비균일하게 구성하여 상기 부행렬의 원소 '1'이 비균일하게 분포하는 특징을 갖는다.
또한, 상기 부행렬 Ri(i는 부행렬 인덱스)이며 상기 부행렬은 부호율에 따라 미리 정해져 있다.
도 3에서 보는 바와 같이 부호율 1/2인 QC-LDPC 부호의 기저 행렬은 일예로, IDCM[2,3,4,5,10]과 IDCM[1,23]을 조합하여 생성되며, 기저 행렬 B는 수학식 1과 같이 표현할 수 있다.
B=[IDCM[2,3,4,5,10]|IDCM[1,23]]
이렇게 생성된 기저 행렬에서는 2가지 4-사이클, 58가지의 6-사이클, 47가지의 8-사이클이 발생한다.
상기 기저 행렬의 원소들 중 값이 1인 원소들은 부호율 1/2에 대응하는 부행렬들에 의해 치환되고 값이 0인 원소들(미도시)은 상기 부행렬과 동일한 크기의 0행렬로 채워진다. 그리고, 부호율이 1/2인 경우 24 x 24 부행렬 2개이며, 상기 IDCM 각각의 정수합은 24가 되어야한다.
상기 기저 행렬로부터 패리티 검사 행렬 H는 수학식 2와 같이 표현할 수 있 다.
Figure 112006074825387-PAT00001
H=[H1|H2]=[IDQCM[2,3,4,5,10]|R1,,R5]|IDQCM[1,23|R6,R7]]
본 발명의 일 실시예에 따른 부호율 1/2인 QC LDPC 부호의 부행렬
Figure 112006074825387-PAT00002
은 일예로, 수학식 3과 같이 미리 정해져 있다.
Figure 112006074825387-PAT00003
Figure 112006074825387-PAT00004
Figure 112006074825387-PAT00005
, , ,
Figure 112006074825387-PAT00006
,
Figure 112006074825387-PAT00007
,
Figure 112006074825387-PAT00008
,
Figure 112006074825387-PAT00009
상술한 바와 같이 상기 부행렬
Figure 112006074825387-PAT00010
은 각각 더 작은 크기의 블록 행렬들로 구성된다. 상기 블록 행렬은 일예로, 영행렬, 단위행렬, 단위행렬을 미리 결정된 크기로 우측 쉬프트(shift)하여 생성한 준-순환 행렬(quasi-cyclic matrix)을 포함한다. 예를 들어, 상기 수학식 3에 나타난 28 또는 48 등은 단위행렬이 우측으로 쉬프트되는 크기를 나타낸다. 상기 R1에서 첫 번째 열은 2개의 영행렬이 아닌 블록 행렬로 구성되며, 두 번째 열은 모두 영행렬로 구성된다. 따라서 상기한 블록 행렬들로 구성된 상기 부행렬 R1 내의 1은 비균일한 분포를 갖는다. 따라서 상기 부행렬로 구성되는 패리티 검사 행렬은 기저 행렬이 균일하게 분포되어 있다하더라도 부행렬이 비균일하게 분포된1을 포함하므로, 최종적으로 생성된 패리티 검사 행렬은 1의 분포가 비균일하게 구성된다.
한편, 부호화 과정에서의 역행렬 연산을 제거하기 위해, 마지막 행의 부행렬 인덱스가 높은 부행렬을 미리 정해진 역행렬 연산 제거 행렬
Figure 112006074825387-PAT00011
로 치환한다. 상기 역행렬 연산 제거 행렬은 부행렬 인덱스가 가장 높은 부행렬에 단위행렬을 더하여 구해지며 수학식 4와 같이 표현할 수 있다.
Figure 112006074825387-PAT00012
도 4는 도 3의 기저 행렬을 구성하는 IDCM들을 IDQCM으로 치환하여 생성된 패리티 검사 행렬을 보인 도면으로서, IDQCM[1,23]을 구성하는 부행렬들 중 마지막 행의 부행렬 인덱스가 가장 높은 부행렬
Figure 112006074825387-PAT00013
(401) 이 역행렬 연산 제거 행렬
Figure 112006074825387-PAT00014
로 치환되어 있다. 즉, 수학식 2의 패리티 검사행렬 H에서 마지막 행의
Figure 112006074825387-PAT00015
는 H2에 포함되므로 H2에 대응하는 IDQCM[1,23|R6,R7]은 수학식 5와 같이 변환된다.
Figure 112006074825387-PAT00016
부호율 1/2에 대한 패리티 검사 행렬 과정과 동일한 방법으로 부호율 2/3인 QC LDPC 부호의 기저 행렬은 일예로, IDCM[1,2,3,10], IDCM[4,5,7], 및 IDCM[1,15]을 조합하여 생성되며, 기저행렬 B는 수학식 6과 같이 표현할 수 있다.
B= [IDCM[1,2,3,10]|IDCM[4,5,7]|IDCM[1,15]
수학식 6의 기저 행렬로부터 패리티 검사 행렬 H는 수학식 7과 같이 표현할 수 있다. 그리고, 부호율이 2/3인 경우 16 x 16 부행렬 3개이며, 상기 IDCM 각각의 정수합은 16이 되어야한다.
Figure 112006074825387-PAT00017
H=[H1|H2|H3]=[IDQCM[1,2,3,10|R1,,R4]|IDQCM[4,5,7|R5,R6,R7]|IDQCM[1,15|R8,R9]
본 발명의 일 실시예에 따른 부호율 2/3인 QC LDPC 부호의 부행렬
Figure 112006074825387-PAT00018
은 일예로, 수학식 8과 같이 미리 정해져 있다.
Figure 112006074825387-PAT00019
Figure 112006074825387-PAT00020
Figure 112006074825387-PAT00021
, , ,
Figure 112006074825387-PAT00022
,
Figure 112006074825387-PAT00023
,
Figure 112006074825387-PAT00024
,
Figure 112006074825387-PAT00025
,
Figure 112006074825387-PAT00026
,
Figure 112006074825387-PAT00027
부호율 1/2에서와 마찬가지로, 상술한 바와 같이 상기 부행렬들은 각각 더 작은 크기의 블록 행렬들로 구성된다.
또한, 부호화 과정에서의 역행렬 연산을 제거하기 위해 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 미리 정해진 역행렬 연산 제거 행렬
Figure 112006074825387-PAT00028
로 치환한다. 2/3 부호율을 위한 패리티 검사 행렬에서 부행렬 인덱스가 가장 높은 부행렬은
Figure 112006074825387-PAT00029
이므로 역행렬 연산 제거 행렬은
Figure 112006074825387-PAT00030
이 된다. 즉, 수학식 7의 패리티 검사행렬 H에서 마지막 행의 R9는 H3에 포함되므로 H3에 대응하는 IDQCM[1,15|R8,R9]은 수학식 9와 같이 수정된다.
Figure 112006074825387-PAT00031
한편, 부호율 3/4인 QC LDPC 부호의 기저 행렬은 일예로, IDCM[1,2,3,6], IDCM[1,4,7], IDCM[2,5,5], 및 IDCM[1,11]을 조합하여 생성되며 기저행렬 B는 수학식 10과 같이 표현할 수 있다.
B=[ IDCM[1,2,3,6]|IDCM[1,4,7]|IDCM[2,5,5]|IDCM[1,11]]
같이 표현할 수 있다. 부호율 3/4인 경우 12 x 12 부행렬 4개이며, 상기 IDCM 각각의 정수합은 12가 되어야 한다.
Figure 112006074825387-PAT00032
H=[H1|H2|H3|H4]=[IDQCM[1,2,3,6|R1,,R4]|IDQCM[1,4,7|R5,R6,R7]|IDQCM[2,5,5|R8,R9,R10]|IDQCM[1,11|R11,R12]]
본 발명의 일 실시예에 따른 부호율 3/4인 QC LDPC 부호의 부행렬
Figure 112006074825387-PAT00033
은 일예로, 수학식 12와 같이 미리 정해져 있다.
Figure 112006074825387-PAT00034
Figure 112006074825387-PAT00035
Figure 112006074825387-PAT00036
Figure 112006074825387-PAT00037
Figure 112006074825387-PAT00038
Figure 112006074825387-PAT00039
, , , , , ,
Figure 112006074825387-PAT00040
,
Figure 112006074825387-PAT00041
,
Figure 112006074825387-PAT00042
,
Figure 112006074825387-PAT00043
,
Figure 112006074825387-PAT00044
,
Figure 112006074825387-PAT00045
여기서도, 상술한 바와 같이 상기 부행렬들은 각각 더 작은 크기의 블록 행렬들로 구성된다.
또한, 부호화 과정에서의 역행렬 연산을 제거하기 위해 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 미리 정해진 역행렬 연산 제거 행렬
Figure 112006074825387-PAT00046
로 치환한다. 3/4 부호율을 위한 패리티 검사 행렬에서 부행렬 인덱스가 가장 높은 부행렬
Figure 112006074825387-PAT00047
로부터 역행렬 연산 제거 행렬 (
Figure 112006074825387-PAT00048
)을 구한다. 상기 수학식 11의 패리티 검사행렬 H에서 마지막 행의
Figure 112006074825387-PAT00049
는 H4에 포함되므로 H4에 대응하는 IDQCM[1,11|R11,R12]는 수학식 13으로 다시 쓸 수 있다.
Figure 112006074825387-PAT00050
상기한 패리티 검사 행렬 생성은 일예로, 통신 시스템에서 패리티 검사 행렬 생성기(미도시) 등을 통해서 구현할 수 있으며, 상기한 패리티 검사 행렬을 생성 과정을 개략적으로 살펴보기로 한다.
도 5는 본 발명의 실시예에 따른 패리티 검사 행렬 생성 과정을 도시한 순서도이다.
상기 도 5를 참조하면, 501단계에서 상기 패리티 검사 행렬 생성기는 패리티 검사 행렬 생성을 위한 부호율을 결정하고 503단계로 진행한다.
상기 503단계에서 상기 패리티 검사 행렬 생성기는 상기 결정된 부호율에 대응하는 적어도 두개의 IDCM을 선택하고 505단계로 진행한다.
상기 505단계에서 상기 패리티 검사 행렬 생성기는 선택된 IDCM들을 조합하여 기저 행렬을 생성하고 507단계로 진행한다.
상기 507단계에서 상기 패리티 검사 행렬 생성기는 상기 기저행렬을 형성하는 IDCM들에 대응하는 IDQCM들에 대응하는 IDQCM들로 치환하고 509단계로 진행한다.
여기서, 상기 IDQCM은 상기 IDCM을 구성하는 원소들 중 값이 1인 원소들을 미리 정해진 적어도 하나의 부행렬, 즉 비균일 부행렬들로 대치시킴으로서 생성된다. 또한, 상기 부행렬은 각각 더 작은 크기의 블록 행렬들로 구성된다. 상기 블록 행렬은 영행렬, 단위행렬, 단위행렬을 미리 결정된 크기로 우측 쉬프트하여 생성한 준-순환 행렬 중 적어도 하나를 포함한다. 이때, 상기 부행렬은 상기 블록 행렬들이 비균일하게 구성된 비균일 부행렬들이다.
그리고, 상기 패리티 검사 행렬 생성기는 상기 부행렬들 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 미리 결정된 역행렬 연산 제거 행렬로 치환하며, 상기 역행렬 연산 제거 행렬은 부행렬 인덱스가 가장 높은 부행렬에 단위행렬을 더하여 생성한다. 즉, 상기 역행렬 연산 제거 행렬을 사용하여 부호화 과정에서의 역행렬 연산을 제거한다.
상기 509단계에서 상기 패리티 검사 행렬 생성기는 상기 치환을 통해 4 사이클 또는 6 사이클이 발생하지 않도록 하는 패리티 검사 행렬을 생성한다.
본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상기한 바와 같이, 본 발명의 저밀도 패리티 검사 부호 설계 방법에서는 저밀도 패리티 검사 부호 성능에 악영향을 미치는 4 사이클 또는 6 사이클이 완전히 제거된 패리티 검사 행렬을 구현함으로써 저밀도 패리티 검사 부호의 복호 성능을 향상시킬 수 있다. 또한 본 발명의 저밀도 패리티 검사 부호 설계 방법에서는 부호화 과정에서 역행열 연산을 제거함으로써 부호화 복잡도를 최소화 할 수 있다.

Claims (22)

  1. 저밀도 패리티 검사 부호의 패리티 검사 행렬 생성 방법에 있어서,
    값이 1인 원소가 균일하게 분포된 기저 행렬을 생성하는 과정과,
    상기 기저 행렬의 값이 1인 원소들을 미리 정해진 부행렬들로 치환하여 패리티 검사 행렬을 생성하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  2. 제 1 항에 있어서,
    상기 기저 행렬 생성은,
    상기 저밀도 패리티 검사 부호의 부호율을 결정하는 과정과,
    상기 부호율에 대응하는 적어도 두 개의 정수거리순환행렬을 생성하는 과정과,
    상기 정수거리순환행렬을 배열하여 기저 행렬을 생성하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  3. 제 2 항에 있어서,
    상기 패리티 검사 행렬 생성은,
    상기 기저 행렬을 구성하는 정수거리순환행렬들에 대응하여 상기 미리 정해진 부행렬들로 구성되는 정수거리준-순환행렬로 치환하는 과정과,
    상기 부행렬들 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 미리 결정된 역행렬 연산 제거 행렬로 치환하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  4. 제 3 항에 있어서,
    상기 역행렬 연산 제거 행렬은, 상기 부행렬들 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬에 단위행렬을 더하여 생성하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  5. 제 1 항에 있어서,
    상기 부행렬들은 적어도 하나의 블록 행렬을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  6. 제 5 항에 있어서,
    상기 부행렬들은 상기 블록 행렬이 비균일하게 구성된 비균일 부행렬들임을 특징으로 하는 패리티 검사 행렬 생성 방법.
  7. 제 5 항에 있어서,
    상기 블록 행렬은 영행렬(zero matrix), 단위행렬(unit matrix), 그리고 단위행렬을 미리 결정된 크기로 우측 쉬프트(shift)하여 생성한 준-순환 행렬(Quasi-Cyclic matrix) 중 적어도 하나를 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  8. 제 2 항에 있어서,
    상기 부호율이 1/2이면, 상기 기저 행렬 생성은,
    상기 부호율 1/2에 대응하는 크기가 24 x 24인 두 개의 정수거리순환행렬을 생성하는 과정과,
    상기 두 개의 정수거리순환행렬을 배열하여 기저 행렬을 생성하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  9. 제 8 항에 있어서,
    상기 두 개의 정수거리순환행렬 중 제 1 정수거리순환행렬은 값이 1인 원소 간 거리가 2, 3, 4, 5, 및 10인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하고, 제 2 정수거리순환행렬은 값이 1인 원소 간 거리가 1과 23인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  10. 제 9 항에 있어서,
    상기 패리티 검사 행렬 생성은,
    상기 기저 행렬을 구성하는 제 1 및 제 2 정수거리순환행렬은 대응하는 제 1 및 제 2 정수거리준-순환행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  11. 제 10 항에 있어서,
    상기 제 1 및 제 2 정수거리준-순환행렬은 각각 제 1 및 제 2 정수거리순환행렬의 값이 1인 원소들에 대응하는 미리 정해진 적어도 하나의 부행렬로 구성되는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
    상기 부행렬은,
    Figure 112006074825387-PAT00051
    ,
    Figure 112006074825387-PAT00052
    ,
    Figure 112006074825387-PAT00053
    ,
    Figure 112006074825387-PAT00054
    ,
    Figure 112006074825387-PAT00055
    ,
    Figure 112006074825387-PAT00056
    ,
    Figure 112006074825387-PAT00057
    을 포함함.
  12. 제 11 항에 있어서,
    상기 부행렬 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 상기 부행렬에 단위행렬을 더하여 생성한 역행렬 연산 제거 행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  13. 제 2 항에 있어서,
    상기 부호율이 2/3이면, 상기 기저 행렬 생성은,
    상기 부호율 2/3에 대응하는 크기가 16 x 16인 세 개의 정수거리순환행렬을 생성하는 과정과,
    상기 세 개의 정수거리순환행렬을 배열하여 기저 행렬을 생성하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  14. 제 13 항에 있어서,
    상기 세 개의 정수거리순환행렬 중 제 1 정수거리순환행렬은 값이 1인 원소 간 거리가 1, 2, 3, 및 10인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하고, 제 2 정수거리순환행렬은 값이 1인 원소 간 거리가 4, 5, 및 7인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하고, 제 3 정수거리순환행렬은 값이 1인 원소 간 거리가 1과 15인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  15. 제 14 항에 있어서,
    상기 패리티 검사 행렬 생성은,
    상기 기저 행렬을 구성하는 제 1, 제 2, 및 제3 정수거리순환행렬을 대응하는 제 1, 제 2, 및 제 3 정수거리준-순환행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  16. 제 15 항에 있어서,
    상기 제 1, 제 2, 및 제 3 정수거리준-순환행렬은 각각 제 1, 제 2, 및 제 3 정수거리순환행렬의 값이 1인 원소들에 대응하는 미리 정해진 적어도 하나의 부행 렬로 구성되는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
    상기 부행렬은,
    Figure 112006074825387-PAT00058
    ,
    Figure 112006074825387-PAT00059
    ,
    Figure 112006074825387-PAT00060
    ,
    Figure 112006074825387-PAT00061
    ,
    Figure 112006074825387-PAT00062
    ,
    Figure 112006074825387-PAT00063
    ,
    Figure 112006074825387-PAT00064
    ,
    Figure 112006074825387-PAT00065
    ,
    Figure 112006074825387-PAT00066
    을 포함함.
  17. 제 16 항에 있어서,
    상기 부행렬 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 상기 부행렬에 단위행렬을 더하여 생성한 역행렬 연산 제거 행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  18. 제 2 항에 있어서,
    상기 부호율이 3/4이면, 상기 기저 행렬 생성은,
    상기 부호율 3/4에 대응하는 크기가 12 x 12인 네 개의 정수거리순환행렬을 생성하는 과정과,
    상기 세 개의 정수거리순환행렬을 배열하여 기저 행렬을 생성하는 과정을 포함함을 특징으로 하는 패리티 검사 행렬 생성 방법.
  19. 제 18 항에 있어서,
    상기 네 개의 정수거리순환행렬 중 제 1 정수거리순환행렬은 값이 1인 원소 간 거리가 1, 2, 3, 및 6인 행을 오른쪽으로 1씩 쉬프트시켜 생성하고, 제 2 정수거리순환행렬은 값이 1인 원소 간 거리가 1, 4, 및 7인 행을 오른쪽으로 1씩 쉬프트시켜 생성하고, 제 3 정수거리순환행렬은 값이 1인 원소 간 거리가 2, 5, 및 5인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하고, 제 4 정수거리순환행렬은 값이 1인 원소간 거리가 1과 11인 행을 오른쪽으로 1씩 쉬프트 시켜 생성하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  20. 제 19 항에 있어서,
    상기 패리티 검사 행렬 생성은,
    상기 기저 행렬을 구성하는 제 1, 제 2, 제 3, 및 제 4 정수거리순환행렬을 대응하는 제 1, 제 2, 제 3, 및 제 4 정수거리준-순환행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
  21. 제 20 항에 있어서,
    상기 제 1, 제 2, 제 3 및 제 4 정수거리준-순환행렬은 각각 제 1, 제 2, 제 3, 및 제 4 정수거리순환행렬의 값이 1인 원소들에 대응하는 미리 정해진 적어도 하나의 부행렬로 구성되는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
    상기 부행렬은,
    Figure 112006074825387-PAT00067
    ,
    Figure 112006074825387-PAT00068
    ,
    Figure 112006074825387-PAT00069
    ,
    Figure 112006074825387-PAT00070
    , ,
    Figure 112006074825387-PAT00072
    ,
    Figure 112006074825387-PAT00073
    ,
    Figure 112006074825387-PAT00074
    ,
    Figure 112006074825387-PAT00075
    ,
    Figure 112006074825387-PAT00076
    ,
    Figure 112006074825387-PAT00077
    ,
    Figure 112006074825387-PAT00078
    을 포함함.
  22. 제 21 항에 있어서,
    상기 부행렬 중에서 마지막 행의 부행렬 인덱스가 가장 높은 부행렬을 상기 부행렬에 단위행렬을 더하여 생성한 역행렬 연산 제거 행렬로 치환하는 것을 특징으로 하는 패리티 검사 행렬 생성 방법.
KR1020060100845A 2005-10-17 2006-10-17 저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법 KR100842597B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020050097687 2005-10-17
KR20050097687 2005-10-17

Publications (2)

Publication Number Publication Date
KR20070042105A true KR20070042105A (ko) 2007-04-20
KR100842597B1 KR100842597B1 (ko) 2008-07-01

Family

ID=37460373

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060100845A KR100842597B1 (ko) 2005-10-17 2006-10-17 저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법

Country Status (4)

Country Link
US (1) US20070162816A1 (ko)
EP (1) EP1775839B1 (ko)
KR (1) KR100842597B1 (ko)
DE (1) DE602006011101D1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100949519B1 (ko) * 2007-12-18 2010-03-24 한국전자통신연구원 낮은 복잡도 및 고속 복호를 위한 패리티 검사행렬 생성방법과, 그를 이용한 저밀도 패리티 검사 부호의 부호화장치 및 그 방법
US8495459B2 (en) 2008-11-24 2013-07-23 Samsung Electronics Co., Ltd Channel-encoding/decoding apparatus and method using low-density parity-check codes

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8225174B2 (en) * 2006-12-07 2012-07-17 Nec Corporation Decoding device and decoding method
US8429483B1 (en) * 2007-12-12 2013-04-23 Marvell International Ltd. Edge-based decoders for low-density parity-check codes
US10367526B2 (en) * 2015-11-23 2019-07-30 Avago Technologies International Sales Pte. Limited Irregular low density parity check processing system with non-uniform scaling
CN106059595B (zh) * 2016-05-26 2020-07-07 北京邮电大学 空间耦合低密度奇偶校验码的通用递归编码方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6633856B2 (en) * 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US6789227B2 (en) * 2001-07-05 2004-09-07 International Business Machines Corporation System and method for generating low density parity check codes using bit-filling
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US7178080B2 (en) * 2002-08-15 2007-02-13 Texas Instruments Incorporated Hardware-efficient low density parity check code for digital communications
US7260763B2 (en) * 2004-03-11 2007-08-21 Nortel Networks Limited Algebraic low-density parity check code design for variable block sizes and code rates
US7581157B2 (en) * 2004-06-24 2009-08-25 Lg Electronics Inc. Method and apparatus of encoding and decoding data using low density parity check code in a wireless communication system
KR100918741B1 (ko) * 2004-07-27 2009-09-24 삼성전자주식회사 이동 통신 시스템에서 채널 부호화 장치 및 방법
WO2006039801A1 (en) * 2004-10-12 2006-04-20 Nortel Networks Limited System and method for low density parity check encoding of data
US7617439B2 (en) * 2005-01-10 2009-11-10 Broadcom Corporation Algebraic construction of LDPC (Low Density Parity Check) codes with corresponding parity check matrix having CSI (Cyclic Shifted Identity) sub-matrices

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100949519B1 (ko) * 2007-12-18 2010-03-24 한국전자통신연구원 낮은 복잡도 및 고속 복호를 위한 패리티 검사행렬 생성방법과, 그를 이용한 저밀도 패리티 검사 부호의 부호화장치 및 그 방법
US8205131B2 (en) 2007-12-18 2012-06-19 Electronics And Telecommunications Research Institute Method for producing parity check matrix for low complexity and high speed decoding, and apparatus and method for coding low density parity check code using the same
US8495459B2 (en) 2008-11-24 2013-07-23 Samsung Electronics Co., Ltd Channel-encoding/decoding apparatus and method using low-density parity-check codes

Also Published As

Publication number Publication date
US20070162816A1 (en) 2007-07-12
DE602006011101D1 (de) 2010-01-28
EP1775839B1 (en) 2009-12-16
KR100842597B1 (ko) 2008-07-01
EP1775839A1 (en) 2007-04-18

Similar Documents

Publication Publication Date Title
KR101211433B1 (ko) 낮은 복잡도를 가지는 고속의 qc-ldpc 부호의 부호화 장치 및 방법
JP4617985B2 (ja) 符号装置および符号化方法
KR100875613B1 (ko) 송신기를 동작시키기 위한 방법 및 장치 및 수신기를 동작시키기 위한 방법
US10103751B2 (en) Non-concatenated FEC codes for ultra-high speed optical transport networks
US20090019333A1 (en) Generation of parity-check matrices
KR100842597B1 (ko) 저밀도 패리티 검사 부호의 패리티 검사 행렬 설계 방법
KR20150118993A (ko) 높은 병렬성, 낮은 에러 플로어, 및 간단한 인코딩 원리를 갖는 리프팅된 ldpc 코드들에 대한 설계
EP2405583A1 (en) Encoder, decoder, and encoding method
KR20050044963A (ko) q차 제곱 잉여류를 이용한 준순환 저밀도 패러티 검사부호 생성 방법
RU2743857C1 (ru) Способ и оборудование проектирования для квазициклического разреженного контроля по четности
KR100918741B1 (ko) 이동 통신 시스템에서 채널 부호화 장치 및 방법
WO2014117836A1 (en) Ldpc code design and encoding apparatus enabling the adjustment of code rate and codelength
Khodaiemehr et al. Construction and encoding of QC-LDPC codes using group rings
TW201438406A (zh) 雙重準循環低密度同位校驗碼
EP2226945A1 (en) Generation of optimized exponent matrices for multi-rate LDPC codes
Wang et al. Explicit constructions for type-1 QC-LDPC codes with girth at least ten
CN108494411B (zh) 一种多进制ldpc码校验矩阵的构造方法
EP3047575B1 (en) Encoding of multiple different quasi-cyclic low-density parity check (qc-ldpc) codes sharing common hardware resources
EP1820275A1 (en) Ldpc encoder and decoder and ldpc encoding and decoding methods
KR20090064709A (ko) Ldpc 부호의 패리티 검사 행렬 생성 장치 및 그방법과, 그를 이용한 ldpc 부/복호화 장치
CN110324048B (zh) 一种通信调制系统中ra-ldpc-cc的编码方法及编码器
CN108199722B (zh) 一种基于矩阵格的bibd-ldpc码构造方法
EP2178213A1 (en) Methods and apparatuses for error correction coding
Jiang et al. Large girth non-binary LDPC codes based on finite fields and Euclidean geometries
RU2365034C2 (ru) Способ и устройство для кодирования и декодирования данных

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130530

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150528

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160530

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170529

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180530

Year of fee payment: 11