I'm implementing an Speech Recognition System over a Cortex-M4 processor (STM32F4-Discovery) and I'm facing a problem when a compute the RIFFT.

I believe that I'm passing to the function the vector in the right form, but when I compare the output to the one obtain by MATLAB, it's quite different.

I've also tried to perform an FFT and right after that computing the IFFT, but it gives me a totally different signal as the one I gave it.

I don't know what I'm doing wrong, can anyone help me on this?

  • $\begingroup$ Sure but I suppose you need to provide more details. What code are you using exactly, what are exactly the input and output values and so on. $\endgroup$ – Nikolay Shmyrev Oct 18 '14 at 20:36
  • $\begingroup$ I'm using the RIFFT function that CMSIS gives, giving to it the parameters in the way that it's documented, that is: <hr/> *X[0],X[N/2] - packed real data: X[0] + jX[N/2] *X[1] - complex data *X[2] - complex data ... *X[fftLen/2-1] - complex data <hr/> The major problem is that I calculate the RFFT of an input signal and right after that I compute the RIFFT without touching the vector, and the function gives me a signal totally different from it's original. $\endgroup$ – alegasalv Oct 20 '14 at 18:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.