基于FPGA应用FFT IP核实现1024点fft运算

1、IP核设置
基于FPGA应用FFT IP核实现1024点fft运算_第1张图片
基于FPGA应用FFT IP核实现1024点fft运算_第2张图片
基于FPGA应用FFT IP核实现1024点fft运算_第3张图片
基于FPGA应用FFT IP核实现1024点fft运算_第4张图片
基于FPGA应用FFT IP核实现1024点fft运算_第5张图片
由以上可知,延迟大约在13.772us,所以每秒可以做50000次fft。
2、输入的数据,根据自己的需要,实现对1024个数据的FFT运算。
比如,数据是连续的,但是我想每1秒做1000次FFT运算,则每1ms开启一次即可。
因为前方采样速率是慢速时钟,FFT模块运算是稍高速模块,需要跨时钟域处理,此处应用两个1024深度的FIFO,对数据做跨时钟与处理。
基于FPGA应用FFT IP核实现1024点fft运算_第6张图片
基于FPGA应用FFT IP核实现1024点fft运算_第7张图片
基于FPGA应用FFT IP核实现1024点fft运算_第8张图片
3、数据输入FFT,数据输出后,对前400点fft的实部和虚部取模。
4、仿真中,DDS输出5M 正弦波,经过FFT以后,理论上应该在40M/1024*5M=128点处,出现模的波峰
基于FPGA应用FFT IP核实现1024点fft运算_第9张图片
基于FPGA应用FFT IP核实现1024点fft运算_第10张图片
fft的索引是从0开始,到127取得波峰,则可以验证,我们的仿真是正确的。
5、工程链接:
https://download.csdn.net/download/sinat_39724439/12882336
6、实际板上测试
输入信号5M Hz
基于FPGA应用FFT IP核实现1024点fft运算_第11张图片

基于FPGA应用FFT IP核实现1024点fft运算_第12张图片
基于FPGA应用FFT IP核实现1024点fft运算_第13张图片
基于FPGA应用FFT IP核实现1024点fft运算_第14张图片
7、做4096点fft,信号输入13.3333 采样频率40M
基于FPGA应用FFT IP核实现1024点fft运算_第15张图片

你可能感兴趣的:(VIVADO,fpga,fft)