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
    • Latches and Time Borrowing
    • Clock Gating Checks
      • Gating Check Model
      • Enable Timing
      • Gating Check Failures
      • Gating Signoff
    • Recovery, Removal and Async
    • Pulse Width and Min Period
  • Multi-Corner Multi-Mode Signoff16
  • OCV, AOCV, POCV and Variation16
  • Crosstalk and Noise16
  • ECO and Closure16
  • STA Debug Playbook16
  • STA Interview Prep26
  • Capstone Timing Signoff Lab4
Loading lesson

‹Clock Gating Checks
  1. Topics
  2. Static Timing Analysis
  3. Beyond Setup and Hold
  4. Clock Gating Checks
  5. Gating Check Failures

Part 4 · Beyond Setup and Hold · All levels

Gating Check Failures

The common gating failures: enable too late, enable changing in the wrong phase, wrong gate type assumption, and missing clock relationship.

On this page

    Why it matters

    Gating failures are glitch risks, so they are never ignored. Their causes are few and recognisable, and the fix is almost always on the enable path or the gate choice.

    Failure catalogue

    Symptom

    Cause

    Fix

    Gating setup violated

    Enable logic too slow for the available phase

    Reduce enable logic, retime the enable, use an ICG

    Gating hold violated

    Enable changes too early, while the clock is in the sensitive phase

    Add delay, or launch from the other edge

    Check missing for a gate

    Gate not recognised (a custom structure) or checks disabled

    Define the check or use a recognised cell

    Large skew between gate and enable launch clocks

    Unbalanced clock tree

    Balance the tree through the gate

    Multiple clocks into the gate

    Clock mux feeding the gate

    Define the gating relationship per clock

    example.py
    1
    2
    3
    4
    5
    checks = [("g1", 0.85, 0.40), ("g2", -0.12, 0.30), ("g3", 0.60, -0.05), ("g4", 1.2, 0.9)]   # (gate, setup slack, hold slack)
    fails = {g: ("setup" if s < 0 else "") + ("hold" if h < 0 else "") for g, s, h in checks if s < 0 or h < 0}
    assert fails == {"g2": "setup", "g3": "hold"}
    assert len(fails) == 2
    print("PASS: failing gating checks:", fails)

    Two of four gates fail, one on setup and one on hold. The two need different fixes: g2's enable is too slow (reduce logic, retime), g3's enable is too fast (add delay or change the launch edge). Fixing hold with a delay can recreate a setup problem, so both are re-checked together.

    What the review looks for

    • Gating setup and hold are both zero-violation at signoff in all corners.

    • Any fix on the enable path is re-checked for the opposite check and for the data paths it shares.

    • Gates without a recognised check are listed and justified.

    Common pitfall

    Fixing gating hold by padding delay without checking setup. The same enable path then fails the other check. Treat the pair as one constraint.

    Interview

    Walk both failure types and their fixes; many candidates only know setup.

    Check yourself A gating hold violation shows the enable changing 0.3 ns after the rising clock edge. What is happening physically?

    The enable changes while the clock is still high (just after its rising edge), so for an AND-type gate the output can glitch or truncate the pulse. The enable needs more delay or a different launch edge so it changes in the low phase.

    Related topics

    • Enable Timing

    • Next: Gating Signoff

    Previous

    64 / 183

    Next: Gating Signoff

    Up next

    Up nextGating Signoff

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Gating Check Model