Leakage Power Reduction Techniques Yuanlin Lu ECE Dept. Auburn University

advertisement
Leakage Power
Reduction Techniques
Yuanlin Lu
ECE Dept. Auburn University
ELEC 6970
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
2
Transistor Leakage Mechanisms
I2, I5, I6 and are off-state leakage
mechanisms;
I1 and I3 occur in both ON and OFF
states;
I4 can occur in the off state, but more
typically occurs during the transistor
bias states in transition.
2016/7/16
ELEC 6970
I1 - the reverse-bias pn junction
leakage;
I2 - the subthreshold leakage; weak
inversion conduction current between
source and drain in an MOS transistor
occurs when gate voltage is below Vth.
I3 - the oxide tunneling current; due to
the low oxide thickness and the high
electric field;
I4 - the gate current due to hot-carrier
injection;
I5 - the GIDL (Gate-Induced Drain
Leakage); due to high field effect in the
drain junction;
I6 - the channel punchthrough current;
due to the proximity of the depletion
regions of the drain and the source.
3
Subthreshold Leakage current
I sub  u0Cox
Weff
Leff
 Vgs  Vth  
  Vds  

  1  exp 
 
VT e exp 


 nVT  
 VT  
2 1.8
u0 is the zero bias electron mobility, n is the subthreshold slope coefficient.
To decrease Subthreshold current
Cox = εox/Tox  Determined by foundry
Vgs & Vds  Vdd  dual power supply
Vth  dual-Vth, Multi-Vth, Variable Vth
W or L  gate sizing
Temperature ( VT = KT/q)
2016/7/16
ELEC 6970
4
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
5
Leakage & Delay
Increasing Vth can decrease Isub exponentially
But, gate delay increase at the same time
T pd 
CVdd
Vdd  Vth 
where α models short channel effects (1.3)
When using Vth changing techniques, must
consider the tradeoff between leakage
reduction and performance reduction
2016/7/16
ELEC 6970
6
MTCMOS (Multi-Threshold CMOS)
2016/7/16
ELEC 6970
7
MTCMOS (cont.)
Advantage
- Circuit can be modified
easily
Disadvantages
- Affect delay, area
- Can only reduce leakage
power in standby mode
- Not suitable for sequential
circuit
2016/7/16
ELEC 6970
8
VTMOS (Variable Threshold CMOS)

Vth  Vth0 Vds  r Vsb  2 F  2 F
Vth0
r
2ФF
η
- zero-substrate-bias value for Vth
- body effect parameter
- surface potential parameter
- Drain-induced barrier lowering (DIBL)
coefficient (0.02-0.1)
Using body effect, change Vth
In active mode, a zero body bias
In standby mode, a deeper reverse body bias, Vth increase
Can only reduce leakage power in standby mode
2016/7/16
ELEC 6970
9

VTMOS (cont.)
2016/7/16
ELEC 6970
10
Dual Threshold CMOS
To maintain performance, all
gates on the critical path are
assigned low Vth
Part of the gates on the noncritical paths are assigned high
Vth
Disadvantage: Circuit structure
sensitive
Advantage: Can reduce leakage
power in both standby mode and
active mode !
2016/7/16
ELEC 6970
11
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
12
Dual Power Supply Voltages
I sub  u0Cox
 Vgs  Vth  
  Vds  

  1  exp 
 
VT e exp 


Leff
 nVT  
 VT  
Weff
2 1.8
Vdd  Isub
 gate delay
Assign Low Vdd to the gates on the noncritical path, to decrease leakage power
Assign High Vdd to the gates on the critical
path, to maintain performance
2016/7/16
ELEC 6970
13
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
14
Transistor Stacking
Serious connected ‘off’ Transistors (Transistor Stacking)
can reduce leakage current greatly
I sub  u0Cox
 Vgs  Vth  
 V 
2
  1  exp  ds  
VT e1.8 exp 


Leff
 nVT  
 VT  
Weff

Vth  Vth0 Vds  r Vsb  2 F  2 F
Vdd
Vdd
0
0
0
0
0
M
GND
2016/7/16
Vdd=Vds
M1
Vm Vdd=Vds1+ Vds2
0
M2
GND

When M1 and M2 are turned off, Vm
at the intermediate node is positive
due to small drain current.
Vgs1 < 0, reduce the subthreshold
current substantially.
Vbs1 < 0, increase Vth1 (larger body
effect) and thus reducing the
subthreshold leakage.
Vds1 decrease, increase Vth1
Vds2 decrease, increase Vth2
ELEC 6970
15
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
16
Leakage Dependence
on the Input Vector
Different Input vector, different leakage current.
Vdd
P1
P2
N1
N2
GND
2016/7/16
00: p1 & p2 on, n1 & n2 off.
Ileak 00 = In1 + In2 = 2 * Ileak
01: n1 off. n2 is on and can be treated as shorted,
so leakage current of n1 is ignored.
p1 is on and p2 is off.
Ileak 01 = Ip2 = Ileak
10: the same as the ‘01’
Ileak 10 = Ip1 = Ileak
11: n1 & n2 on. p1 & p2 off. Due to the stacking
effect,
Ileak 11 < Ileak
So, when the input vector is ‘00’, the NOR gate has
the maximal leakage current. When the input
vector is ‘11’, the NOR gate has the minimum
leakage current.
ELEC 6970
17
Optimal Input Vectors Selection
There must be optimal primary input vectors which lead to
the minimum leakage power in the standby mode.
For smaller ciruits
- Exhaustive Search
For larger circuits
- Random Search
- Genetic algorithm ( exploit historical information to
speculate on new search points with expected improved
performance to find a near-optimal solution )
2016/7/16
ELEC 6970
18
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
19
Dual Threshold CMOS
To maintain performance, all
gates on the critical path are
assigned low Vth
Part of the gates on the noncritical paths are assigned high
Vth, to avoid the change from
non-critical path to critical path.
Disadvantage: Circuit structure
sensitive
Advantage: Can reduce leakage
power in both standby mode and
active mode !
2016/7/16
ELEC 6970
20
Using ILP (Integer Linear Programming)
to Reduce Leakage Power
In dual-threshold CMOS process
Firstly, assign all gates low Vth
Use ILP model 1 to find the delay of the
critical path (Tc)
Use ILP model 2 to find the optimal Vth
assignment as well as the leakage
reduction of all gates without increasing Tc
Further reduce leakage power by
increasing Tc
2016/7/16
ELEC 6970
21
ILP
Raja et al. [16] proposed a technique to
reduce dynamic glitch power by a reduced
constraint set linear program.
We modify their formulation into an integer
linear program (ILP) to reduce leakage
power.
ILP is a mixed ( integer value and
continuous values combined together)
linear programming
2016/7/16
ELEC 6970
22
ILP -Variables
Each gate has two variables.
Ti: the latest time at which the output of gate i
can produce an event after the occurrence of an
input event at primary inputs of the circuit.
Continuous value
Xi: the assignment of low or high Vth to gate i;
Xi is an integer which can only be 0 or 1.
1  gate i is assigned low Vth;
0  gate i is assigned high Vth.
2016/7/16
ELEC 6970
23
ILP - objective function
Pleak  Vdd  I leaki
i
objective function
- minimize the sum of all gates leakage
currents, which is given by
Min   X i  I Li  1  X i   I Hi 
i
ILi is the leakage current of gate i with low Vth;
IHi is the leakage current of gate i with high Vth;
Each gate’s leakage current can be either ILi or IHi;
Using SPICE simulation results, we constructed a
leakage current look up table, which is indexed by
the gate type and the input vector.
2016/7/16
ELEC 6970
24
ILP - Constraints
Constraints for each gate
(1)
Ti  T j  X i  DLi  1  X i   DHi
gate j ‘s output is gate i ‘s fan in
(2)
0  Xi 1
Max delay constraints for primary outputs (PO)
(3)
Ti  Tmax
Tmax can be spec. or the delay of the critical path
2016/7/16
ELEC 6970
25
ILP – Constraints 1
0
1
2
3
Ti  T j  X i  DLi  1  X i   DHi
assume all primary input (PI) signals on the left arrive at the
same time.
For gate 2, constraints can be given by
T2  T0  X 2  DL 2  1  X 2   DH 2
T2  0  X 2  DL 2  1  X 2   DH 2
2016/7/16
ELEC 6970
26
ILP – Constraints 1 (cont.)
DHi is the delay of gate i with high Vth;
DLi is the delay of gate i with low Vth.
A second look-up table is constructed and
specifies the delay for given gate type and
fanout number.
2016/7/16
ELEC 6970
27
ILP – Constraints 3
Ti  Tmax
Tmax can be spec. or the delay of the critical path (Tc).
To find Tc, we change constraints 2 to a equation, which
means all gates are assigned low Vth.
Xi 1
0  Xi 1
The maximum Ti given by AMPL CPLEX, is equal to Tc.
If we replace Tmax with Tc, the real objection function
becomes minimize leakage power without sacrificing any
performance.
2016/7/16
ELEC 6970
28
ILP – Constraints 3 (cont.)
2016/7/16
ELEC 6970
1
0.9
0.8
Normalized Leakage Power
If we gradually increase Tmax from the
smallest value Tc, more leakage power
can be reduced, because more gates
on the non-critical path can be assigned
high Vth.
But, the reduction trend becomes
slower.
When Tmax = (130%) Tc, the reduction
is saturated, because almost all the
gates are assigned high Vth, and there
is no more optimization space.
The maximum leakage reduction can be
98%.
C432
0.7
C880
0.6
C1908
0.5
0.4
0.3
0.2
0.1
1
1.1
1.2
1.3
1.4
1.5
Normalized Critical Path Delay
Tradeoff between Leakage and
Performance
29
Results-Leakage Reduction
Cir.
Number
of gates
Tc (ns)
Unoptimize
d
Ileak (μA)
Optimized
Ileak (μA)
(Tmax= Tc)
Leakage
Reduction
%
Sun
OS 5.7
CPU secs.
Optimized for
Ileak (μA)
(Tmax=1.25Tc)
Leakage
Reduction
%
Sun
OS 5.7
CPU secs.
C432
160
0.751
2.620
1.022
61.0
0.25
0.132
95.0
0.25
C499
182
0.391
4.293
3.464
19.3
0.31
0.225
94.8
0.30
C880
328
0.672
4.406
0.524
88.1
0.54
0.153
96.5
0.53
C1355
214
0.403
4.388
3.290
25.0
0.33
0.294
93.3
0.36
C1908
319
0.573
6.023
2.023
66.4
0.57
0.204
96.6
0.56
C2670
362
1.263
5.925
0.659
90.4
0.68
0.125
97.9
0.53
C3540
1097
1.748
15.622
0.972
93.8
1.71
0.319
98.0
1.70
C5315
1165
1.589
19.332
2.505
87.1
1.82
0.395
98.0
1.83
C6288
1177
2.177
23.142
6.075
73.8
2.07
0.678
97.1
2.00
C7552
1046
1.915
22.043
0.872
96.0
1.59
0.445
98.0
1.68
2016/7/16
ELEC 6970
30
Results-Dynamic & Leakage
Comparison
I sub  u0Cox
 Vgs  Vth  
 V 
2
  1  exp  ds  
VT e1.8 exp 


Leff
 nVT  
 VT  
Weff
VT (thermal voltage, kT/q) and Vth both depend on the
temperature, so, leakage current also strongly depends
on the temperature.
Spice simulation shows that for a 2-input NAND gate
- with low Vth, Isub @ 90ºC = 10 * Isub @ 27ºC
- with high Vth, Isub @ 90ºC = 20 * Isub @ 27ºC
To manifest the projected contribution of leakage to the
total power, we compare dynamic and leakage power @
90ºC.
2016/7/16
ELEC 6970
31
Results-Dynamic & Leakage
Comparison (cont.)
Without considering glitches, the dynamic
power is estimated by an event driven
simulator, and is given by
0.5  Cinv  Vdd   Ti FOi
2
Pdyn 
Edyn
T

i
10001.2 T c 
We apply 1000 random test vectors at PIs
with the test period equal to (120%)Tc, and
calculate the total transition No. in the
circuit.
2016/7/16
ELEC 6970
32
Results-Dynamic & Leakage
Comparison (cont. 2)
Circuit
Pdyn
(μW)
Pleak1
(μW)
Pleak1/
Pdyn %
Pleak2
(μW)
Pleak2/
Pdyn %
C432
71.17
26.20
36.8
10.22
14.3
C499
149.81
42.93
28.7
34.64
23.1
C880
135.19
44.06
32.6
5.24
3.8
C1355
162.39
43.88
27.0
32.90
20.3
C1908
185.60
60.23
33.4
20.23
10.9
C2670
92.64
59.25
64.0
6.59
7.1
C3540
218.41
156.22
71.5
9.72
4.4
C5315
299.61
193.32
64.6
25.05
8.4
C6288
215.12
231.42
108.0
60.75
28.2
C7552
229.13
220.43
96.2
8.72
3.8
2016/7/16
ELEC 6970
33
Outline
Transistor Leakage Mechanisms
Leakage Reduction techniques
- Mutli-, dual-, Variable Vth
- Dual Power Supply
- Transistor Sizing
- Transistor Stacking
- Optimal Input Vector Selection
Proposed Technique
- Using ILP to Minimize leakage
- Extend ILP to Minimize leakage and Glitch Power together
2016/7/16
ELEC 6970
34
Extend ILP to Minimize leakage and
Glitch Power together
1.4
1.5
1.4
1.4
3.0
1.8
2.1
3.0
1.8
1.4
1.5
1.5
1.5
1.5
1.5
3.0
Fig 1. A circuit with potential glitches
1.4
1.5
0.1
1.4
1.4
3.0
1.5
1.5
1.5
3.0
Fig 2. Inserting buffers in the
circuit of Figure 1 to balance the path
delays to eliminate all glitches.
2016/7/16
Fig 3. Hazard filter effect of high Vth gates
.
• Three black gates are assigned high Vth.
• Their delays increase accordingly.
• Only two buffers are needed to eliminate
all glitches due to the increased gate delay
of high Vth gates.
• This hazard filter effect is another
advantage of dual-Vth reassignment.
ELEC 6970
35
Extend ILP to Minimize leakage and
Glitch Power together (cont.)
The inserted buffers for eliminating glitches
consume additional leakage power, so, we may
assign high Vth to them.
Most of the delay buffers are on non-critical
paths and can be assigned high Vth.
For a larger circuit, the power saving due to
hazard filtering would be significant while power
increase due to delay buffers will be small
2016/7/16
ELEC 6970
36
Future Work
Using ILP to minimize leakage and
dynamic power simultaneously.
Consider transistor sizing to reduce
dynamic switching power and leakage
power simultaneously.
2016/7/16
ELEC 6970
37
Thank You All !
Download