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
    • OCV, AOCV and POCV Mechanisms
      • Flat OCV Derates
      • Depth-Based Derating
      • Statistical Variation
      • Choosing the Method
    • Derate Policy and Approval
    • Path Depth Sensitivity
    • Variation Signoff Dashboard
  • Crosstalk and Noise16
  • ECO and Closure16
  • STA Debug Playbook16
  • STA Interview Prep26
  • Capstone Timing Signoff Lab4
Loading lesson

‹OCV, AOCV and POCV Mechanisms
  1. Topics
  2. Static Timing Analysis
  3. OCV, AOCV, POCV and Variation
  4. OCV, AOCV and POCV Mechanisms
  5. Statistical Variation

Part 6 · OCV, AOCV, POCV and Variation · All levels

Statistical Variation

Each cell carries a mean delay and a sigma; a path's sigma is the root of the sum of squares, and slack is checked at a chosen number of sigmas.

On this page

    Why it matters

    Depth-based derating knows how many stages a path has, but not which cells they are. A path through two highly variable cells is not like a path through nine steady ones. Statistical methods keep a sigma for each cell delay, combine them along the path, and so give each path its own margin.

    Combining sigmas

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    import math
    def path_stats(means, sigmas, ksig=3.0):
        mean = sum(means)
        sigma = math.sqrt(sum(s * s for s in sigmas))       # independent variations add in quadrature
        return round(mean, 4), round(sigma, 5), round(mean + ksig * sigma, 4)
    uniform = path_stats([0.10] * 9, [0.004] * 9)
    assert uniform == (0.9, 0.012, 0.936)
    outlier = path_stats([0.10] * 9, [0.004] * 7 + [0.015, 0.015])
    assert outlier[0] == 0.9 and round(outlier[1], 4) == 0.0237
    assert round(outlier[2], 3) == 0.971
    print("PASS: uniform path (mean, sigma, 3-sigma delay)", uniform, "; two noisy cells", outlier)

    Nine uniform stages have sigma 0.012 ns, so the 3-sigma delay is 0.936 ns. Replacing two stages with noisier cells (sigma 0.015 ns each) raises the path sigma to 0.0237 ns and the 3-sigma delay to 0.971 ns: the same mean and stage count, a 0.035 ns larger margin. A depth-based table would give both paths the same derate. The number of sigmas is a policy choice, and the independence assumption is the method's main approximation.

    What the review looks for

    • The sigma data come from library characterisation with a known coverage, and the number of sigmas is part of the signoff policy.

    • Cells with unusually large sigma (long wires, weak drivers, low-voltage cells) are identified, because they dominate path variation.

    • Results are compared against the depth-based analysis on a sample of paths, and large differences are explained.

    Common pitfall

    Treating sigma as noise to be removed. A few high-sigma cells set the margin of a path; replacing them (a stronger driver, a shorter wire) reduces the margin more cheaply than speeding up the whole path.

    Interview

    Give the combination rule: sigmas add in quadrature when the variations are independent.

    Check yourself A path has four cells with sigma 0.003 ns each. What is the path sigma?

    sqrt(4 × 0.003²) = 0.006 ns, twice a single cell's sigma and not four times.

    Related topics

    • Depth-Based Derating

    • Next: Choosing the Method

    Previous

    92 / 183

    Next: Choosing the Method

    Up next

    Up nextChoosing the Method

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Flat OCV Derates