KR101079087B1 - Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체 - Google Patents

Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체 Download PDF

Info

Publication number
KR101079087B1
KR101079087B1 KR1020040060839A KR20040060839A KR101079087B1 KR 101079087 B1 KR101079087 B1 KR 101079087B1 KR 1020040060839 A KR1020040060839 A KR 1020040060839A KR 20040060839 A KR20040060839 A KR 20040060839A KR 101079087 B1 KR101079087 B1 KR 101079087B1
Authority
KR
South Korea
Prior art keywords
parity check
check matrix
procedure
row
ldpc code
Prior art date
Application number
KR1020040060839A
Other languages
English (en)
Other versions
KR20060012110A (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 KR1020040060839A priority Critical patent/KR101079087B1/ko
Priority to US11/572,705 priority patent/US7814403B2/en
Priority to PCT/KR2005/002421 priority patent/WO2006011744A2/en
Priority to EP05771124.4A priority patent/EP1782540B1/en
Priority to JP2007523474A priority patent/JP4672015B2/ja
Priority to CN2005800255866A priority patent/CN101305521B/zh
Publication of KR20060012110A publication Critical patent/KR20060012110A/ko
Application granted granted Critical
Publication of KR101079087B1 publication Critical patent/KR101079087B1/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/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
    • 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/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 LDPC 코드를 이용한 부호화 방법 및 부호화를 위한 컴퓨터로 읽을 수 있는 기록 매체에 관한 것이다. 본 발명에 의한 LDPC(Low Density Parity Check) 코드를 이용한 부호화 방법은, LDPC 코드를 이용한 부호화 방법에 있어서, 소스 입력 데이터를 패리티 검사 행렬(parity check matrix) H를 이용하여 부호화하되, 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우가 기 설정된 임계값(Cmax) 이하인 것을 특징으로 한다. 상기 패리티 검사 행렬 Η의 임의의 어느 두 행(rows)도 둘 이상의 지점에 동시에 1을 갖지 않는 것이 바람직하다.
LDPC 코드, 부호화, 복호화, 패리티 체크, 행렬

Description

LDPC 코드를 이용한 부호화 방법 및 부호화를 위한 컴퓨터로 읽을 수 있는 기록 매체 {Encoding method by using LDPC code and computer-readable medium for the same}
도1은 본 발명의 바람직한 일 실시예를 설명하기 위한 통신 시스템 구성도임.
도2는 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우의 예를 도시한 것임.
도3은 패리티 검사 행렬 Η의 다른 표현 방법인 바이퍼타이트 그래프(bipartite graph)임.
도4는 패리티 검사 행렬 Η의 두 행이 두 개의 지점에 동시에 1을 갖는 경우를 예시한 도면임.
도5는 패리티 검사 행렬 H를 생성하는 일 과정을 설명하기 위한 절차 흐름도임.
본 발명은 부호화(encoding) 방법에 관한 것이다. 보다 구체적으로는, 저밀 도 패리티 검사(LDPC: Low Density Parity Check) 코드를 이용하여 부호화하는 방법의 성능(performance)을 향상시킬 수 있는 부호화 방법 및 부호화를 위한 컴퓨터로 읽을 수 있는 기록 매채에 관한 것이다.
일반적으로 부호화(encoding)라 함은 송신측에서 송신된 데이터가 통신 채널을 통하여 전송되는 과정에서 발생되는 신호의 일그러짐, 손실 등에 의한 오류의 발생에도 불구하고 수신측에서 원래의 데이터를 복원할 수 있도록 하기 위하여 송신측에서 데이터 처리를 하는 과정을 의미한다. 복호화(decoding)은 부호화되어 송신된 신호를 수신측에서 원래의 데이터로 복원하는 과정이다.
최근에 LDPC 코드를 이용한 부호화 방법이 부각되고 있다. LDPC 코드는 패리티 검사 행렬(parity check matrix) Η의 원소(element)들의 대부분이 0이어서 저밀도(low density)인 선형 블록 부호(linear block code)로서 1962년 갤러거(Gallager)에 의해 제안되었다. LDPC 부호는 매우 복잡하여 제안 당시의 하드웨어 기술로는 구현이 불가능하였기 때문에 잊혀져 있다가 1995년에 재발견되어 성능이 매우 우수함이 입증된 이래로 최근에 그에 관한 연구가 활발히 진행되고 있는 상황이다.
LDPC 코드의 패리티 검사 행렬은 1의 개수가 매우 적기 때문에 매우 큰 블록 크기에서도 반복 복호를 통하여 복호가 가능하여 블록 크기가 매우 커지면 터보 코드처럼 섀넌(Shannon)의 채널 용량 한계에 근접하는 성능을 보인다.
LDPC 코드는 (n-k)×n 패리티 검사 행렬 Η에 의해 설명될 수 있다. 상기 패리티 검사 행렬 Η에 대응하는 생성 행렬(generator matrix) G는 다음의 수학식1 에 의해 구할 수 있다.
ΗㆍG = 0
LDPC 코드를 이용한 부호화 및 복호화 방법에 있어서는 송신측에서 상기 패리티 검사 행렬 Η와 수학식1의 관계에 있는 상기 생성 행렬 G를 이용하여 다음의 수학식2에 의해 입력 데이터를 부호화한다.
c = Gㆍu (여기서, c는 코드워드(codework)이고, u는 데이터 프레임임.)
상기한 바와 같이, LDPC 코드를 이용한 부호화 방법에서는 상기 패리티 검사 행렬 Η가 가장 중요한 요소라 할 수 있다. 상기 패리티 검사 행렬 Η는 적어도 1000×2000 정도의 크기를 갖기 때문에 부호화 및 복호화 과정에서 많은 연산이 요구되고, 구현이 매우 복잡하며, 많은 저장 공간을 요구한다.
일반적으로 패리티 검사 행렬 H에 더 많은 웨이트를 부가하는 것은, 패리티 검사 방정식(parity check equations)들에 더 많은 변수를 부가하는 것이기 때문에 LDPC 코드에 의한 부호화 및 복호화 방법에서 더 좋은 성능을 발휘할 수 있다. 그러나, 패리티 검사 행렬 H에 더 많은 웨이트를 부가하면 패리티 검사 행렬 전체에 4-싸이클이나 6-싸이클을 형성하는 경우가 많아져 이에 따라 LDPC 코드에 의한 부호화 및 복호화 방법의 성능을 저하시킬 수 있는 위험성도 따른다.
결과적으로 패리티 검사 행렬 H에 더 많은 웨이트를 부가함에 있어서 4-싸이클이나 6-싸이클을 어느 정도까지 허용할 것인지에 따라 LDPC 코드에 의한 부호 화 및 복호화 방법의 성능에 중요한 영향을 미치므로 이에 대한 합리적 기준이 필요하다.
본 발명은 상기한 바와 같은 종래기술의 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 LDPC 코드를 이용하여 부호화하는 방법에 있어서 패리티 검사 행렬 H에 4-싸이클이나 6-싸이클을 어느 정도까지 허용할 것인지에 대한 기준을 제시하여 LDPC 코드에 의한 부호화 및 복호화 방법의 성능을 향상 시킬 수 있는 부호화 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 부호화 방법을 제공하는데 필요한 데이터 구조가 기록된 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 것이다.
본 발명의 또 다른 목적은 LDPC 코드를 이용한 부호화 및 복호화 방법에 이용되는 상기 패리티 검사 행렬 H 를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 것이다.
발명의 개요
본 발명에 의한 LDPC(Low Density Parity Check) 코드를 이용한 부호화 방법은, LDPC 코드를 이용한 부호화 방법에 있어서, 소스 입력 데이터를 패리티 검사 행렬(parity check matrix) H를 이용하여 부호화하되, 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우가 기 설정된 임계값(Cmax) 이하인 것을 특징으로 한다. 상기 패리티 검사 행렬 Η의 임의의 어느 두 행(rows)도 둘 이상의 지점에 동시에 1을 갖지 않는 것이 바람직하다.
본 발명에 따른 패리티 검사 행렬 H의 데이터 구조가 기록된 컴퓨터로 읽을 수 있는 기록 매체는, 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우가 기 설정된 임계값(Cmax) 이하인 것을 특징으로 하는 상기 패리티 검사 행렬 Η와 동일한 데이터 구조가 기록된 것을 특징으로 한다.
본 발명에 따른 LDPC 코드를 이용한 부호화 및 복호화 방법에 이용되는 패리티 검사 행렬 H 를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는, 상기 패리티 검사 행렬 H의 j번째 열의 i번째 행에 잠정적으로 웨이트를 부가하는 제1절차; 상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하는지를 판단하는 제2절차; 상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하지 않으면 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하인지를 판단하는 제3절차; 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하이면 상기 i번째 행에 최종적으로 웨이트를 부가하는 제4절차; 및 상기 제1절차 내지 제4절차를 상기 패리티 검사 행렬 H의 모든 열 및 모든 행에 대하여 수행하여 상기 패리티 검사 행렬 H를 생성하는 제5절차를 수행하는 프로그램을 기록한 것을 특징으로 한다.
본 발명에 따른 LDPC(Low Density Parity Check) 코드를 이용한 부호화 및 복호화 방법에 이용되며 [Hd|Hp] 의 구성을 갖는 패리티 검사 행렬 H에 있어 상기 Hd를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체는, 상기 Hd의 j번째 열의 i번째 행에 잠정적으로 웨이트를 부가하는 제1절차; 상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하는지를 판단하는 제2절차; 상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하지 않으면 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하인지를 판단하는 제3절차; 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하이면 상기 i번째 행에 최종적으로 웨이트를 부가하는 제4절차; 및 상기 제1절차 내지 제4절차를 상기 Hd의 모든 열 및 모든 행에 대하여 수행하여 상기 Hd를 생성하는 제5절차를 수행하는 프로그램을 기록한 것을 특징으로 한다.
실시예
이하에서는 본 발명에 따른 LDPC(Low Density Parity Check) 코드를 이용한 부호화 방법의 바람직한 실시예들을 첨부된 도면을 참조하여 설명하도록 한다. 도1은 본 발명의 바람직한 일 실시예를 설명하기 위한 도면으로서, 본 발명의 기술적 특징이 무선 통신 시스템에 적용된 일례이다. 이하에서 설명되는 실시예는 본 발명의 특징을 설명하기 위한 예시에 불과한 것으로서 본 발명의 기술적 특징은 부호화 가 필요한 모든 분야에 적용 가능함은 당업자에게 자명하다.
도1에서, 송신기(10)와 수신기(30)가 무선 채널(20)을 매개로 통신을 수행한다. 상기 송신기(10)에서는 데이터 소스(11)로부터 출력된 k 비트의 소스 데이터(u)가 LDPC 부호화 모듈(13)에서의 LDPC 부호화(encoding)에 의해 n 비트의 코드워드(c)가 된다. 코드워드(c)는 변조 모듈(15)에 의해 무선 변조되어 안테나(17)를 통하여 송신되어 무선채널(20)을 통해 상기 수신기(30)의 안테나(31)로 수신된다. 상기 수신기(30)에서는 상기 송신기(10)에서 일어났던 과정의 역과정을 거치는데, 복조 모듈(33)에 의해 복조되고, LDPC 복호화 모듈(35)에 의해 복호되어 최종적으로 소스 데이터(u)를 얻을 수 있다.
상술된 데이터 송수신 과정은 본 발명의 특징을 설명하기 위해 필요한 최소한의 범위 내에서 설명된 것으로 이외에도 데이터 전송을 위해 필요한 다른 많은 과정이 있음은 당업자에게 용이하게 이해될 수 있을 것이다.
상기 수학식1에서, 상기 패리티 검사 행렬(parity check matrix) Η는 Η=[Hd|Hp](Hd는 (n-k)×k, Hp는 (n-k)×(n-k) 차원임)로 표현될 수 있다. 상기 k는 상기 LDPC 부호화 모듈(13)로 입력되는 소스 데이터의 길이(비트 단위)이고, 상기 n은 부호화된 코드워드(c)의 길이(비트 단위)를 의미한다.
상기 수학식1 및 Η=[Hd|Hp]의 관계에 의해서 G=[I|(Hp -1d)t]t 임을 알 수 있다. 따라서, 상기 LDPC 부호화 모듈(13)은 상기 수학식2에 의해 입력 데이터 (u)에 상기 G=[I|(Hp -1d)t]t를 곱해 줌으로써 부호화한다. 결국 수학식2는 다음의 수학식3과 같이 표현될 수 있다.
c = [I|(Hp -1d)t]tㆍu
본 발명의 특징은 [Hd|Hp]의 구조를 갖는 상기 패리티 검사 행렬 H의 전체 데이터 구조에 있다. 즉, 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우가 기 설정된 임계값(Cmax) 이하인 것을 특징으로 한다. 상기 패리티 검사 행렬 Η의 임의의 어느 두 행(rows)도 둘 이상의 지점에 동시에 1을 갖지 않는 것이 바람직하다. 상기 임계값(Cmax)은 상기 패리티 검사 행렬 H에 6-싸이클이 존재하더라도 상기 패리티 검사 행렬 H를 이용한 부호화 및 복호화의 성능 저하가 일어나지 않는 범위에서 결정되는 것이 바람직하다. 더욱 구체적으로는, 상기 패리티 검사 행렬 H에 존재하는 6-싸이클의 감소로 인한 성능 개선 효과와 6-싸이클을 줄이기 위해서 필요한 계산량을 비교 형량하여 합리적 범위 내에서 결정되는 것이 바람직하다.
도2는 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우의 예를 도시한 것이다. 다시 말해서, i, j 및 k행의 세 행들 중에서 선택된 모든 조합 가능한 두 개의 행들 즉, i번째 행과 j번째 행, j번째 행과 k번째 행 및 k번째 행과 i번째 행이 같은 지점에 1 을 갖는 경우로서, 도2에서 원을 그린 6개의 지점을 연결하면 싸이클을 형성하는데 이를 6-싸이클이라 한다. 도3은 상기 패리티 검사 행렬 Η의 다른 표현 방법인 바이퍼타이트 그래프(bipartite graph)로서, 6행 9열의 패리티 검사 행렬을 의미한다. 도3에서 굵은 선으로 표시된 부분이 6-싸이클을 형성하는 부분이다. 상기 패리티 검사 행렬 Η의 임의의 세 행 중에서 선택된 모든 조합 가능한 두 개의 행이 같은 지점에 1을 갖는 경우가 기 설정된 임계값(Cmax) 이하라는 의미는 상기 패리티 검사 행렬 Η 전체에 대하여 6-싸이클을 형성하는 부분이 상기 임계값(Cmax)보다 작거나 같다라는 의미이다.
도4는 상기 패리티 검사 행렬 Η의 두 행이 두 개의 지점에 동시에 1을 갖는 경우를 예시한 도면이다. 즉, 도4에서 i번째 행의 원을 그린 두 지점과 j번째 행의 원을 그린 두 지점이 모두 1인 경우로서, 도4와 같은 경우가 패리티 검사 행렬 Η에 없어야 LDPC 코드에 의한 부호화 및 복호화 방법이 좋은 성능을 발휘한다. 도4에 도시된 바와 같이, 패리티 검사 행렬 Η의 두 행이 두 개의 지점에 동시에 1을 갖는 경우를 4-싸이클(4-cycle)이라 한다. 상기 패리티 검사 행렬 Η의 임의의 어느 두 행(rows)도 둘 이상의 지점에 동시에 1을 갖지 않는다라는 의미는 상기 패리티 검사 행렬 Η 전체에 대하여 4-싸이클을 형성하는 경우가 없다는 의미이다.
LDPC 코드에 의한 부호화 방법에 있어서는 상기 패리티 검사 행렬 Η를 구성하는 행들 간에 채널 상황에 의해 판단되는 확률적 정보의 반복적 교환에 의하여 이루어지는데, 상기 두 가지 조건이 만족되지 않는 패리티 검사 행렬 Η에서는 각 행의 확률적 정보가 다른 행들로 전달되었다가 충분한 반복을 거치지 않고 되돌아오기 때문에 좋은 성능을 발휘하지 못하는 것이다.
도5는 상기한 바와 같은 특징으로 갖는 패리티 검사 행렬 H 또는 Hd를 생성하는 일 과정을 설명하기 위한 절차 흐름도이다. 이하에서 설명되는 방법은 일예에 불과한 것으로서, 상기한 바와 같은 특징을 갖는 패리티 검사 행렬 H 또는 Hd는 다양한 방법에 의해 구할 수 있을 것이다.
도5에서, i는 상기 패리티 검사 행렬 H또는 Hd의 임의의 행(row)의 인덱스이고, j는 임의의 열(column)의 인덱스이며, Cw는 임의의 열 j의 현재 웨이트(weight) 수를 의미한다. 우선 웨이트가 없는(Cw=0) 첫 번째 열(j=1)에 대하여 웨이트를 부가하기 시작한다[S21]. 여기서 웨이트를 부가한다는 의미는 임의의 열의 임의의 행에 해당하는 원소를 1로 한다는 것이다.
첫 번째 열의 임의의 i번째 후보 행(candidate row)에 잠정적으로 웨이트를 부가한다[S22]. 잠정적으로 웨이트를 부가한다는 것은 그 행에 대한 웨이트 부가가 최종적인 것이 아니라 후 절차에 의해 변경될 수 있다는 의미이다. 그 다음으로 상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하는지를 판단하여[S23], 4-싸이클이 존재하면 상기 i 번째 행에 대하여 웨이트를 부가하지 않고 다른 행에 웨이트를 부가하여[S22] 그 다음 절차를 다시 진행하고, 4-싸이클이 존재하지 않으면 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 존재하는지를 판단한다[S24].
상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 존재하는지에 대한 판단 결과 6-싸이클이 존재하지 않으면 상기 i번째 행에 최종적으로 웨이트를 부가한다. 6-싸이클이 존재하면 상기 패리티 검사 행렬 H 전체의 6-싸이클 수가 기 설정된 임계값(Cmax) 이하인지를 판단하여[S25], 그 이하이면 마찬가지로 상기 i번째 행에 최종적으로 웨이트를 부가하고, 그 이하가 아니면 상기 i번째 행에 웨이트를 부가하지 않고 다른 행에 웨이트를 부가하여[S22] 그 다음 절차를 다시 진행한다.
상기 i번째 행에 웨이트를 최종적으로 부가하면[S26] 상기 j번째 열의 현재 웨이트 수(Cw)를 1 증가시키고[S27], 상기 j번째 열의 현재 웨이트 수가 상기 j번째 열에 허용 가능한 최대 웨이트 수(Cjmax)와 동일한지를 판단한다[S28]. 상기 j번째 열의 현재 웨이트 수가 상기 j번째 열에 허용 가능한 최대 웨이트 수(Cjmax)와 동일하면 상기 j번째 열에 대한 웨이트 부가는 종료하고, 상기 j가 코드워드 길이와 동일한지를 판단한다[S29]. 상기 j번째 열의 현재 웨이트 수가 상기 j번째 열에 허용 가능한 최대 웨이트 수(Cjmax)와 동일하지 않으면 단계 S22로 돌아가 상기 j번째 열의 다른 행에 잠정적으로 웨이트를 부가하고 그 후속 절차를 계속해서 수행한다.
상기 j가 코드워드 길이와 동일하면 상기 패리티 검사 행렬 H 전체에 대하여 웨이트 부가가 종료된 것이므로 그 때까지의 웨이트 부가 결과에 따라 최종적으로 상기 패리티 검사 행렬 H를 생성할 수 있다[S31]. 상기 j가 코드워드 길이와 동일하지 않으면 아직 웨이트를 부가하지 않은 열이 존재한다는 의미이므로 j에 1을 추가하여[S30] 다음 열에 대하여 S22 단계부터 상기한 바와 같은 방법으로 웨이 트를 부가한다.
상기한 바와 같이, 상기 패리티 검사 행렬 H 전체를 상기한 바와 같은 절차에 의해 생성할 수도 있으나, [Hd|Hp]의 구조를 갖는 패리티 검사 행렬 H에서 상기 Hd를 상기한 바와 같은 절차에 의해 생성하고, 상기 Hp를 정형화된 형태를 사용하는 것도 가능하다. Hp로 (n-k)×(n-k) 차원의 이중 대각 행렬(dual diagonal matrix)을 사용하는 것이 바람직하다. 이중 대각 행렬은 주 대각(main diagonal)과 상기 주 대각 바로 밑의 대각이 1이고 나머지가 모두 0인 행렬을 의미한다.
도1에서, 상기 수신기(30)가 상기한 바와 같은 방법으로 부호화된 데이터를 수신하여 복호함에 있어서는 다음의 수학식4를 이용한다.
Ηㆍc = 0
즉, 부호화된 데이터 c와 상기 패리티 검사 행렬(parity check matrix) Η를 곱하여 0가 되면 전송 에러가 없다는 것을 의미하고, 0가 되지 않으면 전송 에러가 존재한다는 것을 의미하므로 이에 따라 소스 데이터를 분리해 낼 수 있다.
본 발명이 갖는 기술적 사상은 상기 특징들을 갖는 H와 같은 데이터 구조가 기록된, CD-ROM, 플로피 디스크, 컴퓨터 메모리 또는 이동통신용 단말기의 메모리 등과 같은 CPU(Control Process Unit)에 의해 판독 가능한 기록 매체에도 미칠 수 있음이 이해되어야 한다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
본 발명에 의한 LDPC 코드를 이용한 부호화 방법 및 부호화를 위한 컴퓨터로 읽을 수 있는 기록 매체에 따르면, 패리티 검사 행렬 H에 4-싸이클이나 6-싸이클을 어느 정도까지 허용할 것인지에 대한 기준을 제시하여 LDPC 코드에 의한 부호화 및 복호화 방법의 성능을 향상시킬 수 있는 효과가 있다.

Claims (6)

  1. 삭제
  2. 삭제
  3. 삭제
  4. LDPC(Low Density Parity Check) 코드를 이용한 부호화 및 복호화 방법에 이용되는 패리티 검사 행렬 H 를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 있어서,
    상기 패리티 검사 행렬 H의 j번째 열의 i번째 행에 잠정적으로 웨이트를 부가하는 제1절차;
    상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하는지를 판단하는 제2절차;
    상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하지 않으면 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하인지를 판단하는 제3절차;
    상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하이면 상기 i번째 행에 최종적으로 웨이트를 부가하는 제4절차; 및
    상기 제1절차 내지 제4절차를 상기 패리티 검사 행렬 H의 모든 열 및 모든 행에 대하여 수행하여 상기 패리티 검사 행렬 H를 생성하는 제5절차를 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  5. LDPC(Low Density Parity Check) 코드를 이용한 부호화 및 복호화 방법에 이용되며 [Hd|Hp] 의 구성을 갖는 패리티 검사 행렬 H에 있어 상기 Hd를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 있어서,
    상기 Hd의 j번째 열의 i번째 행에 잠정적으로 웨이트를 부가하는 제1절차;
    상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하는지를 판단하는 제2절차;
    상기 패리티 검사 행렬 H 전체에 대하여 4-싸이클이 존재하지 않으면 상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하인지를 판단하는 제3절차;
    상기 패리티 검사 행렬 H 전체에 대하여 6-싸이클이 기 설정된 임계값(Cmax) 이하이면 상기 i번째 행에 최종적으로 웨이트를 부가하는 제4절차; 및
    상기 제1절차 내지 제4절차를 상기 Hd의 모든 열 및 모든 행에 대하여 수행하여 상기 Hd를 생성하는 제5절차를 수행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
  6. 제5항에 있어서,
    상기 Hp는 이중 대각 행렬(dual diagonal matrix)인 것을 특징으로 하는 Hd를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020040060839A 2004-07-27 2004-08-02 Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체 KR101079087B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020040060839A KR101079087B1 (ko) 2004-08-02 2004-08-02 Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체
US11/572,705 US7814403B2 (en) 2004-07-27 2005-07-26 Method of encoding and decoding using low density parity check code
PCT/KR2005/002421 WO2006011744A2 (en) 2004-07-27 2005-07-26 Method of encoding and decoding using low density parity check code
EP05771124.4A EP1782540B1 (en) 2004-07-27 2005-07-26 Method of encoding and decoding using low density parity check code
JP2007523474A JP4672015B2 (ja) 2004-07-27 2005-07-26 低密度パリティ検査コードを用いた符号化及び復号化方法
CN2005800255866A CN101305521B (zh) 2004-07-27 2005-07-26 使用低密度奇偶校验码编码和解码的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040060839A KR101079087B1 (ko) 2004-08-02 2004-08-02 Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체

Publications (2)

Publication Number Publication Date
KR20060012110A KR20060012110A (ko) 2006-02-07
KR101079087B1 true KR101079087B1 (ko) 2011-11-02

Family

ID=37121901

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040060839A KR101079087B1 (ko) 2004-07-27 2004-08-02 Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체

Country Status (1)

Country Link
KR (1) KR101079087B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101405962B1 (ko) * 2008-02-28 2014-06-12 엘지전자 주식회사 Ldpc 코드를 이용한 복호화 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yu Yi et al., "The Semi-Algebra Low-Density Parity-Check Codes," IEEE ICC 2004, Vol. 1, pp. 440-443, 20-24 Jun. 2004.*

Also Published As

Publication number Publication date
KR20060012110A (ko) 2006-02-07

Similar Documents

Publication Publication Date Title
US8683274B1 (en) Error correction coding for varying signal-to-noise ratio channels
KR101208546B1 (ko) 저밀도 패리티 체크 행렬을 이용한 부호화 및 복호화 방법
KR101208547B1 (ko) Ldpc 코드를 이용한 부호화 및 복호화 방법
US20080294963A1 (en) Method and apparatus for designing low density parity check code with multiple code rates, and information storage medium thereof
US20050149819A1 (en) Three-dimensional error correction method
US8046658B2 (en) Method and device for decoding blocks encoded with an LDPC code
JP4672015B2 (ja) 低密度パリティ検査コードを用いた符号化及び復号化方法
KR100861674B1 (ko) 송신기 및 수신기를 동작시키는 방법, 및 데이터를 엔코딩 및 디코딩하는 장치
KR101261091B1 (ko) 반복 복호수 설정 방법, 반복 복호화 장치 및 그 방법
KR20050123336A (ko) Ldpc 코드를 이용한 가변 코드 레이트 적응 부호화 방법
KR20070063851A (ko) 패리티 검사 행렬, 패리티 검사 행렬 생성 방법, 인코딩방법 및 에러 정정 장치
US8327215B2 (en) Apparatus and method for encoding LDPC code using message passing algorithm
KR101065693B1 (ko) Ldpc 코드를 이용한 부호화, 복호화 방법 및 부호화또는 복호화를 위한 ldpc 코드 생성 방법
EP1589664A1 (en) Method of converting parity check matrix for low density parity check coding
KR20080030329A (ko) 사전에 지정한 패리티를 검사한 결과를 이용해 ldpc코드를 부호화하는 방법
CN101350695B (zh) 低密度奇偶校验码译码方法及系统
KR101073907B1 (ko) Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체
KR101079087B1 (ko) Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체
KR20120000040A (ko) 반복 복호수 설정 방법, ldpc 복호화 장치 및 그 방법
KR20060013197A (ko) Ldpc 코드를 이용한 부호화 방법 및 부호화를 위한컴퓨터로 읽을 수 있는 기록 매체
KR102424942B1 (ko) 통신 시스템을 위한 채널 코딩 방법 및 이를 이용한 장치
Payommai et al. Non-binary tail-biting LDPC convolutional code encoding for image transmission
KR100999272B1 (ko) 저 밀도 패리티 검사 코드의 부호화 장치 및 그 방법
CN116436471A (zh) 编码和解码方法、通信设备和存储介质
KR100600310B1 (ko) 2차원 페이지의 인코딩 및 디코딩 방법

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: 20140924

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150924

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160923

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee