Template Parameters - 2023.1 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.1 English

The following table lists parameters for the FIR filters on AIE-ML.

Note

TP_RND values may vary between AIE and AIE-ML for the same rounding mechanism. String macro defitions are recommended for convienience and compatibility between devices. For AIE, see Parameters Supported by FIR Filters.

Table 53 Parameters Supported by FIR Filters
Parameter Name Type Description Range
TT_DATA Typename Data Type int16, cint16
TT_COEFF Typename Coefficient type int16 cint16
TP_FIR_LEN Unsigned int The number of taps

Min - 4,

Max - see Maximum FIR Length

TP_SHIFT Unsigned int The number of bits to shift unscaled result down by before output. 0 to 61
TP_RND Unsigned int Round mode

0 = rnd_floor truncate or floor

1 = rnd_ceil ceiling

2 = rnd_sym_floor floor to zero

3 = rnd_sym_ceil ceil to infinity

8 = rnd_neg_inf round to negative infinity

9 = rnd_pos_inf round to positive infinity

10 = rnd_sym_zero symmetrical to zero

11 = rnd_sym_inf symmetrical to infinity

12 = rnd_conv_even convergent to even

13 = rnd_conv_odd convergent to odd

TP_INPUT_WINDOW_VSIZE Unsigned int The number of samples processed by the graph in a single iteration run. For windows, defines the size of input window. For streams, it impacts the number of input samples operated on in a single iteration of the kernel.

Must be a multiple of the 256-bits In addition, must by divisible by: TP_SSR and TP_DECIMATE_FACTOR.

No enforced range, but large windows will result in mapper errors due to excessive RAM use, for windowed API implementations.

TP_CASC_LEN Unsigned int The number of cascaded kernels to use for this FIR.

1 to 9.

Defaults to 1 if not set.

TP_USE_COEFF_RELOAD Unsigned int

Enable reloadable coefficient feature.

An additional ‘coeff’ port will appear on the graph.

0 (no reload), 1 (use reloads).

Defaults to 0 if not set.

TP_API Unsigned int I/O interface port type

0 = Window

1 = Stream

For a list of template parameters for each FIR variant, see API Reference Overview.

TP_CASC_LEN describes the number of AIE processors to split the operation over, which allows resources to be traded for higher performance. TP_CASC_LEN must be in the range 1 (default) to 9. FIR graph instance creates TP_CASC_LEN kernels. Computation workload of the FIR (defined by its length parameter TP_FIR_LEN) is divided and each kernel in the graph is then assigned a fraction of the workload, i.e. each kernel performs TP_FIR_LEN / TP_CASC_LEN. Kernels are connected with cascade ports, which pass partial accumulation products downstream until last kernel in chain produces the output.

TP_USE_COEFF_RELOAD allows the user to select if runtime coefficient reloading should be used. When defining the parameter:

  • 0 = static coefficients, defined in filter constructor

  • 1 = reloadable coefficients, passed as argument to runtime function.

    Note

    When used, port port<input> coeff; will be added to the FIR.