reviewed the data sheet for the FFT v4_1 module, but I’m having issues getting expected
1. When I
input a complex signal Cos (2pi*n*f/N)+ j * Sin(2pi*n*f/N), I expect the 'Real'
component of the FFT output to be a impulse
that corresponds to the frequency variable 'f' while the 'Imaginary' component
should be zero. Based on my current setup, I’m getting unexpected values for
both the ‘Real’ and ‘Imaginary’ parts, however I’m most concerned with the
latter. Although some of the values are close to zero, there is a large
discrepancy between the magnitude of the expected values and the SG results.
For example: MATLAB (ML) analysis for a specific index
resulted in a value of-2.4 x 10^ -16.The same SG analysis resulted in a value
of-0.015625, which is off by several
orders of magnitude. For the same signal analysis, there are other indices with
ML results similar to the first example, but the SG result is equal to zero. I've
attached a spreadsheet that shows the comparison for the full data set.
in magnitude are especially troubling because when I used a larger FFT (1024
points vs 8 points) the magnitude for values expected to be zero, were at times
much greater than 1.
2. I used
the output data generated by the SG FFT model and evaluated it using the IFFT
function. Assuming the SG data was correct, the IFFT output should have generated
the original inputs to the FFT module. Unfortunately, the results of this line
of testing were not consistent. As I mentioned earlier, when the frequency ‘f’
is an even number the results were as expected, but when ‘f’ is an odd value the
IFFT produces an inverse of the original input signal. You can see what I’m
referring to in the first graph generated by my test code.
the model, test code, and results I’ve generated to this point. Any insight as
to where I may be making an error would be greatly appreciated.