KR20180072306A - 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버 - Google Patents

효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버 Download PDF

Info

Publication number
KR20180072306A
KR20180072306A KR1020160175743A KR20160175743A KR20180072306A KR 20180072306 A KR20180072306 A KR 20180072306A KR 1020160175743 A KR1020160175743 A KR 1020160175743A KR 20160175743 A KR20160175743 A KR 20160175743A KR 20180072306 A KR20180072306 A KR 20180072306A
Authority
KR
South Korea
Prior art keywords
memory
bit
deinterleaver
controller
permutation
Prior art date
Application number
KR1020160175743A
Other languages
English (en)
Inventor
장수현
임기택
신대교
윤상훈
정한균
진성근
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020160175743A priority Critical patent/KR20180072306A/ko
Publication of KR20180072306A publication Critical patent/KR20180072306A/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/27Coding, 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/276Interleaving address generation
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations
    • 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/6522Intended application, e.g. transmission or communication standard
    • H03M13/6552DVB-T2
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)

Abstract

효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버가 제공된다. 본 디-인터리버는 메모리; 변조방식에 따라 각기 다른 Permutation 주소를 생성하는 주소 생성기; 주소 생성기에 의해 생성된 Permutation 주소에 따라 메모리를 제어하는 제어기;를 포함한다.
이에 의해, 비트-디인터리빙 시 변조방식에 따라 서로 다른 permutation 동작으로 인해 메모리가 별도로 필요한 것을 하나로 통합하여 사용함으로 하드웨어 복잡도를 감소시킬 수 있다.

Description

효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버{Bit-Deinterleaver with Efficient Memory Sharing and Scheduling}
본 발명은 비트-디인터리버 설계 기법에 관한 것으로, 더욱 상세하게는 유럽의 디지털 지상파 방송시스템인 DVB-T2 시스템에서 수신 기술인 비트-디인터리버에 관한 것이다.
DVB-T2의 긴 이진부호어(codeword)에 대하여 비트-디인터리버를 설계하는 것은 대용량 메모리 등 매우 큰 설계 복잡도를 요구하며, 실시간 구현에 어려움이 있다.
비트 인터리버는 기본적으로 블록 인터리버의 구조를 가지며 변조지수(Modulation)와 부호율(code rate)에 따라 다음과 같은 최대 블록 사이즈를 가지며, 변조지수에 따라 서로 다른 메모리 사이즈를 유지해야 하는 단점이 있다. 여기서, 인터리빙을 위한 필요한 최대 메모리 사이즈는, 도 1에 제시된 바와 같이, Nldpc = 64800, 256QAM에 해당하는 4050×16×(비트당 LLR bit수: 6bits)이다.
또한, 비트-디인터리버 출력의 경우 LDPC 디코더의 입력 메모리에 듀얼 버퍼 기반 부호어(codeword) 단위로 써줘야 한다. 특히, LDPC 복호과정 시 입력 메모리로부터 특정 패턴(순서)으로 읽어야 하는 제약으로 한 부호어(codeword)가 저장 된 다음 복호가 시작되며, 이에 부호어 길이만큼의 추가적인 초기 지연이 발생한다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, DVB-T2의 긴 부호어(codeword)에 대하여 설계하는 것은 매우 큰 구현 복잡도를 요구하여, 이에 효율적인 스케줄링 기법 및 메모리 공유를 통한 하드웨어 복잡도 및 지연 증가 문제를 해결할 수 있는 기법을 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 디-인터리버는 메모리; 변조방식에 따라 각기 다른 Permutation 주소를 생성하는 주소 생성기; 주소 생성기에 의해 생성된 Permutation 주소에 따라 메모리를 제어하는 제어기;를 포함한다.
변조방식은, 16QAM, 64QAM 및 256QAM을 포함할 수 있다.
제어기는, 메모리를 제어하여, parity-bit 인터리빙과 column twist-bit 인터리빙을 수행할 수 있다.
메모리는, 일부 영역이 변조방식에 따라 중복 사용될 수 있다.
메모리는, 8192(depth)×8(width)×16(number)의 메모리 뱅일 수 있다.
제어기는, LDPC 복호기의 이용패턴에 따라, 메모리의 출력을 제어할 수 있다.
제어기는, LDPC 복호 시 초기 지연이 없도록 하는 순서로 부호어를 출력시킬 수 있다.
한편, 본 발명의 다른 실시예에 따른, 디-인터리빙 방법은 변조방식에 따라 각기 다른 Permutation 주소를 생성하는 단계; 및 생성된 Permutation 주소에 따라 메모리를 제어하는 단계;를 포함한다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, 비트-디인터리빙 시 변조방식에 따라 서로 다른 permutation 동작으로 인해 메모리가 별도로 필요한 것을 하나로 통합하여 사용함으로 하드웨어 복잡도를 감소시킬 수 있다.
또한, 본 발명의 실시예들에 따르면, LDPC 복호 시 초기지연 제거 가능한 출력패턴을 통해 DVB-T2 수신기의 인터페이스 간소화 및 수신신호 검출 지연감소가 가능하다.
도 1은 변조 지수에 따른 비트 인터리버 파라미터,
도 2는 본 발명의 실시예에 따른 비트 디인터리버의 하드웨어 구조,
도 3은, 도 2에 도시된 비트-디인터리버의 메모리 뱅크 구조,
도 4는 비트-디인터리버와 LDPC 복호기 간 데이터 인터페이스
도 5는 코드워드 구성,
도 6은 부호율에 따른 Qldpc 정의,
도 7은 LDPC 복호기의 입력 메모리 뱅크(R=1/2인 경우)이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
DVB-T2 송신 시스템의 물리계층에서는 고성능의 채널부호와 변조기법을 적용한 비트-인터리빙 부호화 및 변조 (BICM, Bit Interleaved Coding and Modulation)기법을 구성함으로써 디지털 방송 품질을 향상시킨다.
비트 인터리버는 기본적인 군집 오류 분산 기능을 수행할 뿐만 아니라 한 성상 내 비트들이 하나의 패리티 검사 방정식으로 몰리지 않도록 비트 열을 재배치하여 복호 성능향상에 기여한다.
이와 같은, 비트 인터리버는 BCH, LDPC 연접 부호로 생성된 이진부호어(codeword)에 적용되는 인터리버로써, 패리티 인터리버(parity interleaver)와 열-트위스트 인터리버(column-twist interleaver)로 구성된다.
여기서, 비트-디인터리버는 기본적으로 비트-인터리버의 역과정을 수행하며, 이후 LDPC 복호기의 입력메모리에 부호어(codeword) 단위로 쓰기동작을 수행한다.
본 발명의 실시예에서는, 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버를 제시한다.
구체적으로, 본 발명의 실시예에서는, 기존에 변조지수에 따라서 서로 다른 permutation 동작으로 인해 메모리가 별도로 필요한 것을 하나로 통합하여 사용한다.
또한, 비트-디인터리버 출력의 경우 LDPC 디코더의 입력 메모리에 부호어(codeword) 단위로 써줘야 하며, 이 때 LDPC 디코더의 복호 시 입력 메모리에서 특정 패턴으로 읽어가는 것을 고려하여 비트-디인터리버 출력 시 LDPC 디코더의 입력메모리에 그 패턴을 미리 고려하여 부호어(codeword)를 저장하여, 저장 중에서도 메모리에 접근하여 LDPC 복호가 바로 가능하게 함으로써 LDPC 복호 시 추가적인 초기지연 없이 동작가능하다.
도 2는 본 발명의 실시예에 따른 비트 디인터리버의 하드웨어 구조이다. 도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 비트-디인터리버(110)는 ModeSel신호(16QAM, 64QAM, 256QAM) 및 변조방식에 따라 다르게 적용되는 Permutation 주소를 Permutation 주소 생성기(112)를 통해 발생시키며, 이렇게 발생된 Permutation 주소로 컨트롤러(111)가 메모리(113)를 제어하여 비트-(디)인터리버 과정을 수행한다.
특히, 비트-디인터리버는 parity-bit 인터리빙과 column twist-bit 인터리빙 등 2 단계로 동작하며, 또한, 변조방식에 따라 다른 permutation 동작으로 인해 메모리가 별도로 필요한 것을 하나(8192(depth)×8(width)×16(number))의 메모리 뱅크(130)로 통합하여 사용한다.
그 결과, 도 3에 도시된 바와 같이, 겹치는 메모리 면적만큼 메모리 사용량이 감소된다.
한편, LDPC 복호 시 초기지연 제거 가능한 출력패턴을 통해 도 4에 도시된 바와 같이, LDPC 복호기(120)의 입력메모리(121)에 출력 값을 LDPC 복호기(122)가 바로 이용할 수 있게 비트-디인터리버(110)의 컨트롤러(111)에서 LDPC 복호기(122)의 이용 패턴에 맞게 출력값(oLLR_BitDeInt) 및 address 발생을 통해 LDPC 복호기(120)의 지연 시간을 최대한 줄일 수 있다.
도 5는 일반적인 코드워드 구성을 나타내며 information bit와 parity bit로 구성된다. 또한, LDPC 복호는 sub-matrix 단위로 수행되며, 그 단위에 맞게 LDPC 복호기의 입력 메모리 뱅크가 구성된다. 도 6은 부호율에 따른 Qldpc 정의이다.
기본적으로 DVB-T2에서 정의하고 있는 sub-matrix의 크기는 360이며, 이에 따라 도 7에 도시된 바와 같이 360개의 메모리 뱅크로 구성되어, LDPC 복호 시 모든 메모리 뱅크에서 동시에 같은 address 값을 읽고, 갱신한 값을 다시 저장하는 방법으로 복호과정이 수행된다.
이와 같은 LDPC 복호 시 초기지연 없이 비트-디인터리버(110)에서 도 7과 같은 순서로 LDPC 복호기의 입력 메모리 뱅크에 저장을 시켜준다면, 한 부호어(codeword) 저장이 끝나기 전에 LDPC 복호 연산이 가능하게 되어 초기 지연을 줄일 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
110 : 바트-디인터리버
120 : LDOC 디코더

Claims (8)

  1. 메모리;
    변조방식에 따라 각기 다른 Permutation 주소를 생성하는 주소 생성기;
    주소 생성기에 의해 생성된 Permutation 주소에 따라 메모리를 제어하는 제어기;를 포함하는 것을 특징으로 하는 디-인터리버.
  2. 청구항 1에 있어서,
    변조방식은,
    16QAM, 64QAM 및 256QAM을 포함하는 것을 특징으로 하는 디-인터리버.
  3. 청구항 1에 있어서,
    제어기는,
    메모리를 제어하여, parity-bit 인터리빙과 column twist-bit 인터리빙을 수행하는 것을 특징으로 하는 디-인터리버.
  4. 청구항 1에 있어서,
    메모리는,
    일부 영역이 변조방식에 따라 중복 사용되는 것을 특징으로 하는 디-인터리버.
  5. 청구항 4에 있어서,
    메모리는,
    8192(depth)×8(width)×16(number)의 메모리 뱅크인 것을 특징으로 하는 디-인터리버.
  6. 청구항 1에 있어서,
    제어기는,
    LDPC 복호기의 이용패턴에 따라, 메모리의 출력을 제어하는 것을 특징으로 하는 디-인터리버.
  7. 청구항 6에 있어서,
    제어기는,
    LDPC 복호 시 초기 지연이 없도록 하는 순서로 부호어를 출력시키는 것을 특징으로 하는 디-인터리버.
  8. 변조방식에 따라 각기 다른 Permutation 주소를 생성하는 단계; 및
    생성된 Permutation 주소에 따라 메모리를 제어하는 단계;를 포함하는 것을 특징으로 하는 디-인터리빙 방법.
KR1020160175743A 2016-12-21 2016-12-21 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버 KR20180072306A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160175743A KR20180072306A (ko) 2016-12-21 2016-12-21 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160175743A KR20180072306A (ko) 2016-12-21 2016-12-21 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버

Publications (1)

Publication Number Publication Date
KR20180072306A true KR20180072306A (ko) 2018-06-29

Family

ID=62781100

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160175743A KR20180072306A (ko) 2016-12-21 2016-12-21 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버

Country Status (1)

Country Link
KR (1) KR20180072306A (ko)

Similar Documents

Publication Publication Date Title
US10243585B2 (en) Transmitting apparatus and signal processing method thereof
US8205123B2 (en) Interleaver and de-interleaver for iterative code systems
EP2092652A2 (en) Quadratic permutation polynomial interleaver/de-interleaver for turbo codes
US8194782B2 (en) Grouping bits interleaving apparatus and method thereof
KR20220113322A (ko) 길이가 16200이며, 부호율이 3/15인 ldpc 부호어 및 16-심볼 맵핑에 상응하는 bicm 수신 장치 및 방법
CN104868972A (zh) Ldpc码字的交织映射方法及解交织解映射方法
US8103944B2 (en) Memory architecture for high throughput RS decoding for MediaFLO receivers
CN105376008A (zh) Ldpc码字的交织映射方法及解交织解映射方法
KR20180072306A (ko) 효율적인 메모리 공유 및 스케줄링을 이용한 비트-디인터리버
CN105450333A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN105099614A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN104935399A (zh) Ldpc码字的交织映射方法及解交织解映射方法
US11791839B2 (en) Transmitting apparatus and signal processing method thereof
CN110383785B (zh) 在dvb-t2接收机中执行二进制数据流的时域去交织的装置
CN105099615A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN104935398A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN105356965A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN105450344A (zh) Ldpc码字的交织和映射方法及解交织解映射方法
KR20220058521A (ko) 길이가 16200이며, 부호율이 10/15인 ldpc 부호어 및 256-심볼 맵핑을 위한 bicm 수신 장치 및 이를 이용한 방법
CN110784287A (zh) Ldpc码字的交织映射方法及解交织解映射方法
CN105450351A (zh) Ldpc码字的交织和映射方法及解交织解映射方法
CN105450337A (zh) Ldpc码字的交织和映射方法及解交织解映射方法
CN105450348A (zh) Ldpc码字的交织和映射方法及解交织解映射方法
CN105376029A (zh) Ldpc码字的交织和映射方法及解交织解映射方法
CN105450353A (zh) Ldpc码字的交织和映射方法及解交织解映射方法