AMBA AXI · Module 18
Waveform Interpretation Questions
Train to read AXI transactions straight off a timing diagram under interview pressure — the systematic scan (find the handshakes, count beats, read LAST/IDs/responses), reconstructing a transaction from a waveform, and the traps interviewers plant (a stall, a missing LAST, an out-of-order ID) that test whether you read signals precisely.
A common interview move is to put an AXI timing diagram in front of you and ask "what's happening here?" — testing whether you can read transactions straight off the signals under pressure, not just recite rules. This is a distinct skill from the conceptual answers of 18.1–18.3: it's fast, precise signal reading. The good news is that it's systematic — there's a fixed scan that reconstructs any AXI waveform: find the handshakes (VALID && READY), count the beats, read LAST/IDs/responses, and assemble the transaction. Interviewers plant specific traps — a mid-burst stall, a missing LAST, an out-of-order ID, a partial WSTRB — to see if you read precisely or skim. This chapter gives the scan method and the traps, so any AXI waveform becomes a procedure rather than a panic.
1. The Systematic Scan
Don't read an AXI waveform left-to-right hoping to understand it — apply a fixed scan. (1) Find the handshakes: a beat transfers only where VALID && READY are both high on a rising edge — mark those cycles. (2) Identify the channel and direction: which channel (AW/W/B/AR/R), so you know whether it's a read or write. (3) Count the beats: how many data-beat handshakes? (4) Read the markers: LAST (where does the burst end?), ID (which transaction?), response codes (OKAY/SLVERR/etc.). (5) Assemble the transaction: address, length, data, response. The scan turns a wall of signals into a reconstructed transaction every time.
2. The Handshake Is the Anchor: Count Only Where Both Are High
The single most important reading rule: a beat transfers only on a rising edge where both VALID and READY are high — nowhere else. The trap interviewers love is a stall: VALID held high while READY is low for a cycle or two. A careless reader counts that cycle as a beat (or miscounts the burst length); a precise reader sees VALID held waiting, no transfer, and counts only the genuine handshakes. So the first thing to do on any channel is mark exactly the VALID && READY cycles — and ignore the stalls, which are not beats.
Stall trap: count beats only at VALID && READY
7 cycles3. Reconstructing the Transaction: LAST, IDs, Responses
Once you've marked the handshakes, read the structural markers to assemble the transaction. LAST (WLAST/RLAST): the beat where it's high is the last of the burst — so the beat count should equal where LAST fires (cross-check: do they agree?). IDs (AWID/BID, ARID/RID): which transaction each beat/response belongs to — essential when multiple transactions interleave, and the place an interviewer hides an out-of-order-ID trap. Response codes (BRESP/RRESP): OKAY vs. an error, and for reads, per-beat. With these, you assemble: "this is a 4-beat INCR read, ID 2, returning OKAY, with a stall on beat 3."
4. The Traps Interviewers Plant
Waveform questions almost always contain a deliberate trap that separates precise readers from skimmers. The common ones: a stall (VALID held with READY low — don't count it as a beat); a missing LAST (beats transfer but the burst never ends — spot the hang); an out-of-order ID (responses returning in a different order than requests — legal for different IDs, and you should recognize it as legal, not flag it as a bug); a partial WSTRB (not all bytes written — note the partial write); and a back-to-back (one burst's last beat adjacent to the next's first — don't merge them). Recognizing the trap and naming why it's there is what the question is really testing.
5. Common Misconceptions
6. Debugging Insight
7. Verification Insight
8. Interview Questions
9. Summary
Waveform-interpretation questions test fast, precise signal reading under pressure — a distinct skill from the conceptual rounds — and it's made reliable by a fixed scan: (1) find the handshakes (VALID && READY, the only cycles a beat transfers), (2) identify the channel/direction (read vs. write), (3) count the beats, (4) read the markers (LAST, IDs, response codes), (5) assemble the transaction. Two anchors: count beats only at the handshake (a held VALID with READY low is a stall, not a beat — the most common misreading) and cross-check LAST against the beat count (catches missing/premature LAST and wrong length in one step). Interviewers plant traps — a stall (don't count it), a missing LAST (spot the hang), an out-of-order ID (recognize it as legal for different IDs), a partial WSTRB (note it), a back-to-back (don't merge) — and the real test is spotting the trap and naming why it's legal or illegal, which requires both the scan and the conceptual rules.
Every misreading maps to a skipped scan step, which is the proof that waveform reading is a method, not just experience — experience makes the scan fast, but the scan makes it correct, so the disciplined procedure beats ad hoc skimming regardless of seniority. The skill connects directly to real work: it's exactly debugging from a waveform (Module 17) under time pressure — the same scan that answers an interview question localizes a bug in the lab, so practicing it is practicing the daily job. The unifying principle, echoing the whole module: disciplined method beats intuition under pressure. The habit to internalize: never read an AXI waveform ad hoc — always run handshakes → channel → count → markers → assemble, cross-check LAST, and read IDs before judging ordering. Next, design-interview questions test the inverse skill: producing AXI RTL from a prompt.
10. What Comes Next
You can now read any AXI waveform under pressure; next, the inverse — producing RTL:
- 18.5 — Design Interview Questions (coming next) — "design an AXI X" RTL prompts, where instead of reading a trace you generate the design — FSMs, handshakes, and structure — live.
Previous: 18.3 — Advanced Interview Questions. Related: 17.9 — Waveform-Based Debug Methodology for the same scan applied to debugging, 3.2 — The Transfer Event for the handshake-is-a-beat rule, and 6.8 — RRESP, BRESP & RLAST for the markers you read.