インテルのみ表示可能 — GUID: iga1409334284264
Ixiasoft
インテルのみ表示可能 — GUID: iga1409334284264
Ixiasoft
3.4.2.9. tlbacc レジスター
ビットフィールド | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
IG | C | R | W | X | G | PFN | |||||||||
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
PFN |
tlbaccレジスターへのwrctl命令の発行は、tlbaccレジスターに指定された値が書き込まれます。tlbmisc.WE = 1 の場合、wrctl命令も TLB 書き込み動作を開始し、TLB 書き込み動作は TLB エントリーを書き込みます。書き込まれる TLB エントリーは、pteaddr.VPNのラインの部分とtlbmisc.WAYフィールドで指定されます。書き込まれる値は、tlbaccレジスターに書き込まれた値とpteaddr.VPNおよびtlbmisc.PIDの値によって指定されます。また、TLB 書き込み動作では、tlbmisc.WAYがインクリメントされ、ソフトウェアは TLB エントリーを迅速に変更できます。
tlbaccレジスターへのrdctl命令の発行は、tlbaccレジスターの値が返されます。tlbaccレジスターは、ソフトウェアが TLB 読み取り操作をトリガーする際 ( つまり、wrctlがtlbmisc.RDを 1 に設定する場合 ) にハードウェアによって書き込まれます。
フィールド | 説明 | アクセス | リセット | 使用可能 |
---|---|---|---|---|
IG | IGはハードウェアによって無視され、オペレーティング・システム固有の情報を保持できます。ゼロとして読み出しますが、ゼロ以外として書き込めます。 | 読み出し / 書き込み | 0 | MMU のみ |
C | Cはデータキャッシュ可能フラグです。C = 0 の場合、データアクセスはキャッシュ不能です。C = 1 の場合、キャッシュ可能です。 | 読み出し / 書き込み | 0 | MMU のみ |
R | Rは読み出し可能フラグです。R = 0 の場合、ロード命令はメモリーへのアクセスを許可しません。R = 1 の場合、ロード命令はメモリーへのアクセスを許可します。 | 読み出し / 書き込み | 0 | MMU のみ |
W | Wは書き込み可能なフラグです。W = 0 の場合、ストアー命令はメモリーへのアクセスを許可しません。 W = 1 の場合、ストアー命令はメモリーへのアクセスを許可します。 | 読み出し / 書き込み | 0 | MMU のみ |
X | Xは実行可能フラグです。X = 0 の場合、命令は実行できません。X = 1 の場合、命令を実行することができます。 | 読み出し / 書き込み | 0 | MMU のみ |
G | Gはグローバルフラグです。G = 0 の場合、tlbmisc.PIDは TLB ルックアップに含まれます。G = 1 の場合、tlbmisc.PID は無視され。仮想ページナンバーのみが TLB ルックアップで使用されます。 | 読み出し / 書き込み | 0 | MMU のみ |
PFN | PFNは物理フレーム・ナンバー・フィールドです。全ての未使用の上位ビットはゼロである必要があります。 | 読み出し / 書き込み | 0 | MMU のみ |
tlbaccレジスター・フォーマットはオペレーティング・システムのページテーブルのエントリーで推奨されるフォーマットです。IGビットはwrctlからtlbaccへのハードウェアで無視され、tlbaccからのrdctlでゼロとして読み出されます。オペレーティング・システムは、IGビットを使用して、TLB 書き込み動作でこれらのビットをゼロにクリアーすることなく、オペレーティング・システム固有の情報を保持することができます。