Real FFT F32 Functions
- RISCV_DSP_ATTRIBUTE void riscv_rfft_fast_f32 (const riscv_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_32_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_64_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_128_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_256_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_512_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_1024_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_2048_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_4096_f32 (riscv_rfft_fast_instance_f32 *S)
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_f32 (riscv_rfft_fast_instance_f32 *S, uint16_t fftLen)
- group RealFFTF32
Functions
- RISCV_DSP_ATTRIBUTE void riscv_rfft_fast_f32 (const riscv_rfft_fast_instance_f32 *S, float32_t *p, float32_t *pOut, uint8_t ifftFlag)
Processing function for the floating-point real FFT.
- Parameters
S – [in] points to an riscv_rfft_fast_instance_f32 structure
p – [in] points to input buffer (Source buffer is modified by this function.)
pOut – [in] points to output buffer
ifftFlag – [in]
value = 0: RFFT
value = 1: RIFFT
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_32_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 32pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_64_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 64pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_128_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 128pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_256_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 256pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_512_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 512pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_1024_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 1024pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_2048_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 2048pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_4096_f32 (riscv_rfft_fast_instance_f32 *S)
Initialization function for the 4096pt floating-point real FFT.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR : an error is detected
- RISCV_DSP_ATTRIBUTE riscv_status riscv_rfft_fast_init_f32 (riscv_rfft_fast_instance_f32 *S, uint16_t fftLen)
Generic initialization function for the floating-point real FFT.
- Description
The parameter
fftLen
specifies the length of RFFT/CIFFT process. Supported FFT Lengths are 32, 64, 128, 256, 512, 1024, 2048, 4096.This Function also initializes Twiddle factor table pointer and Bit reversal table pointer.
This function should be used only if you don’t know the FFT sizes that you’ll need at build time. The use of this function will prevent the linker from removing the FFT tables that are not needed and the library code size will be bigger than needed.
If you use NMSIS-DSP as a static library, and if you know the FFT sizes that you need at build time, then it is better to use the initialization functions defined for each FFT size.
- Parameters
S – [inout] points to an riscv_rfft_fast_instance_f32 structure
fftLen – [in] length of the Real Sequence
- Returns
execution status
RISCV_MATH_SUCCESS : Operation successful
RISCV_MATH_ARGUMENT_ERROR :
fftLen
is not a supported length