ヒストリ・ ベース・タグ比較キャッシュの設計と評価

ヒストリ・ベース・タグ比較
キャッシュの設計と評価
福岡大学
●田中 秀和 岩佐 崇史
井上 弘士 モシニャガ・ワシリー
九州大学
村上 和彰
発表手順






背景
研究目的
HBTCキャッシュ
実設計
評価
まとめ
2
背景
CPU
+
DRAM
Cache
Memory
チップ全体の消費エネルギーにおいて、キャッシュが占める割合
DEC 21164 CPU * StrongARM SA-110 CPU * Bipolar ECL CPU * *
25%
43%
50%
キャッシュの低消費エネルギー化は重要!
* Kamble, et. Al., “Analytical energy Dissipatiion Models for Low Power Caches”, ILPED’97
** Joouppi, et. Al., “A 300-MHz 115-W 32-b Bipolar ECL Microprocessor” ,IEEE Journal of Solid-State Circuits’93
3
背景
特に、命令キャッシュはアクセス頻度が高い
⇒消費電力に与える影響大
ARM920Tプロセッサにおける命令キャッシュの消費電力の割合†
25%
† S.
Segars, “Low Power Design Techniques for Microprocessors,
” ISSCC Tutorial, Feb. 2001.
命令キャッシュの低消費エネルギー化
ヒストリ・ベース・タグ比較(HBTC)キャッシュ
過去のタグ比較結果を再利用することにより参照
するウェイのみを活性化
性能に影響を与えることなく低消費エネルギー化を実現
4
現在の評価における問題点
0.8μmCMOSテクノロジを前提とした消費
エネルギー・モデルで評価
⇒最先端テクノロジでの有効性不明瞭
タグ比較結果再利用のための追加回路
考慮無し
⇒消費エネルギー・オーバヘッドが不明瞭
5
研究目的
最先端テクノロジを用いた実設計に基づく
HBTCキャッシュの消費エネルギー評価
手段

0.18μmCMOSテクノロジを用いた実設計



SRAMアレイ
リセット機能付メモリセル(WPおよび有効フラグ)
実設計に基づく消費エネルギー評価
6
従来型キャッシュとHBTCキャッシュ
従来型
タグ
HBTC
ライン
=
=
=
=
=
従来型
連想度:N
=
=
エンコード
エンコード
読み出されるタグ数
読み出されるライン数
=
N
N
HBTC
通常時
N
N
再利用時
0
1
7
HBTCキャッシュの内部構成
分岐予測結果
WP記録レジスタ
分岐命令アドレス
Biのアドレス
タグ比較結果
PBAレジスタ
ウェイ・ポインタ・テーブル
分岐命令アドレス
Biのアドレス
ウェイ
ポインタ
(WP)
分岐先アドレス
BTB (Branch Target Buffer)
Taken
Not
Taken
Bjのアドレス
I-Cache
有効フラグ
ウェイ
選択
WP
レジスタ
Inc
PC
分岐予測
結果
モード
制御回路
モード選択
8
HBTCキャッシュの内部構成
分岐予測結果
WP記録レジスタ
Biのアドレス
タグ比較結果
PBAレジスタ
ウェイ・ポインタ・テーブル
分岐命令アドレス
Biのアドレス
ウェイ
ポインタ
(WP)
分岐先アドレス
BTB (Branch Target Buffer)
Taken
Not
Taken
Bjのアドレス
通常実行
I-Cache
有効フラグ
ウェイ
選択
WP
レジスタ
Inc
PC
分岐予測
結果
モード
制御回路
モード選択
9
HBTCキャッシュの内部構成
分岐予測結果
WP記録レジスタ
Biのアドレス
タグ比較結果
PBAレジスタ
ウェイ・ポインタ・テーブル
分岐命令アドレス
Biのアドレス
ウェイ
ポインタ
(WP)
分岐先アドレス
BTB (Branch Target Buffer)
Taken
Not
Taken
Bjのアドレス
I-Cache
有効フラグ
ウェイ
選択
WP
レジスタ
Inc
PC
分岐予測
結果
モード
制御回路
モード選択
10
HBTCキャッシュの内部構成
分岐予測結果
WP記録レジスタ
Biのアドレス
タグ比較結果
PBAレジスタ
ウェイ・ポインタ・テーブル
分岐命令アドレス
Biのアドレス
ウェイ
ポインタ
(WP)
分岐先アドレス
BTB (Branch Target Buffer)
Taken
Not
Taken
Bjのアドレス
再利用
I-Cache
有効フラグ
ウェイ
選択
WP
レジスタ
Inc
PC
分岐予測
結果
モード
制御回路
モード選択
11
HBTCキャッシュの内部構成
分岐予測結果
WP記録レジスタ
分岐命令アドレス
タグ比較結果
PBAレジスタ
ウェイ・ポインタ・テーブル
分岐命令アドレス
Biのアドレス
ウェイ
ポインタ
(WP) キャッシュ・ミス
分岐先アドレス
BTB (Branch Target Buffer)
Taken
Not
Taken
Bjのアドレス
I-Cache
有効フラグ
ウェイ
選択
WP
レジスタ
Inc
PC
分岐予測
結果
モード
制御回路
モード選択
12
消費エネルギー式
1個のタグ読出しに
要するエネルギー
キャッシュ・アクセス当たりの アクセス時に
読出されるタグ数
消費エネルギー
1個のライン読出しに
要するエネルギー
デコーダ
タグ
Ecache = Dnum × Edec + Tnum × Etag
+ Lnum × Eline + Ebtb
ライン
アクセス時に
駆動されるデコーダ数
1個のデコーダ駆動に
要するエネルギー
BTB拡張部分に
要する消費エネルギー
アクセス時に
読出されるライン数
13
消費エネルギー式
実設計
Ecache = Dnum × Edec + Tnum × Etag
+ Lnum × Eline + Ebtb
シミュレーション
実設計+シミュレーション
14
実設計
0.18μmCMOSテクノロジを用いた実設計
 SRAMアレイ
 リセット機能付メモリセル
15
入力アドレス
BIT
アドレス・デコーダ
SRAMアレイ(1way)
BIT
・
・
・
メモリ・セル
Word line
プロセッサへ出力
16
リセット機能付メモリセル
INVALID
INVALID
Word line
BIT
BIT
Reset Transistors
17
リセット機能付メモリセル
BIT INVALID
INVALID BIT
Word line
Reset Transistors
18
設計結果
命令キャッシュ[pJ]
BTB拡張部分 [pJ]
Edec
82.2
Ewpwt
75.8
Etag
63.6
Ewprd
229.1
Eline
814.7
Ewpinv
160.0
Ewpwt :1回のWP書込みに要する消費エネルギー
Ewprd:1回のWP読出しに要する消費エネルギー
Ewpinv :1回のWP無効化処理に要する消費エネルギー
19
評価
評価環境
SimpleScalar
アウト・オブ・オーダ実行
スカラ度4
ベンチマークプログラム
SPEC95整数プログラム
Mediabench
命令キャッシュ
キャッシュ・サイズ→16KB
ライン・サイズ→32B
連想度→4
BTB
連想度→4
512エントリ
ウェイポインタ→各4個
キャッシュ
シミュレー
タ
評価方法
ベンチマーク
プログラム
SimpleScalar
消費エネルギー
命令キャッシュ
WP及び有効フラグ
評価項目
プログラム実行に要するキャッシュの総消費エネルギー
20
12
4.
m
88
ks
12 im
9. 6.g
co
c
m c
pr
es
s
13
13 0.l
2 i
a d .ij p
pc eg
m
a d _e
pc nc
m
_d
ep ec
ic
_
ep enc
i
m c_d
pe ec
g
m 2_e
pe nc
g
pe 2_d
gw ec
p e it_e
gw nc
it_
de
c
12
消費エネルギー
HBTCキャッシュの消費エネルギー
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
Ebtb
Etag
Eline
Edec
ベンチマークプログラム
最大約63%削減
21
まとめ
0.18μmCMOSプロセスを用いた
HBTCキャッシュの詳細な評価
従来型キャッシュに比べ、最大約63%の低消費エネルギー化
今後の課題
 モード制御回路の設計
 HBTCキャッシュのより詳細な評価
 面積、アクセス時間、消費エネルギーのオーバヘッド
22