KR100628303B1 - 가변 포인트 ifft/fft 방법 및 장치 - Google Patents

가변 포인트 ifft/fft 방법 및 장치 Download PDF

Info

Publication number
KR100628303B1
KR100628303B1 KR1020040070238A KR20040070238A KR100628303B1 KR 100628303 B1 KR100628303 B1 KR 100628303B1 KR 1020040070238 A KR1020040070238 A KR 1020040070238A KR 20040070238 A KR20040070238 A KR 20040070238A KR 100628303 B1 KR100628303 B1 KR 100628303B1
Authority
KR
South Korea
Prior art keywords
ifft
fft
point
data
input data
Prior art date
Application number
KR1020040070238A
Other languages
English (en)
Other versions
KR20060021479A (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 KR1020040070238A priority Critical patent/KR100628303B1/ko
Priority to JP2007529657A priority patent/JP4499156B2/ja
Priority to PCT/KR2004/003304 priority patent/WO2006025631A1/en
Publication of KR20060021479A publication Critical patent/KR20060021479A/ko
Application granted granted Critical
Publication of KR100628303B1 publication Critical patent/KR100628303B1/ko
Priority to US11/681,201 priority patent/US7626923B2/en

Links

Images

Classifications

    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2626Arrangements specific to the transmitter only
    • H04L27/2627Modulators
    • H04L27/2628Inverse Fourier transform modulators, e.g. inverse fast Fourier transform [IFFT] or inverse discrete Fourier transform [IDFT] modulators
    • 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
    • H04L27/2649Demodulators
    • H04L27/265Fourier transform demodulators, e.g. fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators
    • 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
    • H04L27/2649Demodulators
    • H04L27/265Fourier transform demodulators, e.g. fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators
    • H04L27/2651Modification of fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators for performance improvement

Abstract

본 발명은 가변 포인트 IFFT/FFT 방법 및 장치에 관한 것으로, 입력 데이터의 포인트에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 보간 데이터를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지도록 하는 보간 데이터 신호를 생성하는 IFFT 보간부; 상기 보간 데이터 신호를 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 IFFT 연산부; 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 신호중에서 일부만을 선택하여 출력하는 IFFT 모드 선택부; 및 상기 IFFT 동작모드 제어신호를 상기 IFFT 보간부와 상기 IFFT 모드 선택부에 출력하는 제어부로 구성된다. 따라서, 가변적인 크기의 IFFT/FFT의 계산을 하드웨어적으로 간단히 제공할 수 있다.

Description

가변 포인트 IFFT/FFT 방법 및 장치{Method and apparatus of the variable points IFFT/FFT}
도 1은 본 발명의 일실시예에 따른 다양한 크기의 가변 IFFT를 수행할 수 있는 가변 포인트 IFFT 하드웨어 블럭도이다.
도 2는 도 1의 IFFT 보간부(100)를 상세히 나타낸 블럭도이다.
도 3은 도 1의 IFFT 모드 선택부(140)를 상세히 나타낸 블럭도이다.
도 4는 본 발명의 다른 일실시예에 따른 다양한 크기의 가변 FFT를 수행할 수 있는 가변 포인트 FFT 하드웨어 블럭도이다.
도 5는 도 4의 FFT 보간부(400)를 상세히 나타낸 블럭도이다.
도 6은 도 4의 FFT 모드 선택부(440)을 상세히 나타낸 블럭도이다.
도 7은 본 발명의 다른 일실시예에 따른 8-4포인트 가변 FFT 하드웨어의 블럭도이다.
도 8은 본 발명의 일실시예에 따른 다양한 크기의 가변 IFFT를 수행할 수 있는 가변 포인트 IFFT 하드웨어를 구현하는 흐름도이다.
도 9는 본 발명의 다른 일실시예에 따른 다양한 크기의 가변 FFT를 수행할 수 있는 가변 포인트 FFT 하드웨어를 구현하는 흐름도이다.
본 발명은 가변 포인트 IFFT/FFT 방법 및 장치에 관한 것으로, 더욱 상세하게는 1개의 OFDM 모뎀 장치 내에서 여러 IEEE 802.(11, 16e, 등) 계열의 다양한 크기의 IFFT/FFT 계산을 하드웨어적으로 수행할 수 있도록 하는 가변 포인트 IFFT/FFT 방법 및 장치에 관한 것이다.
무선 이동 통신은 고속의 이동성과 고속의 데이터 전송 능력을 요구하고 있다. 이러한 요구사항을 만족하기 위하여 계층 1(Physical Layer)에서 사용하는 모뎀 방식은 OFDM(Orthogonal Frequency Division Multiplex) 방식을 사용한다. OFDM에서 데이터를 송신하고 수신하는데 있어서 IFFT(Inverse Fast Fourier Transform) /FFT(Fast Fourier Transform) 장치가 필수적으로 요구된다.
IEEE 802.(11a, 16e, 등) 계열에서는 변조 규격으로 OFDM 방식을 채택하고 있으며 다양한 IFFT 크기를 정의하고 있다. 앞으로 상용화되는 고속 무선 통신 방식에서 모뎀은 주로 IEEE 802.(11a, 16e, 등) 계열이 사용될 것이며, 계층 1의 접속 방식에 구애받지 않는 가변적일 것을 요구하고 있다. 따라서 한 개의 모뎀에서 여러 가지 IEEE 802.(11a, 16e, 등) 계열 변조 및 복조 기능을 만족시키려면 다양한 크기의 IFFT(Inverse Fast Fourier Transform)/FFT(Fast Fourier Transform)를 수용할 수 있는 가변 포인트 IFFT/FFT 구조여야 한다. 본 발명은 OFDM 기술 분야에 속하며 모뎀 장치의 접속 규격이 가변적인 점에서 SDR (Software Defined Radio) 기술에 속한다고 볼 수도 있다.
종래의 기술은 가변적인 모뎀 구성을 위하여 고속의 DSP 프로세서를 사용해서 모뎀 기능을 소프트웨어적으로 처리해야만 하였다. 그러나 DSP 칩을 이용하여 소프트웨어적으로 처리할 경우 IFFT/FFT 크기가 커질수록 메모리 액세스 시간 소비로 인하여 실시간 구현이 어렵다는 단점이 있다.
본 발명이 이루고자 하는 기술적인 과제는 가변적으로 선택되는 모뎀 방식에 따라서 IFFT/FFT의 계산 크기가 64 포인트, 1024 포인트 또는 2048 포인트 등으로 달라지는데 여러 가지 가변적인 크기의 IFFT/FFT의 계산을 하드웨어적으로 간단히 구현하고자 하는 것이다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 가변 포인트 IFFT 장치는, 입력 데이터의 포인트에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 보간 데이터를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지도록 하는 보간 데이터 신호를 생성하는 IFFT 보간부; 상기 보간 데이터 신호를 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 IFFT 연산부; 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 신호중에서 일부만을 선택하여 출력하는 IFFT 모드 선택부; 및 상기 IFFT 동작모드 제어신호를 상기 IFFT 보간부와 상기 IFFT 모드 선택부에 출력하는 제어부를 포함하는 것을 특징으로 가진다.
또한, 상기 기술적 과제를 이루기 위한 본 발명에 의한 가변 포인트 FFT 장치는, 입력 데이터 각각의 포인트 사이에 FFT 동작모드 제어신호에 따라 가변되는 주기를 가지고 보간 데이터를 삽입하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 FFT 보간부; 상기 보간 데이터 신호를 입력받아 고속 퓨리에 변환(Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 FFT 연산부; 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 FFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 FFT 모드 선택부; 및 상기 FFT 동작모드 제어신호를 상기 FFT 보간부와 상기 FFT 모드 선택부에 출력하는 제어부를 포함하는 것을 특징으로 가진다.
상기 기술적 과제를 이루기 위한 본 발명에 의한 가변 포인트 IFFT 방법은, (a) 입력 데이터의 포인트를 나누고 상기 나누어진 입력 데이터의 중간 영역에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 보간 데이터를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 IFFT 제로 삽입단계; (b) 상기 (a)단계로부터 상기 보간 데이터 신호 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 IFFT 연산단계; 및 (c) 상기 (b)단계로부터 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 IFFT 모드 선택단계를 포함하는 것을 특징으로 가진다.
또한, 상기 기술적 과제를 이루기 위한 본 발명에 의한 가변 포인트 FFT 방법은, (a) 입력 데이터 각각의 포인트 사이에 FFT 동작모드 제어신호에 따라 가변되는 주기를 가지고 보간 데이터를 삽입하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 FFT 보간단계; (b) 상기 (a)단계에서 보간 데이터 신호를 입력받아 고속 퓨리에 변환(Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 FFT 연산단계; 및 (c) 상기 (b)단계에서 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 FFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 FFT 모드 선택단계를 포함하는 것을 특징으로 가진다.
이하에서, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.
도 1은 본 발명의 일실시예에 따른 다양한 크기의 가변 IFFT를 수행할 수 있는 가변 포인트 IFFT 하드웨어 블럭도이다. 도 2는 도 1의 IFFT 보간부(100)를 상세히 나타낸 블럭도이다. 도 3은 도 1의 IFFT 모드 선택부(140)를 상세히 나타낸 블럭도이다.
여기에서, 가변 포인트 IFFT 하드웨어는 IFFT 보간부(100), IFFT 연산부(120) 및 IFFT 모드 선택부(140)를 포함하여 구성된다.
도 1을 참조하면, 64 포인트, 128 포인트 및 256 포인트 IFFT를 수행할 수 있는 가변 포인트 IFFT 하드웨어 블럭도 구조를 나타내는 것이다. IFFT 보간부(100)와 IFFT 모드 선택부(140)는 동작모드 제어신호(S1)(S0)를 입력받아 해당하는 IFFT 동작 모드를 수행하게 된다.
동작모드 제어신호(S1)(S0)에 대한 가변 포인트 IFFT의 동작모드를 살펴보면 다음 표 1과 같다.
동작모드 제어신호 (S1, S0) IFFT / FFT 동작모드
0 0 64 포인트
0 1 128 포인트
1 0 256 포인트
1 1 reserved
IFFT 보간부(IFFT interpolator)(100)는 IFFT 동작모드에 따라서 IFFT 하드웨어에 입력되는 입력 데이터의 중간 영역에 보간 데이터(바람직하게는, 제로('0'))를 삽입하는 역할을 수행한다. IFFT 보간부(100)의 보다 자세한 내부구성과 동작에 대하여는 도 2를 통하여 설명하기로 한다.
도 2를 참조하면, 동작모드 제어신호(S1)(S0)는
Figure 112004039971120-pat00001
디코더(260)에 입력되어 동작 활성화 신호를 생성하게 된다.
Figure 112004039971120-pat00002
디코더(260)에서 출력되는 동작 활성화 신호는 표 1에서 보는 바와 같이 4가지의 경우를 들 수 있다.
동작모드 제어신호(S1)(S0)가 '00'인 경우, 즉 64 포인트 IFFT 동작모드인 경우에는
Figure 112004039971120-pat00003
디코더(260)는 1:4 보간기(1:4 interpolator)(200)에 동작 활성화 신호를 출력하게 된다.
그리고, 동작모드 제어신호(S1)(S0)가 '01'인 경우, 즉 128 포인트 IFFT 동 작모드인 경우에는
Figure 112004039971120-pat00004
디코더(260)는 1:2 보간기(1:2 interpolator)(220)에 동작 활성화 신호를 출력하게 된다.
또한, 동작모드 제어신호(S1)(S0)가 '10'인 경우, 즉 256 포인트 IFFT 동작모드인 경우에는
Figure 112004039971120-pat00005
디코더(260)는 버퍼(1:1 buffer)(240)에 동작 활성화 신호를 출력하게 된다.
나머지, 표 1에서 동작모드 제어신호(S1)(S0)가 '11'인 경우에는 예비(reserved)로 되어있다.
상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '00'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 64 포인트 IFFT 동작모드인 경우, 즉 입력 데이터(input data)가 64 포인트인 경우로써
Figure 112004039971120-pat00006
디코더(260)는 1:4 보간기(1:4 interpolator)(200)에 동작 활성화 신호를 출력하게 된다.
1:4 보간기(1:4 interpolator)(200)에서는 64 포인트 입력 데이터(input data)를 전송 받아서 0 포인트에서 31 포인트까지 그리고 224 포인트에서 255 포인트까지의 범위 영역에는 전송하고자 하는 입력 데이터를 입력하고, 나머지 32 포인트에서 233포인트까지의 범위 영역에는 모두 제로(zero)를 입력하게 된다. 1:4 보간기(1:4 interpolator)(200)에서는 192개의 제로('0') 값을 삽입하여 IFFT 보간부(100)에서 출력되는 출력 데이터를 256 포인트로 일정하게 유지되도록 한다.
그리고, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '01'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 128 포인트 IFFT 동작모드인 경우, 즉 입력 데이터(input data)가 128 포인트인 경우로써
Figure 112004039971120-pat00007
디코더(260)는 1:2 보간기(1:2 interpolator)(220)에 동작 활성화 신호를 출력하게 된다.
1:2 보간기(1:2 interpolator)(220)에서는 128 포인트 입력 데이터(input data)를 전송 받아서 0 포인트에서 63 포인트까지 그리고 192 포인트에서 255 포인트까지의 범위 영역에는 전송하고자 하는 입력 데이터를 입력하고, 나머지 64 포인트에서 191포인트까지의 범위 영역에는 모두 제로(zero)를 입력하게 된다. 1:2 보간기(1:2 interpolator)(220)에서는 128개의 제로('0') 값을 삽입하여 IFFT 보간부(100)에서 출력되는 출력 데이터를 256 포인트로 일정하게 유지되도록 한다.
또한, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '10'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 256 포인트 IFFT 동작모드인 경우, 즉 입력 데이터(input data)가 256 포인트인 경우로써
Figure 112004039971120-pat00008
디코더(260)는 버퍼(1:1 buffer)(240)에 동작 활성화 신호를 출력하게 된다.
버퍼(1:1 buffer)(240)에서는 256 포인트 입력 데이터(input data)를 전송 받아서 0 포인트에서 255포인트까지의 범위 영역에 전송하고자 하는 입력 데이터를 입력하게 된다. 그럼으로써, IFFT 보간부(100)에서 출력되는 출력 데이터는 256 포인트로 일정하게 유지되게 된다.
IFFT 연산부(120)는 IFFT 보간부(100)에 의하여 출력되는 출력 데이터를 입 력받아, 이를 통하여 Inverse Fast Fourier Transform을 수행하게 된다.
여기에서, 64 포인트 IFFT 동작모드인 경우에는 IFFT 보간부(100)에서 입력 데이터의 중간 영역에 삽입된 제로('0') 값에 의하여 4배의 오버 샘플링이 수행되게 된다. 256 포인트 IFFT 연산에서 중간 포인트 영역(32~223)에 제로('0')를 삽입한 후에 IFFT 연산부(120)에서 IFFT 연산을 수행하게 되면 그 연산 결과는 256 포인트 연산 데이터가 나오게 된다. 하지만 실제 독립적인 입력 데이터는 64개밖에 없기 때문에 256 포인트 IFFT 연산 결과에서 독립적인 출력은 64개가 된다. 이와 같은 64개의 독립적인 출력이 0, 4, 8, 12, 16, ... 등의 이산적인 포인트에 나타난다. 디지털 신호 처리 이론에 따라서 나머지 1포인트에서 3포인트, 5포인트에서 7포인트, 9포인트에서 11포인트,... 등에 존재하는 192개의 출력 데이터는 IFFT 연산 시에 64개의 독립적 값들로부터 얻어진 종속적인 데이터들이다. 이와 같이 종속적인 192개의 데이터는 1포인트에서 3포인트, 5포인트에서 7포인트, 9포인트에서 11포인트,...사이의 데이터를 마치 오버 샘플링한 것처럼 0, 4, 8, 12, 16,... 포인트 사이사이를 보간 하게된다. 결과적으로 0을 1:4 비율로 삽입한 IFFT 연산 결과는 원래 출력의 4배의 오버 샘플링이 발생하는 결과가 나타나게 된다.
또한, 128 포인트 IFFT 동작모드인 경우에는 IFFT 보간부(100)에서 입력 데이터의 중간 영역에 삽입된 제로('0') 값에 의하여 2배의 오버 샘플링이 수행되게 된다. 이와 같이 IFFT 연산부(120)에서 연산되어 오버 샘플링된 IFFT 연산 데이터를 통하여 정상적인 계산 결과를 얻기 위해서는 IFFT 연산 데이터 중에서 해당하는 소정 데이터를 선택하기 위한 IFFT 모드 선택부(140)가 필요하게 된다. 즉, IFFT 연산부(120)에서 수행되어 생성된 IFFT 연산 데이터는 IFFT 모드 선택부(IFFT mode selector)(140)에 입력되게 되는데, IFFT 모드 선택부(140)의 보다 자세한 내부구성과 동작에 대하여는 도 3을 통하여 설명하기로 한다.
도 3을 참조하면, IFFT 모드 선택부(140)는 IFFT 연산부(120)를 통하여 입력되는 256 포인트로 이루어진 IFFT 연산 데이터를 입력받는다.
도 3을 참조하면, 동작모드 제어신호(S1)(S0)는
Figure 112004039971120-pat00009
디코더(360)에 입력되어 동작 활성화 신호를 생성하게 된다.
Figure 112004039971120-pat00010
디코더(360)에서 출력되는 동작 활성화 신호는 표 1에서 보는 바와 같이 4가지의 경우를 들 수 있다.
동작모드 제어신호(S1)(S0)가 '00'인 경우, 즉 64 포인트 IFFT 동작모드인 경우에는
Figure 112004039971120-pat00011
디코더(360)는 4:1 간축기(4:1 decimator)(300)에 동작 활성화 신호를 출력하게 된다.
그리고, 동작모드 제어신호(S1)(S0)가 '01'인 경우, 즉 128 포인트 IFFT 동작모드인 경우에는
Figure 112004039971120-pat00012
디코더(360)는 2:1 간축기(2:1 decimator)(320)에 동작 활성화 신호를 출력하게 된다.
또한, 동작모드 제어신호(S1)(S0)가 '10'인 경우, 즉 256 포인트 IFFT 동작모드인 경우에는
Figure 112004039971120-pat00013
디코더(360)는 버퍼(1:1 buffer)(340)에 동작 활성화 신호를 출력하게 된다.
나머지, 표 1에서 동작모드 제어신호(S1)(S0)가 '11'인 경우에는 예비 (reserved)로 되어있다.
상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '00'이 입력되는 경우의 IFFT 모드 선택부(140)의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 64 포인트 IFFT 동작모드인 경우로써
Figure 112004039971120-pat00014
디코더(360)는 4:1 간축기(300)에 동작 활성화 신호를 출력하게 된다.
4:1 간축기(300)에서는 IFFT 연산 데이터에서 4개의 데이터 중 1개의 데이터를 선택하여 출력하도록 한다. 4:1 간축기(300)에서는 IFFT 연산 데이터중 4개의 데이터 중에서 1개의 데이터를 선택하여 원래의 입력 데이터(input data)의 64 포인트와 일치하도록 64 포인트의 출력 데이터(output data)를 생성하게 되는 것이다. 또한, 4:1 간축기(300)에서는 256 포인트 IFFT 구조에서 64 포인트 IFFT의 출력을 보상하여 주기 위하여 256/64 즉, 4배만큼의 스케일링(scaling)값을 곱하여 준다. 4배만큼의 스케일링값을 곱하여 주는 이유는 256포인트 기반의 IFFT의 결과는 1/256이 곱해진 결과이나 원하는 IFFT의 포인트 수는 64이기 때문에 결과값은 1/64가 곱해진 결과가 나와야 하기 때문이다. 즉, 4배만큼 곱해서 1/256이 1/64가 되도록 만들어 줘야 되기 때문에 4의 스케일링(scaling)값을 곱해준다.
그리고, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '01'이 입력되는 경우의 IFFT 모드 선택부(140)의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 128 포인트 IFFT 동작모드인 경우로써
Figure 112004039971120-pat00015
디코더(360)는 2:1 간축기(320)에 동작 활성화 신호를 출력하게 된다.
2:1 간축기(320)에서는 IFFT 연산 데이터에서 2개의 데이터 중 1개의 데이터를 선택하여 출력하도록 한다. 2:1 간축기(320)에서는 IFFT 연산 데이터중 2개의 데이터 중에서 1개의 데이터를 선택하여 원래의 입력 데이터(input data)의 128 포인트와 일치하도록 128 포인트의 출력 데이터(output data)를 생성하게 되는 것이다. 또한, 2:1 간축기(320)에서는 256 포인트 IFFT 구조에서 128 포인트 IFFT의 출력을 보상하여 주기 위하여 256/128 즉, 2배만큼의 스케일링(scaling)값을 곱하여 준다.
또한, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '10'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 256 포인트 IFFT 동작모드인 경우, 즉 입력 데이터(input data)가 256 포인트인 경우로써
Figure 112004039971120-pat00016
디코더(360)는 버퍼(1:1 buffer)(340)에 동작 활성화 신호를 출력하게 된다.
버퍼(1:1 buffer)(340)에서는 256 포인트 IFFT 연산 데이터를 그대로 출력하게 된다.
도 4는 본 발명의 다른 일실시예에 따른 다양한 크기의 가변 FFT를 수행할 수 있는 가변 포인트 FFT 하드웨어 블럭도이다. 도 5는 도 4의 FFT 보간부(400)를 상세히 나타낸 블럭도이다. 도 6은 도 4의 FFT 모드 선택부(440)을 상세히 나타낸 블럭도이다. 도 4에서는 64 포인트, 128 포인트 및 256 포인트 FFT를 수행할 수 있는 구조의 예를 보여주고 있다.
여기에서, 가변 포인트 FFT 하드웨어는 FFT 보간부(400), FFT 연산부(420) 및 FFT 모드 선택부(440)를 포함하여 구성된다.
도 4를 참조하면, 64 포인트, 128 포인트 및 256 포인트 FFT를 수행할 수 있는 가변 포인트 FFT 하드웨어 블럭도 구조를 나타내는 것이다. FFT 보간부(400)와 FFT 모드 선택부(440)는 동작모드 제어신호(S1)(S0)를 입력받아 해당하는 IFFT 동작 모드를 수행하게 된다.
동작모드 제어신호(S1)(S0)에 대한 가변 포인트 FFT의 동작모드는 상기에서 살펴본 표 1을 참조하기로 한다.
FFT 보간부(FFT interpolator)(400)는 FFT 하드웨어에 입력되는 입력 데이터중간 중간에 보간 데이터(바람직하게는, 제로('0'))를 삽입하여 256 개의 출력 데이터를 생성하는 역할을 수행한다. FFT 보간부(400)의 보다 자세한 내부구성과 동작에 대하여는 도 5를 통하여 설명하기로 한다.
FFT 보간부(400)의 구체적인 동작에 대한 수학식을 살펴보면 다음과 같다.
Figure 112004039971120-pat00017
Figure 112004039971120-pat00018
여기서,
Figure 112004039971120-pat00019
은 FFT 보간부(400)의 출력을 나타내며
Figure 112004039971120-pat00020
은 FFT 보간부(400)의 입력을 나타낸다.
도 5를 참조하면, 동작모드 제어신호(S1)(S0)는
Figure 112004039971120-pat00021
디코더(560)에 입력되어 동작 활성화 신호를 생성하게 된다.
Figure 112004039971120-pat00022
디코더(560)에서 출력되는 동작 활성화 신호는 표 1에서 보는 바와 같이 4가지의 경우를 들 수 있다.
동작모드 제어신호(S1)(S0)가 '00'인 경우, 즉 64 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00023
디코더(560)는 1:4 보간기(1:4 interpolator)(500)에 동작 활성화 신호를 출력하게 된다.
그리고, 동작모드 제어신호(S1)(S0)가 '01'인 경우, 즉 128 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00024
디코더(560)는 1:2 보간기(1:2 interpolator)(520)에 동작 활성화 신호를 출력하게 된다.
또한, 동작모드 제어신호(S1)(S0)가 '10'인 경우, 즉 256 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00025
디코더(560)는 버퍼(1:1 buffer)(540)에 동작 활성화 신호를 출력하게 된다.
나머지, 표 1에서 동작모드 제어신호(S1)(S0)가 '11'인 경우에는 예비(reserved)로 되어있다.
상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '00'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 64 포인트 FFT 동작모드인 경우, 즉 입력 데이터(input data)가 64 포인트인 경우로써
Figure 112004039971120-pat00026
디코더 (560)는 1:4 보간기(500)에 동작 활성화 신호를 출력하게 된다.
1:4 보간기(500)에서는 64 포인트 입력 데이터(input data)를 전송 받아서 입력 데이터의 중간 중간에 제로('0')를 삽입하여 보간하게 된다. 여기에서는, 입력 데이터의 중간 중간에 3개씩의 제로('0')를 삽입하여, 전체적으로는 192개의 제로('0') 값을 삽입하여 FFT 보간부(400)에서 출력되는 출력 데이터를 256 포인트로 일정하게 유지되도록 한다.
그리고, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '01'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 128 포인트 FFT 동작모드인 경우, 즉 입력 데이터(input data)가 128 포인트인 경우로써
Figure 112004039971120-pat00027
디코더(560)는 1:2 보간기(520)에 동작 활성화 신호를 출력하게 된다.
1:2 보간기(520)에서는 128 포인트 입력 데이터(input data)를 전송 받아서 입력 데이터의 중간 중간에 제로('0')를 삽입하여 보간하게 된다. 여기에서는, 입력 데이터의 중간 중간에 1개씩의 제로('0')를 삽입하여, 전체적으로는 128개의 제로('0') 값을 삽입하여 FFT 보간부(400)에서 출력되는 출력 데이터를 256 포인트로 일정하게 유지되도록 한다.
또한, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '10'이 입력되는 경우의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 256 포인트 FFT 동작모드인 경우, 즉 입력 데이터(input data)가 256 포인트인 경우로써
Figure 112004039971120-pat00028
디코더(560)는 버퍼(540)에 동작 활성화 신호를 출력하게 된다.
버퍼(540)에서는 256 포인트 입력 데이터(input data)를 전송 받아서 그대로 출력하게 된다. 그럼으로써, 전체적으로는 FFT 보간부(400)에서 출력되는 출력 데이터를 256 포인트로 일정하게 유지되도록 한다.
FFT 연산부(420)는 FFT 보간부(400)에 의하여 출력되는 출력 데이터를 입력받아, 이를 통하여 Fast Fourier Transform을 수행하게 된다. FFT 연산부(420)에서 수행되어 생성된 FFT 연산 데이터는 FFT 모드 선택부(FFT mode selector)(440)에 입력되게 되는데, FFT 모드 선택부(440)의 보다 자세한 내부구성과 동작에 대하여는 도 6을 통하여 설명하기로 한다. FFT 모드 선택부(440)는 FFT 연산부(420)를 통하여 입력되는 256 포인트로 이루어진 FFT 연산 데이터를 입력받는다.
도 6을 참조하면, 동작모드 제어신호(S1)(S0)는
Figure 112004039971120-pat00029
디코더(660)에 입력되어 동작 활성화 신호를 생성하게 된다.
Figure 112004039971120-pat00030
디코더(660)에서 출력되는 동작 활성화 신호는 표 1에서 보는 바와 같이 4가지의 경우를 들 수 있다.
동작모드 제어신호(S1)(S0)가 '00'인 경우, 즉 64 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00031
디코더(660)는 4:1 선택기(4:1 selector)(600)에 동작 활성화 신호를 출력하게 된다.
그리고, 동작모드 제어신호(S1)(S0)가 '01'인 경우, 즉 128 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00032
디코더(660)는 2:1 선택기(2:1 selector)(620)에 동작 활성화 신호를 출력하게 된다.
또한, 동작모드 제어신호(S1)(S0)가 '10'인 경우, 즉 256 포인트 FFT 동작모드인 경우에는
Figure 112004039971120-pat00033
디코더(660)는 버퍼(1:1 buffer)(640)에 동작 활성화 신호를 출력하게 된다.
나머지, 표 1에서 동작모드 제어신호(S1)(S0)가 '11'인 경우에는 예비(reserved)로 되어있다.
상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '00'이 입력되는 경우의 FFT 모드 선택부(440)의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 64 포인트 FFT 동작모드인 경우로써
Figure 112004039971120-pat00034
디코더(660)는 4:1 선택기(600)에 동작 활성화 신호를 출력하게 된다.
4:1 선택기(600)에서는 FFT 연산 데이터에서 0포인트부터 63포인트까지의 FFT 연산 데이터를 선택하여 출력하도록 한다. 4:1 선택기(600)에서는 0포인트부터 63포인트까지의 FFT 연산 데이터를 선택하여 원래의 입력 데이터(input data)의 64 포인트와 일치하도록 64 포인트의 출력 데이터(output data)를 생성하게 되는 것이다.
그리고, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '01'이 입력되는 경우의 FFT 모드 선택부(440)의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 128 포인트 FFT 동작모드인 경우로써
Figure 112004039971120-pat00035
디코더(660)는 2:1 선택기(620)에 동작 활성화 신호를 출력하게 된다.
2:1 선택기(620)에서는 FFT 연산 데이터에서 0포인트부터 127포인트까지의 FFT 연산 데이터를 선택하여 출력하도록 한다. 2:1 선택기(620)에서는 0포인트부터 127포인트까지의 FFT 연산 데이터를 선택하여 원래의 입력 데이터(input data)의 128 포인트와 일치하도록 128 포인트의 출력 데이터(output data)를 생성하게 되는 것이다.
또한, 상기와 같은 경우에 동작모드 제어신호(S1)(S0)가 '10'이 입력되는 경우의 FFT 모드 선택부(440)의 구체적인 동작을 살펴보면 다음과 같다. 이와 같은 경우는 256 포인트 FFT 동작모드인 경우로써
Figure 112004039971120-pat00036
디코더(660)는 버퍼(640)에 동작 활성화 신호를 출력하게 된다.
버퍼(640)에서는 FFT 연산 데이터에서 0포인트부터 255포인트까지의 FFT 연산 데이터를 선택하여 출력하도록 한다. 버퍼(640)에서는 0포인트부터 256포인트까지의 FFT 연산 데이터를 선택하여 원래의 입력 데이터(input data)의 256 포인트와 일치하도록 256 포인트의 출력 데이터(output data)를 생성하게 되는 것이다.
상기에서 도 1 내지 도 6에서는 본 발명의 일실시예로써 설명한 것이다. 즉, 본 발명과 관련하여 16, 32, 64, 128, 256, 512, 1024 및 2048 포인트 출력 FFT 동작 모드등 여러 가지의 IFFT/FFT 크기를 수용하기 위한 구조로 확장할 수 있다. 이와 같은 경우에 IFFT/FFT 동작모드 제어신호를 살펴보면 표 2와 같다.
동작모드 제어신호 (S2, S1, S0) IFFT / FFT 동작 모드
0 0 0 16 포인트
0 0 1 32 포인트
0 1 0 64 포인트
0 1 1 128 포인트
1 0 0 256 포인트
1 0 1 512 포인트
1 1 0 1024 포인트
1 1 1 2048 포인트
도 1내지 도 6까지는 입력 데이터에 제로('0')를 삽입하고 FFT/IFFT 연산을 수행한 후에 출력 단계에서 동작모드에 따라 해당하는 모드를 선택하는 방식으로 가변 포인트 FFT/IFFT 하드웨어를 구현한 것이다.
도 1내지 도 6과는 달리 가변 포인트 FFT/IFFT 하드웨어를 구현하는 예에 대하여 설명하면 다음과 같다.
도 7은 본 발명의 다른 일실시예에 따른 8-4포인트 가변 FFT 하드웨어의 블럭도이다.
도 7을 참조하면, FFT는 입력부(700)에서 원하는 포인트에 해당하는 데이터를 입력받는다. 예를 들어, 8포인트 FFT를 원하면 8 포인트 입력 데이터를 입력받고, 4포인트 FFT를 원하면 4 포인트 입력 데이터를 입력받는다. 이하에서는, 도 7에 보이는 바와 같이 8포인트 입력 데이터가 입력되는 경우에 대하여 살펴보기로 한다.
입력부(700)에서 출력되는 8포인트의 입력 데이터는 버터플라이 연산부(730)에 입력된다. 버터플라이 연산부(730)는 입력 데이터 중에서 1/2 포인트에 해당하는 부분 즉, 4포인트에서 7포인트까지의 버터플라이 연산 결과를 회전계수 ROM(750)에 출력하게 된다. 회전계수 ROM(750)에서는 상기 입력되는 버터플라이 연산 결과와 저장되어 있는 회전계수를 곱하게 된다. 이와 같은 과정이 진행되면, N/2 포인트 FFT(770)가 된다. N/2 포인트 FFT(770)도 동일한 방식으로 버터플라이 연산 결과와 회전계수로 분리할 수 있게 된다. 즉, N/2 포인트 FFT(770)가 다시 N/4 포인트 FFT가 되고, N/4 포인트 FFT가 N/8 포인트 FFT가 된다. 이와 같은 과정을 반복하여, 2 포인트 FFT가 될 때까지 반복적으로 버터플라이 연산결과와 회전계수로 분리하게 된다. 그리고, FFT 알고리즘 특성상 출력결과의 순서가 변경되는데 이를 보상하기 위해 비트리버스부(780)를 구성한다.
제어부(720)는 버터플라이 연산부(730)와 회전계수 ROM(750)을 활성화 되도록 제어하고, 역다중화기 제어부(720)는 역다중화기(740)를 제어하여 버터플라이 출력신호(B)를 역다중화한 신호(B)를 N/2 포인트 FFT(760)로 출력되도록 한다. 여기에서, N/2포인트 FFT(760)도 다시 상기와 같은 과정을 거쳐 버터플라이와 회전계수로 분리될 수 있도록 할 수 있다.
여기에서, 4포인트 FFT를 구성하기를 원한다면 버터플라이 연산부(730)와 회전계수 ROM(750)으로 분리되는 블럭은 사용하지 않고 입력부(700)에서 4개의 입력데이터(A)를 N/2 포인트 FFT(760)로 입력한다. 비트 반전이 일어나기 때문에 4비트 비트 반전장치를 수행하여 4 포인트 FFT를 수행한다. 이때 제어부(720)는 버터플라이 연산부(730)와 회전계수 ROM(750)을 비활성화 되도록 제어하게 된다. 그리고, 역다중화기 제어부(720)는 역다중화기(740)를 제어하여 4개의 입력신호(A)와 버터플라이 연산부(730)의 출력신호(B)중에서 4개의 입력신호(A)가 선택되어지도록 한 다.
상기와 같은 구성을 통하여, 64, 128, 256, 1024, 2048 포인트 등의 FFT를 구성할 때 가장 큰 FFT를 하드웨어로 구성하고 원하는 FFT에 해당하는 N/2 FFT 지점을 찾으면 된다. 즉, 1024 포인트 FFT에서 버터플라이 연산 이후에는 512 포인트 FFT가 되고, 512 포인트 FFT에서 버터플라이 연산 이후에는 다시 256 포인트 FFT가 된다. 이와 같은 방식으로 계속 N/2 FFT지점을 찾아가고, 원하는 포인트에 해당하는 입력을 넣어주면 도 4 내지 도 6에서 살펴본 가변 포인트 FFT를 구성할 수 있다.
도 7에서는 FFT 구조를 통하여 설명하였으나, IFFT 구조의 경우에도 FFT구조에서 지수항의 부호가 상이하기 때문에 지수항이 들어 있는 회전계수(twiddle coefficient) ROM에서 부호만 변경해 주면 된다.
도 8은 본 발명의 일실시예에 따른 다양한 크기의 가변 IFFT를 수행할 수 있는 가변 포인트 IFFT 하드웨어를 구현하는 흐름도이다.
도 8을 참조하면, 입력 데이터의 포인트를 반으로 나누고 상기 나누어진 입력 데이터의 중간 영역에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 수정된 데이터(바람직하게는, 제로값('0'))를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하게 된다(S800).
다음으로, 상기 단계S800으로부터 상기 보간 데이터 신호를 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하게 된다(S820).
다음으로, 상기 단계S820으로부터 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하게 된다. 도 8에 대하여 미설명된 부분은 도 1내지 도 3을 참조하기로 한다.
도 9는 본 발명의 다른 일실시예에 따른 다양한 크기의 가변 FFT를 수행할 수 있는 가변 포인트 FFT 하드웨어를 구현하는 흐름도이다.
도 9를 참조하면, 입력 데이터 각각의 포인트 사이에 FFT 동작모드 제어신호에 따라 가변되는 주기를 가지는 다수개의 수정된 데이터(바람직하게는, 제로값('0')를 삽입하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하게 된다(S900).
다음으로, 상기 단계S900에서 보간 데이터 신호를 입력받아 고속 퓨리에 변환(Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하게 된다(S920).
다음으로, 상기 단계S920에서 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 FFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하게 된다(S940). 도 9에 대하여 미설명된 부분은 도 4내지 도 6을 참조하기로 한다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한 다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD_ROM, 자기테이프, 플로피디스크 및 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명은 가변 포인트 IFFT/FFT 방법 및 장치에 관한 것으로 다음과 같은 효과가 있다.
본 발명에 의한 가변 포인트 IFFT/FFT를 지원하기 위한 하드웨어 구현 방법 및 장치를 이용하면 재구성되는 모뎀 구조를 실현할 수 있고 하나의 모뎀에서 WiBro/WLAN(IEEE802.11a)를 손쉽게 통합 할 수 있다는 효과가 있다.
본 발명에 의한 가변 포인트 IFFT/FFT를 지원하기 위한 하드웨어 구현 방법 및 장치를 이용하면 가변적으로 선택되는 모뎀 방식에 따라서 IFFT/FFT의 계산 크 기가 64 포인트, 1024 포인트 또는 2048 포인트 등으로 달라지는데 여러 가지 가변적인 크기의 IFFT/FFT의 계산을 하드웨어적으로 간단히 구현할 수 있다는 효과가 있다.

Claims (15)

  1. 입력 데이터의 포인트에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 제로값('0')으로 이루어진 수정된 데이터를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지도록 하는 보간 데이터 신호를 생성하는 IFFT 보간부;
    상기 보간 데이터 신호를 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 IFFT 연산부;
    상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 신호중에서 일부만을 선택하여 출력하는 IFFT 모드 선택부; 및
    상기 IFFT 동작모드 제어신호를 상기 IFFT 보간부와 상기 IFFT 모드 선택부에 출력하는 제어부를 포함하는 것을 특징으로 하는 가변 포인트 IFFT 장치.
  2. 제 1 항에 있어서, 상기 IFFT 보간부는
    상기 입력 데이터를 나누고, 상기 나누어진 입력 데이터의 중간 영역에 삽입하는 보간 데이터가 정해진 보간 삽입기가 다수개로 구성되고,
    상기 제어부의 IFFT 동작모드 제어신호에 따라 상기 다수개의 보간 삽입기 중 어느 하나가 동작되도록 하여 IFFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 것을 특징으로 하는 가변 포인트 IFFT 장치.
  3. 제 1 항에 있어서, 상기 IFFT 모드 선택부는
    상기 연산 데이터 신호를 상기 IFFT 보간부에서 삽입된 수정된 데이터의 개수에 해당하는 만큼을 선택하여 간축하는 간축기(decimator)가 다수개로 구성되고,
    상기 제어부의 IFFT 동작모드 제어신호에 따라 상기 다수개의 간축기 중에서 어느 하나가 동작되도록 하여 상기 입력 데이터의 포인트와 동일한 포인트를 가지는 데이터를 출력하는 것을 특징으로 하는 가변 포인트 IFFT 장치.
  4. 제 3 항에 있어서,
    상기 다수개의 간축기에서는 간축되는 비율만큼의 스케일링(scaling) 값을 곱해주는 것을 특징으로 하는 가변 포인트 IFFT 장치.
  5. 삭제
  6. 입력 데이터 각각의 포인트 사이에 FFT 동작모드 제어신호에 따라 가변되는 주기를 가지고 다수개의 제로값('0')으로 이루어진 수정된 데이터를 삽입하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 FFT 보간부;
    상기 보간 데이터 신호를 입력받아 고속 퓨리에 변환(Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 FFT 연산부;
    상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 FFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 FFT 모드 선택부; 및
    상기 FFT 동작모드 제어신호를 상기 FFT 보간부와 상기 FFT 모드 선택부에 출력하는 제어부를 포함하는 것을 특징으로 하는 가변 포인트 FFT 장치.
  7. 제 6 항에 있어서, 상기 FFT 보간부는
    상기 입력 데이터의 사이에 삽입되는 제로의 개수가 정해진 보간기가 다수개로 구성되고,
    상기 제어부의 FFT 동작모드 제어신호에 따라 상기 다수개의 보간기 중 어느 하나가 동작되도록 하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 것을 특징으로 하는 가변 포인트 FFT 장치.
  8. 제 6 항에 있어서, 상기 FFT 모드 선택부는
    상기 연산 데이터 신호를 상기 FFT 보간부에서 삽입된 제로의 개수에 해당하는 만큼을 선택하여 간축하는 선택기(selector)가 다수개로 구성되고,
    상기 제어부의 FFT 동작모드 제어신호에 따라 상기 다수개의 선택기 중에서 어느 하나가 동작되도록 하여 상기 입력 데이터의 포인트와 동일한 포인트를 가지는 데이터를 출력하는 것을 특징으로 하는 가변 포인트 FFT 장치.
  9. 삭제
  10. N개의 입력 데이터를 입력받아 버터플라이 연산을 수행하는 버터플라이 연산부;
    상기 N개의 입력 데이터중 1/2 포인트에 해당하는 입력 데이터 신호와 상기 버퍼플라이 연산 결과 신호중 어느 하나의 신호를 출력하는 역다중화기;
    상기 역다중화기로부터 역다중화 신호를 입력받아 N/2 개의 데이터를 역고속/고속 퓨리에 연산을 수행하는 제 1 N/2 포인트 IFFT/FFT;
    상기 버터플라이 연산 결과를 입력받아 상기 버터플라이 연산 결과에 회전계수를 곱하여주는 회전계수 ROM;
    상기 회전계수 ROM으로부터 출력되는 신호를 입력받아 N/2 개의 데이터를 역고속/고속 퓨리에 연산을 수행하는 제 2 N/2 포인트 IFFT/FFT;
    상기 제 1 N/2 포인트 FFT와 제 2 N/2 포인트 FFT에서 출력되는 신호를 입력받아 비트리버스 연산을 수행하여 출력하는 비트리버스부; 및
    상기 버퍼플라이 연산부와 상기 회전계수 ROM 및 상기 제 2 N/2 포인트 FFT 의 동작을 제어하는 제어부;를 포함하는 것을 특징으로 하는 가변 포인트 IFFT/FFT 장치.
  11. 제 10 항에 있어서,
    상기 N개의 입력 데이터중 1/2 포인트에 해당하는 입력 데이터 신호와 상기 버퍼플라이 연산 결과 신호중 어느 하나의 신호를 출력하도록 상기 역다중화기를 제어하는 역다중화기 제어부를 더 포함하는 것을 특징으로 하는 가변 포인트 IFFT/FFT 장치.
  12. 제 11 항에 있어서, N개의 입력 데이터에 대하여 제 N/2 포인트 IFFT/FFT 장치를 구현하는 것은
    상기 제어부는 상기 버퍼플라이 연산부와 상기 회전계수 ROM을 비활성화 시키고,
    상기 역다중화기 제어부는 상기 N개의 입력 데이터중 1/2에 해당하는 입력 데이터 신호를 선택하는 것을 특징으로 하는 가변 포인트 IFFT/FFT 장치.
  13. 제 11 항에 있어서, 상기 가변 포인트 IFFT/FFT 장치는
    상기 회전계수 ROM의 회전계수 구조에 따라 가변 포인트 IFFT 장치 또는 가변 포인트 FFT 장치로 결정되는 것을 특징으로 하는 가변 포인트 IFFT/FFT 장치.
  14. (a) 입력 데이터의 포인트를 나누고 상기 나누어진 입력 데이터의 중간 영역에 IFFT 동작모드 제어신호에 따라서 가변되는 다수개의 제로값('0')으로 이루어진 수정된 데이터를 삽입하여 IFFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 IFFT 제로 삽입단계;
    (b) 상기 (a)단계로부터 상기 보간 데이터 신호 입력받아 역고속 퓨리에 변환(Inverse Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 IFFT 연산단계; 및
    (c) 상기 (b)단계로부터 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 IFFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 IFFT 모드 선택단계를 포함하는 것을 특징으로 하는 가변 포인트 IFFT 방법.
  15. (a) 입력 데이터 각각의 포인트 사이에 FFT 동작모드 제어신호에 따라 가변되는 주기를 가지고 다수개의 제로값('0')으로 이루어진 수정된 데이터를 삽입하여 FFT 하드웨어에서 기 설정된 포인트를 가지는 보간 데이터 신호를 생성하는 FFT 보간단계;
    (b) 상기 (a)단계에서 보간 데이터 신호를 입력받아 고속 퓨리에 변환(Fast Fourier Transform) 연산을 수행하여 연산 데이터 신호를 생성하는 FFT 연산단계; 및
    (c) 상기 (b)단계에서 상기 연산 데이터 신호를 입력받아 상기 입력 데이터의 포인트와 동일한 포인트를 가지도록 상기 FFT 동작모드 제어신호에 따라 상기 연산 데이터 중에서 일부만을 선택하여 출력하는 FFT 모드 선택단계를 포함하는 것을 특징으로 하는 가변 포인트 FFT 방법.
KR1020040070238A 2004-09-03 2004-09-03 가변 포인트 ifft/fft 방법 및 장치 KR100628303B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020040070238A KR100628303B1 (ko) 2004-09-03 2004-09-03 가변 포인트 ifft/fft 방법 및 장치
JP2007529657A JP4499156B2 (ja) 2004-09-03 2004-12-15 可変ポイントifft/fft方法及び装置
PCT/KR2004/003304 WO2006025631A1 (en) 2004-09-03 2004-12-15 Method and apparatus of the variable points ifft/fft
US11/681,201 US7626923B2 (en) 2004-09-03 2007-03-02 Method and apparatus of the variable points IFFT/FFT

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040070238A KR100628303B1 (ko) 2004-09-03 2004-09-03 가변 포인트 ifft/fft 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20060021479A KR20060021479A (ko) 2006-03-08
KR100628303B1 true KR100628303B1 (ko) 2006-09-27

Family

ID=36000252

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040070238A KR100628303B1 (ko) 2004-09-03 2004-09-03 가변 포인트 ifft/fft 방법 및 장치

Country Status (4)

Country Link
US (1) US7626923B2 (ko)
JP (1) JP4499156B2 (ko)
KR (1) KR100628303B1 (ko)
WO (1) WO2006025631A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836624B1 (ko) * 2006-12-08 2008-06-10 한국전자통신연구원 가변 고속 푸리에 변환 장치 및 그 방법
KR20140124684A (ko) * 2013-04-17 2014-10-27 한국전자통신연구원 가변적으로 적용 가능한 고속 푸리에 변환 장치 및 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070299903A1 (en) * 2006-06-27 2007-12-27 Nokia Corporation Optimized DFT implementation
CN101601031A (zh) * 2006-12-22 2009-12-09 迈克纳斯公司 使用2n点FFT计算非2n点DFT的处理装置、方法和系统
JP4933311B2 (ja) * 2007-03-07 2012-05-16 キヤノン株式会社 外部機器から入力されたストリーミングデータをofdm変調して送信する送信装置およびその制御方法
CN101277285A (zh) * 2007-03-29 2008-10-01 深圳赛意法微电子有限公司 Drm接收机和解调方法
US20090055459A1 (en) * 2007-08-24 2009-02-26 Michael Speth Frequency-domain equalizer
KR20090059315A (ko) 2007-12-06 2009-06-11 삼성전자주식회사 통신시스템에서 역 고속 퓨리에 변환 방법 및 장치
JP5181773B2 (ja) * 2008-03-27 2013-04-10 富士通株式会社 通信装置、送信機、受信機、通信方法および通信プログラム
US8090037B1 (en) * 2008-10-28 2012-01-03 Xilinx, Inc. OFDM modulation using a shaping filter
CN101860508B (zh) * 2009-04-13 2013-01-16 中兴通讯股份有限公司 一种fft变换的复用装置及方法
JP5414484B2 (ja) * 2009-12-01 2014-02-12 三菱電機株式会社 フーリエ変換回路、受信装置およびフーリエ変換方法
KR101954964B1 (ko) * 2014-02-04 2019-03-06 엘지전자 주식회사 무선랜에서 데이터 단위를 전송하는 방법 및 장치
US10396873B2 (en) 2014-09-24 2019-08-27 Mediatek Inc. Control signaling in a beamforming system
US9882620B2 (en) 2014-09-24 2018-01-30 Mediatek Inc. Synchronization in a beamforming system
JP6505334B2 (ja) * 2016-11-15 2019-04-24 三菱電機株式会社 演算装置および演算方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2818151B2 (ja) * 1996-12-16 1998-10-30 株式会社次世代デジタルテレビジョン放送システム研究所 Ofdm伝送方式とofdm送受信装置
KR100484418B1 (ko) 1997-01-22 2005-06-16 마츠시타 덴끼 산교 가부시키가이샤 고속푸리에변환장치및방법,가변비트리버스회로,역고속푸리에변환장치및방법과직교주파수분할다중수신및송신장치
JP3668356B2 (ja) * 1997-04-07 2005-07-06 シャープ株式会社 高速フーリエ変換演算回路
KR100284181B1 (ko) 1998-04-02 2001-03-02 구자홍 패스트 퓨리에 변환(fft) 장치와 제어방법
US6549592B1 (en) * 1998-02-06 2003-04-15 Cisco Technology, Inc Enhanced synchronization burst for OFDM systems
JP2000123000A (ja) * 1998-10-15 2000-04-28 Toshiba Corp サイズ可変離散フーリエ変換処理装置
EP1005203A1 (en) * 1998-11-24 2000-05-31 STMicroelectronics SA Multistandard DMT DSL transmission system
US6442130B1 (en) * 1999-01-21 2002-08-27 Cisco Technology, Inc. System for interference cancellation
JP2002026859A (ja) * 2000-07-11 2002-01-25 Sharp Corp Ofdm信号復調装置およびofdm信号変調装置
US7333422B2 (en) * 2003-09-12 2008-02-19 Zarbana Digital Fund Llc Optimized FFT/IFFT module
EP1237342A3 (en) * 2001-03-01 2006-05-03 Alps Electric Co., Ltd. Mutlicarrier modulator
JP2003115813A (ja) * 2001-10-09 2003-04-18 Hitachi Kokusai Electric Inc Fft回路/ifft回路
US7042969B2 (en) * 2002-01-15 2006-05-09 Agere Systems Inc. Method and apparatus for frame alignment in discrete multitone transceivers
GB2384876A (en) * 2002-01-31 2003-08-06 Zarlink Semiconductor Inc Simplifying a real fast Fourier transform using symmetry
KR20040032683A (ko) * 2002-10-10 2004-04-17 엘지전자 주식회사 무선 랜 시스템의 고속 푸리에 변환 장치
JP3915678B2 (ja) * 2002-12-02 2007-05-16 株式会社デンソー Ofdm受信機
KR100492091B1 (ko) 2002-12-10 2005-06-01 삼성전자주식회사 프로그래머블 프로세서에서의 고속 푸리에 변환 연산회로및 연산방법
TWI281619B (en) * 2002-12-20 2007-05-21 Realtek Semiconductor Corp Data processing structure and method for fast Fourier transformation/inverse fast Fourier transformation
US7200196B2 (en) * 2003-04-24 2007-04-03 Texas Instruments Incorporated Interpolation based timing recovery
JP2004343591A (ja) * 2003-05-19 2004-12-02 Matsushita Electric Ind Co Ltd Ofdm送信方法およびofdm送信機
JP3898671B2 (ja) * 2003-06-27 2007-03-28 株式会社東芝 無線装置
JP3962031B2 (ja) * 2004-03-31 2007-08-22 株式会社東芝 マルチキャリア通信システム、同システムに用いられる受信装置ならびに送信装置
US8484272B2 (en) * 2004-08-20 2013-07-09 Qualcomm Incorporated Unified pulse shaping for multi-carrier and single-carrier waveforms

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100836624B1 (ko) * 2006-12-08 2008-06-10 한국전자통신연구원 가변 고속 푸리에 변환 장치 및 그 방법
US8510362B2 (en) 2006-12-08 2013-08-13 Samsung Electronics Co., Ltd. Apparatus and method for variable fast fourier transform
KR20140124684A (ko) * 2013-04-17 2014-10-27 한국전자통신연구원 가변적으로 적용 가능한 고속 푸리에 변환 장치 및 방법
KR102075707B1 (ko) * 2013-04-17 2020-02-11 한국전자통신연구원 가변적으로 적용 가능한 고속 푸리에 변환 장치 및 방법

Also Published As

Publication number Publication date
WO2006025631A1 (en) 2006-03-09
US20070201354A1 (en) 2007-08-30
KR20060021479A (ko) 2006-03-08
JP2008512031A (ja) 2008-04-17
US7626923B2 (en) 2009-12-01
JP4499156B2 (ja) 2010-07-07

Similar Documents

Publication Publication Date Title
US7626923B2 (en) Method and apparatus of the variable points IFFT/FFT
EP1758326B1 (en) Combined OFDM and wavelet multi-carrier transceiver
DK1317812T3 (en) SIGNALIZATION PROCEDURE IN AN OFDM MULTIPLE ACCESS SYSTEM
KR100958231B1 (ko) 직교 주파수 분할 다중 시스템에서의 고속 푸리에 변환처리
EP1665594A2 (en) Combined inverse fast fourier transform and guard interval processing for efficient implementation of ofdm based systems
WO2004042981A3 (en) Method and apparatus for reducing a peak-to-average power ratio in an orthogonal frequency division multiplex signal
Ayhan et al. A 128∶ 2048/1536 point FFT hardware implementation with output pruning
US7685220B2 (en) Circular fast fourier transform
KR100836624B1 (ko) 가변 고속 푸리에 변환 장치 및 그 방법
KR100720949B1 (ko) 직교 주파수 분할 다중화 시스템에서의 고속 푸리에 변환프로세서 및 그 변환 방법
TW200525920A (en) Method and apparatus for peak to average power ratio reduction
WO2009014291A1 (en) Fast fourier transforming method and processor for 4x4 mimo-ofdm wlan system
KR100810490B1 (ko) 고속 푸리에 변환 장치 및 이를 포함하는 직교 주파수 분할다중화 수신기
JP3582707B2 (ja) 直交マルチキャリア信号伝送装置、直交マルチキャリア信号の伝送方法
KR100576520B1 (ko) 반복 연산 기법을 이용한 가변 고속 푸리에 변환프로세서
KR20040046478A (ko) 메모리의 크기를 감소시킬 수 있는 고속 퓨리에 변환프로세서
Deepa et al. Performance evaluation of a low complexity row-column transform approach for SLM based OFDM transmission system
KR101415202B1 (ko) 보간 기법과 고속 푸리에 변환을 이용한 이산 푸리에변환을 위한 장치 및 방법
US7593754B2 (en) Receiving apparatus and receiving method of communication system with multiple antennas
Azar et al. CERA: a channel estimation reconfigurable architecture
CN107979454B (zh) 一种ofdma分布式模式下行链路梳状谱快速提取方法
Nishi et al. A study of dynamic reconfigurable FFT processor for OFDM based cognitive radio
JP3742294B2 (ja) マイクロ波送信機用逆フーリエ変換回路
Ho et al. A reconfigurable systolic array architecture for multicarrier wireless and multirate applications
KR20080062003A (ko) 기수 2의 제곱 구조를 이용하는 가변적인 입력 크기를허용하는 파이프라인 방식의 고속 푸리에 변환 장치 및방법

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: 20100901

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee