新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 基于FPGA的FFT算法硬件实现

基于FPGA的FFT算法硬件实现

作者:时间:2011-03-06来源:网络收藏


2 系统仿真结果
输入数据为s=1 024×cos(2π×f_in×t),其中f_in=50 M,Fs=80 MHz,n=40,t=0:1/Fs:(n-1)/Fs,利用QuartusⅡ软件对系统在100 MHz的时钟环境下进行了仿真,将仿真输出结果转换成tbl文件并利用Matlab软件读取后,得到如图7所示的频谱数据图(实部数据部分)。

本文引用地址:http://www.eepw.com.cn/article/191332.htm


图8所示为Maflab自带函数对于输入相同1 024点数据的计算结果(同样为实部数据部分)。
通过比较可以看到,本设计的仿真结果与Matlab的仿真结果基本一致,可以正确高效地计算出1 024点数据。

3 结束语
本设计全部由Verilog HDL语言实现,采用自顶向下的设计方法,完成了一种基于的1 024点16位FFT,共需要5级运算,每级需要计算256个蝶形。提出了将蝶形运算先进行前一级的蝶形加减运算,再进行本级的与旋转因子复乘运算的结构。由前所述,平均每个蝶形运算需要4个时钟周期,所以理论上完成1 024点FFT的总时钟周期为N=256×4×5=5 120;假设使用的时钟为100MHz,那么将耗时T=5 120×(1/100)=51.2μs,这与仿真结果51.32μs基本一致。


上一页 1 2 3 下一页

关键词: FPGA FFT 算法 硬件实现

评论


相关推荐

技术专区

关闭