WIKI使用導航
站長百科導航
站長專題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢
- 虛擬主機
- cPanel
- 網(wǎng)址導航專題
- 云計算
- 微博營銷
- 虛擬主機管理系統(tǒng)
- 開放平臺
- WIKI程序與應用
- 美國十大主機
高速緩沖存儲器
高速緩沖存儲器(Cache)其原始意義是指存取速度比一般隨機存取記憶體(RAM)來得快的一種RAM,一般而言它不像系統(tǒng)主記憶體那樣使用DRAM技術(shù),而使用昂貴但較快速的SRAM技術(shù),也有快取記憶體的名稱。
Cache簡介[ ]
cache高速緩沖存儲器是一種特殊的存儲器子系統(tǒng),其中復制了頻繁使用的數(shù)據(jù)以利于快速訪問。存儲器的高速緩沖存儲器存儲了頻繁訪問的 RAM 位置的內(nèi)容及這些數(shù)據(jù)項的存儲地址。當處理器引用存儲器中的某地址時,高速緩沖存儲器便檢查是否存有該地址。如果存有該地址,則將數(shù)據(jù)返回處理器;如果沒有保存該地址,則進行常規(guī)的存儲器訪問。因為高速緩沖存儲器總是比主RAM 存儲器速度快,所以當 RAM 的訪問速度低于微處理器的速度時,常使用高速緩沖存儲器。
Cache結(jié)構(gòu)組成[ ]
高速緩沖存儲器是存在于主存與CPU之間的一級存儲器, 由靜態(tài)存儲芯片(SRAM)組成,容量比較小但速度比主存高得多, 接近于CPU的速度。主要由三大部分組成:
- Cache存儲體:存放由主存調(diào)入的指令與數(shù)據(jù)塊。
- 地址轉(zhuǎn)換部件:建立目錄表以實現(xiàn)主存地址到緩存地址的轉(zhuǎn)換。
- 替換部件:在緩存已滿時按一定策略進行數(shù)據(jù)塊替換,并修改地址轉(zhuǎn)換部件
Cache作用[ ]
在計算機技術(shù)發(fā)展過程中,主存儲器存取速度一直比中央處理器操作速度慢得多,使中央處理器的高速處理能力不能充分發(fā)揮,整個計算機系統(tǒng)的工作效率受到影響。有很多方法可用來緩和中央處理器和主存儲器之間速度不匹配的矛盾,如采用多個通用寄存器、多存儲體交叉存取等,在存儲層次上采用高速緩沖存儲器也是常用的方法之一。很多大、中型計算機以及新近的一些小型機、微型機也都采用高速緩沖存儲器。 高速緩沖存儲器的容量一般只有主存儲器的幾百分之一,但它的存取速度能與中央處理器相匹配。根據(jù)程序局部性原理,正在使用的主存儲器某一單元鄰近的那些單元將被用到的可能性很大。因而,當中央處理器存取主存儲器某一單元時,計算機硬件就自動地將包括該單元在內(nèi)的那一組單元內(nèi)容調(diào)入高速緩沖存儲器,中央處理器即將存取的主存儲器單元很可能就在剛剛調(diào)入到高速緩沖存儲器的那一組單元內(nèi)。于是,中央處理器就可以直接對高速緩沖存儲器進行存取。在整個處理過程中,如果中央處理器絕大多數(shù)存取主存儲器的操作能為存取高速緩沖存儲器所代替,計算機系統(tǒng)處理速度就能顯著提高。
Cache原理[ ]
- 高速緩沖存儲器通常由高速存儲器、聯(lián)想存儲器、替換邏輯電路和相應的控制線路組成。在有高速緩沖存儲器的計算機系統(tǒng)中,中央處理器存取主存儲器的地址劃分為行號、列號和組內(nèi)地址三個字段。于是,主存儲器就在邏輯上劃分為若干行;每行劃分為若干的存儲單元組;每組包含幾個或幾十個字。高速存儲器也相應地劃分為行和列的存儲單元組。二者的列數(shù)相同,組的大小也相同,但高速存儲器的行數(shù)卻比主存儲器的行數(shù)少得多。
- 聯(lián)想存儲器用于地址聯(lián)想,有與高速存儲器相同行數(shù)和列數(shù)的存儲單元。當主存儲器某一列某一行存儲單元組調(diào)入高速存儲器同一列某一空著的存儲單元組時,與聯(lián)想存儲器對應位置的存儲單元就記錄調(diào)入的存儲單元組在主存儲器中的行號。
- 當中央處理器存取主存儲器時,硬件首先自動對存取地址的列號字段進行譯碼,以便將聯(lián)想存儲器該列的全部行號與存取主存儲器地址的行號字段進行比較:若有相同的,表明要存取的主存儲器單元已在高速存儲器中,稱為命中,硬件就將存取主存儲器的地址映射為高速存儲器的地址并執(zhí)行存取操作;若都不相同,表明該單元不在高速存儲器中,稱為脫靶,硬件將執(zhí)行存取主存儲器操作并自動將該單元所在的那一主存儲器單元組調(diào)入高速存儲器相同列中空著的存儲單元組中,同時將該組在主存儲器中的行號存入聯(lián)想存儲器對應位置的單元內(nèi)。
- 當出現(xiàn)脫靶而高速存儲器對應列中沒有空的位置時,便淘汰該列中的某一組以騰出位置存放新調(diào)入的組,這稱為替換。確定替換的規(guī)則叫替換算法,常用的替換算法有:最近最少使用法(LRU)、先進先出法(FIFO)和隨機法(RAND)等。替換邏輯電路就是執(zhí)行這個功能的。另外,當執(zhí)行寫主存儲器操作時,為保持主存儲器和高速存儲器內(nèi)容的一致性,對命中和脫靶須分別處理:
- 寫操作命中時,可采用寫直達法(即同時寫入主存儲器和高速存儲器)或?qū)懟胤ǎ粗粚懭敫咚俅鎯ζ鞑擞浽摻M修改過。淘汰該組時須將內(nèi)容寫回主存儲器);
- 寫操作脫靶時,可采用寫分配法(即寫入主存儲器并將該組調(diào)入高速存儲器)或?qū)懖环峙浞ǎ粗粚懭胫鞔鎯ζ鞯粚⒃摻M調(diào)入高速存儲器)。高速緩沖存儲器的性能常用命中率來衡量。影響命中率的因素是高速存儲器的容量、存儲單元組的大小、組數(shù)多少、地址聯(lián)想比較方法、替換算法、寫操作處理方法和程序特性等。