dynamicFilter overload (2) - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
#include "xf_database/dynamic_filter.hpp"
template <
    int W,
    int WP
    >
void dynamicFilter (
    hls::stream <ap_uint <32>>& filter_cfg_strm,
    hls::stream <ap_uint <W>>& v0_strm,
    hls::stream <ap_uint <W>>& v1_strm,
    hls::stream <ap_uint <W>>& v2_strm,
    hls::stream <ap_uint <WP>>& pay_in_strm,
    hls::stream <bool>& e_in_strm,
    hls::stream <ap_uint <WP>>& pay_out_strm,
    hls::stream <bool>& e_pay_out_strm
    )

Filter payloads according to conditions set during run-time.

This function is a wrapper-around the four-condition-column dynamic_filter, just duplicating the columns to feed all its inputs. Thus they share the same configuration bit pattern. All op related to the 4th column should be set to FOP_DC .

Parameters:

W width of all condition column streams, in bits.
WP width of payload column, in bits.
filter_cfg_strm stream of raw config bits for this primitive.
v0_strm condition column stream 0.
v1_strm condition column stream 1.
v2_strm condition column stream 2.
pay_in_strm payload input stream.
e_in_strm end flag stream for input table.
pay_out_strm payload output stream.
e_pay_out_strm end flag stream for payload output.