KR100886075B1 - 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템 - Google Patents

방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템 Download PDF

Info

Publication number
KR100886075B1
KR100886075B1 KR1020077005731A KR20077005731A KR100886075B1 KR 100886075 B1 KR100886075 B1 KR 100886075B1 KR 1020077005731 A KR1020077005731 A KR 1020077005731A KR 20077005731 A KR20077005731 A KR 20077005731A KR 100886075 B1 KR100886075 B1 KR 100886075B1
Authority
KR
South Korea
Prior art keywords
parity bit
bit address
parity
information bits
information
Prior art date
Application number
KR1020077005731A
Other languages
English (en)
Other versions
KR20070035115A (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 더 디렉티브 그룹, 인크.
Publication of KR20070035115A publication Critical patent/KR20070035115A/ko
Application granted granted Critical
Publication of KR100886075B1 publication Critical patent/KR100886075B1/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
    • 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
    • H03M13/1165QC-LDPC codes as defined for the digital video broadcasting [DVB] specifications, e.g. DVB-Satellite [DVB-S2]
    • 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
    • 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/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
    • 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6561Parallelized implementations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/0048Decoding adapted to other signal detection operation in conjunction with detection of multiuser or interfering signals, e.g. iteration between CDMA or MIMO detector and FEC decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/02Arrangements for detecting or preventing errors in the information received by diversity reception
    • H04L1/06Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
    • H04L1/0618Space-time coding
    • H04L1/0625Transmitter arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/02Arrangements for detecting or preventing errors in the information received by diversity reception
    • H04L1/06Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
    • H04L1/0618Space-time coding
    • H04L1/0637Properties of the code
    • H04L1/0643Properties of the code block codes
    • 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/0413MIMO systems

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)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

LDPC 코드를 설계하기 위한 방법 및 시스템을 개시한다. 본 발명에 따른 방법은 복수의 병렬 누산 엔진을 구성하는 단계 - 상기 복수의 병렬 누산 엔진의 개수는 M과 같음 - , 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계, 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계, M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계, 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 M개의 정보 비트를 누산하는 단계, 상기 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계 및 정보 비트를 다 이용할 때까지 어드레스를 누산하고 증가시키는 단계를 반복하는 단계를 포함한다.
Figure R1020077005731
코드 설계, 패리티 검사, 다중입력 다중출력, 오프셋, 어드레스

Description

방송 시스템에서 복수의 정보 비트를 포함한 데이터를 인코딩하는데 이용되는 저밀도 패리티 검사 코드를 설계하기 위한 방법 및 시스템{CODE DESIGN AND IMPLEMENTATION IMPROVEMENTS FOR LOW DENSITY PARITY CHECK CODES FOR MULTIPLE-INPUT MULTIPLE-OUTPUT CHANNELS}
본 발명은 일반적으로 디지털 신호 전달 시스템에 관한 것으로, 더욱 상세하게는, 디지털 신호 전달 시스템 내의 다중입력 다중출력 채널의 저밀도 패리티 검사(Low Density Parity Check; LDPC) 코드를 위한 설계 및 구현에 관한 것이다.
정보의 무선 주파수(Radio Frequency; RF) 송신은 널리 이용되고 있다. 통상, 단일 송신 안테나는 하나 이상의 수신 안테나에 의해 수신될 수 있는 신호를 송신한다. 이러한 시스템의 예로는 위성 텔레비전 방송과 같은 위성 방송, 라디오 및 셀룰러 전화 시스템이 있다.
이러한 시스템의 사용 용이성 때문에, 이러한 시스템을 통한 고속 데이터 전송에 대한 요구가 더욱더 증가하고 있다. 영상이나 오디오에 대한 많은 양의 데이터와 기타 데이터의 전송을 필요로 하는 무선 인터넷 접속은 단일 송신 안테나 시스템을 통한 많은 처리량을 필요로 한다. 현재, 이들 시스템 대부분이 그 데이터 처리량 한계에 도달하고 있으므로, 이러한 서비스를 원하는 영역에서 무선 데이터 전송을 제공하기가 어렵게 된다.
근래, 다중 송신 안테나와 다중 수신 안테나를 채용하여 데이터 처리량을 증가시키려는 다중입력 다중출력(Multiple Input Multiple Output; MIMO) 시스템을 가지려는 움직임이 있다. MIMO 시스템의 예로는 무선 근거리 통신망(Local Area Networks; LANs), 블루투스 네트워크 및 고속 무선(Wi-Fi) 네트워크가 있다. MIMO 시스템은 표준 시스템의 경우 다중경로 에러 및 간섭을 일으키게 되는 다중 신호 경로를 이용하여 한 곳에서 다른 곳으로 추가 데이터를 송신한다. 이러한 시스템이 적절히 기능을 하기 위해서는 MIMO 데이터를 적절히 송신하고 그 다음에 MIMO 송신된 데이터를 수신기에서 재결합하기 위한 알고리즘을 고려하고 MIMO 데이터와 함께 송신해야 한다.
이론상, MIMO 시스템은 단일 송신 안테나 시스템의 스펙트럼 효율에 비해 스펙트럼 효율을 2배로 한다. 단일 송신 안테나 시스템을 이용하는 경우와 같이, MIMO 시스템 내의 데이터 프레임들은 프레임들이 서로 간섭할 수 있는 방식으로 코딩되므로, MIMO 수신기는 어떤 데이터 패킷이 먼저 출발하는지를 구별할 수 없거나, 소정의 프레임 내의 데이터가 보강 또는 상쇄 간섭에 의해 훼손되는지 여부를 구별할 수 없게 된다. 이러한 간섭은 "동일 채널(co-channel)" 간섭으로 지칭되고, 여기서, 하나의 데이터 채널은 다른 데이터 채널의 수신 및 복조와 간섭한다. 또한, 실제 응용에서는, 동일 채널 간섭이 MIMO 시스템 내의 다른 시스템 운용자의 송신 또는 다른 스폿 송신 빔으로부터 발생할 수도 있다. MIMO 시스템이 더 많은 데이터를 송신함에 따라, 데이터 패킷 간의 간섭이 증가하고, 그 자체로, 신호 수 신 품질이 열악해진다.
송신 시스템이 송신된 데이터를 적절히 디코드할 수 있는 것을 보장하기 위해, 에러 정정 코드, 특히, 순방향 에러 정정(Forward Error Correction; FEC) 코드를 이용한다. 그러나, MIMO 시스템의 경우, FEC 코드들은 이들 코드가 서로 간섭할 가능성 때문에 무작위로 선택될 수 없다.
통상, 이러한 간섭의 부정적인 효과는 여러 송신기와 수신기에 할당되는 주파수 할당을 재설계함으로써 최소화되었다. 그러나, 주파수가 표준 주파수로 고정되므로, 주파수 재할당 또는 주파수 재사용은 이러한 문제를 일정 지점을 넘어서 완화하지 않게 된다.
그러면, 당해 기술분야에서는 방송 시스템 내의 간섭을 최소화하기 위한 필요성이 존재한다는 것을 알 수 있다. 또한, 당해 기술분야에서는 MIMO 시스템 내의 FEC 코드의 적절한 선택에 대한 필요성이 존재한다는 것도 알 수 있다.
종래 기술에서의 제한을 최소화하고, 본 명세서를 읽고 이해함으로써 명확하게 되는 다른 제한을 최소화하기 위해, 본 발명은 LDPC 코드를 설계하기 위한 방법 및 시스템을 개시한다. 본 발명에 따른 방법은 복수의 병렬 누산 엔진을 구성하는 단계 - 복수의 병렬 누산 엔진의 개수는 M과 같음 - , 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계, 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계, M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계, 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 M개의 정보 비트를 누산하는 단계, 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계 및 정보 비트를 다 이용할 때까지 어드레스를 누산하여 증가시키는 단계를 포함한다.
본 발명의 방법은 다중입력 다중출력(Multipel-Input Multiple-Output; MIMO) 시스템에서 LDPC 코드의 이용, LDPC 인코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형(code-dependent)인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함할 수 있다.
본 발명에 따른 시스템은 복수의 병렬 누산 엔진 - 복수의 병렬 누산 엔진의 개수는 M과 같음 -, 및 패리티 비트 검사 행렬을 포함하고, 제1 정보 비트는 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 누산되고, 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스는 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가하고, 후속 정보 비트는 M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 누산되고, 다음 M개의 정보 비트는 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 누산되고, 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스는 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가하고, 복수의 정보 비트 내의 각각의 정보 비트는 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 누산된다.
본 발명의 시스템은 MIMO 시스템에서 LDPC 코드의 이용, LDPC 인코더 또는 디코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함할 수 있다.
본 발명에 따른 다른 방법은 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계, 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 증가시키는 단계, 복수의 병렬 누산 엔진의 개수와 같은 인덱스 번호를 갖는 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계, 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 번호의 복수의 병렬 누산 엔진 정보 비트를 누산하는 단계 및 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 증가시키는 단계를 포함하고, 복수의 정보 비트 내의 각각의 정보 비트는 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 누산된다.
본 발명의 방법은 MIMO 시스템에서 LDPC 코드의 이용, LDPC 인코더 또는 디코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함할 수 있다.
본 발명의 기타 특징 및 이점은 본원에서 청구되고 개시되는 시스템 및 방법에 고유하고, 당해 기술분야의 당업자는 다음 상세한 설명과 그 첨부된 도면으로부터 명확하게 알 수 있다.
이하, 동일 참조 부호가 명세서 전체에서 대응하는 부분을 나타내는 도면을 참조한다.
도 1은 본 발명의 LDPC-코딩된 MIMO 시스템의 시스템 블록도.
도 2는 본 발명의 패리티 검사 행렬의 서브행렬을 도시한 도면.
도 3a 내지 도 3c는 본 발명의 성능의 시뮬레이션을 도시한 도면.
도 4a 내지 도 4c는 본 발명의 짧은 블록 길이 LDPC 코드의 성능의 시뮬레이션을 도시한 도면.
도 5는 본 발명의 예시적인 방법을 도시한 흐름도.
다음 설명에서는, 본 발명의 일부를 형성하고 일 예로서 본 발명의 몇몇 실 시예를 도시하는 첨부된 도면을 참조한다. 본 발명의 범위로부터 일탈함이 없이 다른 실시예를 이용할 수 있고 구조적인 변경을 할 수 있음을 알 수 있다.
개요
본 발명은 저밀도 패리티 검사(Low Density Parity Check; LDPC) 코드를 이용하여 본 발명의 LDPC 코드를 생성하고 디코드하는데 필요한 회로의 복잡도를 과도하게 증가시킴 없이 이러한 시스템의 이론상 한계의 몇 dB 내에서 MIMO 시스템의 성능을 향상시키기 위한 것이다.
LDPC 코드는 1962년에 갤러거(Gallager)에 의해 발견되었지만, 그 당시 기술이 효율적으로 구현하기에 충분한 정도로 성숙하지 않았기 때문에 수십 년 동안 많은 관심을 끌지는 못했다. 터보 코드의 반복형 디코딩의 성공에 의해 자극을 받아, 1995년에 LDPC 코드는 재도입되어, 그 주제에 대해 상당한 관심과 활동을 일으키고 있다. 터보 코드와 달리, LDPC 코드는 덧셈, 비교 및 테이블 룩업(look-up)과 같은 간단한 연산으로 이루어진 쉽게 병렬화 가능한 디코딩 알고리즘을 갖는다. 디코딩 알고리즘 및 연산의 간단함에도 불구하고, 설계시 도전 과제는 "무작위"로 분산된 비트 노드와 체크 노드 간의 통신을 어떻게 확립하느냐 하는 것이다.
코드의 논리적 노드와 같이 회로 내에 물리적 노드가 많이 존재하는 완전 병렬 아키텍처는 노드 간의 상호접속 복잡도로 인해 블록 크기가 증가하기 때문에 곧 실행 불가능하게 된다. 그러나, 적은 수의 물리적 노드를 재사용하여 모든 논리적 노드를 서비스하는 부분 병렬 아키텍처의 경우, 고속 응용에서 메모리로부터 충분히 빠르게 프로세스 내의 논리적 노드에 대한 관련 정보에 액세스하는 것이 중요한 문제이다.
근래, 다중안테나 입력 다중안테나 출력 시스템은 다중경로 페이딩 채널과 맞서기 위한 효과적인 방법으로서 인기를 얻고 있다. 이들 시스템에 대한 다이버시티 및 코딩 이득을 최대화하기 위해 공간-시간(space-time) 코드가 도입되었다. 그러나, 적당한 복잡도의 공간-시간 코드에 의해 전달되는 코딩 이득은 충분하지 않게 된다. 그 결과, 공간-시간 코드의 성능은 달성될 수 있는 것보다 훨씬 아래로 떨어지게 된다.
본 발명은 공간-시간 코드를 LDPC 코드로 대체하여 MIMO 시스템의 성능을 향상시키기 위한 것이다. 또한, 본 발명은 이러한 시스템을 위한 적당한 LDPC 코드를 생성하여 데이터 처리량을 증가시키고 성능을 향상시키기 위한 방법을 예시한다.
시스템 도면
도 1은 본 발명의 LDPC-코딩된 MIMO 시스템의 시스템 블록도를 도시한다.
송신기(100)와 수신기(200)는 MIMO 시스템 내에 도시되어 있다. 송신기(100) 내에는, LDPC 인코더(102), 복조기(104), 직렬-병렬 모듈(106) 및 다중 안테나 피드(108; 다중 안테나 피드(108)를 직렬-병렬 모듈(106)이 공급함)가 있다. 수신기(200) 내에는, 다중 안테나 피드(202), 검출기(204; 검출기(204)에 다중 안테나 피드(202)가 입력됨) 및 LDPC 디코더(206; LDPC 디코더(206)와 검출기(204)가 통신함)가 있다. 또한, 직교 주파수 분할 다중화 및 기타 회로는 본 발명의 범위에 영향을 주지 않고 변조기/검출기와 채널 간에 삽입될 수 있다.
MIMO 시스템의 경우, 본 발명의 LDPC 인코더(102)와 LDPC 디코더(206)는 다른 FEC(예를 들어, 터보 코드) 생성기를 대체한다. 그러나, LDPC 코드의 복잡 가능성 때문에, 본 발명은 MIMO 시스템에서 이용하기 위한 특정 방법으로 LDPC 코드를 생성한다.
MIMO 시스템과 같은 방송 응용에서는, 연속 모드 수신기가 널리 이용되고 있다. 신호 대 잡음비(signal-to-noise ratio; SNR)가 낮은 환경에서 잘 수행되는 코드는 (예를 들어, 반송파 위상과 반송파 주파수 등의) 동기화와 관련하여 이들 수신기(200)와 어울리지 않는다. 대부분의 디지털 방송 시스템은 그 동기화 프로세스를 위해 프레임 구조 내의 정규 오버헤드 비트의 이용 외에도 추가 트레이닝 심볼(training symbol)의 이용을 필요로 한다. 특히, 신호 대 잡음비가 낮은 경우에는 오버헤드의 증가를 필요로 하는데, 이러한 환경은 고성능 코드를 고차 변조와 함께 이용하는 경우에 일반적이다. 통상, 연속 모드 수신기는 피드백 제어 루프를 이용하여 반송파 주파수와 위상을 획득하고 추적한다. 단순히 피드백 제어 루프에 기초하고 있는 이러한 접근법은 강한 무선 주파수 위상 잡음과 열 잡음의 영향을 받기 쉬우므로, 전체 수신기 성능에서 높은 사이클 슬립율(cycle slip rate)과 에러 플로어(error floor)를 일으킨다. 따라서, 이들 접근법은 획득 범위가 제한되고 획득 시간이 길어지는 것 외에도 소정의 성능 목표를 위한 트레이닝 심볼의 관점에서 오버헤드가 증가한다는 것에 의해 부담을 받는다. 또한, 이들 종래 동기화 기술은 특정 변조 방식에 의존함으로써, 변조 방식의 이용에서의 유연성을 방해하게 된다.
송신기(100)에 의해 생성되는 LDPC 또는 다른 FEC 코드 또는 코드들은 어떤 성능 손실도 초래함 없이 고속 구현을 용이하게 한다. 송신기(100)로부터 출력되는 이들 구조화된 LDPC 코드는 변조 방식(예를 들어, 8PSK)에 의해 채널 에러에 이미 취약한 비트 노드에 적은 개수의 체크 노드를 할당하는 것을 회피한다. 이러한 LDPC 코드는 터보 코드와 달리 병렬화 가능 디코딩 프로세스를 가지므로, 유리하게도, 덧셈, 비교 및 테이블 룩업과 같은 간단한 연산을 필요로 한다. 또한, 신중하게 설계되는 LDPC 코드는 어떤 에러 플로어의 표시도 나타내지 않으므로, 예를 들어, 신호 대 잡음비가 증가하는 경우에도 에러가 감소하게 된다. 에러 플로어가 존재한다면, 보세/차우드후리/호켄헴(Bose/Chaudhuri/Hocquenghem; BCH) 코드와 같은 다른 코드 또는 기타 코드를 이용하여 이러한 에러 플로어를 상당히 억제하는 것이 가능하게 된다.
본 발명의 일 실시예에 따르면, 송신기(100)는 본원에서 아래에 설명되는 것과 같은 비교적 간단한 인코딩 기술을 이용하여, MIMO 시스템에서 수신기(200)와 통신하기 위해 디코딩 동안 효율적인 메모리 액세스를 용이하게 하는 패리티 검사 행렬에 기초하는 LDPC 코드를 생성한다.
송신기(100)는 LDPC 인코더(102)를 이용하여, 정보 소스로부터 입력(100)을 수신하고 수신기(200)에서 에러 정정 처리에 적합한 리던던시(redundancy)가 높은 코딩된 정보 스트림을 출력한다. 정보 소스는 이산 알파벳인 X로부터 k개의 신호를 생성한다. LDPC 코드는 패리티 검사 행렬에 의해 지정된다. 통상, LDPC 코드의 인코딩은 생성기 행렬을 지정하는 것을 필요로 한다.
LDPC 인코더(102)는 입력(110)을 이용하여 신호를 생성하고, 패리티 검사 행렬 상에 구조를 부과함으로써 패리티 검사 행렬만을 이용하는 간단한 인코딩 기술을 이용하여 이들 신호를 변조기(104)에 전달한다. 특히, 소정의 행렬 부분에 제한을 가함으로써 패리티 검사 행렬에 제한을 가하게 된다. 이러한 제한으로 인해, 성능 손실을 무시할 수 있게 되므로, 매력적인 절충을 이루게 된다.
송신 스키마
도 1에 도시된 바와 같이, nT개의 송신 안테나(108)와 nR개의 수신 안테나(202)가 존재한다. 하나의 채널에 대한 송신은
Figure 112007019874572-pct00001
로서 표현되고, 여기서,
Figure 112007019874572-pct00002
는 송신된 심볼 벡터이고,
Figure 112007019874572-pct00003
은 수신된 심볼 벡터이고,
Figure 112007019874572-pct00004
는 각각의 안테나 쌍 간의 복소 페이드 값 행렬이고, 여기서,
Figure 112007019874572-pct00005
는 레일리 분포(Rayleigh distributed)인 것으로 가정한다.
Figure 112007019874572-pct00006
은 평균 백색 가우스 잡음(Average White Gaussian Noise; AWGN) 잡음 벡터이다.
후속 채널이 이용하는
Figure 112007019874572-pct00007
행렬의 경우, 2가지 극단적인 흥미로운 경우가 존재하는데, 즉,
Figure 112007019874572-pct00008
는 각각의 채널 이용과 관계없이 변하고(즉, 이상적인 인터리빙),
Figure 112007019874572-pct00009
는 전체 FEC 프레임에 대해 일정하다(즉, 준정적 페이딩(quasi-static fading)).
본 발명은 상술한 선형 대수를 이용하여 설명되는 MIMO 채널에 대한 특정 LDPC 코드를 적용한다. 가능한 LDPC 코드의 부분집합의 용이한 메모리 액세스 특징을 유지하면서 MIMO 채널 내의 LDPC 코드의 고성능을 유지하는 것은 코드 선택의 중요한 특징이다.
LDPC 코드 및 성상도 비트 라벨링(constellation bit labelings)의 설계
도 2는 본 발명의 패리티 검사 행렬의 서브행렬을 도시한다.
본 발명은 다음과 같이 LDPC 코드의 패리티 검사 행렬을 제한한다.
M개의 비트 노드의 그룹의 경우, 예를 들어, 디그리(degree)가 dV인 제1 비트 노드에 접속되는 체크 노드를
Figure 112007019874572-pct00010
와 같이 번호를 매기면,
제i(i≤M) 비트 노드에 접속되는 체크 노드는
Figure 112007019874572-pct00011
와 같이 번호가 매겨지고, 여기서, N - K = 전체 체크 노드 개수이고,
Figure 112007019874572-pct00012
이다.
M개의 비트 노드의 다음 그룹의 경우, 이 그룹의 제1 비트 노드에 접속되는 체크 노드는 일반적으로 무작위로 선택되므로, 결국, 모든 체크 노드는 하나 적은 디그리를 갖는 하나의 체크 노드를 제외하고는 같은 디그리를 갖게 된다. 또한, 본 발명은 모든 M개의 비트 노드의 그룹 내의 제1 비트 노드에 접속되는 체크 노드인 이들 자유 상수(free constant)
Figure 112007019874572-pct00013
를 통한 무작위 검색을 포함하므로, 결과로서 생기는 LDPC 코드는 MIMO 채널 상에서 최적 성능을 갖게 된다. 또한, 패리티 검사 행렬(208) 정의에 부과되는 구조로 인해 효율적인 메모리 액세스가 가능 케 된다.
이전 제한 외에도, 패리티 검사 행렬은
Figure 112007019874572-pct00014
의 형태로 제한되고, 여기서, B는 도 2에 도시된 것과 같은 계단식 하삼각(stair lower triangular)이므로, 단지
Figure 112007019874572-pct00015
서브행렬(208)은 이전 단락에 따라 선택된다. B 서브 행렬(208)의 구조로부터, 제1 체크 노드는 다른 체크 노드보다 하나 적은 디그리를 갖는다.
또한, 본 발명의 LDPC 인코더(102)는 예를 들어,
Figure 112007019874572-pct00016
와 같이 크기가 n인 코드워드(codeword)
Figure 112007019874572-pct00017
를 통해 예를 들어,
Figure 112007019874572-pct00018
와 같이 크기가 k인 정보 블록
Figure 112007019874572-pct00019
를 체계적으로 인코딩한다. 코드워드의 송신은 i0에서 소정의 순서로 시작하고, pn -k-1에서 종료한다. 우선, n개의 코드워드 비트는 n/C 성상도 심볼에 사상되고, 여기서, 2C는 성상도 크기이다. 그 다음에, 변조된 기호는 n/(C×nT) 채널 이용시 nT개의 송신 안테나를 통해 전송된다. LDPC 코드 파라미터(n,k)는 여러 코드 레이트에 대해 표 1에 주어진다. 표 2에는 대응하는 디그리를 갖는 비트 노드의 개수가 도시되어 있다.
인코더(102)의 작업은 k개의 정보 비트
Figure 112007019874572-pct00020
의 모든 블록에 대해 n-k개의 패리티 비트
Figure 112007019874572-pct00021
을 결정하는 것이다. 다수의 병렬 엔진이 선택되고, 각각의 병렬 엔진은 특정 패리티 비트 어드레스에서 정보 비트를 누산한다. 한정 하려는 것이 아니라, 일 예로서, 400개의 병렬 엔진을 선택할 수 있다. 본 발명의 범위로부터 일탈함이 없이 많은 또는 적은 개수의 병렬 엔진을 선택할 수 있다.
우선, 패리티 비트는 0으로 초기화되는데, 즉,
Figure 112007019874572-pct00022
이다.
그 다음에, 제1 정보 비트 i0은 각각의 정보 비트의 증가에 대한 코드 레이트 의존형 오프셋을 이용하여, 특정 패리티 비트 어드레스에서, 즉, 표 4 내지 표 6의 제1 행에 지정되는 이들 패리티 비트 어드레스에서 누산된다. 본 발명의 범위로부터 일탈함이 없이 다른 패리티 비트 어드레스와 오프셋을 이용할 수 있다. 예를 들어, 레이트가 2/3(표 4)인 경우, 누산은 다음과 같다:
Figure 112007019874572-pct00023
여기서, 모든 덧셈은 지네릭 고속 덧셈(2)(Generic Fast addition(2); GF(2)) 포맷이다.
본 예를 계속 설명하면, 다음 399개의 정보 비트에 대한 누산은
Figure 112007019874572-pct00024
에서 수행되어, 패리티 비트 어드레스
Figure 112007019874572-pct00025
에서 im을 누산하고, 여기서, x는 제1 비트 i0에 대응하는 패리티 비트 누산기의 어드레스를 지시하고, q는 표 3에 지정되는 코드 레이트 의존형 오프셋 상수이다.
본 예를 계속 설명하면, 레이트가 2/3인 경우 q = 10이다. 따라서, 예를 들어, 정보 비트 i1의 경우, 누산은 다음과 같은 오프셋 패리티 비트 행렬 위치에서 일어난다.
Figure 112007019874572-pct00026
그 다음에, 이러한 누산은 오프셋 패리티 비트 행렬 위치에서 400개의 병렬 엔진에 의해 처리되는 다음 400개의 정보 비트에 대해 일어난다.
각각의 병렬 엔진에 대한 제1 누산 집합이 완성되면, 처리될 필요가 있는 추가 정보 비트가 존재하게 된다. 본 예에서는, 400개의 병렬 엔진이 존재하므로, 제401 정보 비트에 도달할 때, 누산도 일어나야 한다.
i400인 제401 정보 비트의 경우, 본 발명은 누산이 일어나는 위치로 전환된다. 표 4 내지 표 7의 제2 행에는 다음 개수의 병렬 엔진 계산에 대한 패리티 비트 누산기의 어드레스가 주어진다. 유사한 방법으로, 다음 399개의 정보 비트
Figure 112007019874572-pct00027
에 대한 패리티 비트 누산기의 어드레스는 식
Figure 112007019874572-pct00028
을 이용하여 얻어지고, 여기서, x는 표 4 내지 표 7의 제2 행 내의 엔트리인 정보 비트 i400에 대응하는 패리티 비트 누산기의 어드레스를 지시한다.
유사한 방법으로, 400개의 새로운 정보 비트의 모든 그룹에 대해, 표 4 내지 표 7의 새로운 행을 이용하여 패리티 비트 누산기의 어드레스를 찾는다. 모든 정보 비트를 다 이용한 후, 최종 패리티 비트는 다음과 같이 얻어진다.
i = 1에서 시작하는 다음 연산을 순차적으로 수행하는데, 즉,
Figure 112007019874572-pct00029
i = 1,2,...,n-k-1이고, pi(i = 0,1,..,n-k-1)의 최종 콘텐츠는 패리티 비트 pi와 같다.
LDPC 인코딩된 비트는 2차 인터리버 행렬을 열마다(column by column) 채운다. 이 행렬은 8-PSK 변조의 경우 3개의 열을 갖고, 16-QAM 변조의 경우 4개의 열을 갖고, 32-QAM 변조의 경우 5개의 컬럼을 갖고, 64-QAM 변조의 경우 6개의 컬럼을 갖는다. 그 다음에, 각각의 행렬의 행을 도 3의 비트 라벨링에 따른 성상도 심볼로 사상한다. QPSK의 경우에는, 어떤 인터리빙도 수행되지 않는다. 인터리빙 스팬은 하나의 LDPC 프레임 길이이다.
수신기에서, LDPC 디코더와 검출기는 소프트 정보(soft information)를 앞뒤로 반복하여 성능을 향상시킨다. 검출기 반복은 모든 3개의 LDPC 디코더 반복 후에 수행된다.
성능 결과
도 3a 내지 도 3c는 본 발명의 성능의 시뮬레이션을 도시한다.
도 3a 내지 도 3b에는 본 발명의 코드의 성능 결과가 도시되어 있다. 도 3a는 비교를 위해 섀논 용량(302)과 함께, 레이트가 3/4인 32-QAM 코드를 이용하는 3개의 송신 안테나와 3개의 수신 안테나를 갖는 MIMO 시스템에서 준정적 페이딩 채널의 시뮬레이션된 성능(300)을 도시한다.
도 3b는 비교를 위해 섀논 용량(306)과 함께, 레이트가 2/3인 64-QAM 코드를 이용하는 4개의 송신 안테나와 4개의 수신 안테나를 갖는 MIMO 시스템에서 준정적 페이딩 채널의 시뮬레이션된 성능(304)을 도시한다. 도 3c는 비교를 위해 섀논 용 량(310)과 함께, 레이트가 1/2인 QPSK 코드를 이용하는 4개의 송신 안테나와 4개의 수신 안테나를 갖는 MIMO 시스템 내의 준정적 페이딩 채널의 시뮬레이션된 성능(308)을 도시한다.
본 발명의 반복형 LDPC 디코더/MIMO 검출기의 성능은 FER=10-2에서 섀논 한계로부터 대략 1.5 dB의 차이가 있다.
도 4a 내지 도 4c는 본 발명의 짧은 블록 길이 LDPC 코드의 성능의 시뮬레이션을 도시한다.
채널이 매우 느리게 페이딩하고 있는 소정의 무선 LAN 응용의 경우, LDPC 디코더(206)에 의해 생성되는 코드의 블록 길이를 증가시키는 것은 과잉 복잡도를 정당화하기에 충분히 좋은 성능을 제공하지 못할 수 있다. 이들 시나리오에서는, 완전 병렬 디코딩 아키텍처를 갖는 짧은 블록 길이 LDPC 코드가 바람직할 수 있다. 표 8 및 표 9는 레이트가 1/2 및 2/3인 2개의 LDPC 코드의 패리티 검사 행렬을 도시한다. 각각의 경우에서 코드 길이는 N=192이다. 표에 있는 제i 행은 제i 비트 노드에 접속되는 체크 노드를 나타낸다.
흐름도
도 5는 본 발명에 따른 방법을 도시한 흐름도이다.
박스(500)는 복수의 병렬 누산 엔진을 구성하는 단계 - 복수의 병렬 누산 엔진의 개수는 M과 같음 - 를 수행하는 것을 도시한다.
박스(502)는 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드 레스 집합에서 제1 정보 비트를 누산하는 단계를 수행하는 것을 도시한다.
박스(504)는 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계를 수행하는 것을 도시한다.
박스(506)는 M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계를 수행하는 것을 도시한다.
박스(508)는 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 M개의 정보 비트를 누산하는 단계를 수행하는 것을 도시한다.
박스(510)는 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계를 수행하는 것을 도시한다.
박스(512)는 정보 비트를 다 이용할 때까지 박스(508 및 510)를 반복하는 단계를 수행하는 것을 도시한다.
결론
본 단락은 본 발명의 바람직한 실시예의 설명의 결론을 내린다. 본 발명의 바람직한 실시예의 상술한 설명은 예시 및 설명의 목적으로 제공되었다. 본 발명을 개시된 바로 그 형태로 총망라하거나 한정하려는 의도는 아니다. 상술한 교시 내용을 고려하여 여러 수정과 변형이 가능하다.
본 발명은 LDPC 코드를 설계하기 위한 방법 및 시스템을 개시한다. 본 발명 에 따른 방법은 복수의 병렬 누산 엔진을 구성하는 단계 - 복수의 병렬 누산 엔진의 개수는 M과 같음 - , 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계, 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계, M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계, 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 M개의 정보 비트를 누산하는 단계, 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가시키는 단계 및 정보 비트를 다 이용할 때까지 어드레스를 누산하는 단계 및 어드레스를 증가시키는 단계를 반복하는 단계를 포함한다.
본 발명의 방법은 MIMO 시스템에서 LDPC 코드의 이용, LDPC 인코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함한다.
본 발명에 따른 시스템은 복수의 병렬 누산 엔진 - 복수의 병렬 누산 엔진의 개수는 M과 같음 -, 및 패리티 비트 검사 행렬을 포함하고, 제1 정보 비트는 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 누산되고, 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스 는 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가하고, 후속 정보 비트는 M+1 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 누산되고, 다음 M개의 정보 비트는 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 누산되고, 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스는 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 증가하고, 복수의 정보 비트 내의 각각의 정보 비트는 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 누산된다.
본 발명의 시스템은 MIMO 시스템에서 LDPC 코드의 이용, LDPC 인코더 또는 디코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함할 수 있다.
본 발명에 따른 다른 방법은 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계, 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 증가시키는 단계, 복수의 병렬 누산 엔진의 개수와 같은 인덱스 번호를 갖는 정보 비트에 도달할 때까지 소정의 오프셋만큼 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계, 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드 레스 집합에서 다음 번호의 복수의 병렬 누산 엔진 정보 비트를 누산하는 단계 및 각각의 새로운 정보 비트에 대한 소정의 오프셋만큼 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 증가시키는 단계를 포함하고, 복수의 정보 비트 내의 각각의 정보 비트는 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 누산된다.
본 발명의 방법은 MIMO 시스템에서 LDPC 코드의 이용, LDPC 인코더 또는 디코더에서 LDPC 코드의 이용, M은 400인 것으로 정의하는 것, 소정의 오프셋은 코드-의존형인 것 및 각각의 패리티 비트 어드레스를 바로 이전 패리티 비트 어드레스에 더함으로써 패리티 비트를 누산하는 단계를 선택적으로 포함할 수 있다.
본 발명의 범위는 이러한 상세한 설명에 한정되는 것이 아니라 본원에 첨부된 청구항과 그 등가물에 의해 정의된다. 상술한 명세, 예 및 데이터는 본 발명의 구성의 제조와 이용의 완전한 설명을 제공한다. 본 발명의 사상과 범위로부터 일탈함이 없이 본 발명의 여러 실시예를 만들 수 있으므로, 본 발명은 다음 첨부되는 청구항과 그 등가물에 존재한다.
Figure 112007019874572-pct00030
Figure 112007019874572-pct00031
Figure 112007019874572-pct00032
Figure 112007019874572-pct00033
Figure 112007019874572-pct00034
Figure 112007019874572-pct00035
Figure 112007019874572-pct00036
Figure 112007019874572-pct00037
Figure 112007019874572-pct00038
Figure 112007019874572-pct00039
Figure 112007019874572-pct00040
Figure 112007019874572-pct00041
Figure 112007019874572-pct00042
Figure 112007019874572-pct00043
Figure 112007019874572-pct00044
Figure 112007019874572-pct00045
Figure 112007019874572-pct00046
Figure 112007019874572-pct00047
Figure 112007019874572-pct00048

Claims (20)

  1. 방송 시스템에서 복수의 정보 비트를 포함한 데이터를 코딩하는데 이용되는 저밀도 패리티 검사(Low Density Parity Check; LDPC) 코드를 설계하기 위한 시스템으로서,
    복수의 병렬 누산 엔진 - 상기 복수의 병렬 누산 엔진의 개수는 M과 같음 - ; 및
    패리티 비트 검사 행렬을 포함하고, 상기 패리티 비트 검사 행렬에서,
    상기 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트가 누산되고,
    각각의 새로운 정보 비트마다 상기 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스가 소정의 오프셋만큼 증가하고,
    M+1 정보 비트에 도달할 때까지 상기 소정의 오프셋만큼 상기 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트가 누산되고,
    상기 복수의 병렬 누산 엔진을 이용하여 다음 M개의 정보 비트가 제2 특정 패리티 비트 어드레스 집합에서 누산되고, 각각의 새로운 정보 비트마다 상기 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스가 상기 소정의 오프셋만큼 증가하고,
    상기 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 상기 복수의 정보 비트 내의 각각의 정보 비트가 누산되는 방송 시스템에서 복수의 정보 비트를 포함한 데이터를 코딩하는데 이용되는 저밀도 패리티 검사 코드를 설계하기 위한 시스템.
  2. 제1항에 있어서,
    상기 LDPC 코드는 다중입력 다중출력(Multiple-Input, Multiple-Output; MIMO) 시스템에서 이용되는 시스템.
  3. 제2항에 있어서,
    상기 소정의 오프셋은 코드-의존형(code-dependent)인 시스템.
  4. 제3항에 있어서,
    각각의 패리티 비트 어드레스의 패리티 비트를 바로 이전 패리티 비트 어드레스의 패리티 비트에 더함으로써 상기 패리티 비트를 누산하기 위한 패리티 비트 누산기를 더 포함하는 시스템.
  5. 제4항에 있어서,
    상기 LDPC 코드는 LDPC 인코더에서 이용되는 시스템.
  6. 제5항에 있어서,
    상기 M은 400인 시스템.
  7. 삭제
  8. 복수의 정보 비트를 포함한 데이터를 인코딩하는데 이용되는 저밀도 패리티 검사(Low Density Parity Check; LDPC) 코드를 설계하기 위한 방법으로서,
    a) 복수의 병렬 누산 엔진을 이용하여 제1 특정 패리티 비트 어드레스 집합에서 제1 정보 비트를 누산하는 단계;
    b) 각각의 새로운 정보 비트마다 상기 제1 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 소정의 오프셋만큼 증가시키는 단계;
    c) 상기 복수의 병렬 누산 엔진의 개수와 같은 인덱스 번호를 갖는 정보 비트에 도달할 때까지 소정의 오프셋만큼 상기 특정 패리티 비트 어드레스로부터 오프셋되는 패리티 비트 어드레스에서 후속 정보 비트를 누산하는 단계;
    d) 상기 복수의 병렬 누산 엔진을 이용하여 제2 특정 패리티 비트 어드레스 집합에서 다음 번호의 상기 복수의 병렬 누산 엔진 정보 비트를 누산하는 단계; 및
    e) 각각의 새로운 정보 비트마다 상기 제2 특정 패리티 비트 어드레스 집합의 각각의 원소에 대한 패리티 비트 어드레스를 소정의 오프셋만큼 증가시키는 단계를 포함하고,
    상기 복수의 정보 비트 내의 모든 정보 비트가 누산될 때까지 추가 특정 패리티 비트 어드레스 집합과 소정의 오프셋을 이용하여 상기 복수의 정보 비트 내의 각각의 정보 비트가 누산되는 복수의 정보 비트를 포함한 데이터를 인코딩하는데 이용되는 저밀도 패리티 검사 코드를 설계하기 위한 방법.
  9. 제8항에 있어서,
    상기 소정의 오프셋은 코드-의존형인 방법.
  10. 제9항에 있어서,
    각각의 패리티 비트 어드레스의 패리티 비트를 바로 이전 패리티 비트 어드레스의 패리티 비트에 더함으로써 상기 패리티 비트를 누산하는 단계를 더 포함하는 방법.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020077005731A 2004-08-13 2005-08-03 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템 KR100886075B1 (ko)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US60153304P 2004-08-13 2004-08-13
US60/601,533 2004-08-13
US65113105P 2005-02-08 2005-02-08
US60/651,131 2005-02-08
US65259705P 2005-02-14 2005-02-14
US60/652,597 2005-02-14
US65600305P 2005-02-24 2005-02-24
US60/656,003 2005-02-24
US65786005P 2005-03-02 2005-03-02
US60/657,860 2005-03-02
PCT/US2005/027447 WO2006020460A2 (en) 2004-08-13 2005-08-03 Code design and implementation improvements for low density parity check codes for multiple-input multiple-output channels

Publications (2)

Publication Number Publication Date
KR20070035115A KR20070035115A (ko) 2007-03-29
KR100886075B1 true KR100886075B1 (ko) 2009-02-26

Family

ID=35908040

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077005731A KR100886075B1 (ko) 2004-08-13 2005-08-03 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템

Country Status (8)

Country Link
EP (1) EP1790083B1 (ko)
JP (1) JP4891243B2 (ko)
KR (1) KR100886075B1 (ko)
AT (1) ATE495582T1 (ko)
CA (1) CA2577291C (ko)
DE (1) DE602005025896D1 (ko)
HK (1) HK1130124A1 (ko)
WO (1) WO2006020460A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1790083B1 (en) * 2004-08-13 2011-01-12 Dtvg Licensing, Inc Code design and implementation improvements for low density parity check codes for multiple-input multiple-output channels
JP4617985B2 (ja) * 2005-04-25 2011-01-26 ソニー株式会社 符号装置および符号化方法
CN100446427C (zh) 2006-08-07 2008-12-24 北京泰美世纪科技有限公司 移动数字多媒体广播系统中ldpc码的构造方法
KR100975695B1 (ko) 2007-02-02 2010-08-12 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
US20100122143A1 (en) * 2007-03-27 2010-05-13 Hughes Network Systems, Llc Method and system for providing low density parity check (ldpc) coding for scrambled coded multiple access (scma)
JP5325237B2 (ja) * 2008-03-03 2013-10-23 ライ・ラディオテレヴィシオーネ・イタリアーナ・ソシエタ・ペル・アチオニ Ldpc符号変調およびqamコンスタレーションのためのビット置換パターン
US8130228B2 (en) 2008-06-13 2012-03-06 International Business Machines Corporation System and method for processing low density parity check codes using a deterministic caching apparatus

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040010116A (ko) * 2002-07-26 2004-01-31 휴우즈 일렉트로닉스 코오포레이션 저밀도 패리티 검사 코드 생성 방법 및 시스템
KR20040030089A (ko) * 2002-07-03 2004-04-08

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2799592B1 (fr) * 1999-10-12 2003-09-26 Thomson Csf Procede de construction et de codage simple et systematique de codes ldpc
WO2002099976A2 (en) * 2001-06-06 2002-12-12 Seagate Technology Llc A method and coding apparatus using low density parity check codes for data storage or data transmission
JP4317008B2 (ja) * 2001-06-21 2009-08-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 無線ネットワークにおけるmimo送信システム、送信装置、受信装置及び方法
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
AU2002364182A1 (en) * 2002-08-20 2004-03-11 Flarion Technologies, Inc. Methods and apparatus for encoding ldpc codes
CN1781254B (zh) * 2003-02-26 2012-03-14 高通股份有限公司 使用多级置换来执行低密度奇偶校验码操作的方法和设备
KR100996029B1 (ko) * 2003-04-29 2010-11-22 삼성전자주식회사 저밀도 패리티 검사 코드의 부호화 장치 및 방법
US7395495B2 (en) * 2004-01-12 2008-07-01 Intel Corporation Method and apparatus for decoding forward error correction codes
KR100981503B1 (ko) * 2004-02-13 2010-09-10 삼성전자주식회사 최대 오류 정정/오류 검출 능력을 가지는 저밀도 패리티검사 부호 부호화/복호화 장치 및 방법
US20050265387A1 (en) * 2004-06-01 2005-12-01 Khojastepour Mohammad A General code design for the relay channel and factor graph decoding
EP1790083B1 (en) * 2004-08-13 2011-01-12 Dtvg Licensing, Inc Code design and implementation improvements for low density parity check codes for multiple-input multiple-output channels

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040030089A (ko) * 2002-07-03 2004-04-08
KR20040010116A (ko) * 2002-07-26 2004-01-31 휴우즈 일렉트로닉스 코오포레이션 저밀도 패리티 검사 코드 생성 방법 및 시스템

Also Published As

Publication number Publication date
JP2008510377A (ja) 2008-04-03
DE602005025896D1 (de) 2011-02-24
HK1130124A1 (en) 2009-12-18
EP1790083B1 (en) 2011-01-12
CA2577291C (en) 2015-05-19
KR20070035115A (ko) 2007-03-29
EP1790083A4 (en) 2009-04-29
EP1790083A2 (en) 2007-05-30
CA2577291A1 (en) 2006-02-23
ATE495582T1 (de) 2011-01-15
JP4891243B2 (ja) 2012-03-07
WO2006020460A2 (en) 2006-02-23
WO2006020460A3 (en) 2006-05-18

Similar Documents

Publication Publication Date Title
US7725802B2 (en) Code design and implementation improvements for low density parity check codes for multiple-input multiple-output channels
US9203492B2 (en) Code design and implementation improvements for low density parity check codes for wireless routers using 802.11n protocol
US10425258B2 (en) Method and apparatus for transmitting and receiving data in a communication system
US7876670B2 (en) Method for transmitting data, method for receiving data, transmitter, receiver, and computer program products
JP4928613B2 (ja) 多入力多出力(mimo)システムにおいてデータを送信する方法およびシステム
US8887024B2 (en) Apparatus and method for improved modulation and coding schemes for broadband satellite communications systems
US20090307562A1 (en) Method of matching codeword size and transmitter therefor in mobile communications system
AU2012207771A1 (en) Apparatus and method for transmittng and receiving data in communication/broadcasting system
KR100886075B1 (ko) 방송 시스템에서 복수의 정보 비트를 포함한 데이터를인코딩하는데 이용되는 저밀도 패리티 검사 코드를설계하기 위한 방법 및 시스템
JP6660565B2 (ja) 復号装置
Khedr et al. Wirelesshd Video Transmission Over Multicarrier Error-Correctionchannels

Legal Events

Date Code Title Description
AMND Amendment
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130207

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140206

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150213

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160212

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20181227

Year of fee payment: 11