When you pass a sequential cell to set_max_delay -from / -to, what happens under the hood?
From PDVerse PrimeTime STA Interview Guide · pdVerse Mentor Guide
Ten-second Interview Answer
The cell is expanded to pins: -from cell becomes each clock input pin of the cell, and -to cell becomes each data input pin. You can see the expanded pin-by-pin exceptions with report_exceptions or write_sdc .
Complete Technical Explanation
Passing a sequential cell to set_max_delay is convenient shorthand, but PrimeTime does not keep the exception at the cell level - it expands it into pins. On the -from side, the cell expands to each clock input pin of that cell, since that is where a path launched by a sequential element actually starts. On the -to side, the cell expands to each data input pin, since that is where a path into a sequential element ends. So one command against a multi-bit or multi-port cell can become several pin-level exceptions, and you can see exactly what you got by running report_exceptions or write_sdc and reading the expanded form back. That is worth doing rather than assuming, because the expansion is where cell-level shorthand and pin-level reality can diverge. It also matters across tools. Some tools, including IC Compiler II, keep the exception at the cell level instead of expanding it to pins, which means PrimeTime and ICC2 can resolve overlapping exceptions differently - the same SDC, the same design, different winners when two exceptions contend on the same path. When the two tools disagree on a borderline path, that difference in exception representation is a prime suspect.
In Pd / Signoff
You use this when reconciling a path that PrimeTime and IC Compiler II report differently. Dump the constraints with write_sdc or inspect report_exceptions in PrimeTime to see the pin-level expansion, then compare against how the implementation tool held the same exception - overlapping exceptions on the same path are where the two resolve differently.
Common Trap
Assuming cell-level exception shorthand means the same thing in every tool. PrimeTime expands to clock pins and data pins while some tools keep it at the cell, so overlapping exceptions can resolve to different winners and a borderline path looks clean in one tool and violating in the other.
Expect Next
Why does the cell-versus-pin representation matter when PrimeTime and IC Compiler II disagree on a borderline path?
Topic And Primetime Commands
Timing Exceptions / Max/Min Delay. set_max_delay, report_exceptions, write_sdcKeep building interview depth
Continue practising STA
Continue learning free
Get a practical low-power chapter
Receive the existing “Low Power and Multivoltage Fundamentals” PDF chapter and its download link by email.
Continue practising
