Part 5 · Functional Coverage · Intermediate
Coverage Closure & Sign-Off
Hub — spec-to-plan extraction, hole analysis, closing techniques, exclusion discipline, sign-off metrics, and interview Q&A.
Overview
Writing covergroups is the easy half. Closure is the loop that turns coverage numbers into a defensible claim that verification is done: extract coverable features from the spec, run regressions, merge databases, triage the holes, steer stimulus or write directed tests, exclude what is provably unreachable, and assemble the evidence for sign-off.
This is the part of coverage that distinguishes engineers in reviews and interviews — anyone can write a coverpoint; the questions that matter are what you do at 87% with three weeks left, and how you prove the last 13% is either closed or legitimately excluded.
Sub-topics
From Spec to Coverage Plan — extracting coverable features, plan table structure, traceability naming, plan review.
Hole Analysis — reading merged reports, classifying holes, the triage flow, a worked five-hole triage.
Closing Techniques — constraint steering, directed tests, seed sweeps, bin adjustments, diminishing returns.
Exclusions & Waivers — legitimate exclusion criteria, waiver documentation, exclusion-file hygiene.
Sign-Off Metrics & Review — combining functional, code, assertion, and bug-curve evidence; per-feature percentages.
Coverage Interview Q&A — the standard questions with junior vs senior answer contrasts.
THE CLOSURE LOOP
spec ──► coverage plan ──► covergroups ──► regression (N seeds)
▲ │
│ ▼
│ merge databases
│ │
│ ▼
plan/bin fixes ◄──── HOLE TRIAGE ◄── merged report
│ │
unreachable ◄─┘ └─► reachable
│ │
▼ ▼
exclusion + waiver steer constraints /
(documented) directed tests / seeds
│ │
└──────────┬─────────────┘
▼
SIGN-OFF REVIEW
functional % + code % + assertions + bug curveKey takeaways
Closure is a loop — plan, measure, merge, triage, act, repeat — not a number you read once.
Every hole gets classified before it gets attacked: unreachable holes need waivers, not tests.
Sign-off combines functional coverage with code coverage, assertion status, and the bug curve — no single metric suffices.
The plan written before coding is what makes the final percentage mean anything.