低消費電力プロセッサのための連鎖型データパスの提案II

低消費電力プロセッサのための連鎖型データパスの提案 II
A Chained Datapath Processor for low power processors: Part II
平尾岳志
Takeshi Hirao
安達琢
Taku Adachi
浅井哲也
Tetsuya Asai
本村真人
Masato Motomura
北海道大学大学院情報科学研究科
Graduate School of Information Science and Technology, Hokkaido University
1
はじめに
我々は前稿「低消費電力プロセッサのための連鎖型デー
タパスの提案 I」で、レジスタファイルで消費されるエネ
ルギーを削減する連鎖型データパスを提案した。本稿で
は逐次デコード型 CDP の一案として、2 オペランド方
式の命令セットを持つ RISC 型プロセッサに連鎖型デー
タパスを実装する。
御情報を保持する機構が必要になる。そのために、N 命
令分の制御情報を保持する N 個の D ラッチと N 進カウ
ンタからなる制御情報保持回路を構成した。N 進カウン
タを使って RF 側の D ラッチ 1 から D ラッチ N まで順
番に制御情報を格納し、各ラッチは連鎖型データパスが
N 命令実行を完了するまで制御情報を保持する。図 3 に
N=4 の場合の動作のタイミング図を示す。
逐次デコード型 CDP
逐次デコード型 CDP の IF, ID 部はベースプロセッ
サ (慶応大学天野研究室開発による POCO) と同じ構成
であり、CE 部のクロック clk の N 倍の周波数をもつク
ロック clkN で動作する。CDP の CE 部を以下に述べる
連鎖型データパスと制御情報保持回路で構成した。
2.1 連鎖型データパス
CDP 内の連鎖型データパスを図 1 に示す (構成要素:
ALU, 入力スイッチ (■), 出力スイッチ (□), 即値命令
のための符号拡張などで構成した N 個の swalu, データ
幅× 8 束のレジスタ出力伝播線 (レジスタファイル RF
の出力線で N 個の swalu を通り RF の入力に繋がって
いる), メモリアクセス命令のためのアクセスセレクタ)。
RF はデータ幅× 8 個の DFF で構成され、clk に同期
してレジスタ出力伝播線の値を取り込み、その値を出力
する。各 swalu はメモリに同時アクセスできないため、
clkN に同期する N 進カウンタとアクセスセレクタによ
りアクセスの順番付けを行い、逐次的にメモリにアクセ
スするようにした。メモリロード時には読み込みデータ
を一時レジスタに格納することにより、複数の読み込み
データを N 命令実行が完了するまで保持する。
上述のスイッチ (■, □) の内部構造を図 1 右下部に示
す。ソース及びディスティネーションレジスタアドレス
(rs,rd) で選択された入力スイッチは 8 束のレジスタ出力
伝播線のうちの 1 束を ALU の入力線とつなぐ。rd で選
択された出力スイッチは、ALU からの演算結果または
メモリから読み出されたデータを 1 束のレジスタ出力伝
播線につなぐ。このとき、出力データと前段のデータの
衝突を防ぐため、選択された出力スイッチは RF 側のレ
ジスタ出力伝播線を電気的に切り離す。このような動作
を行う swalu を図 1 のように N 個並べて、RF 側から順
に演算を実行することで連鎖型データパスを実装した。
2.2 制御情報保持回路
図 2 に示す ID/CE レジスタ (ID, CE 間パイプライン
レジスタ) は 1 個の swalu の制御情報しか保持できない。
よって、N 命令実行を完了するまで N 個の swalu の制
3
2
まとめ
IF, ID 部は変更せずに、RISC 型プロセッサに連鎖型
データパスを実装するためのスイッチ、制御情報保持回
路について説明した。今後は FPGA 上で検証を行い、連
鎖型データパスの有効性を調査する予定である。
即値
clk
レジスタ
書き換え
判定
rs
rd
デコーダ
サブルーチンコール
戻り先アドレス メモリロード
レジスタ
出力伝播線
デコーダ
r0
r1
r2
r3
RF r4
r5
r6
r7
0
符号拡張
1
ALU入力選択
0
a
b
ALU機能選択
1
EN1
y
swaluN
swalu1
一時 EN
レジスタ
1
N進カウンタ
デコーダ
EN1
アクセスセレクタ
一時 EN
レジスタ
2
N
2
1
N
ENN
メモリ書き込み1
メモリ読み込み1
1
連鎖型
データパス
N
読込
データ データ
アドレス 書込
書込
読込
1
0
データ
メモリ
0
1
スイッチ
図 1 連鎖型データパス
clk4
clkN
IF, ID
N進カウンタ
ID/CEレジスタ
4進
カウンタ
Dラッチ1
デコーダ
制御情報
保持回路
Dラッチ2
Dラッチ3
EN
EN
Dラッチ1 Dラッチ2
EN
DラッチN
図2
2
3
4
命令制御情報0
1
2
3
4
1
2
命令制御情報4
命令制御情報1
命令制御情報5
命令制御情報2
命令制御情報3
命令制御情報6
命令制御情報7
clk
clk
RF
Dラッチ4
1
連鎖型データパス
制御情報保持回路
RF
図3
命令0∼3結果
命令4∼7
結果
タイミング図 (N=4)
3
4