AMBA AXI · Module 11
The AXI4-Stream Mental Model
AXI4-Stream is a different paradigm from memory-mapped AXI — a unidirectional, address-less point-to-point stream of data. The stream-vs-memory-mapped distinction, the pipe mental model, the core signals, and when to use streaming.
Everything so far — full AXI4 and AXI4-Lite — has been memory-mapped: you read and write addresses, and data has a location. AXI4-Stream is a different beast entirely. It has no addresses, no read/write distinction, and no request/response — just a unidirectional flow of data from a source to a sink, like a pipe between two blocks. The hard part of learning it isn't the signals (there are few, and the handshake is the familiar VALID/READY); it's the mental model shift from "accessing memory locations" to "streaming data through a pipe." This chapter makes that shift, introduces the core signals, and shows when streaming is the right paradigm.
1. Memory-Mapped vs Stream
The fundamental distinction:
- Memory-mapped (AXI4 / AXI4-Lite): every access targets an address. The master reads or writes a location; data has a place it lives. There's a request (address) and a response (data/status), and the interface is bidirectional (separate read and write). Used for addressable storage and registers.
- Stream (AXI4-Stream): there are no addresses. A source (master/transmitter) pushes a continuous sequence of data words to a sink (slave/receiver). It's unidirectional — data flows one way — with no read/write distinction and no addressing. Used for continuous dataflow between processing blocks.
The shift: memory-mapped asks "what's at this address?"; stream says "here's the next data word, take it." One is random-access to locations; the other is sequential flow through a connection.
2. The Pipe Mental Model
The right intuition for AXI4-Stream is a pipe (or a FIFO) connecting two blocks. A producer writes data words into one end; a consumer reads them out the other end, in order. The producer pushes when it has data; the consumer applies backpressure when it can't keep up — exactly the VALID/READY handshake you already know, now governing flow through the pipe.
Key properties of this model:
- In-order, sequential — words come out in the order they went in. No reordering, no addressing to jump around.
- Backpressure-controlled —
TREADYlets the consumer stall the producer;TVALIDlets the producer signal data availability. Flow matches the slower side. - Point-to-point — a stream connects one source to one sink (interconnects can route/switch streams, but the link itself is point-to-point).
If you think "data flowing through a pipe, throttled at both ends by VALID/READY," you have the model. There's no "where" — only "next."
3. The Core Signals
AXI4-Stream has a small signal set, most of it optional. The essentials and common options:
TVALID/TREADY— the handshake. A transfer happens when both are high (identical rule to AXI'sVALID/READY).TDATA— the data payload (the stream's actual content). Width is implementation-defined.TLAST— marks the last word of a packet/frame, framing the stream into packets (Chapter 11.3).TKEEP/TSTRB— byte qualifiers: which bytes ofTDATAare valid data (TKEEP) vs position bytes (Chapter 11.4).TID/TDEST— routing identifiers:TIDtags the stream source,TDESTthe destination (for stream interconnects/switches).TUSER— user-defined sideband, like AXI'sAxUSER.
Only TVALID is strictly required (plus the handshake partner TREADY); everything else is optional and added as the application needs. A bare stream is just TVALID/TREADY/TDATA — a throttled data pipe. Note the single-letter "T" prefix convention distinguishes stream signals from memory-mapped AXI.
4. When to Use Streaming
Streaming fits continuous dataflow; memory-mapped fits addressable access:
Typical streaming use cases: DSP datapaths (filters, FFTs — data flows through processing stages), video/image pipelines (pixels stream through scalers, color converters), packet/network processing (frames flow through parsers, classifiers), and accelerator datapaths (a DMA streams data into an accelerator and out again). A very common pattern: a memory-mapped DMA reads data from memory and converts it to a stream into an accelerator, which streams results back to a DMA that writes them to memory — memory-mapped at the endpoints (addressed memory), streaming through the compute pipeline (flowing data). The two paradigms coexist, each where it fits.
5. Common Misconceptions
6. Debugging Insight
7. Verification Insight
8. Interview Questions
9. Summary
AXI4-Stream is a paradigm shift from memory-mapped AXI: no addresses, unidirectional, no read/write — just a continuous flow of data words from a source to a sink, like a pipe between two blocks. The producer pushes with TVALID, the consumer backpressures with TREADY, and a word transfers when both are high (the familiar handshake), with data flowing in order through the connection. The signal set is small and mostly optional — core TVALID/TREADY/TDATA, with optional TLAST (framing), TKEEP/TSTRB (byte qualifiers), TID/TDEST (routing, not addresses), and TUSER (sideband).
Streaming fits continuous dataflow (DSP, video, packets, accelerator datapaths); memory-mapped fits addressable storage and registers — and they coexist, classically as memory-mapped DMA endpoints feeding a streaming compute pipeline (with AXI4-Lite for control). The mental switch for debug and verification is from "addresses" to flow, integrity, framing, routing: is data flowing (handshake), stable (no corruption), framed (TLAST), and routed (TID/TDEST)? With no addressing, burst arithmetic, or cross-ID ordering, stream verification is essentially "does the pipe move data correctly under all flow conditions?" Next: the core stream handshake and data signals in detail — TVALID, TREADY, and TDATA.
10. What Comes Next
You've got the streaming paradigm; next, its core signals in detail:
- 11.2 — TVALID, TREADY & TDATA (coming next) — the core stream handshake and data signals, beat by beat.
- 11.3 — TLAST & Packet Boundaries (coming soon) — how
TLASTframes a stream into packets.
Previous: 10.5 — AXI4-Lite Verification Checklist. Related: Valid/Ready Handshake — the handshake streaming reuses, and Five Channels for the memory-mapped contrast. For the broader protocol catalog, see the AMBA family overview doc.