Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
157 views48 pages

Lecture 3 Power Estimation

ELEN601: Intro to Low Power Design why do we need to estimate power? individual power estimates determine overall system specifications Does the overall system meet power requirements? Spice is a transistor level simulator for analyzing the circuit behavior.

Uploaded by

amarcbo
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
157 views48 pages

Lecture 3 Power Estimation

ELEN601: Intro to Low Power Design why do we need to estimate power? individual power estimates determine overall system specifications Does the overall system meet power requirements? Spice is a transistor level simulator for analyzing the circuit behavior.

Uploaded by

amarcbo
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 48

Dr. Tezaswi Raja traja1@scu.

edu Apr 2012

Gate Source Drain

Leakage
Gate Drain overlap

p
IGIDL

Large electric field exists on the gate-drain overlap region Minority carriers are injected into the substrate causing GIDL GIDL can be decreased by increasing Gate Oxide thickness

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

Why do we need to estimate Power? Transistor level power estimation techniques

Spice based power estimation Vector based power estimation Probabilistic power estimation

Gate level power estimation techniques


Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

3.2W
7.1W 0.1W

2W

Accurate System Specifications


Individual power estimates determine overall system specifications Does the overall system meet power requirements?
ELEN601: Intro to Low Power Design 4

Dr. Tezaswi Raja

Design Optimization Space

Optimization Trade-offs

Accurate power will determine the various design choices.


ELEN601: Intro to Low Power Design 5

Dr. Tezaswi Raja

Reliability and Thermal design

Accurate power will determine the package, board and thermal envelope design.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

System Level
Architecture Level

Least

Least

Simulation Time

Gate Level Transistor Level

Physical Level
Dr. Tezaswi Raja

Highest
ELEN601: Intro to Low Power Design

Highest
7

Accuracy

Why do we need to estimate Power? Transistor level power estimation techniques

Spice based power estimation Vector based power estimation Probabilistic power estimation

Gate level power estimation techniques


Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

Transistor Models from Foundry Circuit Netlist Simulation conditions Spice Engine
Time based nodal voltages Waveforms Measurements

Spice is a transistor level simulator for analyzing the circuit behavior. Golden industry standard for accurate modeling of transistor behavior. Circuit is modeled as a network of resistors, capacitors and Inductors. Voltage at each node is recursively solved for using Kirchoffs voltage laws and matrix reduction.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

Vdd

Vdd

+
Vdummy = 0

Circuit Under Test

Circuit Under Test

Vss

Vss

.MEAS TRAN POWER AVG I(Vdummy)


Power for any path can be measured in Spice using a dummy voltage source. Spice measurements are very accurate. Spice measurements are very expensive in terms of computing resources and time. Fast-Spice simulators exist but also have capacity limitations. How do we estimate power for large circuits? Hierarchically!!
ELEN601: Intro to Low Power Design 10

Dr. Tezaswi Raja

Simulation Conditions Spice Based Analysis of each gate Characterization Gate Level Netlist (.v) Power Consumed Gate Models (.lib)
Event Driven Simulator

Power is measured for each gate at different input conditions using Spice Each gate is represented by a model in the power analysis tool.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

11

Characterization
Find Pint tables for each gate in library Find Pleak tables for each gate in library Find Delay tables for each gate in library

Pre-simulation
Find CL for each gate(and node) in the circuit Find delay for each gate in circuit Find delay of each wire in circuit(Elmore delay model)

Event Driven Simulation


Given a set of input vectors, find time discrete events at each node in circuit Compute the total transitions at each node in circuit. Compute Pdyn at each gate

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

12

Characterization is the process of creating timing and power models for each gate in the library. Gate model(.lib) for a gate contains:

Input capacitance of each input Gate delay vs Input transition vs Output load Output slew vs Input transition vs Output load Internal switching power Input transition vs Output load Leakage per each input combination of the gate

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

13

Delay vs Input Slew and Output Load (for each input) Input Slew/CL 0.01ns 0.1ns 0.1 fF 10ps 14ps 0.5fF 15ps 20ps 1.0fF 20ps 24ps 3.0fF 40ps 48ps

0.5ns
Dr. Tezaswi Raja

18ps

24ps

28ps

56ps
14

ELEN601: Intro to Low Power Design

Input Power vs Input Slew and Output Load (for each input) Input Slew/CL 0.01ns 0.1ns 0.5ns 0.1 fF 10pJ 14pJ 18pJ 0.5fF 15pJ 20pJ 24pJ 1.0fF 20pJ 24pJ 28pJ 3.0fF 40pJ 48pJ 56pJ

Leakage Power for each input combination Case A=0, B=0 A=0, B=1 A=1, B=0 Leakage 1.0pA 1.4pA 1.8pA

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

15

Characterization
Find Pint tables for each gate in library Find Pleak tables for each gate in library Find Delay tables for each gate in library

Pre-simulation
Find CL for each gate(and node) in the circuit Find delay for each gate in circuit Find delay of each wire in circuit(Elmore delay model)

Event Driven Simulation


Given a set of input vectors, find time discrete events at each node in circuit Compute the total transitions at each node in circuit. Compute Pdyn at each gate

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

16

Internal switching nodes not seen by logic simulator

G2

G1

G3

Copyright Agrawal, 2007

Circuit partitioned into channel-connected components for Spice characterization. Usually one CCC is one logic gate. Internal nodes of a CCC are not needed for logic computation.
R. E. Bryant, A Switch-Level Model and Simulator for MOS Digital Systems, IEEE Trans. Computers, vol. C-33, no. 2, pp. 160-177, Feb. 1984.
17

Input capacitance Cin of each gate is read from gate models. Wire capacitance Cw can be estimated using

wire-load models(inaccurate) or extracted from layout(accurate)

CL = Cin +CW

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

18

For each gate in the circuit:

Given the load capacitance CL read gate delay from gate models.

Note that the exact CL may not be present in the models. Extrapolation introduces inaccuracy in the delay estimation. Wider ranges for CL are recommended for accurate estimates. How about wire delay?
ELEN601: Intro to Low Power Design 19

Dr. Tezaswi Raja

For all caps in circuit, trace back to input and find all common resistors to delay path.
N Delay at node k = 0.69 Cj Rjk j=1 where N = number of capacitive nodes in the network

W. Elmore, The Transient Response of Damped Linear Networks with Particular Regard to Wideband Amplifiers, J. Appl. Phys., vol. 19, no.1, pp. 55-63, Jan. 1948.

20

2 R2 C2 s R1 C1 1 4

R4
C4 R3 3 C3 5 C5
Example: Delay at node 5 = 0.69[R1 C1 + R1 C2 + (R1+R3)C3 + (R1+R3)C4 + (R1+R3+R5)C5]
Copyright Agrawal, 2007

R5

21

Characterization
Find Pint tables for each gate in library Find Pleak tables for each gate in library Find Delay tables for each gate in library

Pre-simulation
Find CL for each gate(and node) in the circuit Find delay for each gate in circuit Find delay of each wire in circuit(Elmore delay model)

Event Driven Simulation


Given a set of input vectors, find time discrete events at each node in circuit Compute the total transitions at each node in circuit. Compute Pdyn at each gate

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

22

a Inputs b Output c (Spice) Logic simulation c (zero delay)

Trigger Event

Transient region

Result event

c (unit delay)
c (multiple delay) 0

X X 3

Result event
Result event

Time units

Spice response of a NAND gate can be modeled as a switching event.


23

Activity Scheduled List events a =1 c =10 2 d=0 b =1 e =1

2
2 f =0 Time stack g =1

t=0 1 2 3 4 5 6 7 8

c=0 d = 1, e = 0 g=0 f=1 g=1


Copyright Agrawal, 2007

d, e g f

Time, t
24

Current time pointer

max

t=0
1 2 3 4 5 6 7
Copyright Agrawal, 2007

Event link-list

25

Input Vectors

Event Driven Simulator

Toggle Counts at each node

Pdyn = Ck V2 f
all nodes k

Where:

Ck is the total node capacitance being switched, as determined by the simulator. V is the supply voltage. f is the clock frequency, i.e., the number of vectors applied per unit time

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

26

Input Vectors

Event Driven Simulator

Internal Events at each gate

Pint =

events e

gates g

E(g,e) f(g,e)

Where:

E(g,e) = energy of event e of gate g, pre-computed short-circuit power from Spice. f(g,e) = occurrence frequency of the event e at gate g, observed by logic simulation.
ELEN601: Intro to Low Power Design 27

Dr. Tezaswi Raja

Input Vectors

Event Driven Simulator

Internal Vector states at each gate

Pstat =
gates g

states s

P(g,s) T(g,s)/T

Where:

P(g,s) = static power dissipation of gate g for states, obtained from Spice. T(g,s) = duration of states at gate g, obtained from logic simulation. T = number of vectors vector period.
ELEN601: Intro to Low Power Design 28

Dr. Tezaswi Raja

Total Power = Pdyn + Pint + Pstat

A. Deng, Power Analysis for CMOS/BiCMOS Circuits, Proc. International Workshop Low Power Design, 1994. J. Benkoski, A. C. Deng, C. X. Huang, S. Napper and J. Tuan, Simulation Algorithms, Power Estimation and Diagnostics in PowerMill, Proc. PATMOS, 1995. C. X. Huang, B. Zhang, A. C. Deng and B. Swirski, The Design and Implementation of PowerMill, Proc. International Symp. Low Power Design, 1995, pp. 105-109.
Dr. Tezaswi Raja ELEN601: Intro to Low Power Design 29

Computationally expensive for large circuits Results are very dependent on input vector set.

How can we estimate power without vectors? Probabilistic Analysis

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

30

Signal Probabilities

Every signal is modeled as a set of probabilities. P1(x) : Probability of a signal x being 1 P0(x) : Probability of a signal x being 0

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

31

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

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

32

p1 p1 p2

p2
p1

1 (1 - p1)(1 - p2)
p2 1 - p1

p1

33

x1

0.5

x1 x2 0.5
0.5 X3 0 1 0 1 0 1 0 1 Y 1 0 1 0 1 0 1 1 y = 1 - (1 - x1x2) x3 = 1 - x3 + x1x2x3 = 0.625 = 5/8 (from truth table)
Ref: K. P. Parker and E. J. McCluskey, Probabilistic Treatment of General Combinational Networks, IEEE Trans. on Computers, vol. C-24, no. 6, pp. 668670, June 1975.

0.25

x2 x3 X1 0 0 0 0 1 1 1 1 X2 0 0 1 1 0 0 1 1

0.625

34

x1

0.5
x1 x2 0.5 0.25 0.625

x2 y = 1 - (1 - x1x2) x2 = 1 x2 + x1x2x2 = 0.625


=0.75

X1 0 0 1 1

X2 0 1 0 1

Y 1 0 1 1

Why the difference?


35

x1

0.5
x1 x2 0.5 0.25 0.625?

x2 y = 1 - (1 - x1x2) x2 = 1 x2 + x1x2x2 = 1 x2 + x1x2 = 0.75 (correct value)

X1 0 0 1 1

X2 0 1 0 1

Y 1 0 1 1

Signal Probability propagation is dependent on input correlation Inputs are correlated in circuits with reconvergent fanout
36

Identify reconvergent fanout nodes in the circuit For these nodes, calculate probabilities with full expansion of terms Remove any exponents of variables

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

37

x1

0.5 0.5

x1 + x2 x1x2 0.75 0.375?

x2

X1 0 0 1 1

X2 0 1 0 1

Y 0 1 0 1

y = (x1 + x2 x1x2) x2 = x1x2 + x2x2 x1x2x2 = x1x2 + x2 x1x2 = x2 = 0.5 (correct value)

38

Transition Probabilities

Transition probability is defined as the probability of a transition happening on x. P01(x) is defined as the probability of x going from 0 to 1. Is this true? P(0->1) = p1(x)*p0(x)

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

39

p0 = 0.5 p1 = 0.5 1/fck p0 = 0.5 p1 = 0.5

P01 = 2/8 P01 = p0 * p1

P01 = 3/8

p0 = 0.5 p1 = 0.5

P01 = 1/8

P(0->1) = p1(x)*p0(x) is not always correct! How do we combine signal and transition probabilities?
Dr. Tezaswi Raja ELEN601: Intro to Low Power Design 40

p00
p0

p01
p1

p11

p10

p1 = p1 * p11 + (1-p1) * p01

p1

p01 p10 + p01

What has this got to do with Power?


Dr. Tezaswi Raja ELEN601: Intro to Low Power Design 41

Pdyn = f * CL V2 = T(x) * CL V2

Transition density T(x) is defined as number of transitions per unit time. If we know the transition density of a signal, we can calculate its power.
F. Najm, Transition Density: A New Measure of Activity in Digital Circuits, IEEE Trans. CAD, vol. 12, pp. 310-323, Feb. 1993.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

42

p00 No Power

Power consumed p01


p0

p11 No Power
p1

p10 Power consumed

Transition Density

= p1 * p10 + p0 * p01 = 2 * p01 * p10 p10 + p01

Transition Density = 2 * p0 *p01 = 2 * p1 * p10

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

43

p1, T1 p1 * T2 + p2 * T1

p2, T2
p1, T1 (1 - p1)* T2 + (1 - p2) *T1 p2, T2 T1

p1, T1

44

Pdyn = f * CL V2 = T(x) * CL V2

Transition density at each node can be determined by:


Signal probability at each node Transition density at each node

Stages for estimating Power


Assign Signal Probability at primary inputs Assign Transition Density at primary inputs Propagate Signal Probabilities to all nets in circuit Propagate Transition Density to all nets in circuit Calculate Power consumed at each net in the circuit.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

45

Signal probability X1

0.2, 1
0.3, 2 0.4, 3

0.06 , 0.7 Ci Y 0.436 , 3.24 CY

X2 X3

Transition density

Power = 0.5 V 2 (0.7Ci + 3.24CY)

Stages for estimating Power

Assign Signal Probability at primary inputs Assign Transition Density at primary inputs Propagate Signal Probabilities to all nets in circuit Propagate Transition Density to all nets in circuit Calculate Power consumed at each net in the circuit.
46

Split reconvergent portion into super-gates For each super-gate, expand the terms using Shannons expansion theorem Obtain Transition density using Boolean difference.

C. E. Shannon, A Symbolic Analysis of Relay and Switching Circuits, Trans. AIEE, vol. 57, pp. 713-723, 1938. 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. F. Najm, Transition Density: A New Measure of Activity in Digital Circuits, IEEE Trans. CAD, vol. 12, pp. 310-323, Feb. 1993.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

47

Power estimation in Spice is accurate but expensive Gate level power estimation can be done hierarchically to improve performance. Vector based simulators are used to estimate logic activity Probabilistic estimation of power can be used for quick vector-less power estimate.

Dr. Tezaswi Raja

ELEN601: Intro to Low Power Design

48

You might also like