記憶の階層III


5.3.2 仮想記憶の構成

キャッシュのデータの管理単位は キャッシュライン

仮想記憶ではPAGEを単位とする。通常 数KBYTE

ライトバック方式、フルアソシアティビィティ

仮想ページアドレス → 物理ページアドレスへの変換TABLEが主記憶上に用意。

5.3.3 ページフォールト

主記憶上にPAGEが無い場合、ページフォールトとなり、HDDから主記憶へPAGEをコピーする。

5.3.4 TLB

仮想アドレスから物理アドレスを生成する時には、ページテーブル(主記憶上の巨大な表)を引く。

すなわち、主記憶を余計にアクセスする必要があるので、いちいち表を引くのはナンセンス。

→パイプラインをまともに動かすことができない。

専用のページテーブル用のキャッシュを設けて、アドレス変換をする。 TLB (Translation lookaside buffer)

図1 TLB

5.4.1 キャッシュと仮想記憶

3つの構成方法

1) 直列型物理アドレスキャッシュ TLBで仮想アドレスを物理アドレスに変換した後に、物理アドレスを用いてキャッシュをアクセスする。

2) 並列型物理アドレスキャッシュ 

3) 仮想アドレスキャッシュ 

図2 メモリアクセス機構


宿題10

1)並列型物理アドレスキャッシュでは、ページ内オフセットを用いて、キャッシュのDATAとTAGを引く動作をするので、どのような条件が必要か?

2)TLBの遅延時間が4ns, キャッシュのDATARAMの遅延が10ns、キャッシュのTAGRAMの遅延が5ns、比較回路が3ns, マルチプレクサは2nsの遅延をそれぞれもち、その他の遅延が無視できるとすると。

直列型物理アドレスキャッシュで、仮想メモリアドレス入力から、キャッシュHITが判明して、キャッシュより必要なデータが出るまでの遅延時間はいくらか?

並列型物理アドレスキャッシュではどうか?

3)128Kバイトのダイレクトマップキャッシュのタグ部分がちょうど、仮想アドレスページになるメモリアクセス機構を考える。
ラインサイズ=32バイトとして、図2のメモリアクセス機構の図を各フィールドのビット数を明示して作成せよ。仮想/物理ともアドレス空間は32ビットとする。

 

以上