竹下世界塔の計算機よもやま話

アクセスカウンタ

zoom RSS ぼくのかんがえたさいきょうCPU エミュレーションのための機能

<<   作成日時 : 2010/05/17 21:17   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

 もうすぐ入院するので早めに書いておきます。

 このCPUが一般に流行ることは考えにくい。ではどうするか。他のプロセッサのエミュレーションをやりやすくするような機能をつけ、マネをするのだ。通常、エミュレーションはエミュレートする命令をロードし、プログラムでデコードし、実行することになる。これをソフトのみで行うとデータキャッシュのみのアクセスになってしまうので、せめてエミュレーションする命令を命令キャッシュから取れるようにできないだろうか。

PREFETCH [RS1+Rs2],#F 強制プリフェッチ動作
LDI [Rs1+Rs2],Rd - I1$経由のロード

強制プリフェッチ動作は、通常のプリフェッチ命令がフェッチのヒントであるのに対し、I1$上にデータを持ってくる。
LDI命令は通常のD1$からデータを持ってくるのではなく、I1$の該当するアドレスからデータを持ってくる。ストアはない。
その他にもI1$を制御するような命令が必要となるだろう。LD命令とLDI命令では持ってくるデータが異なる可能性があることにも注意。
エミュレーション用の命令列をI1$に用意することで、D1$を空けることができる。また、浮動小数点命令のデータを格納するのにも都合が良い。LDI命令に関しては、セットアソシアティブ型のキャッシュのWayを指定する工夫があってもよいが、そうするとますます実装依存になってしまうなあ。

これらを実現するためにはI1$からD1$へのバイパスが必要。また、前提として命令キャッシュ、データキャッシュが分かれている必要があり、そうでなければ動作上は問題ない。

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文




ぼくのかんがえたさいきょうCPU エミュレーションのための機能 竹下世界塔の計算機よもやま話/BIGLOBEウェブリブログ
文字サイズ:       閉じる