BeginnerQuestion 296 of 97Source PDF page undefined

What's the practical fanout guideline STA uses, and what does it actually control?

From PDVerse PnR Interview Handbook · pdVerse Mentor Guide

Short Answer

The rule of thumb: max fanout is typically 10 -- any net should drive a load equivalent to no more than 10 input cells. This is used to map the correct drive-strength cell against the stated fanout -- a driver sized for 10 loads won't perform correctly (transition, delay) if the design actually connects 20 loads to it.

Technical Reference DiagramWhat's the practical fanout guideline STA uses, and what does it actually control?
What's the practical fanout guideline STA uses, and what does it actually control?, illustrating the physical design concept.

Technical Explanation

  • The rule of thumb: max fanout is typically 10 -- any net should drive a load equivalent to no more than 10 input cells.
  • This isn't an arbitrary number -- it's used to map the correct drive-strength cell against the stated fanout during synthesis and optimization.
  • A driver sized (by the tool) for 10 loads won't perform correctly on transition and delay if the actual design connects significantly more loads to that net.
  • set_app_options -name opt.common.max_fanout -value 10 is the real command that operationalizes the ~10 fanout rule of thumb as an actual soft-optimization constraint, not just a guideline.

Common Mistake

The Trap: Assuming max fanout is purely a congestion or routing concern -- it's fundamentally a drive-strength-sizing concern first, since the tool sizes the driver based on the expected fanout.

Follow-up Question & Model Response

"What would you expect to see in a timing report if a net's real fanout significantly exceeded the ~10 rule of thumb without the driver being resized accordingly?"

Candidate Model Response: A slow output transition (slew) on that net, likely propagating into worse-than-expected delay on every downstream path fed by it -- the driver simply wasn't sized for the load it's actually carrying.

Practical Example

Debug Scenario: A net with 18 loads shows unexpectedly slow transitions across all of them -- checking the driver, it was sized against the ~10-fanout rule of thumb, not against its actual 18-load reality.

Physical Design & Planning Handbook

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