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.

ptc.e ─ トランスレーション・キャッシュ・エントリのパージ<br />

(Purge Translation Cache Entry)<br />

書式 : (qp) ptc.er 3 M47<br />

説明 : ローカル ・ プロセッサの命令トランスレーション ・ キャ ッシュとデータ ・ ト ランスレー<br />

ション・キャッシュから、 1 つ以上の変換エン ト リ がパー ジ される。 ト ランスレ ーシ ョ<br />

ン・レジスタとVHPT は変更されない。<br />

パージされる ト ランスレーション ・ キャ ッシュ ・ エント リの数は、 プロセッサによって<br />

異な る。 一部のプ ロ セ ッ サでは、 PTC.e を 1 回反復するだけで、 ト ランスレーション ・<br />

キャッシュ階層のすべてのレベルがパージされる。 その他のプロセッサでは、 命令トラ<br />

ンスレーシ ョ ン ・ キャ ッシュ とデータ ・ ト ランスレーシ ョ ン ・ キャ ッシュのすべてのレ<br />

ベル、 セッ ト、 アソシアティブをフラッシュするには、 ptc.e を数回反復する必要があ<br />

る。 GR r3 は、 各反復に関連する、 プ ロ セ ッ サ固有のパ ラ メ ー タ を指定す る。<br />

以下のループは、 すべてのプロセ ッサ ・ モデルで、 ト ランスレーシ ョ ン ・ キ ャ ッ シ ュ全<br />

体をフラッシュするよ うに定義されている。 ソフ ト ウェアは、 プロシージャ ・ インタ<br />

フェースを介してアクセスされる、 プロセッサに依存するレイヤを介して、 パラメータ<br />

を取得す る。 ル ー プの実行中に、 選択 さ れた領域レ ジ ス タ の状態が変更 さ れてはな ら な<br />

い。<br />

disable_interrupts();<br />

addr = base;<br />

for (i = 0; i < count1; i++) {<br />

for (j = 0; j < count2; j++) {<br />

ptc.e(addr);<br />

addr += stride2;<br />

}<br />

addr += stride1;<br />

}<br />

enable_interrupts();<br />

操作 : if (PR[qp]) {<br />

if (PSR.cpl != 0)<br />

privileged_operation_fault(0);<br />

if (GR[r 3 ].nat)<br />

register_nat_consumption_fault(0);<br />

tlb_purge_translation_cache(GR[r 3 ]);<br />

}<br />

割り込み : 特権操作フ ォ ル ト レ ジ ス タ NaT 参照フ ォ ル ト<br />

シリアル化 : ソ フ ト ウ ェ アは、 パ ー ジ に依存す る デー タ ・ ア ク セス ま たは非ア ク セス参照を発行す る<br />

前に、 デ ー タ のシ リ アル化操作を発行して、 パ ー ジ を完了しなければな ら ない。 ま た、<br />

ソ フ ト ウ ェ アは、 パ ー ジ に依存す る命令を フ ェ ッ チす る前に、 命令のシ リ アル化操作を<br />

発行しなければな ら ない。<br />

3:204 第 3 巻 : 命令リファレンス<br />

ptc.e

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!