项目需求,最近使用了Viv ado2013.4 做开发,设计中使用到FFT(9.0)的IP,该IP 接口采用AXIS 总线格式,相比ISE14.7 中FFT(8.0)以及Viv ado 中FFT(LTE)输入信号格式大变,不过只要熟悉AXIS 总线信号格式就没得问题,不要怕麻烦!!!(刚开始使用就是怕麻烦,有些握手信号没用,ev ent 状态信号也没注意,浪费了不少时间) 一、设计参数配置,及IP 生成 下面开始介绍配置界面: 第一页,Configu ration,主要是FFT 变换长度以及结构选择。 Nu mber of Channels:FFT 变换通道,可以选择多通道,实现多帧数据同时进行FFT 运算; Transfrom Length:FFT 变换长度;如果下面选择了“Ru n Time Configu ration Transform Length”,则该参数为FFT 变换最大长度。 时钟选择根据自己设计需求,只能是1—550 之间的整数,不小于自己需求时钟就可以了。 Architectu re Choice:实现架构选择,根据设计需求、板子资源情况,本设计中选择变换处理时间最短、消耗资源最大的并行流水结构;其他结构以此降低了变化速率但是节省了资源,这个在 PG109-x fft 中有详细介绍。 Ru n Time Configu ration Transform Length:勾选该项,则在变换过程中可以改变FFT 变换的长度,通过s_ax is_config_ tdata 中NFFT 字段进行配置。 第二页,Implementation 介绍。 Data Format:输入数据格式,定点和浮点两种,根据自己设计需求选择了定点; Scaling Options:Block Float Point、Scaled、Unscaled 三种可选。Block Float Point 不管输入格式如何,FFT 变换内部采用浮点,会根据每一级变换数据情况自动缩放,使得数据不出现溢出,在 m_axis_data_tuser 中会有 5 个比特表示每一级缩放情况(本设计中是[20:16]);Scaled选择后,在 s_axis_config_tdata 中有相应字段配置缩放因子,这个在 pg109-xfft 中有详细介绍,每一级包含 2 个 stage,2 个比特表示一级的缩放,一般 0-3 可选,变换长度 NFFT,如果 log2(NFFT)不是 2 的倍数,则最高一级的缩放只能 0-1 可选;Unscaled 全精度,不用担心变换过程中会出现溢出,但是输入32bit,变换后的输出是 64bit 跟自己的设计不符合,截位误差更大。 Precision Options:本设计保持默认设置,可以尝试修改下。 Control Signals:ACLEN 时钟使能信号可以不选,复位信号 ARESETn 还是建议选上(至少保持 2 个时钟的低电平)。 Ou t...