UVM Coding Practice · Senior
Env Architecture Tricky Q&A
20 env architecture interview questions.
Q&A bank
Env architecture interview bank.
What goes in env vs test?
diagram
[INT][SENIOR][UVM-CODE]
Q: What goes in env vs test?
A:
Env: agents, scoreboard, cfg. Test: sequences, objections, factory overrides.
FOLLOW-UP TRAP: Sequences hardcoded in env.Virtual sequencer placement?
diagram
[INT][SENIOR][UVM-CODE]
Q: Virtual sequencer placement?
A:
In env — holds sub sequencer handles.
FOLLOW-UP TRAP: In test only without env ref.Passive agent wiring?
diagram
[INT][SENIOR][UVM-CODE]
Q: Passive agent wiring?
A:
Monitor only — connect ap to scoreboard in env connect.
FOLLOW-UP TRAP: Driver in passive agent.Coverage in env vs test?
diagram
[INT][SENIOR][UVM-CODE]
Q: Coverage in env vs test?
A:
Env: protocol coverage. Test: scenario coverage.
FOLLOW-UP TRAP: All in test only.Multi-agent env sketch 20 min?
diagram
[INT][SENIOR][UVM-CODE]
Q: Multi-agent env sketch 20 min?
A:
boxes: 2 agents, sb, vseq, cfg — connect arrows.
FOLLOW-UP TRAP: Code every class.Reusable VIP integration?
diagram
[INT][SENIOR][UVM-CODE]
Q: Reusable VIP integration?
A:
Wrap VIP agent; config_db for VIP cfg; don't modify VIP internals.
FOLLOW-UP TRAP: Fork VIP source.Env config object?
diagram
[INT][SENIOR][UVM-CODE]
Q: Env config object?
A:
uvm_object cfg with active flags, widths — set from test.
FOLLOW-UP TRAP: ifdef everywhere.Scoreboard in env?
diagram
[INT][SENIOR][UVM-CODE]
Q: Scoreboard in env?
A:
Yes — standard for check components.
FOLLOW-UP TRAP: Scoreboard in test.Predictor placement?
diagram
[INT][SENIOR][UVM-CODE]
Q: Predictor placement?
A:
Env between stimulus analysis and scoreboard.
FOLLOW-UP TRAP: Inside driver.TLM connect in env connect_phase?
diagram
[INT][SENIOR][UVM-CODE]
Q: TLM connect in env connect_phase?
A:
All monitor→sb/cov connections here.
FOLLOW-UP TRAP: In test run_phase.Env topology print?
diagram
[INT][SENIOR][UVM-CODE]
Q: Env topology print?
A:
uvm_top.print_topology() for debug.
FOLLOW-UP TRAP: Manual hierarchy only.Sub-env for subsystem?
diagram
[INT][SENIOR][UVM-CODE]
Q: Sub-env for subsystem?
A:
Block env embedded in chip env — hierarchical envs.
FOLLOW-UP TRAP: Flat one env 50 agents.Test library pattern?
diagram
[INT][SENIOR][UVM-CODE]
Q: Test library pattern?
A:
Multiple tests extend base_test; env shared.
FOLLOW-UP TRAP: Duplicate env per test file.IRQ monitor agent?
diagram
[INT][SENIOR][UVM-CODE]
Q: IRQ monitor agent?
A:
Passive monitor agent — ap to sb or irq collector.
FOLLOW-UP TRAP: IRQ in APB driver.Reg model in env?
diagram
[INT][SENIOR][UVM-CODE]
Q: Reg model in env?
A:
ral model built in env; adapter on bus agent.
FOLLOW-UP TRAP: RAL only in test.Env vs top module?
diagram
[INT][SENIOR][UVM-CODE]
Q: Env vs top module?
A:
top: interfaces, run_test. env: UVM hierarchy.
FOLLOW-UP TRAP: DUT in env.Parameterize env?
diagram
[INT][SENIOR][UVM-CODE]
Q: Parameterize env?
A:
cfg object not parameters on env class.
FOLLOW-UP TRAP: generate ifdefs.3-agent APB mock?
diagram
[INT][SENIOR][UVM-CODE]
Q: 3-agent APB mock?
A:
master active, slave passive monitor, reg in env — 20 min sketch.
FOLLOW-UP TRAP: Full RTL detail.Closure talk in interview?
diagram
[INT][SENIOR][UVM-CODE]
Q: Closure talk in interview?
A:
Coverage plan + regression + waivers — after env sketch.
FOLLOW-UP TRAP: Only components no closure.Staff-level env difference?
diagram
[INT][SENIOR][UVM-CODE]
Q: Staff-level env difference?
A:
Explicit cfg, domains, reuse, debug hooks.
FOLLOW-UP TRAP: Same as junior env box.