streamCombine overload (1) - 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,
    LSBSideT alg

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

The first selected stream will be copied to LSB. 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.