第5章存儲層次_第1頁
第5章存儲層次_第2頁
第5章存儲層次_第3頁
第5章存儲層次_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、第5章 存儲層次1. 單級存儲器的主要矛盾是什么?通常采取什么方法來解決? 主要矛盾:(1) 速度越快,每位價格就越高。 (2) 容量越大,每位價格就越低。 (3) 容量越大,速度越慢。采取多級存儲層次方法來解決。2. 評價存儲層次的主要參數(shù)有哪些?存儲層次的平均每位價格、命中率或失效率、平均訪問時間。3. “Cache-主存”和“主存-輔存”層次的主要區(qū)別是什么? 存儲層次比較項(xiàng)目“Cache-主存”層次“主存-輔存”層次目的為了彌補(bǔ)主存速度的不足為了彌補(bǔ)主存容量的不足存儲管理的實(shí)現(xiàn)全部由專用硬件實(shí)現(xiàn)主要由軟件實(shí)現(xiàn)訪問速度的比值(第一級比第二級)幾比一幾萬比一典型的塊(頁)大小幾十個字節(jié)幾百

2、到幾千個字節(jié)CPU對第二級的訪問方式可直接訪問均通過第一級不命中時CPU是否切換不切換切換到其他進(jìn)程4. 在存儲層次中應(yīng)解決哪四個問題? (1)映像規(guī)則:當(dāng)把一個塊調(diào)入高一層存儲器時,可以放到哪些位置上。 (2)查找算法:當(dāng)所要訪問的塊在高一層存儲器中時,如何找到該塊。 (3)替換算法:當(dāng)發(fā)生失效時,應(yīng)替換哪一塊。 (4)寫策略:當(dāng)進(jìn)行寫訪問時,應(yīng)進(jìn)行哪些操作。 5. 地址映像方法有哪幾種?它們各有什么優(yōu)缺點(diǎn)? (1)全相聯(lián)映像。實(shí)現(xiàn)查找的機(jī)制復(fù)雜,代價高,速度慢。Cache空間的利用率較高,塊沖突概率較低,因而Cache的失效率也低。(2)直接映像。實(shí)現(xiàn)查找的機(jī)制簡單,速度快。Cache空間

3、的利用率較低,塊沖突概率較高,因而Cache的失效率也高。(3)組相聯(lián)映像。組相聯(lián)是直接映像和全相聯(lián)的一種折中。6. 組相聯(lián)Cache比相同容量的直接映像Cache的失效率低。由此是否可以得出結(jié)論:采用組相聯(lián)Cache一定能帶來性能上的提高?為什么? 不一定。因?yàn)榻M相聯(lián)命中率的提高是以增加命中時間為代價的,組相聯(lián)需要增加多路選擇開關(guān)。7. Cache中,有哪兩種實(shí)現(xiàn)并行查找的方法?(1)用相聯(lián)存儲器實(shí)現(xiàn)。 (2)用單體多字存儲器和比較器來實(shí)現(xiàn)。8. 替換算法有哪幾種?它們各有什么優(yōu)缺點(diǎn)?(1)隨機(jī)法:簡單、易于用硬件實(shí)現(xiàn),但這種方法沒有考慮Cache塊過去被使用的情況,反映不了程序的局部性,所

4、以其失效率比LRU的高。(2)先進(jìn)先出法:容易實(shí)現(xiàn)。它雖然利用了同一組中各塊進(jìn)入Cache的順序這一“歷史”信息,但還是不能正確地反映程序的局部性。(3)最近最少使用法LRU:失效率最低。但是LRU比較復(fù)雜,硬件實(shí)現(xiàn)比較困難。9. 寫策略主要有哪兩種?它們各有什么優(yōu)點(diǎn)? (1) 寫直達(dá)法:易于實(shí)現(xiàn),而且下一級存儲器中的數(shù)據(jù)總是最新的。(2) 寫回法:速度快,寫操作能以Cache存儲器的速度進(jìn)行。而且對于同一單元的多個寫最后只需一次寫回下一級存儲器,有些“寫”只到達(dá)Cache,不到達(dá)主存,因而所使用的存儲器頻帶較低。10. 在寫回法中,可采用什么方法減少在替換時塊的寫回? 常采用“污染位”標(biāo)志。

5、即為Cache中的每一塊設(shè)置一個“污染位”(設(shè)在與該塊相應(yīng)的目錄表項(xiàng)中),用于指出該塊是“臟”的(被修改過)還是干凈的(沒被修改過)。替換時,若被替換的塊是干凈的,則不必寫回下一級存儲器,因?yàn)檫@時下一級存儲器中相應(yīng)塊的內(nèi)容與Cache中的一致。11. 當(dāng)發(fā)生Cache寫失效時,是否調(diào)入相應(yīng)的塊,有哪兩種選擇?(1)按寫分配法:寫失效時,先把所寫單元所在的塊調(diào)入Cache,然后再進(jìn)行寫入。這種方法也稱為寫時取方法。(2)不按寫分配法:寫失效時,直接寫入下一級存儲器而不將相應(yīng)的塊調(diào)入Cache。這種方法也稱為繞寫法。12. 按照Cache產(chǎn)生失效的原因不同,可以把失效分為哪三類? 強(qiáng)制性失效、容量

6、失效、沖突失效。13. 3C失效與Cache的相聯(lián)度、容量有什么樣的關(guān)系? 相聯(lián)度越高,沖突失效就越少。 強(qiáng)制性失效和容量失效不受相聯(lián)度的影響。 強(qiáng)制性失效不受Cache容量的影響,但容量失效卻隨著容量的增加而減少。 2:1的Cache經(jīng)驗(yàn)規(guī)則:大小為N的直接映像Cache的失效率約等于大小為N/2的兩路組相聯(lián)Cache的失效率。14. 增加Cache塊大小一定會降低失效率嗎?不一定。對于給定的Cache容量,當(dāng)塊大小增加時,失效率開始是下降,后來反而上升了。主要因?yàn)樵黾訅K大小會產(chǎn)生雙重作用。一方面它減少了強(qiáng)制性失效;另一方面,可能會增加沖突失效。15偽相聯(lián)的基本思想是什么?采用這種方法時,在

7、命中情況下,訪問Cache的過程和直接映像Cache中的情況相同;而發(fā)生失效時,在訪問下一級存儲器之前,會先檢查Cache另一個位置(塊),看是否匹配。確定這個另一塊的一種簡單的方法是將索引字段的最高位取反,然后按照新索引去尋找偽相聯(lián)組中的對應(yīng)塊。如果這一塊的標(biāo)識匹配,則稱發(fā)生了偽命中。否則,就只好訪問下一級存儲器。16偽相聯(lián)的優(yōu)點(diǎn)是什么?偽相聯(lián)既能獲得多路組相聯(lián)Cache的低失效率又能保持直接映像Cache的命中速度。17. 降低Cache失效率有哪些方法? 增加Cache塊大小、提高相聯(lián)度、增加Cache的容量、Victim Cache、偽相聯(lián)Cache、硬件預(yù)取技術(shù)、由編譯器控制的預(yù)取、

8、編譯器優(yōu)化。18. 減少Cache失效開銷有哪些方法?(1) 讓讀失效優(yōu)先于寫。 (2) 寫緩沖合并。(3) 請求字處理技術(shù)。 (4) 非阻塞Cache或非鎖定Cache技術(shù)。(5) 采用二級Cache。19. 減少Cache命中時間有哪些方法?容量小且結(jié)構(gòu)簡單的Cache、虛擬Cache 、Trace Cache、Cache訪問流水化。20. 請求字處理技術(shù)有哪兩種具體的實(shí)現(xiàn)方法? 盡早重啟動: 在請求字沒有到達(dá)時,CPU處于等待狀態(tài)。一旦請求字到達(dá),就立即發(fā)送給CPU,讓等待的CPU盡早重啟動,繼續(xù)執(zhí)行 請求字優(yōu)先: 調(diào)塊時,首先向存儲器請求CPU所要的請求字。請求字一旦到達(dá),就立刻送往C

9、PU,讓CPU繼續(xù)執(zhí)行,同時從存儲器調(diào)入該塊的其余部分。請求字優(yōu)先也稱為回繞讀取或關(guān)鍵字優(yōu)先。21.采用二級Cache的基本思想是什么? 通過在原有Cache和存儲器之間增加另一級Cache,構(gòu)成兩級Cache。把第一級Cache做得足夠小,使其速度和快速CPU的時鐘周期相匹配,而把第二級Cache做得足夠大,使它能捕獲更多本來需要到主存去的訪問,從而降低實(shí)際失效開銷。22. 采用容量小且結(jié)構(gòu)簡單的Cache有什么好處?(1)可以有效地提高Cache的訪問速度。因?yàn)橛布胶唵?,速度就越快。小容量Cache可以實(shí)現(xiàn)快速標(biāo)識檢測,對減少命中時間有益。(2)Cache足夠小,可以與處理器做在同一芯片

10、上,以避免因芯片外訪問而增加時間開銷。 (3)保持Cache結(jié)構(gòu)簡單可采用直接映像Cache。直接映像Cache的主要優(yōu)點(diǎn)是可以讓標(biāo)識檢測和數(shù)據(jù)傳送重疊進(jìn)行,這樣可以有效地減少命中時間。23. “虛擬索引物理標(biāo)識” Cache的基本思想是什么? 直接用虛地址中的頁內(nèi)位移(頁內(nèi)位移在虛實(shí)地址的轉(zhuǎn)換中保持不變)作為訪問Cache的索引,但標(biāo)識卻是物理地址。CPU發(fā)出訪存請求后,在進(jìn)行虛實(shí)地址轉(zhuǎn)換的同時,可并行進(jìn)行標(biāo)識的讀取。在完成地址變換之后,再把得到的物理地址與標(biāo)識進(jìn)行比較。24.可采用什么方法提高存儲器帶寬?(1)增加存儲器的寬度。(2) 采用簡單的多體交叉存儲器。(3)獨(dú)立存儲體。(4)避免存儲體沖突。25.增加存儲器的寬度有什么不足之處? (1)它會增加CPU和存儲器之間的連接通路(通常稱為存儲器總線)的寬度,使其實(shí)現(xiàn)代價提高。(2)由于CPU訪問Cache仍然是每次訪問一個字,所以CPU和Cache之間需要有一個多路選擇器,而且這個多路選擇器可能會處在關(guān)健路徑上。主存寬度增加后,用戶擴(kuò)充主存時的最小增量也增加了相應(yīng)的倍數(shù)。在具有糾錯功能的存儲器中實(shí)現(xiàn)對一行(一次可并行讀出的數(shù)據(jù))中部分?jǐn)?shù)據(jù)的寫入比較復(fù)雜。26.簡述DRAM專用交叉結(jié)構(gòu)優(yōu)化的三種方式

溫馨提示

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

評論

0/150

提交評論