Part 11 · Senior Prep · Intermediate
Hole Analysis Workflow: Triage Before Targeting
Systematic triage of uncovered bins — stimulus gap, reachability review, constraint conflict, and owner assignment before writing closure tests.
Not every hole needs a new test
Hole analysis classifies each uncovered bin before anyone writes stimulus. Categories: stimulus gap (reachable, not exercised), constraint conflict (random constraints exclude the cell), checker/coverage bug (sampling wrong stream), and genuinely unreachable (spec + implementation make the bin impossible).
[CLOSE][SENIOR][UVM] hole triage decision tree
UNCOVERED BIN
│
├─ sampled on monitor stream? ──NO──► fix subscriber / reset gate
│
├─ constraints exclude cell? ──YES──► relax constraint or directed seq
│
├─ spec allows scenario? ──NO──► waiver candidate (document)
│
└─ stimulus gap ──► closure test / targeted vseq
│
└─ still open after 3 targeted runs? ──► escalate design reviewHole ticket template
HOLE TICKET
Plan ID: FEAT-AXI-030
Bin: axi_cov.x_wr_large.wr_large
Category: stimulus gap | constraint | bug | unreachable
Owner: verification engineer name
Root cause: one-line hypothesis
Action: directed seq / constraint fix / waiver request
Status: open | targeted | closed | waivedSort holes by plan priority — mandatory features before nice-to-have.
Check if any seed came close (partial cross hits) before writing new stimulus.
Involve design when reachability is unclear — do not guess waivers.
Key takeaways
Classify every hole before writing closure stimulus.
Hole tickets make closure meetings factual, not opinion debates.
Unreachable bins need spec review — not silent waivers.
Common pitfalls
Writing directed tests for bins that are illegal per spec.
Assuming random will eventually hit a cross with 1-in-10M probability.
Closing tickets when one seed hit once — confirm merge stability.
Root-cause signals
Common signatures that point to each category:
[CLOSE][SENIOR] signature → category
scalar covered, cross never hit → constraint conflict or ordering
bin hit in block TB, hole at chip level → passive agent / wrong hierarchy
bin hit before ECO, hole after → RTL change or sampling regression
related bins all hit, one cell missing → targeted directed seq candidateClosure meeting agenda (30 min)
Review merged hole diff vs last milestone.
Present top 10 priority holes with category + owner.
Approve waiver requests with design sign-off.
Assign closure sequences for stimulus-gap holes only.
Key takeaways
Cross holes with covered scalars often mean constraint conflict.
Chip-level holes may be hierarchy or passive-agent issues.
Common pitfalls
Skipping category classification — teams write useless directed tests.
Waiving without design attendance in the closure meeting.