论文部分内容阅读
快速傅里叶变换(FFT)是离散傅里叶变换的一种改进算法。由于快速傅里叶变换极大地减少了离散傅里叶变换的运算量,提高了其实时性,因此,FFT算法的出现对于DFT在数字信号处理领域中应用提供了极大的助力。本课题来自:广东省国际合作项目“医用CT机锥束三维成像的计算机软硬件系统研制”。本文主要研究内容包含以下三个部分:首先,研究了目前较为常用的几种非基2FFT算法并对这些算法进行了对比与分析。其次,得出了适用于本文的一种非基2FFT算法,并用C语言进行了该算法的实现,验证了算法的功能。最后,使用Verilog语言进行了电路结构的设计,并对电路结构进行了速度与资源优化。最后进行功能仿真,在FPGA上完成了硬件电路的实现。本文采用的非基2FFT算法有如下特点:与WFTA算法和素因子算法相比,克服了这两种算法对于DFT的输入序列点数N有一定要求这个缺点,可以适用于任意的N。与Chirp-z算法相比,当N为比较大的特殊点时,本算法消耗存储单元大大小于Chirp-z算法,更容易实现。本文所设计的非基2FFT VLSI结构具有如下特点:功能性优化:可以应用于输入序列点数N为任意值的DFT,针对于不同点数的DFT,只需更改大N点以及两个小N点N1、N2点的值,计算电路便可适用于计算新的DFT,复用性强。速度优化:通过实部、虚部并行计算,迭代与输出计算并行计算,部分浮点数乘法并行计算三种并行计算,提升了本文结构的速度性能。资源优化:通过多路选择器的应用,使两次戈泽尔算法的计算复用同一计算模块,大大减少了资源的使用。本文通过FPGA进行实现所得结果经测试正确,综合结果LUT Slice使用率约为70%,register slice使用率约30%,最高工作频率可达110MHz。考虑到本文所设计的结构可应用于输入序列点数N为任意值的DFT并且拥有相对较快的速度,可将此结构应用于通信系统的功能扩展方面,具备良好的应用前景。