0% found this document useful (0 votes)
364 views

AXI Stream Protocol

The AXI-Stream protocol is used to exchange streaming data between connected components using a point-to-point interface. It defines terms like transfers, packets, and frames to group data bytes. Key signals like TVALID, TREADY, TDATA transfer the data, and TLAST, TID, TDEST provide additional metadata. The custom IP will buffer incoming streaming data at the slave interface and output it at the master interface using a FIFO. It will be tested by pushing and pulling data through it using DMA transfers and verifying the sent and received data match.

Uploaded by

shwetabhagat
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
364 views

AXI Stream Protocol

The AXI-Stream protocol is used to exchange streaming data between connected components using a point-to-point interface. It defines terms like transfers, packets, and frames to group data bytes. Key signals like TVALID, TREADY, TDATA transfer the data, and TLAST, TID, TDEST provide additional metadata. The custom IP will buffer incoming streaming data at the slave interface and output it at the master interface using a FIFO. It will be tested by pushing and pulling data through it using DMA transfers and verifying the sent and received data match.

Uploaded by

shwetabhagat
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 8

AXI-STREAM

PROTOCOL
ABOUT
• The AXI-Stream protocol is used as a standard interface to
exchange data between connected components. AXI-Stream is
a point-to-point protocol, connecting a single Transmitter and
a single Receiver. An interconnect can be employed to
provide connectivity between multiple AXI-Stream
components. The interconnect can perform upsizing,
downsizing,and clock domain crossing,
STREAM TERMS
The following stream terms are used in this specification:
• Transfer : A single transfer of data across an AXI-Stream interface. A single
transfer is defined by a single TVALID and TREADY signal handshake.
• Packet A group of bytes that are transported together across an AXI-Stream
interface. A packet can consist of a single transfer or multiple transfers.
Interconnect components can use packets to deal more efficiently with a
stream in packet-sized groups. A packet is similar to an AXI burst.
• Frame A frame contains an integer number of packets. A frame can have a
very large number of bytes, for example an entire video frame buffer. A
frame is the highest level of byte grouping in an AXI-Stream interface.
• Data stream The transport of data from one source to one destination. A
data stream can be: • A series of individual byte transfers. • A series of byte
transfers grouped together in packets.
SIGNAL LIST
Signal Source Width Description
ACLK clock 1 ACLK is a global clock signal. All signals
are sampled on the rising edge of ACLK
ARESETn reset 1 ARESETn is a global reset signal.
TVALID transmitter 1 TVALID indicates the Transmitter is driving
a valid transfer. A transfer takes place when
both TVALID and TREADY are asserted.
TREADY recevier 1 TREADY indicates that a Receiver can
accept a transfer
TDATA transmitter Data TDATA is the primary payload used to
width provide the data that is passing across the
interface. TDATA_WIDTH must be an
integer number of bytes and is
recommended to be 8, 16, 32, 64, 128, 256,
512 or 1024-bits.
TSTRB Transmitter Data TSTRB is the byte qualifier that indicates
width/8 whether the content of the associated byte
of TDATA is processed as a data byte or a
position byte
TKEEP Transmitter Data TKEEP is the byte qualifier that indicates
width/8 whether content of the associated byte of
TDATA is processed as part of the data
stream
TLAST Transmitter 1 TLAST indicates the boundary of a packet
TID Transmitter TID/ TID is a data stream identifier. TID_WIDTH
width is recommended to be no more than 8.
TDEST Transmitter TDEST TDEST provides routing information for the
WIDTH data stream. TDEST_WIDTH is
recommended to be no more than 8
TUSER Transmitter TUSER TUSER is a user-defined sideband
WIDTH information that can be transmitted along the
data stream. TUSER_WIDTH is
recommended to be an integer multiple of
TDATA_WIDTH/8.
TWAKEU Transmitter 1 TWAKEUP identifies any activity associated
P with AXI-Stream interface.
TKEEP TSTRB DATA TYPE DESCRIPTION

HIGH HIGH Data Byte The associated byte contains valid


information that must be transmitted
between source and destination.

HIGH LOW Position byte The associated byte indicates the


relative position of the data bytes in a
stream, but does not contain any
relevant data values
LOW LOW Null byte The associated byte does not contain
information and can be removed from
the stream.

LOW HIGH Reserved Must not be used.


ALGORITHM
The custom IP will be written in Verilog and it will simply
buffer the incoming data at the slave interface and make
it available at the master interface - in other words, it will
be a FIFO.

We’ll test the custom IP using a DMA which we’ll use to


push streaming data into the IP and pull data out of the
IP.

We’ll use an SDK application to setup these DMA


 transfers and compare the sent data with the received
data. 
Summary of AXI Stream Interface

You might also like