15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Signal Probability Calculation<br />

In calculating the signal probability, we first need to determine if the input signals (random variables)<br />

are independent. If two signals are correlated, they may never be in logic high together, or they may<br />

never be switching at the same time. Due to the complexities of the signals flow, it is not easy to determine<br />

if two signals are independent. The primary inputs may be correlated due to the feedback loop. The<br />

internal nodes of the circuit may be correlated due to the reconvergent fanouts, even if the primary inputs<br />

are assumed to be independent. The reconvergent fanouts occur when the output of a node splits into<br />

two or more signals that eventually recombine as inputs to certain nodes downstream. The exact calculation<br />

of the signal probability has been shown to be NP-hard [3].<br />

The probabilistic method in estimating power consumption uses signal probability measure to accurately<br />

estimate signal activity. Therefore, it is important to accurately calculate signal probability as the<br />

accuracy of subsequent steps in computing activity depends on how accurate the signal probability<br />

calculation is. In implementing the probabilistic method, we adopted the general algorithm proposed<br />

in [4] and used the data structure similar to [5].<br />

The algorithm used to compute the signal probability is given as follows:<br />

• Inputs: Circuit network and signal probabilities of the primary inputs.<br />

• Output: Signal probabilities of all nodes in the circuit.<br />

• Step1: Initialize the circuit network by assigning a unique variable, which corresponds to the signal<br />

probability, to each node in the circuit network.<br />

• Step 2: Starting from the primary inputs and proceeding to the primary outputs, compute the<br />

symbolic probability expression for each node as a function of its inputs expressions.<br />

• Step 3: Suppress all exponents in the expression to take the spatial signal correlation into account [4].<br />

Example<br />

Given y = ab + ac. Find signal probability P(y).<br />

Activity Calculation<br />

The formulation to determine an exact expression to calculate activity of static combinational circuits<br />

has been proposed in [6]. The formulation considers spatio-temporal correlations into account and is<br />

adopted in our method. If a clock cycle is selected at random, then the probability of having a transition<br />

at the leading edge of this clock cycle at node y is A(y)/f, where A(y) is the number of transition per<br />

second at node y, and f is the clock frequency. This normalized probability value, A(y)/f, is denoted as<br />

a(y). The exact calculation of the activity uses the concept of Boolean difference. In the following sections,<br />

the Boolean difference is first introduced before applying it in the exact calculation of the activity of a<br />

node.<br />

Boolean Difference<br />

The Boolean difference of y with respect to x is defined as follows:<br />

The Boolean difference can be generalized to n variables as follows:<br />

© 2002 by CRC Press LLC<br />

P( y)<br />

= P( ab)<br />

+ P( ac)<br />

+ P( abac)<br />

P( a)P(<br />

b)<br />

P( a)P(<br />

c)<br />

P 2 = + – ( a)P(<br />

b)P(<br />

c)<br />

= P( a)P(<br />

b)<br />

+ P( a)P(<br />

c)<br />

– P( a)P(<br />

b)P(<br />

c)<br />

∂ n<br />

---------------------- y =<br />

b1 ∂x …bn 1…∂x n<br />

∂y<br />

----- = y ⊕ y<br />

∂x x=1 x=0<br />

y ( x1 = b1)…x=bn ⊕<br />

y ( x1 = b )…x<br />

1 i =bn

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!