Daniel Konegen / MNIST_example

Dependencies:   mbed-os

Embed: (wiki syntax)

« Back to documentation index

ComplexFFT

Modules

 Complex FFT Tables

Functions

void arm_cfft_q15 (const arm_cfft_instance_q15 *S, q15_t *p1, uint8_t ifftFlag, uint8_t bitReverseFlag)
 Processing function for the Q15 complex FFT.
void arm_cfft_radix4_q15 (const arm_cfft_radix4_instance_q15 *S, q15_t *pSrc)
 Processing function for the Q15 CFFT/CIFFT.

Function Documentation

void arm_cfft_q15 ( const arm_cfft_instance_q15 S,
q15_t *  p1,
uint8_t  ifftFlag,
uint8_t  bitReverseFlag 
)

Processing function for the Q15 complex FFT.

Parameters:
[in]*Spoints to an instance of the Q15 CFFT structure.
[in,out]*p1points to the complex data buffer of size 2*fftLen. Processing occurs in-place.
[in]ifftFlagflag that selects forward (ifftFlag=0) or inverse (ifftFlag=1) transform.
[in]bitReverseFlagflag that enables (bitReverseFlag=1) or disables (bitReverseFlag=0) bit reversal of output.
Returns:
none.

Definition at line 77 of file arm_cfft_q15.c.

void arm_cfft_radix4_q15 ( const arm_cfft_radix4_instance_q15 S,
q15_t *  pSrc 
)

Processing function for the Q15 CFFT/CIFFT.

Parameters:
[in]*Spoints to an instance of the Q15 CFFT/CIFFT structure.
[in,out]*pSrcpoints to the complex data buffer. Processing occurs in-place.
Returns:
none.
Input and output formats:
Internally input is downscaled by 2 for every stage to avoid saturations inside CFFT/CIFFT process. Hence the output format is different for different FFT sizes. The input and output formats for different FFT sizes and number of bits to upscale are mentioned in the tables below for CFFT and CIFFT:
CFFTQ15.gif

Input and Output Formats for Q15 CFFT

CIFFTQ15.gif

Input and Output Formats for Q15 CIFFT

Definition at line 79 of file arm_cfft_radix4_q15.c.