Part 2 · Phases & Lifecycle · Intermediate
Domain Use Cases: Power Islands, Multi-Clock, VIP Timelines
Practical scenarios where domains help — and where they do not — with decision guidance for verification architects.
Legitimate use cases
Power-managed islands
A block that powers up mid-simulation needs its own reset→configure→main cycle after power-good. The main fabric may already be in main_phase while the island is still in reset. A separate domain models this naturally.
Independent clock domains with staged bring-up
When two clock domains have unrelated reset release times and separate bring-up sequences, domains let each follow its own schedule without ad-hoc delays in run_phase.
Third-party VIP with internal phasing
Some VIP packages install their own domain. Your env must sync with the VIP domain at handshake phases or risk racing configure against VIP reset.
[PHASE][UVM] use-case fit matrix
power island late bring-up → STRONG fit
unrelated reset release times → STRONG fit
VIP-owned domain → REQUIRED (sync with vendor domain)
staggered sequence start times → WEAK fit (use objections instead)
different test lengths → WEAK fit (objections handle this)Anti-patterns (do not use domains for these)
Delaying one agent's stimulus start — use sequences and objections.
Isolating passive vs active agents — use agent is_active config.
Skipping reset for one interface — use reset_phase objections locally.
Running two tests in one sim — use separate tests, not domains.
// WRONG: domain to delay stimulus (use objection instead)
// RIGHT: main_phase objection until local ready
task main_phase(uvm_phase phase);
wait(local_ready);
phase.raise_objection(this);
run_traffic();
phase.drop_objection(this);
endtaskKey takeaways
Domains model independent lifecycle schedules, not simple delays.
Power islands and VIP-owned domains are the strongest use cases.
Objections on a single domain solve most staggered-start needs.
Common pitfalls
Domain per agent proliferation — creates sync nightmare.
Using domains to paper over broken reset sequencing.
Architect checklist
Document which subtrees own which domain.
List all cross-domain hardware handoffs.
Map each handoff to a sync barrier phase.
Confirm VIP domain requirements in integration guide.