ExpertQuestion 276 of 111Source PDF page undefined

How does the tool actually decide what counts as a "root net" for clock NDR purposes, and what's the edge case that can silently change that?

From PDVerse PnR Interview Handbook · pdVerse Mentor Guide

Short Answer

Root nets are single-fanout nets from the clock root to the first branch; internal nets run from that branch point toward sinks; sink nets connect to leaf sinks. -root_ndr_fanout_limit sets the transitive fanout limit for identifying root nets -- a smaller value means MORE nets get root-net constraints, raising routing congestion risk. The edge case: if an identified root net is shorter than 10 microns, the tool uses internal-net constraints instead, regardless of the fanout-based classification.

Technical Reference DiagramHow does the tool actually decide what counts as a "root net" for clock NDR purposes, and what's the edge case that can silently change that?
How does the tool actually decide what counts as a "root net" for clock NDR purposes, and what's the edge case that can silently change that?, illustrating the physical design concept.

Technical Explanation

  • Root nets are single-fanout nets from the clock root to the first branch point; internal nets run from that branch point toward sinks; sink nets connect directly to leaf sinks.
  • -root_ndr_fanout_limit sets the transitive fanout limit used to identify root nets -- and a smaller value means MORE nets qualify as root nets, which raises routing congestion risk since root-net NDRs are typically wider/heavier.
  • Excluded pins are simply ignored when counting valid clock sinks for this classification -- they don't distort the fanout count.
  • The real edge case: if an identified root net is shorter than 10 microns, the tool automatically uses internal-net constraints instead, overriding the fanout-based classification -- a short "root" net doesn't get root-net treatment just because its fanout qualifies it.

Formula Or Decision Rule

Root net vs internal net classification is fanout-based via -root_ndr_fanout_limit, EXCEPT: any identified root net shorter than 10 microns is reclassified as internal-net constraints automatically.

What To Check

  • Warning sign: a net you expected to get root-net NDR treatment based on its fanout is showing internal-net constraints instead.
  • Inspect: check the physical length of that specific net -- if it's under 10 microns, that's the documented reason, not a configuration error.
  • Correct: don't try to force root-net treatment on a genuinely short net; the length-based override exists for a physical reason (short nets don't need the same NDR treatment long root nets do).

Command Checks & Actions

ICC2set_clock_routing_rules -min_routing_layer M4 -max_routing_layer M7

Applies layer bounds, separate from the root/internal/sink net-type classification.

ICC2set_clock_tree_options -root_ndr_fanout_limit 300

Sets the fanout threshold for root-net identification.

Healthy, Suspicious & Hard-stop Results

  • Expected: root-net NDR assignment matches expectations for nets both long enough and high enough fanout to qualify.
  • Investigate: a high-fanout net isn't getting root-net treatment -- check its physical length before assuming the fanout limit setting is wrong.
  • Stop: root_ndr_fanout_limit is being tuned repeatedly to try to force root-net treatment onto a net that's actually under the 10-micron length exception -- that tuning will never work for that specific net.

Common Mistake

The Trap: Assuming -root_ndr_fanout_limit is the only factor determining root-net classification -- a physically short net gets reclassified to internal-net constraints regardless of its fanout, and missing this causes confusing NDR-assignment debugging.

What The Interviewer Is Testing

Whether you know the 10-micron short-root-net exception, a specific edge case that pure fanout-based reasoning about root-net classification would miss.

Practical Example

Debug Scenario: A net with fanout well under the configured -root_ndr_fanout_limit is still showing internal-net NDR constraints instead of root-net ones. Checking its physical length reveals it's only 6 microns -- under the 10-micron threshold that forces internal-net treatment regardless of fanout qualification.

Physical Design & Planning Handbook

Dive into 14 comprehensive chapters covering netlist sanity, FinFET grids, macro placement, power grids, CTS, and timing budgeting.