In short: The AXI protocol is ARM's AMBA interface for connecting high-performance IP blocks on an SoC. It uses five independent channels and a simple VALID/READY handshake so address, data and response traffic can flow at the same time, supporting bursts, outstanding and out-of-order transactions. This guide covers the channels, the handshake, burst types, outstanding transactions and the AXI4, AXI4-Lite and AXI4-Stream variants.
The axi protocol (Advanced eXtensible Interface) is the high-bandwidth, point-to-point interconnect specification in ARM's AMBA family. It replaces the older shared-bus thinking of AHB and APB with a channel-based, pipelined design: a manager (master) talks to a subordinate (slave) over several dedicated wire groups that each move in one direction and operate independently.
Because address issue, data transfer and completion response are decoupled, an AXI manager can send a read address, keep issuing more addresses, and receive data back later, all without stalling the whole bus. This decoupling is why AXI underpins CPUs, GPUs, DDR controllers and DMA engines in virtually every modern SoC.
A full AXI4 interface is built from five channels. Three serve writes, two serve reads:
WSTRB strobes and a WLAST marker.RLAST.Every channel moves information one beat at a time using a two-wire handshake. The source asserts VALID when it has placed stable data on the bus; the destination asserts READY when it can accept it. A transfer happens on the single rising clock edge where both VALID and READY are high.
Three rules make this robust and deadlock-free:
The animation below shows a data beat being accepted only at the instant both signals overlap.
AXI is burst-based: one address phase launches up to 256 data beats. The AxBURST field selects how the address advances across the burst:
Each beat also carries AxSIZE (bytes per beat), AxLEN (beat count minus one) and, on writes, WSTRB byte strobes that allow partial, unaligned or sparse writes within a beat. A burst must not cross a 4 KB address boundary — a constraint that keeps address decoding inside a single slave region.
Because the address and data channels are independent, an AXI manager can issue a new transaction before earlier ones have completed. These in-flight requests are called outstanding transactions, and the maximum number is a design parameter set by the manager's logic depth and buffering.
AXI optionally tags each transaction with an ID (AxID, BID, RID). Transactions that share an ID must complete in order, but transactions with different IDs may complete out of order. This lets a slow DDR access overtake nothing in its own stream while a faster SRAM read with a different ID returns first — raising effective throughput and hiding memory latency. (Note that AXI4 removed write-data interleaving that earlier AXI3 permitted.)
Real projects and industry tool flows, with certification.
Explore CourseTron Courses →The AXI4 generation defines three interface flavours for different needs:
TDATA, TVALID, TREADY, TLAST and optional TKEEP/TUSER sidebands.The rule of thumb: use AXI4 for memory, AXI4-Lite for configuration registers, and AXI4-Stream for data-flow pipelines that never need to address a location.
AXI is point-to-point between one manager and one subordinate. Multiple masters and slaves connect through an AXI interconnect or crossbar that arbitrates and routes transactions, but each AXI link itself is a dedicated pair.
Separating address, data and response into independent one-way channels lets them operate concurrently and be pipelined. A manager can stream addresses while data from earlier requests is still returning, which is impossible on a single shared bus.
AXI4-Lite drops bursts, transaction IDs and out-of-order support, allowing only single-beat transfers. It trades bandwidth for a much smaller, simpler implementation, which suits control and status registers rather than bulk data movement.
No. AXI4-Stream has no address channel at all. It is a unidirectional flow controlled purely by TVALID/TREADY, with TLAST marking packet boundaries — designed for continuous data rather than memory-mapped access.
Related: AXI vs AHB vs APB · Glossary · all courses.