Five independent channels
AXI splits every memory transaction across five one-way channels. Writes use three (AW, W, B); reads use two (AR, R). Each channel is fully independent and uses the same VALID/READY handshake. Hover any channel to highlight it across the diagram, or click a card below to open its walkthrough.
The VALID / READY handshake
Every channel transfers information the same way. The source asserts VALID when its payload is valid; the destination asserts READY when it can accept. Pick a scenario, then step the clock.
Anatomy of a write
A write moves across three channels: address on AW, a burst of data beats on W (last beat flagged by WLAST), then a single response on B. Step the clock and hover any signal to inspect it.
Anatomy of a read
A read uses two channels: the manager requests an address on AR, then the subordinate returns data beats on R. The read response (RRESP) rides with each beat; RLAST marks the end of the burst.
Burst types & addressing
One address phase can transfer many beats. AxBURST sets how the address advances; AxLEN the beat count; AxSIZE the bytes per beat. Adjust the controls to see the addresses each beat lands on.
Transaction IDs & out-of-order
Each transaction carries an ID (AxID). Transactions with different IDs have no ordering guarantee — a subordinate may return them in any order, enabling pipelining. Same-ID transactions must stay ordered. Step through two outstanding reads returning out of order.
Exclusive access & the lock signals
AXI implements atomic read-modify-write without bus locking. A manager does an exclusive read (ARLOCK) then an exclusive write (AWLOCK) to the same location. A monitor in the subordinate decides whether the write is allowed — signalled back as EXOKAY or OKAY on BRESP.
Transaction qualifiers
Beyond address and data, every request carries attribute sidebands that describe how it should be treated — its permissions, cacheability, priority and routing. They ride the AW / AR address channels under the existing VALID/READY handshake — no handshake of their own — and stay constant for the whole transaction.
0000–0011 are identical on read and write.0b0000 is the default (no QoS); higher values request higher priority. It is purely an arbitration hint to the interconnect — it never affects ordering or correctness. AW and AR carry independent values.AXI3 → AXI4 → AXI5
The five channels and the VALID/READY handshake are unchanged since 2003 — what evolved is the sideband signals. AXI4 reshaped control and dropped interleaving; AXI5 layered on optional resilience and scalability. Select a version to spotlight its column.
AXI vs AXI-Lite vs AXI-Stream
Three members of the AXI family for three jobs: full AXI for high-throughput memory, AXI-Lite for simple register access, AXI-Stream for point-to-point data flow with no addresses at all.
Signal reference
The core signals on each channel. M→S = driven by manager, S→M = driven by subordinate. Suffixed buses (AxID, AxLEN …) share the channel's handshake.