s_axis Interface - 2022.2 English

Vitis Networking P4 User Guide (UG1308)

Document ID
UG1308
Version
2022.2 English
Revision

The following table shows the breakdown of the s_axis interface signals.

Table 1. s_axis Interface
Name I/O Description
s_axis_tdata I Packet data bus of configurable width.
s_axis_tvalid I Indicates that the master is driving a valid transfer. A transfer takes place when both s_axis_tvalid and s_axis_tready are asserted.
s_axis_tkeep I Indicates whether the content of the associated byte of s_axis_tdata is processed as part of the data stream.

Note: This value must be set to all 1s for all words of a packet except the TLAST word, where the valid bytes must be right-justified (no invalid byte gaps). The all 0s value is not currently supported on this input interface, except for a null packet length where there are no headers to be inserted into the packet.
s_axis_tlast I Indicates the boundary of the packet.
s_axis_tuser I User-defined sideband information transmitted alongside the data stream. Only present if the axis_tuser keyword appears as a field name within the user metadata structure of a P4 program. It is only valid for the first word of an incoming packet to the Vitis Networking P4 IP, validated by s_axis_tvalid.
s_axis_tdest I Provides routing information for the data stream. It is only present if the axis_tdest keyword appears as a field name within the user metadata structure of a P4 program. It is only valid for the first word of an incoming packet to the Vitis Networking P4 IP, validated by s_axis_tvalid.
s_axis_tid I Data stream identifier that indicates different streams of data. It is only present if the axis_tid keyword appears as a field name within the user metadata structure of a P4 program. It is only valid for the first word of an incoming packet to the Vitis Networking P4 IP, validated by s_axis_tvalid.
s_axis_tready O Indicates that the slave can accept a transfer in the current cycle.