V4.0.1 of the ARM CMSIS DSP libraries. Note that arm_bitreversal2.s, arm_cfft_f32.c and arm_rfft_fast_f32.c had to be removed. arm_bitreversal2.s will not assemble with the online tools. So, the fast f32 FFT functions are not yet available. All the other FFT functions are available.
Dependents: MPU9150_Example fir_f32 fir_f32 MPU9150_nucleo_noni2cdev ... more
Complex FFT Tables
[Transform Functions]
Variables | |
const uint16_t | armBitRevTable [1024] |
const float32_t | twiddleCoef_16 [32] |
const float32_t | twiddleCoef_32 [64] |
const float32_t | twiddleCoef_64 [128] |
const float32_t | twiddleCoef_128 [256] |
const float32_t | twiddleCoef_256 [512] |
const float32_t | twiddleCoef_512 [1024] |
const float32_t | twiddleCoef_1024 [2048] |
const float32_t | twiddleCoef_2048 [4096] |
const float32_t | twiddleCoef_4096 [8192] |
const q31_t | twiddleCoefQ31 [6144] |
const q15_t ALIGN4 | twiddleCoefQ15 [6144] |
Variable Documentation
const uint16_t armBitRevTable[1024] |
- Pseudo code for Generation of Bit reversal Table is
for(l=1;l <= N/4;l++) { for(i=0;i<logN2;i++) { a[i]=l&(1<<i); } for(j=0; j<logN2; j++) { if (a[j]!=0) y[l]+=(1<<((logN2-1)-j)); } y[l] = y[l] >> 1; }
- where N = 4096 logN2 = 12
- N is the maximum FFT Size supported
Definition at line 80 of file arm_common_tables.c.
const float32_t twiddleCoef_1024[2048] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 1322 of file arm_common_tables.c.
const float32_t twiddleCoef_128[256] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 373 of file arm_common_tables.c.
const float32_t twiddleCoef_16[32] |
{ 1.000000000f, 0.000000000f, 0.923879533f, 0.382683432f, 0.707106781f, 0.707106781f, 0.382683432f, 0.923879533f, 0.000000000f, 1.000000000f, -0.382683432f, 0.923879533f, -0.707106781f, 0.707106781f, -0.923879533f, 0.382683432f, -1.000000000f, 0.000000000f, -0.923879533f, -0.382683432f, -0.707106781f, -0.707106781f, -0.382683432f, -0.923879533f, -0.000000000f, -1.000000000f, 0.382683432f, -0.923879533f, 0.707106781f, -0.707106781f, 0.923879533f, -0.382683432f }
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 206 of file arm_common_tables.c.
const float32_t twiddleCoef_2048[4096] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 2364 of file arm_common_tables.c.
const float32_t twiddleCoef_256[512] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 519 of file arm_common_tables.c.
const float32_t twiddleCoef_32[64] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 240 of file arm_common_tables.c.
const float32_t twiddleCoef_4096[8192] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 4430 of file arm_common_tables.c.
const float32_t twiddleCoef_512[1024] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 793 of file arm_common_tables.c.
const float32_t twiddleCoef_64[128] |
- Example code for Floating-point Twiddle factors Generation:
for(i = 0; i< N/; i++) { twiddleCoef[2*i]= cos(i * 2*PI/(float)N); twiddleCoef[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are in interleaved fashion
Definition at line 290 of file arm_common_tables.c.
const q15_t ALIGN4 twiddleCoefQ15[6144] |
- Example code for Q15 Twiddle factors Generation::
for(i = 0; i< 3N/4; i++) { twiddleCoefQ15[2*i]= cos(i * 2*PI/(float)N); twiddleCoefQ15[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are interleaved fashion
- Convert Floating point to Q15(Fixed point 1.15): round(twiddleCoefQ15(i) * pow(2, 15))
Definition at line 9603 of file arm_common_tables.c.
const q31_t twiddleCoefQ31[6144] |
- Example code for Q31 Twiddle factors Generation::
for(i = 0; i< 3N/4; i++) { twiddleCoefQ31[2*i]= cos(i * 2*PI/(float)N); twiddleCoefQ31[2*i+1]= sin(i * 2*PI/(float)N); }
- where N = 4096 and PI = 3.14159265358979
- Cos and Sin values are interleaved fashion
- Convert Floating point to Q31(Fixed point 1.31): round(twiddleCoefQ31(i) * pow(2, 31))
Definition at line 8552 of file arm_common_tables.c.
Generated on Tue Jul 12 2022 19:48:46 by 1.7.2