dynamicEval - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
#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