Computing Bounds on Dynamic Power Using Fast Zero-Delay Logic Simulation

advertisement
Computing Bounds on Dynamic Power
Using Fast Zero-Delay Logic Simulation
Jins Davis Alexander
Vishwani D. Agrawal
Department of Electrical and Computer Engineering
Auburn University, Auburn, AL 36849
March 16, 2009
SSST'09
1
Objective
• Determine power dissipation in a digital CMOS
circuit.
March 16, 2009
SSST'09
2
Components of Power
• Dynamic
– Signal transitions
• Logic activity
• Glitches
– Short-circuit
• Static
– Leakage
March 16, 2009
Ptotal = Pdyn + Pstat
= Ptran + P + Pstat
sc
SSST'09
3
Power Per Transition
isc
R
VDD
Dynamic Power
Vo
Vi
= CLVDD2/2 + Psc
CL
R
Ground
March 16, 2009
SSST'09
4
Number of Transitions
March 16, 2009
SSST'09
5
Problem Statement
• Problem - Estimate dynamic power consumed in
a CMOS circuit for:
– A set of input vectors
– Delays subjected to process variation
• Challenge - Existing method, Monte Carlo
simulation, is expensive.
• Find a lower cost solution.
March 16, 2009
SSST'09
6
Bounded (Min-Max) Delay Model
IV
FV
EA
•
•
•
•
LS
FV
EA
LS
EA is the earliest arrival time
LS is the latest stabilization time
IV is the initial signal value
FV is the final signal value
EAsv=-∞
Driving
value
EAdv
LSsv=∞
LSdv
EAdv=-∞
Sensitizing
value
March 16, 2009
IV
EAsv
[d, D]
LSdv=∞
LSsv
SSST'09
7
Example
d
d
March 16, 2009
SSST'09
D
D
8
Finding Number of Transitions
3
14
7
5
8
10
12
10 12
14
2, 2
[mintran,maxtran]
[0,2]
3
EA
5
EA
14
6
LS
[0,4]
1, 3
EA
17
LS
17
LS
where mintran is the minimum number of transitions and
maxtran the maximum number of transitions.
March 16, 2009
SSST'09
9
Estimating maxtran
• Nd: First upper bound is the largest number of transitions that
can be accommodated in the ambiguity interval given by the
gate delay bounds and the (IV, FV) output values.
• N: Second upper bound is the sum of the input transitions as
the output cannot exceed that. Further modify it as
N=N–k
where k = 0, 1, or 2 for a 2-input gate and is determined by
the ambiguity regions and (IV, FV) values of inputs.
• The maximum number of transitions is lower of the two upper
bounds:
maxtran = min (Nd, N)
March 16, 2009
SSST'09
10
First Upper Bound, Nd
Nd = 1 + (LS – EA)/d
└
┘
d
d, D
EA
March 16, 2009
SSST'09
LS
11
Examples of maxtran
Nd = 1 + (18 – 3)/0 = ∞
N=4+4=8
maxtran=min (Nd, N) = 8
Nd = 1 + (23 – 6)/3 = 6
N=4+4=8
maxtran=min (Nd, N) = 6
March 16, 2009
SSST'09
12
Example: maxtran With Non-Zero k
[n1 = 6]
EAsv = - ∞
[n1 + n2 – k = 8 ] ,
LSdv = ∞
EAdv
EAsv = - ∞
LS
where k = 2
LSsv
[n2 = 4]
EAdv
EA
LSdv = ∞
LSsv
[6]
[6+4–2=8]
[4]
March 16, 2009
SSST'09
13
Simulation Methodology
• d, D = nominal delay ± Δ%
• Three linear-time passes for each input vector:
 First pass: zero delay simulation to determine initial and
final values, IV and FV, for all signals.
 Second pass: determines earliest arrival (EA) and latest
stabilization (LS) from IV, FV values and bounded gate
delays.
 Third pass: determines upper and lower bounds, maxtran
and mintran, for all gates from the above information.
March 16, 2009
SSST'09
14
Zero-Delay Vs. Event-Driven
Simulation
9000
8000
Execution Time (secs)
7000
6000
5000
Event driven simulation
4000
Min-Max Simulation
3000
2000
1000
0
357
514
880
1161 1667 2290 2416 3466
Number of gates
March 16, 2009
SSST'09
15
Maximum Power
• Monte Carlo Simulation vs. Min-Max analysis for circuit C880.
100 sample circuits with + 20 % variation were simulated for
each vector pair (100 random vectors).
R2 is coefficient of
determination, equals 1.0 for
ideal fit.
March 16, 2009
SSST'09
16
Minimum Power
R2 is coefficient of
determination, equals
1.0 for ideal fit.
March 16, 2009
SSST'09
17
Average Power
10
9
Monte Carlo average power (mW)
R2 = 0.9527
8
7
6
5
4
3
R2 is coefficient of
determination, equals
1.0 for ideal fit.
2
1
0
0
2
4
6
8
10
MIN - MAX m ean pow er (m W)
March 16, 2009
SSST'09
18
C880: Monte Carlo vs. Bounded Delay
Analysis
80000
1000 Random Vectors, 1000 Sample Circuits
70000
Frequency
60000
50000
40000
30000
20000
10000
2.
13
7
2.
74
74
3.
35
79
3.
96
83
4.
57
88
5.
18
92
5.
79
96
6.
41
01
7.
02
05
7.
63
1
8.
24
14
8.
85
19
9.
46
23
10
.0
73
10
.6
83
11
.2
94
1.
52
65
0
Power (mW)
Monte Carlo Simulation
Bounded Delay Analysis
Min Power
(mW)
Max Power
(mW)
CPU Time
(secs)
Min Power
(mW)
Max Power
(mW)
CPU Time
(secs)
1.42
11.59
262.7
1.35
11.89
0.3
March 16, 2009
SSST'09
19
Power Estimation Results
• Circuits implemented using TSMC025 2.5V CMOS library , with standard
size gate delay of 10 ps and a vector period of 1000 ps. Min-Max values
obtained by assuming ± 20 % variation. The simulations were run on a
UNIX operating system using a Intel Duo Core processor with 2 GB RAM.
March 16, 2009
SSST'09
20
Conclusion
• Bounded delay model allows power estimation
method with consideration of uncertainties in
delays.
• Analysis has a linear time complexity in number
of gates and is an efficient alternative to the
Monte Carlo analysis.
March 16, 2009
SSST'09
21
Download