Protocols

AMBA bus comparison: AXI vs AHB vs APB

By CourseTron Team ·  6 min read ·  Updated Oct 2026 💬 𝕏 in f
Table of Contents
    🖨  Download / Print this guide (PDF)

    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.

    What Is axi vs ahb vs apb?

    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.

    Key fact: AXI uses five independent channels (read address, read data, write address, write data, write response), so reads and writes can be in flight simultaneously. AHB uses a single shared address/data pipeline, and APB has no pipelining at all — every transfer takes at least two cycles.

    The Three Protocols at a Glance

    Tiered AMBA interconnect AXI fabric (high speed) CPUDDR ctrlDMAGPUAXI → AHB bridge AHB (mid speed) SRAM / FlashAHB → APB bridge APB (low power) UARTGPIOTimerI2C CourseTron · coursetron.com
    Tiered AMBA topology: fast AXI at the core, bridged down to AHB, then to APB for slow peripherals.

    AXI — high performance, high complexity

    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 — the pipelined middle ground

    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 — simple, low power, register-mapped

    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.

    APB transfer: SETUP then ACCESS PCLK PSEL PENABLE IDLE SETUP ACCESS IDLE CourseTron · coursetron.com
    APB timing: PSEL asserts for the SETUP cycle, PENABLE joins it for the ACCESS cycle, so every transfer takes at least two clocks.

    How an AXI Burst Actually Moves

    AXI write transaction: channels run in parallel MasterSlave AW: write address W: write data beats B: write response CourseTron · coursetron.com
    One address beat launches the burst, multiple data beats stream across, and a single response returns — all on separate channels.

    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.

    Performance, Complexity and When to Use Each

    • Bandwidth: AXI ≫ AHB > APB. AXI's parallel channels and outstanding transactions give it an order-of-magnitude edge for memory-bound traffic.
    • Latency hiding: Only AXI supports multiple outstanding and out-of-order responses; AHB and APB are strictly ordered.
    • Complexity and verification cost: APB < AHB < AXI. AXI's channel decoupling, IDs and burst types make it the hardest to verify correctly.
    • Power and area: APB is the cheapest and lowest-power; it is the right choice whenever a block only exposes a few control registers.

    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.

    Learn this hands-on

    Real projects and industry tool flows, with certification.

    Explore CourseTron Courses →

    axi vs ahb vs apb — FAQ

    Is AXI always faster than AHB?

    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.

    Why not just use AXI everywhere?

    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.

    What is the difference between AHB and AHB-Lite?

    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.

    Do these protocols share a handshake?

    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.

    Advertisement