GTS AXI Streaming Intel® FPGA IP for PCI Express* User Guide

ID 813754
Date 4/07/2025
Public

Visible to Intel only — GUID: lzj1697092308168

Ixiasoft

Document Table of Contents

6.3.2. AXI4-Stream Transmit (TX) Interface

The outbound packet towards the link from application side is transmitted through this interface. The interface supports data widths of 16 bytes (128 bits), 32 bytes (256 bits), and 64 bytes (512 bits). The TLP header, function number of TLP, and prefix signals are sent in line with data.

Table 68.   AXI4-Stream TX Interfacen = 0 or 1, p0 = port 0, and p1 = port 1
Note: Port 1 is only available in D-Series FPGAs
Signal Name Direction Clock Domain Description
p<n>_app_ss_st_tx_tvalid Input p<n>_axi_st_clk Indicates that the remote transmit interface is driving a valid transfer.
p<n>_ss_app_st_tx_tready Output p<n>_axi_st_clk Indicates that the receive interface can accept a transfer in the current cycle.
p<n>_app_ss_st_tx_tdata[(a-1):0] Input p<n>_axi_st_clk Data bus used to provide the data that is passing across the interface. When you do not enable the PCIe* 0/1 AXI-ST Sideband Header parameter, this bus must provide the header followed by the payload. When you enable the PCIe* 0/1 AXI-ST Sideband Header parameter, this bus must provide only the payload.
p<n>_app_ss_st_tx_tkeep[(a/8-1):0] 3 Input p<n>_axi_st_clk

A byte qualifier used to indicate whether the content of the associated byte is valid.

The invalid bytes are allowed only during p<n>_app_axi_st_tx_tlast cycle.

The sparse p<n>_app_axi_st_tx_tkeep is not allowed.

p<n>_app_ss_st_tx_tlast Input p<n>_axi_st_clk Indicates end of data/command transmission.
p<n>_app_ss_st_tx_tuser_hdr[255:0] Input p<n>_axi_st_clk This bus must provide the header of the Transaction Layer Packet when you enable the PCIe* 0/1 AXI-ST Sideband Header parameter. It is not available when the PCIe* 0/1 AXI-ST Sideband Header parameter is not enabled.
p<n>_app_ss_st_tx_tuser_hvalid Input p<n>_axi_st_clk Indicates that the p<n>_app_ss_st_tx_tuser_hdr bus is valid. It is not available when the PCIe* 0/1 AXI-ST Sideband Header parameter is not enabled.

The timing diagrams in the following sections are for the simple packing scheme only.

The following figure shows timing diagram for command with data. The completion, memory write, messages, and the configuration write commands fall under command with data category.

The first command transfers a payload of 64 Bytes. The receive interface is ready to accept command at clock cycle 1 but the transmit interface does not have any command to transfer in that same cycle. The transmit interface starts the transfer in the next cycle.

The second command transfers a payload of 128 Bytes. Here, the receive interface is not ready to accept command when the transmit interface has asserted valid. The transmit interface holds information on the bus till it observes ready from the receive interface.

Figure 55.  AXI4-Stream TX Interface—Simple Packing Scheme Timing Diagram (Command With Data)

The following figure shows timing diagram for command with data followed by command without data. The completion, memory write, messages and configuration write commands fall under command with data category. The memory read, configuration read, messages without data and completion without data fall under command without data category.

The first command transfers a payload of 64 Bytes. The receive interface is ready to accept command at clock cycle 1 but the transmit interface does not have any command to transfer in that same cycle. The transmit interface starts the transfer in the next cycle.

The second command is a command without data. Here, the receive interface is not ready to accept command when the transmit interface has asserted valid. The transmit interface holds information on the bus till it observes ready from the receive interface.

Figure 56.  AXI4-Stream TX Interface—Simple Packing Scheme Timing Diagram (Command With Data and Command)

The first command transfers the payload of 67 Bytes.

Note: tkeep during tlast has partial ones, but these ones are contiguous, sparse tkeep is not allowed. The partial tkeep is allowed only on tlast cycle.

The second command is a command without data.

Figure 57.  AXI4-Stream TX Interface—Simple Packing Scheme Timing Diagram (Back-to-Back Commands With and Without Data)
The following figure shows a timing diagram for a command with data followed by a command without data. The first command transfers a payload of 384 Bytes. The second command is a command without data. Here, the receive interface of the GTS AXI Streaming IP is ready to accept commands when the transmit interface has asserted valid.
Figure 58.  AXI4-Stream TX Interface—Simple Packing Scheme Timing Diagram (Command Without Data Followed by Command With Data - AXI-ST Sideband Header mode)
The following figure illustrates a timing diagram for a command without data, followed by a command with data, transferred in a back-to-back manner. The first command is a command without data. The second command transfers a payload of 70 Bytes. As the receive interface of the GTS AXI Streaming is ready to accept the command, the third and fourth commands are sent immediately after the second command.
Figure 59.  AXI4-Stream TX Interface—Simple Packing Scheme Timing Diagram (Command Without Data Followed by Command With Data Back-to-Back - AXI-ST Sideband Header mode)
3 For the recommended a value, refer to the Variables Used in the Bus Indices table. 3