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

38
1 VLSI 設設設設設設 VLSI 設設設設設設設設設 設設 設 設設設設設設設設設設設設設設設設設設設設設設設 (VLSI Design and Education Center; VDE C) [email protected] 2001 設 5 設 8 設 ( 設 )

Upload: yanni

Post on 26-Jan-2016

94 views

Category:

Documents


2 download

DESCRIPTION

VLSI 設計支援工学 VLSI の低消費電力化技術. 小松 聡 東京大学大規模集積システム設計教育研究センター (VLSI Design and Education Center; VDEC) [email protected] 2001 年 5 月 8 日 ( 火 ). 内容. VLSI における消費電力 低消費電力化技術 デバイス 回路 アーキテクチャ システム CAD 今後の低消費電力設計技術の展望. VLSI における消費電力. VLSI の低消費電力化に対する要求 プロセッサなどにおける消費電力の増大 - PowerPoint PPT Presentation

TRANSCRIPT

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

1

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

小松 聡東京大学大規模集積システム設計教育研究センター

(VLSI Design and Education Center; VDEC)

[email protected]

2001 年 5 月 8 日 ( 火 )

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

2

内容

VLSI における消費電力低消費電力化技術

デバイス回路アーキテクチャシステムCAD

今後の低消費電力設計技術の展望

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

3

VLSI における消費電力

VLSI の低消費電力化に対する要求プロセッサなどにおける消費電力の増大

性能向上に比例して増大

VLSI の信頼性温度上昇→信頼性の低下

システムのコストバッテリ駆動時間

携帯電話、 PDS などの普及による

環境問題

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

4

消費電力の増大

マイクロプロセッサの消費電力ハイエンドでは 100W を超える一世代進むごとに素子数、クロック周波数、消費電力が 2 倍となっている

年 1999 2001 2004 2008 2011 (um)デザインルール 0.18 0.13 0.09 0.06 0.04

(MTr.)トランジスタ数 24- 61 48- 122 135- 244 539- 1381 1523- 3907 (MHz)クロック周波数 600- 1250 800- 2100 1100- 3500 1522- 7115 1925- 11050

(V)電源電圧 1.5- 1.8 1.2- 1.5 0.9- 1.2 0.6- 0.9 0.5- 0.6 (W)消費電力 1.4- 90 2.0- 130 2.4- 160 2.1- 171 2.3- 177

プロセス技術の今後の進歩

(ITRS1999, 2000Update より , http://public.itrs.net)

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

5

消費電力の増大によって

回路の誤動作信頼度の低下

温度が 10℃ 上昇すると故障率が 2 倍に

コストの上昇冷却、高性能な電源の必要性電力代、電池代

環境問題世界のプロセッサ生産 40 億個/年→1 プロセッサあたり 1W とすると、、、

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

6

CMOS 回路の消費電力

スイッチング電力貫通電流による電力リーク電流による電力

リーク電流貫通電流

信号遷移頻度動作周波数

電源電圧信号振幅負荷容量消費電力

:

:

:

:

:

:

:

:

)(

Lead

SC

t

CLK

DD

s

L

DDLeakDDSCCLKDDsLt

I

I

p

f

V

V

C

P

VIVIfVVCpP

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

7

スイッチング電力

負荷容量 CL の充放電により電力を消費VLSI の全消費電力の主な部分を占める

)( CLKDDsLtSW fVVCpP

CL

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

8

貫通電流による電力

入力信号が遷移する際に nMOS, pMOS が両方とも ON になる状態が存在

低 Vth プロセスで顕著

CL

fVVVIP SWtDDDDSCSC 3212

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

9

リーク電流による消費電力

MOSFET は理想的なスイッチではない

寄生ダイオードによるリーク

1 接合あたり 1fA 程度

サブスレショルドリーク低 Vth プロセスで顕著 CL

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

10

消費電力削減の指針

電源電圧の削減負荷容量の削減スイッチング頻度の削減クロック周波数の低減貫通電流、リーク電流の削減

DDLeakDDSCCLKDDsLt VIVIfVVCpP )(

性能を低下させずにこれらを行わなければならない性能を低下させずにこれらを行わなければならない

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

11

VLSI の低消費電力化技術

デバイスレベルプロセスの微細化SOI(Silicon On Insulator)

デバイスが埋め込み酸化膜上に形成されているため寄生容量が小さい

電源電圧、しきい電圧の低減低誘電率層間絶縁膜

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

12

VLSI の低消費電力化技術

回路レベルパス・トランジスタ・ロジック(負荷容量の低減)電源電圧・しきい電圧の低減グリッチの低減(スイッチング頻度の低減)多種のしきい電圧の利用(リーク電流の低減)

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

13

グリッチ (glitch) の削減

信号の入力タイミングのずれにより発生ノードが正しい論理レベルに落ち着く前に不要な信号遷移を起こす

すべての信号パスのバランスをとり、論理段数を減らす

++

+

A

BC

D

+

+

+

A

B

C

D

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

14

MTCMOS (Multithreshold-Voltage CMOS)

回路の動作状態に応じてリーク電流を制御アクティブ・モード: VDDV, GNDV が仮想的な電源線として動作スリープ・モード:高 Vt デバイスがリークをカット

b

a

a b

GND

VDD

VDDV

GNDV

Low Vt forperformance

High Vt for sleepcontrol device

S. Mutoh et al., IEEE Journal of Solid State Circuits, 1995.

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

15

Variable Threshold voltage CMOS (VTCMOS)

基板バイアス効果を利用アクティブ・モード:低 Vt

スリープ・モード:高 Vt

GND

VDD

Vpp

Vnn

Low Vt (Active)

High Vt (Stand-by)

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

16

低消費電力アーキテクチャ

電源電圧の最適化高性能から低消費電力へ

回路活性化率の削減必要のない回路は動かさない

低消費電力向けデータ表現方法データ表現、データ符号化などApplication specific な用途に効果

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

17

電源電圧の最適化

いかに性能を低下させずに消費電力を削減するか?

回路の高スループット化によって電源電圧を低下させる

回路の並列化、パイプライン化

2

2

1

)(

DD

DDTDD

DD

V

VVV

V

消費電力

遅延時間

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

18

並列化、パイプライン化による低消費電力化(1)

並列化、パイプライン化により、各タスクの処理時間を長くし、電源電圧を下げる。右の例では、処理時間が 2 倍になるので、電源電圧を下げることができる。

Time

Normal

Parallel

Pipeline

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

19

並列化、パイプライン化による低消費電力化(2)

一定のスループットが保たれることを要求される用途に適している: DSP 、Video 、 Audio

高性能の汎用プロセッサには向かない回路面積、追加コントローラなどの面でオーバーヘッド

Clock Vdd Area PowerUni- Processor 8.3MHz 3.3V 72mm̂ 2 10.8mW

Pipelined Multi- Processor 1.04MHz 1.1V 112mm̂ 2 250uW

[Source: Rabaey, Pedram, Low Power Design Methodologies]

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

20

Gated Clock

使わない回路は動かさない使わないブロックのローカルクロックを止める少なくとも 20%程度消費電力を削減可能性能面でのオーバーヘッドはなし

クロックスキューBA

CD

PLL(Clk Generator)

Clk

Enable_bEnable_a

Enable_c

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

21

データ伝送(バス)の低消費電力化

信号伝送の消費電力削減設計規則が小さくなるにつれて、配線での消費電力の閉める割合増バスなどの信号伝送路

ロジック部のローカル配線と比較して数桁大きな容量を持つ

0.05 0.1 0.2 0.5 1 21

10

100

1000

Design Rule [um]

Power dissipation perunit area [W/cm2]

Wiring

Inner circuit

Total Power

信号遷移頻度動作周波数電源電圧信号振幅負荷容量消費電力

:

:

:

:

:

:

)(

t

CLK

DD

s

L

CLKDDsLt

p

f

V

V

C

P

fVVCpP

バス、チップ I/O などの信号伝送路の信号遷移頻度を削減することで、有効に消費電力削減可能

バス、チップ I/O などの信号伝送路の信号遷移頻度を削減することで、有効に消費電力削減可能

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

22

VLSI における消費電力の分布

用途、設計手法によってかなり異なる今後はロジックから配線へシフトしていくと予想される

CMOS LSI論理 の電力分布

0% 20% 40% 60% 80% 100%

MPU1

MPU2

ASIC1

ASIC2クロックロジックメモリI/ O

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

23

データ伝送における低消費電力化技術

低振幅バス信号振幅を小さくすることで、消費電力削減アナログ回路を用いることが多い

データ符号化信号遷移が小さくなるようにデータを符号化する

アドレスバス、データバスのデータの性質を利用Application specific なケースに用いられることが多い

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

24

VLSIでの信号伝送におけるデータ符号化

データ符号化による低消費電力データ伝送技術

Reg.File

Block1

Block2

Block3

A bus

B bus

C bus

n

n

3 バス構成のプロセッサのモデル

junctioncapacitance

bus wiringcapacitance

gatecapacitance

Cj Cw Cg

バスの容量のモデル

CHIP

Bus

inte

rfac

eE

ncod

er /

Dec

oder

Bus

inte

rfac

eE

ncod

er /

Dec

oder

CHIP

bus lines

Small capacitance Small capacitance

Large Capacitance(relatively)

Relatively highpower dissipation

データ符号化を用いた低電力データ伝送方式の構成

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

25

データ表現

通常、負の数は 2 の補数を用いて表現される。特定の用途においてはこれが信号遷移数の増加につながる (DSP など )

数を 2 の補数ではなく、(符号)+(絶対値)で表すことによって遷移数を削減可能用途に応じて最適なデータ表現方法を選択する必要性

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

26

データ表現(2)

例: 8ビットの場合

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1

1 1 1 1 1 1 1 1

0 0 0 0 0 0 0 0

0

1

-1

0

2の補数表現

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1

1 0 0 0 0 0 0 1

0 0 0 0 0 0 0 0

(符号)+(絶対値)

符号

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

27

データの伝送順序の最適化

データの伝送順序が任意で構わない場最も信号遷移数が少なくなるように順序を入れ替える(キャッシュなど)

Instruction の順序を入れ替えるコンパイラ側で最適化を行うことが可能

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

28

バス反転符号化

連続する 2つの信号間の信号遷移数(ハミング距離)がバス幅の半数を超えるときに、データを反転し、 1ビットの冗長符号を用いて反転/非反転の情報を伝送する信号遷移頻度の削減は 10%程度

0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 1

1 1 1 1 1 1 1 1

0 0 0 0 0 0 0 0

符号化なし

0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 1

0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

バス反転符号化

冗長符号

0

0

1

0

反転

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

29

アドレスバスのデータ符号化(1)

アドレスバスの信号(アドレス)には時間的な依存関係が強いため、非常に効果的Gray コード値が+1のときに1ビットだけ遷移アドレスバスに適している

アドレス グレイコード000 000001 001010 011011 010100 110101 111110 101111 100

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

30

アドレスバスのデータ符号化(2)

T0 コード通常時はアドレスを送らないジャンプ、分岐などの時のみアドレスを送る冗長ビット 1ビット

INC or Jump

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

31

システムレベルでの低消費電力化

電源電圧の最適化動的な電源電圧制御

アクティブモード、スリープモードで電源電圧を変化INTEL SpeedStep, Transmeta Crusoe など

局所的な電源電圧最適化クリティカルパスとそれ以外異なる電圧間のインタフェース

Critical: High VDD

Not critical: Low VDD

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

32

低消費電力 CAD 技術

ゲートサイジング配置配線後にライブラリセルのゲートサイズを最適化、再配置配線の繰り返し50%近く消費電力を削減したケースも

消費電力を考慮した論理合成、配置配線従来は主に速度と面積のみクロック・ネットの最適化

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

33

適応型コード長符号化1. 入力データとコード帳の各コードとの論理 XOR を

とる2. それらの中で“ 1” の数が最も小さいものを選択する3. 前サイクルのバスデータとの論理 XOR をとり、そ

れをバスに伝送する4. コード帳を更新する

Codebook

MinimumHammingDistanceDetector

Input

Step 1

R

CK

Bus

Step 2

number of "1"is minimum

transition in datais minimum

Update

CodeWord

適応型コード帳符号化の符号化手法

100 0 0 0 0 0 0 0

11 11 11 11

0 0 0 1 0 0

001 1 1 1 1 1

0 1 1 1 0 0 0 0

0 0 01 1 1 1 1

0 0 0 0 0 0 1 1

111111 0 0

Codebook

000100

0 1 01 10

1 0 001 111 0

111CodeWord

invert

Data Input LWC

selected 00 0 0 0 0 0 0 0

11 11 11 11

0 0 0 1 0 0

01 1 1 1 1 1

0 1 1 1 0 0 0 0

0 0 01 1 1 1 1

0 0 0 0 0 0 1 1

111111 0 0

Codebook

000100

0 1 01 10

1 0 001 111 0

111CodeWord

invert

00100000 0 1 0 0 0 0 0 0

0

1

WriteBack

WriteBack

適応型コード帳符号化でのコード帳の更新方法

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

34

適応型コード帳符号化のシミュレーション

による評価ランダムデータに対するシミュレーション結果

“1” の出現率に対する計算結果

0.5

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

0 10 20 30 40 50 60 70 80 90 100

Ratio of 1 in data

Ratio of Transition

Bus Invert EncodedCodebook Encoded

Adaptive CodebookEncoded

適応型コード帳符号化により 25-50% 信号遷移頻度を削減することが可能

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

35

適応型コード帳符号化のシミュレーションによる評価( 4 )

PC のバスを流れるデータに対するシミュレーション結果

ロジックアナライザを用いて PC のバスを流れるデータを抽出し、入力データとして利用

encodingmethod

raw data

bus invert

generalizedbus invet

adaptivecode-book

signal transition

173587

data

157846

135012

117055

code word

0

3889

14203

14139

sum

173587

161735

149215

131194

%

100%

93%

86%

76%

PC のバスを流れるデータに対するシミュレーション結果

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

36

適応型コード帳符号化の回路評価

適応型コード帳符号化の符号化 /復号化チップの設計と検証

データ幅 16ビット

コード数 1 2 4 8 16, , , ,

測定モード

→符号化 復号化

符号化のみ

復号化のみ

いずれか選択可能

いずれか選択可能

適応型コード帳符号化 /復号化チップの諸元

Encoder DecoderInput

Encoded Data

Output

CN

3-State Buffer

チップの構成

プロセス 2 metal 0.5um CMOS層チップサイズ 4.8x4.8 [mm̂ 2]電源電圧 3.3 [V]トランジスタ数 50136 [Transistors]パッケージ 120pin PGA[13x13] (I/ O 76pin)

試作チップの特徴

Encoder

Decoder

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

37

微細プロセスにおける最適符号化方式の検討

各設計規則とバスの負荷容量 (1bit あたり ) における最適なデータ符号化方式

0

10

20

30

40

50

0.01 0.1 10.03 0.3

BusInvert

Code-book(16)

Code-book(8)

AdaptiveCode-book(4)

Design rule [um]

Bus load capacitance [pF/line]

Adaptive

Adaptive

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

38

今後の低消費電力設計技術の展望

デバイス、回路技術さらなる VDD の低下: VT 制御、リーク制御、SOI

将来のプロセス技術に適した新たな回路方式

アーキテクチャ、システム技術不要な電力をカット論理、回路、アーキテクチャ、システム、ソフトウェアを通じた低消費電力化

CAD 技術Low Power CAD

クロックデザインツール