21.07.2015 Views

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

"TMS320C55x DSP Library DSPLIB Programmer's Reference"

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ffttypeRFFT type selector. Types supported: If type = SCALE, scaled version selected If type = NOSCALE, non-scaled version selectedDescriptionAlgorithmSpecial RequirementsComputes a Radix-2 real DIT FFT of the nx real elements stored in vector xin bit-reversed order. The original content of vector x is destroyed in theprocess. The first nx/2 complex elements of the FFT(x) are stored in vector xin normal-order.(DFT)See CFFTThis function should work with unpack.asm and/or rfft.asm for properresult. See example in examples/rifft directory.Memory alignment: input data (x) must be aligned at even word boundary.Data memory alignment (referenced rfft.cmd in examples/rfft directory): Alignment of input database address: (n+1) LSBs must be zeros,where n = log 2 (nx). Ensure that the entire array fits within a 64K boundary (the largest possiblearray addressable by the 16-bit auxiliary register). For best performance, the data buffer has to be in a DARAM block. If the twiddle table and the data buffer are in the same block, then theradix-2 kernel is 7 cycles and the radix-4 kernel is not affected. The twiddle table should be aligned to the nx word boundary; i.e., thelowest log 2 (nx) least significant bits of the twiddle table starting addressshould be zero.Implementation Notes Implemented as a complex FFT of size nx/2 followed by an unpack stage tounpack the real FFT results. Therefore, Implementation Notes for the cfft functionapply to this case.ExampleNotice that normally an FFT of a real sequence of size N, produces a complexsequence of size N (or 2*N real numbers) that will not fit in the input sequence.To accommodate all the results without requiring extra memory locations, theoutput reflects only half of the spectrum (complex output). This still providesthe full information because an FFT of a real sequence has even symmetryaround the center or nyquist point(N/2).When scale = 1, this routine prevents overflow by scaling by 2 at each FFTintermediate stages and at the unpacking stage.See examples/rfft Zip file4-86

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!