Structures - 7.2 English - PG149

FIR Compiler LogiCORE IP Product Guide ( PG149)

Document ID
PG149
Release Date
2025-06-11
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 1. 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 2. 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 MATLAB Interface) 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 3. 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.