CN101937332B - 基于基-24算法的多路fft处理器中乘法器的复用方法 - Google Patents

基于基-24算法的多路fft处理器中乘法器的复用方法 Download PDF

Info

Publication number
CN101937332B
CN101937332B CN201010257622.4A CN201010257622A CN101937332B CN 101937332 B CN101937332 B CN 101937332B CN 201010257622 A CN201010257622 A CN 201010257622A CN 101937332 B CN101937332 B CN 101937332B
Authority
CN
China
Prior art keywords
algorithm
fft
fft processor
base
sigma
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CN201010257622.4A
Other languages
English (en)
Other versions
CN101937332A (zh
Inventor
周晓方
汪文义
王琳凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN201010257622.4A priority Critical patent/CN101937332B/zh
Publication of CN101937332A publication Critical patent/CN101937332A/zh
Application granted granted Critical
Publication of CN101937332B publication Critical patent/CN101937332B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明属于数字信号处理集成电路设计技术领域,具体为基于基24算法的多路FFT处理器中乘法器的复用方法。本发明提出了一种改进的基24频域抽取FFT算法,减少FFT处理器设计中通用乘法器的数目,并且使基于此算法设计的单路FFT处理器中蝶形运算的常复系数乘法器利用率低于50%,从而提出多路FFT处理器中常复系数乘法器的复用方法及相应的FFT处理器结构。本发明实现不同路中常复系数乘法器的复用,减少了FFT处理器的乘法器数目,同时维持吞吐率不变。

Description

基于基-24算法的多路FFT处理器中乘法器的复用方法
技术领域
本发明属于数字信号处理集成电路设计技术领域,具体涉及设计单路FFT处理器时常复系数乘法器利用率都低于50%的基-24算法,并实现对基于此算法的多路FFT处理器中常复系数乘法器的复用方法。 
背景技术
离散傅立叶变换(DFT)是数字信号处理中的重要模块,被广泛应用于数字信号处理的各个领域,但受DFT计算复杂度的限制,DFT在实际应用中受到很大的限制。自Cooly和Turkey提出基-2FFT算法后[1],使DFT的计算复杂度从N2降低到(N/2)log2N,而且该算法具有良好的规整性,便于VLSI实现,使得FFT得到广泛应用。He和Torksen在1998年提出了基-22和基-23FFT算法[2],减少了计算复杂度,又维持了基-2FFT算法的规则性,被认为是实现FFT处理器的最优算法之一。 
在FFT处理器设计中,流水线结构可以以适当的硬件规模来获得较高的吞吐率,是目前FFT处理器中普遍采用的结构,其要求FFT算法具有规整性,[2][3]等目前大多数对FFT的研究都基于流水线结构来设计FFT处理器。FFT的流水线结构主要可被划分为两类,全并行流水线结构(MDC)和单路数据反馈结构(SDF),前者提供高吞吐率,但存储单元利用率低,存储单元和硬件规模较大,后者吞吐率相对低些,但提高了存储单元利用率,减少了存储单元,硬件规模小。本发明采用SDF结构以节省面积。 
随着传输信息量的不断增加,多天线正交频分复用技术日益成为无线通信系统中的关键技术,而多路FFT处理器是其中的重要模块,吞吐率高但是硬件规模很大。为了进一步降低计算复杂度,[4]中根据基-23DIF FFT算法[2]推导出一种基-24算法,但用于设计单路FFT处理器时蝶形运算(BF)II后的常复系数乘法器利用率高于50%,在设计多路FFT处理器时若采用[4]中基-24算法,劂常复系数乘法器不能在维持吞吐率不变的同时实现复用。针对上述问题,本发明在此根据基-23算法推导一种新型的基-24算法,基于此算法设计单路FFT处理器时可得到BF II和BFIII后的常复系数乘法器利用率低于50%,为设计多路基-24FFT处理器时维持吞吐率不变,同时复用常复系数乘法器以减少硬件规模提供了可能,在此基础上本发明提出了一种多路基-24FFT处理器结构,通过调整不同路输入和中间数据的顺序关系,错开常复系数乘法器,实现复用常复系数乘法器的复用,可以减少乘法器数目且维持吞吐率不变。 
[1]J.W.Cooley and J.Tukey,“An algorithm for the machine calculation of complex Fourier series,”Math.Comput.,1965,vo1.19,pp.297-301. 
[2]Shousheng He,Mars Torkelson.Designing pipeline FFT processor for OFDM (de)modulation.Pisa:URSI International Symposium on Signals,Systems,and Electronics.1998,257-262. 
[3]Yu-Wei Lin,Wan-Chun Liao and Chen-Yi Lee,a MRMDF FFT processor for MIMO OFDM Application.Asian Solid-State Circuits Conference.2005,225-228. 
[4]Jung-yeol Oh,Myoung-seob Lim.Fast fourier transform processor based on low-power and area-efficient algorithm.IEEE Asia-Pacific Conference on Advanced System Integrated Circuits.2004,198-201. 
发明内容
为了进一步提高处理器中运算单元的利用率,降低硬件复杂度,本发明提出一种基-24频域抽取(DIF)FFT算法,以减少FFT设计中通用乘法器的数目,并采用SDF结构,通过调整输入和中间数据的顺序关系,实现常复系数乘法器的复用,减少FFT处理器的乘法器数目,同时维持吞吐率不变。 
本发明提出的基-24DIF FFT分解算法,具体过程如下: 
对于N点(N是2的幂)序列x(n),其离散傅立叶变换定义为: 
X ( k ) = Σ n = 0 N - 1 x ( n ) W N nk , k = 0,1,2 . . . N - 1 - - - ( 1 )
其中,x(n)和X(k)是复数序列,旋转因子 W N nk = e - j ( 2 πnk / N ) = cos ( 2 πnk / N ) - j sin ( 2 πnk / N ) .
n = < N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 > N , n 1 , n 2 , n 3 , n 4 = 0,1 ; n 5 = 0 . . . N 16 - 1
k = < k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 > N , k 1 , k 2 , k 3 , k 4 = 0,1 ; k 5 = 0 . . . N 16 - 1
将上式代入(1)中有: 
X ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = &Sigma; n 5 = 0 N 16 - 1 &Sigma; n 4 = 0 1 &Sigma; n 3 = 0 1 &Sigma; n 2 = 0 1 &Sigma; n 1 = 0 1 x ( N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) W N nk - - - ( 2 )
其中旋转因子
Figure GSB0000120837960000026
可表示为: 
W N nk = W N ( N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = W N N 2 n 1 k 1 W N N 4 n 2 ( k 1 + 2 k 2 ) W N N 8 n 3 ( k 1 + 2 k 2 + 4 k 3 ) * W N N 16 n 4 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = ( - 1 ) n 1 k 2 ( - j ) n 2 ( k 1 + 2 k 2 ) W N N 8 n 3 ( k 1 + 2 k 2 + 4 k 3 ) * W N N 16 n 4 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N 16 n 5 k 5 - - - ( 3 )
将(3)代入(2)式中,并简化可得到一组长度为N/16DFT的集合如下: 
X ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = &Sigma; n 5 = 0 N 16 - 1 [ Q N 16 ( n 5 , k 1 , k 2 , k 3 , k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) ] W N 16 n 5 k 5
其中,令Q(n5,k1,k2,k3,k4)为第四级蝶形运算,表达式为: 
其中T(n5,k1,k2,k3)为第三级蝶形运算,表达式为: 
Figure GSB0000120837960000034
其中H(n5,k1,k2)为第二级蝶形运算,表达式为: 
Figure GSB0000120837960000035
其中B(n5,k1)为第一级蝶形运算,表达式为: 
B N 2 ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 , k 1 ) = x ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) + ( - 1 ) k 1 x ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 + N 2 ) - - - ( 7 ) .
本发明提出的新型的基-24算法计算复杂度比基-23算法小,且具有基-2算法的规则性,适合于流水线结构设计,图1表示了N=32的基于该算法的FFT信号流程图,由式(4)、(5)和(6)可知,改进的基-24算法中有常复系数-j、W8 1、W16 1、W16 3及其乘积组合,可见图1。-j乘法运算相当于实部虚部互换和符号位取反操作,可以合并到蝶形运算中且不增加硬件消耗;将实现式(5),式(6)中的常复系数乘法运算的两个乘法器,分别记为常复系数乘法器1和常复系数乘法器2,前者只包含W8 1乘法运算,如图1中间第二列所示;后者包含W8 1、W16 1、W16 3乘法运算,如图1中间第三列所示。 
由公式和图1可知,基于改进基-24算法设计的单路FFT处理器中常复系数乘法器利用率低于50%,为多路FFT处理器中常复系数乘法器的复用提供了可行方案。具体方法如下:为了充分利用乘法器,将m路FFT处理器输入数据均分为上下两组,并将两组输入数据分别以正序和逆序数据并行输入,在每一级的蝶形运算单元中,都是先将两数的加法结果先输出到下一级运算中,而减法结果被暂时存储在存储单元中,本发明采用SDF结构,所以减法结果在N/2L(L表示第L级蝶形运算)个周期后输出到下一级运算。两路数据的32点FFT信号流程图如图2所示。 
本发明根据基-23算法提出了一种新型的基-24算法,基于此算法设计单路FFT处理器时可得到BF II和BFIII后的常复系数乘法器利用率低于50%,为设计多路基-24FFT处理器时维持吞吐率不变,同时复用常复系数乘法器以减少硬件规模提供了可能,在此基础上本发明提出了一种多路FFT处理器中常复系数乘法器的复用方法,以及相应的多路基-24FFT处理器结构,即通过调整不同路输入和中间数据的顺序关系,错开常复系数乘法器,实现复用常复系数乘法器的复用,可以减少乘法器数目且维持吞吐率不变。 
附图说明
图1是N=32点的基-24DIF FFT信号流程图。 
图2是调整数据顺序的两路32点基-24DIF FFT信号流程图。 
图3是采用本发明的两路256点FFT处理器的整体结构。 
具体实施方式
本发明中的多路FFT处理器是上文中的基于基-24算法,为实现多路FFT处理器的常复系数乘法器的复用提供了可能,并且采用SDF结构来实现,通过调整不同路数据的输入数据顺序和中间数据顺序来错开常复系数乘法器,实现常复系数乘法器的复用,其具体实施步骤如下: 
(1)本发明是针对含有基-24算法FFT的设计,设计多路N(N≥16)点FFT处理器时,首先根据本发明上文中提到的DIF基-24算法对FFT逐步进行分解,可根据表达式画出基于基-24算法的DIF FFT的信号流程图,类似于图1。 
(2)将多路FFT均分成上下两组,则对应的数据也分为两组。 
(3)将上下两组输入数据分别以正逆序输入,可以以两路32点FFT为例画出相应的信号流程图,如图2所示,上行数据输入顺序依次是xu(0)、xu(1)……xu(31),下行数据输入顺序依次是xd(31)、xd(30)……xd(0),数据FFT中间蝶形运算得到两个加减结果,加法结果立即被输出到下一级运算中,减法结果在N/2L(L表示第L级蝶形运算)个时钟周期后输出到下一级运算。 
(4)采用步骤(2)、(3)方法错开了常复系数乘法器,实现常复系数乘法器的复用。可以图2为例,中间列的数字表示该级数据输出到下一级运算的相对时间,如中间第一列横线上的“0”表示该级第一个数据输出到下一级运算,“1”表示第二个,以此类推数据依次输出到下一级运算中。由图2可知,通过调整其中一路数据的顺序,中间列的第二和第三列的常复系数乘法运算在时间上没有冲突,以第二列为例,上行数据在相对时间“20”到“23”和“28”到“31”乘以常复系数W8 1,下行数据在相对时间“16”到“19”和“24”到“27”乘以常复系数W8 1,所以可以实现对多路基-24FFT处理器结构中常复系数乘法器的 复用,减少了硬件规模,同时维持吞吐率不变。 
(5)根据步骤(4)中得到的多路FFT信号流程图可映射得到多路FFT处理器的整体结构,以两路256点FFT处理器为例,其整体结构如图3所示,其中Mem表示存储单元,蝶形运算单元1不包含-j乘法运算,蝶形运算单元2是包含-j乘法运算,常复系数乘法器1只包含W8 1乘法运算,常复系数乘法器2包含W8 1、W16 1、W16 3乘法运算,通用复数乘法器是实现旋转因子TF的乘法运算。本发明实现了本发明对常复系数乘法器的复用,同时维持吞吐率不变。基于映射得到的整体结构就可以去具体实现FFT多路处理器。 

Claims (1)

1.一种基于改进基-24算法的多路FFT处理器中乘法器的复用方法,FFT处理器采用SDF结构,其特征具体步骤如下:
(1)针对含有基-24算法FFT的设计,设计多路N点FFT处理器时,首先根据DIF基-24算法对FFT逐步进行分解,N≥16;
(2)将m路FFT处理器输入数据均分为上下两组,并将两组输入数据分别以正序和逆序数据并行输入:
(3)在每一级的蝶形运算单元中,都是将两数的加法结果先输出到下一级运算中,而减法结果被暂时存储在存储单元中,减法结果在N/2L个周期后输出到下一级运算,L表示第L级蝶形运算;
其中,所述改进的基-24算法的步骤如下:
对于N点序列x(n),其离散傅立叶变换定义为:
X ( k ) = &Sigma; n = 0 N - 1 x ( n ) W N nk , k = 0,1,2 . . . N - 1 - - - ( 1 )
其中,N是2的幂,x(n)和X(k)是复数序列,旋转因子:
W N nk = e - j ( 2 &pi;nk / N ) = cos ( 2 &pi;nk / N ) - j sin ( 2 &pi;nk / N ) ;
n = < N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 > N , n 1 , n 2 , n 3 , n 4 = 0,1 ; n 5 = 0 . . . N 16 - 1
k = < k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 > N , k 1 , k 2 , k 3 , k 4 = 0,1 ; k 5 = 0 . . . N 16 - 1
将上式代入(1)中有:
X ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = &Sigma; n 5 = 0 N 16 - 1 &Sigma; n 4 = 0 1 &Sigma; n 3 = 0 1 &Sigma; n 2 = 0 1 &Sigma; n 1 = 0 1 x ( N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) W N nk - - - ( 2 )
其中旋转因子
Figure FSB0000120837950000016
表示为:
W N nk = W N ( N 2 n 1 + N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = W N N 2 n 1 k 1 W N N 4 n 2 ( k 1 + 2 k 2 ) W N N 8 n 3 ( k 1 + 2 k 2 + 4 k 3 ) * W N N 16 n 4 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = ( - 1 ) n 1 k 2 ( - j ) n 2 ( k 1 + 2 k 2 ) W N N 8 n 3 ( k 1 + 2 k 2 + 4 k 3 ) * W N N 16 n 4 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) W N 16 n 5 k 5 - - - ( 3 )
将(3)代入(2)式中,并简化得到一组长度为N/16DFT的集合如下:
X ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 + 16 k 5 ) = &Sigma; n 5 = 0 N 16 - 1 [ Q N 16 ( n 5 , k 1 , k 2 , k 3 , k 4 ) W N n 5 ( k 1 + 2 k 2 + 4 k 3 + 8 k 4 ) ] W N 16 n 5 k 5
其中,令
Figure FSB0000120837950000019
Q(n5,k1,k2,k3,k4)为第四级蝶形运算,表达式为:
Figure FSB0000120837950000021
其中T(n5,k1,k2,k3)为第三级蝶形运算,表达式为:
Figure FSB0000120837950000022
其中H(n5,k1,k2)为第二级蝶形运算,表达式为:
Figure FSB0000120837950000023
其中B(n5,k1)为第一级蝶形运算,表达式为:
B N 2 ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 , k 1 ) = x ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 ) + ( - 1 ) k 1 x ( N 4 n 2 + N 8 n 3 + N 16 n 4 + n 5 + N 2 ) - - - ( 7 ) .
CN201010257622.4A 2010-08-19 2010-08-19 基于基-24算法的多路fft处理器中乘法器的复用方法 Expired - Fee Related CN101937332B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010257622.4A CN101937332B (zh) 2010-08-19 2010-08-19 基于基-24算法的多路fft处理器中乘法器的复用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010257622.4A CN101937332B (zh) 2010-08-19 2010-08-19 基于基-24算法的多路fft处理器中乘法器的复用方法

Publications (2)

Publication Number Publication Date
CN101937332A CN101937332A (zh) 2011-01-05
CN101937332B true CN101937332B (zh) 2014-04-02

Family

ID=43390681

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010257622.4A Expired - Fee Related CN101937332B (zh) 2010-08-19 2010-08-19 基于基-24算法的多路fft处理器中乘法器的复用方法

Country Status (1)

Country Link
CN (1) CN101937332B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103631759B (zh) * 2012-08-22 2018-02-13 中兴通讯股份有限公司 一种实现快速傅立叶变换/离散傅立叶变换的装置及方法
CN103810146B (zh) * 2014-01-26 2017-01-11 北京理工大学 一种逆序输入顺序输出的fft结构设计方法
CN108628805A (zh) * 2018-04-02 2018-10-09 郑州云海信息技术有限公司 一种低功耗的蝶形运算单元及处理方法、fft处理器
CN113378108B (zh) 2020-02-25 2023-04-18 珠海市煊扬科技有限公司 音频处理装置的快速傅立叶变换电路
CN113591022A (zh) * 2021-07-02 2021-11-02 星思连接(上海)半导体有限公司 一种可分解数据的读写调度处理方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154215A (zh) * 2006-09-27 2008-04-02 上海杰得微电子有限公司 基23频域取样快速傅立叶变换的方法与硬件结构

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040059766A1 (en) * 2002-09-23 2004-03-25 Yeou-Min Yeh Pipelined low complexity FFT/IFFT processor
CN100592285C (zh) * 2006-12-30 2010-02-24 苏州市盛信光纤传感科技有限公司 一种信号处理方法、装置和系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101154215A (zh) * 2006-09-27 2008-04-02 上海杰得微电子有限公司 基23频域取样快速傅立叶变换的方法与硬件结构

Also Published As

Publication number Publication date
CN101937332A (zh) 2011-01-05

Similar Documents

Publication Publication Date Title
He et al. Designing pipeline FFT processor for OFDM (de) modulation
Yu et al. A low-power 64-point pipeline FFT/IFFT processor for OFDM applications
Ayinala et al. FFT architectures for real-valued signals based on radix-$2^{3} $ and radix-$2^{4} $ algorithms
Saeed et al. Efficient FPGA implementation of FFT/IFFT processor
CN101937332B (zh) 基于基-24算法的多路fft处理器中乘法器的复用方法
Jiang An area-efficient FFT architecture for OFDM digital video broadcasting
US7818360B2 (en) Processor and method for performing a fast fourier transform and/or an inverse fast fourier transform of a complex input signal
Kim et al. High speed eight-parallel mixed-radix FFT processor for OFDM systems
Arioua et al. VHDL implementation of an optimized 8-point FFT/IFFT processor in pipeline architecture for OFDM systems
Liu et al. Design of low-power, 1GS/s throughput FFT processor for MIMO-OFDM UWB communication system
Kang et al. Low complexity multi-point 4-channel FFT processor for IEEE 802.11 n MIMO-OFDM WLAN system
CN103020015A (zh) 点数为非2次幂的离散傅里叶变换快速计算的实现方法
Abbas et al. An FPGA implementation and performance analysis between Radix-2 and Radix-4 of 4096 point FFT
Kim et al. Novel shared multiplier scheduling scheme for area-efficient FFT/IFFT processors
Cho et al. A Low‐Complexity 128‐Point Mixed‐Radix FFT Processor for MB‐OFDM UWB Systems
Langemeyer et al. A FPGA architecture for real-time processing of variable-length FFTs
Srinivasaiah et al. Low power and area efficient FFT architecture through decomposition technique
CN104657334A (zh) 一种快速傅里叶变化的基2-4-8混合基蝶算器及其应用
Lee et al. Modified sdf architecture for mixed dif/dit fft
Kim et al. New parallel MDC FFT processor with efiicient scheduling scheme
CN100585583C (zh) 3780点离散傅利叶变换处理器
Kaur et al. Design of 32-point mixed radix FFT processor using CSD multiplier
Lin et al. Expandable MDC-based FFT architecture and its generator for high-performance applications
Nguyen et al. High-throughput low-complexity mixed-radix FFT processor using a dual-path shared complex constant multiplier
Yang et al. A efficient design of a real-time FFT architecture based on FPGA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140402

Termination date: 20160819

CF01 Termination of patent right due to non-payment of annual fee