CMSIS DSP library

Dependents:   KL25Z_FFT_Demo Hat_Board_v5_1 KL25Z_FFT_Demo_tony KL25Z_FFT_Demo_tony ... more

Fork of mbed-dsp by mbed official

Embed: (wiki syntax)

« Back to documentation index

Complex FFT Tables

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 1366 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 417 of file arm_common_tables.c.

const float32_t twiddleCoef_16[32]
Initial value:
 {
    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 250 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 2408 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 563 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 284 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 4474 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 837 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 334 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 10160 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 8596 of file arm_common_tables.c.