KR100492124B1 - 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법 - Google Patents

구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법 Download PDF

Info

Publication number
KR100492124B1
KR100492124B1 KR10-2002-0079293A KR20020079293A KR100492124B1 KR 100492124 B1 KR100492124 B1 KR 100492124B1 KR 20020079293 A KR20020079293 A KR 20020079293A KR 100492124 B1 KR100492124 B1 KR 100492124B1
Authority
KR
South Korea
Prior art keywords
data
address
memory
fourier transform
fast fourier
Prior art date
Application number
KR10-2002-0079293A
Other languages
English (en)
Other versions
KR20040051371A (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 KR10-2002-0079293A priority Critical patent/KR100492124B1/ko
Priority to US10/626,740 priority patent/US7486609B2/en
Priority to EP03027875A priority patent/EP1429255A2/en
Priority to CNB2003101203151A priority patent/CN100521586C/zh
Priority to JP2003414137A priority patent/JP3878601B2/ja
Publication of KR20040051371A publication Critical patent/KR20040051371A/ko
Application granted granted Critical
Publication of KR100492124B1 publication Critical patent/KR100492124B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/015High-definition television systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H40/00Arrangements specially adapted for receiving broadcast information
    • H04H40/18Arrangements characterised by circuits or components specially adapted for receiving
    • H04H40/27Arrangements characterised by circuits or components specially adapted for receiving specially adapted for broadcast systems covered by groups H04H20/53 - H04H20/95
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/65Arrangements characterised by transmission systems for broadcast
    • H04H20/71Wireless systems
    • H04H20/72Wireless systems of terrestrial networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H2201/00Aspects of broadcast communication
    • H04H2201/10Aspects of broadcast communication characterised by the type of broadcast system
    • H04H2201/20Aspects of broadcast communication characterised by the type of broadcast system digital audio broadcasting [DAB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Complex Calculations (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향 디지털 오디오 방송 수신기 및 그의 동작방법이 개시된다. 전송되는 데이터의 크기에 따라서 다양한 FFT모드를 가지는 디지털 오디오 방송 수신기는, 소정개수의 기록어드레스 및 호출어드레스를 발생하는 어드레스 발생부와, FFT모드의 각각의 데이터를 반복하여 소정개수의 데이터로 생성하고 소정개수의 데이터를 이용하여 고속 퓨리에 변환을 수행하는 고속 퓨리에 변환부와, 및 고속 퓨리에 변환부의 동작에 대응하여 기록어드레스 및 호출어드레스를 발생하도록 어드레스 발생부를 제어하는 제어부를 갖는다.

Description

구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향 디지털 오디오 방송 수신기 및 그의 동작방법{European digital audio broadcasting recevier having a simple Fast Fourier Transform and a method operating thereof}
본 발명은 유럽향 디지털 방송 수신기에 관한 것으로, 더욱 상세하게는 고속 퓨리에 변환(FFT:Fast Fourier Transform)장치에 관한 것이다.
디지털 기술의 발전에 따라 방송방식이 아날로그방식에서 디지털방식으로 전환되고 있는 추세이다. 라디오 방송은 이미 디지털 방송을 시행하고 있거나, 준비 중인 상황이다. 유럽형 디지털 오디오 방송(DAB:Digital Audio Broadcasting)은 전송방식은 OFDM(Orthogonal Frequency Division Multiplex)방식을 사용하고 있으며, OFDM 방식에 사용되는 고속 퓨리에 변환(FFT)장치는 입력되는 데이터의 갯수에 따라 256, 512, 1024, 및 2048 등의 FFT 모드를 갖는다.
종래의 고속퓨리에변환(FFT)장치는 고속 퓨리에 변환을 수행하기 위해 메모리의 어드레스 발생방식과 데이터의 버터플라이(Butterfly) 연산방식이 각각의 FFT 모드에 따라 다르게 동작하였다.
예를 들면, 미국특허번호 US06035313 "Memory Address Generator for an FFT" 에서는 각각의 FFT 모드에 따라서 메모리의 어드레스 발생방식을 다르게 적용함으로써 처리방법 및 구현이 복잡한 문제점을 가지고 있다.
한편, 고속 퓨리에 변환 장치의 연산 방식으로는 256, 512, 1024, 및 2048 등의 2n FFT 모드의 입력데이터를 처리할 수 있는 Radix-2 방식과, 256, 1024 등의 4n FFT 모드의 입력데이터를 처리할 수 있는 Radix-4 방식이 일반적이다. 이에 Radix-2 방식은 Radix-4 방식에 비해 상대적으로 처리속도가 느린 단점이 있으며, Radix-4 방식은 512, 2048 등과 같은 256, 1024 등의 4n FFT 모드의 입력데이터를 처리할 수 있으나, 512, 2048 등의 2n FFT 모드의 입력데이터는 처리할 수 없다는 단점이 있다. 이와 같은 문제점을 해결하기 위해서 미국특허번호 US05473556 "Digit Reverse for Mixed Radix FFT" 에서는 연산구조에 대해 Radix-2 구조와 Radix-4 구조을 조합한 Mixed Radix 구조를 제공하고 있다.
그러나, 이와 같은 Radix-2 구조와 Radix-4 구조을 조합하는 연산구조 역시, 구현이 복잡한 문제점을 가지고 있다.
상기와 같은 문제점을 해결하기 위해서, 본 발명의 목적은, 보다 효율적이고 구현이 간단한 고속 퓨리에 변환(FFT:Fast Fourier Transform)장치를 가지는 유럽향 디지털 오디오 방송수신기 및 그의 동작방법을 제공하는 것이다.
상기의 목적을 달성하기 위한 본 발명에 따른 전송되는 데이터의 크기에 따라서 다양한 FFT모드를 가지는 디지털 오디오 방송 수신기는, 소정개수의 기록어드레스 및 호출어드레스를 발생하는 어드레스 발생부; 상기 FFT모드의 각각의 데이터를 반복하여 상기 소정개수의 데이터로 생성하고, 상기 소정개수의 데이터를 이용하여 고속 퓨리에 변환을 수행하는 고속 퓨리에 변환부; 및 상기 고속 퓨리에 변환부의 동작에 대응하여 상기 기록어드레스 및 상기 호출어드레스를 발생하도록 상기 어드레스 발생부를 제어하는 제어부;를 갖는다.
상기 소정개수는 4096개 이며, 상기 고속 퓨리에 변환부는 상기 4096개 데이터를 이용하여 고속 퓨리에 변환을 수행한다.
상기 고속 퓨리에 변환부는, 상기 FFT모드 각각의 데이터를 반복하여 상기 4096개의 데이터로 생성하는 메모리제어부; 2048개의 데이터를 기록할 수 있는 크기를 가지는 메모리; 및 상기 4096개의 데이터를 이용하여 Radix-4 방식으로 연산을 수행하는 연산부;를 가지며, 상기 호출어드레스가 발생하는 경우, 상기 메모리제어부는 상기 메모리의 어드레스를 상기 호출어드레스에 대응하여 디지트 리버스를 수행한다.
상기 메모리제어부는, 상기 연산부에서 상기 Radix-4 방식으로 연산을 수행할 수 있도록 상기 메모리에 기록되는 상기 2048개 데이터 이외의 데이터를 기록하는 가상메모리를 가지며, 상기 Radix-4 방식으로 연산됨에 따라, 상기 가상메모리에는 상기 FFT모드에 대응하여 '0' 데이터가 블록화되어 기록된다.
상기 메모리제어부는, 상기 메모리에 상기 Radix-4 방식에 의해 연산되어 기록된 데이터를 상기 FFT모드에 대응하여 디지트 리버스를 수행한다.
상기 메모리제어부는, 상기 FFT모드가 2048인 경우,
상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
{a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
{a1,a3,a2,a5,a4,a7,a6,a 9,a8,a11,a10}으로 디지트 리버스한다.
상기 FFT모드가 1024인 경우, 상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
{a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
{0,a3,a2,a5,a4,a7,a6,a9 ,a8,a11,a10}으로 디지트 리버스한다.
상기 FFT모드가 256인 경우, 상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
{a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
{0,0,0,a5,a4,a7,a6,a9,a8,a 11,a10}으로 디지트 리버스한다.
상기 FFT모드가 512인 경우, 상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
{a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
{0,a3,0,a5,a4,a7,a6,a9,a8 ,a11,a10}으로 디지트 리버스한다.
한편, 본 발명에 따른 전송되는 데이터의 크기에 따라서 다양한 FFT모드를 가지는 디지털 오디오 방송 수신기의 동작방법에 있어서, 소정개수의 기록어드레스를 발생하는 단계; 상기 소정개수의 기록어드레스에 대응하여 상기 FFT모드의 각각의 데이터를 반복하여 상기 소정개수의 데이터로 생성하고, 상기 소정개수의 데이터를 이용하여 고속 퓨리에 변환을 수행하는 고속 퓨리에 변환단계; 및 상기 고속 퓨리에 변환단계의 동작이 완료되면 호출어드레스를 발생하는 단계;를 가지는 것을 특징으로 한다.
상기 소정개수는 4096개이며, 상기 고속 퓨리에 변환단계는 상기 4096개 데이터를 이용하여 고속 퓨리에 변환을 수행한다.
상기 고속 퓨리에 변환단계는, 상기 FFT모드 각각의 데이터를 반복하여 상기 4096개의 데이터로 생성하는 단계; 상기 4096개의 데이터를 이용하여 Radix-4 방식으로 연산하고, 메모리의 어드레스에 대응하여 상기 메모리에 기록하는 연산단계; 및 상기 호출어드레스가 발생하는 경우, 상기 호출어드레스에 대응하는 상기 메모리의 어드레스로 디지트 리버스를 수행하는 디지트리버스단계;를 갖는다.
상기 연산단계에서 상기 4096개의 데이터를 상기 Radix-4 방식으로 연산하기 위해 상기 메모리 및 가상메모리에 기록하는 단계;를 더 포함하며, 상기 연산단계의 연산결과에 따라, 상기 가상메모리에 상기 FFT모드에 대응하여 '0' 데이터가 블록화되어 기록된다.
상기 디지트리버스단계는, 상기 메모리에 상기 Radix-4 방식에 의해 연산되어 기록된 데이터를 상기 FFT모드에 대응하여 디지트 리버스를 수행한다.
본 발명에 따르면, 유럽향 디지털 오디오 방송의 FFT모드 2048, 1024, 256, 및 512의 대해 동일한 구조의 고속 퓨리에 변환 장치를 가짐으로써 하드웨어적인 구현이 간단해 진다. 또한, 각각의 FFT모드에 대해 동일한 구조의 고속 퓨리에 변환 장치를 구현함에 따라서 고속 퓨리에 변환의 동작제어가 간단해 진다.
이하에서는 본 발명을 보다 상세하게 설명한다.
본 발명에 따른 유럽향 디지털 오디오 방송 수신기의 고속 퓨리에 변환 장치는 다음과 같은 특성을 가지고 있다.
(1) FFT 를 수행하기 위해서 다양한 입력데이터 모드인 2048, 1024, 256, 및 512에 대해서 동일하게 Radix-4 방식의 연산을 수행하여 고속 퓨리에 변환 장치의의 연산부의 구현을 간단하게 한다.
(2) 다양한 FFT 모드에 Radix-4 방식의 연산을 수행하기 위해 어드레스 발생부는 4096의 어드레스를 발생한다.
(3) 4096 어드레스에 따라서 고속 퓨리에 변환 장치의 메모리의 증가를 막기 위해 FFT의 Duallity 특성을 이용하여 다양한 FFT 모드의 입력데이터 개수인 2048, 1024, 256, 및 512을 4096으로 인터폴레이션을 수행한다.
(4) 인터폴레이션된 4096개의 데이터를 이용하여 Radix-4 방식에 의해 연산을 수행한 후, FFT 모드 각각에 대응하는 디지트 리버스 방식을 적용하여 디지트 리버스를 수행한다.
이상의 특징에 대해 이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명에 따른 바람직한 실시예로서, 유럽향 디지털 오디오 방송(Digital Audio Broadcasting:DAB) 수신기의 개략적인 블록도로서, 디지털 오디오 방송신호를 수신하는 수신부(100), 제어부(200), 어드레스 발생부(300), 및 고속퓨리에변환(FFT)부(400) 등을 가지고 있다.
수신부(100)는 송신기로부터 전송된 디지털 오디오 방송신호를 수신하며, 수신되는 방송신호의 FFT 모드는 2048, 1024, 256, 및 512 등이다.
제어부(200)는 전반적인 DAB 수신기의 동작을 제어하며, 수신부(100)로부터 수신되는 각각의 입력데이터의 FFT 모드에 대응하여 고속 퓨리에 변환을 수행하도록 고속 퓨리에 변환(FFT)부(400)를 제어한다.
어드레스 발생부(300)는 제어부(200)의 제어신호에 대응하여 4096개의 어드레스를 발생한다. 즉, 고속 퓨리에 변환(FFT)부(400)의 고속 퓨리에 변환을 수행하기 위한 호출(read) 및 기록(write) 어드레스를 발생한다.
고속퓨리에변환(FFT)부(400)는 2048개의 데이터에 대응하는 크기를 가지는 메모리(410), Radix-4 방식으로 버터플라이 연산을 수행하기 위한 연산부(430), 및 메모리제어부(450)를 가지고 있다. 메모리제어부(450)는 Radix-4 방식의 연산을 수행하도록 어드레스 발생부(300)에서 발생한 4096개의 어드레스에 대응하여 입력데이터의 FFT모드에 대응하여 데이터를 메모리(410)에 기록하며, 또한, 연산부(430)에서 Radix-4 방식으로 반복되어 연산된 데이터를 메모리(410)에 재기록한다.
한편, 메모리제어부(450)는 Radix-4방식으로 연산되어 메모리(410)에 재기록된 데이터에 대해 디지트 리버스(digit-reverse)를 수행하여 재기록된 데이터를 출력한다. 즉, 제어부(200)의 제어신호에 따라서 어드레스 발생부(300)에서 발생하는 호출 어드레스에 대응하여 메모리(410)의 어드레스를 디지트 리버스하여 소정의 데이터를 출력하게 된다.
이하에서는 도면 및 수학식을 참조하여 본 발명의 실시예에 따른 고속 퓨리에 변환(FFT)부의 동작원리[1] 및 [2]에 대해 상세하게 설명한다.
[1] 고속 퓨리에 변환(FFT)부에 인터폴레이션 방법이 적용된다.
입력데이터를 x(n)으로 나타내고, x(n)의 고속 퓨리에 변환 결과를 X(m)이라고 나타낼 경우, x(n)과 X(m)의 관계는 수학식 1과 같이 나타낼 수 있다.
입력데이터인 x(n)을 신호처리방법 중 하나인 인터폴레이션 방법인 업샘플링(upsampling) 방법을 적용하여 수학식 2와 같이 나타낼 수 있다.
수학식 2를 수학식 3으로 다시 나타낼 수 있다.
여기서, N은 처리하고자 하는 입력데이터의 갯수이며, 위의 수학식 3을 고속 퓨리에 변환을 수행하면 수학식 4와 같이 나타낼 수 있다.
위의 수학식 4를 기초하여 인터폴레이션 이전의 FFT 결과를 m값의 구간별로 비교해 보면 주기를 갖고 반복된다. 우선 m값의 범위가 0 ≤m < N/L-1인 경우 인터폴레이션 이전의 FFT 결과와 같음을 위의 식의 결과를 통해 알 수 있다. m값의 범위가 N/L ≤m < 2N/L-1 경우는 다음의 수학식 5와 같이 나타난다.
위의 수학식 5를 참조할 때, m값의 범위가 N/L ≤m < 2N/L-1 경우도 인터폴레이션 이전의 FFT 결과와 같음을 알 수 있다.
이상의 수학식 1 내지 수학식 5에서 설명된 바와 같이, 시간영역의 데이터를 소정계수로 업샘플링을 수행한 후, 고속 퓨리에 변환을 수행하게 되면, 인터폴레이션 이전의 데이터가 업샘플링된 계수만큼 반복되는 결과를 갖는다.
인터폴레이션에 따른 고속 퓨리에 변환의 결과를 도 2a 내지 도 2c에 도시된 스펙트럼도를 참조하여 설명한다. 먼저, 도 2a는 FFT 모드가 1024인 경우 시간영역에서의 입력데이터의 스펙트럼도이다. 도 2a에 도시된 1024개의 입력데이터에 대해 3 업샘플링을 수행하여 도 2b에 도시된 바와 같이, 4096개의 데이터로 업샘플링을 수행한다. 이 후, 도 2b에 도시된 바와 같이 4096개의 데이터를 고속 퓨리에 변환을 수행하여 시간영역의 데이터를 주파수영역의 데이터로 변환한다. 즉, 4096개의 데이터는 인터폴레이션 이전의 1024개의 입력데이터를 주기로 4번 반복된다.
한편, 고속 퓨리에 변환는 Duality 특성을 갖는다. Duality 는, x(n)에 대한 고속 퓨리에 변환결과를 X(m)이라고 할 경우, X(m)을 고속 퓨리에 변환한 결과는 x(n)이 되는 성질이다.
시간영역의 1024개의 입력데이터를 4번 반복(도 2c에 도시됨)하는 방식의 인터폴레이션을 수행하여 고속 퓨리에 변환을 수행하게 되면, 고속 퓨리에 변환의 Duality 특성에 따라서 주파수영역에서의 1024개의 입력데이터 사이에 3개의 제로(zero)데이터가 삽입되어 분포된다(도 2b에 도시됨).
이와 같은 Duality 특성에 따라서 인터폴레이션 방법을 적용하면 다음과 같다.
고속 퓨리에 변환 장치는 다양한 입력데이터 모드인 2048, 1024, 256, 및 512에 대해서 동일하게 Radix-4 방식의 연산을 수행하기 위해 어드레스 발생부(300)에서는 입력데이터 2048, 1024, 256, 및 512에 대해서 동일하게 0 부터 4095 어드레스를 발생한다. 이에 대응하여 메모리제어부(450)에서는 다양한 입력데이터를 4096개의 데이터로 인터폴레이션을 수행한다. 즉, 2048모드는 2번, 1024모드는 4번, 256모드는 16번, 및 512모드는 8번씩 입력데이터를 반복하여 인터폴레이션한다.
이에 따라, 2048개의 데이터를 기록할 수 있는 메모리(410)에는 0 부터 4095의 어드레스에 대한 데이터에 대해 0 부터 2047 어드레스에 해당하는 데이터만을 입력한다. 이때, 메모리제어부(450)는 2048 부터 4095 어드레스에 해당하는 데이터를 가상메모리에 기록한다. 즉, 메모리(410)에 실질적으로 기록되는 데이터는 0 부터 2047 어드레스에 대한 데이터이며, 나머지 2048 부터 4095 어드레스에 대한 데이터는 메모리(410)에 기록되는 데이터가 아니고 메모리제어부(450)만이 알고 있는 데이터가 된다.
이와 같이, 메모리(410) 및 메모리제어부(450)의 가상메모리에 기록된 4096개의 데이터를 기초하여 연산부(430)에서는 Radix-4 방식으로 버터플라이연산을 수행한다.
도 3은 Radix-4 방식에 의해 버터플라이 연산이 수행되는 개념을 설명하기 위한 개념도로서, 이를 참조하여 Radix-4 방식의 연산식은 다음의 수학식 6으로 나타낼 수 있다.
이하 도면 및 수학식을 참조하여 연산부(430)에서 2048, 1024, 256, 및 512 각각의 FFT 모드에 대해서 Radix-4 방식으로 연산이 수행되는 과정을 설명한다.
첫째, 도 4를 참조하여 2048 모드에서 Radix-4 방식으로 연산되는 과정을 상세하게 설명한다.
수신되는 2048개의 입력데이터가 고속 퓨리에 변환 장치(400)내의 메모리(410)에 기록된다. 그 후, 제어부(100)로부터 고속 퓨리에 변환을 수행하는 제어신호가 어드레스 발생부(300)에 입력되면, 어드레스 발생부(300)는 4096개의 어드레스를 발생한다. 메모리제어부(450)는 4096 어드레스에 대응하여 인터폴레이션된 4096개의 데이터를 메모리(410) 및 가상메모리에 기록한다. 즉, 도 4의 'A'에 도시된 4096 어드레스 구조에 대해 0 부터 2047번지까지는 2048개의 입력데이터를 기록하며, 메모리제어부(450)의 가상메모리 2048 부터 4095번지는 2048개의 입력데이터를 반복하여 기록한다.
이 후, 연산부(430)에서는 Radix-4 방식으로 버터플라이 연산을 수행한다. 일반적으로 Radix-4 방식은 전체 데이터에 대해 log4(FFT크기) 횟수만큼 버터플라이연산을 반복 수행하는(Stage) 것으로, 이에 따라, 4096개의 데이터에 대해서는 버터플라이 연산을 6회 반복하여 수행한다. 연산된 결과는, 다음의 수학식 7과 같이 나타낼 수 있으며, 이에 따른 연산된 4096개의 데이터는 도 4의 'B'에 도시된 바와 같이 재기록된다.
수학식 7의 연산결과와 같이, 인터폴레이션 된 4096개의 데이터를 Radix-4 방식으로 연산을 수행하면, 전체 4096 어드레스 구조에 대해 X(4k) 및 X(4k+2)의 번지에만 데이터가 존재하며, X(4k+1) 및 X(4k+3)의 번지에는 '0' 만이 존재한다. 전체 스테이지에서 대한 연산결과 역시, X(4k) 및 X(4k+2)의 번지에만 데이터가 존재하게 된다. 따라서, 메모리(410)에는 X(4k) 및 X(4k+2) 번지에 대응하는 2048개의 데이터가 재기록된다.
둘째, 도 5를 참조하여 1024 모드에서 Radix-4 방식으로 연산되는 과정을 상세하게 설명한다.
어드레스 발생부(300)는 4096개의 어드레스를 발생하고 4096 어드레스 구조에 대응하여 인터폴레이션된 4096개의 데이터를 메모리(410) 및 가상메모리에 기록한다. 즉, 도 5의 'A'에 도시된 바와 같이, 0 부터 4096번지까지는 1024개의 데이터가 4번 반복되어 기록된다. 이때, 2048 부터 4095번지는 메모리제어부(450)의 가상메모리로서 여기에 기록되는 2048개의 데이터는 메모리제어부(450)만이 알고 있는 데이터가 된다.
이와 같이, 인터폴레이션된 4096개의 데이터는 도 5의 'A'에 도시된 바와 같으며, 연산부(430)에서는 4096개의 데이터를 이용하여 Radix-4 방식으로 버터플라이연산을 수행한다. Radix-4 방식으로 한 스테이지 연산된 결과는, 다음의 수학식 8과 같이 나타낼 수 있으며, 이에 따른 4096 어드레스 구조의 재기록되는 데이터는 도 5의 'B'와 같다.
수학식 8의 연산결과와 같이, 인터폴레이션 된 4096개의 데이터를 Radix-4 방식으로 연산을 수행하면, 전체 4096 어드레스 구조에 대해 X(4k)의 번지에만 데이터가 존재하며 X(4k+1), X(4k+2) 및 X(4k+3)의 번지에는 '0'이 존재한다. 전체 스테이지에서 대한 연산결과 역시, X(4k)의 번지에만 1024개의 입력데이터가 데이터가 재기록된다. 따라서, 메모리(410)에는 X(4k)의 번지에 대응하는 1024개의 데이터가 재기록된다.
셋째, 도 6a 및 도 6c를 참조하여 256 모드에서 Radix-4 방식으로 연산되는 과정을 상세하게 설명한다.
어드레스 발생부(300)는 4096개의 어드레스를 발생하고 4096 어드레스 구조에 대응하여 인터폴레이션된 4096개의 데이터를 메모리(410) 및 가상메모리에 기록한다. 즉, 도 6의 'A'에 도시된 4096 어드레스 구조에 대해 0 부터 2047번지까지는 256개의 256개의 데이터가 8번 반복되어 기록되며, 2048 부터 4095번지에도 역시 256개의 데이터가 8번 반복되어 기록되되, 역시, 메모리제어부(450)만이 알고 있는 가상메모리에 기록된다.
이와 같이, 인터폴레이션 방법에 따라서 도 6의 'A'에 도시된 바와 같이, 256개의 데이터가 16번 반복되어 4096 어드레스 구조를 가지며, 이를 연산부(430)에서 Radix-4 방식으로 버터플라이 연산을 수행한다. 앞에서 설명된 2048 및 1024 모드의 연산결과를 참조하면, Radix-4 방식의 연산은 한 스테이지 이후 1/4씩 독립적으로 이루어진다는 것을 알 수 있다.
이러한 Radix-4 방식의 연산특성에 따라서, 도 6 'A'의 4096개의 데이터는 한 스테이지(stage1) 연산 후, 도 6의 'B'에 도시된 바와 같이 0 부터 1023번지에만 데이터가 존재하게 되며, 이는 앞서 설명된(도 5의 'A' 및 'B') 1024 모드의 연산 결과와 동일하다. 따라서, 연산된 결과는 수학식 8과 같으며, 이에 따른 4096 어드레스 구조에 재기록되는 데이터는 도 6의 'C'에 도시된 바와 같이, 0 부터 255 번지인 X(4l)영역에만 데이터가 재기록 된다.
네째, 도 7를 참조하여 512 모드에서 Radix-4 방식으로 연산되는 과정을 상세하게 설명한다.
어드레스 발생부(300)는 4096개의 어드레스를 발생하고 4096 어드레스 구조에 대응하여 인터폴레이션된 4096개의 데이터를 메모리(410) 및 가상메모리에 기록한다. 즉, 도 7의 'A'에 도시된 4096 어드레스 구조에 대해 0 부터 2047번지까지는 512개의 데이터가 4번 반복되어 기록되며, 2048 부터 4095번지에도 역시 512개의 데이터가 4번 반복되어 기록되되, 역시, 메모리제어부(450)만이 알고 있는 가상메모리에 기록된다.
이와 같이, 인터폴레이션 방법에 따라서 도 7의 'A'에 도시된 바와 같이, 512개의 데이터가 8번 반복되어 4096 어드레스 구조를 가지며, 이를 연산부(430)에서 Radix-4 방식으로 버터플라이 연산을 수행한다. Radix-4 방식의 연산특성에 따라서, 도 7의 'A' 4096개의 데이터는 한 스테이지(stage1) 후, 도 7의 'B'에 도시된 바와 같이 0 부터 1023번지에만 데이터가 존재하게 되며, 이는 앞서 설명된(도 4의 'A' 및 'B') 2048 모드의 연산 결과와 동일하다. 따라서, 연산된 결과는 수학식 7과 같으며, 이에 따른 4096 어드레스 구조에 재기록되는 데이터는 도 7의 'C'에 도시된 바와 같이, 0 부터 255 번지인 X(4l)과, 512 부터 767 번지인 X(4l+2)에 데이터가 재기록 된다.
이상에서와 같이, 고속 퓨리에 변환(FFT)부에 인터폴레이션 방법이 적용됨에 따라서, 다양한 입력데이터 FFT 모드 2048, 1024, 256, 및 512의 데이터를 4096개의 데이터로 인터폴레이션을 수행한 후, 동일하게 Radix-4 방식의 연산을 수행함으로써 고속 퓨리에 변환 장치(400)의 구현 및 동작을 간단화할 수 있다. 또한, 인터폴레이션 방법을 적용에 Radix-4 연산후에 메모리(410) 및 가상메모리에 재기록되는 데이터에는 '0'데이터가 블럭화되어 나타나면, 블럭화된 '0'데이터는 가상메모리에 기록되게 된다. 따라서 4096 어드레스에 대한 메모리(410)의 증가 역시 막을 수 있다.
[2] 고속 퓨리에 변환(FFT)부의 디지트 리버스 과정을 설명한다.
일반적으로 4096개의 데이터에 대한 고속 퓨리에 변환을 Radix-4 연산 구조로 구현할 경우 디지트 리버스의 과정은 도 8에 도시된 바와 같다. 여기서, {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}는 어드레스 발생부(300)에서 발생하는 호출어드레스로 예컨데, a2 는 호출어드레스의 3bit의 값이 된다.
한편, {b11,b10,b9,b8,b7,b6,b 5,b4,b3,b2,b1,b0}는 호출어드레스에 대해 디지트 리버스된 어드레스로서, b2 는 디지트 리버스된 어드레스의 3bit의 값이 된다.
도 8을 참조하여, 각각의 FFT 모드에 따라서 메모리(410)에 재기록된 데이터 들의 디지트 리버스(digit-reverse) 과정을 이하 도면을 참조하여 설명한다.
첫째, 도 9a 내지 도 9c를 참조하여 2048 모드에 대한 디지트 리버스 과정을 설명한다.
2048개의 입력데이터를 4096개 데이터로 반복한 후, 반복된 4096개 데이터를 고속 퓨리에 변환을 수행하게 되면, 도 9a에 도시된 바와 같이 2048 데이터 사이에 '0' 데이터가 삽입된 인터폴레이션 형태를 갖는다. 한편, 4096개의 데이터를 Radix-4 방식으로 연산을 수행한 결과 메모리(410)에 재기록되는 데이터의 어드레스 구조는, 도 9b에 도시된 바와 같이 0 ~ 1023 번지 및 2048 ~ 3071번지에만 데이터가 존재하는 형태를 갖는다.
즉, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출한 어드레스(도 9a의 'Memory read address')에 대응하는 데이터와 이 데이터가 실제로 기록된 메모리(410)의 어드레스(도 9b의 'Internal read address')는 서로 다르게 되므로 디지트 리버스(digit-reverse)를 수행한다.
어드레스 발생부(300)에서 발생한 호출 어드레스(Memory read address)의 최하위 2bit {a1, a0} 값이 {0, 1} 및 {1, 1}인 경우는, 도 9a에 도시된 바와 같이 인터폴레이션에 의해 '0'이 삽입된 부분이며, 이 부분에 대해서는 디지트 리버스를 생략한다.
한편, 어드레스 발생부(300)에서 호출한 어드레스(Memory read address)의 최하위 2bit {a1, a0} 값이 {0, 0}인 경우를 디지트 리버스하면, 도 9b에 도시된 바와 같이 메모리(410) 어드레스(Internal read address)의 최상위 2bit {b11, b10}값이 {0, 0}인 영역이 된다. 따라서, 하위 2bit {a1, a0} 값이 {0, 0}인 어드레스를 호출하는 경우는, 메모리제어부(450)는 메모리 어드레스(Internal read address) 최상위 {b11, b10} 값이 {0, 0}인 어드레스로 디지트 리버스한다.
호출한 어드레스(Memory read address)의 최하위 2bit {a1, a0} 값이 {1,0}인 경우를 디지트 리버스하면, 도 9b에 도시된 바와 같이, 메모리(410) 어드레스(Internal read address) 중 최상위 2bit {b11, b10}값이 {1, 0}인 영역이 된다. 그러나, {b11, b10}값이 {1, 0}인 영역은, 가상메모리의 영역인 2048 ~ 3071내의 어드레스이므로 1024를 뺀 어드레스인 1024 ~ 2047 어드레스로 디지트 리버스를 수행한다. 즉, 최하위 2bit {a1, a0} 값이 {1, 0}인 어드레스를 호출하는 경우는, 메모리제어부(450)는 메모리 어드레스 최상위 2bit {b11, b10}값이 {0, 1}인 어드레스로 디지트 리버스한다.
도 9c는 2048 모드에 대한 디지트 리버스의 개념도로서, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출하는 어드레스(Memory read address)에 대해 메모리제어부(450)에서 디지트 리버스한 메모리(410)의 어드레스(Internal read address)를 나타낸 것이다. 도 9c에 도시된 바와 같이, 디지트 리버스된 메모리(410)의 어드레스는 최상위 {b11}값은 항상 '0'이 된다. 이에 따라서, 메모리 어드레스(Internal read address)는 메모리(410)의 크기 2048에 대응하는 11bit의 어드레스를 갖을 수 있다.
둘째, 도 10a 내지 도 10c를 참조하여 1024 모드에 대한 디지트 리버스 과정을 설명한다.
1024개의 입력데이터가 4096개 데이터로 반복된 후, 반복된 4096개 데이터를 고속 퓨리에 변환을 수행하게 되면, 도 10a에 도시된 바와 같이 1024 데이터 사이에 3개의 '0' 데이터가 삽입된 인터폴레이션 형태를 갖는다. 한편, 4096개의 데이터를 Radix-4 방식으로 연산을 수행한 결과 메모리(410)에 재기록되는 데이터의 어드레스 구조는, 도 10b에 도시된 바와 같이 0 ~ 1023 번지에만 데이터가 존재하는 형태를 갖는다.
즉, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출한 어드레스(도 10a의 'Memory read address')에 대응하는 데이터와 이 데이터가 실제로 기록된 메모리(410)의 어드레스(도 10b의 'Internal read address')는 서로 다르게 되므로 디지트 리버스(digit-reverse)를 수행한다.
어드레스 발생부(300)에서 호출하는 어드레스(Memory read address)의 최하위 2bit {a1, a0} 값이 {0, 1}, {1, 0}, 및 {1, 1}인 경우는 도 10a에 도시된 바와 같이, 인터폴레이션에 의해 '0'이 삽입된 부분으로 디지트 리버스를 생략한다.
한편, 호출한 어드레스(Memory read address)의 최하위 2bit {a1, a0} 값이 {0, 0}인 경우를 디지트 리버스하면, 도 10b에 도시된 메모리(410) 어드레스의 최상위 2bit {b11, b10}값이 {0, 0}인 영역이 된다. 따라서, 최하위 2bit {a1 , a0} 값이 {0, 0}인 어드레스를 호출하는 경우는, 메모리제어부(450)는 메모리 어드레스(Internal read address) 최상위 2bit {b11, b10}값이 {0, 0}인 어드레스로 디지트 리버스한다.
도 10c는 1024 모드에 대한 디지트 리버스의 개념도로서, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출하는 어드레스(Memory read address)에 대해 메모리제어부(450)에서 디지트 리버스한 메모리(410)의 어드레스(Internal read address)를 나타낸 것이다. 도 10c에 도시된 바와 같이, 디지트 리버스된 메모리(410)의 어드레스는 최상위 2 bit {b11, b10}값은 항상 '0'이 된다. 이에 따라서, 메모리 어드레스(Internal read address)는 메모리(410)의 크기 2048에 대응하는 11bit의 어드레스를 갖을 수 있다.
셋째, 도 11a 내지 도 11c를 참조하여 256 모드에 대한 디지트 리버스 과정을 설명한다.
256개의 입력데이터가 4096개 데이터로 반복된 후, 반복된 4096개 데이터를 고속 퓨리에 변환을 수행하게 되면, 도 11a에 도시된 바와 같이 256 데이터 사이에 15개의 '0'데이터가 삽입된 인터폴레이션 형태를 갖는다. 한편, 4096개의 데이터를 Radix-4 방식으로 연산을 수행한 결과 메모리(410)에 재기록되는 데이터의 어드레스 구조는, 도 11b에 도시된 바와 같이 0 ~ 255 번지에만 데이터가 존재하는 형태를 갖는다.
즉, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출한 어드레스(도 11a의 'Memory read address')에 대응하는 데이터와 이 데이터가 실제로 기록된 메모리(410)의 어드레스(도 11b의 'Internal read address')는 서로 다르게 되므로 디지트 리버스(digit-reverse)를 수행한다.
어드레스 발생부(300)에서 호출한 어드레스(Memory read address)의 최하위 4bit {a3, a2, a1, a0} 값이 {0, 0, 0, 1} 부터 {1, 1, 1, 1}인 경우는 도 11a에 도시된 바와 같이, 인터폴레이션에 의해 '0'이 삽입된 부분으로 디지트 리버스를 생략한다.
한편, 호출한 어드레스(Memory read address)의 최하위 4bit {a3, a2, a1 , a0} 값이 {0, 0, 0, 0}인 경우를 디지트 리버스하면, 도 11b에 도시된 메모리(410) 어드레스(Internal read address)의 최상위 4bit {b11, b10, b9, b 8}값이 {0, 0, 0, 0}인 영역이 된다. 따라서, 최하위 4bit {a3, a2, a1, a0} 값이 {0, 0, 0, 0}인 어드레스를 호출하는 경우는, 메모리제어부(450)는 메모리 어드레스(Internal read address)의 최상위 4bit {b11, b10, b9, b8}값이 {0, 0, 0, 0}인 어드레스로 디지트 리버스한다.
도 11c는 256 모드에 대한 디지트 리버스의 개념도로서, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출하는 어드레스(Memory read address)에 대해 메모리제어부(450)에서 디지트 리버스한 메모리(410)의 어드레스(Internal read address)를 나타낸 것이다. 도 11c에 도시된 바와 같이, 디지트 리버스된 메모리(410)의 어드레스는 최상위 {b11}값은 항상 '0'이 된다. 이에 따라서, 메모리 어드레스(Internal read address)는 메모리(410)의 크기 2048에 대응하는 11bit의 어드레스를 갖을 수 있다.
네째, 도 12a 내지 도 12c를 참조하여 512 모드에 대한 디지트 리버스 과정을 설명한다.
512개의 입력데이터가 4096개 데이터로 반복된 후, 반복된 4096개 데이터를 고속 퓨리에 변환을 수행하게 되면, 도 12a에 도시된 바와 같이 512 데이터 사이에 7개의 '0' 데이터가 삽입된 인터폴레이션 형태를 갖는다. 한편, 4096개의 데이터를 Radix-4 방식으로 연산을 수행한 결과 메모리(410)에 재기록되는 데이터의 어드레스 구조는, 도 12b에 도시된 바와 같이 0 ~ 255 번지 및 512 ~ 767 번지에만 데이터가 존재하는 형태를 갖는다.
즉, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출한 어드레스(도 12a의 'Memory read address')에 대응하는 데이터와 이 데이터가 실제로 기록된 메모리(410)의 어드레스(도 12b의 'Internal read address')는 서로 다르게 되므로 디지트 리버스(digit-reverse)를 수행한다.
어드레스 발생부(300)에서 호출한 어드레스(Memory read address)의 11bit 중 {a3} 값이 {0} 및 {1}인 경우에 데이터가 존재하며, 그 이외의 어드레스에는 인터폴레이션에 의해 '0' 데이터가 삽입된 어드레스이다. 따라서, '0' 데이터가 삽입된 어드레스에 대해서는 디지트 리버스를 생략한다.
한편, 호출한 어드레스(Memory read address)의 최하위 4bit {a3, a2, a1 , a0}값 중 {a3} 값이 {0} 및 {1}인 경우를 디지트 리버스를 수행하면, 도 12b에 도시된 메모리(410) 어드레스(Internal read address)의 최상위 4bit {b11, b10, b 9, b8}값 중 {b9} 값이 {0} 및 {1}인 영역, 즉, 0 ~ 255 번지 및 514 ~ 767번지가 된다. 따라서, 최하위 4bit {a3, a2, a1, a0} 중 {a3, 0, 0, 0} 어드레스를 호출하는 경우는, 메모리제어부(450)는 메모리 어드레스(Internal read address) 최상위 4bit {b11, b10, b9, b8} 값이 {0, 0, b9, 0}인 어드레스로 디지트 리버스한다.
도 12c는 512 모드에 대한 디지트 리버스의 개념도로서, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출하는 어드레스(Memory read address)에 대해 메모리제어부(450)에서 디지트 리버스한 메모리(410)의 어드레스(Internal read address)를 나타낸 것이다. 도 12c에 도시된 바와 같이, 디지트 리버스된 메모리(410)의 어드레스는 최상위 {b11}값은 항상 '0'이 된다. 이에 따라서, 메모리 어드레스(Internal read address)는 메모리(410)의 크기 2048에 대응하는 11bit의 어드레스를 갖을 수 있다.
이상과 같은 FFT 모드에 대응하는 디지트 리버스 방식을 이용하여 2048 메모리(410)에 모드별로 기록된 데이터를 호출할 수 있게 된다.
이하에서는 도 13을 참조하여 본 발명에 따른 유럽향 디지털 오디오 방송수신기에서 FFT 모드 중 2048 모드에 대한 동작방법을 예로서 설명한다.
먼저, 2048 모드에 대응하여 2048개의 데이터가 수신되면,(S100), 고속 퓨리에 변환을 수행하기 위해 제어부(200)는 2048개의 데이터를 메모리(410)에 기록한다(S200). 이 후, 제어부(200)로부터 고속 퓨리에 변환을 수행하라는 제어신호가 어드레스 발생부(300) 및 고속 퓨리에 변환부(400)에 입력된다(S300). 이에 의해 어드레스 발생부(300)는 4096개의 어드레스를 발생하며(S400), 메모리제어부(450)는 2048개의 데이터를 4096개의 어드레스에 대응하는 4096개의 데이터로 인터폴레이션을 수행한 후 메모리(410) 및 메모리제어부(450)의 가상메모리에 기록한다(S500).
앞서 설명된 도 4의 'A'에 도시된 바와 같이, 2048개의 데이터를 두 번 반복하여 4096 어드레스 구조에 기록한다. 연산부(430)에서는 4096개의 데이터에 기초하여 Radix-4 방식을 적용하여 연산을 수행한다(S600). 즉, 도 4의 'B'에 도시된 바와 같이, 2048개의 데이터가 0 ~ 1023 번지 및 2048 ~ 3071 번지에 분포하여 '0' 데이터가 블럭화하여 1024 ~ 2047 번지 및 3072 ~ 4095 번지에 분포한다. 반복된 4096개의 데이터를 Radix-4 방식으로 연산한 결과 '0' 데이터가 블럭화하여 기록됨에 따라서 메모리(410)의 증가를 막을 수 있다. 또한, '0' 데이터는 더 이상 연산 결과에 영향을 미치지 않으므로, log4(FFT크기) 횟수만큼 반복 연산한 후에 메모리(410)에 기록되는 데이터는 도 4의 'B'에 도시된 바와 같게 된다.
Radix-4 방식의 연산이 완료되면, 제어부(200)의 제어에 의해 어드레스 발생부(300)에서 호출 어드레스(Memory read address)를 발생한다. 이때, 호출 어드레스는, 메모리(410)에 Radix-4 방식으로 연산되어 실제로 기록되는 메모리 어드레스(Internal read address)와는 서로 다르며, 이에 의해 메모리제어부(450)는 디지트 리버스(digit-reverse)를 수행한다(S700). 앞서 설명된 도 9a 및 도 9b에 도시된 바와 같이 호출 어드레스(Memory read address)와 메모리 어스레스(Internal read address)가 다르며, 이에 따라서, 도 9c에 도시된 바와 같은 방식으로 디지트 리버스를 수행한다. 따라서, 2048모드에 대응하여 2048개의 데이터가 호출되어 출력됨으로써 고속 퓨리에 변환이 완료된다. 물론, 1024, 256, 및 512 에 대해서도 동일한 동작방법에 적용된다.
이상과 같이, 본 발명의 바람직한 실시예에 따른 유럽향 디지털 오디오 방송 수신기의 고속 퓨리에 변환 장치는 다음과 같은 특성을 가지고 있다.
첫째, 출력 데이타가 인터폴레이션 형태를 갖는 고속 퓨리에 변환을 수행하기 위해서 각각의 FFT모드인 2048, 1024, 256, 및 512의 입력데이터를 4096개의 데이터로 반복한 후, 각각의 FFT모드에 동일하게 Radix-4 방식의 연산을 수행하여 고속 퓨리에 변환을 수행한다. 이에 4096개의 데이터에 대한 메모리(410) 크기의 증가를 막을 수 있게 되어, 기존의 메모리 크기를 유지할 수 있다. 따라서, 고속 퓨리에 변환 장치의 구현 및 동작 제어가 간단해 진다.
둘째, 실시예에서와 같이, 각각의 FFT모드인 2048, 1024, 256, 및 512에 대응하여 각각의 디지트 리버스 방식을 적용함으로써 디지트 리버스를 수행할 수 있게 된다. 이에 의해, 고속 퓨리에 변환 장치의 구현 및 동작제어의 간단화를 도모한다.
본 발명에 따르면, 유럽향 디지털 오디오 방송의 FFT모드 2048, 1024, 256, 및 512의 대해 동일한 구조의 고속 퓨리에 변환 장치를 가짐으로써 하드웨어적인 구현이 간단해 진다.
또한, 각각의 FFT모드에 대해 동일한 구조의 고속 퓨리에 변환 장치를 구현함에 따라서 고속 퓨리에 변환의 동작제어가 간단해 진다.
이상에서는 본 발명의 바람직한 실시예에 대해서 도시하고 설명하였으나, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
도 1은 본 발명에 따른 유럽향 디지털 오디오 방송 수신기의 개략적인 블록도,
도 2a 내지 도 2c는 도 1의 수신기에 적용되는 인터폴레이션 방법을 설명하기 위한 개념도,
도 3은 도 1의 연산부(430)에 의한 Radix-4 방식에 따른 연산과정을 설명하기 위한 개념도,
도 4는 도 1의 수신기의 FFT모드가 2048인 경우, Radix-4 연산에 따른 메모리(410)에 기록되는 데이터의 분포도,
도 5는 도 1의 수신기의 FFT모드가 1024인 경우, Radix-4 연산에 따른 메모리(410)에 기록되는 데이터의 분포도,
도 6은 도 1의 수신기의 FFT모드가 256인 경우, Radix-4 연산에 따른 메모리(410)에 기록되는 데이터의 분포도,
도 7은 도 1의 수신기의 FFT모드가 512인 경우, Radix-4 연산에 따른 메모리(410)에 기록되는 데이터의 분포도,
도 8은 4096개의 데이터를 Radix-4 연산 구조로 구현할 경우 디지트 리버스의 과정을 설명하기 위한 개념도,
도 9a 내지 도 9c는 도 1의 수신기의 FFT모드가 2048인 경우, 이에 따른 디지트 리버스의 과정을 설명하기 위한 개념도,
도 10a 내지 도 10c는 도 1의 수신기의 FFT모드가 1024인 경우, 이에 따른 디지트 리버스의 과정을 설명하기 위한 개념도,
도 11a 내지 도 11c는 도 1의 수신기의 FFT모드가 256인 경우, 이에 따른 디지트 리버스의 과정을 설명하기 위한 개념도,
도 12a 내지 도 12c는 도 1의 수신기의 FFT모드가 512인 경우, 이에 따른 디지트 리버스의 과정을 설명하기 위한 개념도, 그리고
도 13은 도 1의 본 발명에 따른 유럽향 디지털 오디오 방송 수신기의 동작방법을 설명하기 위한 흐름도이다.
* 도면의 주요부분에 대한 부호의 설명 *
100 : 수신부 200 : 제어부
300 : 어드레스 발생부 400 : 고속 퓨리에 변환(FFT)부
410 : 메모리 430 : 연산부
450 : 메모리제어부

Claims (20)

  1. 전송되는 데이터의 크기에 따라서 다양한 FFT모드를 가지는 디지털 오디오 방송 수신기에 있어서,
    소정개수의 기록어드레스 및 호출어드레스를 발생하는 어드레스 발생부;
    상기 FFT모드의 각각의 데이터를 반복하여 상기 소정개수의 데이터로 생성하고, 상기 소정개수의 데이터를 이용하여 고속 퓨리에 변환을 수행하는 고속 퓨리에 변환부; 및
    상기 고속 퓨리에 변환부의 동작에 대응하여 상기 기록어드레스 및 상기 호출어드레스를 발생하도록 상기 어드레스 발생부를 제어하는 제어부;를 포함하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  2. 제 1항에 있어서,
    상기 소정개수는 4096개 이며,
    상기 고속 퓨리에 변환부는 상기 4096개 데이터를 이용하여 고속 퓨리에 변환을 수행하는 것을 특징으로 하는 유럽향 디지털 오디오 방송 수신기.
  3. 제 1항에 있어서,
    상기 고속 퓨리에 변환부는,
    상기 FFT모드 각각의 데이터를 반복하여 상기 4096개의 데이터로 생성하는 메모리제어부;
    2048개의 데이터를 기록할 수 있는 크기를 가지는 메모리; 및
    상기 4096개의 데이터를 이용하여 Radix-4 방식으로 연산을 수행하는 연산부;를 포함하며,
    상기 호출어드레스가 발생하는 경우, 상기 메모리제어부는 상기 메모리의 어드레스를 상기 호출어드레스에 대응하여 디지트 리버스를 수행하는 것을 특징으로 하는 유럽향 디지털 오디오 방송 수신기.
  4. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 연산부에서 상기 Radix-4 방식으로 연산을 수행할 수 있도록 상기 메모리에 기록되는 상기 2048개 데이터 이외의 데이터를 기록하는 가상메모리를 가지는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  5. 제 4항에 있어서,
    상기 연산부에서 상기 Radix-4 방식으로 연산을 수행하며,
    이에 따라, 상기 가상메모리에는 상기 FFT모드에 대응하여 '0' 데이터가 블록화되어 기록되는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  6. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 메모리에 상기 Radix-4 방식에 의해 연산되어 기록된 데이터를 상기 FFT모드에 대응하여 디지트 리버스를 수행하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  7. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 FFT모드가 2048인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {a1,a3,a2,a5,a4,a7,a6,a 9,a8,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  8. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 FFT모드가 1024인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,a3,a2,a5,a4,a7,a6,a9 ,a8,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  9. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 FFT모드가 256인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,0,0,a5,a4,a7,a6,a9,a8,a 11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  10. 제 3항에 있어서,
    상기 메모리제어부는,
    상기 FFT모드가 512인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,a3,0,a5,a4,a7,a6,a9,a8 ,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기.
  11. 전송되는 데이터의 크기에 따라서 다양한 FFT모드를 가지는 디지털 오디오 방송 수신기의 동작방법에 있어서,
    소정개수의 기록어드레스를 발생하는 단계;
    상기 소정개수의 기록어드레스에 대응하여 상기 FFT모드의 각각의 데이터를 반복하여 소정개수의 데이터로 생성하고, 상기 소정개의 데이터를 이용하여 고속 퓨리에 변환을 수행하는 고속 퓨리에 변환단계; 및
    상기 고속 퓨리에 변환단계의 동작이 완료되면 호출어드레스를 발생하는 단계;를 포함하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  12. 제 11항에 있어서,
    상기 소정개수는 4096개 이며,
    상기 고속 퓨리에 변환단계는 상기 4096개 데이터를 이용하여 고속 퓨리에 변환을 수행하는 것을 특징으로 하는 유럽향 디지털 오디오 방송 수신기의 동작방법.
  13. 제 11항에 있어서,
    상기 고속 퓨리에 변환단계는,
    상기 FFT모드 각각의 데이터를 반복하여 상기 4096개의 데이터를 생성하는 단계;
    상기 4096개의 데이터를 이용하여 Radix-4 방식으로 연산하고, 메모리의 어드레스에 대응하여 상기 메모리에 기록하는 연산단계; 및
    상기 호출어드레스가 발생하는 경우, 상기 호출어드레스에 대응하는 상기 메모리의 어드레스로 디지트 리버스를 수행하는 디지트리버스단계;를 포함하는 것을 특징으로 하는 유럽향 디지털 오디오 방송 수신기의 동작방법.
  14. 제 13항에 있어서,
    상기 연산단계에서 반복된 상기 4096개의 데이터를 상기 Radix-4 방식으로 연산하기 위해 상기 메모리 및 가상메모리에 기록하는 단계;를 더 포함하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  15. 제 14항에 있어서,
    상기 연산단계에서는 상기 Radix-4 방식으로 연산을 수행하며,
    이에 따라, 상기 가상메모리에 상기 FFT모드에 대응하여 '0' 데이터가 블록화되어 기록되는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  16. 제 13항에 있어서,
    상기 디지트리버스단계는,
    상기 메모리에 상기 Radix-4 방식에 의해 연산되어 기록된 데이터를 상기 FFT모드에 대응하여 디지트 리버스를 수행하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  17. 제 13항에 있어서,
    상기 디지트리버스단계는,
    상기 FFT모드가 2048인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {a1,a3,a2,a5,a4,a7,a6,a 9,a8,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  18. 제 13항에 있어서,
    상기 디지트리버스단계는,
    상기 FFT모드가 1024인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,a3,a2,a5,a4,a7,a6,a9,a8,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  19. 제 13항에 있어서,
    상기 디지트리버스단계는,
    상기 FFT모드가 256인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,0,0,a5,a4,a7,a6,a9,a8,a 11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
  20. 제 13항에 있어서,
    상기 디지트리버스단계는,
    상기 FFT모드가 512인 경우,
    상기 호출어드레스의 상위비트부터 하위비트의 배열이 다음과 같을 경우,
    {a11,a10,a9,a8,a7,a6,a5 ,a4,a3,a2,a1,a0}
    이에 대응하여 상기 메모리 어드레스의 상위비트부터 하위비트의 배열을
    {0,a3,0,a5,a4,a7,a6,a9,a8 ,a11,a10}으로 디지트 리버스하는 것을 특징으로 하는 유럽향 디지털 오디오 방송수신기의 동작방법.
KR10-2002-0079293A 2002-12-12 2002-12-12 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법 KR100492124B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR10-2002-0079293A KR100492124B1 (ko) 2002-12-12 2002-12-12 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법
US10/626,740 US7486609B2 (en) 2002-12-12 2003-07-25 European digital audio broadcast receiver having a simply implementable fast fourier transform processor and an operation method therefor
EP03027875A EP1429255A2 (en) 2002-12-12 2003-12-04 European digital audio broadcast receiver having a simply implementable FFT processor
CNB2003101203151A CN100521586C (zh) 2002-12-12 2003-12-05 含有fft处理器的数字音频广播接收器及其操作方法
JP2003414137A JP3878601B2 (ja) 2002-12-12 2003-12-12 デジタルオーディオ放送受信装置及びその動作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0079293A KR100492124B1 (ko) 2002-12-12 2002-12-12 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법

Publications (2)

Publication Number Publication Date
KR20040051371A KR20040051371A (ko) 2004-06-18
KR100492124B1 true KR100492124B1 (ko) 2005-06-02

Family

ID=32322380

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0079293A KR100492124B1 (ko) 2002-12-12 2002-12-12 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법

Country Status (5)

Country Link
US (1) US7486609B2 (ko)
EP (1) EP1429255A2 (ko)
JP (1) JP3878601B2 (ko)
KR (1) KR100492124B1 (ko)
CN (1) CN100521586C (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008077422A1 (en) * 2006-12-22 2008-07-03 Micronas Gmbh PROCESSING DEVICE, METHOD, AND SYSTEM USING 2n POINT FFT TO COMPUTE NON-2n POINT DFT
CN102110077B (zh) * 2009-12-25 2013-08-14 华东光电集成器件研究所 逆位序地址产生器
US9313069B2 (en) * 2014-07-22 2016-04-12 Zenith Electronics Llc OFDM processing system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11110370A (ja) * 1997-01-22 1999-04-23 Matsushita Electric Ind Co Ltd 高速フーリエ変換装置および方法、可変ビットリバース回路、逆高速フーリエ変換装置および方法、並びにofdm受信および送信装置
KR20010091558A (ko) * 2000-03-16 2001-10-23 윤종용 디지털 오디오 방송 수신기에서의 모드 자동 검출 장치 및방법
KR20020080789A (ko) * 2001-04-17 2002-10-26 삼성전자 주식회사 패스트퓨리에변환 장치
KR20040046478A (ko) * 2002-11-27 2004-06-05 한국전자통신연구원 메모리의 크기를 감소시킬 수 있는 고속 퓨리에 변환프로세서

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4393457A (en) * 1981-03-26 1983-07-12 Advanced Micro Devices, Inc. Method and apparatus for sequencing addresses of a fast Fourier transform array
US4959776A (en) * 1987-12-21 1990-09-25 Raytheon Company Method and apparatus for addressing a memory by array transformations
JPH0431965A (ja) * 1990-05-28 1992-02-04 Nec Corp 数値演算装置
US5491652A (en) * 1994-10-21 1996-02-13 United Microelectronics Corporation Fast Fourier transform address generator
ES2146245T3 (es) * 1994-11-07 2000-08-01 Cit Alcatel Procesador dedicado a la transformada rapida de fourier.
EP1005203A1 (en) 1998-11-24 2000-05-31 STMicroelectronics SA Multistandard DMT DSL transmission system
US6907439B1 (en) * 2002-02-20 2005-06-14 Lattice Semiconductor Corporation FFT address generation method and apparatus
US6976047B1 (en) * 2002-03-28 2005-12-13 Lattice Semiconductor Corporation Skipped carry incrementer for FFT address generation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11110370A (ja) * 1997-01-22 1999-04-23 Matsushita Electric Ind Co Ltd 高速フーリエ変換装置および方法、可変ビットリバース回路、逆高速フーリエ変換装置および方法、並びにofdm受信および送信装置
KR20010091558A (ko) * 2000-03-16 2001-10-23 윤종용 디지털 오디오 방송 수신기에서의 모드 자동 검출 장치 및방법
KR20020080789A (ko) * 2001-04-17 2002-10-26 삼성전자 주식회사 패스트퓨리에변환 장치
KR20040046478A (ko) * 2002-11-27 2004-06-05 한국전자통신연구원 메모리의 크기를 감소시킬 수 있는 고속 퓨리에 변환프로세서

Also Published As

Publication number Publication date
CN1520071A (zh) 2004-08-11
CN100521586C (zh) 2009-07-29
JP2004194341A (ja) 2004-07-08
JP3878601B2 (ja) 2007-02-07
KR20040051371A (ko) 2004-06-18
EP1429255A2 (en) 2004-06-16
US20040160894A1 (en) 2004-08-19
US7486609B2 (en) 2009-02-03

Similar Documents

Publication Publication Date Title
EP0855657B1 (en) Fast fourier transforming apparatus and method
JP4022546B2 (ja) 高速フーリエ変換を用いた混合−基数方式の変調装置
US6996597B2 (en) Increasing precision in multi-stage processing of digital signals
KR19980042631A (ko) 듀얼 모드 오디오 디코더의 재현 방법 및 필터
KR100628303B1 (ko) 가변 포인트 ifft/fft 방법 및 장치
KR100618889B1 (ko) 메모리 사이즈를 감소시킬 수 있는 고속 푸리에 변환 프로세서
EP0132988B1 (en) Digital synthesis technique for pulses having predetermined time and frequency domain characteristics
KR100492124B1 (ko) 구현이 간단한 고속 퓨리에 변환 장치를 가지는 유럽향디지털 오디오 방송 수신기 및 그의 동작방법
JP2763982B2 (ja) 送信信号処理方法
JP4160564B2 (ja) 処理速度の向上した高速フーリエ変換装置およびその処理方法
US4328555A (en) Apparatus for computing two-dimensional discrete Fourier transforms
US6263356B1 (en) Fast fourier transform calculating apparatus and fast fourier transform calculating method
US20040258132A1 (en) Apparatus for generating an additive white Gaussian noise
JPH09510802A (ja) マスク限界を決定するための方法及び装置
JPH09148937A (ja) 符号化処理方法、復号化処理方法、符号化処理装置および復号化処理装置
US20020190886A1 (en) New method and a system of acquiring local signal behavior parameters for representing and processing a signal
JP2022045086A (ja) 残響を求めるためのシステム
WO2002015406A1 (en) Acquiring local signal behavior parameters
Lopez et al. PC Based Real-Time Multichannel Convolver for Ambiophonic Reproduction
JP3541526B2 (ja) 周波数分割多重信号生成方法及び復号方法
KR100275527B1 (ko) 워드 난수 발생 장치 및 그 방법
JPH10224426A (ja) データ処理装置、データ通信方法
JPH1049516A (ja) 演算方法および演算装置
JP3722821B2 (ja) 演算方法
CA2140959C (en) Digital audio processing in a modified bitblt controller

Legal Events

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

Payment date: 20130422

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140424

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee