March 2010 ISPD 2010 1
Interconnect Power and Delay Optimization
by
Dynamic Programming
in
Gridded Design Rules
Konstantin Moiseev, Avinoam Kolodny
EE Dept. Technion, Israel Institute of Technology
Shmuel Wimer
- Eng. School, Bar-Ilan University
Interconnect Power and Delay Optimization by Dynamic Programming - - PowerPoint PPT Presentation
Interconnect Power and Delay Optimization by Dynamic Programming in Gridded Design Rules Konstantin Moiseev, Avinoam Kolodny EE Dept. Technion, Israel Institute of Technology Shmuel Wimer Eng. School, Bar-Ilan University March 2010 ISPD
March 2010 ISPD 2010 1
EE Dept. Technion, Israel Institute of Technology
March 2010 ISPD 2010 2
March 2010 ISPD 2010 3
line-to-line coupling line-to-line coupling Line-to-line coupling is dynamic power killer Using Elmore delay model, simple, inaccurate but with high fidelity signal's activity, 0<= AF <=1
March 2010 ISPD 2010 4
A Wi Si Si+1 L
March 2010 ISPD 2010 5
, , , ,
resistance, capacitive load and bus length .
i i i i i
L α β γ δ ε
Delay:
1 1
1 1 , ,
i i i i i i i i i i i i i i
s w s w w w s s D
µ µ
γ ε α β δ
− −
= + + + + +
1 1
i i i i i i i i i
µ µ
− −
Dynamic power:
,
i i
L κ η
March 2010 ISPD 2010 6
max 1 1 1 1
n sum i i i i i i i i i i n
− − = ≤ ≤
Minimize delay:
1 1
n i i i i i
− =
Minimize power:
1 n n i i i i
= =
Subject to Constrained area:
1 1
i p i q
In 32nm and 22nm: Discrete optimization: problem is NP-complete Dynamic programming works
March 2010 ISPD 2010 7
March 2010 ISPD 2010 8
– Routed by Synopsys tool – Width and space re-allocated in metal 2, 3 and 4 – Used effective drivers and loads from netlist – Typical block size was 250u X 250u
– Per optimized layer
March 2010 ISPD 2010 9
b B b B B
+ ′ ′ ∈ ∈ −
March 2010 ISPD 2010 10
b B
+ + ′ ∈
March 2010 ISPD 2010 11
Minimization of power and delay from j+1 to n is independent of power and delay from 1 to j.
j j i i i i
= =
This suggests dynamic programming. Algorithm generates only essential (P,D) pairs in progression from wire to wire.
March 2010 ISPD 2010 12
D P D=D0 Pmax Pmin
Dynamic Programming finds the red curve progressively. Optimal solution is derived from solution space of last wire.
March 2010 ISPD 2010 13
j j j
area left for n-(j+1) wires accumulated delay rightmost allocated space accumulated power
March 2010 ISPD 2010 14
j j
j j
= = = =
j i i j i i j i i j i i
j j
Allocation is dominating allocation if and
.
March 2010 ISPD 2010 15
Width and space allocations of next wire wire j stage
j
wire j+1 stage
1 j+
March 2010 ISPD 2010 16
n
Λ
Theorem (optimality): Stage of the DP algorithm contains all the feasible non-redundant, and hence optimal, power-delay pairs that can be obtained by any width and space allocation to n wires
P D
Theorem: Any power-delay function monotonically increasing in and achieves minimum on the boundary of the power-delay feasible region.
, f P D
March 2010 ISPD 2010 17
u0 un+1
Use transitive reduction of wire visibility graph Design rules are transitively closed Process wires from left to right in topological order with appropriate enhancement to power-delay calculations
March 2010 ISPD 2010 18
3 log
and are max in-degree and out-degree, respectively, of wire adjacency graph vertex O pq n n
α β
ε α β
+
Time complexity:
3
β
Storage complexity: Time and storage in practice are manageable due to power grid which decomposes the problem into many independent smaller problems.
March 2010 ISPD 2010 19
– Dynamic programming can generate filling patterns! – Line-to-line capacitance can be measured on the spot
– Enhancement for full-custom design style – Cross-hierarchy dynamic programming
– Using two values only is tremendous for litho!
– Use cell families with same footprint
March 2010 ISPD 2010 20
March 2010 ISPD 2010 21
March 2010 ISPD 2010 22
March 2010 ISPD 2010 23
1 2
b b b b b b
March 2010 ISPD 2010 24
2 1 1 2 2 1 1 2 2 1 2 1
sum b b B b b B
∈ ∈
b B
∈
March 2010 ISPD 2010 25
b b b B b B b B
′ ′ ∈ ∈ ∈
1 2 1 2 2 1
b b B b B b B b B
′ ∈ ∈ ′ ′ ∈ ∈
March 2010 ISPD 2010 26
1 2 2 1
b b b b
2 1
b
March 2010 ISPD 2010 27 2
1 2 2 1 2 2
b max b b B
∈
March 2010 ISPD 2010 28
2 1
b
b b b B b B
′ ∈ ∈