主存與cache的地址映射

cache的容量很小,它保存的內容只是主存內容的一個子集,且cache與主存的數據交換是以塊爲單位。地址映射即是應用某種方法把主存地址定位到cache中。地址映射方式有全相聯方式、直接方式和組相聯方式三種:


1.全相聯映射方式

  主存中一個塊的地址與塊的內容一起存於cache的行中,其中塊地址存於cache行的標記部分中。

  這種方法可使主存的一個塊直接拷貝到cache中的任意一行上,非常靈活。

  它的主要缺點是比較器電路難於設計和實現,因此只適合於小容量cache採用。

  全相聯映射的示意圖演示


2.直接映射方式

  這也是一種多對一的映射關係,但一個主存塊只能拷貝到cache的一個特定行位置上去。

  cache的行號i和主存的塊號j有如下函數關係: i=j mod m  (m爲cache中的總行數)

   直接映射方式的示意圖演示

  直接映射方式的優點是硬件簡單,成本低。

  缺點是每個主存塊只有一個固定的行位置可存放,容易產生衝突。因此適合大容量cache採用。

3.組相聯映射方式

  這種方式是前兩種方式的折衷方案。它將cache分成u組,每組v行,主存塊存放到哪個組是固定的,至

於存到該組哪 一行是靈活的,即有如下函數關係:m=u×v    組號 q=j mod u

   組相聯映射的示意圖演示

  組相聯映射方式中的每組行數v一般取值較小,這種規模的v路比較器容易設計和實現。而塊在組中的排

放又有一定的靈活性,衝突減少。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章