一种FFT实现装置和方法制造方法及图纸

技术编号:10867089 阅读:111 留言:0更新日期:2015-01-07 08:12
本申请公开了一种FFT实现装置和方法,所述装置包括支路内FFT计算模块、数据旋转模块和支路间FFT计算模块,分别用于对以P条支路并行输入的N点序列x进行支路内FFT计算、数据旋转、支路间FFT计算,以得到通过P条支路并行输出的序列x的FFT运算结果。其中,支路内FFT计算模块包括P/2个基于流水线结构的计算单元和P个数据排序单元,计算单元与数据排序单元以一对二的映射关系相连,且由计算单元及两个数据排序单元组成的模块结构同时处理两条输入支路的数据流:采用DIF FFT处理一条正向输入的数据流、采用DIT FFT处理一条逆向输入的数据流。可见,本发明专利技术实现了对基于流水线结构的计算单元的复用,节约了硬件资源的开销。

【技术实现步骤摘要】
一种FFT实现装置和方法
本专利技术属于信号与信息处理
,尤其涉及一种FFT(FastFourierTransform,快速傅里叶变换)实现装置和方法。
技术介绍
FFT作为DFT(DiscreteFourierTransform,离散傅里叶变换)的高效计算方法,在数字信号处理领域发挥着重要作用,用于实现OFDM(OrthogonalFrequencyDivisionMultiplexing,正交频分复用)信号的调制和解调。目前,FFT的硬件实现主要采用并行流水线结构来满足实际系统对吞吐量和处理能力的需求。典型的并行流水线结构包括MDC(MultipathDelayCommutator,多路延迟换向)前馈方案和MDF(MultipathDelayFeedback,多路延迟反馈)反馈方案。针对需进行FFT运算的N点序列x,MDC前馈结构和MDF反馈结构均需要采用P个基于流水线结构的计算单元对x的P条并行输入支路进行支路内FFT并行计算,硬件资源开销较大。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种FFT实现装置和方法,以克服现有FFT并行流水线结构实现方案的硬件资源开销较大的问题,进而为高质量的通信服务提供支持。为此,本专利技术公开如下技术方案:一种快速傅里叶变换FFT实现装置,包括支路内FFT计算模块、数据旋转模块和支路间FFT计算模块,其中:所述支路内FFT计算模块,用于对N点序列x的P条输入支路并行执行S点FFT变换,以得到ΤSX,其中,S=N/P,TS为S点DFT变换矩阵,X表示S×P维的输入数据矩阵,所包含的P列与序列x的P条输入支路一一对应,N≥P且N,P为不小于1的自然数;其中,所述支路内FFT计算模块包括个基于流水线结构的计算单元以及P个数据排序单元,所述计算单元与所述数据排序单元之间以一对二的映射关系相连,每个由所述计算单元与相应的两个数据排序单元组成的模块结构用于采用以下方式同时处理两条输入支路的数据流:对于正向输入的数据流,先对其进行S点的按频率抽取DIFFFT运算,再将运算结果转换为倒位序形式;对于逆向输入的数据流,先将其转换为倒位序形式,再对倒位序形式的数据流进行S点的按时间抽取DITFFT运算;所述数据旋转模块,用于采用预先设定的N个旋转因子对所述支路内FFT计算模块的各输出数据进行支路间并行的加权操作,实现数据旋转,以得到其中和分别表示S维和P维的对角矩阵,D为由所述N个旋转因子构成的S×P维矩阵,表示两个矩阵的Hadamard积;所述支路间FFT计算模块,用于对的各行进行P点FFT变换,以得到通过P条支路并行输出的序列x的FFT变换结果其中TP为P点DFT变换矩阵,Y表示S×P维的FFT输出矩阵,该矩阵的P列与所述的P条输出支路一一对应。上述装置,优选的,所述旋转因子为e-j2πuv/N,其中,u∈{0,1,…,P-1},v∈{0,1,…,S-1}。上述装置,优选的,所述基于流水线结构的计算单元包括级依次相连接的计算子单元,计算子单元包括复数加法器、复数乘法器、复移位寄存器组与数据选择器。上述装置,优选的,在每条支路数据流对所述计算子单元中乘法器的利用率高于50%时,所述计算子单元采用TypeⅠ结构对其包括的复数加法器进行复用,所述TypeⅠ结构包括一个Radix-2蝶形运算单元、两组复移位寄存器以及六个数据选择器,其中第k(k∈{1,…,log2(N/P)})级计算子单元所对应的复移位寄存器长度为所述Radix-2蝶形运算单元包括一个复数加法器和一个复数减法器;在TypeⅠ结构内部,每组移位寄存器的输入端口各与一个数据选择器相连,用于切换不同的数据流送入移位寄存器进行缓存;两组移位寄存器的输出端口以及计算子单元的两个数据输入端口各利用一个数据选择器连接至Radix-2蝶形运算单元,以此实现两路数据流对蝶形运算单元的复用;蝶形运算单元的一条输出支路直接反馈回相应的复移位寄存器,另一条输出支路则通过两个数据选择器连接到计算子单元的两个数据输出端口上。上述装置,优选的,在每条支路数据流对所述计算子单元中乘法器的利用率低于50%时,所述计算子单元采用TypeⅡ结构对其包括的复数加法器和复数乘法器进行复用,所述TypeⅡ结构包括一个Radix-2蝶形运算单元、一个复数乘法器、两组复移位寄存器以及八个数据选择器,其中第k(k∈{1,…,log2(N/P)})级计算子单元所对应的复移位寄存器长度为在TypeⅡ结构内部,复数乘法器的输入端及输出端分别连接一个数据选择器,以实现两路数据流对乘法器的复用;每组移位寄存器的输入端口各与一个数据选择器相连,用于切换不同的数据流送入移位寄存器进行缓存;两组移位寄存器的输出端利用一个数据选择器连接至Radix-2蝶形运算单元的一个输入端口,而执行DIF运算的数据输入端口与复数乘法器的一条输出支路利用一个数据选择器连接至蝶形运算单元的另一个输入端口,以此实现两路数据流对蝶形运算单元的复用;蝶形运算单元的一条输出支路参与复数乘法运算后反馈回相应的移位寄存器,另一条输出支路则通过两个数据选择器连接到计算子单元的两个数据输出端口上。。上述装置,优选的,所述数据排序单元包括级依次相连接的排序子单元,其中,第i级由一个长度为Li的移位寄存器和两个数据选择器:前端数据选择器和后端数据选择器组成,Li=S/2i-2i-1,i∈{1,…,nR},每一级的数据选择器通过同一控制信号进行控制;在排序子单元内部,初始数据输入端口以及移位寄存器输出端口均连接到两个数据选择器上,前端数据选择器的输出数据直接送至移位寄存器单元进行缓存,而后端数据选择器的输出数据则直接作为整个排序子单元的输出。上述装置,优选的,所述数据旋转模块包括P-1个复数乘法器,所述P-1个复数乘法器用于采用旋转因子e-j2πuv/N对所述支路内FFT计算模块的第2至P条输出支路进行并行的加权操作。上述装置,优选的,所述支路间FFT计算模块包括级依次相连接的支路间FFT计算单元,每级支路间FFT计算单元包括个所述Radix-2蝶形运算单元以及必要数目的复数乘法器。一种FFT实现方法,包括:对N点序列x的P条输入支路并行执行如下的S点FFT变换,以得到ΤSX:对于正向输入的数据流,先对其进行S点的按频率抽取DIFFFT运算,再将运算结果转换为倒位序形式;对于逆向输入的数据流,先将其转换为倒位序形式,再对倒位序形式的数据流进行S点的按时间抽取DITFFT运算;其中,S=N/P,TS为S点DFT变换矩阵,X表示S×P维的输入数据矩阵,所包含的P列与序列x的P条输入支路一一对应,N≥P且N,P为不小于1的自然数;采用预先设定的N个旋转因子对所述支路内FFT计算模块的各输出数据进行支路间并行的加权操作,以得到其中和分别表示S维和P维的对角矩阵,D为由所述N个旋转因子构成的S×P维矩阵,表示两个矩阵的Hadamard积;对的各行进行P点FFT变换,以得到通过P条支路并行输出的序列x所对应的FFT变换结果其中TP为P点DFT变换矩阵,Y表示S×P维的FFT输出矩阵,该矩阵的P列与所述的P条输出支路一一对应。本专利技术的FFT实现装置包括支路内FFT计算模块、数据旋转模块和支路间FFT计算模块,分别用于对以P条支本文档来自技高网...
一种FFT实现装置和方法

【技术保护点】
一种快速傅里叶变换FFT实现装置,其特征在于,包括支路内FFT计算模块、数据旋转模块和支路间FFT计算模块,其中:所述支路内FFT计算模块,用于对N点序列x的P条输入支路并行执行S点FFT变换,以得到ΤSX,其中,S=N/P,TS为S点DFT变换矩阵,X表示S×P维的输入数据矩阵,所包含的P列与序列x的P条输入支路一一对应,N≥P且N、P为不小于1的自然数;其中,所述支路内FFT计算模块包括个基于流水线结构的计算单元以及P个数据排序单元,所述计算单元与所述数据排序单元之间以一对二的映射关系相连,每个由所述计算单元与相应的两个数据排序单元组成的模块结构用于采用以下方式同时处理两条输入支路的数据流:对于正向输入的数据流,先对其进行S点的按频率抽取DIF FFT运算,再将运算结果转换为倒位序形式;对于逆向输入的数据流,先将其转换为倒位序形式,再对倒位序形式的数据流进行S点的按时间抽取DIT FFT运算;所述数据旋转模块,用于采用预先设定的N个旋转因子对所述支路内FFT计算模块的各输出数据进行支路间并行的加权操作,实现数据旋转,以得到其中和分别表示S维和P维的对角矩阵,D为由所述N个旋转因子构成的S×P维矩阵,表示两个矩阵的Hadamard积;所述支路间FFT计算模块,用于对的各行进行P点FFT变换,以得到通过P条支路并行输出的序列x的FFT变换结果其中TP为P点DFT变换矩阵,Y表示S×P维的FFT输出矩阵,该矩阵的P列与所述的P条输出支路一一对应。...

【技术特征摘要】
1.一种快速傅里叶变换FFT实现装置,其特征在于,包括支路内FFT计算模块、数据旋转模块和支路间FFT计算模块,其中:所述支路内FFT计算模块,用于对N点序列x的P条输入支路并行执行S点FFT变换,以得到ΤSX,其中,S=N/P,TS为S点DFT变换矩阵,X表示S×P维的输入数据矩阵,所包含的P列与序列x的P条输入支路一一对应,N≥P且N、P为不小于1的自然数;其中,所述支路内FFT计算模块包括个基于流水线结构的计算单元以及P个数据排序单元,所述计算单元与所述数据排序单元之间以一对二的映射关系相连,每个由所述计算单元与相应的两个数据排序单元组成的模块结构用于采用以下方式同时处理两条输入支路的数据流:对于正向输入的数据流,先对其进行S点的按频率抽取DIFFFT运算,再将运算结果转换为倒位序形式;对于逆向输入的数据流,先将其转换为倒位序形式,再对倒位序形式的数据流进行S点的按时间抽取DITFFT运算;所述数据旋转模块,用于采用预先设定的N个旋转因子对所述支路内FFT计算模块的各输出数据进行支路间并行的加权操作,实现数据旋转,以得到其中和分别表示S维和P维的对角矩阵,D为由所述N个旋转因子构成的S×P维矩阵,⊙表示两个矩阵的Hadamard积;所述支路间FFT计算模块,用于对的各行进行P点FFT变换,以得到通过P条支路并行输出的序列x的FFT变换结果其中TP为P点DFT变换矩阵,Y表示S×P维的FFT输出矩阵,该矩阵的P列与所述的P条输出支路一一对应。2.根据权利要求1所述的装置,其特征在于,所述旋转因子为e-j2πuv/N,其中,u∈{0,1,…,P-1},v∈{0,1,…,S-1}。3.根据权利要求1所述的装置,其特征在于,所述基于流水线结构的计算单元包括级依次相连接的计算子单元,计算子单元内部包括复数加法器、复数乘法器、复移位寄存器组以及数据选择器。4.根据权利要求3所述的装置,其特征在于,每条支路数据流对所述计算子单元中乘法器的利用率高于50%时,所述计算子单元采用TypeⅠ结构对其包括的复数加法器进行复用,所述TypeⅠ结构包括一个Radix-2蝶形运算单元、两组复移位寄存器以及六个数据选择器,其中第k(k∈{1,…,log2(N/P)})级计算子单元所对应的复移位寄存器长度为所述Radix-2蝶形运算单元包括一个复数加法器和一个复数减法器;在TypeⅠ结构内部,每组移位寄存器的输入端口各与一个数据选择器相连,用于切换不同的数据流送入移位寄存器进行缓存;两组移位寄存器的输出端口以及计算子单元的两个数据输入端口各利用一个数据选择器连接至Radix-2蝶形运算单元,以此实现两路数据流对蝶形运算单元的复用;蝶形运算单元的一条输出支路直接反馈回相应的复移位寄存器,另一条输出支路则通过两个数据选择器连接到计算子单元的两个数据输出端口上。5.根据权利要求3所述的装置,其特征在于,每条支路数据流对所述计算子单元中乘法器的利用率低于50%时,所述计算子单元采用TypeⅡ结构对其包括的复数加法器和复数乘法器进行复用,所...

【专利技术属性】
技术研发人员:熊春林王建王杉魏急波陈彬张康俐
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1