KR101434267B1 - 통신 시스템에서 신호 수신 장치 및 방법 - Google Patents
통신 시스템에서 신호 수신 장치 및 방법 Download PDFInfo
- Publication number
- KR101434267B1 KR101434267B1 KR1020070131454A KR20070131454A KR101434267B1 KR 101434267 B1 KR101434267 B1 KR 101434267B1 KR 1020070131454 A KR1020070131454 A KR 1020070131454A KR 20070131454 A KR20070131454 A KR 20070131454A KR 101434267 B1 KR101434267 B1 KR 101434267B1
- Authority
- KR
- South Korea
- Prior art keywords
- parity bit
- bit nodes
- decoding
- block
- punctured
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/11—Error 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/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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 using interleaving techniques
- H03M13/2792—Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
- H03M13/6368—Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
- H03M13/6393—Rate compatible low-density parity check [LDPC] codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
본 발명은 통신 시스템에서 신호 수신 장치 및 방법에 관한 것으로, 정보 비트 노드들과 천공되지 않은 패리티 비트 노드들을 포함하는 천공된 부호어 벡터를 수신하며, 상기 천공되지 않은 패리티 비트 노드들은 전체 패리티 비트 노드 중에서 각 패리티 비트 노드의 중요도에 따라 다수의 커널블록들로 분류되며 상기 다수의 커널블록들 중에서 부호율에 따라 적어도 하나 이상의 커널블록이 천공된 후 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들이고, 상기 천공된 부호어 벡터를 분석하여 상기 천공되지 않은 커널블록과 상기 천공된 커널블록을 파악하며, 상기 천공된 커널블록에 해당하는 패리티 비트 노드들에 0을 삽입하고, 미리 지정된 복호 우선순위 결정 알고리즘에 상기 천공되지 않은 커널블록을 반영하여 패리티 비트 노드의 복호 우선순위를 결정하며, 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들을 직렬 복호화하여 상기 전체 패리티 비트 노드를 복원함을 특징으로 한다.
저밀도 패리티 검사(LDPC: Low Density Parity Check), 천공(puncturing)
Description
본 발명은 통신 시스템에 관한 것으로, 특히 통신 시스템에서 신호를 수신하는 장치 및 방법에 관한 것이다.
통신 시스템은 점차 패킷 서비스 통신 시스템(packet service communication system) 형태로 발전하고 있으며, 패킷 서비스 통신 시스템은 고속 대용량 데이터 송수신에 적합하도록 설계되고 있다. 특히, 차세대 통신 시스템에서는 고속 데이터 송신 시에 그 성능 이득이 우수한 것으로 알려져 있으며, 송신 채널에서 발생하는 잡음에 의한 오류를 효과적으로 정정하여 데이터 송신의 신뢰도를 향상시킬 수 있는 장점을 가지는 저밀도 패리티 검사(LDPC: Low Density Parity Check) 부호를 사용하는 것을 적극적으로 고려하고 있다. 한편, 차세대 데이터 통신 시스템에서는 고속 대용량 데이터 송수신을 위해 하이브리드 자동 반복 요구(HARQ: Hybrid Automatic Repeat reQuest, 이하 'HARQ'라 칭하기로 한다) 방식과 적응적 변조 및 부호화(AMC: Adaptive Modulation and Coding, 이하 'AMC'라 칭하기로 한다) 방식 등과 같은 다양한 방식들이 제안된 바 있다. 여기서, 상기 HARQ 방식 및 AMC 방식 등과 같은 방식들이 사용되기 위해서는 다양한 부호율(code rate)이 지원되어야만 한다. 이렇게, 다양한 부호율을 지원하기 위해 사용되는 대표적인 방식이 천공(puncturing) 방식이다. 상기 천공 방식에 대해서 구체적으로 설명하면 다음과 같다.
먼저, 신호 송신 장치는 사용하는 부호율에 따라 부호어(codeword)가 포함하는 패리티 비트들(parity bits) 중 일부를 천공하여 신호 수신 장치로 송신한다. 여기서, 상기 신호 송신 장치는 천공 패턴을 사용하여 상기 부호어가 포함하는 패리티 비트들 중 일부를 천공하는 것이며, 상기 천공 패턴은 상기 신호 신호 송신 장치와 신호 수신 장치간에 미리 인식하고 있다. 이하, 설명의 편의상 패리티 비트들 중 일부가 천공된 부호어를 '천공 부호어'라고 칭하기로 한다.
그러면 여기서, 도 1a를 참조하여 신호 송신 장치가 패리티 비트들을 생성하는 것을 설명하고자 한다.
상기 신호 송신 장치는 도 1에서 도시한 바와 같은 패리티 검사 행렬(105)을 이용하여 패리티 비트 노드들을 생성하고, 천공 패턴에 따라 생성된 패리티 비트 노드들 중에서 일부를 천공하여 천공 부호어를 생성하고, 생성된 천공 부호어를 신호 수신 장치로 송신한다.
여기서 패리티 검사 행렬(105)은 101 행렬과 103행렬을 포함하며, 상기 101행렬은 정보 부분을 나타내며, 103 행렬은 패리티 부분을 나타낸다. 그리고 본 발명을 간단히 설명하기 위해, 상기 101 행렬은 32개의 정보 비트 노드를 포함하며 상기 103 행렬은64개의 패리티 비트 노드를 포함한다고 가정한다. (k=32, m=64) 그리고 103 행렬은 이중 대각 행렬이며, 이중 대각 원소들의 값은 '1'이며 나머지 원소들의 값은 '0'이라고 가정한다.그리고 신호 수신 장치가 상기 천공 부호어를 수신하여 정보 벡터(information vector)로 복호하는 방식은 다양하게 존재할 수 있으며, 이에 대해서 도 1b를 참조하여 구체적으로 설명하고자 한다.
그리고 본 발명을 간단히 설명하기 위해, 상기 신호 수신 장치는 도 1a에 도시한 패리티 검사 행렬(105)이 미리 설정되어 있는 것으로 가정한다.
도 1b에서 149 스케줄 방식은 플러딩 스케줄 방식을 도시한 것이며, 0번째, 4번째, 8번째, 12번째, 16번째,…, 60번째 패리티 비트 노드(107,115,123,131,139,…,141)는 신호 송신 장치로부터 수신된 패리티 비트 노드들, 즉 신호 송신 장치에서 천공되지 않은 패리티 노드들을 나타내며, 1-3번째, 5-7번째, 9-11번째, 13-15번째,…, 61-63번째 패리티 비트 노드(109,111,113,117,119,121,125,127,129, 133,135,137,…, 143,145,147)는 신호 송신 장치로부터 수신되지 않은 패리티 비트 노드들, 즉 신호 송신 장치에서 천공된 패리티 노드들을 나타낸다.
상기 플러딩 스케줄 방식은 천공되지 않은 패리티 비트 노드들을 병렬 처리하여 천공된 패리티 비트 노드들을 복호하는 방식을 말하며, 상기 복호 처리를 반복(iteration) 수행하여 천공된 패리티 비트 노드들을 복원한다.
여기서, 1번 반복은 전체 패리티 비트 노드들에 대하여 1번 복호 처리하는 것을 말하며, p번 반복은 전체 패리티 비트 노드들에 대하여 p번 복호 처리하는 것을 말한다. 그리고 천공된 패리티 비트 노드가 복호 처리를 p번 반복한 후에 복원 되는 경우, 즉 p번 반복이 진행된 후에 의미 있는 값이 채워지는 경우, p-단계 복구(p-SR: p-Step Recovery, 이하 'p-SR'이라 한다)라고 말한다.
상기 플러딩 스케줄 방식을 적용하여 복호하는 신호 수신 장치는 1번째 복호 처리를 수행하면, 0번째, 4번째, 8번째, 12번째, 16번째,…,60번째 패리티 비트 노드(107,115,123,131,139,…,141)를 이용하여 이웃하는 1번째, 3번째, 5번째, 7번째, 9번째, 11번째, 13번째, 15번째,…, 61번째, 63번째 패리티 비트 노드(109,113,117,121,125,129,133,137,…,143,147)를 복원한다. 따라서, 상기 1번째, 3번째, 5번째, 7번째, 9번째, 11번째, 13번째, 15번째,…, 61번째, 63번째 패리티 비트 노드(109,113,117,121,125,129,133, 137,…,143,147)는 1-SR 패리티 비트 노드들이 된다.
그리고 신호 수신 장치는 2번째 복호 처리를 진행하면, 상기 복원된 1번째, 3번째, 5번째, 7번째, 9번째, 11번째, 13번째, 15번째,…,61번째, 63번째 패리티 비트 노드(103,107,111,115,119,123,127,131,…,137,141)를 이용하여 이웃하는 2번째, 6번째, 10번째, 14번째,…,62번째(111,119,127,135,…,145) 패리티 비트 노드를 복원한다. 따라서, 상기 2번째, 6번째, 10번째, 14번째,…,62번째(111,119,127,135,…,145) 패리티 비트 노드는 2-SR 패리티비트 노드들이 된다. 이와 같이, 신호 수신 장치는 2-SR가 진행되면, 전체 패리티 비트 노드들을 복호할 수 있다.
도 1b에서 193 스케줄 방식은 변수 노드 기반 직렬 스케줄(variable node based serial schedule) 방식을 도시한 것이며, 0번째, 4번째, 8번째, 12번째, 16 번째,…, 60번째 패리티 비트 노드(151,159,167,175,183,…,185)는 신호 송신 장치로부터 수신된 패리티 비트 노드들을 나타내며, 1-3번째, 5-7번째, 9-11번째, 13-15번째,…,61-63번째 패리티 비트 노드(153,155,157,161,163,165,169,171,173, 177,179,181,…,187,189,191)는 신호 송신 장치로부터 수신되지 않은 패리티 비트 노드들을 나타낸다.
상기 변수 노드 기반 직렬 스케줄 방식은 천공되지 않은 패리티 비트 노드들을 직렬 처리하여 천공된 패리티 비트 노드들을 복호하는 방식을 말하며, 상기 복호 처리를 한 번 수행하여 천공된 패리티 비트 노드들을 모두 복원한다.
상기 변수 노드 기반 직렬 스케줄 방식을 적용하여 복호하는 신호 수신 장치가 패리티 비트 노드들 순차적으로 복호하는 경우, 복원된 패리티 비트 노드의 값이 바로 이웃하는 패리티 비트 노드로 전달되기 때문에 1번의 복호 처리로 전체 패리티 비트 노드들을 복원한다. 즉, 신호 수신 장치는 0번째 패리티 비트 노드(151)를 이용하여 1번째 패리티 비트 노드(153)를 복원하며, 상기 복원된 1번째 패리티 비트 노드(153)를 이용하여 2번째 패리티 비트 노드(155)를 복원하고, 상기 복원된 2번째 패리티 비트 노드(155)를 이용하여 3번째 패리티 비트 노드(157)를 복원한다. 이와 같이, 신호 수신 장치는 1번째 패리티 비트 노드(153) 내지 63번째 패리티 비트 노드(191)를 1번의 복호 처리로 복원한다.
그러나 상기 플러딩 스케줄 방식은 천공된 패리티 비트 노드를 복원할 때, 복호 처리가 여러 번 반복되기 때문에, 복호 수렴 속도가 일정 시간 소요되는 문제점이 있었다.
그리고 상기 변수 노드 기반 직렬 스케줄 방식은 천공된 패리티 비트 노드를 복원할 때, 천공되지 않은 패리티 비트 노드와 천공된 패리티 비트 노드간의 거리가 멀수록 천공된 패리티 비트 노드는 의미없는 값을 받아들여 복호 효과가 떨어지는 문제점이 있었다.
따라서, 통신 시스템에서 신호 수신 장치는 복호 수렴 속도를 향상시키고 복호 효과를 일정 이상 유지하는 스케줄 방식에 대한 필요성이 높아지고 있다.
상기한 과제를 해결하기 위한, 통신 시스템에서 신호 수신 방법에 있어서, 정보 비트 노드들과 천공되지 않은 패리티 비트 노드들을 포함하는 천공된 부호어 벡터를 수신하며, 상기 천공되지 않은 패리티 비트 노드들은 전체 패리티 비트 노드 중에서 각 패리티 비트 노드의 중요도에 따라 다수의 커널블록들로 분류되고 상기 다수의 커널블록들 중에서 부호율에 따라 적어도 하나 이상의 커널블록이 천공된 후 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들이고, 상기 천공된 부호어 벡터를 분석하여 상기 천공되지 않은 커널블록과 상기 천공된 커널블록을 파악하며, 상기 천공된 커널블록에 해당하는 패리티 비트 노드들에 0을 삽입하고, 미리 지정된 복호 우선순위 결정 알고리즘에 상기 천공되지 않은 커널블록을 반영하여 패리티 비트 노드의 복호 우선순위를 결정하며, 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들을 직렬 복호화하여 상기 전체 패리티 비트 노드를 복원함을 특징으로 한다.
상기한 과제를 해결하기 위한, 통신 시스템에서 신호 수신 장치에 있어서, 정보 비트 노드들과 천공되지 않은 패리티 비트 노드들을 포함하는 천공된 부호어 벡터를 수신하는 수신부와, 상기 천공되지 않은 패리티 비트 노드들은 전체 패리티 비트 노드 중에서 각 패리티 비트 노드의 중요도에 따라 다수의 커널블록들로 분류되며 상기 다수의 커널블록들 중에서 부호율에 따라 적어도 하나 이상의 커널블록이 천공된 후 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들이고, 상기 천공된 부호어 벡터를 분석하여 상기 천공되지 않은 커널블록과 상기 천공된 커널블록을 파악하며, 상기 천공된 커널블록에 해당하는 패리티 비트 노드들에 0을 삽입하며, 미리 지정된 복호 우선순위 결정 알고리즘에 상기 천공되지 않은 커널블록을 반영하여 패리티 비트 노드의 복호 우선순위를 결정하고, 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 상기 천공되지 않은 커널블록에 포함된 패리티 비트 노드들을 직렬 복호화하여 상기 전체 패리티 비트 노드를 복원하는 직렬 복호화부를 포함함을 특징으로 한다.
따라서, 본 발명은 통신 시스템에서 신호 수신 장치가 신호를 수신할 때, 일반적인 변수 노드 기반 직렬 스케줄 방식의 디코딩 순서를 변경하는 제안된 변수 노드 기반 직렬 스케줄 방식을 이용하여 복호 수렴 속도를 향상시킬 수 있다.
그리고 본 발명은 통신 시스템에서 신호를 수신할 때, 상기 제안된 스케줄 방식을 이용하여 복호 효과를 일정 이상 유지할 수 있다.
그리고 본 발명은 통신 시스템에서 신호를 수신할 때, 상기 제안된 스케줄 방식을 이용하여 복호 수렴 속도를 향상시키고 복호 효과를 일정 이상 유지할 수 있다.
이하 본 발명의 바람직한 실시 예들을 첨부한 도면을 참조하여 상세히 설명한다. 또한, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
본 발명에서 신호 송신 장치는 전체 패리티 비트 노드를 다수의 커널블록들로 분류하며, 채널 상태에 따라 다수의 커널블록들 중에서 적어도 하나 이상의 커널블록을 천공하며, 상기 천공이 수행되지 않은 적어도 하나 이상의 커널블록을 포함하는 저밀도 패리티 검사 부호를 생성하여 송신한다. 그리고 신호 수신 장치는 상기 저밀도 패리티 검사 부호를 수신하며, 상기 수신된 저밀도 패리티 검사 부호를 분석하여 상기 천공이 수행되지 않은 커널블록을 파악하며, 미리 지정된 복호 우선순위 결정 알고리즘에 상기 파악된 커널블록을 반영하여 패리티 비트 노드의 복호 우선순위를 결정하고, 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 상기 파악된 커널블록을 직렬 복호화하는 방안을 제안한다.
여기서 상기 직렬 복호화는 변수 노드 기반 직렬 스케줄링 방식을 이용하여 복호하는 것이다. 그리고 상기 변수 노드 기반 직렬 스케줄링 방식은 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 천공되지 않은 패리티 비트 노드들과 천공된 패리티 비트 노드들을 배열하고, 상기 배열된 순서대로 패리티 비트 노드들을 직렬 복호화하는 방식이다.
그리고 복호 우선순위가 동일한 패리티 비트 노드들을 배열할 때, 신호 수신 장치가 동일한 패리티 비트 노드들을 순서에 상관없이 무작위로 배열하는 것을 제안한다. 그리고 복호 우선순위가 동일한 패리티 비트 노드들을 복호화할 때, 신호 수신 장치가 동일한 패리티 비트 노드들을 동시에 복호하는 부분 병렬 복호화를 수행하는 것을 제안한다.
본 발명에 따른 신호 송신 장치는 다양한 천공 패턴에 따라 저밀도 패리티 검사 부호를 생성하여 송신할 수 있으나, 바람직하게는 출원번호 KR-2006-0011685에 기재된 천공 패턴에 따라 블록 저밀도 패리티 검사 부호를 생성하여 송신할 수 있다.
도 2a는 본 발명의 실시 예에 따른 신호 송신 장치의 블록 구성도이다. 도 2a를 참조하여 신호 송신 장치의 구성을 간단히 설명하고자 한다.
도 2a에서 신호 송신 장치는 부호화부(encoder)(201)와 변조부(modulator)(203)와 송신부(205)를 포함한다.
각각의 구성요소들을 살펴보면, 부호화부(201)는 송신하고자 하는 정보 데이터를 입력받아 미리 설정되어 있는 부호화 방식으로 부호화하여 부호 데이터를 생 성하고, 상기 부호 데이터를 송신하고자 하는 부호율에 따라 천공하여 부호 데이터를 생성한 후 변조부(203)로 출력한다. 그리고 변조부(203)는 부호 데이터를 입력받아 미리 설정되어 있는 변조 방식으로 변조하여 변조 데이터를 생성한 후 송신부(205)로 출력한다. 그리고 송신부(205)는 상기 변조된 정보 데이터를 입력받아 송신 신호 처리한 후 안테나를 통해 송신한다.
도 2b는 본 발명의 실시 예에 따른 부호화부(201)의 블록 구성도이다. 도 2a 내지 도 2b을 참조하여 부호화부(201)의 동작을 설명하고자 한다.
도 2b에서 부호화부(201)는 저밀도 패리티 부호화부(207)와 천공부(209)를 포함한다.
각각의 구성요소들을 살펴보면, 저밀도 패리티 부호화부(207)는 정보 데이터를 입력받고, 미리 설정되어 있는 저밀도 패리티 검사 부호화 방식을 이용하여 상기 입력된 정보 데이터를 부호화하여 저밀도 패리티 검사 부호 데이터를 생성한 후 천공부(209)로 출력한다. 그리고 천공부(209)는 저밀도 패리티 부호화부(207)로부터 저밀도 패리티 검사 부호 데이터를 입력받고, 미리 지정된 부호율에 따라 상기 저밀도 패리티 검사 부호 데이터를 천공하여 최종 저밀도 패리티 검사 부호 데이터를 생성한다.
이때, 상기 저밀도 패리티 검사 부호를 구성하는 H 행렬은 정보 부분과 패리티 부분을 포함하며, 상기 패리티 부분을 구성하는 패리티 검사 행렬은 이중 대각 행렬(dual-diagonal matrix)로 나타나며, 상기 이중 대각 행렬의 원소들의 값은 '1'이며 나머지 원소들의 값은 '0' 이다. 그리고 상기 H 행렬은 (n, n-k)로 나타낼 수 있다. 여기서, k는 정보 부분의 길이, n은 부호어의 길이, n-k=m이며, 상기 m은 패리티 부분의 길이를 나타낸다. 상기 패리티 부분(m)에 포함된 패리티 비트 노드들은 패리티 비트 노드의 천공 우선순위에 따라 i개의 커널블록들( 부터 )로 분류되며, i는 임의의 정수이다.
천공부(209)는 전체 패리티 비트들 중에서 j+1번째 커널블록()부터 i번째 커널블록()에 포함된 패리티 비트 노드를 천공할 수 있다. 상기 j는 임의의 정수이고, j의 범위는 1 이상이며 i 미만()이다. 즉, 천공부(209)는 1번째 커널블록()부터 j번째 커널블록()에 포함된 패리티 비트 노드를 천공하지 않는다. 그리고 상기 천공부(209)가 출력하는 패리티 부분의 길이를 이라 하며 천공된 부호어 부분의 길이를 이라 하고, 의 범위는 0 초과 m 미만()이며 의 범위는 0 초과 n 미만() 이다.
도 3a는 본 발명의 실시 예에 따른 패리티 검사 행렬(H)의 예시도 이다. 도 3a에서, 패리티 검사 행렬(105)은 301 행렬과 303 행렬을 포함하며, 301 행렬은 정보 부분을 나타내며, 303 행렬은 패리티 부분을 나타낸다. 그리고 본 발명을 간단히 설명하기 위해, 상기 301 행렬은 32개의 정보 비트 노드를 포함하며, 상기 303 행렬은64개의 패리티 비트 노드를 포함한다고 가정한다. (k=32, m=64)
그리고 303 행렬은 이중 대각 행렬이며, 이중 대각 원소들의 값은 '1'이며 나머지 원소들의 값은 '0'이 될 수 있다. 이때, 상기 패리티 부분이 64개의 패리티 비트 노드를 포함하며 i=5인 경우, 천공부(209)는 다음과 같은 <수학식 1>에 따라 상기 수신된 저밀도 패리티 검사 부호 데이터를 천공할 수 있다.
상기 는 i번째 커널 블록을 나타내며, i의 범위는 1 이상이며 5 이하이다. 그리고 는 i번째 커널 블록에서 천공되는 패리티 비트 노드를 말하며, i의 범위는 1 이상이며 5 이하이다.
즉, 1번째 커널블록()은 에 따라 0번째 내지 63번째 패리티 비트 노드들 중에서 0번째, 16번째, 32번째, 48번째 패리티 비트 노드를 천공하는 것을 말한다. 그리고 2번째 커널블록()은 에 따라 0번째 내지 63번째 패리티 비트 노드들 중에서 8번째, 24번째, 40번째, 56번째 패리티 비트 노드를 천공하는 것을 말한다. 그리고 3번째 커널블록()은 에 따라 0번째 내지 63번째 패리티 비트 노드들 중에서 4번째, 12번째, 20번째, 28번째, 36번째, 44번째, 52번째, 60번째 패리티 비트 노드를 천공하는 것을 말한다. 그리 고 4번째 커널블록()은 에 따라 0번째 내지 63번째 패리티 비트 노드들 중에서 2번째, 6번째, 10번째, 14번째, 18번째,…, 58번째, 62번째 패리티 비트 노드를 천공하는 것을 말한다. 마지막으로 5번째 커널블록()은 에 따라 0번째 내지 63번째 패리티 비트 노드들 중에서 1번째, 3번째, 5번째, 7번째, 9번째,…, 63번째 패리티 비트 노드를 천공하는 것을 말한다.
천공부(209)는 송신할 정보 비트 노드들의 중요도에 따라 코드율을 결정하고, 상기 결정된 코드율에 따라 <수학식 1>을 이용하여 전체 64개의 패리티 비트 노드 중에서 다수의 패리티 비트 노드들을 천공한다.
도 3b는 본 발명의 실시 예에 따른 천공부(209)가 송신할 정보 비트 노드들의 중요도에 따라 전체 패리티 비트 노드 중에서 다수의 패리티 비트 노드들을 천공하는 예시도 이다. 이제부터 도 2a 내지 도 3b를 참조하여 천공부(209)가 정보 비트 노드들의 중요도에 따라 패리티 비트 노드들을 천공하는 과정을 설명하고자 한다.
307 패리티 비트 노드는 코드율이 4/5인 경우에 천공되는 패리티 비트 노드들을 나타내며, 309 패리티 비트 노드는 코드율이 2/3인 경우에 천공되는 패리티 비트 노드들을 나타내며, 311 패리티 비트 노드는 코드율이 1/2인 경우에 천공되는 패리티 비트 노드들을 나타내고, 313 패리티 비트 노드는 코드율이 1/3인 경우에 천공되는 패리티 비트 노드들을 나타낸다.
천공부(209)는 송신할 정보 비트 노드들의 중요도에 따라 코드율을 결정한 다. 그리고 천공부(209)는 상기 결정된 코드율이 4/5인 경우에 <수학식 1>을 이용하여 전체 패리티 비트 노드 중에서 3번째, 4번째, 5번째 커널블록(, , )에 포함된 패리티 비트 노드들을 천공한다. 즉, 천공부(209)는 307 패리티 비트 노드와 같이 0번째, 8번째, 16번,…,56번째 패리티 비트 노드를 천공하지 않고 나머지 패리티 비트 노드들을 천공한다.
그리고 상기 결정된 코드율이 2/3인 경우, 천공부(209)는 <수학식 1>을 이용하여 전체 패리티 비트 노드 중에서 4번째, 5번째 커널블록(, )에 포함된 패리티 비트 노드들을 천공한다. 그리고 상기 결정된 코드율이 1/2인 경우, 천공부(209)는 <수학식 1>을 이용하여 전체 패리티 비트 노드 중에서 5번째 커널블록()에 포함된 패리티 비트 노드들을 천공한다. 그리고 상기 결정된 코드율이 1/3인 경우, 천공부(209)는 전체 패리티 비트 노드를 천공하지 않는다.
도 3c는 본 발명의 실시 예에 따른 천공부(209)가 전체 패리티 비트 노드를 동일한 커널 블록별로 배열하고, 상기 배열된 커널 블록에 포함된 패리티 비트 노드들을 배열하는 도면이다.
이제부터 도 2a 내지 도 3c를 참조하여 천공부(209)에 포함된 버퍼(미도시)가 커널블록 순위에 따라 커널블록들을 배열하고, 상기 배열된 커널블록에 포함된 패리티 비트 노드들을 미리 지정된 순서대로 셔플링(shuffling)하는 과정을 설명하고자 한다.
315 패리티 비트 노드는 코드율이 1/3인 경우, 천공부(209)가 출력하는 패리 티 비트 노드들을 나타낸다. 그리고 327 패리티 비트 노드는 천공부(209)의 버퍼(미도시)가 커널블록 순위에 따라 커널블록들을 배열하는 것을 나타낸다. 좀 더 자세히 설명하면, 천공부(209)의 버퍼(미도시)는, <수학식 1>의 커널블록 순위를 참조하여, 0번째, 16번째, 32번째, 48번째 패리티 비트 노드를 포함하는 1번째 커널블록(317)을 생성하며, 8번째, 24번째, 40번째, 56번째 패리티 비트 노드를 포함하는 2번째 커널블록(319)을 생성하고, 4번째, 12번째 20번째, 28번째, 36번째, 44번째, 52번째, 60번째 패리티 비트 노드를 포함하는 3번째 커널블록(321)을 생성하며, 2번째, 6번째,…,62번째 패리티 비트 노드를 포함하는 4번째 커널블록(323)을 생성하고, 1번째, 3번째,…,61번째, 63번째 패리티 비트 노드를 포함하는 5번째 커널블록(325)을 생성한다. 그리고 천공부(209)의 버퍼(미도시)는 커널블록 순위에 따라 1번째 커널블록(317)부터 5번째 커널블록(325)까지 순서대로 배열하여 327 패리티 비트 노드를 생성한다.
그리고 339 패리티 비트 노드는 천공부(209)의 버퍼(미도시)가 커널블록별로 포함된 패리티 비트 노드들을 미리 지정된 순서대로 셔플링하는 것을 나타낸다. 좀 더 자세히 설명하면, 천공부(209)의 버퍼(미도시)는 0번째, 16번째, 32번째, 48번째 패리티 비트 노드 순서로 배열된 1번째 커널블록(317)을 미리 지정된 순서대로 패리티 비트 노드 순서를 변경하여 0번째, 32번째, 16번째, 48번째 패리티 비트 노드 순서로 배열된 최종 1번째 커널블록(329)을 생성한다. 그리고 천공부(209)의 버퍼(미도시)는 8번째, 24번째, 40번째, 56번째 패리티 비트 노드 순서로 배열된 2번째 커널블록(319)을 미리 지정된 순서대로 패리티 비트 노드 순서를 변경하여 8번 째, 40번째, 24번째, 56번째 패리티 비트 노드 순서로 배열된 최종 2번째 커널블록(331)을 생성한다. 그리고 천공부(209)의 버퍼(미도시)는 4번째, 12번째, 20번째, 28번째, 36번째, 44번째, 52번째, 60번째 패리티 비트 노드 순서로 배열된 3번째 커널블록(321)을 미리 지정된 순서대로 패리티 비트 노드 순서를 변경하여 4번째, 36번째, 20번째, 52번째, 12번째, 44번째, 28번째, 60번째 패리티 비트 노드 순서로 배열된 최종 3번째 커널블록(321)을 생성한다.
이와 같이, 천공부(209)의 버퍼(미도시)는 4번째 커널블록(323)에 포함된 패리티 비트 노드의 배열 순서를 미리 지정된 순서대로 변경하여 최종 4번째 커널블록(335)을 생성하고, 5번째 커널블록(325)에 포함된 패리티 비트 노드의 배열 순서를 미리 지정된 순서대로 변경하여 최종 5번째 커널블록(337)을 생성한다.
지금까지, 도 3c을 참조하여 코드율이 1/3인 경우에 천공부(209)의 버퍼(미도시)가 커널블록 순위대로 커널블록들을 배열하고, 상기 배열된 커널블록들에 포함된 패리티 비트 노드들을 셔플링하는 과정을 설명하였다. 그러나 천공부(209)의 버퍼(미도시)는 상기 코드율이 1/3이 아닌 경우에도 상기한 과정을 수행할 수 있다.
예를 들면, 코드율이 1/2인 경우, 천공부(209)는 전체 패리티 비트 노드 중에서 5번째 커널블록()에 포함된 패리티 비트 노드들을 천공하므로, 천공부(209)의 버퍼(미도시)는 1번째 커널블록(317)부터4번째 커널블록(323) 순서대로 커널블록들을 배열하고, 상기 배열된 1번째 커널블록(317)부터 상기 배열된 4번째 커널블록(323)에 포함된 패리티 비트 노드들을 미리 지정된 순서대로 셔플링할 수 있다.
도 4a는 본 발명의 실시 예에 따른 신호 수신 장치의 블록 구성도이다. 이제부터 도 4a를 참조하여 신호 수신 장치의 구성요소들을 설명하고자 한다.
도 4a에서 신호 수신 장치는 수신부(401)와 복조부(403)와 복호화부(405)를 포함하여 구성된다.
각각의 구성요소들을 살펴보면, 수신부(401)는 신호 송신 장치가 송신한 신호를 수신하며, 상기 수신된 신호를 신호 처리하여 신호 처리된 수신 신호를 생성하고, 상기 신호 처리된 수신 신호를 복조부(403)로 출력한다. 그리고 복조부(403)는 수신부(401)로부터 상기 신호 처리된 수신 신호를 입력받아 미리 지정된 복조 방식으로 복조하여 복조된 수신 신호를 생성하고, 상기 복조된 수신 신호를 복호화부(405)로 출력한다. 그리고 복호화부(405)는 상기 복조된 수신 신호를 입력받아 미리 설정된 복호화 방식으로 복호화하여 원본 데이터를 생성하고, 상기 생성된 원본 데이터를 출력한다.
도 4b는 본 발명의 실시 예에 따른 복호화부(405)의 블록 구성도이다. 이제부터 도 4a 내지 도 4b를 참조하여 복호화부(405)의 구성요소들을 설명하고자 한다.
도 4b에서 복호화부(405)는 천공 확인부(407)와 우선순위 결정부(409)와 변수노드 스케쥴링부(411)와 직렬 복호화부(413)와 신드롬(syndrome) 검사부(415)와 복호 결과 출력부(417)를 포함한다.
각각의 구성 요소들을 살펴보면, 천공 확인부(407)는 상기 수신 신호에 포함된 천공된 부호어(), 즉 저밀도 패리티 검사 부호를 분석하여 전체 비트 노 드(n), 즉 정보 비트 노드들과 패리티 비트 노드들, 중에서 천공되지 않은 비트 노드들()과 천공된 비트 노드들(n-)을 확인한다. 이때, 천공 확인부(407)는 천공되지 않은 비트 노드들 각각에 대응되는 로그 우도율(LLR: Log Likelihood Ratio)들을 계산하고, 천공된 비트 노드들 각각에 대응되는 로그 우도율들을 '0'으로 설정한다. 그리고 천공 확인부(407)는 상기 전체 비트 노드들 중에서 패리티 비트 노드들의 천공 여부에 관한 정보를 생성하고, 상기 패리티 비트 노드들의 천공 여부에 관한 정보를 우선순위 결정부(409)로 출력한다.
그리고 우선순위 결정부(409)는 상기 패리티 비트 노드들의 천공 여부에 관한 정보를 이용하여 패리티 비트 노드들을 복호화할 때의 순서를 나타내는 패리티 비트 노드의 복호 우선순위를 결정한다.
여기서 패리티 비트 노드들은 패리티 비트 노드의 천공 우선순위에 따라 i개의 커널블록들( 부터 )로 분류되며, i는 임의의 정수이다. 그리고 패리티 비트 노드들 중에서 1번째 커널블록()부터 j번째 커널블록()에 포함된 패리티 비트 노드들이 천공되지 않고 송신되며, j+1번째 커널블록()부터 i번째 커널블록()에 포함된 패리티 비트 노드들이 천공되어 송신되지 않는 것으로 가정한다. 따라서 송신된 패리티 비트 노드들은 1번째 커널블록()부터 j번째 커널블록()에 포함된 패리티 비트 노드들이므로, 상기 패리티 비트 노드의 복호 우선순위는 에 포함된 패리티 비트 노드들이 가장 높은 것으로 설정하며, 그 다음 은 , , ,…, , 순으로 상기 패리티 비트 노드의 복호 우선순위를 정한다.
지금까지 설명한 패리티 비트 노드의 복호 우선순위를 수학식으로 정리하면 다음과 같다.
…
여기서 은 패리티 비트 노드의 복호 우선순위 그룹을 나타내며, 상기 j는 상기 저밀도 패리티 검사 부호에 포함된 상기 적어도 하나 이상의 커널블록 개수를 나타내고, 상기 j의 범위는 이고, 상기 i는 상기 전체 패리티 비트 노드를 분류한 커널블록 개수를 나타내며, i는 임의의 정수이고, , 는 커널블록을 나타낸다.
이때, 우선순위 결정부(409)는 상기 패리티 비트 노드의 천공 여부에 관한 정보를 입력받으면, 천공되지 않은 패리티 비트 노드들을 파악하며, 상기 파악된 천공되지 않은 패리티 비트 노드들을 이용하여 상기 송신된 커널블록들을 파악하고, 상기 송신된 커널블록들을 이용하여 i와 j를 결정할 수 있다.
그리고 변수 노드 스케줄링부(411)는 상기 패리티 비트 노드의 복호화 우선순위에 따라 상기 수신된 패리티 비트 노드들을 배열하고, 상기 배열된 패리티 비트 노드들을 직렬 복호화부(413)로 출력한다. 그리고 변수 노드 스케줄링부(411)는 동일한 복호 우선순위 그룹 내에 포함된 패리티 비트 노드들을 배열할 때, 순서에 상관없이 무작위로 배열할 수 있다.
그리고 직렬 복호화부(413)는 변수 노드를 기준으로 복호를 수행하며, 정보 비트 노드들을 먼저 복호한 후, 이어서 패리티 비트 노드들을 복호한다. 이때, 직렬 복호화부(413)는 상기 변수 노드 스케줄링부(411)로부터 상기 패리티 비트 노드의 복호 우선순위에 따라 상기 배열된 패리티 비트 노드들을 입력받으며, 상기 배열된 패리티 비트 노드들을 직렬 복호하고, 상기 복호화된 패리티 비트 노드들과 상기 복호화된 정보 비트 노드들을 신드롬 검사부(415)로 출력한다. 그리고 직렬 복호화부(413)는 동일한 복호 우선순위 그룹 내에 포함된 패리티 비트 노드들을 복호할 때, 부분적으로 병렬 복호할 수 있다.
그리고 신드롬 검사부(415)는 복호 처리를 계속 수행할 것인지 정지할 것인지 여부를 검사한다. 좀 더 자세히 설명하면, 신드롬 검사부(415)는 직렬 복호화부(413)로부터 상기 복호화된 패리티 비트 노드들과 상기 복호화된 정보 비트 노드들을 입력받고, 상기 복호화된 패리티 비트 노드들 각각의 신드롬 값들을 계산한다. 그리고 신드롬 검사부(415)는 상기 계산된 신드롬 값들이 모두 '0'인지 모두 '0'이 아닌지 여부를 파악한다. 만약에, 상기 계산된 신드롬 값들이 모두 '0'인 경우, 신드롬 검사부(415)는 상기 수신된 부호어에 오류가 발생하지 않은 것으로 파악하여 복호 처리를 정지하고, 상기 복호화된 정보 비트 노드들과 상기 복호화된 패리티 비트 노드들을 결과 출력부(417)로 출력한다.
이와 달리, 상기 계산된 신드롬 값들이 모두 '0'이 아닌 경우, 신드롬 검사부(415)는 상기 복호화된 패리티 비트 노드들과 상기 복호화된 정보 비트 노드들을 직렬 복호화부(413)로 출력하여 복호 처리를 반복한다.
그리고 결과 출력부(417)는 신드롬 검사부(415)로부터 상기 복호화된 패리티 비트 노드들과 상기 복호화된 정보 비트 노드들을 입력받아 상기 복호화된 정보 비트 노드들을 검색하고, 상기 검색된 정보 비트 노드들을 출력한다.
도 5는 본 발명의 실시 예에 따른 패리티 검사 행렬을 인수(factor) 그래프로 도시한 도면이다. 이제부터 도 2a 내지 도 5를 참조하여 패리티 검사 행렬의 인수(factor) 그래프를 설명하고자 한다.
도 5에서, 본 발명을 간단히 설명하기 위해, 패리티 비트 노드를 64개로 가정하며, H 행렬에서 패리티 부분의 행렬인 패리티 검사 행렬은 이중 대각 행렬이라고 가정한다.
도 5에 도시한 바와 같이, 상기 패리티 검사 행렬을 인수 그래프로 도시하면, 64개의 변수 노드들(509, 511, 513,…, 515)이 64개의 검사 노드들(501, 503, 505,…, 507)과 지그재그로 연결된다.
도 6은 본 발명의 실시 예에 따른 복호화부(405)가 직렬 복호화하는 과정을 도시한 도면이다. 이제부터, 도 2a 내지 도 6을 참조하여 복호화부(405)가 직렬 복호하는 과정을 설명하고자 한다.
본 발명을 간단히 설명하기 위해, 패리티 비트 노드들은 64개이며, 패리티 검사 행렬은 이중 대각 행렬인 것으로 가정하고, 신호 송신 장치는 <수학식 1>을 이용하여 1번째, 2번째, 3번째 커널블록에 포함된 패리티 비트 노드들을 송신하고, 4번째, 5번째 커널블록에 포함된 패리티 비트 노드들을 천공하여 송신하지 않는 것으로 가정한다.
신호 수신 장치의 복호화부(405)는 복조된 627 패리티 비트 노드 집합을 입력받고, 상기 입력된 627 패리티 비트 노드 집합을 이용하여 천공된 패리티 비트 노드들과 천공되지 않은 패리티 비트 노드들을 확인한다.
여기서, 627 패리티 비트 노드 집합은 1번째, 2번째, 3번째 커널블록에 포함된 패리티 비트들이 천공되지 않고 4번째, 5번째 커널블록에 포함된 패리티 비트들이 천공된 것이다. 즉, 627 패리티 비트 노드 집합은 천공되지 않은 0번째, 4번째, 8번째,…, 60번째 패리티 비트 노드들(601, 609, 617,…, 619)과 천공된 1번째, 2번째, 3번째, 5번째, 6번째, 7번째,…, 61번째, 62번째, 63번째 패리티 비트 노드들(603, 605, 607, 611, 613, 615,…, 621, 623, 625)을 포함한다.
그리고 복호화부(405)는 상기 확인된 627 패리티 비트 노드 집합의 천공 여부에 따라 i=5, j=3임을 결정하고, 상기 결정된 i와 j의 값을 이용하여 패리티 비트 노드의 복호 우선순위를 결정한다.
이때, 상기 결정된 패리티 비트 노드의 복호 우선순위는 다음과 같은 식으로 나타난다.
복호화부(405)는 <수학식 3>과 같은 패리티 비트 노드의 복호 우선순위를 결정한 후, 상기 패리티 비트 노드의 복호 우선순위에 따라 627 패리티 비트 노드 집합을 직렬 복호 처리한다.
여기서, 직렬 복호는 1번의 복호 처리를 수행하여 천공된 패리티 비트 노드들을 복원하는 것을 말한다. 좀 더 자세히 설명하면, 복호화부(405)는 627 패리티 비트 노드 집합에 포함된 천공되지 않은 패리티 비트 노드들(601, 609, 617,…,619)()을 직렬 복호하여 629 패리티 비트 노드 집합과 같이 1번째, 3번째, 5번째, 7번째,…, 61번째 패리티 비트 노드들을 복원한다.
여기서, 천공된 패리티 비트 노드가 1번의 복호 처리 내에서 p번째에 임의의 패리티 비트 노드를 복원하는 경우, p-소 단계 복원(p-MSR: p-Mini Step Recovery, 이하 'p-MSR'이라 한다)라고 말하며, p는 임의의 정수이다. 따라서, 복호화부(405)는 1-MSR을 수행하여 1번째, 3번째, 5번째, 7번째,…, 61번째 패리티 비트 노드들을 복원할 수 있다.
그리고 복호화부(405)는 상기 1-MSR에서 복원된 1번째, 3번째, 5번째, 7번째,…, 61번째 패리티 비트 노드들()을 직렬 복호하여 631 패리티 비트 노드 집합과 같이 2번째, 6번째,…,62번째 패리티 비트 노드들을 복원할 수 있다. 따라서 복호화부(405)는 2-MSR을 수행하여 2번째, 6번째,…,62번째 패리티 비트 노드들을 복원할 수 있다. 그리고 복호화부(405)는 상기 2-MSR에서 복원된 2번째, 6번째,…,62번째 패리티 비트 노드들()을 직렬 복호하여 63번째 패리티 비트 노드를 복원할 수 있다. 따라서 복호화부(405)는 3-MSR을 수행하여 63번째 패리티 비트 노드들을 복원할 수 있다.
결과적으로, 복호화부(405)는 1번의 복호 처리 동안 3-MSR을 수행하여 천공된 패리티 비트 노드들을 복원할 수 있다.
그리고 복호화부(405)는 직렬 복호를 수행할 때, 동일한 패리티 비트 노드의 우선순위 집합 내에 포함된 패리티 비트 노드들을 순서에 상관없이 직렬 복호할 수 있다. 예를 들면, 복호화부(405)는 패리티 비트 노드의 복호 우선순위가 동일한 0번째, 4번째, 8번째,…, 60번째 패리티 비트 노드들(601, 609, 617,…, 619)을 8번째, 60번째, 0번째,…, 4번째 패리티 비트 노드 순서대로 직렬 복호하거나 60번째, 4번째, 8번째,…, 0번째 패리티 비트 노드 순서대로 직렬 복호할 수 있다.
그리고 복호화부(405)는 직렬 복호를 수행할 때, 동일한 패리티 비트 노드의 우선순위 집합 내에 포함된 패리티 비트 노드들을 부분적으로 병렬 복호할 수 있다. 예를 들면, 복호화부(405)는 패리티 비트 노드의 복호 우선순위가 동일한 0번째, 4번째, 8번째,…, 60번째 패리티 비트 노드들(601, 609, 617,…, 619)을 동시에 병렬 복호할 수 있다.
도 7은 본 발명의 실시 예에 따른 신호 수신 장치의 복호화부(405)가 패리티 비트 노드들을 직렬 복호화하는 흐름도이다. 이제부터 도 2a 내지 도 7을 참조하여 복호화부(405)가 패리티 비트 노드들을 복호화는 과정을 설명하고자 한다.
패리티 비트 노드들은 패리티 비트 노드의 천공 우선순위에 따라 i개의 커널블록들( 부터 )로 분류되며, i는 임의의 정수이다. 그리고 신호 송신 장치는 채널 상태에 따라 부호율을 결정하며, 상기 결정된 부호율에 따라 상기 분류된 커널블록들 중에서 적어도 하나 이상의 커널블록( 부터 )을 결정하고, 전체 패리티 비트 노드 중에서 상기 결정된 커널블록에 포함되는 패리티 비트 노드들을 천공하며, 천공되지 않은 패리티 비트 노드들을 커널블록들( 부터 )로 분류하고, 상기 분류된 커널블록들과 천공되지 않은 정보 비트 노드들을 포함하는 천공된 부호어를 생성하여 신호 수신 장치로 송신하는 것으로 가정한다.
701단계에서 신호 수신 장치의 복호화부(405)는 상기 천공된 부호어를 입력받고, 상기 천공된 부호어를 분석하여 천공된 비트 노드들과 천공되지 않은 비트 노드들을 확인하고, 상기 확인된 패리티 비트 노드들의 천공 여부를 나타내는 패리 티 비트 노드 천공 정보를 생성한 후, 703단계로 진행한다. 여기서, 비트 노드들은 정보 비트 노드들과 패리티 비트 노드들을 포함한다.
그리고 703단계에서 복호화부(405)는 상기 생성된 패리티 비트 노드 천공 정보를 이용하여 신호 수신 장치가 수신한 커널블록들( 부터 )을 파악하고, 미리 지정된 패리티 비트 노드의 복호 우선순위 결정 알고리즘에 상기 파악된 커널블록들을 반영하여 패리티 비트 노드의 복호 우선순위를 결정한 후, 705단계로 진행한다. 여기서 패리티 비트 노드의 복호 우선순위 결정 알고리즘은 상기 파악된 커널블록들과 <수학식 2>를 이용하여 패리티 비트 노드의 복호 우선순위를 결정할 수 있다.
그리고 705단계에서 복호화부(405)는 상기 정보 비트 노드들을 복호화하고, 707단계에서 복호화부(405)는 상기 결정된 패리티 비트 노드의 복호 우선순위에 따라 상기 천공되지 않은 패리티 비트 노드들을 배열하고, 상기 배열된 패리티 비트 노드들을 순서대로 직렬 복호화한 후, 709단계로 진행한다.
이때, 복호 우선순위가 동일한 패리티 비트 노드들을 배열하는 경우, 복호화부(405)는 순서에 상관없이 무작위로 패리티 비트 노드들을 배열할 수 있다. 그리고 복호 우선순위가 동일한 패리티 비트 노드들을 복호화하는 경우, 복호화부(405)는 상기 복호 우선순위가 동일한 패리티 비트 노드들을 동시에 복호화하는 부분 병렬 복호를 수행할 수 있다.
그리고 709단계에서 복호화부(405)는 상기 복호된 정보 비트 노드들과 상기 복호된 패리티 비트 노드들을 포함하는 복호된 부호어의 오류를 검사하여 임의의 패리티 비트 노드의 오류를 확인한 후, 711단계로 진행한다. 이때, 복호화부(405)는 상기 복호된 부호어의 신드롬 값들을 계산하여 임의의 패리티 비트 노드의 오류를 확인할 수 있다.
그리고 711단계에서 복호화부(405)는 상기 계산된 신드롬 값들이 모두 '0'이면 713단계로 진행하고, 상기 계산된 신드롬 값들이 모두 '0'이 아니면, 즉 상기 계산된 신드롬 값들 중에서 특정 신드롬 값이 '0'이외의 값이면, 707단계로 진행하여 직렬 복호화를 반복한다.
그리고 713단계에서 복호화부(405)는 상기 복호된 부호어 중에서 상기 복호된 정보 비트 노드들을 검색하고, 상기 검색된 정보 비트 노드들을 외부로 출력한다.
상기한 과정을 수행하여 통신 시스템에서 천공된 저밀도 패리티 검사 부호를 복호화할 때, 복호 수렴 속도를 향상 시킬 수 있으며, 복호 효과를 일정 이상 유지할 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 예를 들면, 본 발명의 상세한 설명에서는 전체 패리티 비트 노드를 64개로 가정하여 설명하였으나, 전체 패리티 비트 노드의 개수에 한정되지 않고 본 발명을 적용할 수 있다. 그리고 본 발명의 상세한 설명에서는 패리티 검사 행렬의 인수 그래프가 다수의 변수 노드들과 다수의 검사 노드들이 지그재그로 연결된 것으로 설명하였으나, 이와 달리 다수의 변수 노드들과 다수의 검사 노드들이 지그재그로 연 결되고 0번째 검사 노드가 16, 63번째 변수 노드와 연결된 패리티 검사 행렬을 본 발명에 적용할 수 있다. 그리고 일반적인 저밀도 패리티 검사 부호를 이용하여 본 발명을 설명하였으나, 이외에도 블록 저밀도 패리티 검사 부호를 본 발명에 적용할 수 있다.
도 1a는 종래 기술에 따른 패리티 검사 행렬의 예시도,
도 1b는 종래 기술에 따라 패리티 비트 노드들을 복호화하는 과정을 도시한 도면,
도 2a는 본 발명의 실시 예에 따른 신호 송신 장치의 블록 구성도,
도 2b은 본 발명의 실시 예에 따른 부호화부의 블록 구성도,
도 3a는 본 발명의 실시 예에 따른 패리티 검사 행렬의 예시도,
도 3b는 본 발명의 실시 예에 따른 천공부가 패리티 비트 노드들을 천공하는 과정을 도시한 도면,
도 3c는 본 발명의 실시 예에 따른 천공부가 천공되지 않은 패리티 비트 노드들을 커널블록별로 분류하는 과정을 도시한 도면,
도 4a은 본 발명의 실시 예에 따른 신호 수신 장치의 블록 구성도,
도 4b은 본 발명의 실시 예에 따른 복호화부의 블록 구성도,
도 5는 본 발명의 실시 예에 따른 패리티 검사 행렬을 인수 그래프로 도시한 도면,
도 6은 본 발명의 실시 예에 따른 복호화부가 직렬 복호화하는 과정을 도시한 도면,
도 7은 본 발명의 실시 예에 따른 복호화부가 패리티 비트 노드들을 직렬 복호화하는 흐름도.
Claims (14)
- 통신 시스템에서 신호 수신 방법에 있어서,정보 비트 노드들과 천공되지 않은 패리티 비트 노드들을 포함하는 부호어를 수신하는 과정과,상기 천공되지 않은 패리티 비트 노드들을 분석하여, 전체 패리티 비트 노드들 중에서 동일한 중요도를 가지는 패리티 비트 노드들을 각각 포함하는 다수의 블록들 중, 상기 천공되지 않은 패리티 비트 노드들을 포함하는 적어도 하나의 제1블록을 검출하는 과정과,미리 지정된 복호 우선순위 결정 알고리즘에 상기 제1블록을 반영하여 결정된 패리티 비트 노드의 복호 우선순위를 기반으로 상기 제1블록에 관련된 패리티 비트 노드들을 직렬 복호화하여 상기 전체 패리티 비트 노드들을 복원하는 과정을 포함하는 신호 수신 방법.
- 제1항에 있어서,상기 전체 패리티 비트 노드들을 복원하는 과정은,상기 다수의 블록들 중 상기 제1블록을 제외한 천공된 패리티 비트 노드들 각각에 0을 삽입하는 과정과,상기 패리티 비트 노드의 복호 우선순위를 기반으로 상기 제1블록의 패리티 비트 노드들과 상기 0이 삽입된 패리티 비트 노드들을 배열하는 과정을 포함함을 특징으로 하는 신호 수신 방법.
- 제1항에 있어서,상기 복호 우선순위는 상기 제1블록에 포함된 패리티 비트 노드들을 우선적으로 복호하고, 상기 중요도가 가장 낮은 블록에 포함된 패리티 비트 노드들부터 중요도가 가장 높은 블록에 포함된 패리티 비트 노드들을 순차적으로 복호하도록 결정됨을 특징으로 하는 신호 수신 방법.
- 제1항에 있어서,상기 전체 패리티 비트 노드들을 복원하는 과정은,상기 제1블록에 포함된 패리티 비트 노드들을 복호하여 상기 중요도가 가장 낮은 제2블록에 포함되는 천공된 패리티 비트 노드들을 복원하는 과정과,상기 복원된 패리티 비트 노드들을 복호하여 상기 중요도가 상기 제2블록보다 높은 제3블록에 포함되는 천공된 패리티 비트 노드들을 복원하는 과정을 포함함을 특징으로 하는 신호 수신 방법.
- 제1항에 있어서,상기 전체 패리티 비트 노드들을 복원하는 과정은, 상기 복호 우선순위가 동일한 패리티 비트 노드들을 순서에 상관없이 복호하는 과정임을 특징으로 하는 신호 수신 방법.
- 제1항에 있어서,상기 전체 패리티 비트 노드들을 복원하는 과정은, 상기 복호 우선순위가 동일한 패리티 비트 노드들을 동시에 복호하는 부분 병렬 복호화 과정임을 특징으로 하는 신호 수신 방법.
- 삭제
- 통신 시스템에서 신호 수신 장치에 있어서,정보 비트 노드들과 천공되지 않은 패리티 비트 노드들을 포함하는 부호어를 수신하는 수신부와,상기 천공되지 않은 패리티 비트 노드들을 분석하여, 전체 패리티 비트 노드들 중에서 동일한 중요도를 가지는 패리티 비트 노드들을 각각 포함하는 다수의 블록들 중, 상기 천공되지 않은 패리티 비트 노드들을 포함하는 적어도 하나의 제1블록을 검출하고, 미리 지정된 복호 우선순위 결정 알고리즘에 상기 제1블록을 반영하여 결정된 패리티 비트 노드의 복호 우선순위를 기반으로 상기 제1블록에 관련된 패리티 비트 노드들을 직렬 복호화하여 상기 전체 패리티 비트 노드들을 복원하는 직렬 복호화부를 포함함을 특징으로 하는 신호 수신 장치.
- 제8항에 있어서,상기 복호화부는, 상기 다수의 블록들 중 상기 제1블록을 제외한 천공된 패리티 비트 노드들 각각에 0을 삽입하고, 상기 패리티 비트 노드의 복호 우선순위를 기반으로 상기 제1블록의 패리티 비트 노드들과 상기 0이 삽입된 패리티 비트 노드들을 배열하여 상기 전체 패리티 비트 노드들을 복원함을 특징으로 하는 신호 수신 장치.
- 제8항에 있어서,상기 복호 우선순위는 상기 제1블록에 포함된 패리티 비트 노드들을 우선적으로 복호하고, 상기 중요도가 가장 낮은 블록에 포함된 패리티 비트 노드들부터 중요도가 가장 높은 블록에 포함된 패리티 비트 노드들을 순차적으로 복호하도록 결정됨을 특징으로 하는 신호 수신 장치.
- 제8항에 있어서,상기 복호화부는, 상기 제1블록에 포함된 패리티 비트 노드들을 복호하여 상기 중요도가 가장 낮은 제2블록에 포함되는 천공된 패리티 비트 노드들을 복원하고, 상기 복원된 패리티 비트 노드들을 복호하여 상기 중요도가 상기 제2블록보다 높은 제3블록에 포함되는 천공된 패리티 비트 노드들을 복원하여 상기 전체 패리티 비트 노드들을 복원함을 특징으로 하는 신호 수신 장치.
- 제8항에 있어서,상기 복호화부는, 상기 복호 우선순위가 동일한 패리티 비트 노드들을 순서에 상관없이 복호하여 상기 전체 패리티 비트 노드들을 복원함을 특징으로 하는 신호 수신 장치.
- 제8항에 있어서,상기 복호화부는, 상기 복호 우선순위가 동일한 패리티 비트 노드들을 동시에 복호하는 부분 병렬 복호화를 수행하여 상기 전체 패리티 비트 노드들을 복원함을 특징으로 하는 신호 수신 장치.
- 삭제
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070131454A KR101434267B1 (ko) | 2007-12-14 | 2007-12-14 | 통신 시스템에서 신호 수신 장치 및 방법 |
US12/316,445 US8181097B2 (en) | 2007-12-14 | 2008-12-12 | Apparatus and method for decoding signal in a communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070131454A KR101434267B1 (ko) | 2007-12-14 | 2007-12-14 | 통신 시스템에서 신호 수신 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090063922A KR20090063922A (ko) | 2009-06-18 |
KR101434267B1 true KR101434267B1 (ko) | 2014-08-27 |
Family
ID=40754904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070131454A KR101434267B1 (ko) | 2007-12-14 | 2007-12-14 | 통신 시스템에서 신호 수신 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8181097B2 (ko) |
KR (1) | KR101434267B1 (ko) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011507362A (ja) * | 2007-12-14 | 2011-03-03 | パナソニック株式会社 | 無線通信装置およびパンクチャリング方法 |
US8504887B1 (en) * | 2009-12-24 | 2013-08-06 | Marvell International Ltd. | Low power LDPC decoding under defects/erasures/puncturing |
US8826105B2 (en) * | 2012-04-12 | 2014-09-02 | Lsi Corporation | Data processing system with out of order transfer |
CN106158046B (zh) * | 2015-05-15 | 2021-03-30 | 爱思开海力士有限公司 | 用于turbo乘积码的误校正避免 |
US10548158B2 (en) * | 2016-03-10 | 2020-01-28 | Huawei Technologies Co., Ltd. | Message passing algorithm decoder and methods |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060047842A (ko) * | 2004-10-27 | 2006-05-18 | 삼성전자주식회사 | 저밀도 패리티 검사 채널 부호의 천공 방법 |
KR20060093627A (ko) * | 2005-02-22 | 2006-08-25 | 삼성전자주식회사 | 통신 시스템에서 지그재그 코드를 이용한 가변 부호율-저밀도 패리티 검사 부호 생성 장치 및 방법 |
KR20070079513A (ko) * | 2006-02-02 | 2007-08-07 | 삼성전자주식회사 | 노드 메모리 기반의 ldpc 복호기 및 복호방법 |
KR20070080407A (ko) * | 2006-02-07 | 2007-08-10 | 삼성전자주식회사 | 저밀도 패러티 검사 부호 기반의 하이브리드 재전송 방법 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100703483B1 (ko) * | 2005-03-04 | 2007-04-03 | 삼성전자주식회사 | 저밀도 패러티 검사 부호의 천공 방법 |
KR101157246B1 (ko) * | 2005-05-16 | 2012-06-15 | 삼성전자주식회사 | 저밀도 패리티 검사 부호의 패딩 및 천공 방법 |
US7783961B2 (en) * | 2005-07-01 | 2010-08-24 | Nec Laboratories America, Inc. | Rate-compatible low density parity check coding for hybrid ARQ |
KR100943623B1 (ko) * | 2005-09-30 | 2010-02-24 | 삼성전자주식회사 | 저밀도 패러티 검사 부호의 천공기법 |
-
2007
- 2007-12-14 KR KR1020070131454A patent/KR101434267B1/ko active IP Right Grant
-
2008
- 2008-12-12 US US12/316,445 patent/US8181097B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060047842A (ko) * | 2004-10-27 | 2006-05-18 | 삼성전자주식회사 | 저밀도 패리티 검사 채널 부호의 천공 방법 |
KR20060093627A (ko) * | 2005-02-22 | 2006-08-25 | 삼성전자주식회사 | 통신 시스템에서 지그재그 코드를 이용한 가변 부호율-저밀도 패리티 검사 부호 생성 장치 및 방법 |
KR20070079513A (ko) * | 2006-02-02 | 2007-08-07 | 삼성전자주식회사 | 노드 메모리 기반의 ldpc 복호기 및 복호방법 |
KR20070080407A (ko) * | 2006-02-07 | 2007-08-10 | 삼성전자주식회사 | 저밀도 패러티 검사 부호 기반의 하이브리드 재전송 방법 |
Also Published As
Publication number | Publication date |
---|---|
US8181097B2 (en) | 2012-05-15 |
US20090158115A1 (en) | 2009-06-18 |
KR20090063922A (ko) | 2009-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101445080B1 (ko) | 하이브리드 자동 반복 요구 방식을 사용하는 통신 시스템에서 신호 송신 방법 및 장치 | |
KR100966043B1 (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 신호 송수신 장치 및 방법 | |
KR100929079B1 (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템의 복호 장치 및 방법 | |
KR100984289B1 (ko) | 통신 시스템에서 가변 부호화율을 지원하는 신호 송수신장치 및 방법 | |
US7904792B2 (en) | Apparatus and method for transmitting/receiving signal in a communication system | |
US7657824B2 (en) | Method for puncturing an LDPC channel code | |
EP2030327B1 (en) | Data retransmission using low density parity check (ldpc) matrixes | |
CN110266448B (zh) | 信息处理的方法、通信装置和存储介质 | |
US7979777B2 (en) | Apparatus, method and program for decoding | |
EP2050195B1 (en) | Method of encoding/decoding using low density check code matrix | |
JP5492193B2 (ja) | コグニティブ無線のアンチジャミング符号化による再送の方法およびシステム | |
KR100981501B1 (ko) | 통신 시스템에서 신호 송신 장치 및 방법 | |
EP1641128A1 (en) | Method and device for delivering punctured code words encoded with a LDPC code. | |
KR101434267B1 (ko) | 통신 시스템에서 신호 수신 장치 및 방법 | |
WO2009094805A1 (en) | Radio communication apparatus and interleaving method | |
CN112152754A (zh) | 一种极化码重传方法及装置 | |
CN113162634A (zh) | 一种基于比特翻转的码长自适应极化码译码方法 | |
EP1653629B1 (en) | Method for puncturing an LDPC channel code | |
CN113507289B (zh) | 一种编码器、解码器及码字生成方法 | |
KR100996030B1 (ko) | 통신 시스템에서 신호 송수신 장치 및 방법 | |
KR100895612B1 (ko) | 블록 형태 저밀도 패러티 검사 부호의 천공 방법 | |
CN101494517B (zh) | 一种数据传输方法及装置 | |
KR101253184B1 (ko) | 모델 행렬을 이용하여 ldpc 부호화를 수행한 데이터를천공하는 방법 | |
KR101265636B1 (ko) | 모델 행렬을 이용하여 ldpc 복호화를 수행하는 방법 | |
KR101276845B1 (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 |