16.02.2013 Aufrufe

24531904_j

24531904_j

24531904_j

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

0<br />

リソースと依存関係のセマンティックス 5<br />

5.1 リソースの読み込みおよび書き込み<br />

Itanium ® 命令は、 (1) 修飾プ レデ ィ ケ ー ト が 1 の場合、 (2) 修飾プ レデ ィ ケ ー ト が存在しな<br />

い場合、 (3) 修飾プ レデ ィ ケ ー ト が 0 であ って も それが リ ソ ー スを読み込む命令の一つで<br />

ある場合、 (4) 命令の実行がその リ ソ ースに依存している場合に リ ソ ースのリーダ と呼ば<br />

れる。<br />

Itanium 命令は、 (1) 修飾プ レ デ ィ ケ ー ト が 1 の場合、 (2) 命令が修飾プ レデ ィ ケ ー ト を持<br />

たない場合、 (3) 修飾プ レデ ィ ケ ー ト が 0 であ っ て も リ ソ ー ス を書き込む場合、 (4) 命令の<br />

実行に よ っ てその リ ソ ー スが書き込 ま れる場合に リ ソ ー スのライタ と呼ばれる。<br />

Itanium 命令は、 次の場合であ っ て も リ ソ ー スの リ ー ダ ま たは ラ イ タ と 呼ばれる。 (1) その<br />

リ ソ ー ス に依存する と き があ る場合、 (2) リ ソースを読み込むのか書き込むのかを静的に<br />

決定で き ない場合。 例えば、 cover が CR[IFS] を書き込むのは PSR.ic が 0 の場合のみで<br />

あ る。 しかし、 依存関係の目的で、 cover は常に リ ソースを書き込むものであるかのよ<br />

う に扱われる。 なぜな ら 、 こ の条件は静的に決定で き ないか ら であ る。 一方 rsm は、 命<br />

令内の即値 と してエン コ ー ド さ れる マス ク に応じ て、 条件付き で PSR にい く つかのビッ トを書き込む。 書き込まれる PSR ビッ トは、 エンコードされた命令を検査して決定でき<br />

る。 そのためこの命令は、 対応するマスク・ビッ ト ・セットを持つビッ トを書き込むもの<br />

と してのみ扱われる。 こ れ ら の一般規則に対する例外はすべて、 こ の付録で説明してい る。<br />

5.2 依存関係とシリアル化<br />

RAW ( リード・アフター・ライト ) の依存関係は、 先頭のイベン ト が リ ソ ースのラ イ タで<br />

あり、 2 番目の イベン ト が同じ リ ソ ー スの リ ー ダであ る よ う な 2 つのイベン ト のシーケン<br />

スである。 イベン ト の例と しては、 命令、 割り込み、 または命令ス ト リ ーム ・ フ ェ ッチや<br />

VHPT ウ ォ ー ク の よ う な リ ソ ー スのその他の 「使用」 な ど がある。 表 5-2 は、 命令の リ ー<br />

ダお よ び ラ イ タ に基づ く 依存関係のみを示してい る。<br />

WAW ( ライト ・アフター ・ ライト ) の依存関係は、 両方のイベン ト が問題の リ ソ ースを<br />

書き込むよ うな 2 つのイベン ト のシーケンスである。 イベン ト の例としては、 命令、 割り<br />

込み、 ま たは リ ソ ー スのその他の 「更新」 などがある。 表 5-3 は、 命令のライタに基づ く<br />

依存関係のみを示している。<br />

WAR ( ライ ト ・アフター ・ リード ) の依存関係は、 先頭の命令が リ ソ ー スの リ ー ダであ<br />

り、 2 番目の命令が同じ リ ソ ー スの ラ イ タ であ る よ う な 2 つの命令のシーケンスである。<br />

こ の よ う な依存関係は、 表 5-4 で示す場合を除いて常に許可され、 命令の リ ーダおよ びラ<br />

イタに関連するものだけが含まれる。<br />

RAR ( リード ・アフター・ リード ) の依存関係は、 両方の命令が同じ リ ソ ー スの リ ー ダで<br />

あるよ うな 2 つの命令のシ ー ケ ン スであ る。 こ の よ う な依存関係は常に許可 さ れる。<br />

一般に RAW および WAW の依存関係は、 特定のタ イプのシ リ アル化イベン ト ( 先頭の書<br />

き込み命令の後の暗黙、 デー タ、 または命令のシ リ アル化 ) なしでは許可されない ( シリ<br />

アル化の詳細は、 第 2 巻、 第 1 部の 3.2 節 「シ リアル化」 を参照 )。 こ の付録の表およ び<br />

関連す る規則では、 リ ソ ー スの リ ー ダ と ラ イ タ について詳細に説明す る。 ま た、 観察対象<br />

の依存関係で必要なシ リ アル化や必要なシ リ アル化が満たされない場合に起こ り得る結<br />

果について も 説明す る。特定の未許可の依存関係を検査しないマシ ンの コ ー ド を タ ー ゲ ッ<br />

ト にする場合であっても、 コー ド ・シーケンスはアーキテクチャ的には未定義と見なされ<br />

第 3 巻 : リソースと依存関係のセマンティックス 3:343

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!