On the Relevance of Wire Load Models Kenneth D. Boese, Cadence Design Systems, San Jose Andrew B. Kahng, UCSD CSE and ECE Depts., La Jolla Stefanus Mantik, UCLA CS Dept., Los Angeles
Why WLMs? Synthesis needs placement parasitics Placement needs synthesized netlist Chicken vs. egg WLMs estimate parastics pre-placement Wire cap = f(net fanout) But WLMs no longer accurate! (?)
Motivating Questions How inaccurate are WLMs? Are WLMs good for optimization? Are WLMs good for estimation? How use WLMs in optimization flow?
Previous Works “Bad” WLMs motivate post-placement synthesis –e.g., Lu et al. [7] Need for constructive estimators –Scheffer and Nequist [8] –“law of small numbers” Accuracy vs. fidelity –Boese et al. [1,2]
Kinds of WLMs Custom –multiple iterations Statistical –from library Structural –look at adjacent nets
Historical Design Flows No WLM –interconnect insignificant Custom WLMs –requires iterations Statistical WLMs –fewer iterations Add post-placement optimization –IPO, PB-Opt Post-placement only (integrated tool) –PKS, Physical Compiler, Blast Fusion
How Accurate Are WLMs? High Deviations WLMs Inaccurate Normalized to Ave. Net Cap
Accuracy: Skew Measures What if long nets not critical? –timing-driven placement –buffer insertion So... Must Test WLMs in Actual Flows
Are WLMs Good for Optimization? Sufficient? Necessary? Compare different flows –real tool (PKS) –real designs
Default PKS Flow RTL Generic Netlist Mapped Netlist Placed Netlist Routed Netlist Technology mapping Timing opt Post-placement timing opt Global routing Area opt Placement
1.Area opt 2.Technology mapping 3.Timing opt 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt Struct WLM 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt Lib WLM 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt Cust WLM 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt WLM = 0 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt Lib WLM 4.Placement 5.Post-pl timing opt No logic opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
1.Area opt 2.Technology mapping 3.Timing opt Lib WLM 4.Placement 5.Post-pl timing opt 6.Global routing 7 Flow Variations Structural WLM Library WLM Custom WLM No WLM No Pre Pl Opt No Post Pl Logic Opt No Post Pl Opt
Flow Comparisons Struct WLM Library WLM Custom WLM No preOpt No WLM No postLogicOpt No postOpt Struct WLM Library WLM Custom WLM No preOpt No WLM No postLogicOpt No postOpt
Implications WLMs not sufficient –post-place opt needed WLMs not necessary for good slacks (?) WLMs reduce running time Some improvement from Post Place Logic Opts
Do WLMs Give Good Estimates? WLM slack vs. groute slack Custom WLM
How Should We Use WLMs? How much optimism? Which WLM best? –Structural (?) –no extra input Multi-start? –different WLMs / optimism levels –is it randomness?
Caveats This tool, this version, these designs Global not detailed or extracted routing No clock tree Routability ignored –detours, strict Die size fixed Some designs pre-optimized
Conclusions / Future Work Strict accuracy not right question WLMs improve run time –NOT design quality (?) WLMs may be ballpark estimators Post-place opt indispensible –small gains from post-place logic opt Sensitivity analysis of placement and post-place opt