#include "xf_database/dynamic_eval.hpp"
template < typename TStrm1, typename TStrm2, typename TStrm3, typename TStrm4, typename TConst1, typename TConst2, typename TConst3, typename TConst4, typename TOut > void dynamicEval ( ap_uint <289> config, hls::stream <TStrm1>& strm_in1, hls::stream <TStrm2>& strm_in2, hls::stream <TStrm3>& strm_in3, hls::stream <TStrm4>& strm_in4, hls::stream <bool>& strm_in_end, hls::stream <TOut>& strm_out, hls::stream <bool>& strm_out_end )
Dynamic expression evaluation.
This primitive has four fixed number of column inputs, and allows up to four constants to be specified via configuration. The operation between the column values and constants can be defined dynamically through the configuration at run-time. The same configuration is used for all rows until the end of input.
The constant numbers are assumed to be no more than 32-bits.
For the definition of the config word, please refer to the “Design Internal” Section of the document and the corresponding test in L1/tests
.
Parameters:
TStrm1 | Type of input Stream1 |
TStrm2 | Type of input Stream2 |
TStrm3 | Type of input Stream3 |
TStrm4 | Type of input Stream4 |
TConst1 | Type of input Constant1 |
TConst2 | Type of input Constant2 |
TConst3 | Type of input Constant3 |
TConst4 | Type of input Constant4 |
TOut | Type of Compute Result |
config | configuration bits of ops and constants. |
strm_in1 | input Stream1 |
strm_in2 | input Stream2 |
strm_in3 | input Stream3 |
strm_in4 | input Stream4 |
strm_in_end | end flag of input stream |
strm_out | output Stream |
strm_out_end | end flag of output stream |