Hi all,

I am trying to implement 32 Point FFT using VDSP in-built function as reference. First I used cfftf_simd.asm residing at “C:\ Program Files\Analog Devices\VisualDSP 5.0\214xx\lib\src\libdsp_src\” to implement 128 point FFT.

** **

**void cfftf (float data_real[], float data_imag[],**

** float temp_real[]. float temp_imag[],**

** const float twid_real[],**

** const float twid_imag[],**

** int n);**

But from the comments provided in the file it is found that 32 point is not possible with that routine. So we used routine in cfft_simd.asm attached herewith,

**complex_float *cfft32 (complex_float dm input[],**

** complex_float dm output[]);**

Passing arguments for that routine is input buffer and output buffer address. In the document it is said to keep both buffer of size ‘N’ where N is the FFT points.

In that case whether input buffer should be interleaved with real and imaginary values. Then what we will get in the output buffer.

Expecting a quick response. Thanks in advance.

Regards,

Senthil

Hi Senthil,

"In that case whether input buffer should be interleaved with real and imaginary values. Then what we will get in the output buffer."

>> Yes, the input buffer should have interleaved real and imaginary values such as R0,I0,R1,I1,R2,I2.........RN,IN. The output buffer will also have the data in the same format.

Hope this helps.

Thanks,

Mitesh