DSPRelated.com
Forums

Real FFT/IFFT on C6711

Started by khaild66 March 11, 2002
Question:

Thank you very much Jagadeesh. That's the kind of info that I was looking for.

It seems that, ultimately, in the C6x world real valued FFT computation needs to

be carried out through the "packing" method (two real FFT input arrays packed
into the real and imaginary parts of a complex FFT input). Answer:
Once again it is my pleasure to share any info I know.The C6x does
not require two real input arrays to do the real FFT.
This is not true, in fact if you look at the app note, it shows two
methods:

a) Using two real FFT arrays and performing calculations, this
method is elegenat but incurrs longer latency as you have to
buffer up to two real arrays or frames worth, if you are doing
frame based processing.

b) I like this method as it treats a N point real FFT as a N/2 point
complex sequence, resulting in savings of twiddle factors and reduced
latency. Question:

The difference in the C6x is that radix-4 is optimum (generally higher radix
results in smaller number of multiply and adds required, the C3x, however, is!
more suited to radix-2).

Answer:
This is true, and DSP processors that have more registers tend to support
radix-4 ccomfortably. In fact the C64x can support digit-reversed and
bit-reversed addressing for free along with the FFT. The C62x was one
of the first to support radix-4 FFT. I am not mentioning this on my own,
take a look at Meyer and Schawrz paper in IEEE about FFT implementations
on DSP architectures. Even the C62x uses all the 32 registers to support
radix-4, but none the less it does. Question:

I was under the impression that you could not do the packing trick in the
reverse direction (IFFT), but on first glance, the App. Note you mentioned shows

that it is possible, which is great! Answer:
The way the real FFT is done, it performs a complex multiply and calculates
a sum and difference using the symmetry properties, on the results of the
N/2 complex FFT. Hence it applies a post twiddle on the FFT and IFFT, to
compute the real FFT, but I believe the math in both these post twiddle
factors are the inverse operations of each other. I have worked through
the equations in the app note, and know that this is true. I can discuss
further if you have any questions.

Regards
Jagadeesh Sankaran