Vivado中FFT9.1 IP核的使用(1)中已经介绍了最简单的FFT操作方式:即固定变换长度,仅仅控制少量控制信号:
s_axis_config_tdata // input,配置数据
s_axis_config_tvalid // input,配置数据有效信号
s_axis_data_tdata // input ,输入数据
s_axis_data_tvalid // input ,输入数据有效信号
s_axis_data_tlast // input ,输入数据结束信号
在此基础上,这一部分对在线变换长度进行测试:
1、FFT核配置
配置FFT核时应注意,选定在线更改点数选项
如下:
其余配置不变,配置结束查看配置情况:
可以看出,此时变换长度最小为8,最大为设置的32点;意味着变换长度在8-16-32之间可以在线设置。
s_axis_config_tdata长度也改变了,考虑到PAD扩展,一共24位,各位对应的配置项如上图Implementation details所示;
2、测试文件编写
32点变换测试:
主要应修改s_axis_config_tdata的配置,由Implementation details可以看出s_axis_config_tdata的配置情况:
s_axis_config_tdata[4:0] 为 NFFT,32点时NFFT=00101
s_axis_config_tdata[7:5] 为 PAD补零,PAD=000
s_axis_config_tdata[8:8] 为 FWD_INV_0(通道0正反FFT变换选择),正变换时FWD_INV_0=1
s_axis_config_tdata[18:9] 为 SCALE_SCH_0(通道0缩放策略选择),取SCALE_SCH_0=0000000000(不缩放)
s_axis_config_tdata[