Quartus® Prime Pro Edition User Guide: Platform Designer

ID 683609
Date 4/17/2025
Public
Document Table of Contents

6.12.6. AXI Streaming Crossbar Protocol Conversion

Because the AXI Streaming Crossbar IP uses the packet-based Avalon® Streaming protocol, a converter is required to convert between AXI-Stream and Avalon® Streaming on both ingress and egress interfaces. On the ingress interface, this converter converts AXI-Stream signals to Avalon® Streaming signals. On the egress interface, the converter converts Avalon® Streaming signals back to AXI-Stream signals.

TUSER Width Adaptation

AXI-Stream supports a varying number of bits per byte for the TUSER signal. The AXI-Stream crossbar only supports a single configuration of bits per byte for all transmitter and receiver interfaces. Set the TUSER width of crossbar based on the AXI-Stream specification guidelines. You can accomplish the TUSER width up and down in data width adapters at ingress and egress ports of crossbar.

Use of the Avalon® Streaming Channel for TDEST and TID

TDEST and TID from the AXI-Stream interfaces are encoded into the channel signal of the Avalon® Streaming interface.  The multi-hop crossbar uses TDEST to carry out routing. TID gets passed through the crossbar and is extracted from channel signal of the crossbar egress ports. The extracted TID is passed on to the AXI-Stream interface of the receiver.

If you do not use TID, only TDEST is encoded into the channel signal. 

Limited support for TKEEP and No Support for TSTRB

You must fully assert TKEEP when TLAST is set to 0 or disabled. TKEEP can be partially deasserted only when TLAST is asserted. TKEEP is only allowed to indicate contiguous valid and invalid bytes in the last beat of valid data. Only the Most Significant Bytes (MSB) can be empty. At least one byte must be valid.

For example, TDATA consists of eight symbols:

Valid TKEEP: 00000011 => Translated to Empty value of six.

Invalid TKEEP: 10101101

Invalid TKEEP: 00000000 

Note: TSTRB is not supported by the AXI Streaming Crossbar IP. There is no support for position bytes.