DCT Type IV TablesDCT Type IV Functions

Variables

static const float32_t Weights_128 [256]
 
static const float32_t Weights_512 [1024]
 
static const float32_t Weights_2048 [4096]
 
static const float32_t Weights_8192 [16384]
 
static const float32_t cos_factors_128 [128]
 
static const float32_t cos_factors_512 [512]
 
static const float32_t cos_factors_2048 [2048]
 
static const float32_t cos_factors_8192 [8192]
 
static const q15_t ALIGN4 WeightsQ15_128 [256]
 
static const q15_t ALIGN4 WeightsQ15_512 [1024]
 
static const q15_t ALIGN4 WeightsQ15_2048 [4096]
 
static const q15_t ALIGN4 WeightsQ15_8192 [16384]
 
static const q15_t ALIGN4 cos_factorsQ15_128 [128]
 
static const q15_t ALIGN4 cos_factorsQ15_512 [512]
 
static const q15_t ALIGN4 cos_factorsQ15_2048 [2048]
 
static const q15_t ALIGN4 cos_factorsQ15_8192 [8192]
 
static const q31_t WeightsQ31_128 [256]
 
static const q31_t WeightsQ31_512 [1024]
 
static const q31_t WeightsQ31_2048 [4096]
 
static const q31_t WeightsQ31_8192 [16384]
 
static const q31_t cos_factorsQ31_128 [128]
 
static const q31_t cos_factorsQ31_512 [512]
 
static const q31_t cos_factorsQ31_2048 [2048]
 
static const q31_t cos_factorsQ31_8192 [8192]
 

Description

Variable Documentation

const float32_t cos_factors_128[128]
static
cosFactor tables are generated using the formula :
cos_factors[n] = 2 * cos((2n+1)*pi/(4*N))
C command to generate the table
 for(i = 0; i< N; i++)
{
   cos_factors[i]= 2 * cos((2*i+1)*c/2);
} 
where N is the number of factors to generate and c is pi/(2*N)

Referenced by arm_dct4_init_f32().

const float32_t cos_factors_2048[2048]
static

Referenced by arm_dct4_init_f32().

const float32_t cos_factors_512[512]
static

Referenced by arm_dct4_init_f32().

const float32_t cos_factors_8192[8192]
static

Referenced by arm_dct4_init_f32().

const q15_t ALIGN4 cos_factorsQ15_128[128]
static
cosFactor tables are generated using the formula :
 cos_factors[n] = 2 * cos((2n+1)*pi/(4*N)) 
C command to generate the table
for(i = 0; i< N; i++)
{
  cos_factors[i]= 2 * cos((2*i+1)*c/2);
} 
where N is the number of factors to generate and c is pi/(2*N)
Then converted to q15 format by multiplying with 2^31 and saturated if required.

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 cos_factorsQ15_2048[2048]
static

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 cos_factorsQ15_512[512]
static

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 cos_factorsQ15_8192[8192]
static

Referenced by arm_dct4_init_q15().

const q31_t cos_factorsQ31_128[128]
static
cosFactor tables are generated using the formula :
cos_factors[n] = 2 * cos((2n+1)*pi/(4*N))
C command to generate the table
for(i = 0; i< N; i++)
{
  cos_factors[i]= 2 * cos((2*i+1)*c/2);
} 
where N is the number of factors to generate and c is pi/(2*N)
Then converted to q31 format by multiplying with 2^31 and saturated if required.

Referenced by arm_dct4_init_q31().

const q31_t cos_factorsQ31_2048[2048]
static

Referenced by arm_dct4_init_q31().

const q31_t cos_factorsQ31_512[512]
static

Referenced by arm_dct4_init_q31().

const q31_t cos_factorsQ31_8192[8192]
static

Referenced by arm_dct4_init_q31().

const float32_t Weights_128[256]
static
Weights tables are generated using the formula :
weights[n] = e^(-j*n*pi/(2*N))
C command to generate the table
for(i = 0; i< N; i++)
{
   weights[2*i]= cos(i*c);
   weights[(2*i)+1]= -sin(i * c);
} 
Where N is the Number of weights to be calculated and c is pi/(2*N)
In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.

Referenced by arm_dct4_init_f32().

const float32_t Weights_2048[4096]
static

Referenced by arm_dct4_init_f32().

const float32_t Weights_512[1024]
static

Referenced by arm_dct4_init_f32().

const float32_t Weights_8192[16384]
static

Referenced by arm_dct4_init_f32().

const q15_t ALIGN4 WeightsQ15_128[256]
static
Weights tables are generated using the formula :
weights[n] = e^(-j*n*pi/(2*N))
C command to generate the table
for(i = 0; i< N; i++)
{
  weights[2*i]= cos(i*c);
  weights[(2*i)+1]= -sin(i * c);
} 
where N is the Number of weights to be calculated and c is pi/(2*N)
Converted the output to q15 format by multiplying with 2^31 and saturated if required.
In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 WeightsQ15_2048[4096]
static

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 WeightsQ15_512[1024]
static

Referenced by arm_dct4_init_q15().

const q15_t ALIGN4 WeightsQ15_8192[16384]
static

Referenced by arm_dct4_init_q15().

const q31_t WeightsQ31_128[256]
static
Weights tables are generated using the formula :
weights[n] = e^(-j*n*pi/(2*N))
C command to generate the table
for(i = 0; i< N; i++)
{
  weights[2*i]= cos(i*c);
  weights[(2*i)+1]= -sin(i * c);
} 
where N is the Number of weights to be calculated and c is pi/(2*N)
Convert the output to q31 format by multiplying with 2^31 and saturated if required.
In the tables below the real and imaginary values are placed alternatively, hence the array length is 2*N.

Referenced by arm_dct4_init_q31().

const q31_t WeightsQ31_2048[4096]
static

Referenced by arm_dct4_init_q31().

const q31_t WeightsQ31_512[1024]
static

Referenced by arm_dct4_init_q31().

const q31_t WeightsQ31_8192[16384]
static

Referenced by arm_dct4_init_q31().