UVM Coding Practice · Senior
Debug Tricky Q&A
15 triage scenario interview questions.
Q&A bank
Debug triage interview bank.
Sim hangs no UVM_ERROR?
diagram
[INT][SENIOR][UVM-CODE]
Q: Sim hangs no UVM_ERROR?
A:
Objection leak or driver wait forever — check objections and driver loop.
FOLLOW-UP TRAP: Only waveform.No transactions on bus?
diagram
[INT][SENIOR][UVM-CODE]
Q: No transactions on bus?
A:
Seq not started, null vif, wrong config path, driver not connected.
FOLLOW-UP TRAP: Assume RTL dead.Duplicate UVM_ERROR reports?
diagram
[INT][SENIOR][UVM-CODE]
Q: Duplicate UVM_ERROR reports?
A:
Multiple subscribers or repeat compare — filter or fix source.
FOLLOW-UP TRAP: Lower verbosity only.Factory wrong type created?
diagram
[INT][SENIOR][UVM-CODE]
Q: Factory wrong type created?
A:
factory debug — override order or new() bypass.
FOLLOW-UP TRAP: Recompile only.config_db get fails?
diagram
[INT][SENIOR][UVM-CODE]
Q: config_db get fails?
A:
dump config_db — path typo or set after get phase.
FOLLOW-UP TRAP: Random set path.TLM null port?
diagram
[INT][SENIOR][UVM-CODE]
Q: TLM null port?
A:
connect not called or wrong export — print topology.
FOLLOW-UP TRAP: Assume monitor broken.Scoreboard mismatch every cycle?
diagram
[INT][SENIOR][UVM-CODE]
Q: Scoreboard mismatch every cycle?
A:
Compare too early or wrong field — check FIFO policy.
FOLLOW-UP TRAP: Change expected values randomly.Random different every run?
diagram
[INT][SENIOR][UVM-CODE]
Q: Random different every run?
A:
Seed not controlled — plusarg + set_rand_seed.
FOLLOW-UP TRAP: Disable random.Regression triage order?
diagram
[INT][SENIOR][UVM-CODE]
Q: Regression triage order?
A:
Repro seed → log delta → waveform last.
FOLLOW-UP TRAP: Wave first always.UVM_HIGH flood?
diagram
[INT][SENIOR][UVM-CODE]
Q: UVM_HIGH flood?
A:
Verbosity id filter — fix source not global NONE.
FOLLOW-UP TRAP: Hide all messages.Phase never ends?
diagram
[INT][SENIOR][UVM-CODE]
Q: Phase never ends?
A:
Objection trace — who raised?
FOLLOW-UP TRAP: Kill sim from script.Driver item_done missing?
diagram
[INT][SENIOR][UVM-CODE]
Q: Driver item_done missing?
A:
Sequencer hang — classic junior bug.
FOLLOW-UP TRAP: Restart seq only.Two tests conflict?
diagram
[INT][SENIOR][UVM-CODE]
Q: Two tests conflict?
A:
Shared cfg in config_db not cleared — fresh test instance.
FOLLOW-UP TRAP: Same env state.RAL mirror wrong?
diagram
[INT][SENIOR][UVM-CODE]
Q: RAL mirror wrong?
A:
predict after write; adapter byte lanes.
FOLLOW-UP TRAP: Manual mirror everywhere.Interview debug scenario?
diagram
[INT][SENIOR][UVM-CODE]
Q: Interview debug scenario?
A:
Narrate hypothesis list before fix — structured triage.
FOLLOW-UP TRAP: Jump to answer.