Hi folks, I am using the 21489 256 point FFT accelerator example program in CCES. Everything appears to be working well, and so I added an IFFT on the end of the example program, running on the FFT output as input. I set up the twiddle coeff's for the IFFT and it works great. The only problem is that the IFFT result is shifted by one point to the right and the last point is chopped off:

The other thing that is strange is the result is inverted. I had to multiply by -1 to get this plot (after multiplying by the expected 1/N).

Here are my TCB's.

int dataTxTCB[6] = {0,0,0,512,1,(int)inputdata};

int coeffTCB[6] = {0,0,0,512,1,(int)coeffdata};

int dataRxTCB[6] = {0,0,0,512,1,(int)fft_outputdata};

int ifft_dataTxTCB[6] = {0,0,0,512,1,(int)fft_outputdata};

int ifft_coeffTCB[6] = {0,0,0,512,1,(int)ifft_coeffdata};

int ifft_dataRxTCB[6] = {0,0,0,512,1,(int)ifft_outputdata};

The rest of the code is the same. I just copied and pasted the FFT code to create the IFFT code after.

Am I doing something wrong or is this expected?

Thanks,

Doug

Added input data file and ifft twiddle file.

Hi folks, it was my twiddle coefficients. I loaded up an example coeff file that was posted here earlier and it seems to be working. The correct file is attached. I misunderstood what cosine,sine,-sine,cosine means. I assumed the angle ranged from 0 to pi.

Doug