In short: The axi vs ahb vs apb question is really a question of where each protocol sits on the AMBA spectrum. AXI is the high-throughput, out-of-order interconnect for CPUs, memory and DMA; AHB is a simpler single-channel pipelined bus for mid-speed masters; APB is a low-power, low-complexity bus for slow peripherals like timers, GPIO and UART. You usually use all three in the same SoC, each where it fits.
AXI, AHB and APB are three members of Arm's AMBA (Advanced Microcontroller Bus Architecture) family. They are not competitors so much as layers in a tiered on-chip communication strategy. A modern System-on-Chip typically runs a fast AXI fabric at its core, bridges down to AHB for medium-speed blocks, and bridges again to APB for the slow register-mapped peripherals that do not need bandwidth.
The distinction matters because picking the wrong protocol for a block wastes either silicon area and power (over-specifying with AXI) or throughput (under-specifying with APB). Understanding axi vs ahb vs apb is one of the first things a VLSI or embedded engineer learns, because every interconnect integration decision traces back to it.
AXI (Advanced eXtensible Interface, introduced with AMBA 3 and extended in AMBA 4/5) is built for throughput. Its defining trait is five independent channels whose handshakes are decoupled by the universal VALID/READY pair. Because the address phase is separate from the data phase, a master can issue multiple outstanding transactions, burst up to 256 beats, and receive responses out of order using transaction IDs. This makes it ideal for caches, DRAM controllers and DMA engines where latency hiding matters.
AHB (Advanced High-performance Bus) predates AXI and uses a single pipeline: the address phase of one transfer overlaps the data phase of the previous one. There is one shared bus arbitrated among masters, support for bursts and split/retry responses, but no multiple outstanding transactions and no separate read/write channels. It is simpler to implement and verify than AXI and remains common for on-chip memory and mid-speed controllers, especially in Cortex-M class systems (where AHB-Lite, a single-master variant, dominates).
APB (Advanced Peripheral Bus) is deliberately minimal. It has no bursts, no pipelining and no out-of-order behaviour — each access is a two-phase (SETUP then ACCESS) transfer gated by PSEL and PENABLE. The low gate count and the lack of toggling signals when idle make it the natural home for configuration registers in UARTs, timers, GPIO and I2C blocks. An AHB-to-APB or AXI-to-APB bridge translates the faster upstream protocol into these slow, well-behaved accesses.
The animation shows why AXI wins on bandwidth: the address is sent once, then data beats pour across their own channel back-to-back, and the write response comes back independently. On AHB the same write would re-drive the address region in lockstep with each data phase; on APB it would be a sequence of discrete two-cycle accesses with no overlap at all.
The practical rule: use AXI for CPUs, cache coherency, DRAM and high-rate DMA; use AHB (usually AHB-Lite) for on-chip memory and mid-speed controllers in smaller MCUs; use APB for every slow, register-configured peripheral. Bridges stitch the tiers together, and clock-domain crossing is handled at those bridge boundaries.
Real projects and industry tool flows, with certification.
Explore CourseTron Courses →For sustained, latency-sensitive memory traffic, yes — AXI's parallel channels and outstanding transactions let it keep the data path full. For a single isolated transfer at the same clock, the raw gap is smaller, but AHB cannot overlap reads and writes the way AXI can.
AXI's gate count, wiring and verification effort are wasted on a timer or GPIO block that only needs a handful of register writes. APB does that job with far less area and power, which is why SoCs keep a dedicated peripheral tier.
AHB-Lite is a simplified single-master subset of AHB that drops the arbitration, split and retry machinery. It is the common choice in Cortex-M microcontrollers because most such systems have a single bus master.
AXI uses a uniform VALID/READY handshake on every channel. AHB and APB instead use ready/enable-style signalling (HREADY, and PSEL/PENABLE respectively), so bridges must adapt between the schemes.
Related: related topic · Glossary · all courses.