What is the difference between asynchronous, logically_exclusive, and physically_exclusive clock groups?
From PDVerse STA Mentor Guide · pdVerse Mentor Guide
Explanation
set_clock_groups classifies relationships between clock domains for timing (and sometimes crosstalk) purposes. -asynchronous marks clocks with no fixed phase relationship, so timing paths between them aren't meaningfully checked. logically_exclusive marks clocks that can never be functionally active at the same time, but which may still physically coexist on the die. -physically_exclusive goes further, marking clocks that also cannot physically interfere with each other. clk (p e rio d 1 0 0 0 ) clk_ d iv2 (p e rio d 2 0 0 0 , p h a se -lo cke d )
Timing-path Walkthrough
For example, set_clock_groups -logically_exclusive -group clk_fast -group clk_slow declares that clk_fast and clk_slow never operate simultaneously in function. Because they're only logically exclusive, they could still be routed near each other and couple electrically, so crosstalk analysis between them may still be relevant even though timing analysis between them isn't. If instead they were physically_exclusive, crosstalk analysis between them could also be excluded, since they can't physically interfere.
Command
set_clock_groups -logically_exclusive -group clk_fast -group clk_slowSwitch-by-switch
-asynchronous: clocks have no fixed timing relationship, paths between them are
excluded from standard timing. -logically_exclusive: groups of clocks that can't be active
at the same time functionally, but may still coexist physically (crosstalk still possibly
relevant). -physically_exclusive: groups that never time together and also can't physically
interfere (crosstalk excludable too). -group: defines each named clock group in the
exception.Expected Report Behavior
Paths between clocks placed in different asynchronous, logically_exclusive, or physically_exclusive groups drop out of standard cross-domain timing reports; the distinction mainly affects whether crosstalk analysis between them is still expected to run.
Mentor Note — Common Mistake
Marking two clocks physically_exclusive when they can actually coexist on the die, which would wrongly suppress crosstalk analysis that's still needed.
How To Debug
Confirm the chosen exclusivity type matches physical reality (not just functional/logical reality) before excluding crosstalk checks, since only physically_exclusive clocks justify skipping crosstalk between them.
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