#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 <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 3rd and 4th columns 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. |
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. |