Hardware interview practice
Turn an APB3 agent into reusable verification IP
Upgrade an active-only Advanced Peripheral Bus 3 (APB3) master agent into reusable active/passive verification IP (VIP) with wait-state handling, checking, assertions, and coverage.
Starting point
Question code
PCLK, PRESETn, PSEL, PENABLE, PREADY;
PADDR, PWRITE, PWDATA, PRDATA, PSLVERR;Reviewed example
Work through one case
Input
APB read with three PREADY-low wait cycles followed by one PREADY-high ACCESS cycleExpected output
one observed read; stable address/control through all waits; PRDATA sampled on completionElapsed ACCESS cycles do not create extra transactions; the monitor publishes only the completed handshake.
What to cover
Requirements
- Always create the monitor; create driver and sequencer only in active mode.
- Drive one SETUP cycle, then ACCESS, holding address/control/data stable while PREADY is low.
- Publish a fresh observed transaction only on PSEL && PENABLE && PREADY.
- Check progression and stability; cover direction, waits, error, address region, and back-to-back transfers.
