问题现像:
使用VIVADO2017.4自带的仿真工具仿真FFT的IP核时报错:
错误提示1:Failure: ERROR:add_1 must be in range [-1,DEPTH-1]
错误提示2:Failure: ERROR:empty_1 and not_empty_1 are inconsistent
问题解决:
Xilinx FFT IP核的所有输入口都需要一个初始化状态。
DL_IFFT_PIPELINED DL_IFFT_PIPELINED_inst (
.aclk (clk), // input wire aclk
.aresetn (~rst), // input wire aresetn
.s_axis_config_tdata (s_axis_config_tdata), // input wire [7 : 0] s_axis_config_tdata
.s_axis_config_tvalid (s_axis_config_tvalid), // input wire s_axis_config_tvalid
.s_axis_config_tready (s_axis_config_tready), // output wire s_axis_config_tready
.s_axis_data_tdata (s_axis_data_tdata), // input wire [31 : 0] s_axis_data_tdata I/Q
.s_axis_data_tvalid (s_axis_data_tvalid), // input wire s_axis_data_tvalid
.s_axis_data_tready (s_axis_data_tready), // output wire s_axis_data_tready
.s_axis_data_tlast (s_axis_data_tlast), // input wire s_axis_data_tlast
.m_axis_data_tdata (m_axis_data_tdata), // output wire [31: 0] m_axis_data_tdata I/Q
.m_axis_data_tuser (), // output wire [7: 0] m_axis_data_tuser
.m_axis_data_tvalid (m_axis_data_tvalid), // output wire m_axis_data_tvalid
.m_axis_data_tready (1'b1), // input wire m_axis_data_tready
.m_axis_data_tlast (m_axis_data_tlast), // output wire m_axis_data_tlast
.m_axis_status_tdata (), // output wire [7 : 0] m_axis_status_tdata
.m_axis_status_tvalid (), // output wire m_axis_status_tvalid
.m_axis_status_tready (1'b1), // input wire m_axis_status_tready
.event_frame_started (), // output wire event_frame_started
.event_tlast_unexpected (), // output wire event_tlast_unexpected
.event_tlast_missing (), // output wire event_tlast_missing
.event_status_channel_halt (), // output wire event_status_channel_halt
.event_data_in_channel_halt (), // output wire event_data_in_channel_halt
.event_data_out_channel_halt () // output wire event_data_out_channel_halt
);