CMSIS-DSP: DCT Type IV Tables

| CMSIS-DSP Version 1.5.2 CMSIS DSP Software Library

- Main Page
- Usage and Description
- Reference

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Variables
DCT Type IV Tables
DCT 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().