Cache訪問

全相聯映射方式的優點是Cache的空間利用率高,但缺點是相聯存儲器龐大,比較電路複雜,因此只適合於小容量的Cache之用。 

 

 

 

訪問過程: 當一個主存塊調入 Cache中時,會同時將主存地址的T標誌存入Cache塊的標誌字段中。當CPU送來一個訪存地址時,首先,根據該主存地址的C字段找到Cache的相 應塊,然後將該塊標誌字段中存放的標誌與主存地址的T標誌進行比較,若相符,說明主存的塊目前已調入該Cache塊中,則命中,於是使用主存地址的W字段 訪問該Cache塊的相應字單元;若不相符,則未命中,於是使用主存地址直接訪主存。

 

評價: 直接相聯映射方式的優點 是比較電路最簡單,但缺點是Cache塊衝突率較高,從而降低了Cache的利用率。由於主存的每一塊只能映射到Cache的一個特定塊上,當主存的某塊 需調入Cache時,如果對應的Cache特定塊已被佔用,而Cache中的其它塊即使空閒,主存的塊也只能通過替換的方式調入特定塊的位置,不能放置到 其它塊的位置上。 

 

 

 

當一個主存塊調入Cache中時,會同時將其主存塊地址的前s位寫入一個由相聯存儲器實現的快表的對應Cache塊項的s字段中。例如,設主存的某塊調入Cache的第1組的第2塊中,則在快表的組1第3項的s字段會登記下該主存塊地址的前s位。

 

 CPU訪存時,首先,根據主存地址中的主存塊號中的u字段找到快表的相應組,然後將該組的所有項的前s位同時與主 存地址的s字段作比較,若相符,則說明主存塊在Cache中,於是將Cache中該項的v字段取出,作爲Cache地址的v字段,而Cache地址的u、 W字段直接由主存地址的u、W字段形成,最後形成一個完整的訪Cache地址。當然,若比較結果是沒有相符項,則未命中,由主存地址直接訪主存。

 

 其實,全相聯映射和直接相聯映射可以看成是組相聯映射的兩個極端情況。若u=0,v=C,則Cache只包含1組,此即全相聯映射方式;若u=C,v=0,則組內的塊數等於1,此即直接相聯映射。

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