Professional Documents
Culture Documents
Sun’s
Surface
100000 10000
18KW
Rocket
chip
Charging Discharging
VDD E0→1 = CLVDD2 VDD
RN CL RN
CL
P = CL VDD2 fclk
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 3
The Transition Activity Factor α0−>1
00 01 1 −> 1
00 10 1 −> 1 Assume inputs (A,B) arrive
00 11 1 −> 0
at f and are uniformly
01 00 1 −> 1
01 01 1 −> 1 distributed
01 10 1 −> 1 What is the average
01 11 1 −> 0 power dissipation?
10 00 1 −> 1
10 01 1 −> 1
1 −> 1
α0−>1 = 3/16
10 10
10 11 1 −> 0
11 00 0 −> 1
11 01 0 −> 1
11
11
10
11
0 −> 1
0 −> 0
P = α0−>1 CL VDD2 f
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 4
Junction (Silicon) Temperature
Tj= Ta + RθJA PD TA
P = α0−>1 CL VDD2 f
Reduce Transition Activity or Switching
Events
Reduce Capacitance (e.g., keep wires
short)
Reduce Power Supply Voltage
Frequency is typically fixed by the
application, though this can be adjusted to
control power
Optimize at all levels of design hierarchy
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 7
Clock Gating is a Good Idea!
Multiplier On
X
Multiplier Clock
Enable_Multiplier
100’s of different clocks in a microprocessor
Processor
Chip
Thermal
Activity
Sensor
Control
On-die
decap Switching
currents
Board decap
Can write a Virus to Activate
Power Supply Resonance!
-4 1100 0011 +3
-3 1011 0100 +4
1010 0101
-2 +5
1001 0110
-1 1000 0111 +6
-0 +7
MEMORY address
a[0] 0111111100000000
a[1] 0111111100000001
address
a[2] 0111111100000010
CPU a[3] 0111111100000011
16
b[0] 1000000000000000
b[1] 1000000000000001
b[2] 1000000000000010
b[3] 1000000000000011
for (i = 0; i < 255; i++) { for (i = 0; i < 255; i++) {a[i] = sin(pi * i /256);}
a[i] = sin(pi * i /256); for (i = 0; i < 255; i++) {b[i] = cos(pi * i /256);}
b[i] = cos(pi * i /256);
}
512(8)+2+4+8+16+32+64+128+256 2(8)+2(2+4+8+16+32+64+128+256)
= 4607 bit transitions = 1030 transitions
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 13
Glitching Transitions
+ C
+ +
+ D +
+ (A+B) + (C+D)
(((A+B) + C)+D)
Balancing paths reduces glitching transitions
Structures such as multipliers have lot of glitching transitions
Keeping logic depths short (e.g., pipelining) reduces glitching
VDD t =0+
G VS D
VDD
+
K 2
V (V −V )
DD 2 DD T CL
-
IN OUT S
V
DD
C ⋅ ΔV C ⋅ VDD 1
Delay =
L
=
L 2
∝ ≈
i
D
k
(V − V )2 (VDD − VT ) 2
VDD
2 DD T
X X X
OUT SELECT
OUT
1.0
Normalized Energy
0.8
0.4
Variable
0.2 Supply
0
0 0.2 0.4 0.6 0.8 1.0
Normalized Workload
[Gutnik97]
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 18
DVS on a Processor
0.6
0.4
0.2
Digitally adjustable DC-DC 0
59.0
converter powers SA-1110 core 88.5 1.5
1.6
118.0 1.4
147.5 1.3
1.2
5 176.9 1.1
206.4 1.0
Frequency (MHz) 0.9 Core Voltage (V)
3.6V
Figure by MIT OpenCourseWare. Adapted
from R. Min, T. Furrer, and A. P. Chandrakasan.
"Dynamic Voltage Scaling Techniques for
Vout SA-1110 Distributed Microsensor Networks." Workshop
Controller
on VLSI (April 2000): 43-46.
Control
μOS
0.25
CLB CLB
0.2
Average Current (A)
0.15
0.1
0.05
C LB C LB
0
ARM Instructions
CLB
I/O
45 5%
9%
40
35
30 Clock 21% Interconnect
Power (%)
25
20 65%
15
10
5
0
Cache Cpntrol GCLK EBOX I/O,PLL
Image by MIT OpenCourseWare. Adapted from Kusse 1998, UCB.
Figure by MIT OpenCourseWare. Adapted from Montanaro 1996, JSSC.
Software”
“Software” Energy Dissipation has Large Overhead
L16: 6.111 Spring 2006 Introductory Digital Systems Laboratory 20
Trends: Leakage and Power Gating
E = CVDD2 -
E = VDDI010 VT/S
0 1
C C
Switching Leakage
(computing) (standby)
Duty Cycle (%)
Low VT
devices are
leaky - Use a
High VT
device is used
to gate
leakage Sleep
current