Discrete Gate Sizing CENG 5270 – Tutorial 9 WILLIAM CHOW
Discrete Gate Sizing Given design D that contains: ◦Set of standard cells C ◦Set of pins P on these cells ◦Set of Nets N D N1N1 N2N2 N3N3 N4N4 N5N5 N6N6 N7N7 N8N8 PI PO C1C1 C2C2 C3C3 C4C4 C5C5 S c1 Power = 2uW Power = 4uW Power = 8uW
Discrete Gate Sizing D N1N1 N2N2 N3N3 N4N4 N5N5 N6N6 N7N7 N8N8 PI PO C1C1 C2C2 C3C3 C4C4 C5C5 S c1 Power = 2uW Power = 4uW Power = 8uW
Discrete Gate Sizing D N1N1 N2N2 N3N3 N4N4 N5N5 N6N6 N7N7 N8N8 PI PO C1C1 C2C2 C3C3 C4C4 C5C5 S c1 Power = 2uW Power = 4uW Power = 8uW
Slack Signal at primary input (PI) must arrive primary output (PO) within target delay Slack = actual arrival time (AAT) – required arrival time (RAT) Actual arrival time Required arrival time
Slack Actual arrival time Required arrival time Slack Total Negative Slack (TNS) denote the absolute value of the total negative slack of all PO TNS = 7
Delay Tables (DT) Slew Tables (ST) ◦Cell delays and slews are defined using delay tables and slew tables. ◦The timing arcs are defined from input pins of the cell to the output pin (rising and falling). ◦Timing arc delay = DT[in_slew, out_load] ◦Timing arc slew = ST[in_slew, out_load] out_load=50fF in_slew=80ps DT fall ST fall DT rise ST rise
Difficulties Changing cell size affect neighboring gates’ delay Capacitance increase Slew decrease
Difficulties Other constraints: ◦Capacitance constraint ◦Slew constraint ◦Wire delay ◦Area constraint ◦We don’t consider these in this tutorial
Problem Formulation
Lagrangian Relaxation We integrate the constraints to the original objective function and obtain the Lagrangian-Relaxed Subproblem (LRS):
Lagrangian Relaxation Based on Kuhn-Tucker conditions, the sum of multipliers on incoming arcs of a node must be equal to the sum of multipliers on its outgoing arcs.
Lagrangian Relaxation
Graph Model Use a graph model that captures the Lagrangian relaxed subproblem Select cell size with the graph model
Graph Model What is the minimal cost selection?
Graph Model What is the minimal cost selection?
Graph Model What is the minimal cost selection?
Graph Model What is the minimal cost selection?
Graph Model ◦Begin with an arbitrary size selection ◦Define reference cell types as the current selected cell types ◦For node weight, we consider: ◦Leakage power of cell type ◦Gate delay change without changing downstream cell types ◦For edge weight, we consider: ◦Gate delay change due to change of downstream cell types
Graph Model
The Algorithm Produce an initial arbitrary solution Run static timing analysis While objective function is not converge ◦Update Lagrange multipliers ◦Choose size with dynamic programming using the graph model ◦Run static timing analysis ◦Update objective function
Refrences [1] M. M. Ozdal, S. Burns, J. Hu, "Gate Sizing and Device Technology Selection Algorithms for High-Performance Industrial Designs", ICCAD 2010