#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. |