Function Descriptions
Example:
The following sample code obtains the complex FFT of the input.
#include "FPU.h"
#define CFFT_STAGES 7
#define CFFT_SIZE (1 << CFFT_STAGES)
float CFFTin1Buff[CFFT_SIZE
*
2];
float CFFTin2Buff[CFFT_SIZE
*
2];
float CFFToutBuff[CFFT_SIZE
*
2];
float CFFTF32Coef[CFFT_SIZE];
CFFT_F32_STRUCT cfft;
main()
{
cfft.InPtr = CFFTin1Buff; /
*
Input data buffer
*
/
cfft.OutPtr = CFFToutBuff; /
*
FFT output buffer
*
/
cfft.CoefPtr = CFFTF32Coef; /
*
Twiddle factor buffer
*
/
cfft.FFTSize = CFFT_SIZE; /
*
FFT length
*
/
cfft.Stages = CFFT_STAGES; /
*
FFT Stages
*
/
... ...
CFFT_f32_sincostable(&cfft); /
*
Initialize twiddle
*
/
/
*
buffer
*
/
CFFT_f32u(&cfft); /
*
Calculate output
*
/
}
Benchmark Information:
The following table provides benchmark numbers for the function. Note that these include the
cycles used in the call/return from the function
FFTSize C-Callable ASM (Cycle Count)
32 1351
64 2785
128 5931
256 12821
512 27839
1024 60393
Table 3.5: Benchmark Information
Sep 10, 2012 16