KR100669152B1 - 저밀도 패리티 검사 코드의 부호화 장치 및 방법 - Google Patents

저밀도 패리티 검사 코드의 부호화 장치 및 방법 Download PDF

Info

Publication number
KR100669152B1
KR100669152B1 KR1020040097480A KR20040097480A KR100669152B1 KR 100669152 B1 KR100669152 B1 KR 100669152B1 KR 1020040097480 A KR1020040097480 A KR 1020040097480A KR 20040097480 A KR20040097480 A KR 20040097480A KR 100669152 B1 KR100669152 B1 KR 100669152B1
Authority
KR
South Korea
Prior art keywords
matrix
data
parity check
sub
parity
Prior art date
Application number
KR1020040097480A
Other languages
English (en)
Other versions
KR20060058792A (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 KR1020040097480A priority Critical patent/KR100669152B1/ko
Priority to US11/154,394 priority patent/US7493547B2/en
Publication of KR20060058792A publication Critical patent/KR20060058792A/ko
Application granted granted Critical
Publication of KR100669152B1 publication Critical patent/KR100669152B1/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

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명에 따른 저밀도 패리티 검사 코드의 부호화 장치는, 패리티 검사 매트릭스를 제1 및 제2 하위 매트릭스로 구성한다. 이때, 제2 하위 매트릭스는 각 열에서 1의 개수가 2개인 형태의 매트릭스로 생성하고, 생성된 제2 하위 매트릭스에 기초하여 임의적인 값을 갖는 제1 매트릭스를 생성한다. 그리고 제1 하위 매트릭스와 정보 데이터와의 연산을 통해 임시 데이터를 생성한 후, 제2 하위 매트릭스를 이용함으로써, 제2 하위 매트릭스의 역행렬을 수행하지 않고도 패리티 데이터를 구할 수 있게 된다. 그리고 나서 패리티 데이터와 정보 데이터로부터 부호 데이터를 생성하여 전송한다.
LDPC, 패리티 검사 매트릭스, 에러정정, 하위 매트릭스

Description

저밀도 패리티 검사 코드의 부호화 장치 및 방법{APPARATUS AND METHOD FOR CODING OF LOW DENSITY PARITY CHECK CODE}
도 1은 종래 기술에 따른 LDPC 코드의 패리티 검사 매트릭스를 나타낸 도면이다.
도 2a 및 도 2b는 다른 종래에 따른 LDPC 코드의 패리티 검사 매트릭스를 나타낸 도면이다.
도 3a 및 도 3b는 각각 본 발명의 실시 예에 따른 LDPC 코드의 패리티 검사 매트릭스의 구조를 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 LDPC 코드의 패리티 검사 매트릭스의 하위 매트릭스 구조를 나타낸 도면이다.
도 5는 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치의 구성을 나타낸 도면이다.
도 6은 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치의 동작 과정을 나타내는 도면이다.
본 발명은 통신 시스템의 부호화 방법에 관한 것으로, 특히 저밀도 패리티 검사(Low density parity check code: 이하, ‘LDPC’라 함) 코드의 패리티 검사 매트릭스의 생성 및 부호화 방법에 관한 것이다.
최근 무선 통신 시스템에서 광대역 멀티미디어 서비스 등에 대한 요구가 증대되면서, 고 효율의 고속 데이터의 전송 기술에 대한 연구 및 개발이 매우 활발하게 진행되고 있다. LDPC 부호화 방식은 고속의 광대역 데이터가 무선 채널을 통과하여 전송될 때 발생되는 신호의 왜곡에 따른 전송 데이터 오류를 효과적으로 정정하여, 데이터 전송 효율을 높이는 기술로서, 4세대 이동통신 시스템 및 위성통신 시스템, 고속 무선 LAN 등에서 연구 및 개발되고 있다.
LDPC 부호화 방식은 정보 비트들을 전송하기 전에 부호화를 위한 행렬을 사용하여 부호화하는 블록 부호화의 일종으로, 블록 부호화를 수행할 때 사용되는 행렬에 “1”의 원소가 매우 작은 즉, 대부분의 원소가 “0”의 값을 가지는 부호화 행렬을 사용하는 방식이다. 이와 같이 LDPC 부호화 방식은 아주 적은(sparse) 양의 “0”의 값을 가지는 행(row)과 열(column)로 구성되고 행렬의 크기가 매우 큰 비-희소 행렬로 구성된 패리티 검사 매트릭스 H를 사용한다.
패리티 검사 매트릭스 H는 부호화 데이터 C와 다음의 수학식 1과 같은 관계를 갖는다.
Figure 112004055321183-pat00001
여기서, 부호화 데이터 C는 정보 데이터 S와 패리티 데이터 P로 구성되며, C=[S P]이다.
이러한 패리티 데이터 P를 얻기 위하여 다양한 방식의 LDPC 부호화 기술이 제안되었다.
종래 일반적인 부호화 방법은 부호화 생성 매트릭스를 계산하지 않고, 패리티 검사 매트릭스 H를 H=[A B]의 하위 매트릭스로 분리하고, 수학식 1을 이용하여 패리티 데이터 P를 아래의 수학식 2와 같이 계산한다.
Figure 112004055321183-pat00002
여기서, 패리티 검사 매트릭스 H의 하위 매트릭스 B에 대한 역행렬 연산이 요구되며, 이는 LDPC 부호화 과정을 매우 복잡하게 만드는 요인이 되어 부호화 속도를 저하시키게 된다.
또 다른 종래 LDPC 부호화 방법은 효율적인 LDPC 부호화를 위하여 패리티 검사 매트릭스 H를 도 1과 같이 구성하고, 패리티 검사 매트릭스 H의 하위 매트릭스의 연산을 간략하게 하여 패리티 데이터를 계산한다.
Figure 112004055321183-pat00003
수학식 3에서 하위 매트릭스 T는 하부 삼각 행렬이다.
여기서, 부호화 데이터 C=[S P1 P2]라 하면, 수학식 1과 수학식 3을 이용하여 패리티 데이터는 수학식 4와 같이 계산되어진다.
Figure 112004055321183-pat00004
위의 LDPC 부호화 장치는 패리티 검사 매트릭스 H의 하위 매트릭스의 연산에서 얻어진 매트릭스
Figure 112004055321183-pat00005
의 역행렬
Figure 112004055321183-pat00006
을 계산하여야 한다. 만약, 매트릭스
Figure 112004055321183-pat00007
의 행렬식(determinant)이 0이 되는 경우 역행렬
Figure 112004055321183-pat00008
이 계산되지 않으므로, 이 경우 패리티 검사 매트릭스 H를 다시 생성해야 하는 문제점이 있다.
한편, LDPC 부호화 과정에서 패리티 검사 매트릭스 H의 하위 매트릭스의 역행렬을 계산하지 않고 패리티 LDPC 부호화를 수행하는 종래의 또 다른 방법에서는 도 2a 및 도 2b와 같은 패리티 검사 매트릭스를 이용할 수 있다.
도 2a 및 도 2b를 보면, 패리티 검사 매트릭스 H는 [p×p]의 교환 매트릭스 a로 구성된다. I는 [p×p]의 단위 행렬이고 O는 [p×p]의 영 행렬이며, a는 [p×p]의 단위 행렬에서 k만큼 천이된 천이 행렬이다. 예를 들어, p=5인 경우 a는 다음과 같이 나타날 수 있다.
Figure 112004055321183-pat00009
이 방식에서는 패리티 검사 매트릭스 H는 H=[A B]의 하위 매트릭스로 나누어지고, 하위 매트릭스 A가 삼각행렬의 형태를 가지므로, 생성 매트릭스의 계산이 필요 없으며, 어떤 역행렬의 계산이 요구되지 않는다. 이 경우, 패리티 데이터는 아래 수학식 5에 따른 연산에 의하여 계산된다.
Figure 112004055321183-pat00010
패리티 데이터 P는 삼각행렬 A를 이용하여 역방향 감산 기법(back substitution)에 의하여 연산된다. 그러나 이 방법에서 하위 매트릭스 A를 저장하기 위한 메모리가 요구되며, 역방향 감산에 의한 패리티 계산을 위한 부가적인 연산이 요구되는 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는 패리티 검사 매트릭스 또는 패리티 검사 매트릭스의 하위 매트릭스에 대한 역행렬의 계산이 요구되지 않으며, 패리티 검사 매트릭스의 일부만을 메모리에 저장하여 부호화 속도를 높일 수 있는 저밀도 패리티 검사 코드의 부호화 장치 및 방법을 제공하기 위한 것이다.
이러한 과제를 해결하기 위해, 본 발명에서는 패리티 검사 매트릭스―원소 중에 1의 개수가 적고 매트릭스의 크기가 큰 비 희소 행렬로 구성됨―를 이용하여 정보 데이터를 부호화하는 저밀도 패리티 검사 코드의 부호화 장치가 제공된다.
본 발명의 한 특징에 따른 저밀도 패리티 검사 코드의 부호화 장치는, 상기 패리티 검사 매트릭스를 구성하기 위한 제1 및 제2 하위 매트릭스를 포함하는 복수의 하위 매트릭스를 생성하는 하위 매트릭스 생성부; 상기 제1 하위 매트릭스와 상기 정보 데이터와의 연산에 의해 임시 데이터를 생성하는 매트릭스 연산부; 상기 생성된 임시 데이터와 상기 제2 하위 매트릭스의 특정 연산에 의해 패리티 데이터를 생성하는 패리티 데이터 생성부; 및 상기 생성된 패리티 데이터 및 상기 정보 데이터에 기초하여 부호 데이터를 생성하는 부호 데이터 생성부를 포함한다. 이 때, 상기 제2 하위 매트릭스는, 각 열에서 1의 원소의 개수가 두 개인 정방 행렬이다.
본 발명의 다른 한 특징에 따르면, 패리티 검사 매트릭스―원소 중에 1의 개수가 적고 매트릭스의 크기가 큰 비-희소 행렬로 구성됨―를 이용하여 정보 데이터를 부호화하는 방법이 제공된다. 이 부호화 방법은, a) 제1 및 제2 하위 매트릭스―여기서, 제1 및 제2 하위 매트릭스에 의해 상기 패리티 검사 매트릭스가 구성됨―를 생성하는 단계; b) 상기 제1 하위 매트릭스와 상기 정보 데이터에 기초하여 임시 데이터를 생성하는 단계; c) 상기 제2 하위 매트릭스를 이용하여, 상기 생성된 임시 데이터에 기초하여 패리티 데이터를 생성하는 단계; 및 d) 상기 생성된 패리티 데이터 및 상기 정보 데이터에 기초하여 부호 데이터를 생성하는 단계를 포함한다.
또한 상기 c) 단계에서, 상기 제2 하위 매트릭스를 이용하여, 단일 비트 또는 두 개의 비트 단위로 상기 패리티 데이터가 생성될 수 있다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다. 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 도면 부호를 붙였다.
이제 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치 및 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.
본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치는 정보 데이터 S로부터 패리티 데이터 P를 생성하고 정보 데이터 S와 패리티 데이터 P를 연결하여 부호화 데이터 C를 얻는다. 이 때, 부호화 데이터 C는 [1×N]의 크기를 가지며, C=[P S]이다. 그리고 정보 데이터 S는 크기가 [1×K]이고, 패리티 데이터 P는 크기가 [1×M]이다. 여기서, N=M+K이다.
먼저, 본 발명의 실시 예에 따른 패리티 검사 매트릭스의 구조에 대해서 도 3a 내지 도 4를 참고로 하여 상세하게 설명한다.
도 3a 및 도 3b는 각각 본 발명의 실시 예에 따른 LDPC 코드의 패리티 검사 매트릭스의 구조를 나타낸 도면이다.
도 3a에 나타낸 바와 같이, 패리티 검사 매트릭스 H는 크기가 [M×N]의 매트릭스이고, 패리티 검사 매트릭스 H는 [Hp Hd]의 하위 매트릭스로 구성된다. 여기서, Hp는 크기가 [M×M]이며, Hd는 크기가 [M×K]이다.
한편, 도 3b에 나타낸 바와 같이, 패리티 검사 매트릭스 H는 [Hd Hp]의 하위 매트릭스로 구성될 수 있다. 여기서, Hd는 크기가 [M×K]이고, Hp는 크기가 [M×M]이다.
도 4는 본 발명의 실시 예에 따른 LDPC 코드의 패리티 검사 매트릭스의 하위 매트릭스 구조를 나타낸 도면이다.
도 4에 나타낸 바와 같이, 패리티 검사 매트릭스 H의 하위 매트릭스 Hp는 매트릭스의 행과 열의 번호가 동일한 원소(element)가 1의 값을 가지며, 행의 번호와 열의 번호의 차가 2가 되는 원소(element)만이 1의 값을 가지며, 나머지 원소(element)는 0의 값을 가지는 성긴 행렬(sparse matrix)이다. 이러한 하위 매트릭스 Hp는 패리티 데이터의 생성을 위한 연산에 이용되며, 하위 매트릭스 Hp는 아래 제1 프로그램을 통해 생성될 수 있다.
Figure 112004055321183-pat00011
여기서, eye(M,M)은 크기가 [M×M]의 단위행렬이다.
또한 도 4와 달리 하위 매트릭스 Hp는 매트릭스의 행과 열의 번호가 동일한 원소(element)가 1의 값을 가지며, 열의 번호와 행의 번호의 차가 2가 되는 원소(element)만이 1의 값을 가지며, 나머지 원소(element)는 0의 값을 가지는 성긴 행렬(sparse matrix)일 수도 있다. 이와 같은 하위 매트릭스 Hp는 아래 제2 프로그램을 통해 생성될 수 있다.
Figure 112004055321183-pat00012
여기서, eye(M,M)은 크기가 [M×M]의 단위행렬이다.
그리고 상술한 것 외에도 하위 매트릭스 Hp는 매트릭스의 행과 열의 번호의 합이 매트릭스의 크기 M이 되는 원소(element)가 1의 값을 가지며, 행의 번호와 열 의 번호의 합이 M+1이 되는 원소(element)만이 1의 값을 가지며, 나머지 원소(element)는 0의 값을 가지는 성긴 행렬(sparse matrix)일 수도 있다. 이와 같은 하위 매트릭스 Hp는 아래 제3 프로그램을 통해 생성될 수 있다.
Figure 112004055321183-pat00013
여기서, eye(M,M)은 크기가 [M×M]의 단위행렬이며, fliplr(H)는 매트릭스 H의 각 열의 원소를 좌우로 교환하는 함수이다.
또한 하위 매트릭스 Hp는 매트릭스의 행과 열의 번호의 합이 매트릭스의 크기 M이 되는 원소(element)가 1의 값을 가지며, 행의 번호와 열의 번호의 합이 M-3이 되는 원소(element)만이 1의 값을 가지며, 나머지 원소(element)는 0의 값을 가지는 성긴 행렬(sparse matrix)일 수도 있다. 이와 같은 하위 매트릭스 Hp는 아래 제4 프로그램을 통해 생성될 수 있다.
Figure 112004055321183-pat00014
여기서, eye(M,M)은 크기가 [M×M]의 단위행렬이며, fliplr(H)는 매트릭스 H의 각 열의 원소를 좌우로 교환하는 함수이다.
도 5는 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치의 구조를 나타낸 도면이다.
도 5에 나타낸 바와 같이, 본 발명의 실시 예에 따른 LDPC 부호화 장치는, 정보 데이터 저장부(110), 하위 매트릭스 생성부(120), 매트릭스 연산부(130), 패리티 데이터 생성부(140) 및 부호 데이터 생성부(150)를 포함한다.
정보 데이터 저장부(110)는 정보 데이터 S를 저장한다.
하위 매트릭스 생성부(120)는 패리티 검사 매트릭스의 하위 매트릭스 Hp, Hd를 생성하여 저장한다. 하위 매트릭스 Hd는 패리티 검사 매트릭스 H가 성긴 행렬이며, 임의의 값을 갖는 매트릭스로 생성되며, 크기가 [M×M]이다. 그리고 하위 매트릭스 Hp는 상술한 바와 같이 제1 내지 제4 프로그램을 통해 생성한다.
매트릭스 연산부(130)는 정보 데이터 S와 하위 매트릭스 Hd의 값을 이용하여 수학식 6에 의한 연산을 통해 임시 데이터 X를 생성하여 패리티 데이터 생성부(140)에 입력한다.
Figure 112004055321183-pat00015
여기서,
Figure 112004055321183-pat00016
이고,
Figure 112004055321183-pat00017
이다.
패리티 데이터 생성부(140)는 생성된 임시 데이터를 이용하여 특정 연산을 통해 패리티 데이터 P를 생성한다. 이 때, 본 발명의 실시 예에 따르면, 역행렬의 계산 과정이 필요 없으며, 패리티 데이터 생성을 위한 부가적인 메모리도 필요하지 않다.
패리티 데이터 생성부(140)는 상술한 제1 내지 제4 프로그램을 통해 생성된 하위 매트릭스 Hp를 이용하여, 임시 데이터와의 특정 연산을 통해 패리티 데이터 P를 생성한다.
이 때, 제1 프로그램을 통해 하위 매트릭스 Hp를 이용할 경우에는 아래의 제5 또는 제6 프로그램을 통해 패리티 데이터 P를 생성한다.
제5 프로그램은 아래와 같다.
Figure 112004055321183-pat00018
제6 프로그램은 아래와 같다.
Figure 112004055321183-pat00019
여기서, mod(a, b)는 a를 b로 나누었을 때 나머지 값이며, floor(a)는 a보다 크지 않는 정수 값이다.
이와 달리, 상술한 제2 프로그램을 통해 생성된 하위 매트릭스 Hp를 이용할 경우에는 아래의 제7 또는 제8 프로그램을 통해 패리티 데이터 P를 생성한다.
제7 프로그램은 아래와 같다.
Figure 112004055321183-pat00020
제8 프로그램은 아래와 같다.
Figure 112004055321183-pat00021
또한 상술한 제3 프로그램을 통해 생성된 하위 매트릭스 Hp를 이용할 경우에는 아래의 제9 또는 제10 프로그램을 통해 패리티 데이터 P를 생성한다.
제9 프로그램은 아래와 같다.
Figure 112004055321183-pat00022
제10 프로그램은 아래와 같다.
Figure 112004055321183-pat00023
마지막으로 상술한 제4 프로그램을 통해 생성된 하위 매트릭스 Hp를 이용할 경우에는 아래의 제11 또는 제12 프로그램을 통해 패리티 데이터 P를 생성한다.
제11 프로그램은 아래와 같다.
Figure 112004055321183-pat00024
제12 프로그램은 아래와 같다.
Figure 112004055321183-pat00025
이 때, 패리티 데이터 생성부(140)에서 패리티 데이터 생성 시에 제5, 제7, 제9 및 제11 프로그램을 이용하게 되면, 단일 비트 단위로 패리티 데이터가 생성되고, 제6, 제8, 제10 및 제12 프로그램을 이용하게 되면, 두 개의 비트 단위로 패리티 데이터가 생성되므로 고속의 LDPC 코드의 부호화 기능을 제공할 수 있게 된다.
부호 데이터 생성부(150)는 상술한 제5 내지 제12 프로그램 중 어느 하나를 통해 패리티 데이터 생성부(140)에서 생성된 패리티 데이터 P와 정보 데이터 저장부(110)에 저장된 정보 데이터 S로부터 부호 데이터 C를 생성한다.
이와 같이 본 발명의 실시 예에 따르면, 코드 생성 매트릭스를 만들지 않고 매우 간단하게 입력 데이터를 부호화할 수 있다.
다음으로 도 6을 참고로 하여 본 발명의 실시 예에 따른 LDPC 부호화 방법에 대해서 상세하게 설명한다.
도 6은 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치의 동작 과정을 나타낸 도면이다.
도 6에 나타낸 바와 같이, 본 발명의 실시 예에 따르면, 간단하고 고속의 LDPC 코드의 부호화를 위해, LDPC 코드의 부호화 장치는 패리티 검사 매트릭스를 두 개의 하위 매트릭스로 구성한다. 즉, H=[Hp Hd] 또는 H=[Hd Hp]이다. 하위 매트릭스 Hp는 각 열에서 1의 개수가 2이며, 매트릭스의 구성은 크기가 [M×M]의 구조적 형태를 갖는다. 또한 다른 하위 매트릭스 Hd는 크기가 [M×K]이며, 매트릭스의 각 구성 요소는 임의적인 값을 갖는다(S610).
한편, 정보 데이터 S의 길이가 K이고, 부호화 데이터 C의 길이가 N인 LDPC 코드의 부호화 장치는 길이가 M인 패리티 데이터 P를 생성한다. 여기서, M=N-K이다. 이 때, 부호화 데이터 C는 정보 데이터 C와 패리티 검사 매트릭스 H와의 관계는 수학식 7과 같다.
Figure 112004055321183-pat00026
여기서, 패리티 검사 매트릭스 H의 크기는 [M×N]이며, 부호화 데이터 C는 [1×N]이다. 또한 부호화 데이터 C는 정보 데이터 S와 패리티 데이터 P로 구성되며, 일반적으로 C=[S P]이다.
수학식 7에서 패리터 검사 매트릭스 H에 하위 매트릭스 [Hp Hd]를 대입하면 수학식 8과 같이 나타난다.
Figure 112004055321183-pat00027
여기서,
Figure 112006053420251-pat00028
이다.
따라서, LDPC 코드의 부호화 장치는 하위 매트릭스 Hd와 정보 데이터 S와의 연산을 통해 임시 데이터를 생성하면(S520), Hp에 대한 역행렬을 계산하지 않고 패리티 데이터 P를 구할 수 있게 된다(S630).
이와 같이 패리티 데이터 P를 구한 다음, LDPC 코드의 부호화 장치는 패리티 데이터 P와 정보 데이터 S로부터 부호 데이터를 생성한다(S640). 이와 같이 본 발명의 실시 예에 따른 LDPC 코드의 부호화 장치는 역행렬의 연산 및 메모리의 사용 없이 중간 매트릭스 연산 값을 이용하여 매우 간략하게 LDPC 부호화를 수행할 수 있게 된다.
이상에서 본 발명의 바람직한 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리 범위에 속하는 것이다.
본 발명에 의하면, 수신된 입력 데이터를 LDPC 코드 생성 매트릭스를 이용하지 않고, LDPC의 패리티 검사 매트릭스만을 이용하여 LDPC 부호 메시지를 생성함으로써 LDPC 부호화 장치의 구조를 단순화시킬 수 있으며, 패리티 데이터의 생성 시 부가적인 메모리를 사용하지 않고 매우 단순화된 패리티 생성 연산을 통하여 패리티 데이터를 생성함으로써 하드웨어의 복잡도를 줄일 수 있다.
또한 LDPC 부호화 장치에서 부호화 데이터의 생성을 위하여 패리티 검사 데이터를 생성할 때, 단일 비트 또는 두 개의 비트 단위로 패리티 데이터를 동시에 생성함으로써 고속의 패리티 데이터를 생성할 수 있다.

Claims (17)

  1. 패리티 검사 매트릭스―원소 중에 1의 개수가 적고 매트릭스의 크기가 큰 비 희소 행렬로 구성됨―를 이용하여 정보 데이터를 부호화하는 저밀도 패리티 검사 코드의 부호화 장치에 있어서,
    상기 패리티 검사 매트릭스를 구성하기 위한 제1 및 제2 하위 매트릭스를 포함하는 복수의 하위 매트릭스를 생성하는 하위 매트릭스 생성부;
    상기 제1 하위 매트릭스와 상기 정보 데이터와의 연산에 의해 임시 데이터를 생성하는 매트릭스 연산부;
    상기 생성된 임시 데이터와 상기 제2 하위 매트릭스의 특정 연산에 의해 패리티 데이터를 생성하는 패리티 데이터 생성부; 및
    상기 생성된 패리티 데이터 및 상기 정보 데이터에 기초하여 부호 데이터를 생성하는 부호 데이터 생성부
    를 포함하는 저밀도 패리티 검사 코드의 부호화 장치.
  2. 제1항에 있어서,
    상기 제2 하위 매트릭스는, 각 열에서 1의 원소의 개수가 두 개인 정방 행렬인 저밀도 패리티 검사 코드의 부호화 장치.
  3. 제2항에 있어서,
    상기 제2 하위 매트릭스는,
    행과 열의 번호가 동일한 원소 및 행의 번호와 열의 번호의 차가 2가 되는 원소가 1의 값을 가지고, 나머지 원소는 0의 값을 가지는 성긴 행렬(sparse matrix)인 저밀도 패리티 검사 코드의 부호화 장치.
  4. 제2항에 있어서,
    상기 제2 하위 매트릭스는,
    행과 열의 번호가 동일한 원소 및 열의 번호와 행의 번호의 차가 2가 되는 원소가 1의 값을 가지고, 나머지 원소는 0의 값을 가지는 성긴 행렬(sparse matrix)인 저밀도 패리티 검사 코드의 부호화 장치.
  5. 제2항에 있어서,
    상기 제2 하위 매트릭스는,
    행과 열의 번호의 합이 상기 패리티 검사 매트릭스의 크기와 동일한 값이 되는 원소 및 행과 열의 번호의 합이 상기 패리티 검사 매트릭스의 크기보다 1만큼 큰 값이 되는 원소가 1의 값을 가지고, 나머지 원소는 0의 값을 가지는 성긴 행렬(sparse matrix)인 저밀도 패리티 검사 코드의 부호화 장치.
  6. 제2항에 있어서,
    상기 제2 하위 매트릭스는,
    행과 열의 번호의 합이 상기 패리티 검사 매트릭스의 크기와 동일한 값이 되는 원소 및 행과 열의 번호의 합이 상기 패리티 검사 매트릭스의 크기보다 3만큼 작은 값이 되는 원소가 1의 값을 가지고, 나머지 원소는 0의 값을 가지는 성긴 행렬(sparse matrix)인 저밀도 패리티 검사 코드의 부호화 장치.
  7. 삭제
  8. 삭제
  9. 삭제
  10. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 패리티 데이터 생성부는,
    상기 제2 하위 매트릭스를 이용하여, 단일 비트 또는 두 개의 비트 단위로 패리티 데이터를 생성하는 저밀도 패리티 검사 코드의 부호화 장치.
  11. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 정보 데이터가 저장되어 있는 정보 데이터 저장부
    를 더 포함하는 저밀도 패리티 검사 코드의 부호화 장치.
  12. 패리티 검사 매트릭스―원소 중에 1의 개수가 적고 매트릭스의 크기가 큰 비-희소 행렬로 구성됨―를 이용하여 정보 데이터를 부호화하는 방법에 있어서,
    a) 제1 및 제2 하위 매트릭스―여기서, 제1 및 제2 하위 매트릭스에 의해 상기 패리티 검사 매트릭스가 구성됨―를 생성하는 단계;
    b) 상기 제1 하위 매트릭스와 상기 정보 데이터에 기초하여 임시 데이터를 생성하는 단계;
    c) 상기 제2 하위 매트릭스를 이용하여, 상기 생성된 임시 데이터에 기초하여 패리티 데이터를 생성하는 단계; 및
    d) 상기 생성된 패리티 데이터 및 상기 정보 데이터에 기초하여 부호 데이터를 생성하는 단계
    를 포함하는 저밀도 패리티 검사 코드의 부호화 방법.
  13. 삭제
  14. 제12항에 있어서,
    상기 제2 하위 매트릭스는, 각 열에서 1의 원소의 개수가 2개인 정방행렬인 저밀도 패리티 검사 코드의 부호화 방법.
  15. 삭제
  16. 제14항에 있어서,
    상기 c) 단계에서, 단일 비트 또는 두 개의 비트 단위로 상기 패리티 데이터가 생성되는 저밀도 패리티 검사 코드의 부호화 방법.
  17. 제16항에 있어서,
    상기 c)단계는,
    상기 임시 데이터에 기초하여 상기 패리티 데이터의 특정 원소의 값을 구하는 단계; 및
    상기 임시 데이터와 상기 구해진 특정 원소의 값을 이용하여 상기 특정 원소를 제외한 상기 패리티 데이터의 나머지 원소의 값을 구하는 단계
    를 포함하는 저밀도 패리티 검사 코드의 부호화 방법.
KR1020040097480A 2004-11-25 2004-11-25 저밀도 패리티 검사 코드의 부호화 장치 및 방법 KR100669152B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020040097480A KR100669152B1 (ko) 2004-11-25 2004-11-25 저밀도 패리티 검사 코드의 부호화 장치 및 방법
US11/154,394 US7493547B2 (en) 2004-11-25 2005-06-15 Apparatus for coding low density parity check code and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040097480A KR100669152B1 (ko) 2004-11-25 2004-11-25 저밀도 패리티 검사 코드의 부호화 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20060058792A KR20060058792A (ko) 2006-06-01
KR100669152B1 true KR100669152B1 (ko) 2007-01-15

Family

ID=36575806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040097480A KR100669152B1 (ko) 2004-11-25 2004-11-25 저밀도 패리티 검사 코드의 부호화 장치 및 방법

Country Status (2)

Country Link
US (1) US7493547B2 (ko)
KR (1) KR100669152B1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8046661B2 (en) * 2004-09-08 2011-10-25 Temarylogic Llc Symbol error correction by error detection and logic based symbol reconstruction
KR100669152B1 (ko) * 2004-11-25 2007-01-15 한국전자통신연구원 저밀도 패리티 검사 코드의 부호화 장치 및 방법
WO2007091327A1 (ja) * 2006-02-09 2007-08-16 Fujitsu Limited Ldpc検査行列生成方法及び検査行列生成器並びに符号再送方法
KR101154995B1 (ko) * 2006-07-14 2012-06-15 엘지전자 주식회사 Ldpc 부호화를 수행하는 방법
KR100808664B1 (ko) * 2006-12-08 2008-03-07 한국전자통신연구원 패리티 검사행렬 저장 방법 및 이를 이용한 블록 저밀도패리티 검사 부호화 방법 및 장치
US7913149B2 (en) * 2006-12-20 2011-03-22 Lsi Corporation Low complexity LDPC encoding algorithm
CN101414833B (zh) * 2007-10-19 2010-08-04 中兴通讯股份有限公司 低密度生成矩阵码的编码方法及装置
US8473824B1 (en) * 2008-09-08 2013-06-25 Marvell International Ltd. Quasi-cyclic low-density parity-check (QC-LDPC) encoder
KR101431268B1 (ko) * 2007-12-14 2014-08-20 삼성전자주식회사 직렬 부호화를 위한 저밀도 패리티 검사 부호의 생성 장치및 방법
KR100949519B1 (ko) 2007-12-18 2010-03-24 한국전자통신연구원 낮은 복잡도 및 고속 복호를 위한 패리티 검사행렬 생성방법과, 그를 이용한 저밀도 패리티 검사 부호의 부호화장치 및 그 방법
US8612823B2 (en) * 2008-10-17 2013-12-17 Intel Corporation Encoding of LDPC codes using sub-matrices of a low density parity check matrix
US20110154168A1 (en) * 2009-12-18 2011-06-23 Electronics And Telecommunications Research Institute Effective high-speed ldpc encoding method and apparatus using the same
CN113114415B (zh) * 2021-03-25 2022-05-31 重庆邮电大学 基于可调稀疏网络编码的密度选择方法
KR102326824B1 (ko) 2021-04-05 2021-11-15 박창규 에어나이프의 립클리닝 장치
US20240103741A1 (en) * 2022-09-26 2024-03-28 Micron Technology, Inc. Providing multiple error correction code protection levels in memory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001168733A (ja) 1999-10-12 2001-06-22 Thomson Csf Ldpcコードの構築およびコーディングのためのプロセス
JP2003115768A (ja) 2001-07-11 2003-04-18 Internatl Business Mach Corp <Ibm> データの低密度パリティ検査符号化方法および装置
KR20040044590A (ko) * 2002-11-21 2004-05-31 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
KR20040092922A (ko) * 2003-04-29 2004-11-04 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1389551A (en) * 1972-05-15 1975-04-03 Secr Defence Multiplex digital telecommunications apparatus having error- correcting facilities
US7120856B2 (en) * 2002-09-25 2006-10-10 Leanics Corporation LDPC code and encoder/decoder regarding same
KR100669152B1 (ko) * 2004-11-25 2007-01-15 한국전자통신연구원 저밀도 패리티 검사 코드의 부호화 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001168733A (ja) 1999-10-12 2001-06-22 Thomson Csf Ldpcコードの構築およびコーディングのためのプロセス
JP2003115768A (ja) 2001-07-11 2003-04-18 Internatl Business Mach Corp <Ibm> データの低密度パリティ検査符号化方法および装置
KR20040044590A (ko) * 2002-11-21 2004-05-31 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
KR20040092922A (ko) * 2003-04-29 2004-11-04 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법

Also Published As

Publication number Publication date
KR20060058792A (ko) 2006-06-01
US7493547B2 (en) 2009-02-17
US20060123314A1 (en) 2006-06-08

Similar Documents

Publication Publication Date Title
Campbell et al. Unified framework for magic state distillation and multiqubit gate synthesis with reduced resource cost
JP4327731B2 (ja) 低密度パリティ検査符号を用いる符号化器と、その符号化方法
KR100808664B1 (ko) 패리티 검사행렬 저장 방법 및 이를 이용한 블록 저밀도패리티 검사 부호화 방법 및 장치
KR100669152B1 (ko) 저밀도 패리티 검사 코드의 부호화 장치 및 방법
JP4672016B2 (ja) 低密度パリティ検査行列を用いた符号化及び復号化方法
CN103888148B (zh) 一种动态阈值比特翻转的ldpc码硬判决译码方法
CN101073205B (zh) 低密度奇偶校验编码器和解码器以及低密度奇偶校验编码和解码方法
CN101141133B (zh) 一种结构化低密度校验码的编码方法
US8335963B2 (en) Method for constructing checking matrix of LDPC code and coding amd decoding apparatus utilizing the method
US7451374B2 (en) Apparatus and method for channel coding in mobile communication system
CN101459430B (zh) 低密度生成矩阵码的编码方法及装置
US20050149845A1 (en) Method of constructing QC-LDPC codes using qth-order power residue
JP2008172824A (ja) 移動通信システムにおけるブロック低密度パリティ検査符号の符号化/復号化装置及び方法
CN1756090A (zh) 信道编码装置和方法
US8386877B2 (en) Communication system, transmitter, error correcting code retransmitting method, and communication program
CN109787641B (zh) staircase码的解码方法、装置及存储介质
CN107306140A (zh) 一种gel码字结构编码和译码的方法、装置及相关设备
KR20080030329A (ko) 사전에 지정한 패리티를 검사한 결과를 이용해 ldpc코드를 부호화하는 방법
CN105556852A (zh) 用于共享公共硬件资源的不同的低密度奇偶校验(ldpc)码的低密度奇偶校验编码
US8255782B2 (en) Method for constructing LDPC code in the mobile digital multimedia broadcast system
KR100874484B1 (ko) 준순환 저밀도 패리티 검사 부호화 방법 및 장치
CN103138769B (zh) 一种具有不等错误保护的编码方法
CN115858230A (zh) 最大距离可分离码的构造、修复方法及相关装置
Chandrasetty et al. Resource efficient LDPC decoders: from algorithms to hardware architectures
CN110730003A (zh) 一种ldpc编码方法及ldpc编码器

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
LAPS Lapse due to unpaid annual fee