altera fpga完美使用FFT

altera fpga完美使用FFT

 author:ANGRY_KUA_MAX

QQ     :2518383357

Time  :2018-01-12


经过这几天的折腾,终于把fft给整起来了,效果还行,相位,幅值均满足,下面记录整个过程。

1. 配置

step1,配置fft ip core:

模式选stram,对于采样ADC,如果是12位,则dta percision要选14,若为14位adc,则选16,其他选用默认选项就可以了。

step 2,使能仿真模型,在generatesimulation module打钩语言选verilog(我用verilog)

step3,generate,配置完成

2. 编译

3. 配置ModelSim-Altera

根据上一篇文章中配置的quartus中调用ModelSim-Altera《quartus中调用modelsim仿真》,选择好fft_tb文件以及仿真时间。

4. 基本文件拷贝

将工程文件夹下面的这几个文件拷贝到simulation\modelsim文件夹下面,其中real_input.txt是实部文件,imag_input.txt是虚部文件

5. 生成实部文件和虚部文件

使用上面这个函数,生成256个点,即采样点。注意上图中,FS是采样频率(可自定义),SIM_NUM是采样点数,(FS/SIM_NUM)/FS自行理解,反正生成了一个正弦波。

6. 填充实部与虚部数据

将5中生成的256个点拷贝到simulation\modelsim文件夹下real_input.txt中,imag_input.txt中填0即可。

7. 仿真

运行仿真,最终将出现三个文件real_output_ver.txt,exponent_output_ver.txt,imag_output_ver.txt

8. 计算虚部实部,幅值以及相位

这三个文件中的内容怎么算出实部和虚部以及相位\(^o^)/~纠结了三天才弄明白这个问题,数学公式其实一点即通。

你可能感兴趣的:(随手log)