KR100493268B1 - 비트 디인터리빙 방법 - Google Patents

비트 디인터리빙 방법 Download PDF

Info

Publication number
KR100493268B1
KR100493268B1 KR1019980018358A KR19980018358A KR100493268B1 KR 100493268 B1 KR100493268 B1 KR 100493268B1 KR 1019980018358 A KR1019980018358 A KR 1019980018358A KR 19980018358 A KR19980018358 A KR 19980018358A KR 100493268 B1 KR100493268 B1 KR 100493268B1
Authority
KR
South Korea
Prior art keywords
data
address
read
writing
block size
Prior art date
Application number
KR1019980018358A
Other languages
English (en)
Other versions
KR19990085749A (ko
Inventor
이원철
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1019980018358A priority Critical patent/KR100493268B1/ko
Publication of KR19990085749A publication Critical patent/KR19990085749A/ko
Application granted granted Critical
Publication of KR100493268B1 publication Critical patent/KR100493268B1/ko

Links

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6112Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving terrestrial transmission, e.g. DVB-T
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J11/00Orthogonal multiplex systems, e.g. using WALSH codes
    • H04J2011/0003Combination with other multiplexing techniques
    • H04J2011/0009Combination with other multiplexing techniques with FDM/FDMA

Landscapes

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

Abstract

DVB-T 시스템에서 인터리빙되어 수신되는 데이터를 다시 원래 상태로 디인터리빙하는 방법에 관한 것으로서, 특히 처음에 수신되는 데이터는 한 블록 사이즈에 해당하는 만큼 메모리에 순차적으로 라이트한 후 한 블록 사이즈에 해당하는 데이터의 라이트가 완료되면 소정 간격만큼 쉬프트되어 순차 발생되는 어드레스에 따라 라이트된 데이터의 리드를 수행하고 데이타가 리드된 바로 그 어드레스 위치에 입력되는 데이타를 라이트하는 과정을 블록마다 반복 수행함으로써, 여러개의 캐리어를 사용하는 OFDM 시스템의 비트 인터리버/디인터리버의 구현이나 입력되는 비트의 순서가 일정한 크기만큼 쉬프트되어 출력되는 모든 종류의 인터리버/디인터리버를 구현할 때에 단지 한 블록 사이즈에 해당하는 메모리의 양으로도 데이터 손실없이 인터리빙/디인터리빙이 가능하므로, 실제 이러한 인터리버/디인터리버를 IC로 디자인할 때에 필요로하는 내부 메모리의 양을 줄일 수 있어 IC화가 용이해진다.

Description

비트 디인터리빙 방법
본 발명은 유럽의 디지털 TV 전송에 관한 것으로서, 특히 DVB-T(Digital Video Broadcasting-Terrestrial) 시스템에서 인터리빙(Interleaving)되어 수신되는 데이터를 다시 원래 상태로 디인터리빙(Deinterleaving)하는 비트 디인터리빙 방법에 관한 것이다.
디지털 TV의 전송 방식에는 지금까지의 전송 방식과 같이 하나의 단일 캐리어를 이용하는 싱글 캐리어 변조 방식과 복수의 다중 캐리어를 이용하여 원하고자 하는 데이터를 전송하는 멀티-캐리어의 전송 방식으로 크게 구분할 수 있다. 즉, 하나의 단일 캐리어를 이용하는 VSB 방식과 여러개의 복수 캐리어를 이용하는 부호화 직교주파수 분할 다중(Coded Orthogonal Frequency Division Multiplexing ; COFDM) 변조 방식으로 구분된다.
그리고, DVB-T 시스템은 유럽의 지상파 디지털 TV 전송 시스템으로 현재 유럽의 몇몇 국가에서 시험방송 중인데, 이 DVB-T 시스템의 전송 방식은 COFDM 방식을 사용한다. 상기 COFDM 방식은 전송하는 한 심볼내의 캐리어의 수에 따라 캐리어의 수가 1705개인 2K 모드와 6817개인 8K 모드로 다시 나뉘어진다.
이러한 COFDM 방식은 그 전송방식이 종래의 DVB-C(Cable)나 DVB-S(Satellite)와 달리 송신단에서 역 고속 푸리에 변환(Inverse Fast Fourier Transform ; IFFT)을 이용하여 전송을 하고 수신단에서는 FFT를 이용하여 복조하는 것이 차이가 있으나, 오류 정정 부호화(FEC) 부분은 다른 DVB-C나 DVB-S와 공유를 하고 있는 특징을 가지고 있다. 이러한 다른 규격과의 공유 부분 이외에 새로이 첨가되는 부분이 바로 내부 인터리버(Inner Interleaver)라 할 수 있다. 즉, 송신측에서 내부 인터리브를 수행하여 데이터를 전송하게 되면 전송 주파수 대역에서 특정한 부분에 발생하게 되는 주파수 널(Frequency Null)이 전체 주파수 대역으로 조금씩 나누어 퍼지게 되어 멀티패스 채널 환경에서 발생하게 되는 주파수 널에 의한 성능 저하를 향상시킬 수 있다.
이를 위해 상기 내부 인터리버는 다시 비트 인터리버와 심볼 인터리버로 이루어진다. 비트 인터리버는 전송하려는 디지털 데이터를 각각 일정한 크기의 비트 단위로 인터리빙하는 것이고, 심볼 인터리버는 비트 단위로 인터리빙된 데이터를 다시 심볼 단위로 인터리빙하는 것을 말한다. 여기서, 비트 인터리버는 일정한 COFDM 비트 단위로 송신단에서는 인터리빙을, 수신단에서는 디인터리빙을 행하는 것이다. 이러한 비트 인터리버/디인터리버에서 주된 동작은 메모리에 입력되는 데이터를 비트 인터리빙/디인터리빙 규칙에 의해 발생되는 어드레스에 의해 라이트하여 주고 다시 리드하여 주는 것이다.
도 1은 종래의 인터리빙/디인터리빙 방법을 나타낸 것으로서, 인터리빙/디인터리빙의 기본이 되는 입력되는 데이터의 순서가 어느 일정한 크기만큼 쉬프트되어 출력이 되려면 일반적으로 블록 사이즈(N) 만큼의 크기를 가지는 메모리가 2개 필요하게 된다. 이것은 데이터의 순서를 원하는 규칙으로 바꾸기 위해 우선 입력되는 신호를 매 심볼마다 일정한 크기의 메모리에 모두 저장한 후 정해진 규칙에 의해서 발생된 다른 순서로 다시 데이터를 출력시켜야 하기 때문이다.
이를 위해 상기 2개의 메모리중 스위칭에 의해 하나의 메모리에 데이터를 라이트(Write)하고 한 블록이 다 라이트된 후에는 다시 다른 메모리에 데이터를 라이트한다. 즉, 입력되는 데이터의 메모리 라이트는 우선 하나의 메모리에 데이터를 라이트한 후 한 블록의 라이트가 끝나면 다시 다른 메모리에 라이트를 하는 과정을 번갈아 가며 교대로 수행한다. 리드 과정도 동일하다.
예컨대, 인터리빙 또는 디인터리빙 규칙에 따라 발생하는 어드레스를 입력받아 메모리 1에 데이터를 라이트하고 있으면 메모리 2로부터 데이터를 리드하고, 메모리 1에의 데이터 라이트 및 메모리 2로부터의 데이터 리드가 모두 끝나면 다시 메모리 1로부터 데이터를 리드하고 동시에 메모리 2에는 데이터를 라이트하는 과정을 교대로 수행한다.
그러나, 상기된 방법은 메모리의 제어는 쉬울 수 있으나 메모리의 용량이 인터리빙(또는 디인터리빙)에 필요한 블록 사이즈(N)의 2배가 필요하게 되므로, 실제 IC로 구현할 때에 게이트의 수가 증가할 뿐만 아니라 IC의 크기도 커져 DVB-T 수신 시스템을 IC화하는데 있어서 큰 장애가 된다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 심볼 디인터리빙된 데이터를 블록 단위로 메모리에 라이트하고 나서 라이트된 데이타의 리드 후 라이트를 수행할 수 있도록 함으로써, 메모리 크기를 줄이는 비트 디인터리빙 방법을 제공함에 있다.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 비트 디인터리빙 방법은 처음에 수신되는 데이터는 한 블록 사이즈에 해당하는 만큼 메모리에 순차적으로 라이트한 후 한 블록 사이즈에 해당하는 데이터의 라이트가 완료되면 소정 간격만큼 쉬프트되어 순차 발생되는 어드레스에 라이트된 데이터의 리드를 수행하고 데이타가 리드된 바로 그 어드레스 위치에 입력되는 데이타를 라이트하는 과정을 블록마다 반복 수행함을 특징으로 한다.
이러한 비트 디인터리빙 방법에 의해 비트 디인터리빙에 필요한 블록 사이즈에 해당하는 메모리 용량만으로 비트 디인터리빙을 수행할 수 있으며, 마찬가지로 송신측에서는 비트 인터리빙을 수행할 수 있다.
여기서, 인터리빙은 송신측에서 수행하는 것이고 디인터리빙은 수신측에서 수행하는 것으로, 데이터의 입/출력 순서만 다를뿐이다. 그러므로, 본 발명에서는 실시예로 디인터리빙에 대해서만 설명한다.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.
이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 상세히 설명한다.
도 2는 본 발명에 따른 DVB-T 수신 시스템의 구성 블록도로서, 등화기로부터 출력되는 데이터를 디맵핑한 후 디매핑된 데이터에 대해 심볼 디인터리빙을 수행하는 디맵퍼 및 심볼 디인터리버(22), 심볼 단위로 디인터리빙된 데이터를 다시 비트 단위로 디인터리빙하는 비트 디인터리버(23), 및 수신되는 TPS 정보를 이용하여 디맵핑 및 디인터리빙을 제어하는 TPS 제어부(21)로 구성된다.
이와같이 구성된 본 발명에서 디맵퍼(22)는 등화기로부터 출력되는 데이터를 디매핑한다. 이때 디매핑 방법은 보통 3비트나 4비트의 소프트 디시젼을 이용하여 행한다. COFDM 규격은 여러 가지 모드에 대해 다 수용하도록 정의되어 있으며 이러한 여러 가지 모드의 정보는 TPS(Transmission Parameter Signaling)에 의해 보내어지게 되고 수신단에서는 TPS 정보를 이용하여 디맵퍼 및 심볼 디인터리버(22), 비트 디인터리버(23), 비터비 디코더등 기타 여러 가지 부분에 이용을 한다.
즉, TPS 제어부(21)는 전송에 관련된 여러 가지 파라미터 데이터를 송신단에서 삽입하여 전송하는데 이러한 데이터가 TPS 디코더에서 TPS 인에이블 신호(tps_en)와 TPS 데이터(tps_data)로 복호되어 출력되며, TPS 제어부(21)로 입력되면 TPS 제어부(21)는 이를 각기 필요한 여러 가지 블록에 제공하는데, 그 중 별자리에 관한 정보 tps_const를 디맵퍼 및 심볼 디인터리버(22), 비트 디인터리버(23)에 제공하고 각각의 OFDM 심볼에 대한 정보 symbol_index를 심볼 디인터리버에 제공한다.
또한, 등화기로부터 출력되는 데이터는 등화기의 turn_on을 나타내는 eg_flag, OFDM 심볼의 시작을 나타내는 eq_sync, 파일롯이 아닌 액티브 캐리어 데이터를 나타내는 carrier_en, 그리고 각각의 I,Q 데이터를 나타내는 equal_I, equal_Q, 채널 상태 정보를 나타내는 CSI(Channel State Information)등이 디맵퍼 및 심볼 디인터리버(22)로 입력된다.
상기 디맵퍼 및 심볼 디인터리버(22)에서는 등화기의 출력과 채널 상태 정보인 CSI(Channel State Information)를 이용하여 송신단에서 매핑시킨 원래의 데이터로 디매핑을 하며, 디매핑된 데이터는 일정한 OFDM 심볼 단위로 데이터를 뒤섞는 심볼 디인터리빙을 한 후 비트 디인터리버(23)로 출력한다. 상기 비트 디인터리버(23)에서는 심볼 단위의 데이터를 다시 비트 단위로 뒤섞는 비트 디인터리빙을 한 후 최종적으로 FEC단으로 출력한다.
도 3은 본 발명에 따른 비트 디인터리빙을 위한 메모리 제어 방법을 나타낸 것으로서, 블록 사이즈 N(COFDM 시스템에서는 126비트가 한 블록 사이즈임.)만큼의 메모리 크기로 구현된다. 이는 입력되는 데이터를 우선 일정한 순서에 의해 메모리에 라이트를 하여 한 블록의 크기가 라이트된 후에는 다시 어느 일정한 어드레스에 의해 리드를 하면서 더불어 그 어드레스에 라이트함에 의해 가능해진다.
도 4는 비트 디인터리버의 상세 블록도로서, 상기 디맵퍼 및 심볼 디인터리버(22)에서 출력되는 각종 제어 신호에 의해 입력되는 데이터를 카운트하고 그에 따른 제어 신호를 출력하는 카운터(41), 상기 카운터(41)에서 발생되는 제어 신호에 따라 리드/라이트 어드레스를 발생하는 어드레스 발생부(42), 및 상기 어드레스 발생부(43)에서 제공하는 어드레스에 따라 입력되는 데이터를 라이트하고 리드하여 디인터리빙을 수행하는 블록 사이즈의 메모리(43)로 구성되며, 상기 메모리(43)에서 출력되는 데이터를 이후의 연결(비터비 디코더)을 위하여 적절한 데이터 순서로 출력하는 멀티플렉서(44)가 구비된다.
즉, 상기 디맵퍼 및 심볼 디인터리버(22)로부터의 출력 즉, 심볼의 인덱스를 나타내는 bit_index 신호와 앞단 동작의 턴-온을 나타내는 bit_flag 신호와 매 심볼의 시작을 나타내는 bit_sync 신호와 매 심볼에서의 유효한 액티브 캐리어의 구간을 나타내는 bit_dvald 신호가 카운터(41)로 입력된다. 상기 카운터(41)는 앞단의 동작 턴-온 신호(bit_flag)가 하이로 된 이후 입력되는 심볼의 시작점 신호(bit_sync)가 도 5의 (a)와 같이 하이로 된 후 액티브 캐리어의 구간을 나타내는 bit_dvald 신호가 도 5의 (b)와 같이 하이일때만 입력 데이터를 카운팅한다. 상기 bit_sync 신호 이후 유효한 데이터의 구간인 bit_dvald 신호의 처음부터 즉, 카운터(41)의 카운팅이 시작되면 도 5의 (c)와 같이 입력되는 데이터는 일정한 어드레스로 메모리(43)에 라이트하게 된다.
이때, 카운팅 값이 일정한 블록 사이즈 N이 되면 read_flag 신호를 하이로 만들어준다. 즉, 상기 메모리(43)의 라이트가 일정한 블록 사이즈 N만큼 행해져 상기 read_flag 신호가 하이로 되면 도 5의 (d)와 같이 메모리(43)에 저장된 데이터의 리드를 시작한다.
이렇게 라이트 시작 시점 이후 한 블록 사이즈 N만큼의 데이터 라이트 이후에 리드를 행하게 함으로써, 한 블록 사이즈의 메모리만으로도 충분히 구현이 가능하게 된다.
그리고, 도 5의 (d)에서와 같은 블록 간격(block interval)은 이러한 블록의 크기에 해당하는 구간을 나타내며, bit_dvald 신호에 있어서 bit_sync가 하이로 입력되는 이후의 구간에서의 로우 신호는 보호 구간이나 파일롯 신호(non-active carrier)에 해당하는 데이터를 나타낸다. 또한, 한번의 bit_sync가 출력된 후 그 다음의 bit_sync 신호가 입력될 때까지의 구간이 바로 한 OFDM 심볼 구간이 된다.
그러므로, bit_sync 신호가 하이로 된 이후 입력되는 데이터는 메모리(43)에 계속 라이트된다.
한편, 도 4의 어드레스 발생부(42)에서는 각기 라이트와 리드시에 필요한 어드레스를 발생시키는데, OFDM의 경우에는 6가지 종류의 어드레스 발생(I0∼I5)으로서 필요한 어드레스가 모두 만족된다. 또한, 메모리(43)는 입력되는 심볼 디인터리버의 출력 데이터(bd0∼bd5)를 라이트하며 어드레스 발생부(42)에서 발생된 어드레스에 따라 각기 필요시에 데이터를 리드 또는 라이트하여 준다.
도 6은 상기 메모리(43)에 데이터를 라이트하고 리드하기 위한 어드레스 종류의 발생 타이밍도이다.
즉, 입력되는 데이터 B(e)의 순서가
B(e) = (be,0,be,1,be,2,...,be,N)
의 형태로 입력되고 출력 데이터 A(e)가
A(e) = (ae,0,ae,1,ae,2,...,ae,N)
의 형태로 출력될 경우를 나타내고 있다. 우선 블록 사이즈 N=126이라 가정하면, 입/출력식은 하기의 수학식 1의 형태로 되며,
ae,H(w) = be,w
H(w)는 하기 수학식 2의 관계에 의해 쉬프트될때를 나타내고 있다.
H(w) = (w + 105) mod N(w=0,1,...,125)
여기서, e는 QAM 방식 즉, 별자리수에 따라 달라지는데, 16QAM인 경우는 0∼3의 값을 갖고, 64QAM인 경우는 0~5의 값을 갖는다. 그리고, 상기 수학식 2의 상수 105는 스펙에 정해져 있는 것중 하나로서, 스펙에 따라 달라질 수 있다.
이때, w값으로 0∼125까지를 수학식 2에 대입해보면,
H(0) = (0+105) mod 126 = 105
H(1) = (1+105) mod 126 = 106
. .
. .
. .
H(20) = (20+105) mod 126 = 125
H(21) = (21+105) mod 126 = 0
H(22) = (22+105) mod 126 = 1
. .
. .
. .
H(124) = (124+105) mod 126 = 103
H(125) = (125+105) mod 126 = 104
이 된다.
즉, 0,1,2,...,125의 순서로 입력된 데이터가 출력측에서는 21,22,...,0,1,...,20의 순서로 순서가 바뀌어 출력된다.
이 경우 우선 도 6의 (a)에서와 같이 처음 한 블록 구간 동안에는 입력되는 데이터를 메모리(43)에 라이트한다(write_flag가 이를 나타낸다). 이때의 어드레스 발생부(42)에서 발생하는 어드레스 종류는 I0 어드레스가 되며 I0 = 0,1,2,...,124,125가 된다.
또한, 한 블록의 데이터를 메모리에 라이트한 후에는 이제 메모리(43)에 라이트된 데이터를 리드하여 주며 동시에 라이트도 하여준다. 즉 한 블록의 구간이후에 read_flag를 하이로 하여 데이터를 리드한다.
이때, 비트 디인터리버(23)의 입력에서의 순서 0,1,...,125는 출력측에서 21,22,...의 순서로 되어 있으므로(이러한 출력의 순서를 r로 정의) 2번째 블록의 메모리 라이트나 리드의 어드레스는 I1의 어드레스로 메모리(43)에 라이트/리드를 하여 준다. 이때 I1의 어드레스는 I0의 어드레스에 r(=21)을 더한 어드레스 즉, I1=21,22,...,0,1,...,20의 어드레스가 된다. 이어서 3번째의 어드레스도 역시 I1의 어드레스에 다시 r(=21)을 더한 어드레스 즉, I2=42,43,...,0,1,...,40의 어드레스가 된다. 이후의 블록에 대해서도 역시 마찬가지로 r(=21)씩 증가시켜 어드레스를 발생시키면,
I3 = 63,64,...,0,1,...,61,62
I4 = 84,85,...,0,1,...,82,83
I5 = 105,106,...,0,1,...,103,104
I0 = 0,1,...,125
가 된다.
6번째의 어드레스는 105에 r(=21)을 더하면 블록의 크기인 126이 되므로 다시 I0부터 I5의 어드레스를 반복하게 되는 것이다. 즉, 상기 카운터(41)에서는 카운팅 값이 일정한 블록 사이즈 N이 될 때마다 I0부터 I5 까지를 순차적으로 반복하여 어드레스 발생부(42)로 출력한다. 그러면, 상기 어드레스 발생부(42)는 카운터(41)로부터 I1 카운트 신호가 입력되면 I1에 해당하는 어드레스를 발생시켜 메모리(43)로 출력하고, I2 카운트 신호가 입력되면 I2에 해당하는 어드레스를 발생시켜 메모리(43)로 출력한다.
만약 일정한 규칙에 의해 어드레스가 반복되지 않으면 다음의 어드레스는 계속 일정한 크기만큼 증가시켜서 반복하게 된다.
도 7은 이러한 어드레스 발생 방법의 흐름도로서, 처음 한 블록 동안에는 순차적인 어드레스가 발생되며 그 다음 블록부터는 계속 r만큼씩 증가하여 어드레스가 발생한다.
즉, 심볼 디인터리버(22)로부터 심볼 데이터가 입력되면(단계 701), 변수 k=0, a=0으로 초기화한 후(단계 702), 메모리(43)에 입력 데이터를 라이트하는데, 어드레스 k(k=0) 위치에 라이트한다. 그리고나서, 하기의 수학식 3에 의해 다음 어드레스를 지정한다(단계 704).
k = (k+1) mod N
이때, 상기 단계 702에서 k는 0으로 초기화되어 있으므로, 상기 수학식 3에 적용하면 k는 1이 된다. 여기서, N은 블록 사이즈 즉, 126이다.
그리고, 상기 수학식 3에 의해 다음 어드레스가 결정되면 결정된 어드레스 k가 126인지를 판단한다(단계 705). 여기서, 126은 블록 사이즈로서, 블록 사이즈에 따라 수학식 3의 N과 같이 달라진다.
상기 단계 705에서 k가 126보다 작다고 판별되면 다시 상기 단계 703로 되돌아가 어드레스 k(k=1) 위치에 다음 데이터를 라이트한 후 다시 수학식 3을 적용하여 다음 어드레스를 결정하고, 결정된 어드레스가 126과 같은지를 비교하는 과정을 수행한다.
이때, 상기 수학식 3에서 이전 k 값이 1이므로,
k = (1 + 1) mod 126을 하면, 다음 어드레스로 결정되는 k는 2가 된다.
이때에도, 결정된 어드레스 k는 126이 안되므로 상기 단계 703로 되돌아가 상기 과정들을 반복 수행하면, k는 1씩 순차적으로 증가한다.
그리하여, k가 126이 되면 한 블록 사이즈에 대한 데이터가 모두 메모리(43)에 라이트되었음을 의미한다.
따라서, 라이트 시작 시점 이후 메모리(43)에 한 블록 사이즈 N만큼의 데이터 라이트가 이루어지면, 라이트된 데이터의 리드 및 다음 블록 사이즈 N에 해당하는 데이터를 저장하기 위한 초기 어드레스를 하기 수학식 4를 적용하여 결정한다(단계 706, 707).
a = (a+r) mod N
여기서, N은 블록 사이즈이고, r은 디인터리빙 규칙에 따라 어드레스 종류가 바뀔 때 어드레스를 쉬프트시킬 상수로서, 본 발명에서는 21로 설정하였다. 그리고, r과 더해지는 a는 이전 a로서 상기 단계 702에서 0으로 초기화되어 있다. 그러므로, 이 값들을 수학식 4에 적용하면, a = (0 + 21) mod 126가 되고, 결국 a는 21이 된다.
따라서, 상기 수학식 4에서 구해진 a를 k로 치환하고, c를 0으로 초기화하면(k=a, c=0), 상기 단계 701 내지 단계 705가 수행되어 최초 한 블록 사이즈에 해당하는 데이터가 라이트된 이후 라이트된 데이터의 리드 및 다음 블록의 데이터 라이트에 대한 어드레스가 결정된다. 즉, k는 21부터 순차 증가하게 된다.
다시말해, 메모리(43)의 어드레스 k(k=21) 위치에 라이트된 데이터를 리드하고 리드가 이루어지면 바로 그 위치(k=21)에 입력되는 데이터를 라이트한다(단계 708).
그리고나서, 하기의 수학식 5에 의해 리드/라이트를 위한 다음 어드레스 k를 지정하고, c를 1 증가시킨다(단계 709).
k = (k+1) mod N
이때, 상기 단계 707에서 k는 21이었으므로, 상기 수학식 5에 적용하면 k= (21+1) mod 126가 되어 결국 다음 어드레스 k는 22가 된다.
그리고, 상기 수학식 5에 의해 다음 어드레스 k가 결정되면 상기 단계 709에서 증가시킨 c가 126인지를 판단한다(단계 710). 이때는 k가 0부터 증가하는 것이 아니라 21부터 증가하므로, c를 이용하여 한 블록 사이즈에 해당하는 데이터의 리드/라이트 완료를 판단한다.
상기 단계 710에서 c가 126보다 작다고 판별되면 다시 상기 단계 708로 되돌아가 어드레스 k(k=22) 위치에 다음 데이터를 라이트한 후 다시 수학식 5를 적용하여 다음 어드레스 k를 결정하고 c를 증가시키며, 증가된 c(c=2)가 126과 같은지를 비교하는 과정을 수행한다.
이때, 이전 k=22이므로 상기 수학식 5에 의해
k = (22 + 1) mod 126이 되고, 다음 어드레스로 결정되는 k는 23이 된다.
이때에도, 증가된 c는 126이 안되므로 상기 단계 708로 되돌아가 상기 과정들을 반복 수행하면, k와 c는 1씩 순차적으로 증가한다. 여기서, 상기 과정 중에 k가 125가 되어 수학식 5에 대입되면, k=(125+1) mod 126에 의해 0이 된다. 그러면, 어드레스 0의 위치에 있는 데이터의 리드 및 라이트가 이루어진다. 이때, c는 126이 안되므로 k와 c의 증가는 계속되며, c가 126이 되면 즉, k가 21이 되면 한 블록 사이즈에 대한 데이터의 리드 및 라이트가 모두 완료되었음을 의미한다.
상기 단계 710에서 c=126이라고 판별되면 상기 단계 706로 되돌아가 다시 라이트된 데이터의 리드 및 다음 블록 사이즈 N에 해당하는 데이터를 저장하기 위한 초기 어드레스를 상기 수학식 4를 적용하여 결정한 후 단계 708 내지 단계 710을 반복 수행하여 한 블록 사이즈에 해당하는 데이터의 리드/라이트를 수행한다.
즉, 어드레스 k가 42부터 순차 증가하여 125가 된 후 0이 되고 다시 43이 되면 한 블록 사이즈에 대한 데이터의 리드 및 라이트가 완료된다.
그 다음 블록에서는 어드레스 k가 63부터 순차 증가하여 125가 된 후 0이 되고 다시 62이 되면 한 블록 사이즈에 대한 데이터의 리드 및 라이트가 완료된다.
이와 같은 과정에 의해 데이터의 리드 및 라이트가 이루어지면, 블록 사이즈 N만큼의 크기인 메모리만으로 충분히 비트 디인터리빙이 가능하게 된다.
즉, 도 7에서 단계 701 내지 단계 705는 초기에 입력되는 한 블록 사이즈에 대한 데이터의 라이트 과정을 나타낸 것이고, 단계 706 내지 단계 710는 이후의 입력 데이터들에 대한 데이터 리드/라이트 과정을 나타낸 것이다.
마지막으로 도 4의 멀티플렉서(44)는 메모리(43)에서 출력되는 데이터를 이후의 연결(비터비 디코더)을 위하여 적절한 데이터 순서로 출력한다.
도 8은 16QAM인 경우에 이러한 비트 디인터리버의 출력을 다음단에 이어지는 비터디 디코더와의 연결을 위한 출력 방법을 나타내고 있다. 즉, 16-QAM의 경우는 4비트가 한 심볼로 이루어져 있으므로 각각 비터비 디코더 입력을 위해 1번째와 3번째는 I로 출력되고 2번째와 4번째는 Q로 출력되는 경우의 예를 나타내고 있다. 또한, dvaldout 신호는 이러한 I나 Q 신호의 유효한 구간을 나타내는 신호로 쓰인다.
한편, 본 발명은 비트 디인터리버뿐만 아니라 송신측의 비트 인터리버에도 동일하게 적용할 수 있으며, 이로인해 송신측에서도 비트 인터리빙을 수행할 때 메모리의 양을 줄일 수 있다.
이상에서와 같이 본 발명에 따른 비트 디인터리빙 방법에 의하면, 여러개의 캐리어를 사용하는 OFDM 시스템의 비트 인터리버/디인터리버의 구현이나 입력되는 비트의 순서가 일정한 크기만큼 쉬프트되어 출력되는 모든 종류의 인터리버/디인터리버를 구현할 때에 단지 한 블록 사이즈에 해당하는 메모리의 양으로도 데이터 손실없이 인터리빙/디인터리빙이 가능하므로, 실제 이러한 인터리버/디인터리버를 IC로 디자인할 때에 필요로하는 내부 메모리의 양을 줄일 수 있어 IC화가 용이해진다. 또한, 인터리빙/디인터리빙을 위한 메모리의 제어도 아주 쉽게 이루어진다.
도 1은 종래의 인터리빙/디인터리빙 처리에 필요한 메모리를 나타낸 블럭도
도 2는 본 발명에 따른 DVB-T 수신 시스템의 전체 블록도
도 3은 본 발명에 따른 인터리빙/디인터리빙 처리에 필요한 메모리를 나타낸 블록도
도 4는 도 3의 비트 디인터리버의 상세 블록도
도 5의 (a) 내지 (d)는 도 4의 비트 디인터리버의 각 부의 입/출력 타이밍도
도 6의 (a) 내지 (c)는 도 4의 비트 디인터리버의 어드레스 발생 타이밍도
도 7은 본 발명에 따른 비트 디인터리빙 방법을 나타낸 흐름도
도 8의 (a) 내지 (c)는 비터비 디코더와의 접속을 위한 비트 디인터리버의 출력 상태를 나타낸 타이밍도
도면의 주요부분에 대한 부호의 설명
21 : 제어부 22 : 디맵퍼 및 심볼 디인터리버
23 : 비트 인터리버 41 : 카운터
42 : 어드레스 발생부 43 : 메모리
44 : 멀티플렉서

Claims (4)

  1. 심볼 단위로 디인터리빙된 데이터를 메모리를 이용하여 다시 비트 단위로 디인터리브하는 디인터리빙 방법에 있어서,
    처음에 수신되는 데이터는 한 블록 사이즈에 해당하는 만큼 메모리에 순차적으로 라이트하는 데이터 라이트 단계와,
    상기 데이터 라이트 단계에서 한 블록 사이즈에 해당하는 데이터의 라이트가 완료되면 소정 간격만큼 쉬프트되어 순차 발생되는 어드레스에 라이트된 데이터의 리드를 수행하고 데이타가 리드된 바로 그 어드레스 위치에 입력되는 데이타를 라이트하는 과정을 블록마다 반복 수행하는 데이터 리드/라이트 단계를 포함하여 이루어짐을 특징으로 하는 비트 디인터리빙 방법.
  2. 제 1 항에 있어서, 데이터 리드/라이트 단계는
    한 블록 사이즈에 대한 데이터의 라이트가 완료되면 다음 블록에 대한 시작 어드레스를 이전 블록의 시작 어드레스보다 소정 간격만큼 쉬프트시킨 후 발생하는 제 1 단계와,
    상기 제 1 단계에서 발생하는 어드레스 위치에 라이트된 데이터의 리드를 수행하고 데이타가 리드된 바로 그 어드레스 위치에 입력되는 데이타를 라이트하는 제 2 단계와,
    상기 제 2 단계에서 지정하는 어드레스에서의 데이터 리드 및 라이트가 완료되면 어드레스를 증가시켜 다음 어드레스를 지정한 후 지정된 어드레스에 저장될 데이터가 해당 블록의 마지막 데이타에 해당하는지를 판별하는 제 3 단계와,
    상기 제 3 단계에서 마지막 데이터라고 판별되면 상기 제 1 단계로 되돌아가 다음 블록에 대한 시작 어드레스 발생 및 데이터 리드/라이트 과정을 수행하고, 마지막 데이터가 아니라고 판별되면 상기 제 2 단계로 되돌아가 해당 블록에서의 데이터 리드/라이트 및 다음 어드레스 발생 과정을 수행하는 제 4 단계를 포함하여 이루어짐을 특징으로 하는 비트 디인터리빙 방법.
  3. 제 2 항에 있어서, 상기 제 1 단계에서 발생되는 시작 어드레스가 디인터리빙에 필요한 블록 사이즈 값과 같거나 커지면 시작 어드레스를 블록 사이즈 값으로 나누어 발생된 나머지를 시작 어드레스로 함을 특징으로 하는 비트 디인터리빙 방법.
  4. 제 2 항에 있어서, 상기 제 3 단계에서 증가되는 어드레스가
    한 블록 사이즈 값과 같아지면 0부터 다시 시작함을 특징으로 하는 비트 디인터리빙 방법.
KR1019980018358A 1998-05-21 1998-05-21 비트 디인터리빙 방법 KR100493268B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980018358A KR100493268B1 (ko) 1998-05-21 1998-05-21 비트 디인터리빙 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980018358A KR100493268B1 (ko) 1998-05-21 1998-05-21 비트 디인터리빙 방법

Publications (2)

Publication Number Publication Date
KR19990085749A KR19990085749A (ko) 1999-12-15
KR100493268B1 true KR100493268B1 (ko) 2006-02-28

Family

ID=37179093

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980018358A KR100493268B1 (ko) 1998-05-21 1998-05-21 비트 디인터리빙 방법

Country Status (1)

Country Link
KR (1) KR100493268B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167633A (ja) * 1991-12-12 1993-07-02 Nippon Hoso Kyokai <Nhk> ディジタル伝送方式
WO1997003518A1 (en) * 1995-07-12 1997-01-30 Thomson Consumer Electronics, Inc. Apparatus for decoding video signals encoded in different formats
WO1997019518A1 (en) * 1995-11-24 1997-05-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for conditionally combining bit metrics in a viterbi decoder for decoding a received information signal
KR970056904A (ko) * 1995-12-30 1997-07-31 배순훈 유럽형 고화질 텔레비젼
JPH1075227A (ja) * 1996-08-29 1998-03-17 Jisedai Digital Television Hoso Syst Kenkyusho:Kk Ofdm送信装置及びofdm受信装置
KR19990081320A (ko) * 1998-04-28 1999-11-15 전주범 직교분할대역 수신 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05167633A (ja) * 1991-12-12 1993-07-02 Nippon Hoso Kyokai <Nhk> ディジタル伝送方式
WO1997003518A1 (en) * 1995-07-12 1997-01-30 Thomson Consumer Electronics, Inc. Apparatus for decoding video signals encoded in different formats
WO1997019518A1 (en) * 1995-11-24 1997-05-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for conditionally combining bit metrics in a viterbi decoder for decoding a received information signal
KR970056904A (ko) * 1995-12-30 1997-07-31 배순훈 유럽형 고화질 텔레비젼
JPH1075227A (ja) * 1996-08-29 1998-03-17 Jisedai Digital Television Hoso Syst Kenkyusho:Kk Ofdm送信装置及びofdm受信装置
KR19990081320A (ko) * 1998-04-28 1999-11-15 전주범 직교분할대역 수신 시스템

Also Published As

Publication number Publication date
KR19990085749A (ko) 1999-12-15

Similar Documents

Publication Publication Date Title
US10020970B2 (en) Data processing apparatus and method for interleaving and deinterleaving data
JP4669026B2 (ja) 直交周波数分割多重通信方式によるデジタル信号の送信
US8130894B2 (en) Data processing apparatus and method for use with a 4K interleaver in a digital video broadcasting (DVB) standard
KR101464761B1 (ko) 데이터 처리 장치 및 방법
JP5392905B2 (ja) データ処理装置及びデータ処理方法
US20170331656A1 (en) Data processing apparatus and method
EP2056466B1 (en) Data processing apparatus and method
JP2008295057A5 (ko)
US7440392B2 (en) Wireless receiver deinterleaver having partitioned memory
JP2001320345A (ja) Ofdm復調装置
KR100493268B1 (ko) 비트 디인터리빙 방법
US7233612B1 (en) Wireless communication deinterleaver using multi-phase logic and cascaded deinterleaving
US9577789B2 (en) Frequency deinterleaving and time deinterleaving circuit, method thereof and receiving circuit of digital television
KR20040035296A (ko) 개선된 구조의 내부인터리버를 가지는 디지털방송시스템의 전송장치 및 그의 전송방법
KR19990079604A (ko) 심볼 디인터리빙 장치
US8767847B2 (en) Time-deinterleaver and method for input signal processing and computer program products using the same
KR100252984B1 (ko) 디지털 방송 시스템의 심볼 디-인터리빙장치 및 방법
EP2338232A2 (en) A method and apparatus for deinterleaving in a digital communication system
JP2001237714A (ja) インターリーブ方法及び送受信システム

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080319

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee