[发明专利]一种FFT并行处理装置和方法有效
申请号: | 201310740883.5 | 申请日: | 2013-12-27 |
公开(公告)号: | CN103699515B | 公开(公告)日: | 2017-01-18 |
发明(设计)人: | 苏永涛;姚彦斌;朱子元;唐杉;石晶林 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F17/14 | 分类号: | G06F17/14 |
代理公司: | 北京泛华伟业知识产权代理有限公司11280 | 代理人: | 王勇,李科 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fft 并行 处理 装置 方法 | ||
技术领域
本发明属于数字信号处理领域,尤其涉及快速傅里叶变换(Fast Four ier Transform,FFT)领域,更具体地,涉及一种FFT并行处理装置和方法。
背景技术
离散傅里叶变换(Discrete Fourier Transform,DFT)及其逆变换(Inverse Discrete Fourier Transform,IDFT)常被运用于数字信号处理领域,它们是将信号的时域和频域联系起来的桥梁。然而由于DFT的复杂度过大,导致其实用性受到了限制。随着DFT的各种快速算法FFT的出现,将DFT算法的复杂度从O(n2)下降到了O(nlogn),从而加速了将DFT从理论运用到实践。
目前,在现代通信技术和数字信号处理领域,FFT的应用非常广泛。在正交频分复用系统(Orthogonal Frequency Division Multiplexing,OFDM)中,可以根据多载波的特性利用IFFT或FFT变换对一个OFDM符号进行调制或解调。基于IFFT/FFT的多载波调制技术已被大大扩展到不同类型的通信系统中,如数字音频广播、数字视频广播、无线局域网等。在最新的第四代(4th Generation,4G)移动通信系统中,也采用了OFDM技术。由于4G对数据的吞吐量要求比较高,所以OFDM符号的周期设计得比较短。例如,在20MHz带宽的LTE(Long Term Evolution,长期演进)系统中,一个OFDM符号的周期为71.3微秒,这对FFT的处理速度提出了更高的要求。另外,LTE系统中还必须支持从128到2048的5种长度为2n的FFT,因此,提高FFT处理效率以及灵活性具有很高的实际应用价值。
FFT算法一般采用库里—图基算法,利用分治的思想将长的数据序列转化为短的数据序列再进行变换。在转化的过程中,由于较长的序列可以重复利用较短序列计算出的结果,从而可以减少乘法和加法的次数。以一个长度为16点的序列为例,假设短序列的长度为4并满足16=42。这里短序列的长度“4”代表一个基/基数(Radix),即一个基4的蝶形运算;上标“2”代表长序列可以划分为这类短序列的级数,即这个16点的序列可以划分为两级的基4蝶形运算。又如对于一个长度为2048点的序列,2048=162×8,即长度为2048的序列可以划分为两级基16的蝶形运算以及一级基8的蝶形运算。从上述两个例子中可以看到,虽然级与级之间的蝶形运算有所不同,但是每一级中的蝶形运算对数据的操作却具有高度的相似性,因此可以通过并行化的方式来提高FFT的处理效率。
基于库里—图基的FFT算法有一个特点,即级与级之间的数据具有高度的依赖关系,下一级蝶形运算必须等到上一级蝶形运算完成之后才能进行。因此,大部分FFT装置采用的方式是使各级蝶形运算串行执行并最大化每级蝶形运算的并行度。然而,传统FFT装置在实现时存在两个问题。一个问题是前一级数据在送到下一级进行运算前往往需要进行数据倒换,在倒换的过程中常常存在访存冲突的问题。解决这个问题的方法目前有两种:一种是不进行数据倒换,直接利用复杂的地址产生单元来产生下一级蝶形运算需要的数据所在的地址,并直接将数据从存储器中读出;另一种方法是提高存储器的访存端口并利用结构化的存储结构来避免访存冲突。在前一种方法中,数据仍然是以串行的方式从存储器中取出,访存的并行度低;后一种方案可以在不损失并行度的情况下解决访存冲突,但是带来了巨大的硬件开销。另外一个问题是系统并行度设计过大会造成较大的硬件复杂度。传统FFT装置使用的蝶形运算单元支持的基与装置的并行度相同,即如果装置的并行度为4,那么装置就支持基4的蝶形运算。装置并行度越高,蝶形运算的硬件资源消耗也就越大。
发明内容
为解决上述问题,根据本发明的一个实施例,提供一种FFT并行处理装置,其支持一种或多种基数的蝶形运算,该装置包括:
FFT控制器,用于根据并行度将FFT运算分解为一级或多级蝶形运算;其中,所述并行度是所述装置支持的一种或多种基数的倍数;
蝶形运算器,用于顺序执行每一级蝶形运算;其中,在每一级蝶形运算中执行一次或多次蝶形运算,并且每一次蝶形运算的基数是所述装置支持的基数。
在一个实施例中,所述FFT控制器用于根据下式将N点FFT运算分解为m级点数为n或n'的蝶形运算:
N=N1×N2×…×Nm
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310740883.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:分体式射频同轴转接器
- 下一篇:反面拉伸模具的下模板