Silicon Bring-up · All levels

Building and Reading Shmoo Plots: Debug Playbook

Debug Playbook for Building and Reading Shmoo Plots.

Debug playbook

Debug Playbook for Building and Reading Shmoo Plots is anchored on Shmoo completeness score (axis coverage and step resolution), rerun reproducibility, and fail-cluster density per sweep window.. Convert observed behavior into mechanism-backed and owner-bound actions.

  1. Freeze setup metadata and preserve first-failure state.

  2. Locate first persistent boundary where behavior diverges.

  3. Classify mechanism: dependency, margin, protocol, software, or silicon.

  4. Apply one focused reproducer and one bounded fix.

  5. Re-run replay, corner, and soak confidence matrix.

Review memo template

diagram
BRING-UP REVIEW MEMO - Characterization & Shmoo / Building and Reading Shmoo Plots

1. Symptom
   - Failing metric: Shmoo completeness score (axis coverage and step resolution), rerun reproducibility, and fail-cluster density per sweep window.
   - Trigger context: <board/firmware/corner/test window>
   - First failing boundary: <power/reset/clock/interface/firmware>

2. Mechanism hypothesis
   - Candidate mechanism: A shmoo plot maps test outcome over two stress variables (commonly voltage versus frequency, but also skew, jitter, or body-bias), producing a visual operating envelope rather than a single limit point. Reliable generation requires deterministic test sequencing, controlled thermal dwell, and sufficient settle time so each point reflects silicon state instead of bench transients. Teams typically predefine coarse and fine sweeps: coarse maps locate boundaries quickly, then adaptive refinement captures transition contours and any isolated schmoo holes. Interpretation focuses on topology, not only pass rate: smooth monotonic boundaries suggest expected timing or drive limits, while islands, notches, or checkerboard zones often indicate hidden interactions such as IR-drop bursts, PLL relock sensitivity, test-order memory effects, or intermittent interface training failures. Mature bring-up flows annotate each point with rail telemetry and sensor context so every visual anomaly can be traced to physics, firmware state, or instrumentation behavior.
   - Competing hypotheses: setup, dependency, margin, software path, silicon defect
   - Missing evidence: <trace/scope/register/report>

3. Proposed action
   - Smallest reversible change: <setup/script/config/firmware>
   - Expected movement: <repro rate/latency/pass trend>
   - Regression risk: stability, safety, release timeline, ownership handoff

4. Signoff
   - Required artifact: Versioned shmoo dataset with sweep recipe, contour overlays, anomaly tags, and rerun evidence pack.
   - Required owners: silicon characterization lead, ATE and lab automation owner, clock and voltage bring-up owner, silicon debug owner, product quality owner
   - Final decision: ship, bounded rollout, rollback, respin escalation

Silicon bring-up deep dive

Characterization creates release confidence only when sweep design and fail signatures remain stable across reruns.

Concept diagram

diagram
CHARACTERIZATION WORKFLOW

sweep plan -> capture matrix -> isolate edges -> define guardband -> validate

Metric graph

diagram
SHMOO SIGNAL QUALITY

isolated holes           ████
stable fail clusters     ███████
validated guardbands     ██████

Metrics and artifacts to collect

  • pass-island continuity map

  • corner fail-cluster density

  • guardband recommendation log

  • retest reproducibility ratio

Mini case study

A nominal-corner shmoo hole was explained after separating true timing margin loss from fixture sensitivity effects.

Debug branches

  • Match setup state before comparing corner points.

  • Classify fail clusters by signature, not just count.

  • Validate guardbands with independent replay runs.

Senior review question

Ask: what is the first failing boundary, which artifact proves it, and who owns bounded closure?

Key takeaways

  • Tie every bring-up claim to one reproducible setup state and one proving artifact.

  • Prefer bounded fixes with clear owner and rollback trigger over broad multi-variable edits.

Common pitfalls

  • Running parallel uncontrolled experiments and losing causality.

  • Declaring closure without replaying across representative corners.

  • Escalating severity before bench/setup hypotheses are disproven.

Debug ladder

Sequence: reproduce -> classify -> isolate -> instrument -> bounded fix -> replay.

Avoid parallel broad edits before first root-cause class is proven.