We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 61079

LogiCORE Fast Fourier Transform (FFT) v9.0 2014.1– Why do I get a mismatch in the LSB of output results between the C model and IP?


There is a mismatch in the LSB of output results between the C model and IP.
There was a similar issue in versions 7.0/7.1/8.0 of the core.

Why am I experiencing this issue in FFT v9.0 in Vivado Design Suite 2014.1?


This mismatch occurs due to issues in the code used, not in the IP itself.
It happens when the C model is configured to perform a forward transform (FFT) and the IP testbench is configured to perform an inverse transform (IFFT) as in the example below:
In IP testbench, s_axis_config_tdata is tied to all-zeros, and s_axis_config_tvalid is tied High. 

As a result the IP core will always perform inverse transforms.

However, the C model wrapper  has inputs.direction = FFT_DIR_FORWARD; present, forcing the model to always do forward transforms.
Once these are made consistent, the C model behavior will match that of the IP core.
AR# 61079
Date Created 06/10/2014
Last Updated 01/05/2015
Status Active
Type General Article
  • Zynq-7000
  • Vivado Design Suite - 2014.1
  • Fast Fourier Transform