论文部分内容阅读
由于数字信号处理具有精度高、灵活性好、抗干扰能力强、易于大规模集成等优点,目前已在众多领域取代了传统的模拟信号处理。在各种数字信号处理算法中起着核心作用的是离散傅里叶变换(DFT),但是由于离散傅里叶变换计算量大,且要求占用的内存大,难以实现实时处理,限制了其应用。Cooley和Tukey在1965年提出的快速傅里叶变换算法(FFT)使离散傅里叶变换的运算速度提高了几百倍,解决了数字信号处理实现和应用的瓶颈,快速傅里叶变换处理器也因此成为数字信号处理中最基本也是最重要的一个单元,目前已广泛地应用于数字通信、语音信号处理、图象处理、生物医学工程、雷达、地震、天文等领域。由于专用集成电路在功耗方面的优势,本课题采用ASIC方法对FFT处理器进行设计,并且将该FFT处理器设计成可扩展的,可以根据需要配置进行8点、16点、32点、64点、128点、256点、512点和1024点的运算。本文首先阐述了数字信号处理理论中快速傅立叶变换的理论基础,通过对比不同基算法的复杂度以及对功耗的影响,采用按时间抽取的基2算法设计该FFT处理器。然后讨论了FFT的顺序结构、级联结构、并行结构和阵列结构,本设计根据低功耗的要求选择了顺序结构。本设计还将长位宽的存储器分割成两个短位宽的存储器,并在蝶形运算单元中通过数学变换将实数乘法器的个数从4个减少为3个,进一步降低了功耗。通过对乘法器的讨论,选择使用了改进的Booth编码乘法器。本文还对存储器的地址生成算法进行了详细的讨论。该FFT处理器在存储器读写和蝶形单元的运算之间采用流水线方法,提高了处理速度。此外,本文还对设计的各个阶段运用的低功耗方法进行了阐述,对功耗进行了分析。该低功耗可扩展的FFT处理器采用Verilog HDL进行代码编写,用Modelsim进行功能仿真,用Xilinx的FPGA进行了验证,最后采用SMIC 0.18μm CMOS工艺库进行综合及布局布线,并根据项目需要成功实现了扩展为8-256点的FFT处理器的流片。测试结果表明:该FFT处理器的计算误差低于3%;进行256点FFT运算需要2063个时钟周期;在1.8V工作电压下,其平均功耗约为1.17 mW/MHz。该设计在功耗、速度和计算精度上都达到了预期的目标。