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
    • Setup and Hold Closure Order
    • Physical vs Logical ECOs
    • Useful Skew Trade-offs
      • Skew as a Resource
      • Skew Budget Arithmetic
      • Clock Tree Side Effects
      • Signing Off Useful Skew
    • ECO Regression Matrix
  • STA Debug Playbook16
  • STA Interview Prep26
  • Capstone Timing Signoff Lab4
Loading lesson

‹Useful Skew Trade-offs
  1. Topics
  2. Static Timing Analysis
  3. ECO and Closure
  4. Useful Skew Trade-offs
  5. Skew as a Resource

Part 8 · ECO and Closure · All levels

Skew as a Resource

A delay d on a flop's clock helps its input stage's setup and its output stage's hold, and costs the opposite checks; the feasible window is bounded by all four.

On this page

    Why it matters

    A flop sits between two stages. Delaying its clock by d gives the stage before it d more time to settle, and the stage after it d less. Hold moves the other way. Four constraints bound d, and the window they leave is the useful skew available.

    The four constraints

    Check

    Effect of delaying the flop's clock by d

    Constraint

    Setup into the flop (stage 1)

    Gains d

    s1 + d ≥ m

    Hold into the flop (stage 1)

    Loses d

    h1 - d ≥ m

    Setup out of the flop (stage 2)

    Loses d

    s2 - d ≥ m

    Hold out of the flop (stage 2)

    Gains d

    h2 + d ≥ m

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    m = 0.005                                   # margin, ns
    s1, h1 = -0.050, 0.080                      # stage 1 (FF1 -> FF2): setup, hold
    s2, h2 = 0.100, 0.030                       # stage 2 (FF2 -> FF3): setup, hold
    lo = max(m - s1, m - h2)
    hi = min(h1 - m, s2 - m)
    assert round(lo, 3) == 0.055 and round(hi, 3) == 0.075
    d = round((lo + hi) / 2, 3)
    assert d == 0.065
    after = {"s1": round(s1 + d, 3), "h1": round(h1 - d, 3), "s2": round(s2 - d, 3), "h2": round(h2 + d, 3)}
    assert after == {"s1": 0.015, "h1": 0.015, "s2": 0.035, "h2": 0.095}
    assert all(v >= m for v in after.values())
    print("PASS: feasible delay window", (round(lo, 3), round(hi, 3)), "ns; choose", d, "giving", after)

    Stage 1 needs at least 55 ps of help (50 ps of setup deficit plus the 5 ps margin). Stage 1's hold slack allows at most 75 ps, and stage 2's setup slack allows 95 ps. The window is 55 to 75 ps; choosing the middle, 65 ps, gives every check at least 15 ps. If the window were empty (lo greater than hi) the flop could not be fixed by skew alone, just as in the endpoint case of the order-of-operations lesson. Choosing the middle of the window leaves room for variation on both sides.

    What the review looks for

    • Each skewed flop has its window computed with all four checks and in every corner, not only the one that motivated it.

    • The chosen skew is near the middle of the window unless there is a reason to be asymmetric.

    • The stage after the skewed flop is checked after the fix: it paid for the gain.

    Common pitfall

    Skewing to fix one violation and fixing only that stage's check. The following stage lost the same amount; if it was marginal, the problem has moved down the pipeline.

    Interview

    Write the four inequalities and say what the window is.

    Check yourself What is the window if stage 2's setup slack were only 0.040?

    hi = 0.040 - 0.005 = 0.035, which is below lo = 0.055: the window is empty, so skew alone cannot fix stage 1.

    Related topics

    • Next: Skew Budget Arithmetic

    • Order of Operations

    Previous

    130 / 183

    Next: Skew Budget Arithmetic

    Up next

    Up nextSkew Budget Arithmetic

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Clock Tree Side Effects
    • Signing Off Useful Skew