Internals of streamCombine - 2024.2 English

Vitis Libraries

Release Date
2024-11-29
Version
2024.2 English

Terms and Conditions.

The streamCombine function is designed for packing multiple elements of same width into a vector.

This module offers two static configurations: using the data from LSB or MSB. With an LSB option, the element at LSB is obtained from input stream with 0 index, while with an MSB option, the element at MSB is set using input with 0 index.

As some storage structures in FPGA are bounded to fixed width or width of power of two, paddings might be necessary in the combined vector. These padding bits are added with zeros, as illustrated below:

combination n streams to one from LSB Structure combination n streams to one from MSB Structure

Internally, this module is implemented with a simple loop which initiation interval (II) is equal to 1. This means that in each cycle, a vector is yielded using a set of elements.

Attention

This module expects the width of output stream to be no less than total of input streams. To perform collection from multiple streams, consider the streamNToOne module.