Structures - 7.2 English

FIR Compiler (PG149)

Document ID
PG149
Release Date
2022-10-26
Version
7.2 English

The xip_fir_v7_2_config structure contains all parameters that affect the filter configuration. Most are duplicates of the core XCO parameters. The filter coefficients of the model are provided using the coeff field and are quantized (if specified) in the same manner as by the core GUI.

Table 5-6: xip_fir_v7_2_config

Field Name

Type

Description

name

const char*

filter_type

unsigned int

Select from:
XIP_FIR_SINGLE_RATE
XIP_FIR_INTERPOLATION
XIP_FIR_DECIMATION
XIP_FIR_HILBERT
XIP_FIR_INTERPOLATED

rate_change

unsigned int

Select from:
XIP_FIR_INTEGER_RATE
XIP_FIR_FRACTIONAL_RATE

interp_rate

unsigned int

Specifies the interpolation (or up-sampling) factor

decim_rate

unsigned int

Specifies the decimation (or down-sampling) factor

zero_pack_factor

unsigned int

Specifies the zero packing factor for Interpolated filters

coeff

const double*

Pointer to coefficient array

coeff_padding

unsigned int

Specifies the amount of zero padding added to the front of the filter.

The core GUI reports this value for a given core configuration.

num_coeffs

unsigned int

Specifies the number of coefficients in one filter

coeff_sets

unsigned int

Specifies the number of coefficient sets in the coeff array

reloadable

unsigned int

Specifies if the coefficients are reloadable; 0 = No, 1 = Yes

is_halfband

unsigned int

Specifies if halfband coefficients have been specified; 0 = No, 1 = Yes

quantization

unsigned int

Select from:
XIP_FIR_INTEGER_COEFF
XIP_FIR_QUANTIZED_ONLY
XIP_FIR_MAXIMIZE_DYNAMIC_RANGE

coeff_width

unsigned int

The model uses these parameters, if requested, to quantize the supplied coefficients

coeff_fract_width

unsigned int

chan_seq

unsigned int

Select from:
XIP_FIR_BASIC_CHAN_SEQ
XIP_FIR_ADVANCED_CHAN_SEQ

num_channels

unsigned int

Specifies the number of data channels supported

init_pattern

xip_fir_v7_2_pattern

Specifies the initial channel pattern used by the model when Advanced Interleaved Channels have been selected

num_paths

unsigned int

Specifies the number of datapaths supported

data_width

unsigned int

The model uses these parameters to quantize the input samples of the model

data_fract_width

unsigned int

output_rounding_mode

unsigned int

Select from:
XIP_FIR_FULL_PRECISION
XIP_FIR_TRUNCATE_LSBS
XIP_FIR_SYMMETRIC_ZERO
XIP_FIR_SYMMETRIC_INF
XIP_FIR_CONVERGENT_EVEN
XIP_FIR_CONVERGENT_ODD
XIP_FIR_NON_SYMMETRIC_DOWN
XIP_FIR_NON_SYMMETRIC_UP

output_width

unsigned int

Ignored when XIP_FIR_FULL_PRECISION

output_fract_width

unsigned int

READ ONLY
Provides the number of fractional bits present in the output word

config_method

unsigned int

Select from:
XIP_FIR_CONFIG_SINGLE
XIP_FIR_CONFIG_BY_CHANNEL

The xip_fir_v7_2_cnfg_packet structure is supplied to the xip_fir_v7_2_config_send function (see Send CONFIG Packet ) to update the channel pattern and coefficient set used by the model.

Table 5-7: xip_fir_v7_2_cnfg_packet

Field Name

Type

Description

chanpat

xip_fir_v7_2_pattern

Specifies the Advanced Interleaved Channel pattern to be used

fsel

xip_array_uint*

Filter set to use, 1-D array; specifies one value for all channels (XIP_FIR_CONFIG_SINGLE) or individually for each interleaved channel (XIP_FIR_CONFIG_BY_CHANNEL)

The xip_fir_v7_2_rld_packet structure is supplied to the xip_fir_v7_2_reload_send function (see Send RELOAD Packet ) to update a given coefficient set with new filter coefficients. As with the core, a configuration packet must be processed by the model to apply any pending reload packets.

Table 5-8: xip_fir_v7_2_rld_packet

Field Name

Type

Description

fsel

Int

Filter set to reload

coeff

xip_array_real*

Pointer to an array containing the new coefficients to be loaded, 1-D array.