Introduction to AXI-STREAM#
Concept#
AXI-Stream is an efficient and simple data transfer protocol, mainly used for high-throughput data streaming scenarios. Compared to traditional AXI buses, AXI-Stream is simpler and lighter. It transfers data from one module to another without the need for addresses, making it suitable for applications that require high-speed data transfer.
Partial Terminology#
- Transfer: Transfer based on the TVALID and TREADY handshake protocol
- Packet: A group of data transmitted through AXI-Stream
- Frame: The largest byte combination that includes an integer number of packets
Interface Signals#
Signal | Description |
---|---|
ACLK | Global clock signal, rising edge triggered |
ARSTn | Global reset signal, active low level |
TVALID | Host drives valid data signal |
TREADY | Slave can receive data signal |
TDATA[(8n-1):0] | Width is a multiple of bytes |
TLAST | Indicates the boundary of a data packet |
TID | Identity identifier issued by the host, used to identify different data streams when multiple stream data transfers exist |
Data transmission starts when both TVALID and TREADY are high on the rising edge of the clock.
Since AXI-Stream does not require address transmission and only performs simple sending and receiving, it reduces propagation delay.