1.引言
dft及其快速算法fft是信号处理领域的核心组成部分。fft算法多种多样,按数据组合方式不同一般分时域和频域,按数据抽取方式的不同又可分为基2,基4等。各算法的优缺点视不同的制约因素而不同。fft的实现方法也多种多样,可以用软件实现,也可以用硬件实现,用软件在pc机或工作站上实现则计算速度很慢。一般多结合具体系统用硬件实现。例如用单片机或dsp实现。但是速度仍然很慢,难以与快速的a/d器件匹配。在雷达信号处理领域主要追求的目标是速度,即实时性的要求非常高。针对这种快速信号处理的要求及fpga器件的特点,本文采用的是一种基2固定几何结构的fft算法。采用的是altera公司推出的最新器件stratix来做硬件仿真。stratix器件是一款采用高性能结构体系的pld器件。它结合了强大内核性能,大存储带宽,数字信号处理(dsp)功能,高速i/o性能和模块化设计与一体的pld。其内嵌的dsp模块具有很高的乘法运算速度。在用vhdl编程时可以用megawizard的方法指定用dsp模块生成乘法器,用这种乘法器来做蝶形,用多个蝶形来构成fft运算级,通过循环即可实现fft核心运算的并行化。用altera公司的quartus软件做逻辑分析和波形分析。quartus软件具有很强的硬件仿真和逻辑分析功能,它可将用vhdl编写的硬件描述综合到fpga中。
2.算法介绍
司采用传统结构的fft算法其32点的运算时间大于1.0us。wWW.133229.cOm用dsp做的32点fft时间也要1.0us以上。本系统的最大优势在于利用fpga器件丰富的逻辑资源,内嵌的ram,rom块及其灵活的可编程特性采用固定几何结构的fft算法使运算速度较传统方法有了很大提高。当然付出的代价是用这种并行的结构需求的硬件资源很多。随着芯片集成度的不断提高,用这种并行结构实现的fft运算其优越性将越来越明显。而且用这种结构实现的fft很容易扩展。只需要增加蝶形的个数和循环次数即可。详细说明见 vhdl源程序。