2023年進一步深入CACHE_第1頁
2023年進一步深入CACHE_第2頁
2023年進一步深入CACHE_第3頁
2023年進一步深入CACHE_第4頁
2023年進一步深入CACHE_第5頁
全文預覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

2023年進一步深入CACHE下面是我為大家整理的進一步深入CACHE,供大家參考。

進一步深入CACHE所謂映象問題是指如何確定Cache中的內(nèi)容是主存中的哪一部分的拷貝,即必須應用某種函數(shù)把主存地址映象到Cache中定位,也稱地址映象。

當信息按這種方式裝入Cache中后,執(zhí)行程序時,應將主存地址變換為Cache地址,這個變換過程叫作地址變換。

地址映象方式通常采用直接映象、全相聯(lián)映象、組相聯(lián)映象三種。

每個主存地址映像到Cache中的一個指定地址的方式,稱為直接映象方式。

在直接映象方式下,主存中存儲單元的數(shù)據(jù)只可調(diào)入Cache中的一個位置,如果主存中另一個存儲單元的數(shù)據(jù)也要調(diào)入該位置則將發(fā)生沖突。

地址映像的方法一般是將主存空間按Cache的尺寸分區(qū),每區(qū)內(nèi)相同的塊號映像到Cache中相同的塊位置。

一般地,Cache被分為2N塊,主存被分為同樣大小的2M塊,主存與Cache中塊的對應關(guān)系可用如下映像函數(shù)表示:

j=imod2N。

式中,j是Cache中的塊號,i是主存中的塊號。

直接映象是一種最簡單的地址映像方式,它的地址變換速度快,而且不涉及其他兩種映像方式中的替換策略問題。

但是這種方式的塊沖突概率較高,當稱序往返訪問兩個相互沖突的塊中的數(shù)據(jù)時,Cache的命中率將急劇下降,因為這時即使Cache中有其他空閑塊,也因為固定的地址映像關(guān)系而無法應用。

主存中的每一個字塊可映像到Cache任何一個字塊位置上,這種方式稱為全相聯(lián)映像。

這種方式只有當Cache中的塊全部裝滿后才會出現(xiàn)塊沖突,所以塊沖突的概率低,可達到很高的Cache命中率;但實現(xiàn)很復雜。

當訪問一個塊中的數(shù)據(jù)時,塊地址要與Cache塊表中的所有地址標記進行比較已確定是否命中。在數(shù)據(jù)塊調(diào)入時存在著一個比較復雜的替換問題,即決定將數(shù)據(jù)塊調(diào)入Cache中什么位置,將Cache中那一塊數(shù)據(jù)調(diào)出主存。

為了達到較高的速度,全部比較和替換都要用硬件實現(xiàn)。

組相聯(lián)映象方式是直接映象和全相聯(lián)映象的一種折衷方案。

這種方法將存儲空間分為若干組,各組之間是直接映像,而組內(nèi)各塊之間則是全相聯(lián)映像。

它是上述兩種映像方式的一般形式,如果組的大小為1,即Cache空間分為2N組,就變?yōu)橹苯佑诚?;如果組的大小為Cache整個的尺寸,就變?yōu)榱巳嗦?lián)映像。

組相聯(lián)方式在判斷塊命中及替換算法上都要比全相聯(lián)方式簡單,塊沖突的概率比直接映像的低,其命中率也介于直接映像和全相聯(lián)映像方式之間。

Cache和存儲器一樣具有兩種基本操作,即讀操作和寫操作。

當CPU發(fā)出讀操作命令時,根據(jù)它產(chǎn)生的主存地址分為兩種情形:

一種是需要的數(shù)據(jù)已在Cache中,那么只需直接訪問Cache,從對應單元中讀取信息到數(shù)據(jù)總線;另一種是需要的數(shù)據(jù)尚未裝入Cache,CPU需從主存中讀取信息的同時,Cache替換部件把該地址所在的那塊存儲內(nèi)容從主存拷貝到Cache中;若Cache中相應位置已被字塊占滿,就必須去掉舊的字塊。有兩種:

1.FIFO(FirstInFirstOut)

策略總是把最先調(diào)入的Cache字塊替換出去,它不需要隨時記錄各個字塊的使用情況,較容易實現(xiàn);缺點是經(jīng)常使用的塊,如一個包含循環(huán)程序的塊也可能由于它是最早的塊而被替換掉。

2.LRU(LeastRecentlyUsed)

策略是把當前近期Cache中使用次數(shù)最少的那塊信息塊替換出去,這種替換算法需要隨時記錄Cache中字塊的使用情況。

LRU的平均命中率比FIFO高,在組相聯(lián)映像方式中,當分組容量加大時,LRU的命中率也會提高。

當CPU發(fā)出寫操作命令時,也要根據(jù)它產(chǎn)生的主存地址分為兩種情形:

一種是不命中時,只向主存寫入信息,不必同時把這個地址單元所在的整塊內(nèi)容調(diào)入Cache中;另一種是命中時,這時會遇到如何問題,通常有三種處理方式:

1.即CPU在向Cache寫入數(shù)據(jù)的同時,也把數(shù)據(jù)寫入主存以保證Cache和主存中相應單元數(shù)據(jù)的一致性,其特點是簡單可靠,但由于CPU每次更新時都要對主存寫入,速度必然受影響。

2.即CPU在更新Cache時不直接更新主存中的數(shù)據(jù),而是把更新的數(shù)據(jù)送入一個緩存器暫存,在適當?shù)臅r候再把緩存器中的內(nèi)容寫入主存。

在這種方式下,CPU不必等待主存寫入而造成的時延,在一定程度上提高了速度,但由于緩存器只有有限的容量,只能鎖存一次寫入的數(shù)據(jù),如果是連續(xù)寫入,CPU仍需要等待。

3.即CPU只向Cache寫入,并用標記加以注明,直到Cache中被寫過的塊要被進入的信息塊取代時,才一次寫入主存。

這種方式考慮到寫入的往往是中間結(jié)果,每次寫入主存速度慢而且不必要。

其特點是速度快,避免了不必要的冗余寫操作,但結(jié)構(gòu)上較復雜。

此外,還有一種設置不可Cache區(qū)(Non-cacheableBlock)

的方式,即在主存中開辟一塊區(qū)域,該區(qū)域中的數(shù)據(jù)不受Cache控制器的管理,不能調(diào)入Cac

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論