KR101002771B1 - 푸리에 변환 장치 및 방법 - Google Patents

푸리에 변환 장치 및 방법 Download PDF

Info

Publication number
KR101002771B1
KR101002771B1 KR1020080101275A KR20080101275A KR101002771B1 KR 101002771 B1 KR101002771 B1 KR 101002771B1 KR 1020080101275 A KR1020080101275 A KR 1020080101275A KR 20080101275 A KR20080101275 A KR 20080101275A KR 101002771 B1 KR101002771 B1 KR 101002771B1
Authority
KR
South Korea
Prior art keywords
complex
sequence
output
value
values
Prior art date
Application number
KR1020080101275A
Other languages
English (en)
Other versions
KR20100042133A (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 KR1020080101275A priority Critical patent/KR101002771B1/ko
Priority to US12/536,240 priority patent/US20100094920A1/en
Publication of KR20100042133A publication Critical patent/KR20100042133A/ko
Application granted granted Critical
Publication of KR101002771B1 publication Critical patent/KR101002771B1/ko

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
    • H04L27/2651Modification of fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators for performance improvement

Abstract

푸리에 변환 장치는 미리 저장된 검색 테이블을 바탕으로 입력 시퀀스에 따라 제1 시퀀스를 생성하고, 제1 시퀀스를 바탕으로 복수 회의 버터플라이 연산을 수행하여 출력 시퀀스를 생성한다. 이를 통해 푸리에 변환 장치의 하드웨어 용량을 줄일 수 있고, 푸리에 변환 장치의 전력 소모를 줄일 수 있다.
Figure R1020080101275
OFDM, FFT, 테이블

Description

푸리에 변환 장치 및 방법{APPARATUS AND METHOD FOR EXECUTING FOURIER TRANSFORM}
본 발명은 푸리에 변환 장치 및 방법에 관한 것이다. 특히 본 발명은 고속 푸리에 변환(Fast Fourier Transform, FFT)를 이용한 푸리에 변환 장치 및 방법에 관한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2006-S-071-03, 과제명: 초고속 멀티미디어 전송 UWB 솔루션 개발].
직교 주파수 분할 다중(Orthogonal Frequency Division Multiplexing, 이하에서는 'OFDM'이라고도 함) 방식은 고속 전송률을 가지는 데이터를 낮은 전송률을 가지는 많은 수의 데이터열로 나누고, 이를 다수의 부반송파를 사용하여 동시에 전송하는 방식이다. 이때 부반송파를 만들어 데이터를 싣는 과정에 필요한 블록이 고속 푸리에 변환 프로세서(Fast Fourier Transform Processor, 이하에서는 'FFT 프로세서'라고도 함)이다.
이와 같은 OFDM 방식을 따르는 시스템에서 FFT 프로세서는 하드웨어가 가장 많이 필요한 블록중의 하나이기 때문에 하드웨어용량, 전력소모, 동작속도 측면에서 효율적인 구현이 필요하다.
하지만 다중대역 직교 주파수 분할 다중(Multi-Band Orthogonal Frequency Division Multiplexing, MB-OFDM) 방식을 따르는 초광대역(Ultra WideBand, UWB) 시스템에서 FFT 프로세서가 시스템에서 요구되는 전송속도를 만족하기 위해서는 병렬 구조로 구현되어야 하기 때문에 많은 하드웨어가 요구되며, 이에 따라 전력소모가 많은 문제점이 있다.
본 발명이 이루고자 하는 기술적 과제는 데이터열에 대한 푸리에 변환을 위해 필요한 하드웨어 용량을 줄인 푸리에 변환 장치 및 푸리에 변환에 따른 전력소모를 줄일 수 있는 푸리에 변환 방법을 제공하는 것이다.
본 발명의 특징에 따른 푸리에 변환 방법은 2n개의 복소수값을 포함하는 입력 시퀀스를 푸리에 변환하는 방법으로써, 미리 저장된 검색 테이블을 바탕으로 입력 시퀀스에 포함된 2n개의 복소수값에 따라 2n개의 복소수값을 포함하는 제1 시퀀스를 생성하는 단계, 그리고 제1 시퀀스를 바탕으로 (n-m)번의 버터플라이 연산을 수행하여 2n개의 복소수값을 포함하는 출력 시퀀스를 생성하는 단계를 포함하고, 이때 m은 n보다 작고, 1보다 큰 양의 정수이다.
이때 제1 시퀀스를 생성하는 단계는 제1 시퀀스에 포함된 2n개의 복소수값을 복수 개의 복소수값 그룹으로 분할하는 단계, 그리고 복수 개의 복소수값 그룹에 따라 검색 테이블에서 제1 시퀀스에 포함된 2n개의 복소수값의 각각을 검색하는 단계를 포함한다.
또한 복수 개의 복소수값 그룹은 제1 그룹, 제2 그룹, 제3 그룹 및 제4 그룹을 포함하고, 검색하는 단계는 검색 테이블에서 제1 그룹에 포함된 제1 복소수값, 제2 그룹에 포함된 제2 복소수값, 제3 그룹에 포함된 제3 복소수값 및 제4 그룹에 포함된 제4 복소수값에 대응하는 제5 복소수값을 검색한다.
본 발명의 다른 특징에 따른 푸리에 변환 장치는 2n개의 복소수값을 포함하는 입력 시퀀스를 푸리에 변환하는 장치로써, 제1 스테이지부 및 복수 개의 스테이지부를 포함한다. 제1 스테이지부는 미리 저장된 검색 테이블을 바탕으로 입력 시퀀스로부터 입력 시퀀스를 m번 버터플라이 연산한 결과에 대응하는 제1 시퀀스를 출력한다. 복수 개의 스테이지부는 제1 시퀀스를 바탕으로 (n-m)번 버터플라이 연산을 수행하여 출력 시퀀스를 출력한다. 이때 n 및 m은 양의 정수이다.
이때 제1 시퀀스는 복수 개의 복소수값을 포함하고, 제1 스테이지부는 테이블 저장부, 시퀀스 분배부 및 시퀀스 출력부를 포함한다. 테이블 저장부는 복수 개의 입력 복소수값에 대응하는 출력 복소수값에 대한 정보를 포함하는 검색 테이블을 저장한다. 시퀀스 분배부는 입력 시퀀스에 포함된 2n개의 복소수값을 미리 정해진 순서에 따라 복수 개의 복소수값 그룹으로 분할한다. 시퀀스 출력부는 복수 개의 복소수값 그룹을 바탕으로 검색 테이블에서 제1 시퀀스에 포함된 복수 개의 복소수값의 각각을 검색하여 제1 시퀀스를 출력한다.
또한 복수 개의 복소수값 그룹의 각각은 적어도 하나 이상의 복소수값을 포함하고, 제1 스테이지부는 복수 개의 복소수값 그룹에 각각 대응하는 복수 개의 출력 제어부를 더 포함한다.
또한 복수 개의 출력 제어부 중 어느 하나의 출력 제어부는 시퀀스 분배부로 부터 복수 개의 복소수값 그룹 중 어느 하나의 복소수값 그룹을 수신하고, 복소수값 그룹에 포함된 복소수값을 미리 정해진 클럭에 하나씩 출력한다.
또한 복수 개의 스테이지부 중 어느 하나에 해당하는 제2 스테이지부는 저장부 및 연산부를 포함한다. 저장부는 제2 스테이지부에 입력되는 복수 개의 복소수값 중 적어도 하나 이상의 복소수값을 저장한다. 연산부는 저장부에 저장된 복소수값 및 제2 스테이지부에 입력되는 복수 개의 복소수값을 바탕으로 미리 정해진 버터플라이 연산을 수행한다.
본 발명의 특징에 따르면, 미리 저장된 검색 테이블을 이용하여 일부의 버터플라이 연산을 대신함으로써 푸리에 변환 장치의 하드웨어 용량을 줄일 수 있고, 푸리에 변환 장치의 전력 소모를 줄일 수 있다.
또한 본 발명의 특징에 따르면, 검색 테이블을 이용하면 실제 계산이 이루어지지 않기 때문에 푸리에 변환 장치의 동작 속도가 빨라지고, 버터플라이 연산 전에 수행하는 양자화를 생략할 수 있기 때문에 양자화 에러나 반올림 에러가 줄어들어 푸리에 변환 장치의 성능을 향상시킬 수 있습니다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설 명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
이제 도면을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치 및 방법에 대해 설명한다.
먼저 도 1을 참고하여 종래의 푸리에 변환 장치에 대해 설명한다.
도 1은 종래의 푸리에 변환 장치를 도시한 도면이다.
도 1에 도시된 바와 같이, 종래의 푸리에 변환 장치(100)는 시간 영역의 입력 시퀀스(Input Sequence)를 고속 푸리에 변환(Fast Fourier Transform, 이하에서는 'FFT'라고도 함)하여 주파수 영역의 출력 시퀀스(Output Sequence)를 출력하고, 제1 스테이지부(110), 제2 스테이지부(120), 제1 회전인자 적용부(130), 제3 스테이지부(140), 제4 스테이지부(150), 제2 회전인자 적용부(160) 및 제5 스테이지부(170)를 포함한다. 이때 입력 시퀀스는 32개의 복소수값을 포함하고, 푸리에 변환 장치(100)는 32개의 복소수값을 FFT하여 32개의 복소수값을 포함하는 출력 시퀀스를 출력한다.
제1 스테이지부(110)는 입력 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제1 연산 시퀀스를 출력하고, 제1 저장부(111) 및 제1 연산부(113)를 포함한다. 이때 제1 저장부(111)는 16개의 복소수값을 저장할 수 있다.
제2 스테이지부(120)는 제1 연산 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제2 연산 시퀀스를 출력하고, 제2 저장부(121) 및 제2 연산부(123)를 포함한다. 이때 제2 저장부(121)는 8개의 복소수값을 저장할 수 있다.
제1 회전인자 적용부(130)는 제2 연산 시퀀스에 포함된 32개의 복소수값에 대해 제1 회전인자를 적용하여 32개의 복소수값을 포함하는 제1 회전인자 적용 시퀀스를 출력한다.
제3 스테이지부(140)는 제1 회전인자 적용 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제3 연산 시퀀스를 출력하고, 제3 저장부(141) 및 제3 연산부(143)를 포함한다. 이때 제3 저장부(141)는 4개의 복소수값을 저장할 수 있다.
제4 스테이지부(150)는 제3 연산 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제4 연산 시퀀스를 출력하고, 제4 저장부(151) 및 제4 연산부(153)를 포함한다. 이때 제4 저장부(151)는 2개의 복소수값을 저장할 수 있다.
제2 회전인자 적용부(160)는 제4 연산 시퀀스에 포함된 32개의 복소수값에 대해 제2 회전인자를 적용하여 32개의 복소수값을 포함하는 제2 회전인자 적용 시퀀스를 출력한다.
제5 스테이지부(170)는 제2 회전인자 적용 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 출력 시퀀스를 출력하고, 제5 저장부(171) 및 제5 연산부(173)를 포함한다. 이때 제5 저장부(171)는 1개의 복소수값을 저장할 수 있다.
다음은 도 2를 참고하여 종래의 푸리에 변환 장치 중 제1 스테이지부 및 제2 스테이지부의 버터플라이 연산 방법에 대해 설명한다.
도 2는 종래의 푸리에 변환 장치의 버터플라이 연산 방법을 도시한 도면이다.
도 2에 도시된 바와 같이, 먼저, 푸리에 변환 장치(100)가 32개의 복소수값을 포함하는 입력 시퀀스를 수신한다. 이때 입력 시퀀스에 포함된 32개의 복소수값의 각각은 수학식 1을 따른다.
Figure 112008071837761-pat00001
이때 제1 스테이지부(110)에 입력된 입력 시퀀스에 포함된 32개의 복소수값의 각각은 수학식 2를 따를 수 있다.
Figure 112008071837761-pat00002
입력 시퀀스에 포함된 32개의 복소수값이 수학식 2를 따르는 경우, A(n), B(n), C(n) 및 D(n)의 각각은 수학식 3을 따른다.
Figure 112008071837761-pat00003
다음, 제1 스테이지부(110)는 입력 시퀀스에 포함된 32개의 복소수값을 바탕으로 수학식 4에 따라 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제1 연산 시퀀스를 출력한다.
Figure 112008071837761-pat00004
이때 A(n)′, B(n)′, C(n)′ 및 D(n)′의 각각은 수학식 3을 바탕으로 수학식 5와 같이 나타낼 수 있다.
Figure 112008071837761-pat00005
이후, 제2 스테이지부(120)는 제1 연산 시퀀스에 포함된 32개의 복소수값을 바탕으로 수학식 6에 따라 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제2 연산 시퀀스를 출력한다.
Figure 112008071837761-pat00006
이때 A(n)″, B(n)″, C(n)″ 및 D(n)″의 각각은 수학식 5 및 수학식 6을 바탕으로 수학식 7과 같이 나타낼 수 있다.
Figure 112008071837761-pat00007
다음은 도 3 내지 도 5를 참고하여 종래의 푸리에 변환 장치에 입력되는 입력 시퀀스, 제1 스테이지부가 출력하는 제1 연산 시퀀스 및 제2 스테이지부가 출력하는 제2 연산 시퀀스에 대해 설명한다.
도 3은 종래의 푸리에 변환 장치에 입력되는 입력 시퀀스의 성상도를 도시한 도면이다.
푸리에 변환 장치(100)에 입력된 입력 시퀀스가 수학식 3을 따르고, a(n)r, a(n)i, b(n)r, b(n)i, c(n)r, c(n)i, d(n)r 및 d(n)i의 각각이 -3, -1, 1 또는 1 중 어느 하나의 값을 가지는 경우, 입력 시퀀스의 성상도는 도 3과 같이 도시된다.
도 4는 종래의 푸리에 변환 장치의 제1 스테이지부가 출력하는 제1 연산 시퀀스의 성상도를 도시한 도면이다.
입력 시퀀스가 도 3에 도시된 성상도를 따르고, 제1 스테이지부(110)가 수학식 4 및 수학식 5에 따라 제1 연산 시퀀스를 출력하는 경우, 제1 연산 시퀀스의 성상도는 도 4와 같이 도시된다.
도 4에 도시된 바와 같이, a(n)r′, a(n)i′, b(n)r′, b(n)i′, c(n)r′, c(n)i′, d(n)r′ 및 d(n)i′의 각각은 -6, -4, -3, -2, -1, 0, 1, 2, 3, 4 또는 6 중 어느 하나의 값을 가질 수 있다.
도 5는 종래의 푸리에 변환 장치의 제2 스테이지부가 출력하는 제2 연산 시퀀스의 성상도를 도시한 도면이다.
제1 연산 시퀀스가 도 4에 도시된 성상도를 따르고, 제2 스테이지부(120)가 수학식 6 및 수학식 7에 따라 제2 연산 시퀀스를 출력하는 경우, 제2 연산 시퀀스의 성상도는 도 5와 같이 도시된다.
도 5에 도시된 바와 같이, a(n)r″, a(n)i″, b(n)r″, b(n)i″, c(n)r″, c(n)i″, d(n)r″ 및 d(n)i″의 각각은 -12, -10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 또는 12 중 어느 하나의 값을 가질 수 있다.
다음은 도 6을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치에 대해 설명한다.
도 6은 본 발명의 실시예에 따른 푸리에 변환 장치의 구성을 도시한 도면이다.
도 6에 도시된 바와 같이, 본 발명의 실시예에 따른 푸리에 변환 장치(300)는 시간 영역의 입력 시퀀스(Input Sequence)를 고속 푸리에 변환(Fast Fourier Transform, 이하에서는 'FFT'라고도 함)하여 주파수 영역의 출력 시퀀스(Output Sequence)를 출력하고, 제1 스테이지부(310), 제1 회전인자 적용부(320), 제2 스테이지부(330), 제3 스테이지부(340), 제2 회전인자 적용부(350) 및 제4 스테이지부(360)를 포함한다. 이때 입력 시퀀스는 32개의 복소수값을 포함하고, 푸리에 변환 장치(300)는 32개의 복소수값을 FFT하여 32개의 복소수값을 포함하는 출력 시퀀스를 출력한다.
제1 스테이지부(310)는 미리 저장된 검색 테이블(Lookup Table)에 따라 입력 시퀀스에 포함된 32개의 복소수값으로부터 32개의 복소수값을 포함하는 제1 시퀀스를 출력한다. 이때 제1 스테이지부(310)가 출력하는 제1 시퀀스는 종래의 푸리에 변환 장치(100)의 제2 스테이지부(120)가 출력하는 제2 연산 시퀀스에 대응한다.
제1 회전인자 적용부(320)는 제1 스테이지부(310)가 출력한 제1 시퀀스에 포함된 32개의 복소수값에 대해 제1 회전인자를 적용하여 32개의 복소수값을 포함하는 제2 시퀀스를 출력한다. 이때 제1 회전인자 적용부(320)가 출력하는 제2 시퀀스는 종래의 푸리에 변환 장치(100)의 제1 회전인자 적용부(130)가 출력하는 제1 회전인자 적용 시퀀스에 대응한다.
제2 스테이지부(330)는 제1 회전인자 적용부(320)가 출력한 제2 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제3 시퀀스를 출력하고, 제1 저장부(331) 및 제1 연산부(333)를 포함한다. 이때 제1 저장부(331)는 4개의 복소수값을 저장할 수 있다. 또한 제2 스테이지부(330)가 출력하는 제3 시퀀스는 종래의 푸리에 변환 장치(100)의 제3 스테이지부(140)가 출력하는 제3 연산 시퀀스에 대응한다.
제3 스테이지부(340)는 제2 스테이지부(330)가 출력한 제3 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제4 시퀀스를 출력하고, 제2 저장부(341) 및 제2 연산부(343)를 포함한다. 이때 제2 저장부(341)는 2개의 복소수값을 저장할 수 있다. 또한 제3 스테이지부(340)가 출력하는 제4 시퀀스는 종래의 푸리에 변환 장치(100)의 제4 스테이지부(150)가 출력하는 제4 연산 시퀀스에 대응한다.
제2 회전인자 적용부(350)는 제3 스테이지부(340)가 출력한 제4 시퀀스에 포함된 32개의 복소수값에 대해 제2 회전인자를 적용하여 32개의 복소수값을 포함하 는 제5 시퀀스를 출력한다. 이때 제2 회전인자 적용부(350)가 출력하는 제5 시퀀스는 종래의 푸리에 변환 장치(100)의 제2 회전인자 적용부(160)가 출력하는 제2 회전인자 적용 시퀀스에 대응한다.
제4 스테이지부(360)는 제2 회전인자 적용부(350)가 출력한 제5 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제6 시퀀스를 출력하고, 제3 저장부(361) 및 제3 연산부(363)를 포함한다. 이때 제3 저장부(361)는 1개의 복소수값을 저장할 수 있다. 또한 제4 스테이지부(360)가 출력하는 제6 시퀀스는 종래의 푸리에 변환 장치(100)의 제5 스테이지부(170)가 출력하는 제5 연산 시퀀스에 대응한다.
다음은 도 7을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치의 제1 스테이지부에 대해 설명한다.
도 7은 본 발명의 실시예에 따른 푸리에 변환 장치의 제1 스테이지부의 구성을 도시한 도면이다.
도 7에 도시된 바와 같이, 본 발명의 실시예에 따른 푸리에 변환 장치(300)의 제1 스테이지부(310)는 입력 시퀀스에 포함된 32개의 복소수값을 입력된 순서에 따라 4개의 복소수값 그룹으로 분할하고, 검색 테이블을 바탕으로 4개의 복소수값 그룹으로부터 제1 시퀀스를 출력하며, 시퀀스 분배부(311), 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314), 제4 출력 제어부(315), 시퀀스 출력부(316) 및 테이블 저장부(317)를 포함한다.
시퀀스 분배부(311)는 입력 시퀀스에 포함된 32개의 복소수값을 입력된 순서 에 따라 4개의 복소수값 그룹으로 분할하고, 4개의 복소수값 그룹의 각각을 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 또는 제4 출력 제어부(315)로 전달한다.
만약 입력 시퀀스가 수학식 1을 따르는 경우, 시퀀스 분배부(311)는 입력 시퀀스에 포함된 32개의 복소수값을 수학식 2에 따라 4개의 복소수값 그룹(A(n), B(n), C(n) 및 D(n))으로 분할할 수 있고, 제1 복소수값 그룹(A(n)), 제2 복소수값 그룹(B(n)), 제3 복소수값 그룹(C(n)) 및 제4 복소수값 그룹(D(n))을 각각 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)로 전달할 수 있다.
이때 4개의 복소수값 그룹의 각각에 포함된 복소수값은 수학식 3을 따를 수 있고, a(n)r, a(n)i, b(n)r, b(n)i, c(n)r, c(n)i, d(n)r 및 d(n)i의 각각이 k1, k2, k3 또는 k4 중 어느 하나의 값을 가질 수 있다.
제1 출력 제어부(312)는 전달된 제1 복소수값 그룹(A(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 시퀀스 출력부(316)로 전달한다.
제2 출력 제어부(313)는 전달된 제2 복소수값 그룹(B(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 시퀀스 출력부(316)로 전달한다.
제3 출력 제어부(314)는 전달된 제3 복소수값 그룹(C(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 시퀀스 출력부(316)로 전달한다.
제4 출력 제어부(315)는 전달된 제4 복소수값 그룹(D(n))에 포함된 8개의 복 소수값을 입력된 순서에 따라 하나씩 시퀀스 출력부(316)로 전달한다.
시퀀스 출력부(316)는 테이블 저장부(317)에 저장된 검색 테이블을 바탕으로 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)의 각각으로부터 입력된 복소수값에 따라 제1 시퀀스를 출력한다. 이때 시퀀스 출력부(316)가 출력하는 제1 시퀀스는 수학식 7을 따를 수 있다.
테이블 저장부(311)는 복수 개의 검색 테이블을 저장한다. 이때 테이블 저장부(311)는 4개의 복소수갑 그룹별로 출력하는 복소수값의 실수값 및 허수값에 따른 제1 주소값(1~65536)을 포함하는 제1 검색 테이블을 저장할 수 있고, 제1 검색 테이블은 표 1을 따를 수 있다.
Figure 112008071837761-pat00008
또한 테이블 저장부(311)는 제1 주소값에 대응하는 제2 주소값(6~65536) 및 제2 주소값에 대응하는 복소수값의 출력값에 대한 제3 주소값(K1,1~K8,65536)을 포함하는 제2 검색 테이블을 저장할 수 있고, 제2 검색 테이블은 표 2를 따를 수 있다.
Figure 112008071837761-pat00009
또한 테이블 저장부(311)는 제3 주소값에 대응하는 출력값을 포함하는 제3 검색 테이블을 저장할 수 있다. 이때 제1 테이블에 포함된 k1, k2, k3 및 k4의 각각이 -3, -1, 1 또는 1 중 어느 하나의 값을 가지는 경우, 제3 검색 테이블은 표 3을 따를 수 있다.
Figure 112008071837761-pat00010
이때 제3 검색 테이블이 표 3을 따르는 경우, 표 2를 따르는 제2 검색 테이블의 제3 주소값(K1,1~K8,65536)은 1~23 중 어느 하나의 값을 가질 수 있다.
다음은 도 8을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치가 입력 시퀀스를 푸리에 변환하는 방법에 대해 설명한다.
도 8은 본 발명의 실시예에 따른 푸리에 변환 방법을 도시한 도면이다.
도 8에 도시된 바와 같이, 먼저, 푸리에 변환 장치(300)가 32개의 복소수값을 포함하는 입력 시퀀스를 수신한다(S100).
다음, 제1 스테이지부(310)가 미리 저장된 검색 테이블을 바탕으로 수신된 입력 시퀀스에 포함된 32개의 복소수값으로부터 32개의 복소수값을 포함하는 제1 시퀀스를 생성한다(S200).
이하에서는 도 9를 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치(300)의 제1 스테이지부(310)가 제1 시퀀스를 생성하는 방법에 대해 설명한다.
도 9는 본 발명의 실시예에 따른 제1 시퀀스 생성 방법을 도시한 도면이다.
도 9에 도시된 바와 같이, 먼저, 시퀀스 분배부(311)가 입력 시퀀스에 포함된 32개의 복소수값을 입력된 순서에 따라 4개의 복소수값 그룹으로 분할하여 4개의 복소수값 그룹을 4개의 출력 제어부(312, 313, 314, 315)로 각각 전달한다(S210).
이때 입력 시퀀스가 수학식 1을 따르고, 4개의 복소수값 그룹은 수학식 2에 따라 제1 복소수값 그룹(A(n)), 제2 복소수값 그룹(B(n)), 제3 복소수값 그룹(C(n)) 및 제4 복소수값 그룹(D(n))에 해당하며, 각 복소수값 그룹은 8개의 복소수값을 포함한다.
다음, 제1 출력 제어부(312)가 전달된 제1 복소수값 그룹(A(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 출력한다(S231).
이때, 제2 출력 제어부(313)가 전달된 제2 복소수값 그룹(B(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 출력한다(S233).
또한, 제3 출력 제어부(314)가 전달된 제3 복소수값 그룹(C(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 출력한다(S235).
또한, 제4 출력 제어부(315)가 전달된 제4 복소수값 그룹(D(n))에 포함된 8개의 복소수값을 입력된 순서에 따라 하나씩 출력한다(S237).
이후, 시퀀스 출력부(316)는 제1 복소수값 그룹(A(n))의 복소수값, 제2 복소수값 그룹(B(n))의 복소수값, 제3 복소수값 그룹(C(n))의 복소수값 및 제4 복소수값 그룹(D(n))의 복소수값을 바탕으로 표 1을 따르는 제1 검색 테이블 및 표 2를 따르는 제2 검색 테이블을 검색하여 제1 시퀀스에 포함된 32개의 복소수값의 각각에 대한 주소값 정보를 생성한다(S250).
다음, 시퀀스 출력부(316)는 표 3을 따르는 제3 검색 테이블을 바탕으로 생성된 주소값 정보에 대응하는 출력값을 검색하여 제1 시퀀스에 포함된 32개의 복소수값을 출력한다(S270).
다시 도 8을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치가 입력 시퀀스를 푸리에 변환하는 방법에 대해 설명한다.
이후, 제1 회전인자 적용부(320)가 제1 시퀀스에 포함된 32개의 복소수값에 대해 제1 회전인자를 적용하여 32개의 복소수값을 포함하는 제2 시퀀스를 생성한다(S300).
다음, 제2 스테이지부(330)가 제2 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제3 시퀀스를 생성한다(S400).
이후, 제3 스테이지부(340)가 제3 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제4 시퀀스를 생성한다(S500).
다음, 제2 회전인자 적용부(350)가 제4 시퀀스에 포함된 32개의 복소수값에 대해 제2 회전인자를 적용하여 32개의 복소수값을 포함하는 제5 시퀀스를 생성한다(S600).
이후, 제4 스테이지부(360)가 제5 시퀀스에 포함된 32개의 복소수값에 대해 버터플라이 연산을 수행하여 32개의 복소수값을 포함하는 제6 시퀀스를 생성한다(S700).
다음은 도 10을 참고하여 본 발명의 실시예에 따른 푸리에 변환 장치의 제1스테이지부가 입력 시퀀스를 바탕으로 제1 시퀀스를 생성하는 방법에 대해 설명한다.
도 10은 본 발명의 실시예에 따른 제1 스테이지부가 입력 시퀀스를 바탕으로 제1 시퀀스를 생성하는 방법을 도시한 도면이다.
도 10에 도시된 바와 같이, 본 발명의 실시예에 따른 제1 스테이지부(310)의 시퀀스 분배부(311)가 수신된 입력 시퀀스(x(m))를 4개의 복소수값 그룹 즉, 제1 복소수값 그룹(A(n)), 제2 복소수값 그룹(B(n)), 제3 복소수값 그룹(C(n)) 및 제4 복소수값 그룹(D(n))으로 분할한다. 이때 4개의 복소수값 그룹의 각각은 8개의 복소수값을 포함한다.
다음, 제1 스테이지부(310)의 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)의 각각이 제1 복소수값 그룹(A(n)), 제2 복소수값 그룹(B(n)), 제3 복소수값 그룹(C(n)) 및 제4 복소수값 그룹(D(n))의 출력을 제어하여 0~7 클럭(Clock) 사이에 A(n), B(n), C(n) 및 D(n)을 출력하면, 제1 스테이지부(310)의 시퀀스 출력부(316)가 테이블 저장부(317)에 저장된 검색 테이블을 바탕으로 각 클럭에 출력되는 A(n), B(n), C(n) 및 D(n)에 따라 A(0)″, A(1)″, … , A(7)″를 출력한다.
이후, 제1 스테이지부(310)의 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)의 각각이 8~15 클럭(Clock) 사이에 A(n), B(n), C(n) 및 D(n)을 출력하면, 제1 스테이지부(310)의 시퀀스 출력부(316)가 테이블 저장부(317)에 저장된 검색 테이블을 바탕으로 각 클럭에 출력되는 A(n), B(n), C(n) 및 D(n)에 따라 B(0)″, B(1)″, … , B(7)″를 출력한다.
다음, 제1 스테이지부(310)의 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)의 각각이 16~23 클럭(Clock) 사이에 A(n), B(n), C(n) 및 D(n)을 출력하면, 제1 스테이지부(310)의 시퀀스 출력부(316)가 테이블 저장부(317)에 저장된 검색 테이블을 바탕으로 각 클럭에 출력되는 A(n), B(n), C(n) 및 D(n)에 따라 C(0)″, C(1)″, … , C(7)″를 출력한다.
이후, 제1 스테이지부(310)의 제1 출력 제어부(312), 제2 출력 제어부(313), 제3 출력 제어부(314) 및 제4 출력 제어부(315)의 각각이 24~31 클럭(Clock) 사이에 A(n), B(n), C(n) 및 D(n)을 출력하면, 제1 스테이지부(310)의 시퀀스 출력부(316)가 테이블 저장부(317)에 저장된 검색 테이블을 바탕으로 각 클럭에 출력되는 A(n), B(n), C(n) 및 D(n)에 따라 D(0)″, D(1)″, … , D(7)″를 출력한다.
이와 같이, 제1 스테이지부(310)는 검색 테이블을 바탕으로 입력 시퀀스(x(m))로부터 제1 시퀀스(x(m)″)를 출력한다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
도 1은 종래의 푸리에 변환 장치를 도시한 도면이다.
도 2는 종래의 푸리에 변환 장치의 버터플라이 연산 방법을 도시한 도면이다.
도 3은 종래의 푸리에 변환 장치에 입력되는 입력 시퀀스의 성상도를 도시한 도면이다.
도 4는 종래의 푸리에 변환 장치의 제1 스테이지부가 출력하는 제1 연산 시퀀스의 성상도를 도시한 도면이다.
도 5는 종래의 푸리에 변환 장치의 제2 스테이지부가 출력하는 제2 연산 시퀀스의 성상도를 도시한 도면이다.
도 6은 본 발명의 실시예에 따른 푸리에 변환 장치의 구성을 도시한 도면이다.
도 7은 본 발명의 실시예에 따른 푸리에 변환 장치의 제1 스테이지부의 구성을 도시한 도면이다.
도 8은 본 발명의 실시예에 따른 푸리에 변환 방법을 도시한 도면이다.
도 9는 본 발명의 실시예에 따른 제1 시퀀스 생성 방법을 도시한 도면이다.
도 10은 본 발명의 실시예에 따른 제1 스테이지부가 입력 시퀀스를 바탕으로 제1 시퀀스를 생성하는 방법을 도시한 도면이다.

Claims (8)

  1. 2n개의 복소수값을 포함하는 입력 시퀀스를 푸리에 변환하는 방법에 있어서,
    상기 입력 시퀀스로부터 출력되는 2n개의 복소수 값에 기초하여 상기 2n개의 복소수 값에 각각 대응하는 복수의 주소 값 정보를 검색하는 단계,
    주소 값에 해당하는 출력 값을 저장하고 있는 검색 테이블로부터 상기 복수의 주소 값 정보에 각각 대응하는 복수의 출력 값을 검색하는 단계,
    상기 복수의 출력 값에 의해 결정되는 2n개의 복소수 값을 포함하는 제1 시퀀스를 출력하는 단계, 그리고
    상기 제1 시퀀스를 바탕으로 (n-m)번의 버터플라이 연산을 수행하여 2n개의 복소수값을 포함하는 출력 시퀀스를 생성하는 단계를 포함하고,
    상기 m은 상기 n보다 작고, 1보다 큰 양의 정수인 푸리에 변환 방법.
  2. 제1항에 있어서,
    상기 주소 값 정보를 검색하는 단계는
    상기 입력 시퀀스를 복수의 복소수 값 그룹으로 분할하는 단계,
    상기 복수의 복소수 값 그룹에서 상기 2n개의 복소수 값을 출력하는 단계, 그리고
    각 복소수 값 그룹에서 출력되는 복소수 값에 대응하는 주소 값 정보를 검색하는 단계
    를 포함하는 푸리에 변환 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 주소 값 정보를 검색하는 단계는, 각 복소수 값의 실수 값과 허수 값에 각각 대응하는 상기 주소 값 정보를 검색하는 단계를 포함하는 푸리에 변환 방법.
  4. 2n개의 복소수값을 포함하는 입력 시퀀스를 푸리에 변환하는 장치에 있어서,
    상기 입력 시퀀스로부터 출력되는 2n개의 복소수 값에 기초하여 상기 2n개의 복소수 값에 각각 대응하는 복수의 주소 값 정보를 검색하고, 주소 값에 해당하는 출력 값을 저장하고 있는 검색 테이블로부터 상기 복수의 주소 값 정보에 각각 대응하는 복수의 출력 값을 검색하며, 상기 복수의 출력 값에 의해 결정되는 2n개의 복소수 값을 포함하는 제1 시퀀스를 출력하는 제1 스테이지부, 그리고
    상기 제1 시퀀스를 바탕으로 (n-m)번 버터플라이 연산을 수행하여 출력 시퀀스를 출력하는 복수의 제2 스테이지부를 포함하고,
    상기 n 및 상기 m은 양의 정수인 푸리에 변환 장치.
  5. 제4항에 있어서,
    상기 제1 스테이지부는
    상기 검색 테이블을 저장하고 있는 테이블 저장부,
    상기 입력 시퀀스에 포함된 2n개의 복소수 값을 미리 정해진 순서에 따라 복수의 복소수 값 그룹으로 분할하는 시퀀스 분배부, 그리고
    상기 복수의 복소수 값 그룹에서 출력되는 복소수 값에 대응하는 주소 값 정보를 검색하고, 상기 검색 테이블에서 상기 주소 값 정보에 대응하는 복수의 출력 값을 각각 검색하여 상기 제1 시퀀스를 출력하는 시퀀스 출력부
    를 포함하는 푸리에 변환 장치.
  6. 제5항에 있어서,
    상기 제1 스테이지부는
    상기 복수의 복소수 값 그룹에 각각 대응하는 복수의 출력 제어부를 더 포함하는 푸리에 변환 장치.
  7. 제6항에 있어서,
    각 출력 제어부는
    상기 시퀀스 분배부로부터 상기 복수의 복소수 값 그룹 중 어느 하나의 복소수 값 그룹을 수신하고, 상기 복소수 값 그룹에 포함된 복소수 값을 클럭에 응답하여서 하나씩 출력하는 푸리에 변환 장치.
  8. 제4항에 있어서,
    각 제2 스테이지부는
    상기 각 제2 스테이지부에 입력되는 복수의 복소수 값 중 적어도 하나의 복소수 값을 저장하는 저장부, 그리고
    상기 저장부에 저장된 복소수 값 및 상기 각 제2 스테이지부에 입력되는 복수의 복소수 값을 바탕으로 버터플라이 연산을 수행하는 연산부
    를 포함하는 푸리에 변환 장치.
KR1020080101275A 2008-10-15 2008-10-15 푸리에 변환 장치 및 방법 KR101002771B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080101275A KR101002771B1 (ko) 2008-10-15 2008-10-15 푸리에 변환 장치 및 방법
US12/536,240 US20100094920A1 (en) 2008-10-15 2009-08-05 Device and method for executing fourier transform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080101275A KR101002771B1 (ko) 2008-10-15 2008-10-15 푸리에 변환 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20100042133A KR20100042133A (ko) 2010-04-23
KR101002771B1 true KR101002771B1 (ko) 2010-12-21

Family

ID=42099868

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080101275A KR101002771B1 (ko) 2008-10-15 2008-10-15 푸리에 변환 장치 및 방법

Country Status (2)

Country Link
US (1) US20100094920A1 (ko)
KR (1) KR101002771B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113569190A (zh) * 2021-07-02 2021-10-29 星思连接(上海)半导体有限公司 一种快速傅立叶变换旋转因子计算系统和方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070288542A1 (en) 2006-04-28 2007-12-13 Qualcomm Incorporated Multi-port mixed-radix fft

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6334219B1 (en) * 1994-09-26 2001-12-25 Adc Telecommunications Inc. Channel selection for a hybrid fiber coax network
KR100598075B1 (ko) * 2004-11-03 2006-07-10 한국전자통신연구원 Ifft/fft 프로세서에 있어서 룩업테이블을 이용한데이터변환 방법
JP4295777B2 (ja) * 2006-09-26 2009-07-15 Okiセミコンダクタ株式会社 高速フーリエ変換回路及び高速フーリエ変換方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070288542A1 (en) 2006-04-28 2007-12-13 Qualcomm Incorporated Multi-port mixed-radix fft

Also Published As

Publication number Publication date
KR20100042133A (ko) 2010-04-23
US20100094920A1 (en) 2010-04-15

Similar Documents

Publication Publication Date Title
Chen et al. An indexed-scaling pipelined FFT processor for OFDM-based WPAN applications
US7315580B2 (en) Method and apparatus for high-order PAPR reduction of an OFDM signal
US8917588B2 (en) Fast Fourier transform and inverse fast Fourier transform (FFT/IFFT) operating core
Chen Application of quantum-inspired evolutionary algorithm to reduce PAPR of an OFDM signal using partial transmit sequences technique
WO2005086020A2 (en) Fast fourier transform circuit having partitioned memory for minimal latency during in-place computation
Sudha et al. Low complexity PAPR reduction in SLM-OFDM system using time domain sequence separation
KR20040073156A (ko) 직교주파수분할다중 시스템의 첨두대평균 전력비 저감을위한 장치 및 방법
Singh et al. Partial transmit sequence optimization using improved harmony search algorithm for PAPR reduction in OFDM
TW201025955A (en) Transmitter and the method therefor
Hou et al. Multi-objective quantum inspired evolutionary SLM scheme for PAPR reduction in multi-carrier modulation
KR101002771B1 (ko) 푸리에 변환 장치 및 방법
Cheng et al. An artificial bee colony-based SLM scheme for PAPR reduction in OFDM systems
KR100598075B1 (ko) Ifft/fft 프로세서에 있어서 룩업테이블을 이용한데이터변환 방법
Park et al. Low-complexity tone reservation for PAPR reduction in OFDM communication systems
Wang et al. Comb waveform optimisation with low peak‐to‐average power ratio via alternating projection
Qian et al. Dynamic selected mapping for OFDM
Salehinejad et al. PAPR reduction of OFDM signals by novel global harmony search in PTS scheme
Chen et al. A low-complexity scheme to reduce the PAPR of an OFDM signal using sign-selection algorithms
KR20180081201A (ko) 필터뱅크 기반 다중 반송파 시스템에서 시간 영역의 지역성을 고려한 필터 디자인
Deepa et al. Performance evaluation of a low complexity row-column transform approach for SLM based OFDM transmission system
KR100874006B1 (ko) Dft 장치 및 그 제어 방법
CN114422315B (zh) 一种超高吞吐量ifft/fft调制解调方法
Pandey et al. Computational complexity reduction of OFDM signals by PTS with alternate optimised grouping phase weighting method
Tiwari et al. FPGA implementation of FFT blocks for OFDM
Wei et al. N‐PTS scheme with low complexity for PAPR reduction

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

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee