Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Path
  • STA Glossary
  • STA Metrics Reference
  • STA Mastery Cheatsheet
  • Timing Paths and Checks16
  • Constraints & SDC Fundamentals20
  • Delay Graph & Path Analysis16
  • Beyond Setup and Hold16
  • Multi-Corner Multi-Mode Signoff16
  • OCV, AOCV, POCV and Variation16
  • Crosstalk and Noise16
  • ECO and Closure16
  • STA Debug Playbook16
  • STA Interview Prep26
    • STA Whiteboard Framework
    • STA Framework Drills
    • Scenario: MMMC Storm
      • The Scenario
      • Investigation
      • Root Cause and Fix
      • How to Narrate It
    • Scenario: ECO Under Pressure
    • Scenario: Constraint Ghost
    • STA Interview Q&A Bank
    • STA Interview Q&A Bank (Expanded)
  • Capstone Timing Signoff Lab4
Loading lesson

‹Scenario: MMMC Storm
  1. Topics
  2. Static Timing Analysis
  3. STA Interview Prep
  4. Scenario: MMMC Storm
  5. The Scenario

Part 10 · Interview Prep · All levels

The Scenario

Nine days to tape-out: a low-voltage mode joins the matrix, the overnight run fails 2,400 setup endpoints in one scenario, and the other 19 are clean.

On this page

    The situation

    A block was signed off in 12 scenarios. A low-voltage power mode is added late and the matrix grows to 20. The overnight run reports 2,400 setup violations with a worst slack of -0.082 ns, all in one scenario, lowv_ss_cold_cworst. The other 19 scenarios, including lowv_ss_hot_cworst, are clean. Tape-out is nine days away. The team's first instinct is to suspect the new scenario's constraints.

    Scenario (setup)

    WNS (ns)

    Violating endpoints

    func_ss_hot_cworst

    +0.031

    0

    func_ss_cold_cworst

    +0.044

    0

    lowv_ss_hot_cworst

    +0.056

    0

    lowv_ss_cold_cworst

    -0.082

    2,400

    16 other scenarios

    all positive

    0

    Questions to ask before touching anything

    • Which attributes do the failing scenarios share? Here: one mode and one temperature.

    • Is the failure uniform across endpoints, or concentrated? The report suggests broad: 2,400 endpoints.

    • What changed since the last clean run: the mode, the matrix, the libraries? The new mode and a new scenario.

    • Is the failing scenario a new kind of condition or a repeat of something already covered?

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    scenarios = {"func_ss_hot": 0.031, "func_ss_cold": 0.044, "lowv_ss_hot": 0.056, "lowv_ss_cold": -0.082}
    failing = [s for s, w in scenarios.items() if w < 0]
    assert failing == ["lowv_ss_cold"]
    mode, pvt = failing[0].split("_", 1)[0], failing[0].split("_", 1)[1]
    attrs = {s: s.split("_") for s in scenarios}
    shared_mode = {a[0] for s, a in attrs.items() if s in failing}
    other_cold = [s for s in scenarios if s.endswith("cold") and s not in failing]
    assert shared_mode == {"lowv"} and other_cold == ["func_ss_cold"]
    print("PASS: failing", failing, "; the other cold scenario passes:", other_cold, "; the other lowv scenario passes:", [s for s in scenarios if s.startswith("lowv") and s not in failing])

    Only the combination of the low-voltage mode and cold fails. The functional mode is fine when cold, and the low-voltage mode is fine when hot. Neither the mode alone nor the temperature alone explains it, which already rules out a broken mode constraint file (it would fail hot too) and a general cold-corner problem (the functional mode passes cold). Something about low voltage and cold together is the lead.

    Common pitfall

    Starting at the 2,400 endpoints. The scenario table already narrows the cause to a two-attribute interaction.

    Interview

    Say what the table rules out before proposing a cause.

    Check yourself What does it tell you that lowv_ss_hot passes?

    The low-voltage mode's constraints and netlist behave in at least one slow condition, so the fault is in what cold does at low voltage, not in the mode's constraints.

    Related topics

    • Next: Investigation

    • Symptoms to Views

    Previous

    161 / 183

    Next: Investigation

    Up next

    Up nextInvestigation

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Root Cause and Fix
    • How to Narrate It