Part 11 · Senior Prep · Intermediate

Coverage Closure Strategy: Plan-Driven Regression Loop

Hub — verification-plan traceability, regression merge, hole analysis, directed closure tests, sign-off metrics, and the closure pitfalls playbook.

Closure is a disciplined loop, not a pile of tests

Senior closure engineers treat functional coverage as a contract against the verification plan , not a percentage on a single run. Random regressions find broad scenarios; closure closes the gaps the plan still requires — with traceable bins, merged databases, targeted stimulus, and signed waivers.

This hub walks the full loop: map coverpoints to plan features, merge UCDB/VDB across seeds, analyze holes with root-cause discipline, write directed or constrained sequences for stubborn bins, present sign-off metrics to leads, and avoid the anti-patterns that stall tape-out.

Sub-lessons in this topic

  1. coverage-plan-traceability — feature IDs, bin naming, cross design tied to plan rows.

  2. regression-coverage-merge — nightly merge, seed attribution, database hygiene.

  3. hole-analysis-workflow — triage uncovered bins, root cause, owner assignment.

  4. directed-closure-tests — constrained sequences and closure test templates.

  5. signoff-metrics-dashboard — closure scorecard, trend lines, waiver audit trail.

  6. closure-pitfalls-playbook — the failures that look like progress but are not.

diagram
Legend: [CLOSE][SENIOR][UVM]

┌─────────────────────────────────────────────────────────────────────────┐
│  COVERAGE CLOSURE LOOP (plan-driven)                                    │
├─────────────────────────────────────────────────────────────────────────┤
│  1. PLAN MAP     coverpoint/cross name ↔ verification-plan feature ID   │
│  2. MERGE        all regression seeds  single UCDB/VDB                 │
│  3. HOLE TRIAGE  uncovered bins  root cause (stimulus / unreachable)   │
│  4. TARGET       directed / constrained-random closure sequences        │
│  5. RE-MERGE     confirm hole closed, no checker regression            │
│  6. SIGN-OFF     metrics dashboard + documented waivers                   │
└─────────────────────────────────────────────────────────────────────────┘
diagram
[CLOSE][SENIOR][UVM] data path — monitor to closure metric

  dut_mon.ap ──► cov_subscriber.write(t)
                      │
                      ├─ reset gate? skip
                      ├─ sample on RESPONSE only
                      └─ cg.sample(t)   per-run UCDB
                              │
                              ▼
                    regression merge (all seeds)
                              │
                              ▼
                    hole report ↔ plan feature ID
                              │
                              ▼
                    closure seq / waiver / sign-off

Senior closure mindset

  • A passing test with zero new bin hits is not closure progress — measure merged functional coverage.

  • Every uncovered bin must map to a plan row or an explicit waiver with owner approval.

  • Directed stimulus is a surgical tool for stubborn crosses, not a replacement for random regression.

  • Code coverage supports confidence; functional coverage against the plan is the closure gate.

Key takeaways

  • Closure = plan map → merge → hole triage → target → re-merge → sign-off.

  • Name bins and crosses to match verification-plan feature IDs.

  • Waivers are documented decisions with rationale — not silent deletes.

Common pitfalls

  • Reporting single-seed coverage % as 'done' while merged holes remain.

  • Writing closure tests without updating the plan traceability matrix.

  • Waiving bins because random did not hit them — without spec review.


When to enter the closure phase

Enter systematic closure when random regression returns diminishing new bin hits — typically after smoke and broad random suites are stable. Prioritize holes on critical crosses and plan-mandatory features before cosmetic bin polish.

diagram
[CLOSE][SENIOR] closure readiness checklist

  READY:
    □ merged functional DB exists for last N nightly runs
    □ plan traceability matrix links every covergroup to a feature ID
    □ hole report reviewed with design + verification leads
    □ closure owner assigned per uncovered cross

  NOT READY:
     chasing 100% code coverage while functional holes remain
     adding seeds without analyzing which bins they might hit

Key takeaways

  • Start closure when random regression plateaus — not on day one.

  • Critical crosses and plan-mandatory features close first.

Common pitfalls

  • Declaring closure 'started' without a merged database or plan map.

  • Closing easy scalar bins while ignoring high-value crosses.