Академический Документы
Профессиональный Документы
Культура Документы
r
i=1
s
]=1
q
i]
r s
(1)
Signal probability is used for accurate estimation of
signal activity. Therefore it is essential to accurately cal-
culated signal probability for further use in estimating
activity.
Denition 2. The transition density D(x) is dened as
the average number of transitions from 0 1 and 1 0
per unit time.
D(x) =
r
]=1
s1
i=1
q
i]
q
i+1]
r (s 1)
(2)
Every signal in a logic circuit can be related to a statis-
tical process. Input correlation plays a signicant role in
power dissipation, especially when the circuit is part of a
wide data-path. We have therefore decided to incorporate
input correlation to the metrics of our model. To capture
temporal and spatial correlations, we consider correlation
metrics S(x) and T (x).
Denition 3. Two (or more) signals are spatially cor-
related S(x) if the values that one assumes are depen-
dent on the values of the other. Two signals are spatially
independent if they are not spatially correlated. In other
words, The average of the bit-wise XNOR between all
possible channel streams q
i
=](q
1i
, q
2i
, . . . , q
si
)} and q
]
=
](q
1]
, q
2]
, . . . , q
s]
)] in the stream q.
S(x) =
r
]=1
r
k=1
s
i=1
q
i]
q
ik
s r (r 1)
or
S(x)
i]
=P
x
i
x
]
=1
(3)
where, x
i
and x
]
are input signal. i.e., it is the probability
of both inputs being high simultaneously. Even though the
joint probability is not what is usually referred to as cor-
relation coefcient between two random variables, in this
case of Boolean variables the joint probability of two bits
is enough to capture their complete joint distribution and,
therefore, sufces as a measure of their correlation. These
four variables are not independent. Where is XNOR in
(2) and (3).
Denition 4. A signal is temporally correlated T (x) if
the value that it assumes on the next clock cycle is depen-
dent on its present and (or) previous values. In other words,
the input stream has its next value depends on its current
value and on previous values.
For a given channel stream of length s, the convolution
with an arbitrary window ,
]
of length t from the channel
stream q
]
.
T (x) =
r
]=1
st+1
t1
(,
]
q
]
)
r s
(4)
where is the convolution in (4). Each term in the con-
volution represents the number of times that two signals
are both simultaneously high. Each term indicates how
well the chosen subset is reproduced in the sequence, and
therefore provides an estimate of the signals temporal cor-
relation. The main issue in the denition of T (x) is the
choice of t, since a value that is either too big or too small
may result in missing correlation information. In Ref. [29]
the authors use a similar window technique to estimate
the temporal correlation of input streams with arbitrary
distributions. Their study shows that a suitable value for
t is 10.
3.2. Input Macro-Modelling for IP-Based
Macro-Blocks
Since the power is dependent on circuit inputs, it is clear
that a power macro-model should take the input activity
into account. When the circuit is modelled then a simple
modelling strategy is to create a table that gives the power
for every possible input vector pair. This leads to a trade-
off between the amount of detail that one includes about
the inputs and the accuracy resulting from the model. One
possibility is to consider the average input signal probabil-
ity P
in
, average input transition density D
in
, input spatial
correlation S
in
, and input temporal correlation T
in
at every
input node x
i
and to build a model that depends only on
these four variables. We have considered four-dimensional
look-up-table. In this case, two different input assignments
of P
in
, D
in
, S
in
, T
in
values, which may lead to different
power values, may have same and the LUT would predict
the same for both assignments, obviously with some error.
Similar power macro-modelling techniques were pre-
sented in Refs. [19, 16]. Our macro-model consists of a
nonlinear function based on LUT approach. This model
estimates the average power dissipation P
IP_avg
of IP
macro-block using (5).
P
IP_avg
=] (P
in
, D
in
, S
in
, T
in
) (5)
The macro-model function ] (.) in (5) is obtained by
a given IP macro-block which maps the space of input
signal properties to the power dissipation of a circuit.
When the input metrics of ] (.) are solely determined by
the input signals the computation of power estimates is
a straight-forward and fast function evaluation. The most
commonly used templates for the macro-model function
] (.) are low-order polynomial functions. For a kth order
4 J. Low Power Electronics 3, 19, 2007
Durrani and Riesgo Architectural Power Analysis for Intellectual Property-Based Digital System
complete polynomial function with n input parameters,
a total of S
k
n+k
coefcients need to be computed. Using
(1), (2), (3), and (4) can be dened as an input
metrics in (6), (7), (8), and (9).
P
in
=
r
i=1
s
]=1
q
i]
r s
(6)
D
in
=
r
]=1
s1
i=1
q
i]
q
i+1]
r (s 1)
(7)
S
in
=
r
]=1
r
k=1
s
i=1
q
i]
q
ik
s r (r 1)
(8)
T
in
=
r
]=1
st+1
t1
(,
]
q
]
)
r s
(9)
In the estimation procedure, the actual signal statistics
are derived and applied to ] (.) in (5) to compute the
power estimate. Power sensitivity of input metric R shows
how R effects P and is dened in Refs. [19, 20]:
lim
AR0
AP
AR
(10)
Intuitively, the higher the sensitivity of R should be
used in the characterization phase to increase the accuracy
of power macro-modelling. Given an analytical expression
] (.), the power sensitivity can be calculated by the partial
derivation of ] (.).
3.3. Output Macro-Modelling for IP-Based
Macro-Blocks
Output macro-modelling was rst introduced in Ref. [27]
and we further improved in Refs. [21, 22] to predict out-
put signal statistics of an individual IP block from input
signal statistics. This model stores the equi-spaced dis-
crete measured power values of the I/O signal statistics. In
our output macro-modelling, we propose a new method to
the computation of power macro-model ] (.) in (5) can
be used to a circuit to its output signal statistics. In the
characterization step, functional simulation of the circuit is
performed with different input sequences to obtain output
metrics. The output metrics are the average output signal
probability P
out
, average output transition density D
out
, out-
put spatial correlation S
out
and output temporal correlation
T
out
. The function ] (.) in (5) can be used to construct to
a set of functions ]
A
, ]
B
, ]
C
and ]
D
that maps the input
metrics of a macro-block to its output metrics P
out
, D
out
,
S
out
, T
out
are derived in (11), (12), (13), and (14):
P
out
=]
A
(P
in
, D
in
, S
in
, T
in
) (11)
D
out
=]
B
(P
in
, D
in
, S
in
, T
in
) (12)
S
out
=]
C
(P
in
, D
in
, S
in
, T
in
) (13)
T
out
=]
D
(P
in
, D
in
, S
in
, T
in
) (14)
Similar to power sensitivity in (10), the sensitivity of an
output metrics with respect to P
in
, D
in
, S
in
, T
in
is dened
as the partial derivation of the corresponding function ]
i
.
3.4. Monte Carlo Simulation
The Monte Carlo approach for power estimation was rst
proposed by Najm
12
and further improved in Refs. [13,
15]. Using same approach, our genetic algorithm gener-
ates the corresponding logic input waveforms according to
the P
in
, D
in
, S
in
, T
in
values. Then the method estimates the
average power by sampling those input waveforms with
certain length I and fed them into the simulator to derive
a sample value. The average power consumption can be
estimated with the average of several sample values. From
the Central Limit Theorem, the sample values can be pre-
sumed as a Normal distribution when I approaches inn-
ity. The probability that the estimated mean is within a
certain error range of the real mean can be also derived
under the assumption. If I is far from a Normal distri-
bution, the basis of the Monte Carlo method fails and
the estimated power may have a larger error level than
expected.
Our target is the average total power consumption of a
hierarchical circuit under a user-specied application input
waveforms. The estimation is performed in a single Monte
Carlo simulation so that the power estimate at the top level
circuit satises the user-specied condence and error lev-
els. This is different from the strategy which estimates
each IP module in a separate Monte Carlo simulation and
sums up the estimates to produce total average power. The
drawback of the latter strategy is that it is difcult to deter-
mine a prior what condence and error levels should be
assigned to each module so that the sum of individual
power estimates satises the condence and error levels
specied at the top circuit level.
In our experiments, we performed Monte Carlo zero
delay simulation technique for the digital IP-based system
and the power dissipation is obtained by our macro-model
function. The interpolation scheme
19, 20
can be applied (to
improve the power sensitivity concept), if the input metrics
do not match on their characteristics. The block diagram
in Figure 2 gives an overall view of the RTL power esti-
mation technique.
3.5. Power Macro-Modelling for IP-Based
Digital System
Several approaches
15, 17, 19
have been proposed to construct
power macro-models on ISCAS-85 benchmark circuits.
We have observed that the same methodology works as
well for different IP macro-blocks such as array multipli-
ers, comparators, delay elements (shift registers), adders
in terms of the statistical knowledge of their primary
I/O. Recently we have presented in Refs. [21, 22, 28]
a macro-model for different IP blocks. The proposed
methodology was described as follows: in our static power
macro-modelling procedure, the sequence of an input
stream was generated for a desired input metrics: P
in
, D
in
,
S
in
, T
in
. Then using functional simulations and a power
J. Low Power Electronics 3, 19, 2007 5
Architectural Power Analysis for Intellectual Property-Based Digital System Durrani and Riesgo
Input pattern
RTL circuit
Power simulator
Convergence ?
No
Yes
Average power
estimation
Power
libraries
GA operation
for generating
new patterns
Fig. 2. The ow of RTL power estimation.
estimator, the output stream sequence and the average
power dissipation P
IP_avg
was extracted by the output wave-
forms of the IP macro-block. At this moment, the power
function in (5) can be dened. All this process is divided
in two steps. In the rst one, the metrics of the I/O
sequences were computed by our GA
24, 25
and the power
function was obtained using P
IP_avg
in (5). The interpola-
tion scheme
16, 17
can be applied (to improve power sensi-
tivity concept), if the input metrics do not match based on
their characteristics. In the second one, Monte Carlo zero
delay simulation
7
was performed with different sequences
of their signal statistics to evaluated the quality of the
power function P
IP_avg
. At the end we get the power results.
In this section, we continue our previous work and
present the application of the statistical power estimation
method for IP-based system. In our preliminary work,
the approach intends to reduce the intensive amount of
simulations at a higher abstraction level. We use the same
IP blocks presented in Refs. [21, 22, 28] and their macro-
model information for our IP-based system. Now, instead
of simulating every IP block, we applied the Monte Carlo
zero delay simulation to the entire test IP-based system.
These macro-blocks are connected together to construct
the test IP system as shown in Figure 3.
The application of the power macro-modelling on each
IP block requires knowledge of the input signal statistics
among these blocks. To obtain this information, different
functional simulations need to be performed with differ-
ent input statistical values of each IP macro-block. For
example in Figure 3, the inputs of the block IP-A1 are the
inputs of the test IP system, while the outputs of IP-A1
are the inputs of IP-A2 and IP-S1 IP block can be used
as input signal statistics of the reference and so on. The
IP-A1
IP-B1
IP-S1
IP-A2
IP-A3
IP-B2
IP-B3
IP-B4
Fig. 3. Test IP-based system.
output signal statistical information for each IP block can
be used as input signal statistics of the reference connected
IP macro-block. For IP-A1 block, we generate random
input vectors of 25 different values using input metrics P
in
,
D
in
, S
in
, T
in
. Then to construct the LUT, the test IP system
is simulated 25 times and for each IP block, 25 different
values of input metrics are measured using functional sim-
ulations. The average power dissipation P
system
is extracted
using (15).
P
system
=
n
i=1
P
IPi_avg
(15)
We compare the estimated power P
system
in (15) with the
simulated power estimation to evaluate the accuracy of the
power macro-model function in (5). The reference values
of the circuits power dissipation are obtained using time
delays from the Synopsys PowerCompiler.
Table II. Accuracy of power estimation.
Test IP system Average error (%)
Set-1 35.00
Set-2 24.71
Set-3 40.22
Set-4 43.46
Set-5 4.42
Set-6 9.19
Set-7 46.81
Set-8 12.43
Set-9 17.08
Set-10 22.16
Set-11 33.20
Set-12 39.77
Set-13 19.95
Set-14 22.96
Set-15 13.45
Set-16 22.01
Set-17 33.28
Set-18 3.00
Set-19 29.65
Set-20 19.18
Set-21 35.09
Set-22 30.56
Set-23 26.49
Set-24 13.01
Set-25 18.37
6 J. Low Power Electronics 3, 19, 2007
Durrani and Riesgo Architectural Power Analysis for Intellectual Property-Based Digital System
4. EXPERIMENTAL RESULTS
In this section, we show the results of our LUT based
power macro-modelling approach. We have implemented
this approach and built the power macro-model at the
RTL. The accuracy of the proposed model is evaluated for
our test IP-based system. To do this, we generate random
input vectors for different values of P
in
, D
in
, S
in
, T
in
. The
input chosen sequences are highly correlated and they are
generated by our new method. The power is estimated
using Monte Carlo zero delay simulation technique. The
power values extracted by LUT are compared to those
obtained from simulations, and the average error is com-
puted. The experimental results show that the randomly
generated sequences have relatively accurate statistics and
highly convergence. For the input metrics, P
in
, D
in
, S
in
, T
in
0
5
10
15
20
25
30
35
1 5 9 13 17 21 25
Sets
P
o
w
e
r
(
m
W
)
Estimated power
Simulated power
Fig. 4. Power comparison between macro-model and reference simulated power. Dotted circles indicate larger error spots for metric values between
[0, 0.2] or [0.8, 1].
200 400 600 800 1000 1200 1400 1600 1800 2000
8
8.5
9
9.5
10
10.5
11
11.5
12
12.5
Interval length (clock cycle)
P
o
w
e
r
(
m
W
)
Steady state
Warm-up length
Average power values
Fig. 5. Power changes with respect to sequence length for test IP-based block.
the value range is between [0, 1]. Several sequences with
8, 16, 32 bits wide are generated. The sequence length is
2000 vectors for the entire test system.
In Table II, we illustrate the set number of the input vec-
tors and the average relative errors of the estimate values
obtained with our macro-model. Reference values for the
circuits power dissipation are obtained using time delays
from the Synopsys PowerCompiler. It is evident from this
table that the function is more accurate estimating the aver-
age power in some cases than others. The given input met-
rics values are more accurate for the specify range between
[0.2, 0.8] and less accurate between [0, 0.2] and [0.8, 1].
One important source of error comes from do not con-
sider on the macro-model, the power consumption of inter-
connects among different IP macro-blocks, and also other
factors like glitch activities. For an individual IP block,
J. Low Power Electronics 3, 19, 2007 7
Architectural Power Analysis for Intellectual Property-Based Digital System Durrani and Riesgo
we measured just 12% error in Refs. [21, 22, 28]. But
for the entire IP-based system with interconnects the error
increases 2030%. This error can be reduced by differ-
ent techniques that improves the data-path of interconnects
among IP macro-blocks. In our experiments, the average
error is 26.15% and the maximum worst-case error is no
more than 46.81%.
The results demonstrate that the transition density D
in
is
very effective to estimate power dissipation and relatively
linear to the power measures. The correlation metrics S
in
and T
in
do not affect signicantly the power dissipation
in some IP blocks and are less sensitive than the transi-
tion density. We have noticed that the number of inputs do
not inuence the output metrics for some IP macro-blocks,
whereas for some blocks are vice versa. Regression anal-
ysis is performed to t the models coefcients. Figure 4,
illustrates the correlation between the simulated power
estimation and the estimated power values. For test IP sys-
tem, we measured a quite good correlation coefcient that
is around 96%. Dotted circles in Figure 4, indicates those
spots where the error is much larger and convergence coef-
cient decreases, especially when the given input metrics
values is between [0, 0.2] or [0.8, 1].
The minimum simulations length can be determined
through convergence analysis. Converging on the average
power gure help us to identify the minimum length nec-
essary for each simulation, by considering when the power
consumption gets close to a steady value. The sequences
generated by our GA have high convergence and unifor-
mity. Figure 5 plots the variation of the power value with
the trial interval length. The gure shows that the interval
length is 2000 for the IP system. The warm-up length is
about 600 while the vertical line represents the steady state
value at 1200.
5. CONCLUSION
Power is a strongly pattern dependent function. Input
statistics greatly inuence on average power. We solve the
pattern dependence problem for IP designs. We analyzed
the application of linear and non parametric regression for
the automatic construction of RTL power macro-models.
In this way we generate macro-models that approximately
take into account not only the transition activity at the I/Os,
but also the input arrival times and the spatio-temporal
correlation of the data.
We have presented a new power macro-modelling tech-
nique for high-level power estimation applied on a test
IP-based system using different IP macro-blocks. In our
preliminary work, for an individual IP blocks, we mea-
sured just 12% error. But for an entire IP-based sys-
tem with interconnects between those blocks, the error is
2030%. This is because the macro-model should con-
sider the power consumption of interconnects among dif-
ferent IP macro-blocks and other factors like glitches.
We demonstrated relatively better accuracy in some cases
than in others. Our model showed an average error of
26.15% and a correlation coefcient of 96%. We found
that considering output metrics in macro-model can only
improves 25% accuracy. Currently, we are evaluating our
macro-model on other test IP-based systems to improve its
accuracy.
References
1. International Technology Roadmap for Semiconductors, SEMAT-
ECH, 3101 Industrial Terrace Suite106, Austin, TX 78758 (2001).
2. X. Liu and M. Papaefthymiou, A static power estimation methodol-
ogy for IP-based design. Proceedings IEEE Conference on Design,
Automation, and Test, Europe (2001).
3. R. Ronen, A. Mendelson, K. Lai, S.-L. Lu, F. Pollack, and J. P. Shen,
Coming challenges in microarchitecture and architecture. Proceed-
ings of the IEEE 89, 325 (2001).
4. V. De and S. Borkar, Technology and challenges for low power and
high performance. Proceeding of the International Symposium on
Low Power Electronics and Design (1999), pp. 163168.
5. P. Landman and J. M. Rabaey, Activity-sensitive architectural power
analysis. IEEE Trans. Computer-Aided Design Integr. Circuits Syst.
15, 571 (1996).
6. A. A. Ghose, S. Devdas, K. Keutzer, and J. White, Estimation of
average switching activity in combinational and sequential circuits.
Proceedings of the 29th Design Automation Conference, June (1992),
pp. 253259.
7. F. N. Najm, R. Burch, P. Yang, and I. N. Hajj, Probabilistic
simulation for reliability analysis of CMOS circuits. IEEE Trans.
Computer-Aided Design Integr. Circuits Syst. 9, 439 (1990).
8. R. Marculescu, D. Marculescu, and M. Pedram, Logic level power
estimation considering spatiotemporal correlations. Proceedings of
the IEEE International Conference on Computer Aided Design,
November (1994), pp. 224228.
9. G. Y. Yacoub and W. H. Ku, An accurate simulation technique for
short-circuit power dissipation. Proceedings of International Sympo-
sium on Circuits and Systems (1989), pp. 11571161.
10. C. M. Huizer, Power dissipation analysis of CMOS VLSI circuits
by means of switch-level simulation. IEEE European Solid State
Circuits Conf. (1990), pp. 6164.
11. C. Deng, Power analysis for CMOS/BiCMOS circuits. Proceedings
of International Workshop on Low Power Design, April (1994),
pp. 38.
12. R. Burch, F. N. Najm, P. Yang, and T. Trick, A Monte Carlo
approach for power estimation. IEEE Transactions on VLSI Systems
1, 63 (1993).
13. A. A. Ismaeel and M. A. Breuer, The probability of error detection in
sequential circuits using random test vectors. Journal of Electronic
Testing 1, 245 (1991).
14. S. Gupta and F. N. Najm, Power macromodeling for high level power
estimation. Proceeding 34th Design Automation Conference, June
(1997).
15. S. Gupta and F. N. Najm, Analytical model for high level power
modelling of combinational and sequential circuits. Proceeding IEEE
Alessandro Volta Workshop on Low Power Design, March (1999).
16. Z. Chen, K. Roy, and T. L. Chou, Power sensitivityA new method
to estimate power dissipation considering uncertain specications
of primary inputs. Proceeding IEEE International Conference on
Computer Aided Design, November (1997).
17. Z. Chen and K. Roy, A power macromodeling technique based on
power sensitivity. Proceeding 35th Design Automation Conference,
June (1998).
18. S. Gupta and F. N. Najm, Power macromodeling for high level power
estimation. Proceeding IEEE Transactions on VLSI (1999).
8 J. Low Power Electronics 3, 19, 2007
Durrani and Riesgo Architectural Power Analysis for Intellectual Property-Based Digital System
19. X. Liu and M. C. Papaefthymiou, Incorporation of input glitches into
power macromodeling. Proceeding IEEE Inter. Symp. on Circuits
and Systems, May (2002).
20. X. Liu and M. C. Papaefthymiou, HyPE: Hybrid power estimation
for IP-based systems-on-chip. Proceedings for IEEE Trans. on CAD
of Integrated Circuits and Systems 24, 1089 (2005).
21. Y. A. Durrani and T. Riesgo, Statistical power estimation for IP-
based design. Proceedings for IEEE Conference on Industrial Elec-
tronics Society, November (2006), pp. 49354939.
22. Y. A. Durrani and T. Riesgo, Power macromodeling for IP mod-
ules. Proceedings for IEEE International Conference on Electronics,
Circuits and Systems, December (2006), pp. 11721175.
23. C.-S. Ding, Q. W, C.-T. Hsieh, and M. Pedram, Statistical estima-
tion of the cumulative distribution function for power dissipation in
VLSI circuits. Proceeding 34th Design Automation Conference, June
(1997).
24. Y. A. Durrani, T. Riesgo, and F. Machado, Power estimation for
register transfer level by genetic algorithm. Proceedings for Inter-
national Conference on Informatics in Control Automation and
Robotics, August (2006), pp. 527530.
25. Y. A. Durrani, T. Riesgo, and F. Machado, Statistical power estima-
tion for register transfer level. Proceedings for International Con-
ference for Mixed Design of Integrated Circuits and Systems, June
(2006), pp. 522527.
26. M. Barocci, L. Benini, A. Bogliolo, B. Ricco, and G. De Micheli,
Lookup table power macro-models for behavioural library compo-
nents. Proceeding IEEE Alessandro Volta Workshop on Low Power
Design, March (1999).
27. G. Bernacchia and M. C. Papaefthymiou, Analytical macromodel-
ing for high-level power estimation. Proceedings for IEEE Interna-
tional Conference on Computer Aided Design, November (1999),
pp. 280283.
28. Y. A. Durrani, A. Abril, and T. Riesgo, Efcient power macro-
modeling technique for IP-based digital system. Proceedings for
IEEE International Symposium on Circuits & Systems, May
(2007).
29. A. Dragone, R. Zafalon, C. Guardiani, and C. Silvano, Power invari-
ant vector compaction based on bit clustering and temporal par-
titioning. Proceeding for International Symposium on Low Power
Electronics and Design (1998).
Yaseer A. Durrani
Yaseer A. Durrani received B.S. degree in Electrical and Electronic Engineering from Eastern Mediterranean University, North Cyprus,
Turkey and M.S. degree in Microelectronic Engineering from Royal Institute of Technology, Sweden on 1999 and 2002, respectively.
Recently he nished his Ph.D. research in Microelectronic Engineering from Universidad Politcnica de Madrid, Spain. Currently
he is working as a Researcher at Ryerson University, Canada. His research interests include low power consumption for embedded
systems, SoC design and computer architecture.
Teresa Riesgo
Teresa Riesgo is Full Professor of Electronics at Universidad Politcnica de Madrid, Spain. She got an Electrical Engineering degree
and a Ph.D. at the same University on 1990 and 1996, respectively. She is now heading the Industrial Electronics Research Centre at
UPM (CEI-UPM), which does research in power systems, digital embedded systems and power quality. Her research interests include
power estimation and modelling, wireless sensor networks and recongurable hardware.
J. Low Power Electronics 3, 19, 2007 9