Title: ELEC 5970-001/6970-001(Fall 2005) Special Topics in Electrical Engineering Low-Power Design of Electronic Circuits Power Analysis: Probabilistic Methods
1ELEC 5970-001/6970-001(Fall 2005)Special Topics
in Electrical EngineeringLow-Power Design of
Electronic CircuitsPower Analysis
Probabilistic Methods
- Vishwani D. Agrawal
- James J. Danaher Professor
- Department of Electrical and Computer Engineering
- Auburn University
- http//www.eng.auburn.edu/vagrawal
- vagrawal_at_eng.auburn.edu
2Basic Idea
- View signals as a random processes
Probs(t) 1 p1 p0 1 p1
C
0?1 transition probability (1 p1) p1 Power,
P (1 p1) p1 CV2fck
3Source of Inaccuracy
p1 0.5
P 0.5CV2fck
1/fck
p1 0.5
P 0.33CV2fck
p1 0.5
P 0.167CV2fck
Observe that the formula, Power, P (1 p1) p1
CV2fck, is not Correct.
4Switching Frequency
Number of transitions per unit time N(t) T
--- t For a continuous
signal N(t) T lim --- t?8 t
T is defined as the transition density.
5Static Signal Probabilities
- Observe signal for interval t0 t1
- Signal is 1 for duration t1
- Signal is 0 for duration t0
- Signal probabilities
- p1 t1/(t0 t1)
- p0 t0/(t0 t1) 1 p1
6Static Transition Probabilities
- Transition probabilities
- T01 p0 Probsignal is 1 signal was 0 p0
p1 - T10 p1 Probsignal is 0 signal was 1 p1
p0 - T T01 T10 2 p0 p1 2 p1 (1 p1)
- Transition density T 2 p1 (1 p1)
- Transition frequency f T/ 2
- Power CV2T/ 2 (correct formula)
7Static Transition Frequency
0.25 0.2 0.1 0.0
f p1(1 p1)
0 0.25 0.5 0.75 1.0
p1
8Inaccuracy in Transition Density
p1 0.5
T 1.0
1/fck
p1 0.5
T 4/6
p1 0.5
T 1/6
Observe that the formula, T 2 p1 (1 p1), is
not correct.
9Cause for Error and Correction
- Probability of transition is not independent of
the present state of the signal. - Consider probability p01of a 0?1 transition,
- Then p01 ? p0 p1
- We can write p1 (1 p1)p01 p1 p11
- p01
- p1 ---------
- 1 p11 p01
10Correction (Cont.)
- Since p11 p10 1, i.e., given that the signal
was previously 1, its present value can be either
1 or 0. - Therefore,
- p01
- p1 ------
- p10 p01
- This uniquely gives signal probability as a
function of transition probabilities.
11Transition and Signal Probabilities
p01 p10 0.5
p1 0.5
1/fck
p01 p10 1/3
p1 0.5
p01 p10 1/6
p1 0.5
12Probabilities p0, p1, p00, p01, p10, p11
- p01 p00 1
- p11 p10 1
- p0 1 p1
- p01
- p1 ------
- p10 p01
13Transition Density
- T 2 p1(1 p1) p0 p01 p1 p10
- 2 p10 p01/(p10 p01)
- 2 p1 p10 2 p0 p01
14Power Calculation
- Power can be estimated if transition density is
known for all signals. - Calculation of transition density requires
- Signal probabilities
- Transition densities for primary inputs computed
from vector statistics
15Signal Probabilities
x1 x2
x1 x2
x1 x2
x1 x2 x1x2
1 - x1
x1
16Signal Probabilities
0.5
x1 x2 x3
x1 x2
0.25
0.5
0.625
0.5
y 1 - (1 - x1x2) x3 1 - x3 x1x2x3
0.625
X1 X2 X3 Y 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 1
0 0 1 1 0 1 0 1 1 0 1 1 1 1 1
Ref K. P. Parker and E. J. McCluskey, Probabilis
tic Treatment of General Combinational Networks,
IEEE Trans. on Computers, vol. C-24, no. 6, pp.
668-670, June 1975.
17Correlated Signal Probabilities
0.5
x1 x2
x1 x2
0.5
0.25
0.625?
y 1 - (1 - x1x2) x2 1 x2 x1x2x2
1 x2 x1x2 0.75
X1 X2 Y 0 0 1 0 1 0 1 0 1 1 1 1
18Correlated Signal Probabilities
x1 x2 x1x2
0.5
x1 x2
0.75
0.5
0.375?
y (x1 x2 x1x2) x2 x1x2 x2x2
x1x2x2 x1x2 x2 x1x2 x2 0.5
X1 X2 Y 0 0 0 0 1 1 1 0 0 1 1 1
19Observation
- Numerical computation of signal probabilities is
accurate for fanout-free circuits.
20Remedies
- Use Shannons expansion theorem to compute signal
probabilities. - Use Boolean difference formula to compute
transition densities.
21Shannons Expansion Theorem
- C. E. Shannon, A Symbolic Analysis of Relay and
Switching Circuits, Trans. AIEE, vol. 57, pp.
713-723, 1938. - Consider
- Boolean variables, X1, X2, . . . , Xn
- Boolean function, F(X1, X2, . . . , Xn)
- Then F Xi F(Xi1) Xi F(Xi0)
- Where
- Xi is complement of X1
- Cofactors, F(Xij) F(X1, X2, . . , Xij, . . ,
Xn), j 0 or 1
22Expansion About Two Inputs
- F XiXj F(Xi1, Xj1) XiXj F(Xi1, Xj0)
- XiXj F(Xi0, Xj1) XiXj F(Xi0, Xj0)
- In general, a Boolean function can be expanded
about any number of input variables. - Expansion about k variables will have 2k terms.
23Correlated Signal Probabilities
X1 X2
X1 X2
Y X1 X2 X2
X1 X2 Y 0 0 1 0 1 0 1 0 1 1 1 1
Shannon expansion about the reconverging
input Y X2 Y(X21) X2 Y(X20) X2
(X1) X2 (1)
24Correlated Signals
- When the output function is expanded about all
reconverging input variables, - All cofactors correspond to fanout-free circuits.
- Signal probabilities for cofactor outputs can be
calculated without error. - A weighted sum of cofactor probabilities gives
the correct probability of the output. - For two reconverging inputs
- f xixj f(Xi1, Xj1) xi(1-xj) f(Xi1, Xj0)
- (1-xi)xj f(Xi0, Xj1) (1-xi)(1-xj) f(Xi0,
Xj0)
25Correlated Signal Probabilities
X1 X2
X1 X2
Y X1 X2 X2
X1 X2 Y 0 0 1 0 1 0 1 0 1 1 1 1
Shannon expansion about the reconverging
input Y X2 Y(X21) X2 Y(X20) X2
(X1) X2 (1) y x2 (0.5) (1-x2) (1)
0.5 (0.5) (1-0.5) (1) 0.75
26Example
0.5
Supergate
0.25
Point of reconv.
0.5 0.0
0.5 1.0
0.5
1 0
0.0 1.0
0.5
0.375
0.5
Reconv. signal
Signal probability for supergate output 0.5
Probrec. signal 1 1.0 Probrec. signal
0 0.5 0.5 1.0 0.5 0.75
S. C. Seth and V. D. Agrawal, A New Model for
Computation of Probabilistic Testability in
Combinational Circuits, Integration, the VLSI
Journal, vol. 7, no. 1, pp. 49-75, April 1989.
27Probability Calculation Algorithm
- Partition circuit into supergates.
- Definition A supergate is a circuit partition
with a single output such that all fanouts that
reconverge at the output are contained within the
supergate. - Identify reconverging and non-reconverging inputs
of each supergate. - Compute signal probabilities from PI to PO
- For a supergate whose input probabilities are
known - Enumerate reconverging input states
- For each input state do gate by gate probability
computation - Sum up corresponding signal probabilities,
weighted by state probabilities
28Calculating Transition Density
1
Boolean function
x1, T1 . . . . . xn, Tn
y, T(Y) ?
n
29Boolean Difference
?Y Boolean diff(Y, Xi) -- Y(Xi1) ?
Y(Xi0) ?Xi
- Boolean diff(Y, Xi) 1 means that a path is
sensitized from input Xi to output Y. - Prob(Boolean diff(Y, Xi) 1) is the probability
of transmitting a toggle from Xi to Y. - Probability of Boolean difference is determined
from the probabilities of cofactors of Y with
respect to Xi.
F. F. Sellers, M. Y. Hsiao and L. W. Bearnson,
Analyzing Errors with the Boolean Difference,
IEEE Trans. on Computers, vol. C-17, no. 7, pp.
676-683, July 1968.
30Transition Density
n T(y) S T(Xi) Prob(Boolean diff(Y, Xi)
1) i1
F. Najm, Transition Density A New Measure of
Activity in Digital Circuits, IEEE Trans. CAD,
vol. 12, pp. 310-323, Feb. 1993.
31Power Computation
- For each primary input, determine signal
probability and transition density for given
vectors. - For each internal node and primary output Y, find
the transition density T(Y), using supergate
partitioning and the Boolean difference formula. - Compute power,
- P S 0.5CY V2 T(Y)
- all Y
- where CY is the capacitance of node Y and V is
supply voltage.
32Transition Density and Power
0.2, 1
X1 X2 X3
0.06, 0.7
0.3, 2
0.436, 3.24
Ci
Y
CY
0.4, 3
Transition density Signal probability
Power 0.5 V2 (0.7Ci 3.24CY)
33Prob. Method vs. Logic Sim.
Circuit No. of gates Probability method Probability method Logic Simulation Logic Simulation Error
Circuit No. of gates Av. density CPU s Av. density CPU s Error
C432 160 3.46 0.52 3.39 63 2.1
C499 202 11.36 0.58 8.57 241 29.8
C880 383 2.78 1.06 3.25 132 -14.5
C1355 346 4.19 1.39 6.18 408 -32.2
C1908 880 2.97 2.00 5.01 464 -40.7
C2670 1193 3.50 3.45 4.00 619 -12.5
C3540 1669 4.47 3.77 4.49 1082 -0.4
C5315 2307 3.52 6.41 4.79 1616 -26.5
C6288 2406 25.10 5.67 34.17 31057 -26.5
C7552 3512 3.83 9.85 5.08 2713 -24.2
CONVEX c240