Click here to load reader
Upload
hirotaka-kawata
View
630
Download
9
Embed Size (px)
Citation preview
システム情報工学研究科 産学間連携推進室
情報学群 情報科学類 川田裕貴 伊藤剛浩
独立行政法人 情報処理推進機構 2011年度未踏人材発掘育成事業 採択プロジェクト
Open Design Computer?No Intel.No ARM.No MIPS.
The "mist32" Architecture.All new open design processor.
プロジェクトの特徴
開発ツールを一通り揃える
製品利用する際に無いと障壁になる
再利用可能な状態でソース・仕様を公開
プロセッサの HDL は BSD ライセンス
モバイル機器に使われるようなものを想定
OSが乗ったタブレットやスマホなど
mist32 アーキテクチャ
ハードウェアとソフトウェアの協調動作
OS を支援する機能を多く載せ高速化
アウトオブオーダー実行
回路規模は大きくなるが高速化できる
独自の命令セット
アウトオブオーダー実行に最適化
命令レベル並列化・OSの支援
少ないハードウェアでOoOを実現フラグの見直しにより命令間依存を軽減
Rob/Rs/CDBの小型化が実現
OSの機能をハードウェアでサポート
コンテキストスイッチのハードウェア実装
コンテキストをキャッシュを用いたLSに格納
ハードウェアポーリングと割り込みの融合
搭載している FPGA
ALTERA Cyclone IV EP4CE115[Terasic DE2-115 Development Board]
mist1032sa プロセッサ
Load/Store 型 RISC スーパースカラ
2命令同時フェッチ/4命令同時実行片方向の分岐予測と投機的実行レジスタリネーミングTomasulo のアルゴリズム (OoO)
with Flag 命令の撤廃 (OoO 最適化)
mist32 の位置づけ
性能の目安→↑ビット数
アセンブラとバイナリ00000470 <genrand_int31>:
470: 11 00 03 c0 push rbase
474: 11 00 03 e0 push rret
478: 18 00 03 c0 srspr rbase
47c: 0e e0 03 a0 lih rtmp,0x0
480: 0d 40 47 a0 wl16 rtmp,0x220
484: 20 70 03 e2 movepc rret,8
488: 14 40 03 a0 b rtmp,#al
48c: 08 30 00 01 shr r0,0x1
490: 12 00 03 e0 pop rret
494: 12 00 03 c0 pop rbase
498: 14 40 03 e0 b rret,#al
call
return
32bitaddr
現状の全体図
開発規模について
MIST1032SAプロセッサ + ペリフェラル
行数 : 81,000行使用LE : 101,800LE [in-order: 32,000LE]
開発環境
GCC : 3,100行binutils(gas, ld) : 1,800行シミュレータ : 1,500行Newlib : 1,000行
これから...
回路規模の縮小化
DE2-115 デモボードへ搭載可能な規模に
インオーダーコアの制作 → Done!とりあえず規模の小さいものも作る
OS をはやく載せられる状態に
GCC のバグ修正、OS 支援機能テスト
Web などの資料
プロセッサの仕様と移植に関する資料open-arch.org
ソースコードgithub.com/technogithub.com/cpulabs