VLSI設計支援工学 VLSIの低消費電力化技術

Download Report

Transcript VLSI設計支援工学 VLSIの低消費電力化技術

VLSI設計支援工学
VLSIの低消費電力化技術
小松 聡
東京大学大規模集積システム設計教育研究センター
(VLSI Design and Education Center; VDEC)
[email protected]
2001年5月8日(火)
1
内容
VLSIにおける消費電力
低消費電力化技術
デバイス
回路
アーキテクチャ
システム
CAD
今後の低消費電力設計技術の展望
2
VLSIにおける消費電力
VLSIの低消費電力化に対する要求
プロセッサなどにおける消費電力の増大
性能向上に比例して増大
VLSIの信頼性
温度上昇→信頼性の低下
システムのコスト
バッテリ駆動時間
携帯電話、PDSなどの普及による
環境問題
3
消費電力の増大
マイクロプロセッサの消費電力
ハイエンドでは100Wを超える
一世代進むごとに素子数、クロック周波数、消
費電力が2倍となっている
プロセス技術の今後の進歩
(ITRS1999, 2000Updateより, http://public.itrs.net)
年
デザインルール (um)
トランジスタ数 (MTr.)
クロック周波数 (MHz)
電源電圧 (V)
消費電力 (W)
1999
0.18
24-61
600-1250
1.5-1.8
1.4-90
2001
0.13
48-122
800-2100
1.2-1.5
2.0-130
2004
0.09
135-244
1100-3500
0.9-1.2
2.4-160
2008
0.06
539-1381
1522-7115
0.6-0.9
2.1-171
2011
0.04
1523-3907
1925-11050
0.5-0.6
2.3-177
4
消費電力の増大によって
回路の誤動作
信頼度の低下
温度が10℃上昇すると故障率が2倍に
コストの上昇
冷却、高性能な電源の必要性
電力代、電池代
環境問題
世界のプロセッサ生産40億個/年
→1プロセッサあたり1Wとすると、、、
5
CMOS回路の消費電力
スイッチング電力
貫通電流による電力
リーク電流による電力
P
P
CL
Vs
VDD
pt  (CL Vs VDD  fCLK )  I SC VDD  I Leak VDD
fCLK : 動作周波数
: 消費電力
pt : 信号遷移頻度
: 負荷容量
I SC :
貫通電流
: 信号振幅
I Lead : リーク電流
: 電源電圧
6
スイッチング電力
負荷容量CLの充放電によ
り電力を消費
VLSIの全消費電力の主な
部分を占める
CL
PSW  pt  (CL Vs VDD  fCLK )
7
貫通電流による電力
入力信号が遷移する際
にnMOS, pMOSが両方
ともONになる状態が存
在
低Vthプロセスで顕著
PSC  I SC VDD 

12
CL
VDD  2Vt   SW  f
3
8
リーク電流による消費電力
MOSFETは理想的なス
イッチではない
寄生ダイオードによるリーク
1接合あたり1fA程度
サブスレショルドリーク
低Vthプロセスで顕著
CL
9
消費電力削減の指針
P  pt  (CL Vs VDD  fCLK )  I SC VDD  I Leak VDD
電源電圧の削減
負荷容量の削減
スイッチング頻度の削減
クロック周波数の低減
貫通電流、リーク電流の削減
性能を低下させずにこれらを
行わなければならない
10
VLSIの低消費電力化技術
デバイスレベル
プロセスの微細化
SOI(Silicon On Insulator)
デバイスが埋め込み酸化膜上に形成されているた
め寄生容量が小さい
電源電圧、しきい電圧の低減
低誘電率層間絶縁膜
11
VLSIの低消費電力化技術
回路レベル
パス・トランジスタ・ロジック(負荷容量の低減)
電源電圧・しきい電圧の低減
グリッチの低減(スイッチング頻度の低減)
多種のしきい電圧の利用(リーク電流の低減)
12
グリッチ(glitch)の削減
信号の入力タイミングのずれにより発生
ノードが正しい論理レベルに落ち着く前に不要な信号
遷移を起こす
D
C
B
すべての信号パスのバランスを
とり、論理段数を減らす
+
+
+
A
D
+
C
+
B
+
A
13
MTCMOS (Multithreshold-Voltage
CMOS)
回路の動作状態に応じてリーク電流を制御
アクティブ・モード:VDDV, GNDVが仮想的な電源
線として動作
スリープ・モード:高Vtデバイスがリークをカット
VDD
VDDV
a
High Vt for sleep
control device
b
a
Low Vt for
performance
b
GNDV
GND
S. Mutoh et al., IEEE Journal of Solid State Circuits, 1995.
14
Variable Threshold voltage CMOS
(VTCMOS)
基板バイアス効果を利用
アクティブ・モード:低Vt
スリープ・モード:高Vt
Vpp
VDD
GND
Low Vt (Active)
High Vt (Stand-by)
Vnn
15
低消費電力アーキテクチャ
電源電圧の最適化
高性能から低消費電力へ
回路活性化率の削減
必要のない回路は動かさない
低消費電力向けデータ表現方法
データ表現、データ符号化など
Application specificな用途に効果
16
電源電圧の最適化
いかに性能を低下させずに消費電力を削
減するか?
回路の高スループット化によって電源電圧を
低下させる
回路の並列化、パイプライン化
VDD
1
遅延時間

2
(VDD  VT ) VDD
消費電力 V
2
DD
17
並列化、パイプライン化による
低消費電力化(1)
並列化、パイプライ
ン化により、各タスク
の処理時間を長くし、
電源電圧を下げる。
右の例では、処理時
間が2倍になるので、
電源電圧を下げるこ
とができる。
Time
Normal
Parallel
Pipeline
18
並列化、パイプライン化による
低消費電力化(2)
一定のスループットが保たれることを要求
される用途に適している:DSP、Video、
Audio
高性能の汎用プロセッサには向かない
回路面積、追加コントローラなどの面で
オーバーヘッド
Clock
Uni-Processor
8.3MHz
Pipelined Multi-Processor 1.04MHz
Vdd
3.3V
1.1V
Area
72mm^2
112mm^2
Power
10.8mW
250uW
[Source: Rabaey, Pedram, Low Power Design Methodologies]
19
Gated Clock
使わない回路は動かさない
使わないブロックのローカルクロックを止める
少なくとも20%程度消費電力を削減可能
性能面でのオーバーヘッドはなし
クロックスキュー
A
B
Enable_a
Enable_b
Clk
PLL
(Clk Generator)
Enable_c
D
C
20
データ伝送(バス)の低消費電力化
信号伝送の消費電力削減
設計規則が小さくなるにつれて、配線
での消費電力の閉める割合増
バスなどの信号伝送路
ロジック部のローカル配線と比較して数桁大
きな容量を持つ
P  pt  (CL Vs VDD  fCLK )
P
: 消費電力
CL
: 負荷容量
Vs
: 信号振幅
VDD : 電源電圧
fCLK : 動作周波数
pt
: 信号遷移頻度
Power dissipation per
2]
unit area [W/cm
1000
100
Total Power
Inner circuit
バス、チップI/Oなどの信号伝送路の信
号遷移頻度を削減することで、有効に
消費電力削減可能
10
Wiring
1
0.05
0.1
0.2
0.5
1
2
Design Rule [um]
21
VLSIにおける消費電力の分布
用途、設計手法によってかなり異なる
今後はロジックから配線へシフトしていくと予
想される
CMOS論理LSIの電力分布
クロック
ロジック
メモリ
I/O
ASIC2
ASIC1
MPU2
MPU1
0%
20%
40%
60%
80%
100%
22
データ伝送における低消費電力化技術
低振幅バス
信号振幅を小さくすることで、消費電力削減
アナログ回路を用いることが多い
データ符号化
信号遷移が小さくなるようにデータを符号化す
る
アドレスバス、データバスのデータの性質を利用
Application specific なケースに用いられることが多
い
23
VLSIでの信号伝送におけるデータ符号化
データ符号化による低消費電力データ伝送技術
n
A bus
B bus
Block
2
Block
3
bus lines
n
C bus
CHIP
3バス構成のプロセッサのモデル
Small capacitance


junction
capacitance
Cj
bus wiring
capacitance
gate
capacitance
Cw
Cg
Bus interface
Encoder / Decoder
Block
1
Bus interface
Encoder / Decoder
Reg.
File
Large Capacitance
(relatively)
Relatively high
power dissipation
CHIP
Small capacitance
データ符号化を用いた低電力データ伝送
方式の構成
バスの容量のモデル
24
データ表現
通常、負の数は2の補数を用いて表現され
る。
特定の用途においてはこれが信号遷移数の
増加につながる(DSPなど)
数を2の補数ではなく、(符号)+(絶対値)
で表すことによって遷移数を削減可能
用途に応じて最適なデータ表現方法を選
択する必要性
25
データ表現(2)
例:8ビットの場合
2の補数表現
(符号)+(絶対値)
0
000 00000
00000 000
1
000 00001
00000 001
-1
111 11111
10000 001
0
000 00000
00000 000
符号
26
データの伝送順序の最適化
データの伝送順序が任意で構わない場
最も信号遷移数が少なくなるように順序を入
れ替える(キャッシュなど)
Instructionの順序を入れ替える
コンパイラ側で最適化を行うことが可能
27
バス反転符号化
連続する2つの信号間の信号遷移数(ハミ
ング距離)がバス幅の半数を超えるときに、
データを反転し、1ビットの冗長符号を用い
て反転/非反転の情報を伝送する
信号遷移頻度の削減は10%程度
符号化なし
バス反転符号化
00000000
0 0000000
0
00010001
0 0010001
0
11111111
0 0000000
1
00000000
0 0000000
0
反転
冗長符号
28
アドレスバスのデータ符号化(1)
アドレスバスの信号(アドレス)には時間的
な依存関係が強いため、非常に効果的
Grayコード
値が+1のときに1ビットだけ遷移
アドレスバスに適している
アドレス
000
001
010
011
100
101
110
111
グレイコード
000
001
011
010
110
111
101
100
29
アドレスバスのデータ符号化(2)
T0コード
通常時はアドレスを送らない
ジャンプ、分岐などの時のみアドレスを送る
冗長ビット1ビット
INC or Jump
30
システムレベルでの低消費電力化
電源電圧の最適化
動的な電源電圧制御
アクティブモード、スリープモードで電源電圧を変化
INTEL SpeedStep, Transmeta Crusoeなど
局所的な電源電圧最適化
クリティカルパスとそれ以外
異なる電圧間のインタフェース
Not critical: Low VDD
Critical: High VDD
31
低消費電力CAD技術
ゲートサイジング
配置配線後にライブラリセルのゲートサイズを
最適化、再配置配線の繰り返し
50%近く消費電力を削減したケースも
消費電力を考慮した論理合成、配置配線
従来は主に速度と面積のみ
クロック・ネットの最適化
32
適応型コード長符号化
1. 入力データとコード帳の各コードとの論理XORをとる
2. それらの中で“1”の数が最も小さいものを選択する
3. 前サイクルのバスデータとの論理XORをとり、それをバ
スに伝送する
4. コード帳を更新する
number of "1"
is minimum
Step 1
transition in data
is minimum
Step 2
Data Input
0 0 0 0 0 1 0 0
CK
Input
Minimum
Hamming
Distance
Detector
LWC
0 1 0 0 0 0 0 0
Bus
R
Code
Word
Update
invert
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Code
Word
0
0
0
0
1
1
1
1
0
1
1
0
1
0
0
1
0 0 0 0 1
1 1 0 0 0
0 0 0 1 0
0 0 0 0 0
1 1 1 1 0
0 0 1 1 1
1 1 1 0 1
1 1 1 1 1
Codebook
1
0
0
0
0
1
1
1
selected
invert
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Code
Word
0
0
0
0
1
1
1
1
0
1
0
0
1
0
1
1
0 0 0 0 1
1 1 0 0 0
0 0 0 1 0
0 0 0 0 0
1 1 1 1 0
0 0 1 1 1
1 1 1 0 1
1 1 1 1 1
Codebook
1
0
0
0
0
1
1
1
WriteBack
WriteBack
Codebook
適応型コード帳符号化の符号化手法
適応型コード帳符号化でのコード帳
の更新方法
33
適応型コード帳符号化のシミュレーション
による評価
ランダムデータに対するシミュレーション結果
“1”の出現率に対する計算結果
Ratio of Transition
1
Bus Invert Encoded
Codebook Encoded
0.95
適応型コード帳符号化により
25-50%信号遷移頻度を削減
することが可能
0.9
0.85
0.8
0.75
0.7
0.65
Adaptive Codebook
Encoded
0.6
0.55
0.5
0
10
20
30
40
50
60
70
80
90 100
Ratio of 1 in data
34
適応型コード帳符号化のシミュレーション
による評価(4)
PCのバスを流れるデータに対するシミュ
レーション結果
ロジックアナライザを用いてPCのバスを流れ
るデータを抽出し、入力データとして利用
PCのバスを流れるデータに対するシミュレーション結果
encoding
method
raw data
bus invert
generalized
bus invet
adaptive
code-book
data
173587
157846
signal transition
code word
sum
%
0 173587 100%
3889 161735 93%
135012
14203 149215
86%
117055
14139 131194
76%
35
適応型コード帳符号化の回路評価
適応型コード帳符号化の符号化/復号化チップの設計と検証
試作チップの特徴
適応型コード帳符号化/復号化チップの諸元
データ幅
コード数
16ビット
1,2,4,8,16いずれか選択可能
符号化→復号化
測定モード 符号化のみ
いずれか選択可能
復号化のみ
プロセス
チップサイズ
電源電圧
トランジスタ数
パッケージ
2層metal 0.5um CMOS
4.8x4.8 [mm^2]
3.3 [V]
50136 [Transistors]
120pin PGA[13x13] (I/O 76pin)
Encoded Data
3-State Buffer
CN
Input
Encoder
Decoder
Output
Encoder
チップの構成
Decoder
36
微細プロセスにおける最適符号化方式の検討
各設計規則とバスの負荷容量(1bitあたり)におけ
る最適なデータ符号化方式
Bus load capacitance [pF/line]
50
40
Adaptive
Code-book(16)
Adaptive
Code-book(8)
30
Adaptive
Code-book(4)
20
Bus
Invert
10
0
0.01
0.03
0.1
0.3
1
Design r ule [um]
37
今後の低消費電力設計技術の展望
デバイス、回路技術
さらなるVDDの低下:VT制御、リーク制御、SOI
将来のプロセス技術に適した新たな回路方式
アーキテクチャ、システム技術
不要な電力をカット
論理、回路、アーキテクチャ、システム、ソフト
ウェアを通じた低消費電力化
CAD技術
Low Power CAD
クロックデザインツール
38