Sie sind auf Seite 1von 73

ECE260B CSE241A

Winter 2005
Power Consumption

Website: http:/ / vlsicad.ucsd.edu/ courses/ ece260bw05

ECE 260B CSE 241A Power Consumption 1

http:/ / vlsicad.ucsd.edu

VLSI Design Metrics

Area / cost
Performance
Power consumption
Reliability

Manufacturing yield

Signal integrity (e.g., crosstalk, supply voltage drop, etc.)

Logic correctness / acceptable performance variation under


process, operating condition variations

Expected lifetime (due to eletromigration, soft-error, peak current,


etc.)

ECE 260B CSE 241A Power Consumption 2

Figure courtesy, D. Singh

http:/ / vlsicad.ucsd.edu

Power Dissipation
Lead Microprocessors power continues to increase

Power (Watts)

100
P6
Pentium proc
10
8086 286
1

8008
4004

486
386

8085
8080

0.1
1971

1974

1978

1985

1992

2000

Year

Power delivery and dissipation will be prohibitive(?)


ECE 260B CSE 241A Power Consumption 3

Courtesy, Intel

http:/ / vlsicad.ucsd.edu

Power Density

Power Density (W/ cm2)

10000

Rocket
Nozzle

1000

Nuclear
Reactor

100
8086

10 4004
Hot Plate
P6
8008 8085
Pentium proc
386
286
486
8080
1
1970

1980

1990
Year

2000

2010

Power density too high to keep junctions at low temp(?)


ECE 260B CSE 241A Power Consumption 4

Courtesy, Intel

http:/ / vlsicad.ucsd.edu

Low Power Design Drivers

Consumer products

Affects expected battery lifetime

Slow development of battery technology (90-110 Watt-hrs/ Kg)

Low power reducing energy consumption

High performance designs

Increasingly expensive packaging and cooling strategies


- Size, weight, heat sinks,
- Air, liquid cooling mechanism

Supply voltage drop

Temperature
- Every 10OC increase in operating temperature roughly doubles a
components failure rate

Low power reducing peak power consumption for less


thermal effects, better signal integrity and reliability
- Signal integrity / logic correctness / acceptable performance
variation / design lifetime

ECE 260B CSE 241A Power Consumption 5

http:/ / vlsicad.ucsd.edu

Low Power Design Metrics

Energy efficiency in Joules

Energy = power * delay (Joules = Watts * seconds)

Affects battery lifetime

Average power consumption in Watts

Results in thermal effects

Sets packaging limits (50W / cm2 ? 120W total ?) ($1/ Watt ?)

Worst case supply current

Simultaneous transistor switching

Supply voltage drop performance degradation

Maximum device current device lifetime

Electromigration wire lifetime

ECE 260B CSE 241A Power Consumption 6

http:/ / vlsicad.ucsd.edu

Power Versus Energy


Power is height of curve
Watts

Lower power design could simply be slower


Approach 1
Approach 2
time
Energy is area under curve

Watts

Two approaches require the same energy


Approach 1
Approach 2
time

ECE 260B CSE 241A Power Consumption 7

Slide courtesy of Mary Jane Irwin, PSU

http:/ / vlsicad.ucsd.edu

Low Power Design Objectives

Worst case supply current


Average power P = I V

Maximum cycle power

Maximum N-cycle power

Maximum sustainable power

Energy E = P dt
Energy-delay products

Simultaneous power reduction and performance optimization

Usually to reduce average power under timing constraints


ECE 260B CSE 241A Power Consumption 8

http:/ / vlsicad.ucsd.edu

Outline

Problem statement
Power dissipation components
Power estimation
Optimization techniques

ECE 260B CSE 241A Power Consumption 9

http:/ / vlsicad.ucsd.edu

Static CMOS Gate Power


Power dissipation in static CMOS gate: 3 components

Dynamic capacitive (switching, useful) power

Still dominant component in current technology

Charging and discharging the capacitor

Crowbar current (short-circuit power)

During a transition, current flows through both P and N


transistors simultaneously for a SHORT period of time

Slow transitions worsen short-circuit power

Leakage (useless power) current

Even when a device is nominally OFF (VGS=0), a small amount of


current is still flowing

With many devices, can add up to hundreds of mW


Slide courtesy of Mary Jane Irwin, PSU

ECE 260B CSE 241A Power Consumption 10

http:/ / vlsicad.ucsd.edu

Reducing Dynamic Capacitive (Switching) Power


Capacitance:
Function of fan-out,
wire length, transistor
sizes

Supply Voltage:
Has been dropping
with successive
generations

Pdyn = CL VDD2 P01 f

Activity factor:
How often, on average,
do wires switch?

Slide courtesy of Mary Jane Irwin, PSU

ECE 260B CSE 241A Power Consumption 11

Clock frequency:
Increasing

http:/ / vlsicad.ucsd.edu

Crowbar (Short-Circuit) Current

Finite slope of the input

signal causes a direct


current path between VDD
and GND for a short period
of time during switching
when both the NMOS and
PMOS transistors are
conducting

When VTN < VIN < VDD+VTP

Transition

time
RP

Both transistors are ON


Current flowing directly from
VDD to VGND is crowbar current

Usually not a problem, e.g.,

CL
RN

P is ON strongly (LIN but with


small VDS if at all)
N is barely ON

ECE 260B CSE 241A Power Consumption 12

Slide courtesy of Ken Yang, UCLA

http:/ / vlsicad.ucsd.edu

Leakage (Inactive, Useless) Power

Three sources of leakage


The dominant is the Source-to-Drain leakage current

Even when VGS = 0, a small amount of charge is still present


under the gate

Exponentially related to the gate (and S/ D) voltage

I D

W
exp q V GS V T /nkT
L

Source/Drain are junctions and some amount of reverse


bias, IS is present

Typically much smaller than S/ D leakage

Gate tunneling leakage

When t ox is only 5-10atoms, easy for tunneling current to flow

More of an issue sub 0.10-m technology

ECE 260B CSE 241A Power Consumption 13

Slide courtesy of Ken Yang, UCLA

http:/ / vlsicad.ucsd.edu

2001 ITRS Projections of 1/ and Isd,leak for HP, LP Logic


1.E+01

Isd,leakHigh
Perf.

1.E+00
1/
High Perf.

1.E-01
1.E-02

1000
`

1/
Low Pwr
Isd,leakLow
pwr

100
2001 2003 2005 2007 2009 2011 2013 2015

1.E-03
1.E-04

I sd,leak (A/m)

1/ (GHz)

10000

1.E-05
1.E-06

Year
ECE 260B CSE 241A Power Consumption 14

http:/ / vlsicad.ucsd.edu

Projections for Low Power Gate Leakage


Simulated Igate , oxy-nitride

1.00

10000

0.90

1000

0.80

Tox

0.70

100

0.60

10

0.50
1
0.1
0.01

0.30
0.20

Oxy-nitride no longer
adequate: high K
needed

0.001
0.0001
2001

0.40

Igate spec.
from ITRS

2002

2003

2004

2005

2006

2007

2010

T ox (normalized)

Jgate (normalized)

100000

0.10
0.00
2013

2016

Year
Need for high K driven by Low Power, not High Performance
ECE 260B CSE 241A Power Consumption 15

http:/ / vlsicad.ucsd.edu

Summary: Power and Energy Equations


E = CL VDD2 P01 + t sc VDD Ipeak P01 + VDD Ileakage
f 01 = P01 * f clock

P = CL VDD2 f 01 + t scVDD Ipeak f01 + VDD Ileakage

Dynamic power
(~
90% today and
decreasing
relatively)

Short-circuit
power
(~
8% today and
decreasing
absolutely)

Leakage power
(~
2% today and
increasing
relatively)

Designers need to comprehend issues of memory and logic power,


speed/ power tradeoffs at the process (HiPerf vs. LowPower) level,
Slide courtesy of Mary Jane Irwin, PSU

ECE 260B CSE 241A Power Consumption 16

http:/ / vlsicad.ucsd.edu

Outline

Problem statement
Power dissipation components
Power estimation
Optimization techniques

ECE 260B CSE 241A Power Consumption 17

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis

Power
Analysis

RTL
Synthesis

Power
Analysis

Logic
Optimization

Power
Analysis

Transistor
Optimization

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 18

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Transistor Level Power Estimation


HDL
Behavioral
Synthesis
RTL
Synthesis

Circuit Simulation

Logic
Optimization

Current Flows

Transistor
Optimization

Power Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 19

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Power Estimation
Dynamic Analysis

Simulation

requires representative simulation vectors


- Derived by designer
- Automatic (Monte Carlo)

Transitor level (PowerMill)

Very accurate

Much faster than SPICE

Gate level (Powergate, DesignPower)

Faster than transistor level

Still very accurate due to good modeling of power dissipation at


cell-level

ECE 260B CSE 241A Power Consumption 20

http:/ / vlsicad.ucsd.edu

Power Ingredients

Dynamic Dissipation
Pdyn = CLVDDVsw f01

VDD

In

Out

Short-Circuit Currents
Psc = VDDIsc

CL

Static Dissipation
ISC

ECE 260B CSE 241A Power Consumption 21

Pstat = VDD Ileak

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Transistor-Level Power Estimation


I

1
P = i t v t dt
T 0

Spice is the reference, but too slow


Commercial tools claim to be within 10% of SPICE
accuracy and up to 1000X faster

ECE 260B CSE 241A Power Consumption 22

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Timing Simulation

i(Vdd)
Vdd

in
in
out1

out2

out3
out1
Vdd-Vth
out2

out3

Up to 2 orders of magnitude faster than SPICE


Uses simplified (table-lookup) transistor model
Handles leakage, direct path, and reduced swing
ECE 260B CSE 241A Power Consumption 23

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Switch-Level Simulation
Up to 3 Orders of Magnitude Faster than Circuit
Accurate for Dynamic Power

F
A

Cap (fF/bit)

Unreliable on leakage and direct path currents


100
90
80
70
60
50
40
30
20
10
0

IRSIM
SPICE

10

20

30

40

50

60

Sample

ECE 260B CSE 241A Power Consumption 24

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Perspective on accuracy and speed

Timing
Switch

Adder
Shift Register
% Error Speedup % Error Speedup
6
15
7
3.7
27
60
4
22

Comparison between circuit simulation (SPICE)


and timing or switch analysis

ECE 260B CSE 241A Power Consumption 25

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Transistor Level Power Estimation Tools

PowerMill

Epic

Mixed transistor/ gate simulation


Piecewise linear model

Star-ADM

Avant!

Mixed analog/ digital simulation


Analytic closed-form model

LSIM
Analyst

Mentor
Mixed transistor/ gate simulation
Graphics Series-Parallel Switch algorithm

ECE 260B CSE 241A Power Consumption 26

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis

Power
Analysis

RTL
Synthesis

Power
Analysis

Logic
Optimization

Power
Analysis

Transistor
Optimization

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 27

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Gate-Level Power Estimation


Dynamic
Switching Power (Isw) [70-90%]
Also referred to as capacitive power

Input
Transition
V

IInt

ISW
N

Internal (Short-Circuit) Power (Iint) [10-30%]


Also referred to as short circuit power

ILeak

Ci

GND

Static
Leakage Power (Ileak) [< 1%]
Sub-threshold leakage dominates, some due to leakage substrate

Complete power model provides infrastructure for analysis and optimization


ECE 260B CSE 241A Power Consumption 28

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Gate-Level Power Estimation


toggle rate

state of the gate


input slope
output load
temperature
fabrication process

ECE 260B CSE 241A Power Consumption 29

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis
RTL
Synthesis
Logic
Optimization

Probabilistic
Analysis
Simulation
with integrated
Power Analysis

Transistor
Optimization

Simulation

Toggle
Rates

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 30

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Simulation Based Power Estimation

Problems:

The relationship of power versus primary input probabilities


and activities is a
complicated surface.

The existing methods use discrete points to approximate such


a surface.
- The effectiveness strongly depends on the density of the
chosen points.
- The more points one chooses, the more accurate results.
- More points directly translate to longer CPU time.

ECE 260B CSE 241A Power Consumption 31

Slide courtesy, Z. Chen, K. Roy

http:/ / vlsicad.ucsd.edu

Toggle Rate Estimation

Probabilistic Propagation

no input vectors needed

much faster than simulation

less accurate than simulation

glitches?

Simulation

requires representative simulation vectors


- derived by designer
- automatic (Monte Carlo)

ECE 260B CSE 241A Power Consumption 32

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Signal Probability and Activity

Signal probability and activity

Signal probability - probability of a signal being logic ONE


P i =

lim
T

T /2

1
i t dt
T T / 2

Signal activity (transition density) - probability of signal


switching

Ai =

lim
T

ni T
T

ni(T): the number of switching for i(T) in [ -T/2,T/2]

ECE 260B CSE 241A Power Consumption 33

Slide courtesy, Z. Chen, K. Roy

http:/ / vlsicad.ucsd.edu

Power Dissipation in terms of Activity

Normalized activity
f : clock frequency

ai =

Ai
f

Normalized power dissipation measure

Approximated power dissipation


P avg =

1 2
V
2 dd

j all nodes C

Cj : node capacitance Aj : node activity

Normalized power dissipation measure

j all nodes

f anout j a j

fanout(j) : fanout number at node j


ECE 260B CSE 241A Power Consumption 34

Slide courtesy, Z. Chen, K. Roy

http:/ / vlsicad.ucsd.edu

Probability Propagation
Let y = f(x1, , xn) be a Boolean function with independent variables xi, the
signal probability of f can be obtained in linear time as follows.

P y =P x 1 P f x P x1 P f x
1
1
where

f x = f 1, x 2 ,. . . , x n , f x = f 0, x 2 ,. . . , x n
1

are the cofactors of f with respect to x1.

Improve runtime by using a BDD

ECE 260B CSE 241A Power Consumption 35

http:/ / vlsicad.ucsd.edu

Activity Propagation
Let y = f(x1, , xn) be a Boolean function with independent variables xi,
the signal activity of f can be obtained in linear time as follows.
n

A y = P
i =1

y
A x i
xi

where Boolean difference

y
= yx=1 yx=0
x

where is the exclusive-or operation.

ECE 260B CSE 241A Power Consumption 36

http:/ / vlsicad.ucsd.edu

Probability Propagation
Propagate
AND gate
sp(1) = sp1 * sp2

1/ 2

tp(01) = sp * (1 - sp)

1/ 2

1/ 4
7/ 16

1/ 2
1/ 2

Example

1/ 4

sp = 0.5 * 0.5 = 0.25


tp = 0.25 * (1 - 0.25) = 0.1875

ECE 260B CSE 241A Power Consumption 37

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Probability Propagation for Basic Gates

Ignores Temporal and Spatial Correlations


ECE 260B CSE 241A Power Consumption 38

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Probability Propagation Problems

Problem: Reconvergent
Fan-out:
Creates spatial
correlation between
signals

0.5

0.75

0.5

0.375?
0.5!

P(X) = P(B=1).(P(X=1 | B = 1)

Becomes complex and untractable real fast


ECE 260B CSE 241A Power Consumption 39

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Solution to Reconvergence
0.375

0.5

c
0

0.75

0
a

Ordered Binary Decision Diagrams


(OBDDs)

Statistics computed in linear time


(but graph size could be
exponential)

0.25

Preferred Technique:

0.5
0.25

Other approaches:

super-gates

0.125

computation of correlation
coefficients

1 0
0

OBD D0.375
Z = bc + abc

ECE 260B CSE 241A Power Consumption 40

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

How to introduce time?


And include glitching effects
TOUGH! If one also wants to include spatial effects or be general

Example: Symbolic Simulation Approach (for unit delay)


ECE 260B CSE 241A Power Consumption 41

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Symbolic Network

Transition Counters

Value of d at time t= 0

Problem: Network can be huge and BDD cannot be created!


ECE 260B CSE 241A Power Consumption 42

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Probability Simulation

User specifies typical signal behavior at the circuit

inputs using probability waveforms, which is a sequence


of values indicating the probability that the signal is high
for a certain time intervals, and the probability that the
signal takes transition from low to high.
0.2

0.6

0.0
0.75

0.5
0.25
0.0
t1

t2

t3

Propagation is very similar to event driven logic


simulation

ECE 260B CSE 241A Power Consumption 43

http:/ / vlsicad.ucsd.edu

How about sequential circuits?

It
I0
PS 0

N ext
State

PS t

Comb.
Logic

Next State Logic introduces temporal correlations


between subsequent samples
Either assume that all states have equal probability,
or use statistical Markov chains
ECE 260B CSE 241A Power Consumption 44

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Gate-Level Power Estimation Tools


Probabilistic based
Simulation based

DesignPower

Synopsys

PowerSim

Systems Science Simulation based

Power_tool

Veritools

Simulation based

WattWatcher
Gate

Sente

Simulation based

POET

Viewlogic

Simulation based

Xpower

Genashor

Asynchronous designs

ECE 260B CSE 241A Power Consumption 45

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis

Power
Analysis

RTL
Synthesis

Power
Analysis

Logic
Optimization

Power
Analysis

Transistor
Optimization

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 46

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Power Estimation

Simulation

Monte-Carlo technique

PowerMill at transistor level

Verilog-XL at gate level

Hierarchical simulation

Architectural/ gate/transistor-level

Parameterized power model for each module

Statistical estimation

Signal probability propagation

ECE 260B CSE 241A Power Consumption 47

http:/ / vlsicad.ucsd.edu

Power Estimation Methodology


RTL library

Synthesis
condition

Synthesis
P&R

RTL design
RTL planning
/ mapping

Post-layout
netlist

Structure
(macro)
netlist

Power
Characterization

Power model inference &


Estimation code generation
Power
Macro-model
database

Enhanced
RTL

Power model
library generator

Powerlib.vhd

Powerlib.v

ECE 260B CSE 241A Power Consumption 48

Testbench
stimuli

RTL
simulation
Power
report

Powerlib.c
Power waveform / profile

http:/ / vlsicad.ucsd.edu

Inaccuracies in Power Estimation


In increasing order:

The number of input stimuli did not cause any error above
the 10% mark if we considered at least 10 input patterns

Using a gate-level simulator as opposed to a circuit


simulator caused an error of about +/-15%

Repowering and physical design introduced inaccuracies


below 20%

Glitch power varied between 7%-43%


Internal gate capacitances, which are a function of the
target library, accounted for about half the power

Optimization and technology mapping may cause power


estimates to be off by an order of magnitude

ECE 260B CSE 241A Power Consumption 49

http:/ / vlsicad.ucsd.edu

Potential for Power Savings

Power and Synthesis Flow

400%

Behavioral

RTL

50%

Gate

20%
10%

Switch

Accuracy of Power Estimation


ECE 260B CSE 241A Power Consumption 50

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Expectations

Algorithmic

Algorithm selection

orders of magnitude

Behavioral

Concurrency
Memory

several times

Power manage

Clock ctrl

10-90%

RT Level

Structural transform.

10-15%

Tech. indep.

Extr/ decomp

15%

Tech dep.

Tech. mapping
Gate sizing

20%
20%

Layout

Placement

20%

ECE 260B CSE 241A Power Consumption 51

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Power Estimation / Improving Guidelines

Before technology mapping, the accuracy levels are


unacceptable

It is necessary to take into account internal gate


capacitances as well as wire capacitances

Gate-level estimation implies >15% error


Simulation with as few as 10 patterns from typical inputs

for a typical starting state is often sufficient to reach


confidence levels matching those of gate-level simulation

Power improving transformations should be

run in late design stages, they should be

applied only if they can predict significant power improvement,


and should be

applied many times (hundreds) to maximize the confidence of


positively impacting the design
ECE 260B CSE 241A Power Consumption 52
http:/ / vlsicad.ucsd.edu

Outline

Problem statement
Power dissipation components
Power estimation
Optimization techniques

ECE 260B CSE 241A Power Consumption 53

http:/ / vlsicad.ucsd.edu

Low Power Design Techniques

Reducing chip and package capacitance


Scaling the supply / threshold voltages
Using power management strategies
Employing better design techniques

ECE 260B CSE 241A Power Consumption 54

http:/ / vlsicad.ucsd.edu

Reducing Capacitance

Minimum area minimum power consumption


Wirelength minimization with switching activities as
weighting factors

Placement / routing / partition / floorplanning

Clock gating
Sleep transistors

ECE 260B CSE 241A Power Consumption 55

http:/ / vlsicad.ucsd.edu

CMOS Device and Voltage Scaling

Dual transistor threshold

High Vth transistors optimize performance

Low Vth transistors reduce leakage power

Transistors with the same Vth need to group together

Dual supply voltage

High Vdd transistors on critical paths

Low Vdd transistors reduce power

Level-converters between signals of different voltage swings

Routing cost of dual power supply

Extension of classical transistor sizing algorithm, e.g.,


TILOS

ECE 260B CSE 241A Power Consumption 56

http:/ / vlsicad.ucsd.edu

Power Management Strategies

Inactive hardware modules are automatically turned off to


save power (for example, monitors, laptops, etc.)

Transistors on non-critical data paths are slowed down,


e.g., by dynamically scaling down their supply voltages
(for example, in Transmeta microprocessors)

Sleep transistors

Power gating (controllable power supply mechanism)

ECE 260B CSE 241A Power Consumption 57

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis

Power
Analysis

RTL
Synthesis

Power
Analysis

Logic
Optimization

Power
Analysis

Transistor
Optimization

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 58

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Transistor-Level Power Optimization


Optimizes up to 30,000 transistors at a
time

Starts from three initial solutions: initial

sizes, all transistors sized up with constant


factor, and all transistor identical size

Optimization modes:

individual transistor sizing


retain ratios between connected NMOS and
PMOS devices
pseudo-NMOS

Optimization Goals

Delay

Power

Slack

AMPS - Epic
ECE 260B CSE 241A Power Consumption 59

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Design Abstraction Levels


HDL
Behavioral
Synthesis

Power
Analysis

RTL
Synthesis

Power
Analysis

Logic
Optimization

Power
Analysis

Transistor
Optimization

Power
Analysis

Place & Route


ECE 260B CSE 241A Power Consumption 60

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Gate-Level Power Optimization

Logic or
Gate Netlist

Switching Activity

Constraints
(timing, power, area)

Logic Optimization
Tech
Library

Power Optimization

Parasitics
(Capacitance)

Power Optimized
Gate Level Netlist

ECE 260B CSE 241A Power Consumption 61

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Gate-Level Tradeoffs for Power

Factoring
Structuring
Buffer insertion/ deletion
Dont care optimization
Technology mapping
Sizing
Pin assignment

ECE 260B CSE 241A Power Consumption 62

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Factoring

Idea: Remove common expressions to reduce capacitance

Pa = 0.1
Pb = 0.5
Pc = 0.5

Caveat: This may increase activity!

ECE 260B CSE 241A Power Consumption 63

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Logic Restructuring

Logic restructuring to minimize spurious transitions

Buffer insertion for path balancing


ECE 260B CSE 241A Power Consumption 64

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Technology Mapping
a

d
slack=1

Smaller gates reduce capacitance, but are slower

ECE 260B CSE 241A Power Consumption 65

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Technology Mapping
Example: 6-input AND

Implemented using 6 input NAND, 3 input NAND, and 2-input NAND [Bellaouar, ElMasry]

Library 1: High-Speed

Library 2: Low-Area

ECE 260B CSE 241A Power Consumption 66

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Technology Mapping Example

Area
Delay (ns)
Energy (fF)

6-input
9
1.1
6.7

3-input
11
0.86
42.5

2-input
13
0.83
89.4

Mapping results for high speed-library

Library 1
Library 2

6-input
6.7
3.5

3-input
42.5
19.5

2-input
89.4
43.7

Energy comparison between libraries


ECE 260B CSE 241A Power Consumption 67

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Sequential Logic Optimization


State encoding

seems to be of minimal impact in general

Data encoding in data paths

e.g. use of sign-magnitude , one-hot, or redundant representations

mostly ad hoc

Retiming for low power

registers can be strategically placed to reduce glitching, or to perform


path balancing

Clock gating
Pre-computation

ECE 260B CSE 241A Power Consumption 68

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Clock gating

Requires careful skew control ...


Scary in current logic synthesis world!
ECE 260B CSE 241A Power Consumption 69

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Pre-computation

Inputs xi xn are not applied


if pre-computing holds

ECE 260B CSE 241A Power Consumption 70

Other options:
guarded evaluation
set output directly

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Power Compiler

Results:

ECE 260B CSE 241A Power Consumption 71

design dependent

library dependent

average 15-20% pushbutton reduction in


power

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Low Power Synthesis

Introduce more concurrency for performance


improvement

Linear power consumption increase

Reduce power consumption by scaling down voltages

Quadratic power consumption decrease

Concurrency increasing transformations

Loop unrolling

Control flow optimizations

Critical path reducing transformations

Logic level minimization

Retiming

Pipelining

ECE 260B CSE 241A Power Consumption 72

http:/ / vlsicad.ucsd.edu

Summary

Design Flow for Power well covered at circuit and gate


level

Most emphasis on analysis not much on optimization


Overall optimization results are mixed
Plenty of room at the physical end

transistor sizing, circuit style selection, synthesis for pass-transistor


networks, threshold selection

ECE 260B CSE 241A Power Consumption 73

Slide courtesy, Prof. J. Rabaey, UCB

http:/ / vlsicad.ucsd.edu

Das könnte Ihnen auch gefallen