Edge AI Add-on API 2.2.0
Loading...
Searching...
No Matches

Data Structures

struct  nrf_dsp_cfft_i16_s
 
struct  nrf_dsp_rfft_i16_s
 

Typedefs

typedef struct nrf_dsp_cfft_i16_s nrf_dsp_cfft_i16_t
 
typedef struct nrf_dsp_rfft_i16_s nrf_dsp_rfft_i16_t
 
typedef void(* nrf_dsp_cfft_radix_func_i16_t) (const nrf_dsp_cfft_i16_t *p_cfft, int16_t *p_input)
 Complex FFT 16-bit radix function type.
 

Functions

void nrf_dsp_rfft_init_i16 (nrf_dsp_rfft_i16_t *p_rfft, uint16_t len, const int16_t *p_twiddle_rfft, const int16_t *p_twiddle_cfft, const uint16_t *p_bitrev_table, uint16_t bitrev_table_len)
 Initialize real FFT instance structure.
 
void nrf_dsp_rfft_i16 (const nrf_dsp_rfft_i16_t *p_rfft, int16_t *p_input, int16_t *p_output)
 The fixed-point 16-bit real FFT function Real FFT algorithms take advantage of the symmetry properties of the FFT and have a speed advantage over complex algorithms of the same length. This function can compute results "in-place" of input buffer.
 
void nrf_dsp_rfft_rdx_i16 (const nrf_dsp_rfft_i16_t *p_rfft, int16_t *p_input, int16_t *p_output, nrf_dsp_cfft_radix_func_i16_t radix_func)
 The fixed-point 16-bit real FFT function with custom radix function to use. Real FFT algorithms take advantage of the symmetry properties of the FFT and have a speed advantage over complex algorithms of the same length. This function can compute results "in-place" of input buffer.
 
void nrf_dsp_cfft_init_i16 (nrf_dsp_cfft_i16_t *p_cfft, uint16_t len, const int16_t *p_twiddle_cfft, const uint16_t *p_bitrev_table, uint16_t bitrev_table_len)
 Initialize complex FFT instance structure.
 
void nrf_dsp_cfft_i16 (const nrf_dsp_cfft_i16_t *p_cfft, int16_t *p_input, uint8_t bitreverse_flag)
 The fixed-point 16-bit complex FFT function.
 
void nrf_dsp_cfft_rdx_i16 (const nrf_dsp_cfft_i16_t *p_cfft, int16_t *p_input, uint8_t bitreverse_flag, nrf_dsp_cfft_radix_func_i16_t radix_func)
 The fixed-point 16-bit complex FFT function with custom radix function to use.
 
void nrf_dsp_cfft_radix4_i16 (const nrf_dsp_cfft_i16_t *p_cfft, int16_t *p_input)
 The fixed-point 16-bit complex FFT uses a radix algorithm. Single radix-8 1-stage, algorithm. The algorithm supports lengths of [16, 64, 256, 1024, 4096] and each length uses a different twiddle factor table.
 
void nrf_dsp_cfft_radix4by2_i16 (const nrf_dsp_cfft_i16_t *p_cfft, int16_t *p_input)
 The fixed-point 16-bit complex FFT uses a mixed-radix algorithm. Multiple radix-4 stages are performed along with a radix-1 stage, as needed. The algorithm supports lengths of [32, 128, 512, 2048] and each length uses a different twiddle factor table.
 
uint16_t nrf_dsp_rfft_twiddle_factors_i16 (int16_t *p_twiddle_rfft, uint16_t fft_len)
 Generate fixed-point 16 bit real twiddle factors buffer:
 
uint16_t nrf_dsp_cfft_twiddle_factors_i16 (int16_t *p_twiddle_cfft, uint16_t fft_len)
 Generate fixed-point 16 bit complex twiddle factors buffer.
 

Detailed Description