Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Efficient filterbank based FIR filter

Discussion

This module is deprecated; use the FilterbankFIRNChanV2 module instead. DSP Concepts Proprietary IP.

...

Code Block
typedef struct _ModuleFilterbankFIRNChan
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 numBlocks;                              // Length of each complex FIR filter
    INT32 numTaps;                                // Length of time domain coefficients
    INT32 disableAccelerators;                    // User options for future use
    INT32 stateIndex;                             // Write index in to current complex state variables
    FLOAT32* coeffs;                              // Time domain filter coefficients
    FLOAT32* modInCoeffs;                         // Forward modulation coefficient array
    FLOAT32* modOutCoeffs;                        // Inverse modulation coefficient array
    void * fft_hardware_specific_struct_pointer;  // This may point to a struct that varies based on the target platform
    void * fft_size_aligned_io_buffer_pointer;    // This points to a buffer which is aligned by fft size
    void * fft_twiddle_buffer_pointer;            // This points to twiddle buffer
    void * ifft_hardware_specific_struct_pointer; // This may point to a struct that varies based on the target platform
    void * ifft_size_aligned_io_buffer_pointer;   // This points to a buffer which is aligned by fft size
    void * ifft_twiddle_buffer_pointer;           // This points to twiddle buffer
    float ** filterBankState;                     // Array of pointers to filter bank states
    float ** filterBankCoeffs;                    // Array of pointers to filter bank coeffs
    void * hardware_specific_struct_pointer;      // This is the internal TCB array used for ADI FIR accelerator
} ModuleFilterbankFIRNChanClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

numBlocks

int

const

1

5

Unrestricted

numTaps

int

const

1

1024

Unrestricted

disableAccelerators

int

const

1

0

Unrestricted

stateIndex

int

state

1

0

Unrestricted

coeffs

float*

parameter

0

[1024 x 1]

Unrestricted

modInCoeffs

float*

state

1

[256 x 1]

Unrestricted

modOutCoeffs

float*

state

1

[256 x 1]

Unrestricted

fft_hardware_specific_struct_pointer

void *

state

1

Unrestricted

fft_size_aligned_io_buffer_pointer

void *

state

1

Unrestricted

fft_twiddle_buffer_pointer

void *

state

1

Unrestricted

ifft_hardware_specific_struct_pointer

void *

state

1

Unrestricted

ifft_size_aligned_io_buffer_pointer

void *

state

1

Unrestricted

ifft_twiddle_buffer_pointer

void *

state

1

Unrestricted

filterBankState

float **

state

1

Unrestricted

filterBankCoeffs

float **

state

1

Unrestricted

hardware_specific_struct_pointer

void *

state

1

Unrestricted

Pins

Input Pins

Name: in

Description: Time domain input

...