高速緩沖存儲器部件結(jié)構(gòu)及原理解析
高速緩沖存儲器部件結(jié)構(gòu)及原理解析
高速緩存 CACHE用途
設(shè)置在 CPU 和 主存儲器之間,完成高速與 CPU交換信息,盡量避免 CPU不必要地多次直接訪問慢速的主存儲器,從而提高計算機系統(tǒng)的運行效率。
高速緩存 CACHE實現(xiàn)原理
把CPU最近最可能用到的少量信息(數(shù)據(jù)或指令)從主存復(fù)制到CACHE中,當(dāng)CPU下次再用到這些信息時,它就不必訪問慢速的主存,而直接從快速的CACHE中得到,從而提高了速度。
評價CACHE性能的關(guān)鍵指標(biāo)
要有足夠高的命中率,當(dāng)CPU需用主存中的數(shù)據(jù)時,多數(shù)情況下可以直接從CACHE中得到,盡量少讀主存儲器。稱二者之比為命中率。
一、CACHE的基本運行原理
1、 CACHE的存儲單元的組成
1位有效位:“0”表示該單元尚未使用,“1”表示數(shù)據(jù)有效

(1) CACHE單元不一定以字為單位與主存實現(xiàn)相互對應(yīng),因為存儲一個完整的主存地址占用位數(shù)太多。
(2) CACHE與主存交換信息時,不一定每次以一個主存字為單位進(jìn)行交換,常用的是以字塊的形式(cache line size)進(jìn)行數(shù)據(jù)傳送。
二、CACHE的3種映像方式
地址映像:把主存地址的數(shù)據(jù)復(fù)制到cache時,還要把該主存的地址經(jīng)過某種函數(shù)關(guān)系處理后寫進(jìn)CACHE的標(biāo)志字段,這一過程稱為CACHE的地址映像。
地址變換:在程序執(zhí)行時,要把主存地址變換為訪問CACHE的地址,這一過程稱為CACHE的地址變換。
這二者的處理方案是密切相關(guān)的。

全相聯(lián)映像方式的優(yōu)缺點
地址映像:寫入CACHE時,要將主存的全部地址寫入CACHE的標(biāo)志字段
地址變換:用讀主存的整個地址去與CACHE中的每一個單元的標(biāo)志字段進(jìn)行比較。
缺點:比較地址字段必須與整個CACHE中每一個單元的標(biāo)志字段都進(jìn)行比較,所以線路復(fù)雜,成本太高,難以實現(xiàn),只是適用于容量小的CACHE。
2、直接映射方式

直接映射方式
地址映像:寫入CACHE時,僅將主存的區(qū)段號寫入CACHE的標(biāo)志字段
地址變換:要將讀主存地址中的區(qū)段內(nèi)偏移地址去訪問CACHE的一個單元,只需用主存地址的區(qū)段號與標(biāo)志字段內(nèi)容進(jìn)行比較。

多路(兩路)組相聯(lián)方式實現(xiàn)原理
把 CACHE存儲器組織為同等容量的多體結(jié)構(gòu),例如2個存儲體。主存仍然劃分成容量等于每個CACHE存儲體的多個區(qū)段。
主存地址格式如下:
區(qū)段號 |
區(qū)段內(nèi)的偏移量 |
多路(兩路)組相聯(lián)方式
地址映像:寫入CACHE時,僅將主存的區(qū)段號寫入CACHE的標(biāo)志字段
地址變換:要將讀主存地址中的區(qū)段內(nèi)偏移地址去訪問每一個CACHE體的一個單元,只需用主存地址的區(qū)段號與標(biāo)志字段內(nèi)容進(jìn)行比較。
三、 CACHE存儲器實用中的幾個問題
CACHE存儲器的重要技術(shù)指標(biāo)是它的命中率,影響 CACHE 命中率的因素有:
1.CACHE 的容量與命中率的關(guān)系
雖然容量大一些好,但CACHE 容量達(dá)到一定大小之后,再增加其容量對命中率的提高并不明顯。
2、 Cache Line Size ( CACHE每次與內(nèi)存交換信息的單位量)與命中率的關(guān)系:
每次交換信息的單位量適中,不是以一個字為單位,而是以幾個字(稱為CACHE行容量,通常為4~32個字節(jié))在主存與CACHE之間實現(xiàn)信息傳送。
4.CACHE的不同映像方式與命中率的關(guān)系:
全相聯(lián)映像方式不適用
直接映像方式命中率低
多路組相聯(lián)方式性能/價格比更好
直接映像方式中CACHE容量為8K字,被分成1024組,每組8個字,同時,主存也分成8個字的組,1024組構(gòu)成一頁。主存的0組只能映射到CACHE的0組,主存的1組只能映射到CACHE的1組,依次類推。地址結(jié)構(gòu)如下:
5、寫CACHE的策略和對系統(tǒng)的影響
(1)一個外設(shè)向主存寫入了一個數(shù)據(jù),該主存單元原先的副本在CACHE中,出現(xiàn)不一致,此時最簡單的辦法就是把CACHE中相應(yīng)單元的有效位清除掉,當(dāng)CPU再次需這一主存單元時,只能從主存重新取得而不會使用CACHE中的舊值。
(2)改寫主存儲器的策略
若CPU改寫了 CACHE 一單元內(nèi)容后且尚未改變主存相應(yīng)單元內(nèi)容,則出現(xiàn)數(shù)據(jù)不一致性。兩種解決辦法:
第1.接下來直接改寫主存單元內(nèi)容。簡便易行, 但可能帶來系統(tǒng)運行效率不高的問題,該后未被使用。
第2.拖后改寫主存單元內(nèi)容,一直拖到有另外的設(shè)備要讀該內(nèi)容過時的主存單元時。首先停止這一讀操作,接下來改寫主存內(nèi)容,之后再起動已停下來的讀操作,否則不必改寫。
矛盾是如何檢查是否應(yīng)該改寫,通過監(jiān)視地址總線完成,記下無效單元地址用于比較。 控制復(fù)雜些,但可以提供更高系統(tǒng)的運行效率。
非常好我支持^.^
(11) 100%
不好我反對
(0) 0%
相關(guān)閱讀:
- [電子說] 晶體材料在電子行業(yè)的應(yīng)用 2024-12-04
- [電子說] 富士通鐵電白皮書,選擇鐵電存儲的4點理由以及技術(shù)原理分析 2024-12-04
- [電子說] 淺談DDR6 RAM設(shè)計挑戰(zhàn) 2024-12-03
- [電子說] 服務(wù)器數(shù)據(jù)恢復(fù)—多塊硬盤離線導(dǎo)致EVA存儲崩潰的數(shù)據(jù)恢復(fù)案例 2024-12-03
- [電子說] 三星電子宣布重大結(jié)構(gòu)調(diào)整 2024-12-03
- [電子說] 英飛凌推出業(yè)界首款太空級NOR Flash 2024-12-02
- [電子說] DDR內(nèi)存與SDRAM的區(qū)別 DDR4內(nèi)存與DDR3內(nèi)存哪個好 2024-11-29
- [電子說] 三星電子2025年重大組織及高管調(diào)整 2024-11-29
( 發(fā)表人:admin )