KR20110068776A - 저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치 - Google Patents

저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치 Download PDF

Info

Publication number
KR20110068776A
KR20110068776A KR1020100036030A KR20100036030A KR20110068776A KR 20110068776 A KR20110068776 A KR 20110068776A KR 1020100036030 A KR1020100036030 A KR 1020100036030A KR 20100036030 A KR20100036030 A KR 20100036030A KR 20110068776 A KR20110068776 A KR 20110068776A
Authority
KR
South Korea
Prior art keywords
parity
matrix
parity check
generated
information
Prior art date
Application number
KR1020100036030A
Other languages
English (en)
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 KR20110068776A publication Critical patent/KR20110068776A/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
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

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

저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치가 개시된다. 본 발명의 일 실시예에 따른 코드 부호화 방일 양상에 따른 코드 부호화 방법은, 입력어인 정보 시퀀스를 입력받아, 패리티 블록이 이중사선 구조 형태인 패리티 검사 행렬 H의 정보블록과 연산하여 정보 벡터 X를 생성하는 단계, 생성된 정보 벡터 X 및 패리티 검사 행렬 H의 패리티 블록에 대한 연립방정식을 통해 패리티 비트를 생성하는 단계, 생성된 패리티 비트를 패리티 검사 행렬 H를 이용해 검사한 결과를, 패리티 검사 행렬 H의 패리티 블록에서 분할된 각 영역과 서브블록 단위로 연산하여 최종 패리티 비트를 생성하는 단계 및 생성된 최종 패리티 비트를 정보 시퀀스와 결합하여 부호어를 출력하는 단계를 포함한다.

Description

저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치 {Method and apparatus for encoding code using Low density parity check}
본 발명의 일 양상은 유무선 통신시스템에 관한 것으로, 상세하게는 에러정정 채널 부호화(channel coding) 기술에 관한 것이다. 보다 상세하게는 저밀도 패리티 검사 부호(Low Density Parity Check Code)를 생성하는 부호화(encoding) 기술에 관한 것이다.
본 발명은 지식경제부 사업의 일환으로 수행한 연구로부터 도출된 것이다. [과제관리번호 : 2009-F-047-01, 과제명 : 개방형 mmWave 무선 인터페이스 플랫폼 기술개발]
유무선 통신 시스템에 있어서 채널의 상태에 따라 디지털 형태로 전송되는 신호는 고속 통신 시의 에러 발생율 때문에 수신 단에서 복조화가 어려울 수 있다. 에러 발생율을 줄이기 위해 여러 기법이 적용되는데, 그 중 채널 코딩 기법을 적용할 수 있다.
무선통신 시스템에 채널 코딩 기법이 적용되는 경우, 저밀도 패리티 검사 부호((low density parity check codes:이하 LDPC)가 차세대의 채널 코덱으로 각광받고 있다. LDPC는 규칙적인 방식으로 부호화가 수행된다. 즉 패킷의 일부분은 입력된 비트와 동일한 형태로 출력되고, 패킷의 나머지 부분은 부호 검사(parity bit)에 해당하는 부가정보가 이어서 출력된다. 따라서 입력신호가 부호화 기능을 담당하는 블록에 모두 입력되어야 부호화가 수행된다. 이때, 부호율에 따라 패리티 비트가 전체 패킷에 해당하는 비율이 상이하다. 따라서 코드 부호화 행렬인 H 행렬에 의해 부호율이 고정된다.
코드 부호화 방식 중에, 리차드슨(Richardson)이 제안한 방식이 있다. 이 방식은 H 행렬을 세분화하여 서브행렬(sub matrix)로 분할한 뒤, 입력 벡터가 주어지면 행렬의 연립방정식을 통해 출력 패리티 비트를 생성한다. 이렇게 분할된 서브행렬들은 비교적 간단한 연산으로 이루어져 있다.
또 다른 코드 부호화 방식으로, 리차든슨 방식처럼 행렬을 가지고 연산하는 것이 아니라, 연립방정식을 통해 직접 패리티 비트를 구하는 방식이 있다.
일 양상에 따라, 복잡도가 낮으며, 고속으로 코드를 부호화할 수 있는 저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치를 제안한다.
일 양상에 따른 코드 부호화 방법은, 입력어인 정보 시퀀스를 입력받아, 패리티 블록이 이중사선 구조 형태인 패리티 검사 행렬 H의 정보블록과 연산하여 정보 벡터 X를 생성하는 단계, 생성된 정보 벡터 X 및 패리티 검사 행렬 H의 패리티 블록에 대한 연립방정식을 통해 패리티 비트를 생성하는 단계, 생성된 패리티 비트를 패리티 검사 행렬 H를 이용해 검사한 결과를, 패리티 검사 행렬 H의 패리티 블록에서 분할된 각 영역과 서브블록 단위로 연산하여 최종 패리티 비트를 생성하는 단계 및 생성된 최종 패리티 비트를 정보 시퀀스와 결합하여 부호어를 출력하는 단계를 포함한다.
일 실시예에 따르면, 저밀도 패리티 검사를 이용한 코드 부호화에 있어서 고속 통신에 적합하고, 부호화 복잡도 및 리소스 소요를 최소화할 수 있다.
또한, 패리티 검사 행렬의 구조를 기존 LDPC 코드 부호화 기법과 동일하게 유지하면서도, 단지 패리티 검사 행렬인 H 행렬의 구조만을 일부 변경하여 효율적으로 LDPC 코드를 부호화할 수 있다.
나아가 LDPC 코드 복호화 장치의 구조를 본 H 행렬에 대응되게 적용하여 LDPC 코드 부호화 동작을 수행할 수 있다.
도 1은 본 발명의 일 실시예에 따른 LDPC 부호화 장치의 부호화 과정을 설명하기 위한 참조도,
도 2는 본 발명의 일 실시예에 따른 H 행렬을 도시한 참조도,
도 3은 본 발명의 일 실시예에 따른 LDPC 부호화 장치의 구성도,
도 4는 본 발명의 일 실시예에 따라 정보 벡터 X를 생성하는 과정을 설명하기 위한 참조도,
도 5는 본 발명의 일 실시예에 따른 H 행렬을 도시한 예시도,
도 6은 본 발명의 일 실시예에 따른 순환 이동을 설명하기 위한 참조도,
도 7은 본 발명의 일 실시예에 따른 LDPC 부호화 장치의 패리티 비트 생성 과정을 설명하기 위한 참조도,
도 8은 본 발명의 일 실시예에 따른 LDPC 부호화 방법을 도시한 흐름도이다.
이하에서는 첨부한 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 LDPC 부호화 장치(1)의 부호화 과정을 설명하기 위한 참조도이다.
도 1을 참조하면, 본 발명의 저밀도 패리티 검사 부호(Low density parity check code:이하 LDPC) 부호화 장치(1)는 정보 시퀀스(information sequence) 형태인 입력 비트(s)(10)를 입력받아 이를 규칙적(systematic)인 LDPC 부호화 방식의 부호율(R)에 따라 LDPC 부호화하여 부호어 벡터(code word vector)인 출력 비트(c)(14)를 출력한다.
예를 들면, 도 1에 도시된 바와 같이 부호율(R)이 3/4인 규칙적인 LDPC 부호화 장치(1)의 경우, 입력되는 15비트의 이진 비트(10)는 출력 비트(c)(14)의 일부분으로 출력된다. 그리고, LDPC 부호화 장치(1)는 입력되는 이진 비트(10)를 이용해 5개의 패리티 비트(14)를 생성한다. 이때, LDPC 부호화 장치(1)는 생성된 패리티 비트를 입력 비트(s)(10)와 결합하여 출력 비트(c)(14)를 출력한다. 따라서 LDPC 부호화 장치의 부호율은 15/20 = 3/4가 된다. 본 발명은 전술한 입출력 구조를 가지는 규칙적인 LDPC 코드에 적용된다.
한편, 송신 단의 LDPC 부호화 장치(encoder)(1)에서 패리티 검사 행렬 H(이하 H 행렬)를 통해 부호화(encoding)된 패킷은 수신 단의 복호화 장치(decoder)에서 H 행렬을 통해 복호화(decoding)된다. 이때, LDPC 복호기에 관한 내용은 본 발명의 요지를 불필요하게 흐릴 수 있으므로 상세한 설명을 생략한다.
도 2는 본 발명의 일 실시예에 따른 H 행렬을 도시한 참조도이다.
도 2를 참조하면, 일 실시예에 따른 H 행렬은 81×81 크기의 서브블록 행렬이 4개의 행과 24개의 열로 구성된다. 이때, H 행렬 상에서 서브블록 내의 숫자는 순환 이동(cyclic shift)을 의미한다. 예를 들면, 서브블록의 숫자가 '13'인 경우 '13'만큼 우측으로 순환 이동된 순환 시프트 값을 나타낸다. 한편, 후술되는 도 6에 도시된 바와 같이 서브블록의 크기가 38×38인 경우, 도 6의 좌측에는 '순환 이동 0(cyclic shift 0)'을, 도 6의 우측에는 '순환 이동 2(cyclic shift 2)'를 각각 도시하였다. 각 서브블록은 서큘런트 행렬(circulant matrix) 구조이다.
한편, 도 2에 도시된 H 행렬 상의 서브블록 단위가 81×81이므로, 도 2의 H 행렬의 크기는 324×1944가 된다. 이 H 행렬의 특징은 리차드슨(Richardson)이 제안한 H 행렬의 구조이다. H 행렬은 정보 블록인 입력 비트 블록(20)과, 패리티 비트 블록(22)으로 나눌 수 있다. 이 H 행렬의 특징은 패리티 비트 블록(22)이 이중 사선(dual diagonal) 형태라는 점이다. 즉, 본 발명의 일 실시예에 따른 H 행렬의 구조는 도 2에 도시된 바와 같이 첫 번째 열(column)을 제외한 모든 패리티 부분이 모두 '0 순환 이동'(예를 들면, 단위 행렬(entity matrix))으로 형성된다. 이에 따라, 서브블록의 사선(diagonal) 부분의 길이만큼 패리티 비트를 한꺼번에 병렬로 생성할 수 있다.
도 3은 본 발명의 일 실시예에 따른 LDPC 부호화 장치(1)의 구성도이다.
도 3을 참조하면, LDPC 부호화 장치(1)는 입력부(30), 정보 벡터 생성부(32), 패리티 비트 생성부(34) 및 출력부(36)를 포함한다.
입력부(30)는 LDPC 부호화 장치(1)에 입력으로 들어오는 입력어를 순차적으로 받아들이고, 이를 주어진 시간에 정보 벡터 생성부(32) 및 출력부(36)로 각각 전달한다.
정보 벡터 생성부(32)는 H 행렬을 저장하고 있으며, 입력부(30)를 통해 입력된 입력어와 기저장된 H 행렬의 정보 블록을 연산하여 정보 벡터 X를 생성한다. 정보 벡터 X를 생성하는 과정에 대해서는 후술되는 도 4에서 설명한다.
패리티 비트 생성부(34)는 정보 벡터 생성부(32)에서 생성된 정보 벡터 XH 행렬의 패리티 블록에 대한 연립방정식을 통해 패리티 비트(parity bit)를 생성한다. 이때, 패리티 비트 생성부(34)는 정보 벡터 XH 행렬의 패리티 블록에 대한 선형 방정식을 독립적인 선형 방정식으로 분리하여 작은 크기의 선형 방정식으로 나누어 패리티 비트를 생성할 수 있다. 이때, 패리티 비트 생성부(34)는 사전에 부분적인 패리티 비트를 미리 지정하고, 미리 지정된 패리티 비트를 연립방정식을 통해 역으로 적용하여 패리티 비트를 생성할 수 있다.
패리티 비트 생성부(34)는 선형 방정식을 풀기 위해, 정보 벡터 X를 서브행렬의 크기 단위로 나누어 행 블록이 증가함에 따라 순차적으로 순환 시프트시킨다. 그리고 패리티 비트 생성부(34)는 분리된 독립적인 선형 방정식을 서브행렬 단위로 병렬 처리한다. 여기서, 패리티 검사행렬은 후술되는 도 5에 도시된 바와 같이 첫 번째 열을 제외한 나머지 모든 패리티 행렬이 '0 순환 이동된 행렬 형태의 이중사선 구조이다.
한편, 패리티 비트 생성부(34)는 전술한 과정을 통해 생성된 패리티 비트를 패리티 검사 행렬 H를 이용해 검사한 결과를, 패리티 검사 행렬 H의 패리티 블록에서 분할된 각 영역과 서브블록 단위로 연산하여 최종 패리티 비트를 생성한다. 패리티 비트 생성부(34)의 최종 패리티 비트를 생성하는 과정에 대해서는 후술되는 도 7에서 상세히 설명한다.
출력부(36)는 입력부(30)에서 입력된 입력 비트와 패리티 비트 생성부(34)에서 생성된 패리티 비트를 결합하여 부호어를 생성한다. 그리고 출력부(36)는 생성된 부호어를 주어진 시간에 순차적으로 출력한다.
도 4는 본 발명의 일 실시예에 따라 정보 벡터 X를 생성하는 과정을 설명하기 위한 참조도이다.
도 4를 참조하면, LDPC 부호화 장치(1)는 정보 벡터 X(42)를 생성하기 위해서, H 행렬의 규칙적인 부분(systematic part)인 정보 블록(S)(40)과 입력정보 비트의 행렬 곱을 계산한다. 이러한 과정은 다양한 방법을 통해서 계산 가능한데, 일 실시예에 따르면 H 행렬의 정보 블록(S)(40)과 부호어(c)의 정보 블록을 곱셈 연산할 수 있다.
한편, 도 2에서 전술한 바와 같이 LDPC 부호화 장치(1)의 서브블록 단위로 한꺼번에 병렬로 패리티 비트를 결정하는 알고리즘을 설명하기에 앞서, 비트 단위의 패리티 비트를 결정하는 과정을 후술한다.
도 5는 본 발명의 일 실시예에 따른 H 행렬을 도시한 예시도이다.
도 5를 참조하면, 일 실시예에 따라 부호율 R=1/2인 H 행렬의 규칙적인 부분인 정보 블록(50)은 처음의 12개 열이고, 패리티 블록(52)은 다음의 12열이다. 패리티 블록(52)에 '▨'으로 표시된 부분이 1 순환 이동되는 것을 제외하고는, 나머지 모든 패리티 서브행렬의 순환 이동은 전부 0임을 확인할 수 있다. 이때, 본 발명의 LDPC 부호화 장치(1)는 H 행렬과 부호화된 부호어 벡터(code word vector) c (도 1의 출력 벡터)를 곱셈 연산할 때, 수학식 1을 만족시켜야 한다.
Figure pat00001
수학식 1에서 c 벡터는 도 1에서 도시된 출력 비트(12)에 해당한다. 따라서 LDPC 부호화 장치(1)는 도 1에 도시된 출력 비트(12) 중 패리티 비트들(14)을 결정하며, 도 5의 경우 H 행렬 상에선
Figure pat00002
을 만족하는 456개의 패리티 비트(각 서브블록 사이즈는 38개이므로 38×12 = 456)를 계산한다. 이하 도 5의 H 행렬을 이용하여, 후술되는 도면들을 통해 LDPC 부호화 장치(1)의 패리티 비트 생성 과정 및 이를 이용한 부호화 과정에 대해 상세히 후술한다.
도 7은 본 발명의 일 실시예에 따른 LDPC 부호화 장치(1)의 패리티 비트 생성 과정을 설명하기 위한 참조도로서, 패리티 검사 결과가 실패된 경우 이를 수정하여 최종적인 패리티 비트(78)를 설정하는 과정을 보여주기 위한 참조도이다.
우선, 도 5에서 전술한 H 행렬의 456개의 패리티 비트를 각각 P0에서 P455라고 정의한다. c 벡터는 c=[s0, s1, s2,.., Sm, p0, p1]이다. 이때, 패리티 비트 p0 및 p1은, 수학식 1을 만족하기 위해 456개 행 중 첫 번째, 13번째, 59번째, 112번째, 184번째, 308번째 행의 입력 비트와, 0번째 그리고 38번째의 패리티 비트의 합이 0(즉, mod 2 연산이므로 짝수가 되어야 한다) 이여야 한다. 첫 번째 행의
Figure pat00003
연산을 수직적으로 나타내자면 다음과 같다.
Figure pat00004
LDPC 부호화 장치(1)에서의 연산은 비트 단위의 연산이므로, 수학식 2에서의
Figure pat00005
는 모듈로(modulo) 2 연산을 의미한다. 여기서 (H) jH 행렬의 j번째 행을 나타낸다. S0, S59, S112, S184, S308는 미리 설정된 것이고 P1, P38는 계산해야 한다. 그러나, 전술한 수학식 2는 도 5에 도시된 H 행렬의 경우 456개가 존재하며, 456개의 패리티 비트 P0부터 P455를 계산해야 한다. 전술한 456개의 수식은 연립방정식으로 계산하기 쉽지 않다. 그러나, 만약 P1를 0으로 미리 설정한다면 P38의 값을 구할 수 있다. P38의 값을 알고 있기 때문에 H 행렬의 38번째 행에 해당하는 P76 값을 알 수 있다. 이를 수학식 3과 같이 표현할 수 있다.
Figure pat00006
P76는 38번째 행에 위치하는 것을 알 수 있다. P76을 알고 있으면 동일한 38번째 행에 위치한 P114의 값을 알 수 있다. P114는 72번째 행의 값이 된다. 이러한 반복과정을 거쳐 380번째 행에서 P418을 구할 수 있다. 구해진 P418의 값이 418번째 행에서 P418의 값이 되며, 418번째 행의 입력 비트와 패리티 비트를 모두 더한 값이 0이 되면, P1, P38, P76, P114, P152, P190, P228, P266, P304, P418가 옳은 값이 결정된 것이다. 만약 그렇지 않으면 처음으로 다시 돌아가서 P1의 초기값을 1로 재설정하여 앞의 과정을 되풀이할 수 있다.
그러나 본 발명에 따르면, 전술한 과정을 반복하는 것이 아니라, H 행렬의 패리티 블록의 전 영역(70)의 패리티 비트 값을 도 7에 도시된 바와 같이 V 영역(720), Q 영역(722) 및 U 영역(724)으로 나누고, 각 영역에 따른 XOR 연산을 수행하여 최종 패리티 비트를 생성한다.
도 7을 참조하면, P0, P1, P2, P3의 값이 모두 0이다. 이러한 조건일 때, 수학식 2 및 수학식 3의 수식과정을 통한 결과값인 패리티 검사 벡터(parity check vector) f(74)는 [1 0 0 0]이다. 따라서 초기 P0, P1, P2, P3의 값을 다시 [1 0 0 0]으로 설정하면 패리티 검사 벡터 f(74)는 모두 0 값을 가진다. 즉 수학식 1을 만족하는 것이다. 또한 한꺼번에 서브블록의 크기만큼 병렬로 처리 가능하다. 즉 P0부터 P3까지 결정되면 바로 P4부터 P7까지 결정이 되는 것이다.
도 7에 도시된 바와 같이, X 벡터가 주어지고, 서브블록 행렬 크기가 4×4 라고 가정한 경우, "▨"으로 표시된 H 행렬 패리티 부분의 첫 번째 서브블록 열이 모두 0으로 초기화된다. 이는 곧, P0, P1, P2, P3가 모두 0으로 설정되었다는 뜻이다. 그러면, 전술한 수학식 1에 의해 P4, P5, P6, P7는 각각 0, 1, 0, 1 이 된다.
이어서 P8, P9, P10, P11와 P12, P13, P14, P15를 구할 수 있다. 그리고 최종적으로 행 12부터 15까지의 수학식 1의 패리티 검사 결과를 패리티 검사 벡터 f(74)로 나타낼 수 있다. 그런데, 패리티 검사 벡터 f(74) 중 '0'이 아닌 부분이 생성되면 패리티 검사 결과를 만족하지 못함을 나타낸다. 즉, 수학식 1을 만족하지 못한 것이다. 도 7의 경우 행 12의 패리티 검사가 잘못되었음을 확인할 수 있다.
따라서 처음에 임의적으로 모두 0으로 설정한 P0, P1, P2, P3 을 [1, 0, 0, 0]으로 다시 설정하여 처음부터 다시 연산과정을 수행하여 모든 패리티 비트를 구할 수 있다. 그러나, 전술한 반복(iteration)은 연산 소모적이므로 딜레이(delay)를 줄이는 차원에서 적절한 XOR 연산을 통해 전술한 반복 과정을 생략할 수 있다.
도 7을 참조하면, H 행렬 패리티 블록의 V 영역(720), Q 영역(722) 및 U 영역(724) 별로 base 2 덧셈 (XOR) 연산을 수행하여 최종적인 패리티 비트(78)를 생성할 수 있다. 즉, 각 영역별로 패리티 검사 벡터 f(74)를 더할 수 있다. 또는 각 영역별로 역순환 이동 벡터(reverse cyclic shift vector) frc(76)를 더할 수 있다. 또는 각 영역별로 패리티 검사 벡터 f(74) 및 역순환 이동 벡터 frc(76) 둘을 더할 수 있다. 그러면, 처음에 임의적으로 [0, 0, 0, 0]으로 생성한 P0, P1, P2, P3 의 초기값을 [1, 0, 0, 0]으로 수정한 결과를 얻을 수 있다. 여기서 역순환 이동 벡터 frc(76)는 패리티 검사 벡터 f(74)를 도 5에 도시된 '▨'로 표시된 순환 이동 값(1)만큼 반대로(reverse) 왼쪽 순환이동한 값이다. 즉, 순환 이동 개념을 행 벡터 상에서 적용 한 것이라 볼 수 있다.
한편, 도 7에 도시된 바와 같이, V 영역(720)으로 표시된 패리티 비트 부분은 XOR 연산 대상에서 제외할 수 있다. 예컨대, 패리티 부분의 다른 서브블록의 값이 각각 변하더라도, 그 V 영역(720)으로 표시된 패리티 비트 부분의 서브블록의 값이 변하지 않음을 의미한다. 이는 비트 단위로 패리티 비트를 결정하는 과정에 있어 홀수 개의 패리티 비트가 결정되는 경우 나머지 패리티 비트는 항상 일정한 값을 갖기 때문이다.
이후, 검증 차원에서 다시 연산을 해보면 패리티 검사 벡터 f(74)의 값이 모두 0으로 되는 결과를 얻을 수 있다. 따라서 수학식 1을 만족하는 패리티 비트 P0, 부터 P15까지 최종적으로 구할 수 있다.
도 8은 본 발명의 일 실시예에 따른 LDPC 부호화 방법을 도시한 흐름도이다.
도 8을 참조하면, LDPC 부호화 장치(1)는 입력어인 정보 시퀀스를 입력(800)받아, 패리티 블록이 이중사선 구조 형태인 H 행렬의 정보블록과 연산하여 정보 벡터 X를 생성한다(810).
이어서, LDPC 부호화 장치(1)는 생성된 정보 벡터 XH 행렬의 패리티 블록에 대한 연립방정식을 통해 패리티 비트를 생성한다(820).
이어서, LDPC 부호화 장치(1)는 생성된 패리티 비트를 H 행렬을 이용해 검사한 결과를, H 행렬의 패리티 블록에서 분할된 각 영역과 서브블록 단위로 연산하여 최종 패리티 비트를 생성한다(830).
이어서, LDPC 부호화 장치(1)는 생성된 최종 패리티 비트를 정보 시퀀스와 결합하여 부호어를 출력한다(840).
이제까지 본 발명에 대하여 그 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
1 : LDPC 부호화 장치
30 : 입력부
32 : 정보 벡터 생성부
34 : 패리티 비트 생성부
36 : 출력부

Claims (1)

  1. 입력어인 정보 시퀀스를 입력받아, 패리티 블록이 이중사선 구조 형태인 패리티 검사 행렬 H의 정보블록과 연산하여 정보 벡터 X를 생성하는 단계;
    상기 생성된 정보 벡터 X 및 상기 패리티 검사 행렬 H의 패리티 블록에 대한 연립방정식을 통해 패리티 비트를 생성하는 단계;
    상기 생성된 패리티 비트를 상기 패리티 검사 행렬 H를 이용해 검사한 결과를, 상기 패리티 검사 행렬 H의 패리티 블록에서 분할된 각 영역과 서브블록 단위로 연산하여 최종 패리티 비트를 생성하는 단계; 및
    상기 생성된 최종 패리티 비트를 상기 정보 시퀀스와 결합하여 부호어를 출력하는 단계를 포함하는 것을 특징으로 하는 저밀도 패리티 검사를 이용한 코드 부호화 방법.
KR1020100036030A 2009-12-16 2010-04-19 저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치 KR20110068776A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090125610 2009-12-16
KR20090125610 2009-12-16

Publications (1)

Publication Number Publication Date
KR20110068776A true KR20110068776A (ko) 2011-06-22

Family

ID=44400955

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100036030A KR20110068776A (ko) 2009-12-16 2010-04-19 저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR20110068776A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111066251A (zh) * 2017-08-18 2020-04-24 上海诺基亚贝尔股份有限公司 用于nr的ldpc基础图的使用

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111066251A (zh) * 2017-08-18 2020-04-24 上海诺基亚贝尔股份有限公司 用于nr的ldpc基础图的使用

Similar Documents

Publication Publication Date Title
JP5875713B2 (ja) 送信機および受信機、並びに符号化率可変方法
CN101073205B (zh) 低密度奇偶校验编码器和解码器以及低密度奇偶校验编码和解码方法
KR100949519B1 (ko) 낮은 복잡도 및 고속 복호를 위한 패리티 검사행렬 생성방법과, 그를 이용한 저밀도 패리티 검사 부호의 부호화장치 및 그 방법
JP5329239B2 (ja) 通信システムのための多体ベース符号の生成器および復号化器
KR100808664B1 (ko) 패리티 검사행렬 저장 방법 및 이를 이용한 블록 저밀도패리티 검사 부호화 방법 및 장치
US10992416B2 (en) Forward error correction with compression coding
WO2015135298A1 (zh) 一种支持低码率编码的方法及装置、计算机存储介质
JP2007166605A (ja) パリティ検査行列、パリティ検査行列の生成方法、エンコーディング方法及びエラー訂正装置
KR100918741B1 (ko) 이동 통신 시스템에서 채널 부호화 장치 및 방법
US20030188248A1 (en) Apparatus for iterative hard-decision forward error correction decoding
KR100837730B1 (ko) 사전에 지정한 패리티를 검사한 결과를 이용해 ldpc코드를 부호화하는 방법
EP3047575B1 (en) Encoding of multiple different quasi-cyclic low-density parity check (qc-ldpc) codes sharing common hardware resources
US20090089744A1 (en) Method and apparatus for generating error-correcting and error-detecting codes using zero-divisors and units in group rings
US20170288697A1 (en) Ldpc shuffle decoder with initialization circuit comprising ordered set memory
JP4634423B2 (ja) 情報送受信方法、符号化装置および復号化装置
KR20110068776A (ko) 저밀도 패리티 검사를 이용한 코드 부호화 방법 및 그 장치
KR101908389B1 (ko) 에러 정정 코딩 및 디코딩
JP5523064B2 (ja) 復号装置及び方法
KR100874484B1 (ko) 준순환 저밀도 패리티 검사 부호화 방법 및 장치
KR101425506B1 (ko) 보완적인 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
CN111527705B (zh) 用于解码器重用的信道码构造
KR101391859B1 (ko) 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치
Yu et al. An Efficient Implementation Scheme for Lattice Reduction in the List-Decoding Algorithm for the Binary Goppa Codes
KR100800775B1 (ko) 이동 통신 시스템에서 채널 부호화 장치 및 방법
KR20140016774A (ko) 저밀도 역 코드를 이용한 부호화/복호화 방법 및 장치

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination