計算機組成原理 - 第十講_第1頁
計算機組成原理 - 第十講_第2頁
計算機組成原理 - 第十講_第3頁
計算機組成原理 - 第十講_第4頁
計算機組成原理 - 第十講_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、計算機組成原理計算機組成原理 舒燕君舒燕君 計算機科學與技術學院計算機科學與技術學院4.3 高速緩沖存儲器高速緩沖存儲器一、概述一、概述1. 問題的提出問題的提出避免避免 CPU “空等空等” 現象現象CPU 和主存(和主存(DRAM)的速度差異的速度差異緩存緩存CPU主存主存容量小容量小速度高速度高容量大容量大速度低速度低程序訪問的局部性原理程序訪問的局部性原理2. Cache 的工作原理的工作原理(1) 主存和緩存的編址主存和緩存的編址主存和緩存按塊存儲主存和緩存按塊存儲 塊的大小相同塊的大小相同B 為塊長為塊長 主存塊號主存塊號主存儲器主存儲器012m1字塊字塊 0字塊字塊 1字塊字塊

2、M1主存塊號主存塊號塊內地址塊內地址m位位b位位n位位M塊塊B個字個字緩存塊號緩存塊號塊內地址塊內地址c位位b位位C塊塊B個字個字 字塊字塊 0字塊字塊 1字塊字塊 C1012c1標記標記Cache緩存塊號緩存塊號(3) Cache 的命中率的命中率CPU 欲訪問的信息在欲訪問的信息在 Cache 中的中的 比率比率命中率命中率 與與 Cache 的的 容量容量 與與 塊長塊長 有關有關 一般每塊可取一般每塊可取 4 8 個字個字塊長取一個存取周期內從主存調出的信息長度塊長取一個存取周期內從主存調出的信息長度 CRAY_1 16體交叉體交叉 塊長取塊長取 16 個存儲字個存儲字 IBM 370

3、/168 4體交叉體交叉 塊長取塊長取 4 個存儲字個存儲字(64位位4 = 256位)位)(4) Cache 主存系統的效率主存系統的效率效率效率 e 與與 命中率命中率 有關有關 設設 Cache 命中率命中率 為為 h,訪問訪問 Cache 的時間為的時間為 tc , 訪問訪問 主存主存 的時間為的時間為 tm 則則 e = 100% tc h tc+ (1h) tm 訪問訪問 Cache 的時間的時間 平均訪問時間平均訪問時間 e = 100%3. Cache 的基本結構的基本結構主存主存Cache地址映射地址映射變換機構變換機構Cache替換機構替換機構Cache存儲體存儲體4. C

4、ache 的的 讀寫讀寫 操作操作 訪問訪問Cache取出信息送取出信息送CPU 訪問主存訪問主存取出信息送取出信息送CPU將新的主存塊將新的主存塊調入調入Cache中中執行替換算法執行替換算法 騰出空位騰出空位 結束結束命中?命中?Cache滿?滿?CPU發出訪問地址發出訪問地址 開始開始是是否否是是否否讀讀Cache 和主存的一致性和主存的一致性 4. Cache 的的 讀寫讀寫 操作操作寫寫 寫直達法寫直達法(Write through) 寫回法寫回法(Write back) 寫操作時數據既寫入寫操作時數據既寫入Cache又寫入主存又寫入主存 寫操作時只把數據寫入寫操作時只把數據寫入 C

5、ache 而不寫入主存而不寫入主存當當 Cache 數據被替換出去時才寫回主存數據被替換出去時才寫回主存 寫操作時間就是訪問主存的時間寫操作時間就是訪問主存的時間,讀操作時不,讀操作時不涉及對主存的寫操作,更新策略比較容易實現涉及對主存的寫操作,更新策略比較容易實現寫操作時間就是訪問寫操作時間就是訪問 Cache 的時間的時間,讀操作讀操作 Cache 失效發生數據替換時,失效發生數據替換時,被替換的塊需寫回主存,增加了被替換的塊需寫回主存,增加了 Cache 的復雜性的復雜性5. Cache 的改進的改進(1) 增加增加 Cache 的級數的級數片載(片內)片載(片內)Cache片外片外 C

6、ache(2) 統一緩存和分立緩存統一緩存和分立緩存指令指令 Cache數據數據 Cache與主存結構有關與主存結構有關與指令執行的控制方式有關與指令執行的控制方式有關是否流水是否流水Pentium 8K 指令指令 Cache 8K 數據數據 CachePowerPC620 32K 指令指令 Cache 32K 數據數據 CacheIntel的的Cache發展趨勢發展趨勢問題問題解決方案解決方案首次改進的首次改進的處理器處理器外部存儲器比系統總線慢外部存儲器比系統總線慢增加外部增加外部Cache80386外部總線是外部總線是Cache訪問的瓶頸訪問的瓶頸外部外部Cache移至片內移至片內804

7、86片內片內Cache太小太小增加外部增加外部 L2 Cache80486指令預取和執行同時訪問指令預取和執行同時訪問Cache出現競爭出現競爭分離數據分離數據Cache和指令和指令CachePent外部總線成為外部總線成為L2 cache訪問瓶頸訪問瓶頸L2 Cache移至片內移至片內Pent II片上片上Cache太小太小增加外部增加外部L3級級CacheL3移至片內移至片內Pent IIIPent 4Intel Corei7的的Cache層次結構層次結構高速緩沖類型高速緩沖類型訪問時間(周期)訪問時間(周期)大小大小塊塊L1 i-cache432KB64BL1 d-cache432KB6

8、4BL2 統一的高速緩存統一的高速緩存11256KB512BL3統一的高速緩存統一的高速緩存30-408MB8192B 字塊字塊2m1 字塊字塊2c+1 字塊字塊2c+11 字塊字塊2c +1 字塊字塊2c 字塊字塊2c1 字塊字塊1 字塊字塊0主存儲體主存儲體 字塊字塊 1 標記標記 字塊字塊 0 標記標記字塊字塊 2c1標記標記Cache存儲體存儲體t位位012c1 字塊字塊字塊地址字塊地址 主存字主存字 塊標記塊標記t 位位c 位位b 位位主存地址主存地址 比較器(比較器(t位)位)= 不命中不命中有效位有效位=1?*m位位 Cache內地址內地址否否是是命中命中二、二、Cache 主存

9、的地址映射主存的地址映射1. 直接映射直接映射每個緩存塊每個緩存塊 i 可以和可以和 若干若干 個個 主存塊主存塊 對應對應每個主存塊每個主存塊 j 只能和只能和 一一 個個 緩存塊緩存塊 對應對應i = j mod C 字塊字塊2c+1 字塊字塊2c 字塊字塊0 字塊字塊 0二、二、Cache 主存的地址映射主存的地址映射1. 直接映射直接映射緩存塊緩存塊 001可以和可以和 主存塊主存塊 00001, 01001, 10001, 11001對應,標記分別為對應,標記分別為00, 01, 10, 11。緩存緩存主存主存2. 全相聯映射全相聯映射主存主存 中的中的 任一塊任一塊 可以映射到可以

10、映射到 緩存緩存 中的中的 任一塊任一塊字塊字塊2m1字塊字塊2c1字塊字塊1 字塊字塊0字塊字塊2c1字塊字塊1字塊字塊0標記標記標記標記標記標記主存字塊標記主存字塊標記 字塊內地址字塊內地址主存地址主存地址m = t + c 位位b位位m = t+cCache 存儲器存儲器主存儲器主存儲器 字塊字塊0字塊字塊2m1字塊字塊2c-r+1 字塊字塊2c-r + 1 字塊字塊2c-r字塊字塊2c-r 字塊字塊1 字塊字塊0 字塊字塊 3標記標記 字塊字塊 1標記標記字塊字塊 2c1標記標記 字塊字塊 2標記標記 字塊字塊 0標記標記字塊字塊 2c2標記標記 字塊內地址字塊內地址組地址組地址主存字

11、塊標記主存字塊標記s = t + r 位位q = cr 位位b 位位組組012c-r1主存地址主存地址Cache主存儲器主存儲器m 位位共共 Q 組組,每組內兩塊(,每組內兩塊(r = 1)1某一主存塊某一主存塊 j 按模按模 Q 映射到映射到 緩存緩存 的第的第 i 組組中的中的 任一塊任一塊i = j mod Q直接映射直接映射全相聯映射全相聯映射3. 組相聯映射組相聯映射 字塊字塊0 字塊字塊 1 字塊字塊 0 字塊字塊2c-r 字塊字塊2c-r+1假設主存容量為假設主存容量為16MB16MB,每個字節通過,每個字節通過2424位地址可直接尋址,位地址可直接尋址,CacheCache容量為容量為64KB64KB,每個字塊為,每個字塊為4B4B。對十六進制主存地址。對十六進制主存地址BBBBBBBBBBBB,請問,請問:(1 1)直接映射方式下直接映射方式下CacheCache的標記為多少?的標記為多少?(2 2)全相聯映射方式下的全相聯映射方式下的CacheCache的標記為多少?的標記為多少?(3 3)兩路組相連兩

溫馨提示

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

評論

0/150

提交評論