论文部分内容阅读
随着电子技术和集成电路技术的飞速发展,数字信号处理已经广泛地应用于通信、信号处理、生物医学以及自动控制等领域中。离散傅立叶变换(DFT)及其快速算法FFT作为数字信号处理中的基本变换,有着广泛的应用。特别是近年来,基于FFT的4G通讯技术ODFM的兴起,进一步推动了对高速FFT处理器的研究。FFT算法诞生于20世纪60年代,经过数十年来的发展与完善,其理论已经趋于成熟,但由于该算法复杂但规律的特性,因此在硬件的实现方面仍值得继续研究。为了适应不同的硬件资源环境和数据量,可以引入并行的思想,通过对并行度的调节来适应不同的场景;同时为了满足越来越高速的应用需求,通过流水线的实现方式使电路可以工作在更高的频率。本文在分析和比较了各种FFT算法后,选择基8算法作为主体,并辅之以基2和基4算法,此外还支持大点数二维FFT算法,使得本文设计可以处理各种长度的输入序列。算法性能方面,在类似的硬件消耗情况下,本文设计的运算时间仅为完全采用基2算法的三分之一左右,并提高了运算精度。在电路设计方面,本文设计了一种规模仅为1/8个完整基8蝶形运算的轻量化蝶形单元电路,同时采用流水线工作模式,使该电路可以在1GHz工作频率下获得每周期一个数据点的吞吐量。为了方便扩展和裁剪,除控制模块之外的所有电路模块均采用了管线化设计,通过不同数量管线的并行,可以满足不同应用环境下的硬件资源限制和性能需求。为了获得更好的复用性,本文同时设计了与FFT处理器相配合的数据传输模块DMA_PORT。引入该模块后,本文设计在输入输出次序上可以同时支持正序和逆序、IFFT运算以及二维FFT算法的数据搬运工作。为了获得更高精度的结果,除了采用基8算法之外,还对旋转因子的生成进行了优化。在本文的设计中,采用2块容量为8KB的SRAM用于存储常数,相应的电路模块再使用这些常数实时计算出所需的旋转因子。通过优化计算过程和分析对称性,得到旋转因子仅需一次乘法。优化之后,本文设计的信噪比可以达到130dB以上。本文的设计经过功能验证、FPGA验证以及流片后测试,都可以得到正确的计算结果,综合结果显示该设计可以达到1GHz工作频率,满足了高速信号处理的设计要求。