Documente Academic
Documente Profesional
Documente Cultură
• placement problems
– quadratic and ℓ1-placement
– placement with timing constraints
1
Signal delay in RC circuit
vin
1
vk
vin 0.5
t=0 Dk
dv
C = −G(v(t) − 1), v(0) = 0
dt
• capacitance matrix C = C T ≻ 0
• conductance matrix G = GT ≻ 0
• as t → ∞, v(t) → 1
• delay at node k:
Cg ∝ w Cs ∝ w Cd ∝ w
drain
source G S D
nMOS Cg ∝ w Cs ∝ w Cd ∝ w
transistor
(width w)
RC model (off)
vout
CL
Ri ∝ ℓi/wi
Ci ∝ w i ℓi Ci
dv
C(x) = −G(x)(v(t) − 1), v(0) = 0
dt
• area, affine in x
1T C(x)1
2
affine in x
0.5
Dk Dk Tkelm
• Tkelm ≥ 0.5Dk
C2 C3
R1
1
r m
R5
5m
r
vin R4
4
r m C6
R6
6m
C1 r
C4 C5
R2 2m R3 3m
r r
R1 C2 C3
1
r m
R5 5m
r
vin R4
4 R6
r m C5
6m
C1 r
C4 C6
Example:
Elmore delay:
m
α
X X Y
Tkelm = γij Rj Ci = βk xi ik
ij k=1 i=1
hence can minimize area or power, subject to bound on Elmore delay using
geometric programming
dv
C(x) = −G(x)(v(t) − 1), v(0) = 0
dt
det(λiC(x) + G(x)) = 0
−1/T dom
−1/Tmax
dom
x|T (x) ≤ Tmax
are convex
minimize area, power s.t. bound on T dom, upper and lower bounds on sizes
minimize fTx
subject to TmaxG(x) − C(x) 0
xmin
i ≤ xi ≤ xmax
i
• no restrictions on topology
(loops of resistors, non-grounded capacitors)
RC-model: xi
x1 x20
αxi
βxi βxi
2000
1
1800 HH
Y
1600
H
(d) 0.5
0
1400
1
Tdom
1200
0.5
1000
(c) 0
800 A
A (b) (a) 0.6
600 U
A A A
0.3
A A
0
400 AU AU 0.2
0
200 0 2 4 6 8 10 12 14 16 18 20
2 4 6 8 10 12 14 16 18
wire area
• globally optimal tradeoff curve
0.9
0.8
0.7
voltage 0.6
0.5
0.4
0.3
D dom
0.2
T elm
0.1
T
0
0 200 400 600 800 1000 1200 1400 1600 1800 2000
time
x1 x2
1m 2m 3m
x5 αxi
βixi βixi
x6 4m
x4
not solvable via Elmore delay minimization
min area s.t. max dominant time constant (via SDP):
X
minimize xi
subject to TmaxG(x) − C(x) 0
700
(c)
600
dominant time constant
500
(b)
400
300
(a)
200
100
0 0.1 0.2 0.3 0.4 0.5 0.6
area
0.7
1m 3m 0.6
0.5
0.4
0.3
0.7
0.6
1m 3m 0.5
0.4
0.3
0.8
@
I
@
0.7 v3(t)
0.6
1m 3m 0.5
0.4
0.3
4j 0.2
T dom
0.1 D T elm
@
0 R
@
0 100 200 300 400 500 600 700 800 900 1000
quadratic placement:
X
2 2
minimize wij (xi − xj ) + (yi − yj )
nets (i,j)
weights wij ≥ 0
unconstrained convex quadratic minimization
(called ‘quadratic programming’ in VLSI)
X
minimize wij (|xi − xj | + |yi − yj |)
nets (i,j)
Cwire Cload
X
minimize h(|xi − xj | + |yi − yj |)
nets (i,j)
h convex, increasing on R+
example h(z)
• propagation delay through wire (i, j) is αℓij , where ℓij is the length of
the wire
ℓ13
ℓ35
D3proc D5proc
D2proc ℓ23
minimize T X
proc
X
subject to Di + αℓij ≤ T
cells wires
in path in path
• for all cells j, add one inequality for each cell i in the fan-in of j
non-convex constraints
• cells are placed on grid of legal positions