|  | CMSIS-DSP
    Version 1.10.0
    CMSIS DSP Software Library | 
| Content | |
| Real FFT Tables | |
| Functions | |
| void | arm_rfft_f32 (const arm_rfft_instance_f32 *S, float32_t *pSrc, float32_t *pDst) | 
| Processing function for the floating-point RFFT/RIFFT. Source buffer is modified by this function.  More... | |
| void | arm_rfft_fast_f16 (const arm_rfft_fast_instance_f16 *S, float16_t *p, float16_t *pOut, uint8_t ifftFlag) | 
| Processing function for the floating-point real FFT.  More... | |
| void | arm_rfft_fast_f32 (const arm_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag) | 
| Processing function for the floating-point real FFT.  More... | |
| void | arm_rfft_fast_f64 (arm_rfft_fast_instance_f64 *S, float64_t *p, float64_t *pOut, uint8_t ifftFlag) | 
| Processing function for the Double Precision floating-point real FFT.  More... | |
| arm_status | arm_rfft_fast_init_f16 (arm_rfft_fast_instance_f16 *S, uint16_t fftLen) | 
| Initialization function for the floating-point real FFT.  More... | |
| arm_status | arm_rfft_fast_init_f32 (arm_rfft_fast_instance_f32 *S, uint16_t fftLen) | 
| Initialization function for the floating-point real FFT.  More... | |
| arm_status | arm_rfft_fast_init_f64 (arm_rfft_fast_instance_f64 *S, uint16_t fftLen) | 
| Initialization function for the Double Precision floating-point real FFT.  More... | |
| arm_status | arm_rfft_init_f32 (arm_rfft_instance_f32 *S, arm_cfft_radix4_instance_f32 *S_CFFT, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) | 
| Initialization function for the floating-point RFFT/RIFFT.  More... | |
| arm_status | arm_rfft_init_q15 (arm_rfft_instance_q15 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) | 
| Initialization function for the Q15 RFFT/RIFFT.  More... | |
| arm_status | arm_rfft_init_q31 (arm_rfft_instance_q31 *S, uint32_t fftLenReal, uint32_t ifftFlagR, uint32_t bitReverseFlag) | 
| Initialization function for the Q31 RFFT/RIFFT.  More... | |
| void | arm_rfft_q15 (const arm_rfft_instance_q15 *S, q15_t *pSrc, q15_t *pDst) | 
| Processing function for the Q15 RFFT/RIFFT.  More... | |
| void | arm_rfft_q31 (const arm_rfft_instance_q31 *S, q31_t *pSrc, q31_t *pDst) | 
| Processing function for the Q31 RFFT/RIFFT.  More... | |
 
 
      arm_rfft_instance_q31 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};
      arm_rfft_instance_q15 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};
   where fftLenReal is the length of the real transform; fftLenBy2 length of the internal complex transform (fftLenReal/2). ifftFlagR Selects forward (=0) or inverse (=1) transform. bitReverseFlagR Selects bit reversed output (=0) or normal order output (=1). twidCoefRModifier stride modifier for the twiddle factor table. The value is based on the FFT length; pTwiddleARealpoints to the A array of twiddle coefficients; pTwiddleBRealpoints to the B array of twiddle coefficients; pCfft points to the CFFT Instance structure. The CFFT structure must also be initialized.  
 
      arm_rfft_instance_q31 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};
      arm_rfft_instance_q15 S = {fftLenReal, fftLenBy2, ifftFlagR, bitReverseFlagR, twidCoefRModifier, pTwiddleAReal, pTwiddleBReal, pCfft};
   where fftLenReal is the length of the real transform; fftLenBy2 length of the internal complex transform (fftLenReal/2). ifftFlagR Selects forward (=0) or inverse (=1) transform. bitReverseFlagR Selects bit reversed output (=0) or normal order output (=1). twidCoefRModifier stride modifier for the twiddle factor table. The value is based on the FFT length; pTwiddleARealpoints to the A array of twiddle coefficients; pTwiddleBRealpoints to the B array of twiddle coefficients; pCfft points to the CFFT Instance structure. The CFFT structure must also be initialized. | void arm_rfft_f32 | ( | const arm_rfft_instance_f32 * | S, | 
| float32_t * | pSrc, | ||
| float32_t * | pDst | ||
| ) | 
| [in] | S | points to an instance of the floating-point RFFT/RIFFT structure | 
| [in] | pSrc | points to the input buffer | 
| [out] | pDst | points to the output buffer | 
| void arm_rfft_fast_f16 | ( | const arm_rfft_fast_instance_f16 * | S, | 
| float16_t * | p, | ||
| float16_t * | pOut, | ||
| uint8_t | ifftFlag | ||
| ) | 
| [in] | S | points to an arm_rfft_fast_instance_f16 structure | 
| [in] | p | points to input buffer (Source buffer is modified by this function.) | 
| [in] | pOut | points to output buffer | 
| [in] | ifftFlag | 
 | 
| void arm_rfft_fast_f32 | ( | const arm_rfft_fast_instance_f32 * | S, | 
| float32_t * | p, | ||
| float32_t * | pOut, | ||
| uint8_t | ifftFlag | ||
| ) | 
| [in] | S | points to an arm_rfft_fast_instance_f32 structure | 
| [in] | p | points to input buffer (Source buffer is modified by this function.) | 
| [in] | pOut | points to output buffer | 
| [in] | ifftFlag | 
 | 
| void arm_rfft_fast_f64 | ( | arm_rfft_fast_instance_f64 * | S, | 
| float64_t * | p, | ||
| float64_t * | pOut, | ||
| uint8_t | ifftFlag | ||
| ) | 
| [in] | S | points to an arm_rfft_fast_instance_f64 structure | 
| [in] | p | points to input buffer (Source buffer is modified by this function.) | 
| [in] | pOut | points to output buffer | 
| [in] | ifftFlag | 
 | 
| arm_status arm_rfft_fast_init_f16 | ( | arm_rfft_fast_instance_f16 * | S, | 
| uint16_t | fftLen | ||
| ) | 
| [in,out] | S | points to an arm_rfft_fast_instance_f16 structure | 
| [in] | fftLen | length of the Real Sequence | 
fftLen is not a supported lengthfftLen specifies the length of RFFT/CIFFT process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096. | arm_status arm_rfft_fast_init_f32 | ( | arm_rfft_fast_instance_f32 * | S, | 
| uint16_t | fftLen | ||
| ) | 
| [in,out] | S | points to an arm_rfft_fast_instance_f32 structure | 
| [in] | fftLen | length of the Real Sequence | 
fftLen is not a supported lengthfftLen specifies the length of RFFT/CIFFT process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096. | arm_status arm_rfft_fast_init_f64 | ( | arm_rfft_fast_instance_f64 * | S, | 
| uint16_t | fftLen | ||
| ) | 
| [in,out] | S | points to an arm_rfft_fast_instance_f64 structure | 
| [in] | fftLen | length of the Real Sequence | 
fftLen is not a supported lengthfftLen specifies the length of RFFT/CIFFT process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096. | arm_status arm_rfft_init_f32 | ( | arm_rfft_instance_f32 * | S, | 
| arm_cfft_radix4_instance_f32 * | S_CFFT, | ||
| uint32_t | fftLenReal, | ||
| uint32_t | ifftFlagR, | ||
| uint32_t | bitReverseFlag | ||
| ) | 
| [in,out] | S | points to an instance of the floating-point RFFT/RIFFT structure | 
| [in,out] | S_CFFT | points to an instance of the floating-point CFFT/CIFFT structure | 
| [in] | fftLenReal | length of the FFT. | 
| [in] | ifftFlagR | flag that selects transform direction 
 | 
| [in] | bitReverseFlag | flag that enables / disables bit reversal of output 
 | 
fftLenReal is not a supported lengthfftLenRealspecifies length of RFFT/RIFFT Process. Supported FFT Lengths are 128, 512, 2048. ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated. bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order. | arm_status arm_rfft_init_q15 | ( | arm_rfft_instance_q15 * | S, | 
| uint32_t | fftLenReal, | ||
| uint32_t | ifftFlagR, | ||
| uint32_t | bitReverseFlag | ||
| ) | 
| [in,out] | S | points to an instance of the Q15 RFFT/RIFFT structure | 
| [in] | fftLenReal | length of the FFT | 
| [in] | ifftFlagR | flag that selects transform direction 
 | 
| [in] | bitReverseFlag | flag that enables / disables bit reversal of output 
 | 
fftLenReal is not a supported lengthfftLenReal specifies length of RFFT/RIFFT Process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192. ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated. bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order. | arm_status arm_rfft_init_q31 | ( | arm_rfft_instance_q31 * | S, | 
| uint32_t | fftLenReal, | ||
| uint32_t | ifftFlagR, | ||
| uint32_t | bitReverseFlag | ||
| ) | 
| [in,out] | S | points to an instance of the Q31 RFFT/RIFFT structure | 
| [in] | fftLenReal | length of the FFT | 
| [in] | ifftFlagR | flag that selects transform direction 
 | 
| [in] | bitReverseFlag | flag that enables / disables bit reversal of output 
 | 
fftLenReal is not a supported lengthfftLenReal specifies length of RFFT/RIFFT Process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192. ifftFlagR controls whether a forward or inverse transform is computed. Set(=1) ifftFlagR to calculate RIFFT, otherwise RFFT is calculated. bitReverseFlag controls whether output is in normal order or bit reversed order. Set(=1) bitReverseFlag for output to be in normal order otherwise output is in bit reversed order. | void arm_rfft_q15 | ( | const arm_rfft_instance_q15 * | S, | 
| q15_t * | pSrc, | ||
| q15_t * | pDst | ||
| ) | 
| [in] | S | points to an instance of the Q15 RFFT/RIFFT structure | 
| [in] | pSrc | points to input buffer (Source buffer is modified by this function.) | 
| [out] | pDst | points to output buffer | 
 
 
| void arm_rfft_q31 | ( | const arm_rfft_instance_q31 * | S, | 
| q31_t * | pSrc, | ||
| q31_t * | pDst | ||
| ) | 
| [in] | S | points to an instance of the Q31 RFFT/RIFFT structure | 
| [in] | pSrc | points to input buffer (Source buffer is modified by this function) | 
| [out] | pDst | points to output buffer | 
 
