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
    • Corner and Mode Matrix Design
    • Library Sets and Operating Conditions
      • Library Sets
      • Operating Conditions
      • RC Corner Mapping
      • Temperature Inversion
    • Signoff vs Implementation Views
    • MMMC Debug Playbook
  • OCV, AOCV, POCV and Variation16
  • Crosstalk and Noise16
  • ECO and Closure16
  • STA Debug Playbook16
  • STA Interview Prep26
  • Capstone Timing Signoff Lab4
Loading lesson

‹Library Sets and Operating Conditions
  1. Topics
  2. Static Timing Analysis
  3. Multi-Corner Multi-Mode Signoff
  4. Library Sets and Operating Conditions
  5. Temperature Inversion

Part 5 · Multi-Corner Multi-Mode · All levels

Temperature Inversion

At low supply voltage some technologies are slower when cold than when hot, so the slowest corner can be the cold one.

On this page

    Why it matters

    The traditional intuition is that heat slows silicon. In many modern technologies, at low supply voltage the opposite holds: delay is larger at low temperature. The effect depends on the technology, the voltage and the cell type, so libraries show it rather than a rule predicting it. Corners must include both temperature extremes for the low-voltage conditions.

    Illustrative data

    example.py
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    # Relative delay of a reference path (typical process); illustrative values only.
    delay = {
        (0.72, "hot"): 1.00, (0.72, "cold"): 1.12,     # low voltage: cold is slower
        (0.88, "hot"): 0.82, (0.88, "cold"): 0.74,     # high voltage: hot is slower
    }
    def slowest(v):
        return max(("hot", "cold"), key=lambda t: delay[(v, t)])
    def fastest(v):
        return min(("hot", "cold"), key=lambda t: delay[(v, t)])
    assert (slowest(0.72), slowest(0.88)) == ("cold", "hot")
    assert (fastest(0.72), fastest(0.88)) == ("hot", "cold")
    period, setup, path = 1.00, 0.06, 0.80
    slack_cold = period - setup - path * delay[(0.72, "cold")]
    slack_hot = period - setup - path * delay[(0.72, "hot")]
    assert round(slack_cold, 3) == 0.044 and round(slack_hot, 3) == 0.140
    print("PASS: low-V slowest", slowest(0.72), "; high-V slowest", slowest(0.88), "; setup slack cold", round(slack_cold, 3), "hot", round(slack_hot, 3))

    At 0.72 V the cold condition is the slowest and the hot one the fastest; at 0.88 V it is the other way round. A 0.80 ns path has 0.044 ns of setup slack when cold and 0.140 ns when hot at 0.72 V: checking only the hot slow corner would overstate the margin by almost 0.1 ns. The same reversal applies to hold: at low voltage the fastest condition is hot.

    Which corners that implies

    Check

    Low-voltage scenarios

    High-voltage scenarios

    Setup

    Slow process, cold (and hot, to be safe)

    Slow process, hot

    Hold

    Fast process, hot

    Fast process, cold

    Its relative delays are normalised to the typical-process hot condition at 0.72 V (= 1.00), a different normalisation from the operating-conditions lesson, where typical hot 0.80 V = 1.00.

    What the review looks for

    • Both temperature extremes appear in the low-voltage scenarios for setup and hold.

    • The corner list states, from library data, which temperature is worst at each voltage.

    • A new voltage domain triggers the question again: do not copy the corners of another domain.

    Common pitfall

    Carrying the rule 'slow means hot' into every scenario. If the library shows inversion at the voltage in question, the hot-only list misses the real worst case.

    Interview

    Call it by name, temperature inversion, and give the voltage-dependence.

    Check yourself A design runs a low-power mode at a lower voltage than its normal mode. What should you do about corners?

    Check the library data for that voltage: if delay is larger when cold there, add a cold setup scenario for the low-power mode; do not reuse the normal mode's corner list.

    Related topics

    • RC Corner Mapping

    • Why Corners Exist

    Previous

    81 / 183

    Next: Signoff vs Implementation Views

    Up next

    Up nextSignoff vs Implementation Views

    Sign in to save progress

    Practice this lessonReport an error

    See also

    • Library Sets
    • Operating Conditions