AMBA AXI · Module 10
AXI4-Lite Verification Checklist
The consolidated must-check list for verifying an AXI4-Lite slave — protocol compliance (handshake, subset, responses, WSTRB) plus register semantics (map, access types, reset, decode) — and the UVM-style testbench that checks them.
This chapter closes Module 10 with a consolidated checklist for verifying an AXI4-Lite slave. AXI4-Lite verification splits into two parts: a small protocol-compliance layer (the handshake, the subset restrictions, response codes, byte strobes) and a larger register-semantics layer (the register map, access types from Chapter 10.4, reset values, address decode). A correct Lite slave must pass both. We'll lay out the checklist by category, show the UVM-style testbench that implements it, and emphasize where the verification effort actually concentrates — the register semantics, not the (modest) protocol.
1. The Checklist Categories
Verifying an AXI4-Lite slave means covering these categories:
- Handshake compliance —
VALID/READYrules on all five channels: onceVALIDis asserted, payload stays stable untilREADY;VALIDmust not depend combinationally onREADY(no handshake deadlock). - Subset restrictions — assert it's genuinely Lite: single-beat only (no bursts), in-order (no
AxIDreordering), fixed full-width data, no exclusive access — flag any out-of-subset traffic as illegal. - Response codes —
OKAYfor valid accesses,SLVERRfor illegal ones (write to read-only, reserved offset),DECERRfor unmapped addresses (default slave). - Byte strobes —
WSTRBhonored: only strobed bytes written, neighbors preserved. - Register semantics — every register's access type (RW/RO/W1C/W1S/RC/self-clearing, Chapter 10.4) behaves exactly as specified, with correct reset values and reserved-bit behavior.
- Address decode — the right register is selected; unmapped offsets error; any aliasing/wrap behavior matches the spec.
2. Protocol Is Small, Register Semantics Is the Bulk
A key planning insight: for AXI4-Lite, the protocol part is small and largely reusable, while the register-semantics part is where most of the work and most of the bugs are.
- Protocol (small): single-beat handshakes, three response codes,
WSTRB, and the subset assertions. There's no burst arithmetic, no 4 KB rule, no outstanding/out-of-order scoreboard, no ID ordering, no exclusive monitor — most of Modules 6–9 simply doesn't apply. A standard AXI4-Lite VIP/protocol checker covers this layer almost for free. - Register semantics (the bulk): every register's access type, reset value, reserved bits, byte-field behavior, and decode — replicated across potentially hundreds of registers, each with hardware/software interactions (W1C races, self-clearing, RC side effects). This is design-specific, large, and where subtle bugs live.
So plan the effort accordingly: lean on a VIP for protocol compliance, and invest in a thorough register model for the semantics. The transactions are trivial; the meaning of each register is the hard part.
3. The Testbench Structure
A UVM-style environment for an AXI4-Lite slave has the standard components, sized for the single-transaction nature:
- Driver / sequencer — issues AXI4-Lite reads and writes (single-beat) from sequences; a register abstraction layer (RAL) lets tests read/write by register name rather than raw address.
- Monitor — observes the bus, reconstructs transactions, and feeds the checker/scoreboard and coverage.
- Protocol checker / VIP — continuously asserts the handshake, subset, and response-code rules.
- Scoreboard / register model — a model of the register map encoding each register's access type, reset, and reserved bits; it predicts the result of every access and checks reads/writes against it (the RAL provides this model).
- Coverage — functional coverage of registers, access types,
WSTRBpatterns, error responses, and reset.
The register model (RAL) is the centerpiece: it both drives by-name access and predicts expected behavior, so it checks register semantics systematically across the whole map.
4. The Sign-Off Flow
Verification sign-off for a Lite slave runs in a clear order:
5. Common Misconceptions
6. Debugging Insight
7. Verification Insight
8. Interview Questions
9. Summary
Verifying an AXI4-Lite slave is a two-part problem: a small protocol-compliance layer (handshake VALID/READY stability, the single-beat/in-order/fixed-width/no-exclusive subset, response codes OKAY/SLVERR/DECERR, and WSTRB byte writes) and a larger register-semantics layer (every register's access type from Chapter 10.4, reset values, reserved bits, and address decode). The protocol layer is small and largely VIP-covered — none of full-AXI's burst/outstanding/ordering/exclusive verification applies — so the effort and the bugs concentrate in the register semantics, best handled with a register model (RAL) that both drives by-name access and predicts expected behavior.
The testbench is the standard UVM set (driver+RAL, monitor, protocol checker, register-model scoreboard, coverage), and sign-off runs protocol compliance → register semantics → coverage closure. The checklist doubles as a debug taxonomy (hang→handshake, wrong-register→decode, wrong-behavior→semantics, field-corruption→WSTRB, illegal-traffic→subset, post-reset→reset). The highest-value, easy-to-miss checks are the negative cases (RO writes, unmapped, reserved) and the W1C race. A clean protocol checker plus closed register-semantics coverage is genuine sign-off because Lite's contract decomposes exactly into transport + typed registers. This completes Module 10 (AXI4-Lite); next, Module 11 turns to a different variant entirely — AXI4-Stream, the streaming, non-address-mapped protocol.
10. What Comes Next
You've finished AXI4-Lite; Module 11 turns to the streaming variant:
- 11.1 — The AXI4-Stream Mental Model (coming next) — stream-vs-memory-mapped thinking: AXI4-Stream moves data with no addresses, a different paradigm from everything so far.
Previous: 10.4 — Common CSR Design Patterns. Related: 10.2 — Register Access with AXI4-Lite and 8.6 — Verification Challenges for the contrast with full-AXI verification. For the broader protocol catalog, see the AMBA family overview doc.
Continue learning
Related tutorials
- Related topic
AMBA — AHB · APB · AXI
ARM's AMBA family — channels, handshakes, ordering rules, and verification strategy.
- Related topic
AXI4 Write Channel — AW, W & B Handshake
The AMBA 5 AXI4 write path — AW/W/B channels, the VALID/READY handshake, channel-dependency rules, and BRESP write-response semantics.
- Related topic
Legal and Illegal Transitions
A rigorous, protocol-checker enumeration of every legal APB state transition and exactly what makes the rest illegal — skipping setup, lingering in setup, dropping PSEL mid-access — expressed as checkable SVA properties.
- Related topic
Wait-State Verification Challenges
Why wait states are the most under-verified area of APB — the default zero-wait responder hides the held-bus paths — and how to close the gap with a wait-count coverage model, the assertions that pin the held-bus contract, and a randomised wait-injecting responder.
Standards & specifications
- Governing standard
- Arm AMBA AXI Protocol Specification (IHI 0022)(opens Arm in a new tab)
Defines the AXI channels, handshake and ordering rules. RTL structure, interconnect topology and verification strategy are design choices this specification does not mandate.
This page also covers RTL structure, verification approach and debugging technique. Those are engineering practice built on the standard, not requirements the standard itself imposes.
Where this fits
Part of the AMBA AXI curriculum.
