![]() |
Project Ne10
An Open Optimized Software Library Project for the ARM Architecture
|
Modules | |
| Float/Fixed point Complex FFT Destroy functions | |
| User-callable function to destroy all necessary storage space for the fft. | |
Functions | |
| ne10_fft_cfg_float32_t | ne10_fft_alloc_c2c_float32_neon (ne10_int32_t nfft) |
| User-callable function to allocate all necessary storage space for the fft. | |
| ne10_fft_cfg_int32_t | ne10_fft_alloc_c2c_int32_neon (ne10_int32_t nfft) |
| User-callable function to allocate all necessary storage space for the fft. | |
| ne10_fft_cfg_float32_t | ne10_fft_alloc_c2c_float32_c (ne10_int32_t nfft) |
| User-callable function to allocate all necessary storage space for the fft. | |
| void | ne10_fft_c2c_1d_float32_c (ne10_fft_cpx_float32_t *fout, ne10_fft_cpx_float32_t *fin, ne10_fft_cfg_float32_t cfg, ne10_int32_t inverse_fft) |
| Mixed radix-2/3/4/5 complex FFT/IFFT of float(32-bit) data. | |
| void | ne10_fft_c2c_1d_float32_neon (ne10_fft_cpx_float32_t *fout, ne10_fft_cpx_float32_t *fin, ne10_fft_cfg_float32_t cfg, ne10_int32_t inverse_fft) |
| Mixed radix-2/3/4/5 complex FFT/IFFT of float(32-bit) data. | |
| ne10_fft_cfg_int16_t | ne10_fft_alloc_c2c_int16 (ne10_int32_t nfft) |
| User-callable function to allocate all necessary storage space for the fft. | |
| void | ne10_fft_c2c_1d_int16_c (ne10_fft_cpx_int16_t *fout, ne10_fft_cpx_int16_t *fin, ne10_fft_cfg_int16_t cfg, ne10_int32_t inverse_fft, ne10_int32_t scaled_flag) |
| Mixed radix-2/4 complex FFT/IFFT of 16-bit fixed point data. | |
| void | ne10_fft_c2c_1d_int16_neon (ne10_fft_cpx_int16_t *fout, ne10_fft_cpx_int16_t *fin, ne10_fft_cfg_int16_t cfg, ne10_int32_t inverse_fft, ne10_int32_t scaled_flag) |
| Mixed radix-2/4 complex FFT/IFFT of 16-bit fixed point data. | |
| ne10_fft_cfg_int32_t | ne10_fft_alloc_c2c_int32_c (ne10_int32_t nfft) |
| User-callable function to allocate all necessary storage space for the fft. | |
| void | ne10_fft_c2c_1d_int32_c (ne10_fft_cpx_int32_t *fout, ne10_fft_cpx_int32_t *fin, ne10_fft_cfg_int32_t cfg, ne10_int32_t inverse_fft, ne10_int32_t scaled_flag) |
| Mixed radix-2/4 complex FFT/IFFT of 32-bit fixed point data. | |
| void | ne10_fft_c2c_1d_int32_neon (ne10_fft_cpx_int32_t *fout, ne10_fft_cpx_int32_t *fin, ne10_fft_cfg_int32_t cfg, ne10_int32_t inverse_fft, ne10_int32_t scaled_flag) |
| Mixed radix-2/4 complex FFT/IFFT of 32-bit fixed point data. | |
2^N(N>0) size. The function list is as follows: {real[0], imag[0], real[1], imag[1], real[2], imag[2].... real[fftSize-2], imag[fftSize-2], real[fftSize-1], imag[fftSize-1]} 2^N (N is 1, 2, 3, 4, 5, 6, ......).
include "NE10.h"
...
{
fftSize = 2^N; //N is 1, 2, 3, 4, 5, 6....
in = (ne10_fft_cpx_float32_t*) NE10_MALLOC (fftSize * sizeof (ne10_fft_cpx_float32_t));
out = (ne10_fft_cpx_float32_t*) NE10_MALLOC (fftSize * sizeof (ne10_fft_cpx_float32_t));
ne10_fft_cfg_float32_t cfg;
...
cfg = ne10_fft_alloc_c2c_float32 (fftSize);
...
//FFT
ne10_fft_c2c_1d_float32_c (out, in, cfg, 0);
...
//IFFT
ne10_fft_c2c_1d_float32_c (out, in, cfg, 1);
...
NE10_FREE (in);
NE10_FREE (out);
NE10_FREE (cfg);
}
Note:
128/2 = 64. So that the factor buffer is[4, 64, 4, 32, 4, 8, 4, 2, 2, 1]| ne10_fft_cfg_float32_t ne10_fft_alloc_c2c_float32_c | ( | ne10_int32_t | nfft | ) |
User-callable function to allocate all necessary storage space for the fft.
| [in] | nfft | length of FFT |
Definition at line 997 of file NE10_fft_float32.c.
| ne10_fft_cfg_float32_t ne10_fft_alloc_c2c_float32_neon | ( | ne10_int32_t | nfft | ) |
User-callable function to allocate all necessary storage space for the fft.
| [in] | nfft | length of FFT |
Definition at line 337 of file NE10_fft.c.
| ne10_fft_cfg_int16_t ne10_fft_alloc_c2c_int16 | ( | ne10_int32_t | nfft | ) |
User-callable function to allocate all necessary storage space for the fft.
| [in] | nfft | length of FFT |
Definition at line 1030 of file NE10_fft_int16.c.
| ne10_fft_cfg_int32_t ne10_fft_alloc_c2c_int32_c | ( | ne10_int32_t | nfft | ) |
User-callable function to allocate all necessary storage space for the fft.
| [in] | nfft | length of FFT |
Definition at line 1027 of file NE10_fft_int32.c.
| ne10_fft_cfg_int32_t ne10_fft_alloc_c2c_int32_neon | ( | ne10_int32_t | nfft | ) |
User-callable function to allocate all necessary storage space for the fft.
| [in] | nfft | length of FFT |
Definition at line 435 of file NE10_fft.c.
| void ne10_fft_c2c_1d_float32_c | ( | ne10_fft_cpx_float32_t * | fout, |
| ne10_fft_cpx_float32_t * | fin, | ||
| ne10_fft_cfg_float32_t | cfg, | ||
| ne10_int32_t | inverse_fft | ||
| ) |
Mixed radix-2/3/4/5 complex FFT/IFFT of float(32-bit) data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
Definition at line 1065 of file NE10_fft_float32.c.
| void ne10_fft_c2c_1d_float32_neon | ( | ne10_fft_cpx_float32_t * | fout, |
| ne10_fft_cpx_float32_t * | fin, | ||
| ne10_fft_cfg_float32_t | cfg, | ||
| ne10_int32_t | inverse_fft | ||
| ) |
Mixed radix-2/3/4/5 complex FFT/IFFT of float(32-bit) data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
Definition at line 676 of file NE10_fft_float32.neon.c.
| void ne10_fft_c2c_1d_int16_c | ( | ne10_fft_cpx_int16_t * | fout, |
| ne10_fft_cpx_int16_t * | fin, | ||
| ne10_fft_cfg_int16_t | cfg, | ||
| ne10_int32_t | inverse_fft, | ||
| ne10_int32_t | scaled_flag | ||
| ) |
Mixed radix-2/4 complex FFT/IFFT of 16-bit fixed point data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
| [in] | scaled_flag | scale flag, 0 unscaled, 1 scaled |
Definition at line 1110 of file NE10_fft_int16.c.
| void ne10_fft_c2c_1d_int16_neon | ( | ne10_fft_cpx_int16_t * | fout, |
| ne10_fft_cpx_int16_t * | fin, | ||
| ne10_fft_cfg_int16_t | cfg, | ||
| ne10_int32_t | inverse_fft, | ||
| ne10_int32_t | scaled_flag | ||
| ) |
Mixed radix-2/4 complex FFT/IFFT of 16-bit fixed point data.
Mixed radix-2/4 complex FFT/IFFT of 32-bit fixed point data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
| [in] | scaled_flag | scale flag, 0 unscaled, 1 scaled |
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | *twiddles | point to the twiddle buffer |
| [in] | *factors | point to factors buffer. 0: stage number, 1: stride for the first stage, others: radix and stage's fft length/radix |
| [in] | nfft | length of FFT |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
| [in] | scaled_flag | scale flag, 0 unscaled, 1 scaled |
Definition at line 746 of file NE10_fft_int16.neon.c.
| void ne10_fft_c2c_1d_int32_c | ( | ne10_fft_cpx_int32_t * | fout, |
| ne10_fft_cpx_int32_t * | fin, | ||
| ne10_fft_cfg_int32_t | cfg, | ||
| ne10_int32_t | inverse_fft, | ||
| ne10_int32_t | scaled_flag | ||
| ) |
Mixed radix-2/4 complex FFT/IFFT of 32-bit fixed point data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
| [in] | scaled_flag | scale flag, 0 unscaled, 1 scaled |
Definition at line 1072 of file NE10_fft_int32.c.
| void ne10_fft_c2c_1d_int32_neon | ( | ne10_fft_cpx_int32_t * | fout, |
| ne10_fft_cpx_int32_t * | fin, | ||
| ne10_fft_cfg_int32_t | cfg, | ||
| ne10_int32_t | inverse_fft, | ||
| ne10_int32_t | scaled_flag | ||
| ) |
Mixed radix-2/4 complex FFT/IFFT of 32-bit fixed point data.
| [out] | *fout | point to the output buffer (out-of-place) |
| [in] | *fin | point to the input buffer (out-of-place) |
| [in] | cfg | point to the config struct |
| [in] | inverse_fft | the flag of IFFT, 0: FFT, 1: IFFT |
| [in] | scaled_flag | scale flag, 0 unscaled, 1 scaled |
Definition at line 1220 of file NE10_fft_int32.neon.c.