KR100975695B1 - 통신 시스템에서 신호 수신 장치 및 방법 - Google Patents

통신 시스템에서 신호 수신 장치 및 방법 Download PDF

Info

Publication number
KR100975695B1
KR100975695B1 KR1020070011098A KR20070011098A KR100975695B1 KR 100975695 B1 KR100975695 B1 KR 100975695B1 KR 1020070011098 A KR1020070011098 A KR 1020070011098A KR 20070011098 A KR20070011098 A KR 20070011098A KR 100975695 B1 KR100975695 B1 KR 100975695B1
Authority
KR
South Korea
Prior art keywords
block
columns
offsets
rows
pps
Prior art date
Application number
KR1020070011098A
Other languages
English (en)
Other versions
KR20080072392A (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 KR1020070011098A priority Critical patent/KR100975695B1/ko
Priority to US12/024,336 priority patent/US8051356B2/en
Publication of KR20080072392A publication Critical patent/KR20080072392A/ko
Application granted granted Critical
Publication of KR100975695B1 publication Critical patent/KR100975695B1/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/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • AHUMAN NECESSITIES
    • A41WEARING APPAREL
    • A41DOUTERWEAR; PROTECTIVE GARMENTS; ACCESSORIES
    • A41D19/00Gloves
    • 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/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • 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/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/114Shuffled, staggered, layered or turbo decoding schedules
    • AHUMAN NECESSITIES
    • A41WEARING APPAREL
    • A41DOUTERWEAR; PROTECTIVE GARMENTS; ACCESSORIES
    • A41D2400/00Functions or special features of garments
    • A41D2400/52Disposable

Landscapes

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

Abstract

본 발명은 통신 시스템의 신호 수신 장치가 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
Figure 112010009499747-pat00100
개의 행들과
Figure 112010009499747-pat00101
개의 열들을 포함하고, 상기
Figure 112010009499747-pat00102
개의 행들은 p개의 블록 행들로 그룹화되며, 상기
Figure 112010009499747-pat00103
개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 q개의 블록 열들 각각에서 하나의 열을 포함할 경우, 상기 q개의 블록 열들 각각에 대해 해당 블록 열이 포함하는 L개의 열 중 비트 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 열별로 비트 노드 연산을 수행하고, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하고, 상기 q개의 블록 열들의 오프셋들은 서로 다른 PPS 그룹에 포함된 열의 위치에 대응되며, 상기 신호 수신 장치는 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 동작을 L-1번 반복 수행함을 특징으로 한다.
Figure R1020070011098
오프셋, PPS 방식, 구조적 LDPC 부호, 패리티 검사 행렬

Description

통신 시스템에서 신호 수신 장치 및 방법{APPARATUS AND METHOD FOR RECEIVING SIGNAL IN A COMMUNICATION SYSTEM}
도 1은 LDPC 부호를 사용하는 일반적인 통신 시스템에서 신호 송신 장치의 구조를 도시한 도면
도 2는 LDPC 부호를 사용하는 일반적인 통신 시스템에서 신호 수신 장치의 구조를 도시한 도면
도 3은 일반적인 구조적 LDPC 부호의 패리티 검사 행렬을 도시한 도면
도 4는 본 발명의 실시예에 따른 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식을 개략적으로 도시한 도면
도 5는 본 발명의 실시예에 따라 오프셋을 설정한 후 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식을 개략적으로 도시한 도면
도 6은 본 발명의 실시예에 따른 PPS 방식을 사용하는 LDPC 복호기의 구조를 도시한 도면
본 발명은 통신 시스템에 관한 것으로서, 특히 통신 시스템에서 신호를 수신하는 장치 및 방법에 관한 것이다.
일반적으로, 통신 시스템은 단말기들에게 고속의 대용량 데이터 송수신이 가능한 서비스를 제공하기 위한 형태로 발전해 나가고 있다. 따라서, 통신 시스템에서는 고속 대용량 데이터 송수신에 적합한 채널 부호(channel code)인 저밀도 패리티 검사(LDPC: Low Density Parity Check, 이하 'LDPC'라 칭하기로 한다) 부호의 사용을 적극적으로 고려하고 있다.
그러면 여기서 도 1을 참조하여 LDPC 부호를 사용하는 일반적인 통신 시스템의 신호 송신 장치 구조에 대해서 설명하기로 한다.
상기 도 1은 LDPC 부호를 사용하는 일반적인 통신 시스템에서 신호 송신 장치의 구조를 도시한 도면이다.
상기 도 1을 참조하면, 먼저 상기 신호 송신 장치는 부호화기(encoder)(111)와, 변조기(modulator)(113)와, 송신기(115)를 포함한다. 먼저, 상기 신호 송신 장치에서 송신하고자 하는 정보 데이터, 즉 정보 벡터(information vector)가 발생되면, 상기 정보 벡터는 상기 부호화기(111)로 전달된다. 상기 부호화기(111)는 상기 정보 벡터를 미리 설정되어 있는 부호화 방식으로 부호화하여 부호어 벡터(codeword vector), 즉 LDPC 부호어로 생성한 후 상기 변조기(113)로 출력한다. 여기서, 상기 부호화 방식은 LDPC 부호화 방식이 되는 것이다. 상기 변조기(113)는 상기 부호어 벡터를 미리 설정되어 있는 변조 방식으로 변조하여 변조 벡터로 생성하여 상기 송신기(115)로 출력한다. 상기 송신기(115)는 상기 변조기(113)에서 출력한 변조 벡터를 입력하여 송신 신호 처리한 후 안테나를 통해 신호 수신 장치로 송신한다.
다음으로 도 2를 참조하여 LDPC 부호를 사용하는 일반적인 통신 시스템의 신호 수신 장치 구조에 대해서 설명하기로 한다.
상기 도 2는 LDPC 부호를 사용하는 일반적인 통신 시스템에서 신호 수신 장치의 구조를 도시한 도면이다.
상기 도 2를 참조하면, 상기 신호 수신 장치는 수신기(211)와, 복조기(de-modulator)(213)와, 복호기(decoder)(215)를 포함한다. 먼저, 신호 송신 장치에서 송신한 신호는 상기 신호 수신 장치의 안테나를 통해 수신되고, 상기 안테나를 통해 수신된 신호는 상기 수신기(211)로 전달된다. 상기 수신기(211)는 상기 수신 신호를 수신 신호 처리한 후 그 수신 신호 처리된 수신 벡터를 상기 복조기(213)로 출력한다. 상기 복조기(213)는 상기 수신기(211)에서 출력한 수신 벡터를 입력하여 상기 신호 송신 장치의 변조기, 즉 변조기(113)에서 적용한 변조 방식에 상응하는 복조 방식으로 복조한 후 그 복조한 복조 벡터를 상기 복호기(215)로 출력한다. 상기 복호기(215)는 상기 복조기(213)에서 출력한 복조 벡터를 입력하여 상기 신호 송신 장치의 부호화기, 즉 부호화기(111)에서 적용한 부호화 방식에 상응하는 복호 방식으로 복호한 후 그 복호한 신호를 최종적으로 복원된 정보 벡터로 출력한다. 여기서, 상기 복호 방식, 즉 LDPC 복호 방식은 일 예로 합곱(sum-product) 알고리즘(algorithm)에 기반한 반복 복호(iterative decoding) 알고리즘을 사용하는 방식이라고 가정하기로 한다.
한편, 상기 LDPC 부호는 대부분의 엘리먼트(element)들이 0의 값을 가지며, 상기 0의 값을 가지는 엘리먼트들 이외의 극히 소수의 엘리먼트들이 0이 아닌(non-zero), 일 예로 1의 값을 가지는 패리티 검사 행렬(parity check matrix)에 의해 정의되는 부호이다. 상기 LDPC 부호는 이분(bipartite, 이하 'bipartite'라 칭하기로 한다) 그래프로 표현할 수 있으며, 상기 bipartite 그래프는 변수 노드(variable node), 즉 비트 노드(bit node)들과, 검사 노드(check node)들과, 상기 비트 노드들과 검사 노드들을 연결하는 에지(edge)들로 표현되는 그래프이다.
또한, 상기 LDPC 부호는 상기 bipartite 그래프 상에서 합곱 알고리즘에 기반한 반복 복호 알고리즘을 사용하여 복호할 수 있다. 여기서, 상기 합곱 알고리즘은 메시지 패싱 알고리즘(message passing algorithm)의 일종이며, 상기 메시지 패싱 알고리즘이라함은 상기 bipartite 그래프 상에서 에지를 통해 메시지들을 교환하고, 상기 비트 노드들 혹은 검사 노드들로 입력되는 메시지들로부터 출력 메시지를 계산하여 업데이트하는 알고리즘을 나타낸다.
한편, 상기 bipartite 그래프 상에서 상기 메시지 패싱 알고리즘을 구현함에 있어 비트 노드 연산과 검사 노드 연산 각각은 순차적으로 수행된다. 즉, 비트 노드 연산은 모든 비트 노드들에 대해 순차적으로 수행되며, 검사 노드 연산은 모든 검사 노드들에 대해 순차적으로 수행된다. 그런데, 상기에서 설명한 바와 같이 상기 LDPC 복호 방식은 반복 복호 방식이기 때문에, 상기 비트 노드 연산과 검사 노드 연산을 순차적으로 수행할 경우 최종 복호 결과를 검출하는 데까지 소요되는 시간이 증가하게 된다. 이렇게, 비트 노드 연산과 검사 노드 연산을 순차적으로 수행 함에 따라 소요되는 시간의 증가는 결과적으로 상기 LDPC 부호의 복호 자체를 지연시키는 요인으로 작용하게 된다. 따라서, LDPC 부호의 복호 성능에 영향을 미치지 않으면서도, LDPC 부호의 복호에 소요되는 시간을 감소시키는 방안에 대한 필요성이 대두되고 있다.
따라서, 본 발명의 목적은 LDPC 부호를 사용하는 통신 시스템에서 신호를 수신하는 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 LDPC 부호를 사용하는 통신 시스템에서 부분 병렬 스케쥴링 방식을 사용하여 LDPC 부호를 복호하는 신호 수신 장치 및 방법을 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 장치는; 통신 시스템의 신호 수신 장치에 있어서, 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
Figure 112010009499747-pat00104
개의 행들과
Figure 112010009499747-pat00105
개의 열들을 포함하고, 상기
Figure 112010009499747-pat00106
개의 행들은 p개의 블록 행들로 그룹화되며, 상기
Figure 112010009499747-pat00107
개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 q개의 블록 열들 각각에서 하나의 열을 포함할 경우, 상기 q개의 블록 열들 각각에 대해 해당 블록 열이 포함하는 L개의 열 중 비트 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 열별로 비트 노드 연산을 수행하고, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 복호기를 포함하며, 상기 q개의 블록 열들의 오프셋들은 서로 다른 PPS 그룹에 포함된 열의 위치에 대응되며, 상기 복호기는 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 동작을 L-1번 반복 수행함을 특징으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 다른 장치는; 통신 시스템의 신호 수신 장치에 있어서, 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
Figure 112010009499747-pat00108
개의 행들과
Figure 112010009499747-pat00109
개의 열들을 포함하고, 상기
Figure 112010009499747-pat00110
개의 행들은 p개의 블록 행들로 그룹화되며, 상기
Figure 112010009499747-pat00111
개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 p개의 블록 행들 각각에서 하나의 행을 포함할 경우, 상기 p개의 블록 행들 각각에 대해 해당 블록 행이 포함하는 L개의 행 중 검사 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 복호기를 포함하며, 상기 p개의 블록 행들의 오프셋들은 서로 다른 PPS 그룹에 포함된 행의 위치에 대응되며, 상기 복호기는 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 동작을 L-1번 반복 수행함을 특징으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 방법은; 통신 시스템의 신호 수신 장치에서 신호를 수신하는 방법에 있어서, 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
Figure 112010009499747-pat00112
개의 행들과
Figure 112010009499747-pat00113
개의 열들을 포함하고, 상기
Figure 112010009499747-pat00114
개의 행들은 p개의 블록 행들로 그룹화되며, 상기
Figure 112010009499747-pat00115
개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 q개의 블록 열들 각각에서 하나의 열을 포함할 경우, 신호를 수신하는 과정과, 상기 q개의 블록 열들 각각에 대해 해당 블록 열이 포함하는 L개의 열 중 비트 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 열별로 비트 노드 연산을 수행하는 과정과, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 과정을 포함하며, 상기 q개의 블록 열들의 오프셋들은 서로 다른 PPS 그룹에 포함된 열의 위치에 대응되며, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 과정은 L-1번 반복 수행됨을 특징으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 또 다른 방법은; 통신 시스템의 신호 수신 장치에서 신호를 수신하는 방법에 있어서, 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
Figure 112010009499747-pat00116
개의 행들과
Figure 112010009499747-pat00117
개의 열들을 포함하고, 상기
Figure 112010009499747-pat00118
개의 행들은 p개의 블록 행들로 그룹화되며, 상기
Figure 112010009499747-pat00119
개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 p개의 블록 행들 각각에서 하나의 행을 포함할 경우, 신호를 수신하는 과정과, 상기 p개의 블록 행들 각각에 대해 해당 블록 행이 포함하는 L개의 행 중 검사 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 행별로 검사 노드 연산을 수행하는 과정과, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 과정을 포함하며, 상기 p개의 블록 행들의 오프셋들은 서로 다른 PPS 그룹에 포함된 행의 위치에 대응되며, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 과정은 L-1번 반복 수행됨을 특징으로 한다.
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
본 발명은 저밀도 패리티 검사(LDPC: Low Density Parity Check, 이하 'LDPC'라 칭하기로 한다) 부호를 사용하는 통신 시스템에서 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling, 이하 'PPS'라 칭하기로 한다) 방식을 사용하여 LDPC 부호를 복호하는 신호 수신 장치 및 방법을 제안한다. 특히, 본 발명은 PPS 방식을 사용하여 LDPC 부호를 복호할 때 상기 LDPC 부호의 패리티 검사 행렬(parity check matrix)의 각 블록 행(block row)에서 임의의 2개의, 영 행렬(zero matrix)이 아닌 블록 행렬(block matrix)들의 쉬프트 파라미터(shift parameter)들이 반드시 상이한 값을 가지도록 하는 신호 수신 장치 및 방법을 제안한다. 또한, 본 발명은 상기 패리티 검사 행렬의 블록 열들 각각에 대해 노드 연산 수행시 그 노드 프로세서가 연산을 수행하는 시작점의 위치를 나타내는 오프셋(offset)을 설정한 후, PPS 방식을 사용하여 LDPC 부호를 복호하는 신호 수신 장치 및 방법을 제안한다.
이하, 설명의 편의상 상기 PPS 방식을 사용하여 LDPC 부호를 복호함에 있어 변수 노드(variable node), 즉 비트 노드(bit node) 연산을 일 예로 하여 설명하기로 하며, 본 발명에서 제안하는 PPS 방식을 사용하여 LDPC 부호를 복호하는 동작은 상기 비트 노드 연산 뿐만 아니라 검사 노드(check node) 연산에도 적용 가능함은 물론이다. 또한, 본 발명에서 별도로 도시하여 설명하지는 않지만 종래 기술 부분의 도 2에서 설명한 바와 같은 통신 시스템의 신호 수신 장치 구성에 본 발명에서 제안하는 PPS 방식을 사용하여 LDPC 부호를 복호하는 동작을 적용할 수 있음은 물론이다. 또한, 본 발명에서 제안하는 PPS 방식을 사용하여 LDPC 부호를 복호하는 신호 수신 장치 및 방법에 대해서 설명하기에 앞서, LDPC 부호의 패리티 검사 행렬(parity check matrix)에 대해서 설명하면 다음과 같다.
먼저, LDPC 부호의 이분(bipartite, 이하 'bipartite'라 칭하기로 한다) 그 래프 상에서 사이클(cycle)이 길게 생성될수록 상기 bipartite 그래프상에 비교적 짧은 길이, 일 예로 길이 4의 사이클이 많이 존재할 때 발생하는 error floor등의 성능 열화가 발생하지 않는다. 따라서, bipartite 그래프상에서 짧은 길이의 사이클이 생성되지 않도록 패리티 검사 행렬을 생성하는 것이 중요한 요인으로 작용하게 되며, 구조적(structured) LDPC 부호의 패리티 검사 행렬이 bipartite 그래프상에서 짧은 길이의 사이클이 생성되지 않도록하는 대표적인 패리티 검사 행렬이다. 그러면 여기서 도 3을 참조하여 구조적 LDPC 부호의 패리티 검사 행렬에 대해서 설명하기로 한다.
상기 도 3은 일반적인 구조적 LDPC 부호의 패리티 검사 행렬을 도시한 도면이다.
상기 도 3에 도시되어 있는 바와 같이 패리티 검사 행렬은 다수의 블록들을 포함하고, 상기 다수의 블록들 각각에 블록 행렬이 대응되는 형태를 가진다. 여기서, 상기 블록 행렬은 일 예로 순열 행렬(permutation matrix) 혹은 영 행렬이라고 가정하기로 하며, 상기 순열 행렬 및 영 행렬은
Figure 112007010297257-pat00022
크기를 가진다. 또한, 상기 순열 행렬을 구성하는 L개의 행(row)들 각각의 웨이트(weight)가 1이고, 상기 순열 행렬을 구성하는 L개의 열(column)들 각각의 웨이트 역시 1인 행렬을 나타낸다. 이하, 설명의 편의상 상기 순열 행렬을 순환 순열 행렬(cyclic permutation matrix)이라고 가정하기로 하며, 상기 순환 순열 행렬은 단위 행렬(identity matrix)이 오른쪽으로 순환 이동(cyclic shift)된 형태를 갖는다. 여기서, 상기 단위 행렬이 오른쪽으로 순환 이동된 크기를 순환 순열 행렬의 쉬프트 파라미터(shift parameter) 라고 가정하기로 한다.
상기 도 3에 도시되어 있는 바와 같이 상기 패리티 검사 행렬은
Figure 112007010297257-pat00023
개의 블록들을 포함하며, 상기
Figure 112007010297257-pat00024
개의 블록들 각각에는 블록 행렬이 대응된다. 상기 도 3에서 Pij는 상기 패리티 검사 행렬이 포함하는
Figure 112007010297257-pat00025
개의 블록들중 i번째 블록 행(row)과 j번째 블록 열(column)이 교차하는 지점에 위치하는 블록 행렬을 나타낸다.
다음으로 도 4를 참조하여 본 발명의 실시예에 따른 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식에 대해서 설명하기로 한다.
상기 도 4는 본 발명의 실시예에 따른 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식을 개략적으로 도시한 도면이다.
상기 도 4를 참조하면, 먼저 패리티 검사 행렬이
Figure 112007010297257-pat00026
개의 블록들을 포함한다고 가정하기로 한다. 그리고, 상기
Figure 112007010297257-pat00027
블록들 각각에는
Figure 112007010297257-pat00028
크기의 블록 행렬이 대응된다고 가정하기로 한다. 즉, 상기 패리티 검사 행렬은
Figure 112007010297257-pat00029
개의 행들과
Figure 112007010297257-pat00030
개의 열들을 포함한다. 따라서, 상기
Figure 112007010297257-pat00031
개의 행들은 p개의 블록 행들로 그룹화되며, 상기 p개의 블록 행들 각각은 L개의 행들을 포함하며, 상기
Figure 112007010297257-pat00032
개의 열들은 q개의 블록 열들로 그룹화되며, 상기 q개의 블록 열들 각각은 L개의 열들을 포함한다. 또한, 상기 도 4에 도시되어 있는 블록들중 사선 처리가 되어 있는 블록에는 순열 행렬이 대응됨을 나타내며, 사선 처리가 되어 있지 않은 블록에는 영 행렬이 대응됨을 나타낸다.
한편, PPS 그룹은 상기 q개의 블록 열들 각각에서 하나씩의 열만이 선택되어 그룹핑되며, 상기 PPS 그룹 내에서 행 웨이트(weight)가 1 이하가 되도록 생성된다. 상기 PPS 그룹의 일 실시예가 도 4에 도시되어 있다. 상기 도 4를 참조하면 상기 q개의 블록 열들 각각에서의 첫 번째 열만을 선택하여 제1 PPS 그룹을 생성하고, 상기 q개의 블록 열들 각각에서의 두 번째 열만을 선택하여 제2 PPS 그룹을 생성하고, 이런 식으로 하여 상기 q개의 블록 열들 각각에서의 L번째 열만을 선택하여 제L PPS 그룹을 생성한다. 따라서, 상기 제1 PPS 그룹 내지 제L PPS 그룹 각각은 q개의 열들을 포함한다. 또한, 상기 제1 PPS 그룹 내지 제L PPS 그룹 각각 내에서는 임의의 행의 웨이트가 미리 설정되어 있는 임계값 이하가 되도록 설정한다. 여기서, 상기 임계값은 1이라고 가정하기로 한다. 상기 제1 PPS 그룹 내지 제L PPS 그룹 각각 내에서는 임의의 블록 행의 웨이트가 1 이하가 되도록 설정하기 위해서 만족해야만 하는 조건은 임의의 블록 행에서 영 행렬이 아닌 순열 행렬이 대응되는 블록의 쉬프트 파라미터가 모두 다른 값을 갖도록 하는 것이다.
이렇게, 상기 제1 PPS 그룹 내지 제L PPS 그룹을 정의하고, 상기 제1 PPS 그룹 내지 제L PPS 그룹 각각 내에서 임의의 행의 웨이트가 1 이하가 되도록 설정하여 상기 패리티 검사 행렬을 생성할 경우 PPS 그룹 단위로 비트 노드 연산 순서를 스케쥴링하여 구조적 LDPC 부호를 복호하는 것이 가능해진다.
한편, 본 발명에서는 패리티 검사 행렬의 블록 열들 각각에 대해 비트 노드 프로세스 연산 수행시 그 비트 노드 프로세서가 연산을 수행하는 시작점의 위치를 나타내는 오프셋을 설정한 후, PPS 방식을 사용하여 LDPC 부호를 복호하도록 하는 장치 및 방법을 제안한다. 이렇게 오프셋을 설정한 후 PPS 방식을 사용하여 LDPC 부호를 복호하도록 함으로써 상기 패리티 검사 행렬의 임의의 블록 행에서 동일한 쉬프트 파라미터를 가지는, 0 행렬이 아닌 블록 행렬들이 존재할 경우라도 메모리 충돌(memory conflict) 현상이 발생하는 것을 방지하게 된다.
그러면 여기서 도 5를 참조하여 본 발명의 실시예에 따라 오프셋을 설정한 후 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식에 대해서 설명하기로 한다.
상기 도 5는 본 발명의 실시예에 따라 오프셋을 설정한 후 PPS 방식을 사용하여 구조적 LDPC 부호를 복호하는 방식을 개략적으로 도시한 도면이다.
상기 도 5를 설명하기에 앞서, 상기 도 5에 도시되어 있는 패리티 검사 행렬은 상기 도 4에서 설명한 패리티 검사 행렬과 유사한 구조를 나타내며, 다만 p = 4, q = 6, L = 10인 경우의 구조를 나타낸다. 또한, 상기 도 5에 도시되어 있는 블록들중 사선 처리가 되어 있는 블록에는 순열 행렬이 대응됨을 나타내며, 사선 처리가 되어 있지 않은 블록에는 영 행렬이 대응됨을 나타낸다. 그리고, 상기 도 5에 도시되어 있는 패리티 검사 행렬에서 두 번째 블록 행에서 첫 번째로 0 행렬이 대응되지 않는 블록(510)과, 세 번째 0 행렬이 대응되지 않는 블록(520)의 쉬프트 파라미터가 동일하다고 가정하기로 한다.
상기 도 5의 패리티 검사 행렬에 대하여 PPS 방식을 사용하여 구조적 LDPC 부호를 복호할 때, 모든 비트 노드 프로세서들이 블록 열들 각각의 첫 번째 열부터 연산을 수행한다고 가정하면, 상기 도 5의 패리티 검사 행렬에서 두 번째 블록 열 과 여섯 번째 블록 열에 대해 연산을 수행하는 비트 노드 프로세서들은 동일한 검사 노드에 대하여 연산을 수행하게 된다. 이 때, 두 개의 서로 다른 비트 노드 프로세서들이 동일한 어드레스(address)의 메모리에서 메시지를 리드(read)하게 되므로 메모리 충돌이 발생한다. 따라서, 본 발명에서는 패리티 검사 행렬의 블록 열들 각각에 대해 비트 노드 프로세서가 연산을 수행하는 시작점 위치를 나타내는 오프셋을 설정함으로써 메모리 충돌 발생을 방지하도록 한다.
상기 도 5에서는 6개의 블록 열들에 대해 {0, 4, 7, 1, 5, 2}의 오프셋을 설정하는 경우를 일 예로 하여 LDPC 부호를 복호하는 동작에 대해서 설명하기로 한다. 여기서, 상기 오프셋은 임의의 시점에서 L개의 비트 노드 프로세서들이 동일한 검사 노드를 참조하여 연산을 수행하지 않도록 설정되는 것이다. 즉, 상기 도 5에서는 6개의 블록 열들에 대해 {0, 4, 7, 1, 5, 2}의 오프셋을 설정함으로써 비트 노드 연산 수행시 두 번째 블록 열과 여섯 번째 블록 열의 메모리 충돌을 방지한다.
그러면 여기서 상기 도 5를 참조하여 상기 구조적 LDPC 부호를 1회 반복 복호(iterative decoding)할 경우, 즉 첫 번째 클럭 사이클(1st clock cycle)에서부터 L번째 클럭 사이클(Lst clock cycle)까지의 비트 노드 프로세서의 연산 수행 위치에 대해서 설명하면 다음과 같다. 여기서, 6개의 블록 열들 각각에서의 열의 위치를 0번 열부터 9번 열까지로 표시한다고 가정하기로 한다.
상기 도 5의 (a)에 도시되어 있는 바와 같이 첫 번째 클럭 사이클에서 각 블 록 열의 비트 노드 프로세서가 연산을 수행하는 비트 노드의 위치는 {0, 4, 7, 1, 5, 2}이 된다. 즉, 첫 번째 클럭 사이클에서 첫 번째 블록 열의 비트 노드 프로세서는 0번 열에서 연산을 수행하며, 두 번째 블록 열의 비트 노드 프로세서는 4번 열에서 연산을 수행하며, 세 번째 블록 열의 비트 노드 프로세서는 7번 열에서 연산을 수행하며, 네 번째 블록 열의 비트 노드 프로세서는 1번 열에서 연산을 수행하며, 다섯 번째 블록 열의 비트 노드 프로세서는 5번 열에서 연산을 수행하며, 여섯 번째 블록 열의 비트 노드 프로세서는 2번 열에서 연산을 수행한다.
상기 도 5의 (b)에 도시되어 있는 바와 같이 두 번째 클럭 사이클(2nd clock cycle)에서 각 블록 열의 비트 노드 프로세서가 연산을 수행하는 비트 노드의 위치는 {1, 5, 8, 2, 6, 3}이 된다. 즉, 두 번째 클럭 사이클에서 첫 번째 블록 열의 비트 노드 프로세서는 1번 열에서 연산을 수행하며, 두 번째 블록 열의 비트 노드 프로세서는 5번 열에서 연산을 수행하며, 세 번째 블록 열의 비트 노드 프로세서는 8번 열에서 연산을 수행하며, 네 번째 블록 열의 비트 노드 프로세서는 2번 열에서 연산을 수행하며, 다섯 번째 블록 열의 비트 노드 프로세서는 6번 열에서 연산을 수행하며, 여섯 번째 블록 열의 비트 노드 프로세서는 3번 열에서 연산을 수행한다.
상기 도 5의 (c)에 도시되어 있는 바와 같이 세 번째 클럭 사이클(3rd clock cycle)에서 각 블록 열의 비트 노드 프로세서가 연산을 수행하는 비트 노드의 위치는 {2, 6, 9, 3, 7, 4}이 된다. 즉, 세 번째 클럭 사이클에서 첫 번째 블록 열의 비트 노드 프로세서는 2번 열에서 연산을 수행하며, 두 번째 블록 열의 비트 노드 프로세서는 6번 열에서 연산을 수행하며, 세 번째 블록 열의 비트 노드 프로세서는 9번 열에서 연산을 수행하며, 네 번째 블록 열의 비트 노드 프로세서는 3번 열에서 연산을 수행하며, 다섯 번째 블록 열의 비트 노드 프로세서는 7번 열에서 연산을 수행하며, 여섯 번째 블록 열의 비트 노드 프로세서는 4번 열에서 연산을 수행한다.
이런 식으로, 상기 도 5의 (c)에 도시되어 있는 바와 같이 마지막 클럭 사이클인 L번째 클럭 사이클에서 각 블록 열의 비트 노드 프로세서가 연산을 수행하는 비트 노드의 위치는 {9, 3, 6, 0, 4, 1}이 된다. 즉, L 번째 클럭 사이클에서 첫 번째 블록 열의 비트 노드 프로세서는 9번 열에서 연산을 수행하며, 두 번째 블록 열의 비트 노드 프로세서는 3번 열에서 연산을 수행하며, 세 번째 블록 열의 비트 노드 프로세서는 6번 열에서 연산을 수행하며, 네 번째 블록 열의 비트 노드 프로세서는 0번 열에서 연산을 수행하며, 다섯 번째 블록 열의 비트 노드 프로세서는 4번 열에서 연산을 수행하며, 여섯 번째 블록 열의 비트 노드 프로세서는 1번 열에서 연산을 수행한다.
상기 도 5에서는 클럭 사이클이 증가함에 따라 오프셋이 1씩 증가하는 경우를 일 예로 하여 설명하였으나, 1이 아닌 임의의 값, 즉 k씩 증가하는 것이 가능함은 물론이다. 또한, 상기 도 5에서는 비트 노드 연산을 기준으로 하여 설명함에 따라 수직 형태로 PPS 방식을 사용하는 복호 동작이 설명되었다. 이와는 달리, 만약 검사 노드 연산을 기준으로 하여 설명할 경우에는 수평 형태로 PPS 방식을 사용하 여 복호 동작이 수행될 수도 있음은 물론이다.
다음으로 도 6을 참조하여 본 발명의 실시예에 따른 PPS 방식을 사용하는 LDPC 복호기의 구조에 대해서 설명하기로 한다.
상기 도 6은 본 발명의 실시예에 따른 PPS 방식을 사용하는 LDPC 복호기의 구조를 도시한 도면이다.
상기 도 6을 설명하기에 앞서, 패리티 검사 행렬이 L개의 PPS 그룹들을 포함하고, 상기 L개의 PPS 그룹들 각각은 3개의 블록 열들을 포함한다고 가정하기로 한다. 이 경우, 상기 LDPC 복호기는 메시지 저장부(610)와, 3개의 비트 노드 갱신부들(620-1~620-3)과, 스위칭부(630)와,
Figure 112008054631708-pat00033
개의 검사 노드 갱신부들(640-11~640-Dv3)와, 스위칭부(650)를 포함한다.
먼저, 상기 비트 노드 갱신부들(620-1~620-3)은 메시지 저장부(610)에 저장되어 있는 수신 데이터를 입력하여 비트 노드 연산을 수행하고, 그 비트 노드 연산 결과를 상기 스위칭부(630)를 통해 상기 검사 노드 갱신부들(640-11~640-Dv3)들로 출력한다. 여기서, 상기 비트 노드 갱신부들(620-1~620-3)은 그 비트 노드 연산 수행시 상기 도 5에서 설명한 바와 같은 오프셋을 설정할 수도 있다. 상기 비트 노드 갱신부들(620-1~620-3)이 오프셋을 설정하지 않을 수도 있음은 물론이다. 또한, 상기 비트 노드 연산 방식 자체는 본 발명과 직접적인 연관이 없으므로 그 상세한 설명을 생략하기로 한다. 상기 검사 노드 갱신부들(640-11~640-Dv3)은 상기 비트 노드 갱신부들(620-1~620-3)에서 갱신된 비트 노드에 연결된 이웃 검사 노드들에 대하여 검사 노드 연산을 수행하고, 그 검사 노드 연산 결과를 상기 스위칭부(680)를 통해 상기 메시지 저장부(610)에 저장한다. 여기서, 상기 검사 노드 연산 방식 자체는 본 발명과 직접적인 연관이 없으므로 그 상세한 설명을 생략하기로 한다.
상기 도 6에서 상기 비트 노드 갱신부(620-1)에서 갱신된 비트 노드에 연결된 이웃 검사 노드들은 검사 노드 갱신부들(640-11, 640-21, 640-31, ... , 640-Dv1)에서 각각 검사 노드 연산이 수행되고, 상기 비트 노드 갱신부(620-2)에서 갱신된 비트 노드에 연결된 이웃 검사 노드들은 검사 노드 갱신부들(640-12, 640-22, 640-32, ... , 640-Dv2)에서 각각 검사 노드 연산이 수행되고, 상기 비트 노드 갱신부(620-3)에서 갱신된 비트 노드에 연결된 이웃 검사 노드들은 검사 노드 갱신부들(640-13, 640-23, 640-33, ... , 640-Dv3)에서 각각 검사 노드 연산이 수행된다고 가정하기로 한다.
결과적으로, 상기 PPS 방식을 사용하여 LDPC 부호를 복호할 경우 각각의 비트 노드는 한번의 iteration 동작 내에서 한번씩 갱신되고, 검사 노드들은 자신과 이웃한 비트 노드가 갱신될 때마다 갱신된다. 상기 PPS 방식은 한번의 iteration 동작 내에서 먼저 갱신된 검사 노드 연산 결과가 누적되어 다음 비트 노드의 연산에 반영되도록 하는 방식으로서, 비트 에러 레이트(BER: Bit Error Rate, 이하 'BER'이라 칭하기로 한다) 성능의 수렴 속도가 빠르다. 즉, 상기 PPS 방식을 사용할 경우 비교적 적은 수의 iteration 동작을 수행하여도 그 BER 성능의 수렴 속도가 빠르게 된다는 것이다.
또한, 상기 도 6에서는 비트 노드 연산을 기준으로 하여 설명함에 따라 비트 노드 연산이 수행된 비트 노드들 각각에 대해, 해당 비트 노드에 연결되어 있는 모 든 검사 노드들의 검사 노드 연산을 수행하는 동작에 대해서 설명하였다. 그러나, 이와는 달리 검사 노드 연산을 기준으로 하여 설명할 경우에는 검사 노드 연산이 수행된 검사 노드들 각각에 대해, 해당 검사 노드에 연결되어 있는 모든 비트 노드들의 비트 노드 연산을 수행하는 것이 가능함은 물론이다.
한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같은 본 발명은, PPS 방식을 사용하여 LDPC 부호를 복호하는 것을 가능하게 하여 LDPC 부호의 복호 성능을 유지하면서도, LDPC 부호의 복호에 소요되는 시간을 감소시키는 것을 가능하게 한다는 이점을 가진다.

Claims (20)

  1. 통신 시스템의 신호 수신 장치에서 신호를 수신하는 방법에 있어서,
    저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
    Figure 112010009499747-pat00120
    개의 행들과
    Figure 112010009499747-pat00121
    개의 열들을 포함하고, 상기
    Figure 112010009499747-pat00122
    개의 행들은 p개의 블록 행들로 그룹화되며, 상기
    Figure 112010009499747-pat00123
    개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 q개의 블록 열들 각각에서 하나의 열을 포함할 경우,
    신호를 수신하는 과정과,
    상기 q개의 블록 열들 각각에 대해 해당 블록 열이 포함하는 L개의 열 중 비트 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 열별로 비트 노드 연산을 수행하는 과정과,
    상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 과정을 포함하며,
    상기 q개의 블록 열들의 오프셋들은 서로 다른 PPS 그룹에 포함된 열의 위치에 대응되며,
    상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 과정은 L-1번 반복 수행됨을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  2. 제1항에 있어서,
    상기 PPS 그룹이 포함하는 임의의 블록 행의 웨이트는 임계값 이하로 설정됨을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  3. 통신 시스템의 신호 수신 장치에서 신호를 수신하는 방법에 있어서,
    저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
    Figure 112010009499747-pat00124
    개의 행들과
    Figure 112010009499747-pat00125
    개의 열들을 포함하고, 상기
    Figure 112010009499747-pat00126
    개의 행들은 p개의 블록 행들로 그룹화되며, 상기
    Figure 112010009499747-pat00127
    개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 p개의 블록 행들 각각에서 하나의 행을 포함할 경우,
    신호를 수신하는 과정과,
    상기 p개의 블록 행들 각각에 대해 해당 블록 행이 포함하는 L개의 행 중 검사 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 행별로 검사 노드 연산을 수행하는 과정과,
    상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 과정을 포함하며,
    상기 p개의 블록 행들의 오프셋들은 서로 다른 PPS 그룹에 포함된 행의 위치에 대응되며,
    상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 과정은 L-1번 반복 수행됨을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  4. 통신 시스템의 신호 수신 장치에 있어서,
    저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
    Figure 112010009499747-pat00128
    개의 행들과
    Figure 112010009499747-pat00129
    개의 열들을 포함하고, 상기
    Figure 112010009499747-pat00130
    개의 행들은 p개의 블록 행들로 그룹화되며, 상기
    Figure 112010009499747-pat00131
    개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 q개의 블록 열들 각각에서 하나의 열을 포함할 경우,
    상기 q개의 블록 열들 각각에 대해 해당 블록 열이 포함하는 L개의 열 중 비트 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 설정된 오프셋들 각각에 상응하게 각 블록 열별로 비트 노드 연산을 수행하고, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 복호기를 포함하며,
    상기 q개의 블록 열들의 오프셋들은 서로 다른 PPS 그룹에 포함된 열의 위치에 대응되며,
    상기 복호기는 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 열별로 비트 노드 연산을 수행하는 동작을 L-1번 반복 수행함을 특징으로 하는 신호 수신 장치.
  5. 제4항에 있어서,
    상기 수신 신호를 수신하는 수신기를 더 포함하는 신호 수신 장치.
  6. 제4항에 있어서,
    상기 PPS 그룹이 포함하는 임의의 블록 행의 웨이트는 임계값 이하로 설정됨을 특징으로 하는 신호 수신 장치.
  7. 통신 시스템의 신호 수신 장치에 있어서,
    저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호의 패리티 검사 행렬이
    Figure 112010009499747-pat00132
    개의 행들과
    Figure 112010009499747-pat00133
    개의 열들을 포함하고, 상기
    Figure 112010009499747-pat00134
    개의 행들은 p개의 블록 행들로 그룹화되며, 상기
    Figure 112010009499747-pat00135
    개의 열들은 q개의 블록 열들로 그룹화되며, L개의 부분 병렬 스케쥴링(PPS: Partial Parallel Scheduling) 그룹 각각이 상기 p개의 블록 행들 각각에서 하나의 행을 포함할 경우,
    상기 p개의 블록 행들 각각에 대해 해당 블록 행이 포함하는 L개의 행 중 검사 노드 연산의 수행을 시작하는 시점의 위치를 나타내는 오프셋을 설정한 후, 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 복호기를 포함하며,
    상기 p개의 블록 행들의 오프셋들은 서로 다른 PPS 그룹에 포함된 행의 위치에 대응되며,
    상기 복호기는 상기 오프셋들을 재설정하고, 상기 재설정된 오프셋들 각각에 상응하게 상기 각 블록 행별로 검사 노드 연산을 수행하는 동작을 L-1번 반복 수행함을 특징으로 하는 신호 수신 장치.
  8. 제7항에 있어서,
    상기 수신 신호를 수신하는 수신기를 더 포함하는 신호 수신 장치.
  9. 제1항에 있어서,
    상기 비트 노드 연산이 수행된 비트 노드들 각각에 대해, 해당 비트 노드에 연결되어 있는 모든 검사 노드들의 검사 노드 연산을 수행하는 과정을 더 포함하는 신호 수신 장치의 신호 수신 방법.
  10. 삭제
  11. 제3항에 있어서,
    상기 검사 노드 연산이 수행된 검사 노드들 각각에 대해, 해당 검사 노드에 연결되어 있는 모든 비트 노드들의 비트 노드 연산을 수행하는 과정을 더 포함하는 신호 수신 장치의 신호 수신 방법.
  12. 제4항에 있어서,
    상기 복호기는 상기 비트 노드 연산이 수행된 비트 노드들 각각에 대해, 해당 비트 노드에 연결되어 있는 모든 검사 노드들의 검사 노드 연산을 수행함을 특징으로 하는 신호 수신 장치.
  13. 삭제
  14. 제7항에 있어서,
    상기 복호기는 상기 검사 노드 연산이 수행된 검사 노드들 각각에 대해, 해당 검사 노드에 연결되어 있는 모든 비트 노드들의 비트 노드 연산을 수행함을 특징으로 하는 신호 수신 장치.
  15. 제1항에 있어서,
    상기 L개의 PPS 그룹 중 L번째 그룹은,
    상기 q개의 블록 열들 각각에서 L번째 열을 포함함을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  16. 제3항에 있어서,
    상기 PPS 그룹이 포함하는 임의의 블록 열의 웨이트는 임계값 이하로 설정됨을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  17. 제3항에 있어서,
    상기 L개의 PPS 그룹 중 L번째 그룹은,
    상기 q개의 블록 행들 각각에서 L번째 행을 포함함을 특징으로 하는 신호 수신 장치의 신호 수신 방법.
  18. 제4항에 있어서,
    상기 L개의 PPS 그룹 중 L번째 그룹은,
    상기 q개의 블록 열들 각각에서 L번째 열을 포함함을 특징으로 하는 신호 수신 장치.
  19. 제7항에 있어서,
    상기 PPS 그룹이 포함하는 임의의 블록 열의 웨이트는 임계값 이하로 설정됨을 특징으로 하는 신호 수신 장치.
  20. 제7항에 있어서,
    상기 L개의 PPS 그룹 중 L번째 그룹은,
    상기 q개의 블록 행들 각각에서 L번째 행을 포함함을 특징으로 하는 신호 수신 장치.
KR1020070011098A 2007-02-02 2007-02-02 통신 시스템에서 신호 수신 장치 및 방법 KR100975695B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070011098A KR100975695B1 (ko) 2007-02-02 2007-02-02 통신 시스템에서 신호 수신 장치 및 방법
US12/024,336 US8051356B2 (en) 2007-02-02 2008-02-01 Apparatus and method for receiving signal in a communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070011098A KR100975695B1 (ko) 2007-02-02 2007-02-02 통신 시스템에서 신호 수신 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20080072392A KR20080072392A (ko) 2008-08-06
KR100975695B1 true KR100975695B1 (ko) 2010-08-12

Family

ID=39677209

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070011098A KR100975695B1 (ko) 2007-02-02 2007-02-02 통신 시스템에서 신호 수신 장치 및 방법

Country Status (2)

Country Link
US (1) US8051356B2 (ko)
KR (1) KR100975695B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577207B2 (en) * 2002-07-03 2009-08-18 Dtvg Licensing, Inc. Bit labeling for amplitude phase shift constellation used with low density parity check (LDPC) codes
US20040019845A1 (en) * 2002-07-26 2004-01-29 Hughes Electronics Method and system for generating low density parity check codes
US7864869B2 (en) 2002-07-26 2011-01-04 Dtvg Licensing, Inc. Satellite communication system utilizing low density parity check codes
CN101341659B (zh) * 2004-08-13 2012-12-12 Dtvg许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US8370711B2 (en) 2008-06-23 2013-02-05 Ramot At Tel Aviv University Ltd. Interruption criteria for block decoding
US8464129B2 (en) * 2008-08-15 2013-06-11 Lsi Corporation ROM list-decoding of near codewords
GB2463252B (en) * 2008-09-04 2010-09-01 Toshiba Res Europ Ltd A decoder and a method of decoding
US8386904B2 (en) * 2009-04-29 2013-02-26 Adeptence, Llc High speed low density parity check codes encoding and decoding
US8352846B2 (en) * 2009-05-07 2013-01-08 Adeptence, Llc Method an apparatus for low density parity check codes encoding and decoding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004186940A (ja) 2002-12-03 2004-07-02 Nec Corp 誤り訂正符号復号装置
KR20040092922A (ko) * 2003-04-29 2004-11-04 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
KR20050035729A (ko) * 2003-10-14 2005-04-19 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 방법
KR20070035115A (ko) * 2004-08-13 2007-03-29 더 디렉티브 그룹, 인크. 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985536B2 (en) * 2001-01-12 2006-01-10 International Business Machines Corporation Block coding for multilevel data communication
US6567465B2 (en) * 2001-05-21 2003-05-20 Pc Tel Inc. DSL modem utilizing low density parity check codes
US7000167B2 (en) * 2001-08-01 2006-02-14 International Business Machines Corporation Decoding low density parity check codes
US7484158B2 (en) * 2003-12-03 2009-01-27 Infineon Technologies Ag Method for decoding a low-density parity check (LDPC) codeword
CN101341659B (zh) 2004-08-13 2012-12-12 Dtvg许可公司 用于多输入多输出通道的低密度奇偶校验码的码设计与实现的改进
US7343548B2 (en) * 2004-12-15 2008-03-11 Motorola, Inc. Method and apparatus for encoding and decoding data
JP4526450B2 (ja) * 2005-06-30 2010-08-18 ルネサスエレクトロニクス株式会社 復号装置と方法並びにプログラム
US7818649B1 (en) * 2005-11-30 2010-10-19 Aquantia Corporation Efficient message passing scheme of iterative error correcting decoders
TWI313119B (en) * 2006-07-18 2009-08-01 Method and apparatus of fully distributed packet scheduling for a wireless network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004186940A (ja) 2002-12-03 2004-07-02 Nec Corp 誤り訂正符号復号装置
KR20040092922A (ko) * 2003-04-29 2004-11-04 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
KR20050035729A (ko) * 2003-10-14 2005-04-19 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 방법
KR20070035115A (ko) * 2004-08-13 2007-03-29 더 디렉티브 그룹, 인크. 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템

Also Published As

Publication number Publication date
US20080189589A1 (en) 2008-08-07
KR20080072392A (ko) 2008-08-06
US8051356B2 (en) 2011-11-01

Similar Documents

Publication Publication Date Title
KR100975695B1 (ko) 통신 시스템에서 신호 수신 장치 및 방법
KR100594818B1 (ko) 순차적 복호를 이용한 저밀도 패리티 검사 부호의 복호장치 및 그 방법
US8347170B2 (en) Method and apparatus for performing decoding using LDPC code
WO2014122772A1 (ja) 誤り訂正符号の検査行列のデータ構造、並びに誤り訂正符号の符号化率可変装置および可変方法
CN103155421A (zh) Ldpc多解码器架构
JP2008514106A (ja) Ldpcコードを用いた符号化及び復号化方法
US10484009B2 (en) Decoding method and decoder for low-density parity-check code
KR20080102902A (ko) 가변 부호화율을 가지는 ldpc 부호 설계 방법, 장치 및그 정보 저장 매체
KR100943602B1 (ko) 통신 시스템에서 신호 수신 장치 및 방법
KR102303379B1 (ko) 준-순환 저밀도 패리티 체크를 위한 설계 방법 및 장치
WO2015120719A1 (zh) 信息处理方法及装置
KR101216075B1 (ko) 채널 코드를 이용한 복호화 및 복호화 장치
CN111327330A (zh) 一种信息处理方法、设备及计算机存储介质
US20110179337A1 (en) Memory utilization method for low density parity check code, low density parity check code decoding method and decoding apparatus thereof
KR100819247B1 (ko) 통신 시스템에서 신호 송수신 장치 및 방법
CN101800627B (zh) 一种多码率兼容的高速ldpc编码器的硬件实现
US20160049962A1 (en) Method and apparatus of ldpc encoder in 10gbase-t system
CN107733441B (zh) 编码方法及装置、译码方法及装置
CN111525931B (zh) Ldpc译码器、ldpc译码方法、存储介质和电子设备
US20170288697A1 (en) Ldpc shuffle decoder with initialization circuit comprising ordered set memory
JP6472790B2 (ja) 共通ハードウェアリソースを共用する、異なる低密度パリティ検査(ldpc)符号のための低密度パリティ検査の符号化
CN108631913B (zh) 一种基于准循环低密度校验码的交织方法及相关设备
CN107786300B (zh) 一种数据发送方法及装置
CN115858230A (zh) 最大距离可分离码的构造、修复方法及相关装置
KR100698192B1 (ko) 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
FPAY Annual fee payment

Payment date: 20130730

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140730

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150730

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160728

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170728

Year of fee payment: 8