Home >Documents >Eyecharts: Constructive Benchmarking of Gate Sizing Heuristics Puneet Gupta, University of...

Eyecharts: Constructive Benchmarking of Gate Sizing Heuristics Puneet Gupta, University of...

Date post:14-Dec-2015
Category:
View:215 times
Download:3 times
Share this document with a friend
Transcript:
  • Slide 1

Eyecharts: Constructive Benchmarking of Gate Sizing Heuristics Puneet Gupta, University of California, Los Angeles Andrew B. Kahng, University of California, San Diego Amarnath Kasibhatla, University of California, Los Angeles Puneet Sharma, Freescale Semiconductor, TX Research funded in part by NSF Slide 2 Outline Motivation Solving Eyechart Topologies Experiments for Suboptimality Study Results 2 Slide 3 Why is Sizing Important? Sizing Effective way of optimizing for power, speed and area Tunable parameters Gate-width Threshold voltage Gate-length Supply voltage etc. Sizing problem seen at all stages of RTL to GDS flow Power recovery crucial during post-layout phase 3 Slide 4 Why Study Suboptimality? Literally hundreds of gate sizing methods exist Common heuristics/algorithms: Linear Programming, Lagrangian Relaxation, Convex Optimization, Dynamic Programming, Geometric Programming, Sensitivity based gradient-descent, Simulated Annealing etc. Which heuristic is better? No systematic way to compare, so far How suboptimal are these heuristics? Does a heuristics performance depend on Circuit topology? Characteristics of the cell library? No prior work focuses on these aspects 4 Slide 5 Sizing Problem Formulation Sizing problem could be discrete or continuous Discrete sizing problem is NP-hard Common designs are standard cell-based and discrete We focus only on discrete sizing problem Problem: Leakage power minimization under timing constraints Circuits are purely combinational Gate sizing alone is tested and not logic optimization capability 5 Slide 6 Our Contributions We generate artificial combinational circuits called eyecharts Gates delay depends only on Gate size Total load capacitance Eyecharts can be solved optimally using Dynamic Programming (DP) A variety of eyecharts are generated by varying Circuit topology Power-Size, delay-size characteristics of library Suboptimalities of existing heuristics studied under these variations Leakage optimization details are presented Extensions to dynamic power optimization are easy 6 Slide 7 Outline Motivation Solving Eyechart Topologies Experiments for Suboptimality Study Results 7 Slide 8 What are Eyecharts? Chain MESH STAR Chain, Mesh and Star proposed Each can be solved optimally for the assumed delay model Stage of a gate is its logic level from the PI Levelized nature of eyecharts enables optimal sizing by DP 8 Slide 9 What are Eyecharts? Chain MESH STAR Stage1 Stage2 Stage3 Stage4 Stage5 PI PO Chain, Mesh and Star proposed Each can be solved optimally for the assumed delay model Stage of a gate is its logic level from the PI Levelized nature of eyecharts enables optimal sizing by DP 9 Slide 10 Solving a Chain Optimally InputLeakage Delay cappower Load Load = 3 = 6 Size 1 3 5 3 4 Size 2 6 10 1 2 10 Slide 11 Solving a Chain Optimally Stage 3 Stage 1 Stage 2 6 INV1 INV2 INV3 D max = 8 InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 11 Slide 12 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 3 Stage 1 Stage 2 ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 12 Slide 13 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 13 Slide 14 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? Load = 3 InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 14 Slide 15 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 6 15 Slide 16 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 16 Slide 17 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 17 Slide 18 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size ? InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 18 Slide 19 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 ? ? 2 ? ? 3 5 1 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? 2 ? ? 3 ? ? 4 ? ? 5 ? ? 6 ? ? 7 ? ? 8 ? ? Stage 3 Stage 1 Stage 2 Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 19 Slide 20 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 1 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 Stage 3 Stage 1 Stage 2 Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 20 Slide 21 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 Stage 2 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 21 Slide 22 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 22 Slide 23 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size INV2 Excess Total delay budget power size 1 3 3 10 InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 23 Slide 24 Solving a Chain Optimally 6 INV1 INV2 INV3 D max = 8 INV2 Excess Total delay budget power size 1 3 3 10 size 2 1 5 15 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 24 Slide 25 Solving a Chain Optimally 6 8 20 1 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 Load = 6 25 Slide 26 Solving a Chain Optimally 6 8 20 1 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size Budget Power Size INV3 Excess Total delay budgetpower size 1 4 4 20 size 2 2 6 25 InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 Load = 6 26 Slide 27 Solving a Chain Optimally 6 8 20 1 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size Budget Power Size INV3 Excess Total delay budgetpower size 1 4 4 20 size 2 2 6 25 InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 Load = 6 27 Slide 28 Solving a Chain Optimally 6 8 20 1 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 INV3 Excess Total delay budgetpower size 1 4 4 20 size 2 2 6 25 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 Load = 6 28 Slide 29 Solving a Chain Optimally 6 8 20 1 INV1 INV2 INV3 D max = 8 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 Stage 1 Stage 2 Stage 3 Stage 1 Stage 2 Budget Power Size Budget Power Size Budget Power Size InputLeakage Delay cappower Load Load 3 6 Size 1 3 5 3 4 Size 2 6 10 1 2 Load = 3 Load = 6 Load = 3 Load = 6 Load = 6 29 Slide 30 Solving a Chain Optimally 6 1 10 2 2 10 2 3 5 1 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 2 10 2 3 10 2 4 5 1 5 5 1 6 5 1 7 5 1 8 5 1 3 20 2 4 15 1 5 15 2 6 10 1 7 10 1 8 10 1 4 20 2 5 15 1 6 15 2 7 10 1 8 10 1 8 20 1 INV1 INV2 INV3 Load = 6 Budget Power Size 6fF OPTIMIZED CHAIN D max = 8 Stage 1 Stage 2 Stage 3 Stage 1 S

Popular Tags:

Click here to load reader

Reader Image
Embed Size (px)
Recommended