streamCombine overload (2) - 2023.2 English

Vitis Libraries

Release Date
2023.2 English
#include "xf_utils_hw/stream_combine.hpp"
template <
    int _WIn,
    int _NStrm
void streamCombine (
    hls::stream <ap_uint <_NStrm>>& select_cfg,
    hls::stream <ap_uint <_WIn>> istrms [_NStrm],
    hls::stream <bool>& e_istrm,
    hls::stream <ap_uint <_WIn*_NStrm>>& ostrm,
    hls::stream <bool>& e_ostrm,
    MSBSideT alg

Combine multiple streams into one, shift selected streams to MSB side.

The first selected stream will be copied to MSB. The data within the stream will not change the bit-order.


_WIn input stream width.
_NStrm number of input streams.
select_cfg one-hot encoded selection, LSB for istrms[0].
istrms input data streams.
e_istrm end flag for all input streams.
ostrm output data stream.
e_ostrm end flag stream for output data.
alg algorithm selector for this function.