KR20080106738A - 저밀도 패리티 검사 코드 부호의 부호화 및 복호화 장치 및방법 - Google Patents
저밀도 패리티 검사 코드 부호의 부호화 및 복호화 장치 및방법 Download PDFInfo
- Publication number
- KR20080106738A KR20080106738A KR1020070054546A KR20070054546A KR20080106738A KR 20080106738 A KR20080106738 A KR 20080106738A KR 1020070054546 A KR1020070054546 A KR 1020070054546A KR 20070054546 A KR20070054546 A KR 20070054546A KR 20080106738 A KR20080106738 A KR 20080106738A
- Authority
- KR
- South Korea
- Prior art keywords
- matrix
- parity check
- block
- column
- order
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
- H03M13/6505—Memory efficient implementations
-
- 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/65—Purpose and implementation aspects
- H03M13/6508—Flexibility, adaptability, parametrability and configurability of the implementation
-
- 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
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0009—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
- H04L1/0013—Rate matching, e.g. puncturing or repetition of code symbols
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 통신 시스템에서 부호화 및 복호화 장치 및 방법에 관한 것으로, 특히 통신 시스템에서 저밀도 패리티 검사(Low Density Parity Check : 이하 'LDPC'라 함) 부호를 이용하여 신호를 부호화 및 복호화 하기 위한 장치 및 방법에 관한 것이다.
본 발명에 따른 장치는, LDPC 부호를 사용하는 통신 시스템에서 LDPC 부호어를 생성하기 위한 장치로, 각 부호율에서 모든 변조 방식에서 사용할 수 있는 원형 메트릭스을 저장하는 메모리와, 전송에 결정된 변조 방식에 따라 상기 메모리로부터 상기 원형 메트릭스에서 사용할 메트릭스을 선택하는 제어부와, 상기 선택된 메트릭스을 이용하여 전송할 데이터를 부호어를 생성하는 부호기를 포함한다.
LDPC 부호, 블록 LDPC 부호, 적응변조 및 부호화, 차수 분포, 단축법, 천공법, 선택법.
Description
도 1은 본 발명의 실시 예에 따른 통신 시스템에서 신호 송신 장치의 블록 구성도,
도 2는 본 발명의 실시예에 따른 통신 시스템에서 신호 수신 장치의 블록 구성도,
도 3은 본 발명의 실시 예에 따른 블록 LDPC 부호의 패리티 검사 행렬 구조를 도시한 도면,
도 4는 변조 방식이 각각 QPSK, 16-QAM, 64-QAM일 경우에 부호율이 3/4인 블록 LDPC 부호의 패리티 검사 행렬을 도시한 블록도,
도 5는 <표 3>의 조건을 만족하는 블록 LDPC 부호의 패리티 검사 행렬을 도시한 도면,
도 6은 본 발명의 실시 예에 따라 다양한 전송률을 지원하는 블록 LDPC 부호어를 부호화할 경우의 순서도,
도 7a 및 도 7b는 열 블록의 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면,
도 8a 및 도 8b는 열 블록의 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면,
도 9a 및 도 9b는 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면,
도 10a 및 도 10b는 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면,
도 11a 및 도 11b는 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면,
도 12는 본 발명의 실시 예에 따른 복호기의구조를 도시한 내부 블록 구성도.
본 발명은 통신 시스템에서 부호화 및 복호화 장치 및 방법에 관한 것으로, 특히 통신 시스템에서 저밀도 패리티 검사(Low Density Parity Check : 이하 'LDPC'라 함) 부호를 이용하여 신호를 부호화 및 복호화 하기 위한 장치 및 방법에 관한 것이다.
일반적으로 통신 시스템에서 데이터를 송신하기 위해서는 전송하고자 하는 데이터를 부호화하여 전송한다. 통신 시스템에서는 다양한 부호화 방식을 사용하고 있으며, 다양한 방식들의 논의가 계속되고 있다. 이러한 부호화 방식 중 LDPC 부호를 사용하여 전송하고자 하는 데이터를 부호화 하는 방식이 있다. 상기 LDPC 방식은 최근에 무선 통신 시스템에서 사용하기 위해 다양한 시도가 진행되고 있다. 그러면 먼저 무선 통신 시스템에 대하여 간략히 살펴보기로 한다.
일반적으로 무선 통신 시스템은 음성 서비스를 제공하기 위해 개발되었으나, 사용자들의 요구와 기술의 비약적인 발전에 따라 음성 서비스 뿐 아니라 고속의 데이터 서비스를 제공하는 형태로 발전하였으며, 전송하고자 하는 데이터를 패킷 형태로 서비스하도록 발전하였다. 이러한 패킷 서비스 무선 통신 시스템(packet service wireless communication system)은 버스트(burst)한 패킷 데이터(packet data)를 다수의 이동 단말기(Mobile Station : MS)들로 송신하는 시스템으로서, 고속 대용량 데이터 송수신에 적합하도록 설계되어 왔다. 특히, 차세대 통신 시스템에서는 고속 대용량 데이터 송수신 지원을 위해 하이브리드 자동 반복 요구(HARQ: Hybrid Automatic Repeat reQuest : 이하 "HARQ"라 칭하기로 한다) 방식과 적응적 변조 및 부호화(Adaptive Modulation and Coding : 이하 "AMC"라 칭하기로 한다) 방식 등과 같은 다양한 방식들이 제안된 바 있으며, 상기 HARQ 방식 및 AMC 방식 들을 사용하기 위해서는 다양한 부호화율(coding rate)들을 지원해야만 한다.
한편, 유무선 통신 시스템에서 데이터를 송신하고자 하는 경우에 다양한 부호화 방식을 이용하여 데이터를 부호화한 후 전송한다. 이러한 부호화 방법들 중 최근에 주목받고 있는 부호화 방식이 LDPC 방식이다. LDPC 방식은 Shannon limit에 가장 근접하는 오류정정부호로서, 메트릭스(matrix)를 이용하여 전송하고자 하는 데이터를 부호화한다. 이러한 메트릭스스는 정보 파트 메트릭스스(information part matrix)와 패리티 파트 메트릭스스(parity part matrix)로 구분된다.
한편, LDPC 부호는 부호화와 복호의 관계가 매우 복잡하다. 따라서 LDPC 부호의 복호가 용이하도록 LDPC 부호를 설계해야 한다. LDPC 부호의 복호 시에 LDPC 부호의 검사 노드에서의 연산은 가장 낮은 신뢰도를 갖는 값에 의하여 결정되어 진다. 따라서 LDPC 부호의 복호 시에 검사 노드의 차수가 높을 경우 낮은 신뢰도를 갖는 값들이 많이 입력되어지면 복호기능이 저하된다. 그리고 송신기에서 고차 변조 방식을 사용하여 패킷을 송신할 경우 낮은 변조 방식을 사용할 경우에 비하여 복호기에 입력되어지는 비트의 신뢰도 값은 작다. 그러므로 고차 변조 방식을 사용할 경우에는 검사 노드의 차수인 패리티 검사 행렬의 행(row)의 차수를 낮게 설계해야 우수한 LDPC 부호의 성능 이득을 얻을 수 있다.
이러한 현상은 페이딩 환경에서도 비슷하게 적용된다. 즉, 성능의 열화를 많이 일으키는 페이딩 채널에서 우수한 성능을 갖는 LDPC 부호를 설계하기 위해서는 패리티 검사 행렬의 행(row)의 차수를 낮게 설계하여야 한다. 즉, 일반적으로 LDPC 부호는 부호율, 변조 방식과 전송 채널에 따라 서로 다른 최적의 차수 분포를 가진다. 따라서 최적의 성능을 얻기 위해서는 부효율과 부호어 길이가 같을 경우에도 변조 방식 및 전송 채널에 적합한 LDPC 부호의 사용이 요구된다. 또한 전송 채널이 같을 경우에도 부호율과 변조 방식에 의해 결정되는 전송률에 적합한 LDPC 부호의 사용이 요구된다.
이러한 요구를 수용하기 위해 각각의 변조 방식에 따라 혹은 각각의 전송률 에 따라 적합한 LDPC 부호를 사용하기 위하여 각 변조 방식 및 전송률에 따라 다른 패리티 검사 행렬을 저장할 경우 LDPC 부호를 사용하는 송/수신기의 메모리 효율이 떨어지게 된다. 그러므로 LDPC 부호를 사용하는 송/수신기를 사용하기 위해서는 저장 공간의 효율적인 사용과 엑세스(access)의 편의를 위하여 패리티 검사 행렬의 수가 제한될 경우에는 성능 열화를 최소화하면서 여러 개의 부호를 하나의 패리티 검사 행렬로 사용할 수 있는 장치 및 방법이 요구되고 있다.
따라서 본 발명의 목적은 LDPC 부호를 사용하는 통신 시스템에서 서로 다른 변조 방식에 따라 적응적으로 사용할 수 있는 부호화 및 복호화 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 LDPC 부호를 사용하는 통신 시스템에서 서로 다른 전송률에 따라 적응적으로 사용할 수 있는 부호화 및 복호화 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 목적은 LDPC 부호를 사용하는 통신 시스템에서 송/수신기의 메모리 효율을 증대시킬 수 있는 부호화 및 복호화 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 목적은 LDPC 부호를 사용하는 통신 시스템에서 패리티 검사 행렬 수의 제한으로 인한 성능 열화를 줄일 수 있는 부호화 및 복호화 장치 및 방법을 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 방법은, LDPC 부호를 사용하는 통신 시스템에서 LDPC 부호어를 생성하기 위한 방법으로, 각 부호율에서 모든 변조 방식에서 사용할 수 있는 원형 메트릭스을 생성하는 과정과, 전송에 결정된 변조 방식에 따라 상기 원형 메트릭스에서 사용할 메트릭스을 선택하는 과정과, 상기 선택된 메트릭스을 이용하여 전송할 데이터를 부호어로 부호화하는 과정을 포함한다.
상기한 목적들을 달성하기 위한 본 발명의 장치는, LDPC 부호를 사용하는 통신 시스템에서 LDPC 부호어를 생성하기 위한 장치로서, 각 부호율에서 모든 변조 방식에서 사용할 수 있는 원형 메트릭스을 저장하는 메모리와, 전송에 결정된 변조 방식에 따라 상기 메모리로부터 상기 원형 메트릭스에서 사용할 메트릭스을 선택하는 제어부와, 상기 선택된 메트릭스을 이용하여 전송할 데이터를 부호어를 생성하는 부호기를 포함한다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
< 송신기 및 수신기 구조 >
먼저 LDPC 시스템에서 본 발명이 적용되는 송신기와 수신기에 대하여 간략히 살펴보기로 한다. 도 1은 본 발명의 실시 예에 따른 통신 시스템에서 신호 송신 장치의 블록 구성도이다.
신호 송신 장치는 부호화기(encoder)(111)와, 변조기(modulator)(113)와, 송신기(115)를 포함한다. 상기 도 1에서 신호 송신 장치로 데이터를 제공하는 상위 구성에 대하여는 도시하지 않았으며, 통신 시스템마다 서로 다른 특징을 가지기 때문에 여기서는 각 시스템들을 모두 다룰 수 없어 설명하지 않기로 한다. 신호 송신 장치는 LDPC 부호를 사용하는 모든 송신기에 사용될 수 있다.
신호 송신 장치로 송신하고자 하는 정보 벡터(information vector)()가 수신되면, 상기 정보 벡터()는 상기 부호화기(111)로 입력된다. 부호화기(111)는 정보 벡터()를 미리 설정되어 있는 부호화 방식으로 부호화하여 부호어 벡터(codeword vector)()를 생성하여 출력한다. 여기서 미리 설정되어 있는 부호화 방식은 후술될 LDPC 부호의 생성 방식에 따른 것임에 유의해야 한다. 이와 같이 부호화기(111)에서 생성된 부호어는 변조기(113)로 입력된다. 변조기(113)는 부호어 벡터()를 미리 설정되어 있는 변조 방식으로 변조하여 변조 벡터()를 생성하여 송신기(115)로 출력한다. 그러면 송신기(115)는 변조기(113)에서 출력한 변조 벡터()를 수신하여 무선 통신 시스템의 송신 방식에 맞춰 송신 대역의 신호로 변환 한 후 안테나를 통해 신호 수신 장치로 송신한다.
다음으로 본 발명의 실시예에 따른 통신 시스템의 신호 수신 장치의 구조에 대해서 살펴보기로 한다. 도 2는 본 발명의 실시예에 따른 통신 시스템에서 신호 수신 장치의 블록 구성도이다.
신호 수신 장치는 수신기(211)와, 복조기(de-modulator)(213)와, 복호기(decoder)(215)를 포함한다. 상기 신호 수신 장치에서도 복호된 신호를 수신하는 상위의 구성에 대하여는 각 시스템마다 서로 달라질 수 있으므로 도시하지 않았으며, 이에 대하여 살피지 않기로 한다. 신호 수신 장치는 본 발명에 따른 LDPC 부호를 사용하는 모든 시스템에 사용될 수 있다.
신호 송신 장치에서 송신한 신호는 신호 수신 장치의 안테나를 통해 수신되고, 안테나를 통해 수신된 신호는 수신기(211)로 전달된다. 수신기(211)는 수신 신호를 대역하강 변환 및 디지털 신호로 변환하는 등의 신호 처리를 수행하고, 그 수신 신호 처리된 수신 벡터()를 복조기(213)로 출력한다. 복조기(213)는 수신기(211)에서 출력한 수신 벡터()를 수신하여 신호 송신 장치의 변조기, 즉 변조기(113)에서 적용한 변조 방식에 상응하는 복조 방식으로 복조한 후 그 복조한 복조 벡터()를 상기 복호기(215)로 출력한다. 상기 복호기(215)는 상기 복조기(213)에서 출력한 복조 벡터()를 입력하여 상기 신호 송신 장치의 부호화기, 즉 부호화기(111)에서 적용한 부호화 방식에 상응하는 복호 방식으로 복호한 후 그 복호한 신호를 최종적으로 복원된 정보 벡터()로 출력한다. 여기서, LDPC 복호 방식은 일 예로 합곱(sum-product) 알고리즘(algorithm)에 기반한 반복 복호(iterative decoding) 알고리즘을 사용하는 방식을 사용할 수 있다. 그러나 이 방법 이외에도 많은 반복 복호 알고리즘을 사용할 수 있음은 이 분야의 통상의 지식을 가진 자에게 자명한 사실이다.
< 본 발명의 개념 >
본 발명에서는 종래 기술에서 언급한 바와 같이 다양한 변조 방식 및 부호율을 지원하는 LDPC 부호가 필요하다는 필요에서 출발한다. 본 발명에서는 여러 개의 부호를 하나의 패리티 검사 행렬로 표현하기 위하여 단축법(shortening) 또는 선택법(selecting)을 사용하고자 한다.
상기 단축법 또는 선택법이라 함은 특정한 패리티 검사 행렬을 생성하고, 생성된 패리티 검사 행렬에서 특정한 부분을 제외하거나 또는 특정한 부분만을 선택하는 방법을 의미한다. 따라서 단축법 또는 선택법은 결과적으로 같은 의미를 가짐을 알 수 있다. 이때, 특정한 패리티 검사 행렬을 생성하고, 그 패리티 검사 행렬에서 특정한 부분을 제외하거나 또는 선택하는 것을 기반으로 부호화/복호화를 수행하기 위해서는 아래와 같은 3단계의 과정이 필요하다.
(1) 특정 패리티 검사 행렬의 생성
(2) 제외 또는 선택할 부분의 결정
(3) 제외 또는 선택한 부분으로 부호화 또는 복호화 수행
위의 과정에서 제외되거나 또는 선택되지 않은 부분에서 정보어를 '0'로 결 정한다. 그리고 결정된 패리티 검사 행렬을 기반으로 부호화한다. 이때, '0'로 결정한 정보어는 전송하지 않는다. 상기 두 가지 방법 모두 동일한 부호어를 생성하게 된다. 따라서 이하에서는 설명의 편의를 돕기 위해 미리 결정된 열을 제외하는 단축법으로만 언급하기로 한다. 그러나 미리 결정된 열을 기반으로 선택하는 선택법 또한 동일한 방법으로 이루어질 수 있음은 이 분야의 통상의 지식을 가진 자에게 자명한 일이다.
< 실시 예 >
본 발명의 실시 예에서는 설명의 편의를 위해 블록 LDPC 부호를 이용하여 설명하고자 한다. 그러나 본 발명은 블록 LDPC 부호에 국한된 것이 아님은 이 분야의 통상의 지식을 가진 자에게 자명한 것임에 유의해야 한다.
도 3은 본 발명의 실시 예에 따른 블록 LDPC 부호의 패리티 검사 행렬 구조를 도시한 도면이다. 이하 도 3을 참조하여 본 발명의 실시 예에 따른 블록 LDPC 부호의 패리티 검사 행렬(parity check matrix)에 대해서 설명하기로 한다.
블록 LDPC 부호의 패리티 검사 행렬은 도 3에 도시한 바와 같이 다수의 블록들을 포함하고 있으며, 정보 파트(310)와 패리티 파트(320)로 구성되어 있다. 각 블록들은 각각 순열 행렬(permutation matrix) 혹은 0(zero) 행렬이 대응되는 형태를 가진다. 여기서, 상기 순열 행렬 및 0 행렬은 크기를 가진다. 상기 순열 행렬이라 함은 상기 순열 행렬을 구성하는 Ns개의 행(row)들 각각의 웨이 트(weight)가 1이고, 상기 순열 행렬을 구성하는 Ns개의 열(column)들 각각의 웨이트 역시 1인 행렬을 나타낸다. 상기 웨이트라 함은 패리티 검사 행렬의 열이나 행에서 0이 아닌 엘리먼트의 개수를 의미한다.
정보 파트(310)는 도 1에서 설명한 정보 벡터(information vector)()를 부호어 벡터()로 생성할 경우 상기 정보 벡터()에 대응되는 상기 블록 LDPC 부호의 패리티 검사 행렬의 파트를 나타낸다. 그리고 상기 패리티 파트(320)는 패리티 벡터()에 대응되는 상기 블록 LDPC 부호의 패리티 검사 행렬의 파트를 나타낸다. 상기 정보 벡터()는 적어도 1개의 정보 비트를 포함하며, 상기 패리티 벡터()는 적어도 1개의 패리티 비트를 포함한다. 또한, 도 3에서 정보 파트(310)에 각 블록으로 도시한 순열 행렬 P의 위첨자 aij는 혹은 aij = ∞를 가진다. 위첨자 aij는 순열 행렬이 항등 행렬 구조에서 aij 만큼 오른쪽으로 쉬프트된 형태의 구조를 가지게 됨을 나타낸다. 상기 정보 파트(310)가 포함하는 순열 행렬 P의 위첨자 aij가 0일 경우, 즉 P0는 항등 행렬 I 를 나타내며, 상기 순열 행렬 P의 위첨자 aij가 ∞일 때, 즉 순열 행렬 P∞는 영 행렬 나타낸다. 또한 상기 순열 행렬 P의 위첨자 aij가 -1일 때, 즉 순열 행렬 P-1는 영 행렬 나타낸다.
또한, 순열 행렬 P의 위첨자로 표시된 a의 아래 첨자로 부가되는 m과 n은 패리티 검사 행렬에서 상기 정보 파트(310)에 해당하는 블록들의 행과 열의 개수를 나타낸다. 또한, 패리티 파트(320)가 포함하는 순열 행렬 P의 위첨자 ai, x, y 역시 순열 행렬 P의 지수를 나타내며, 다만 설명의 편의상 정보 파트와의 구분을 위해 상이하게 설정하였을 뿐이다. 즉, 상기 도 3에서 내지 역시 순열 행렬들이며, 상기 패리티 파트의 대각(diagonal) 부분에 위치하는 부분 행렬들에 순차적으로 인덱스(index)를 부여한 것이다. 또한, 상기 도 3에서 Px와 Py 역시 순열 행렬들이며, 설명의 편의상 임의의 인덱스를 부여한 것이다. 상기 차수라 함은 상기에서 설명한 웨이트와 동일 한 개념으로 패리티 검사 행렬에서 행이나 열에서 '0'이 아닌 엘리먼트의 개수를 의미한다. 즉 상기 도 3의 패리티 검사 행렬에서 임의의 열 블록에서 영행렬이 아닌 순열행렬이 몇 개 있는지를 의미한다.
이하에서는 부호율과 열 블록의 개수, 그리고 열 블록의 최대 차수가 동일하고 개의 변조 방식에 대하여 각각 최적화된 블록 LDPC 부호를 단축법을 사용하여 하나의 패리티 검사행렬로 나타내는 방법을 설명하고자 한다.
다양한 변조 방식에서 블록 LDPC 부호의 차수 분포는 열 블록의 수 과 행블록의 수 , 그리고 최대차수 와 최대차수에 해당하는 변수 블록의 수 로 나타낼 수 있다. 각각의 변조 방식에 대하여 번째 변조 방식에 대하여 최적화된 블록 LDPC 부호의 패리티 검사행렬에서 차수가 3인 열 블록과 최대 차수를 가지는 열 블록의 수를 각각 와 라 하자. 이때 과 를 각각 하기 <수학식 1> 및 <수학식 2>와 같이 표현할 수 있다.
상기 <수학식 1> 및 <수학식 2>로부터 개의 변조 방식에 대하여 각각 최적화된 차수 분포를 가지는 블록 LDPC 부호들을 열 블록의 수가 이고, 행 블록의 수가 인 하나의 패리티 검사 행렬을 사용하여 표현할 수 있음을 알 수 있다. 따라서 설계된 패리티 검사행렬에서 개의 최대 차수를 가지는 열 블록과 개의 차수가 3인 열 블록을 단축법을 사용하여 제거하면, 번째 변조 방식에서 최적화된 차수 분포를 가지는 부분 행렬을 얻을 수 있다.
도 4는 변조 방식이 각각 QPSK, 16-QAM, 64-QAM일 경우에 부호율이 3/4인 블록 LDPC 부호의 패리티 검사 행렬을 도시한 블록도이다. 이하 도 4를 이용하여 본 발명의 일 실시 예를 설명하고자 한다.
본 발명에 따라 단축법 또는 선택법에 의해 삭제되지 않고, 공통으로 사용할 수 있도록 생성되는 LDPC 부호의 패리티 검사 행렬을 이하에서는 "원형 메트릭스"이라 칭한다. 이러한 원형 메트릭스을 이용하여 단축법에 의해 최적의 메트릭스을 선택하는 방법을 살펴보기로 한다.
부호율이 3/4인 블록 LDPC 부호에서 사용할 수 있는 원형 메트릭스에서 각각의 변조 방식 QPSK, 16-QAM, 64-QAM에 따라 단축법에 의한 최적의 차수 분포는 하 기 <표 1>과 같다.
전송률 (bits/symbol) | 변조 방식 | 부호율 | ||||
1.5 | QPSK | 48 | 12 | 3/4 | 12 | 8 |
3.0 | 16-QAM | 48 | 12 | 3/4 | 12 | 5 |
4.5 | 64-QAM | 48 | 12 | 3/4 | 12 | 4 |
즉, QPSK 변조 방식을 사용할 경우에는 패리티 검사 행렬의 48개의 열 중에서 8개의 열의 차수가 12이며, 29개의 열의 차수가 3이며, 11개의 열의 차수가 2이다. 16-QAM 변조 방식을 사용할 경우에는 패리티 검사 행렬의 48개의 열중에서 5개의 열의 차수가 12이며, 32개의 열의 차수가 3이며, 11개의 열의 차수가 2이다. 64-QAM 변조 방식을 사용할 경우에는 패리티 검사 행렬의 48개의 열중에서 4개의 열의 차수가 12이며, 33개의 열의 차수가 3이며, 11개의 열의 차수가 2이다.
즉, 차수가 3인 열블록의 개수 이고, 최대 차수를 가지는 열블록의 개수 이므로 "33 + 8 + 11 = 52"로 총 52개의 열 블록과 12개의 행 블록을 가지는 패리티 검사 행렬이 필요하다.
도 4의 패리티 검사 행렬은 52개의 열 블록과 12개의 행 블록을 가지며 차수가 3인 열블록의 개수가 33이고, 차수가 12인 열 블록의 개수가 8이며, 차수가 2인 열 블록의 개수가 2이다.
이때 QPSK 변조 방식을 사용할 경우에는 차수가 3인 열블록 중에서 참조부호 401과 같이 4개의 열 블록을 제외한 패리티 검사 행렬을 기반으로 하여 부호화/복호화 한다. 또한 16-QAM 변조 방식을 사용할 경우에는 차수가 3인 열 블록 중에서 1개의 열 블록을 제외하고, 차수가 12인 열 블록 중에서 3개의 열을 제외한 패리티 검사 행렬을 기반으로 하여 부호화/복호화 한다. 즉, 참조부호 402로 표시된 부분이 삭제되는 것이다. 마지막으로 64-QAM 변조 방식을 사용할 경우에는 차수가 12인 열 블록 중에서 4개의 열 블록을 제외한 패리티 검사 행렬을 기반으로 하여 부호화/복호화 한다. 즉, 참조부호 403으로 표시된 부분이 삭제되는 것이다. 즉, 도 4에서 각각의 변조 방식 옆에 표시된 S들은 단축될 열 블록들을 나타낸다. 상기 도 4의 예시에서는 QPSK, 16-QAM, 64-QAM 방식에 대하여만 살피고 있으나, 이 보다 낮은 변조 방식 및 이 보다 높은 변조 방식 뿐 아니라 다른 변조 방식에서도 동일한 방법을 이용할 수 있다.
한편, 열 블록의 수가 동일하고 서로 다른 전송률을 가지는 블록 LDPC 부호들을 하나의 패리티 검사 행렬을 사용하여 표현하기 위해서는 단축법과 천공법을 모두 사용하여야 한다. 여기서 전송률은 변조 방식에서 사용하는 비트 수와 부호율의 곱으로 구할 수 있다. 주어진 부호들 중에서 부호율이 가장 낮은 부호의 패리티 검사 행렬을 기반으로 하여 패리티 열 블록을 천공하고, 천공된 수 만큼의 정보어 열 블록을 덧붙여 주면 전송되는 열 블록의 수를 유지하면서 원하는 부호율을 얻을 수 있다. 즉, 16-QAM 변조 방식을 사용하면서 부호율 1/2일 경우에는 전송률이 2이며, 전송률 2.5를 만족하기 위하여 16-QAM 방식을 사용하면서 부호율 5/8인 부호를 사용할 수 있다. 그리고 전송률 3.5를 만족하기 위하여 변조 방식은 64-QAM을 사용하면서 부호율은 7/12를 사용할 수 있다. 그리고 전송률 4.0을 만족하기 위하여 64-QAM을 사용하면서 부호율 2/3인 부호를 사용할 수 있다.
이하의 <표 2>에서는 다양한 전송률을 지원하는 패리티 검사 행렬의 정보어에 상응하는 열블록의 수와 패리티어에 상응하는 열 블록의 수를 나타내었다. 이때 정보어 열 블록의 수에서 차수가 =12인 블록의 개수()와 차수가 3인 열블록의 개수 를 나타내었다. 또한 패리티 열 블록의 수 에서는 천공되는 열 블록의 수 와 천공되지 않는 열 블록의 수 를 나타내었다.
이하에서는 <표 2>에 나타낸 부호들을 모두 표현할 수 있는 패리티 검사 행렬을 설계하는 방법을 설명하고자 한다. 전송률이 2.0일 경우(부호율이 1/2일 경우)의 패리티 검사행렬을 기반으로 패리티 열 블록을 천공한 후에 차수가 12 또는 3인 열 블록을 덧붙여 주어 원하는 전송률을 만족하는 부호율을 얻을 수 있다. 이 때 덧붙여진 열 블록의 차수 분포는 밀도 진화 분석을 사용하여 구할 수 있다. 이 때 차수가 3인 열 블록의 개수 중에 가장 큰 값 이고, 차수가 12인 열 블록의 개수 중에 가장 큰 값 이므로 "28 + 6 + 24 = 58"로 총 58개의 열 블록과 24개의 행 블록을 가지는 패리티 검사 행렬이 필요하다. 번째 전송률을 얻기 위하여 필요한 천공된 패리티 열 블록의 수를 라 하자. 설계된 패리티 검사행렬에서 개의 패리티 열 블록을 천공하고, 단축법을 사용하여 차수가 12인 열 블록과 차수가 3인 열 블록을 각각 개와 개 제거하면, 번째 부호율과 변조 방식에서 최적화된 차수 분포를 가지는 부분 행렬을 얻을 수 있다. 즉, 전송률이 2일 경우 변조 방식은 16-QAM을 사용하며, 정보어 열 블록에서 차수가 12인 열 블록 6개 중에서 2개를 제거하고, 차수가 3인 열 블록 28개 중에서 8개를 제거하며 패리티 열 블록 24개를 기반으로 하여 부호율 1/2인 LDPC 부호어를 사용한다. 전송률이 2.5일 경우 변조 방식은 16-QAM을 사용하며 정보어 열 블록에서 차수가 3인 열 블록 28개 중에서 8개를 제거하며 패리티 열블록 24개를 기반으로 하여 부호화 하고 패리티 열 블록 중에서 6개의 열 블록에 상응하는 부호어를 천공하여 부호율 2/3인 LDPC 부호어를 사용한다. 전송률이 3.5일 경우 변조 방식은 64-QAM을 사용하며 정보어 열 블록에서 차수가 12인 열 블록 6개 중에서 2개를 제거하며, 정보어 열 블록에서 차수가 3인 열 블록 28개 중에서 4개를 제거하며, 패리티 열 블록 24개를 기반으로 하여 부호화 하고, 패리티 열 블록 중에서 4개의 열 블록에 상응하는 부호어를 천공하여 부호율 7/12인 LDPC 부호어를 사용한다. 그리고 전송률이 4.0일 경우 변조 방식은 64-QAM을 사용하며 정보어 열 블록에서 차수가 12인 열 블록 6개 중에서 2개를 제거하며, 패리티 열 블록 24개를 기반으로 하여 부호화 하고, 패리티 열 블록 중에서 8개의 열 블록에 상응하는 부호어를 천공하여 부호율 7/12인 LDPC 부호어를 사용한다.
도 5는 상기 <표 2>의 조건을 만족하는 블록 LDPC 부호의 패리티 검사 행렬을 도시한 도면이다. 이하 도 5를 이용하여 본 발명의 다른 실시 예를 설명하고자 한다. 도 5에서도 각각의 변조 방식 옆에 표시된 S는 단축될 열 블록들을 표시하며, P는 천공될 열 블록들을 나타낸다.
그러면 도 5를 참조하여 상기 <표 2>의 내용을 살펴보기로 한다. 원형 메트릭스로부터 부호율 1/2을 사용할 경우에는 차수가 12인 블록 열들(510) 중에서 블록 열 4와 블록 열 5를 단축하며, 차수가 3인 블록 열들(520) 중에서 블록열 26, 블록열 27, 블록열 28, 블록열 29, 블록열 30, 블록열 31, 블록열 32, 블록열 33을 단축한다. 즉, 상기 블록 열들을 제외한 블록열들을 기반으로 부호화/복호화 한다. 그리고 패리티 파트에서는 천공이 이루어지지 않는다. 이와 동일한 방식으로 부호율 5/8인 부호율 7/12인 경우 및 부호율 2/3인 경우도 동일하게 해석할 수 있다.
도 6은 본 발명의 실시 예에 따라 다양한 전송률을 지원하는 블록 LDPC 부호어를 부호화할 경우의 순서도이다. 이하 도 6을 이용하여 본 발명의 실시 예에 따라 다양한 전송률을 지원하는 블록 LDPC 부호어를 부호화 하는 과정을 살펴보기로 한다. 또한 상기 도 6을 설명함에 있어서, 부호화 과정의 제어는 송신기의 제어부(도면에 도시하지 않음)에서 이루어지는 것으로 가정하여 설명한다.
송신기의 제어부는 600단계에서 변조 방식 및 부호율을 결정하여 전송률을 결정한다. 이러한 변조 방식, 부호율 및 전송률의 결정은 각 시스템마다 서로 다른 방법으로 결정될 수 있다. 예를 들어 전송하고자 하는 패킷의 패턴이 미리 정해진 패턴들 중 하나로 결정되면, 그에 따라 상기 변조 방식, 부호율, 전송률이 결정될 수 있다. 그런 후 송신기의 제어부는 602단계에서 앞에서 설명한 바와 같이 원형 메트릭스로부터 단축할 열들을 결정하고, 부호화 행렬을 구성한다. 이와 같이 부호화 행렬이 구성되면, 송신기의 제어부는 604단계에서 부호화 행렬을 기반으로 전송할 데이터를 부호화한다. 그리고, 송신기의 제어부는 606단계로 진행하여 부호화된 심볼에서 천공이 필요한가를 검사한다. 만일 천공이 필요한 경우 송신기의 제어부는 608단계로 진행하고, 그렇지 않은 경우 송신기의 제어부는 610단계로 진행한다.
한편, 상기 천공이 필요한가를 검사하는 606단계와 천공을 수행하는 608단계는 602단계 직후에 이루어질 수도 있다. 이와 같은 변형은 이 분야의 통상의 지식을 가진 자에게 자명한 사항이므로 더 상세히 설명하지 않기로 한다.
상기 606단계의 검사결과 천공이 필요한 경우 송신기의 제어부는 608단계로 진행하여 천공이 필요한 위치에 천공한 후 610단계로 진행한다. 606단계에서 천공이 필요하지 않아 610단계로 진행하거나 또는 608단계를 거쳐 천공이 이루어진 후 610단계로 진행하면, 송신기의 제어부는 변조기를 제어하여 부호어 비트들을 변조한다. 그런 후 송신기의 제어부는 612단계에서 변조한 심볼들을 송신한다.
이하에서는 부호율 1/2, 2/3, 3/4, 5/6, 7/8에 대하여 각 부호율에서 QPSK, 16-QAM, 64-QAM 변조 방식을 사용하는 시스템에서 본 발명에서 설명한 LDPC 부호의 패리티 검사 행렬을 사용하는 방법에 대하여 설명하고자 한다. 설명의 편의를 위하여 사용되는 열 블록의 개수는 96을 사용하며, 부호율 1/2의 행 블록의 개수는 48, 부호율 2/3의 행 블록의 개수는 32, 부호율 3/4의 행 블록의 개수는 24, 부호율 5/6의 행 블록의 개수는 16, 부호율 7/8의 행 블록의 개수는 12이다.
하기 <표 3>에서 부호율 1/2에 대하여 각 변조 방식에서 우수한 성능을 보장하는 열 블록의 차수 분포를 도시하였다.
열 블록 차수 | 2 | 3 | 12 |
QPSK | 47 | 36 | 13 |
16-QAM | 47 | 41 | 8 |
64-QAM | 47 | 43 | 6 |
도 7a 및 도 7b는 상기 <표3>의 열 블록의 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면이다.
본 발명에서 설명한 바와 같이 단일 패리티 검사 행렬을 사용하여 다수의 변조 방식을 지원하기 위하여 각 변조 방식마다 다수의 열 블록을 삭제할 수 있다. 하기의 <표 4>에서는 각 변조 방식에 대하여 삭제되는 열 블록을 나타내었다. 즉, QPSK 변조 방식을 사용할 경우 13, 14, 15, 16, 17, 18, 19 열 블록은 사용하지 않고 부호화 및 복호화 할 수 있다.
변조 차수 | 삭제되는 열 블록 |
QPSK | 13, 14, 15, 16, 17, 18, 19 |
16-QAM | 8, 9, 10, 11, 12, 13, 14 |
64-QAM | 6, 7, 8, 9, 10, 11, 12 |
또한 하기 <표 5>에서 부호율 2/3에 대하여 각 변조 방식에서 우수한 성능을 보장하는 열 블록의 차수 분포를 도시하였다.
열 블록 차수 | 2 | 3 | 12 |
QPSK | 31 | 52 | 13 |
16-QAM | 31 | 56 | 9 |
64-QAM | 31 | 58 | 7 |
도 8a 및 도 8b는 상기 <표 5>의 열 블록의 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면이다.
본 발명에서 설명한 바와 같이 단일 패리티 검사 행렬을 사용하여 다수의 변조 방식을 지원하기 위하여 각 변조 방식마다 다수의 열 블록을 삭제할 수 있다. 하기의 <표 6>에서는 각 변조 방식에 대하여 삭제되는 열 블록을 나타내었다. 즉, QPSK 변조 방식을 사용할 경우 13, 14, 15, 16, 17, 18 열 블록은 사용하지 않고 부호화 복호화 할 수 있다.
변조 차수 | 삭제되는 열 블록 |
QPSK | 13, 14, 15, 16, 17, 18 |
16-QAM | 9, 10, 11, 12, 13, 14 |
64-QAM | 7, 8, 9, 10, 11, 12 |
하기 <표 7>에서 부호율 3/4에 대하여 각 변조 방식에서 우수한 성능을 보장하는 열 블록 차수 분포를 나타내었다.
열 블록 차수 | 2 | 3 | 12 |
QPSK | 23 | 58 | 15 |
16-QAM | 23 | 63 | 10 |
64-QAM | 23 | 66 | 7 |
도 9a 및 도 9b는 상기 <표 7>의 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면이다.
본 발명에서 설명한 바와 같이 단일 패리티 검사 행렬을 사용하여 다수의 변조 방식을 지원하기 위하여 각 변조 방식마다 다수의 열 블록을 삭제할 수 있다. 하기 <표 8>에서는 각 변조 방식에 대하여 삭제되는 열 블록을 나타내었다. 즉, QPSK 변조 방식을 사용할 경우 15, 16, 17, 18, 19, 20, 21, 22 열 블록은 사용하지 않고 부호화 복호화 할 수 있다.
변조 차수 | 삭제된는 열 블록 |
QPSK | 15, 16, 17, 18, 19, 20, 21, 22 |
16-QAM | 10, 11, 12, 13, 14, 15, 16, 17 |
64-QAM | 7, 8, 9, 10, 11, 12, 13, 14 |
하기 <표 9>에서 부호율 5/6에 대하여 각 변조 방식에서 우수한 성능을 보장하는 열 블록의 차수 분포를 나타내었다.
열 블록 차수 | 2 | 3 | 12 |
QPSK | 15 | 66 | 15 |
16-QAM | 15 | 70 | 11 |
64-QAM | 15 | 71 | 10 |
도 10a 및 도 10b는 상기 <표 9>의 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면이다.
본 발명에서 설명한 바와 같이 단일 패리티 검사 행렬을 사용하여 다수의 변조 방식을 지원하기 위하여 각 변조 방식마다 다수의 열 블록을 삭제할 수 있다. 하기의 <표 10>에서는 각 변조 방식에 대하여 삭제되는 열 블록을 나타내었다. 즉, QPSK 변조 방식을 사용할 경우 15, 16, 17, 18, 19 열 블록은 사용하지 않고 부호화 복호화 할 수 있다.
변조 차수 | 삭제된는 열 블록 |
QPSK | 15, 16, 17, 18, 19 |
16-QAM | 11, 12, 13, 14, 15 |
64-QAM | 10, 11, 12, 13, 14 |
하기 <표 11>에서 부호율 7/8에 대하여 각 변조 방식에서 우수한 성능을 보장하는 열 블록 차수 분포를 나타내었다.
열블록 차수 | 2 | 3 | 12 |
QPSK | 11 | 69 | 16 |
16-QAM | 11 | 73 | 12 |
64-QAM | 11 | 75 | 10 |
도 11a 및 도 11b는 상기 <표 11>의 열 블록 차수 분포를 만족하는 패리티 검사 행렬의 지수들을 도시한 도면이다.
본 발명에서 설명한 바와 같이 단일 패리티 검사 행렬을 사용하여 다수의 변조 방식을 지원하기 위하여 각 변조 방식마다 다수의 열 블록을 삭제할 수 있다. 하기 <표 12>에서는 각 변조 방식에 대하여 삭제되는 열 블록을 나타내었다. 즉, QPSK 변조 방식을 사용할 경우 16, 17, 18, 19, 20, 21 열 블록은 사용하지 않고 부호화 및 복호화 할 수 있다.
변조 차수 | 삭제된는 열 블록 |
QPSK | 16, 17, 18, 19, 20, 21 |
16-QAM | 12, 13, 14, 15, 16, 17 |
64-QAM | 10, 11, 12, 13, 14, 15 |
도 12는 본 발명의 실시 예에 따른 복호기의구조를 도시한 내부 블록 구성도이다. 이하 도 12를 참조하여 본 발명의 실시 예에 따라 상기 도 2에 도시한 복호기의 내부 구조를 살펴보기로 한다.
복호기(215)는 블록 제어기(1211), 변수 노드 복호기(1213)와, 스위치(1215)와, 배타적 논리합 연산기(1217)와, 디인터리버(de-interleaver)(1212)와, 인터리버(interleaver)(1221)와, 제어기(1223)와, 메모리(memory)(1225)와, 배타적 논리합 연산기(1227)와, 검사 노드 복호기(1229)와, 경판정기(1231)를 포함한다.
복조기(213)에서 출력된 신호는 블록 제어기(1211)에 입력되며, 블록 제어기(1211)는 도 2에 도시된 복조기(213)에서 출력한 신호를 입력하여 신호 송신 장치에서 적용한 부호어 벡터()의 크기에 상응하게 부호어 벡터()의 크기를 결정한다. 여기서, 상기 블록 제어기(1211)는 상기 신호 송신 장치에서 정보 벡터() 중 특정 정보 비트들을 천공하여 송신하였을 경우, 상기 천공된 정보 비트들에 해당하는 비트들에 0을 삽입한 후 상기 변수 노드 복호기(1213)로 출력한다. 또한, 상기 블록 제어기(1211)는 상기 신호 송신 장치와 상기 신호 수신 장치 간에 미리 규약된 패리티 검사 행렬을 미리 저장하고 있으며, 또한 상기 신호 송신 장치에서 적용한 부호화율에 상응하는 패리티 검사 행렬의 열 정보 등을 미리 저장하고 있다. 여기서, 상기 블록 제어기(1211)는 상기 해당 부호화율에 따라 천공되는 비트들의 개수 뿐만 아니라 그 위치 정보까지도 미리 저장하고 있다. 이러한 정보는 별도의 메모리(도 12에 도시하지 않음)를 통해 저장할 수도 있다.
상기 변수 노드 복호기(1213)는 상기 블록 제어기(1211)에서 출력한 신호를 입력하여 그 확률 값들을 계산하고, 상기 계산된 확률 값들을 업데이트한 후 상기 스위치(1215)의 스위칭 동작을 통해 상기 경판정기(1231) 또는 상기 배타적 논리합 연산기(1217)로 출력한다. 여기서, 상기 변수 노드 복호기(1213)는 상기 복호기 내부에 미리 설정되어 있는 패리티 검사 행렬에 상응하게 변수 노드들을 연결하며, 상기 변수 노드들에 연결된 1의 개수만큼의 입력 값과 출력 값을 갖는 업데이트 연산을 수행한다. 또한, 상기 변수 노드들 각각에 연결된 1의 개수는 상기 패리티 검사 행렬을 구성하는 열들 각각의 웨이트와 동일하다. 따라서, 상기 패리티 검사 행렬을 구성하는 열들 각각의 웨이트에 따라 상기 변수 노드 복호기(1213)의 내부 연산이 상이하게 된다. 또한 상기 스위치(1915)의 제어는 제어기(1223)에 의해 제어될 수 있다.
상기 배타적 논리합 연산기(1217)는 상기 변수 노드 복호기(1213)에서 출력한 신호와 이전 반복 복호(iteration decoding) 과정에서의 상기 인터리버(1221)의 출력 신호를 입력하고, 상기 변수 노드 복호기(1213)에서 출력한 신호에서 이전 반복 복호 과정에서의 상기 인터리버(1221)의 출력 신호를 감산한 후 상기 디인터리버(1212)로 출력한다. 여기서, 상기 복호 과정이 최초의 복호 과정일 경우, 상기 인터리버(1221)의 출력 신호는 0이라고 간주해야 함은 물론이다.
상기 디인터리버(1212)는 상기 배타적 논리합 연산기(1217)에서 출력한 신호를 입력하여 미리 설정되어 있는 디인터리빙 방식에 상응하게 디인터리빙(de-interleaving)한 후 상기 배타적 논리합 연산기(1227)와 검사 노드 복호기(1229)로 출력한다. 여기서, 상기 디인터리버(1227)의 내부 구조는 상기 패리티 검사 행렬에 상응하는 구조를 가지며, 그 이유는 상기 패리티 검사 행렬의 1의 값을 가지는 엘리먼트들의 위치에 따라 상기 디인터리버(1227)에 대응하는 인터리버(1221)의 입력 값에 대한 출력 값이 상이해지기 때문이다.
상기 배타적 논리합 연산기(1227)는 이전 반복 복호 과정에서의 상기 검사 노드 복호기(1229)의 출력 신호와 상기 디인터리버(1212)의 출력 신호를 입력하고, 상기 이전 반복 복호 과정에서의 상기 검사 노드 복호기(1229)의 출력 신호에서 상기 디인터리버(1212)의 출력 신호를 감산한 후 상기 인터리버(1221)로 출력한다. 상기 검사 노드 복호기(1229)는 상기 복호기에 미리 설정되어 있는 패리티 검사 행렬에 상응하게 검사 노드들을 연결하며, 상기 검사 노드들에 연결된 1의 개수만큼의 입력 값과 출력 값을 갖는 업데이트 연산이 수행된다. 상기 검사 노드들 각각에 연결된 1의 개수는 상기 패리티 검사 행렬을 구성하는 행들 각각의 웨이트와 동일하다. 따라서, 상기 패리티 검사 행렬을 구성하는 행들 각각의 웨이트에 따라 상기 검사 노드 복호기(1229)의 내부 연산이 상이하게 된다.
여기서, 상기 디인터리버(1221)는 상기 제어기(1223)의 제어에 따라 미리 설정되어 있는 설정 방식으로 상기 배타적 논리합 연산기(1127)에서 출력한 신호를 디인터리빙한 후 상기 배타적 논리합 연산기(1217) 및 상기 변수 노드 복호기(1213)로 출력한다. 여기서, 상기 제어기(1223)는 상기 메모리(1225)에 저장되어 있는 인터리빙 방식에 관련된 정보를 읽어 상기 인터리버(1221)의 인터리빙 방식을 제어하게 되는 것이다. 또한, 상기 복호 과정이 최초의 복호 과정일 경우에는 상기 디인터리버(1212)의 출력 신호는 '0'이라고 간주해야함은 물론이다.
상기와 같은 과정들을 반복적으로 수행함으로써 오류 없이 신뢰도 높은 복호를 수행하며, 미리 설정한 설정 반복 회수에 해당하는 반복 복호를 수행한 후에는 상기 스위치(1215)는 상기 변수 노드 복호기(1213)와 배타적 논리합 연산기(1217)간을 오프시킨 후, 상기 변수 노드 복호기(1213)와 경판정기(1231)간을 스위칭 온하여 상기 변수 노드 복호기(1213)에서 출력한 신호가 상기 경판정기(1231)로 출력하도록 한다. 상기 경판정기(1231)는 상기 변수 노드 복호기(1213)에서 출력한 신호를 입력하여 경판정한 후, 그 경판정 결과를 출력하게 되고, 상기 경판정기(1131)의 출력값이 최종적으로 복호된 값이 된다.
이상에서 상술한 바와 같이 본 발명을 적용하면, LDPC 부호를 사용하는 통신 시스템의 송/수신기에서 서로 다른 변조 방식 및 전송률에 따라 사용할 수 있는 최적의 LDPC 부호를 미리 생성한 후 사용할 부분만을 선택하거나 또는 단축하도록 함으로써 적응적으로 사용할 수 있어 메모리의 크기를 줄일 수 있는 이점이 있다.
Claims (2)
- LDPC 부호를 사용하는 통신 시스템에서 LDPC 부호어를 생성하기 위한 방법에 있어서,각 부호율에서 모든 변조 방식에서 사용할 수 있는 원형 메트릭스을 생성하는 과정과,전송에 결정된 변조 방식에 따라 상기 원형 메트릭스에서 사용할 메트릭스을 선택하는 과정과,상기 선택된 메트릭스을 이용하여 전송할 데이터를 부호어로 부호화하는 과정을 포함함을 특징으로 하는 LDDPC 부호화 방법.
- LDPC 부호를 사용하는 통신 시스템에서 LDPC 부호어를 생성하기 위한 장치에 있어서,각 부호율에서 모든 변조 방식에서 사용할 수 있는 원형 메트릭스을 저장하는 메모리와,전송에 결정된 변조 방식에 따라 상기 메모리로부터 상기 원형 메트릭스에서 사용할 메트릭스을 선택하는 제어부와,상기 선택된 메트릭스을 이용하여 전송할 데이터를 부호어를 생성하는 부호기를 포함함을 특징으로 하는 LDDPC 부호화 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070054546A KR101524869B1 (ko) | 2007-06-04 | 2007-06-04 | 저밀도 패리티 검사 부호의 부호화 및 복호화 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070054546A KR101524869B1 (ko) | 2007-06-04 | 2007-06-04 | 저밀도 패리티 검사 부호의 부호화 및 복호화 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080106738A true KR20080106738A (ko) | 2008-12-09 |
KR101524869B1 KR101524869B1 (ko) | 2015-06-02 |
Family
ID=40367335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070054546A KR101524869B1 (ko) | 2007-06-04 | 2007-06-04 | 저밀도 패리티 검사 부호의 부호화 및 복호화 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101524869B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019031925A1 (ko) * | 2017-08-10 | 2019-02-14 | 삼성전자 주식회사 | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10784901B2 (en) | 2015-11-12 | 2020-09-22 | Qualcomm Incorporated | Puncturing for structured low density parity check (LDPC) codes |
US10291354B2 (en) | 2016-06-14 | 2019-05-14 | Qualcomm Incorporated | High performance, flexible, and compact low-density parity-check (LDPC) code |
US10312939B2 (en) | 2017-06-10 | 2019-06-04 | Qualcomm Incorporated | Communication techniques involving pairwise orthogonality of adjacent rows in LPDC code |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050118056A (ko) * | 2004-05-12 | 2005-12-15 | 삼성전자주식회사 | 다양한 부호율을 갖는 Block LDPC 부호를 이용한이동 통신 시스템에서의 채널부호화 복호화 방법 및 장치 |
KR101157246B1 (ko) * | 2005-05-16 | 2012-06-15 | 삼성전자주식회사 | 저밀도 패리티 검사 부호의 패딩 및 천공 방법 |
-
2007
- 2007-06-04 KR KR1020070054546A patent/KR101524869B1/ko active IP Right Grant
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019031925A1 (ko) * | 2017-08-10 | 2019-02-14 | 삼성전자 주식회사 | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 |
US11258536B2 (en) | 2017-08-10 | 2022-02-22 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding/decoding channel in communication or broadcasting system |
US11646818B2 (en) | 2017-08-10 | 2023-05-09 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding/decoding channel in communication or broadcasting system |
Also Published As
Publication number | Publication date |
---|---|
KR101524869B1 (ko) | 2015-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10425258B2 (en) | Method and apparatus for transmitting and receiving data in a communication system | |
KR101922555B1 (ko) | 방송/통신시스템에서 정보 송수신 방법 및 장치 | |
KR100966043B1 (ko) | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 신호 송수신 장치 및 방법 | |
KR101611169B1 (ko) | 통신/방송 시스템에서 데이터 송수신 장치 및 방법 | |
KR101791477B1 (ko) | 통신/방송 시스템에서 데이터 송수신 장치 및 방법 | |
KR101444458B1 (ko) | 통신 시스템에서 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법 | |
CN106899311B (zh) | 混合极性码的生成方法和生成装置 | |
JP5612699B2 (ja) | 通信システムにおけるデータ送受信方法及び装置 | |
US8689093B2 (en) | Method and apparatus for channel encoding and decoding in a communication system using a low-density parity check code | |
KR102694927B1 (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
CN108173621B (zh) | 数据传输的方法、发送设备、接收设备和通信系统 | |
JPWO2007108396A1 (ja) | 通信装置、復号装置、情報伝送方法および復号方法 | |
KR20190028788A (ko) | 코드를 인코딩 및 디코딩하기 위한 방법과 시스템 | |
KR20050062942A (ko) | 이동 통신 시스템에서 불균일 오류 확률을 갖는 부호화에따른 데이터 송수신 방법 및 장치 | |
US20190229752A1 (en) | Apparatus and methods for polar code construction and bit position allocation | |
KR102549344B1 (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
KR101524869B1 (ko) | 저밀도 패리티 검사 부호의 부호화 및 복호화 장치 및 방법 | |
KR20170060562A (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
KR20170075627A (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
KR20180107692A (ko) | 통신 또는 방송 시스템에서 harq 적용시 전송 방법 및 장치 | |
KR102509968B1 (ko) | 통신 또는 방송 시스템에서 harq 적용시 전송 방법 및 장치 | |
KR20220130645A (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
KR102378706B1 (ko) | 통신 또는 방송 시스템에서 채널 부호화/복호화 방법 및 장치 | |
KR100871249B1 (ko) | 통신 시스템에서 신호 송수신 장치 및 방법 | |
KR20190017600A (ko) | 통신시스템에서 효율적인 데이터 송수신 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
J201 | Request for trial against refusal decision | ||
B601 | Maintenance of original decision after re-examination before a trial | ||
J301 | Trial decision |
Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20131217 Effective date: 20150429 |
|
S901 | Examination by remand of revocation | ||
GRNO | Decision to grant (after opposition) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180427 Year of fee payment: 4 |