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
    • Clock Definition & Uncertainty
    • Generated Clocks & Dividers
    • I/O Timing & Boundary Contracts
    • Exceptions & Audit Policy
    • Environment and Design Rules
      • Case Analysis and Disable Timing
      • Max Transition and Capacitance
      • Operating Conditions and Units
      • Constraint Sanity Checks
  • 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
  • Capstone Timing Signoff Lab4
Loading lesson

‹Environment and Design Rules
  1. Topics
  2. Static Timing Analysis
  3. Constraints & SDC Fundamentals
  4. Environment and Design Rules
  5. Operating Conditions and Units

Part 2 · Constraints and SDC · All levels

Operating Conditions and Units

The library and parasitic corner and the time and capacitance units determine every number in the report; mixing them silently breaks results.

On this page

    Why it matters

    Two quiet errors cause large wrong numbers: reading a constraint in the wrong unit, and analysing with the wrong corner. Both look like normal constraints and produce plausible-looking reports. Making units and conditions explicit, and checking them, is cheap insurance.

    What to pin down

    Item

    Where it comes from

    Typical mistake

    Time unit

    Library header

    Constraints written in ns while the library is in ps

    Capacitance unit

    Library header

    set_load in pF versus fF

    Operating condition (process, voltage, temperature)

    Library selection per view

    Slow library with fast parasitics in a view meant to be consistent

    Parasitic corner

    Extraction selection per view

    Using the typical extraction for a worst-case view

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    # Unit scale errors: the same number in two units
    period_in_file = 2.0
    assert period_in_file * 1.0 == 2.0           # ns library: 2 ns
    as_ps_library = period_in_file * 1.0         # ps library: 2 ps
    ratio = 2000.0 / as_ps_library               # what was meant (2000 ps) vs what was read (2 ps)
    assert ratio == 1000.0
    load_pF, load_fF = 0.05, 50.0
    assert abs(load_pF * 1000 - load_fF) < 1e-9
    print("PASS: a ps/ns mix-up is a 1000x error; 0.05 pF = 50 fF")

    A period written as 2.0 in a library that works in picoseconds is a 2 ps clock, a thousand times faster than meant: every path fails by a huge margin and the error is obvious. The dangerous case is a smaller mismatch, such as a load 1000 times too small that still looks plausible and is quietly wrong.

    What the review looks for

    • The report header (units, library, corner) is part of every review; two reports are compared only when headers match.

    • Each view defines library corner and parasitic corner together and consistently.

    • Constraint files declare their units in a comment or by a unit command, and the CI check compares them to the library.

    Common pitfall

    Copying constraints between projects with different libraries. The numbers carry over, the units may not. Re-confirm units whenever a constraint file moves.

    Interview

    If asked about the first things you check on a suspicious report, include the units line and the corner line.

    Check yourself A path shows a clock period of 0.002 and a delay of 1.7. What is wrong?

    Probably a units mismatch: the period appears to be 2 ps (0.002 ns) while delays are in ns. Check the time unit of the library and of each constraint.

    Related topics

    • Max Transition and Capacitance

    • Next: Constraint Sanity Checks

    Previous

    40 / 183

    Next: Constraint Sanity Checks

    Up next

    Up nextConstraint Sanity Checks

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Case Analysis and Disable Timing