This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DSPLib

Hi, 

I have a question about ifft function which comes with DSP Library. 

My knowledge about fft and ifft is not very much. So I hope you answer my question. Here it is:

On sprueb8b.pdf it is written for DSP_ifft32x32 that "This routine computes an extended precision complex inverse mixed radix FFT with rounding and digit reversal." Is that mean the input array must be in symmetric order? Let me tell my question in detail. x input array include 1024 samples and FFT size is 1024. So x[512] means to highest frequency component. Am i right? I think I must copy the last 512 input samples to the beginning in symmetric order?

 

Burhan.  

  • Burhan,

    All FFTs have a symmetry that is referred to as Hermitian symmetry which means real part of FFT is always symmetric and its imaginary part is antisymmetric. In a 1024 point FFT, the 512th sample corresponds to half of the sampling frequency(fs) about which the FFT has a hermatian symmetry. So the inverse FFT function (ifft32x32) expects the input to be in this form to obtain the appropriate output. In addition to this DSP_ifft32x32 expects a complex input with real and imaginary values adjacent in memory. ( Real in even locations and complex at odd locations). Hence if you have a real input, you should zero out the complex terms in the input.

    For implementation details or for example code for the ifft32x32 function, you can refer dsplib\src\DSP_ifft32x32 included in the library. There is also an example included specifically to illustrate FFT and its interpretation in dsplib\example\fft_example.

    Best Regards,

    Rahul

  • Thanks Rahul for your reply. 

    But it is not clear for me. Maybe your answer to this question will clearify my mind.

    Rahul Prabhu said:
    In a 1024 point FFT, the 512th sample corresponds to half of the sampling frequency(fs) about which the FFT has a hermatian symmetry.

    So in a 1024 point FFT , the 513th sample corresponds to half 0f the sampling frequency but in negative? The above order true, I guess?

    0

    1

    2

    511

    512

    513

    514

    1022

    1023

    sample (input)

    x

    2x

    3x

     

    fs/2-y

    fs/2

    - fs/2

    -(fs/2-y)

     

    -2x

    -x

    frequency component

    Burhan.

  • Burhan,

    So in a 1024 point FFT , the 513th sample corresponds to half 0f the sampling frequency but in negative? The above order true, I guess?

    Yes, Your interpretation is correct in theory. Small correction the Zeroth sample corresponds to zero frequency(DC component) and 1023rd sample corresponds to one sample below the sampling frequency(fs)

    Regards,

    Rahul

     

  • Thanks a lot Rahul.

    Thanks ti!

    I am very happy there is such a forum that we can have answers from experts.

    Regards,

    Burhan.