Chapter 5 存儲器(1)_第1頁
Chapter 5 存儲器(1)_第2頁
Chapter 5 存儲器(1)_第3頁
Chapter 5 存儲器(1)_第4頁
Chapter 5 存儲器(1)_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 計算機(jī)組成與設(shè)計計算機(jī)組成與設(shè)計硬件硬件/ /軟件接口軟件接口大容量和高速度:大容量和高速度:開發(fā)存儲器層次結(jié)構(gòu)開發(fā)存儲器層次結(jié)構(gòu)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.1 引言引言馮若依曼(Von Nouma)美籍匈牙利數(shù)學(xué)家 1903 1957存儲程序概念。存儲程序概念。要運行的程序必須先調(diào)入內(nèi)存,然后再執(zhí)行。程序程序MemoryCPULoadAllExecuteOne by one電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本術(shù)語及概念基本術(shù)語及概念n 存儲器的分類 半

2、導(dǎo)體存儲器1. 靜態(tài)隨機(jī)存儲器 SRAM2. 動態(tài)隨機(jī)存儲器 DRAM 磁表面存儲器:容量、存儲周期容量、存儲周期例:例:2GB 60ns容量、轉(zhuǎn)速容量、轉(zhuǎn)速例:例: 200GB 7200轉(zhuǎn)轉(zhuǎn)/分分3. 閃存 - Flash Memory電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 光盤存儲器: 1. 1. CD-ROM:只讀性光盤:只讀性光盤 2. 2. WORM:寫入式(只能寫一次):寫入式(只能寫一次) 3. 3. CD-RW:可擦:可擦/ /寫光盤寫光盤基本術(shù)語及概念基本術(shù)語及概念DVD - Digital Versatile Disc 4.7GBVCD - Vid

3、eo Compact Disc 700MB電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本術(shù)語及概念基本術(shù)語及概念n 存儲器存取方式 可按地址隨機(jī)地訪問任一存儲單元 隨機(jī)存取存儲器(RAM) 訪問時間與訪問地址無關(guān) 順序存取存儲器(SAM)必須按順序訪問,例如:磁帶。速度慢,現(xiàn)在已Out了。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 n 存儲器的主要性能指標(biāo) 存儲容量單位:Byte、KB、MB、GB 存取周期 CPU連續(xù)訪存中平均一次存取操作所需的時間?;拘g(shù)語及概念基本術(shù)語及概念電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.

4、1 引言引言控制器控制器數(shù)據(jù)路徑數(shù)據(jù)路徑存儲器存儲器處理器處理器輸入輸入輸出輸出指令指令數(shù)據(jù)數(shù)據(jù) 存儲器向處理器提供指令和數(shù)據(jù)但問題是但問題是:存儲器:存儲器太小太小、太慢太慢?電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.1 引言引言n 局部性原理 時間局部性如果某個數(shù)據(jù)被訪問,那么很快它有可能再次被訪問。 空間局部性如果某個數(shù)據(jù)被訪問,那么與它鄰近的數(shù)據(jù)有可能很快被訪問。Really? 別騙我!別騙我!電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.1 引言引言n 問題:存儲器太小、太慢 辦法:存儲器系統(tǒng)分層結(jié)構(gòu)控制器控制器 數(shù)據(jù)數(shù)據(jù) 路徑路徑

5、存儲器存儲器(內(nèi)存內(nèi)存)(DRAM)處理器處理器寄存器寄存器L1Cache(SRAM)L2Cache(SRAM)外存外存(硬盤硬盤)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 n Static RAM(SRAM)靜態(tài)存儲器5.1 引言引言 用于制造寄存器、L1/L2 Cache 存取速度快:0.525ns(集成的更快) 集成度低、價格貴 功耗大電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 n Dynamic RAM(DRAM)動態(tài)存儲器5.1 引言引言 用于計算機(jī)主存的制造 存取速度慢:5070ns 需周期性刷新 功耗小 集成度高,價格便宜電子科技大學(xué)

6、計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.1 引言引言處理器處理器數(shù)據(jù)行或數(shù)據(jù)行或塊塊命中命中: 數(shù)據(jù)在高數(shù)據(jù)在高層層存存儲儲器器缺失缺失: 數(shù)據(jù)沒有位于高數(shù)據(jù)沒有位于高層層存存儲儲器器電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 術(shù)語術(shù)語 命中率在高層存儲器中找到訪問數(shù)據(jù)的比例。 缺失率在高層存儲器中沒有找到訪問數(shù)據(jù)的比例。缺失率 = 1 命中率電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 術(shù)語術(shù)語 命中時間訪問高層存儲器所需的時間。 缺失代價將數(shù)據(jù)塊從低層搬到高層存儲器并送到處理器所需的時間。判斷時間 + 數(shù)據(jù)傳送時間電子科技大學(xué)計算

7、機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2 Cache5.2 Cache的基本原理的基本原理n DRAM的發(fā)展趨勢 容量:4倍/3年 速度:2倍/10年電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2 Cache5.2 Cache的基本原理的基本原理n CPU與Memory的速度差11010010001980 19811983 1984 1985 1986 1987 1988 19891990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000CPU1982增長:增長: 50% / 年年性能性能“Moores

8、 Law”DRAM電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2 Cache5.2 Cache的基本原理的基本原理n 尋址的速度差異 尋址延時與制造材料的物理特性有關(guān) 帶寬的增加并行傳輸:多位同時傳輸突發(fā)傳輸(Burst transfers)在一個讀寫周期內(nèi)實現(xiàn)多次傳輸。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2 Cache5.2 Cache的基本原理的基本原理n 利用帶寬支持存儲器的分層結(jié)構(gòu) 使用Cache支持訪問的局部性 分層設(shè)計存儲器,實現(xiàn)內(nèi)存中大塊數(shù)據(jù)的傳輸電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 當(dāng)前計算

9、機(jī)的存儲器結(jié)構(gòu)當(dāng)前計算機(jī)的存儲器結(jié)構(gòu)SystemControllerL1 CacheMain Memory(DRAM)GraphicsProcessor(I/O Bus)L2 CacheProcessor電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 CacheCache的原理的原理CPU主存主存Cachen 插入到CPU與主存間n 由快速SRAM實現(xiàn)n 存儲程序的部分 指令 數(shù)據(jù)n 操作: 命中(在Cache中) 未命中 (不在Cache中)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 實現(xiàn)實現(xiàn)CacheCache的的4 4個關(guān)鍵問題個關(guān)鍵問題1:數(shù)據(jù)塊

10、放在Cache的什么地方?2:如何在Cache中找到所需的數(shù)據(jù)塊?3:Cache未命中時如何轉(zhuǎn)換數(shù)據(jù)塊?4:寫數(shù)據(jù)時如何寫?A. 只寫Cache?B. 只寫Memory?C. 同時時寫Cache和Memory?D. 其它?電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本的基本的CacheCache設(shè)計設(shè)計電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本的基本的CacheCache設(shè)計設(shè)計二者必須二者必須相等相等電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本的基本的CacheCache設(shè)計設(shè)計組號組號第第0頁頁7位位Cache組

11、號組號第第1頁頁組號組號第第15頁頁第第0頁頁第第1頁頁第第15頁頁第第16頁頁第第17頁頁第第31頁頁第第2032頁頁第第2033頁頁第第2047頁頁0組組1組組127組組主存主存組號組號組內(nèi)頁號組內(nèi)頁號頁內(nèi)地址頁內(nèi)地址XXYYZZ749定位定位Cache頁,頁,讀取組號讀取組號相等嗎?相等嗎?據(jù)此判斷內(nèi)存目標(biāo)頁據(jù)此判斷內(nèi)存目標(biāo)頁是否在是否在Cache中中電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 基本的基本的CacheCache設(shè)計設(shè)計n 特點:特點: 硬件硬件實現(xiàn)容易;實現(xiàn)容易; Cache Cache利用率低;利用率低;電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)

12、計算機(jī)科學(xué)與工程學(xué)院 5.2.1 Cache5.2.1 Cache的訪問的訪問n 內(nèi)存地址結(jié)構(gòu)的設(shè)計內(nèi)存地址結(jié)構(gòu)的設(shè)計組號組號組內(nèi)頁號組內(nèi)頁號數(shù)據(jù)頁(數(shù)據(jù)頁(512B)4位位7位位9位位電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.1 Cache5.2.1 Cache的訪問的訪問n CacheCache地址結(jié)構(gòu)的設(shè)計地址結(jié)構(gòu)的設(shè)計標(biāo)記位標(biāo)記位有效位有效位數(shù)據(jù)頁(數(shù)據(jù)頁(512B)1位位7位位必須與主存頁必須與主存頁大小相同大小相同電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.1 Cache5.2.1 Cache的訪問的訪問00001010

13、0101110100100111010101110000101010XXXXXXXXX09 812 1119VTagData=DATAHIT電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 舉例舉例假設(shè)一個直接映射的Cache,有16KB數(shù)據(jù),塊大小4個字,地址32位,那么Cache總共有多少位?(即Cache的大小)參考答案:參考答案:MIPS中:32位/字=4字節(jié)/字塊大?。?字/塊=16字節(jié)/塊=128位/塊16KB分為:16K16=1K=1024(塊)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 舉例舉例數(shù)據(jù)塊數(shù)據(jù)塊0128bit有效位有效位1bit

14、標(biāo)記位標(biāo)記位18bit數(shù)據(jù)塊數(shù)據(jù)塊1有效位有效位標(biāo)記位標(biāo)記位數(shù)據(jù)塊數(shù)據(jù)塊1023有效位有效位標(biāo)記位標(biāo)記位1024電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 舉例舉例對于前面例子,若內(nèi)存地址分別為100005和0 x100005的字節(jié)將分別映到Cache的哪一塊?參考答案:n 對于內(nèi)存地址100005 該內(nèi)存地址位于第?塊6249塊塊?6250塊塊?6251塊塊?6250塊電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 10位舉例舉例參考答案:n 對于內(nèi)存地址0 x100005010100000000000000000001500001十六進(jìn)制十六進(jìn)制二進(jìn)

15、制二進(jìn)制電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 缺失率與塊大小缺失率與塊大小電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 缺失率與塊大小缺失率與塊大小Cache塊較大時,一 旦缺失,帶來的延時和開銷是比較大的。n 提前重啟(early restart)當(dāng)塊中所需字一旦返回就馬上執(zhí)行,而不需要等待整個塊都傳過來再執(zhí)行。 該技術(shù)用于指令訪問,效果較好,因為指令通常是連續(xù)的。 該技術(shù)用于數(shù)據(jù)Cache效率要低一些,因為請求的數(shù)據(jù)其分布無法預(yù)知。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 缺失率與塊大小缺失率與塊大小n 請求字優(yōu)先/關(guān)

16、鍵字優(yōu)先缺失時,先將請求字從存儲器傳輸?shù)紺ache中,然后再傳輸該塊的剩余部分,之后再從塊的開始部分傳輸。該技術(shù)的延時性能比提前重啟要好一些。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.2 Cache的缺失處理的缺失處理n 指令Cache缺失的處理步驟 將PC 4送到存儲器中 通知主存執(zhí)行讀操作,并等待主存訪問完成 寫Cache項,并設(shè)置Cache相關(guān)標(biāo)志 重新取指令,此時指令在Cache中電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.3 寫操作處理寫操作處理n Write-through(寫直達(dá)/通寫)當(dāng)需要寫數(shù)據(jù)時(執(zhí)行Store指

17、令),將數(shù)據(jù)同時寫入Cache和主存中。優(yōu)點:Cache和主存的內(nèi)容保持一致。缺點:耗時長,效率低。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.3 寫操作處理寫操作處理n 寫缺失當(dāng)要寫的數(shù)據(jù)不在Cache中時,發(fā)生寫缺失。1. 將主存中的數(shù)據(jù)塊讀到Cache;2. 將要寫的數(shù)據(jù)寫到Cache和主存中;為什么不直接寫到為什么不直接寫到Cache和主存?和主存?電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.3 寫操作處理寫操作處理n 寫直達(dá)方法簡單,但效率低下例如例如,10%的指令是store,沒有Cache失缺的情況下,CPI為1.0,每

18、次寫操作要額外花費100個周期,此時CPI為:CPI - ClockcyclePerInstruction電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.3 寫操作處理寫操作處理n 寫緩沖(Write buffer)當(dāng)有數(shù)據(jù)需要寫入主存時:將數(shù)據(jù)寫入Cache和寫緩沖區(qū)(write buffer)后,處理器繼續(xù)執(zhí)行;當(dāng)寫主存操作完成后,寫緩沖區(qū)里的數(shù)據(jù)被釋放;若寫緩沖區(qū)滿,則處理器必須等待一個寫操作完成后(釋放一個空位)才能將數(shù)據(jù)寫入寫緩沖區(qū)。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.3 寫操作處理寫操作處理n 寫回機(jī)制(Write b

19、ack 回寫)當(dāng)有數(shù)據(jù)需要寫入主存時: 先將數(shù)據(jù)寫入Cache,并作已修改標(biāo)記; 當(dāng)被修改的Cache塊被替換時才將Cache的內(nèi)容寫回主存;電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 精解精解n 寫缺失時的策略 寫直達(dá)/通寫(write through)1. 寫分配策略(write allocate)2. 寫不分配策略(no write allocate) 寫回機(jī)制/回寫(write back)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.4 5.2.4 例子:內(nèi)置例子:內(nèi)置FastMATHFastMATH處理器處理器n 嵌入式MIPS處理器

20、 12級流水線 每個時間周期能完一個指令和數(shù)據(jù)的存取 指令Cache和數(shù)據(jù)Cache分離 每個Cache的容量:電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.4 5.2.4 例子:內(nèi)置例子:內(nèi)置FastMATHFastMATH處理器處理器電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.4 5.2.4 例子:內(nèi)置例子:內(nèi)置FastMATHFastMATH處理器處理器n SPEC 2000的缺失率 指令Cache: 0.4% 數(shù)據(jù)Cache: 11.4% 加權(quán)平均: 3.2%電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 精解

21、精解n 分離Cache與混合Cache缺失率對比 Cache總?cè)萘浚?2KB 分離Cache的實際缺失率: 3.24% 混合Cache的實際缺失率: 3.18%電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.5 5.2.5 設(shè)計支持設(shè)計支持CacheCache的存儲系統(tǒng)的存儲系統(tǒng)n 主存是由DRAM構(gòu)成 數(shù)據(jù)寬度固定 通過總線(Bus)與處理器連接總線頻率比處理要慢很多假設(shè):假設(shè): 地址(address)傳輸需要1個總線周期 存儲器存儲需要15個總線周期 數(shù)據(jù)(data)傳輸需要1個總線周期電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.2.5

22、5.2.5 設(shè)計支持設(shè)計支持CacheCache的存儲系統(tǒng)的存儲系統(tǒng)如果一個Cache塊有4個字,DRAM的寬度為1個字: 缺失代價: 每個總線周期傳輸?shù)淖止?jié)數(shù):電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 1 1個字存儲器帶寬個字存儲器帶寬處理器Cache主存主存Bus1個字 缺失代價: 每個總線周期傳輸?shù)淖止?jié)數(shù):電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 增加存儲器帶寬增加存儲器帶寬2 2個字寬度個字寬度處理器Cache主存主存MUXBus2個字 缺失代價: 每個總線周期傳輸?shù)淖止?jié)數(shù):電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院

23、 增加存儲器帶寬增加存儲器帶寬4 4個字寬度個字寬度處理器CacheBus交叉存儲組織存儲體存儲體0#存儲體存儲體1#存儲體存儲體2#存儲體存儲體3# 缺失代價: 每個總線周期傳輸?shù)淖止?jié)數(shù):電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 問題:問題:處理器CacheBus存儲存儲體體0#存儲存儲體體1#存儲存儲體體2#存儲存儲體體3#存儲存儲體體4#存儲存儲體體5#存儲存儲體體6#存儲存儲體體n#這樣可能會更好!這樣可能會更好!電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 存儲器的最新發(fā)展存儲器的最新發(fā)展n 雙倍速率動態(tài)隨機(jī)存儲器Double Data R

24、ate DRAM 基本原理:在時鐘的上升沿和下降沿各傳輸一次數(shù)據(jù)。電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 小結(jié)小結(jié)n Cache塊越大,則Cache的命中率越高,效率也高,但缺失代價也越大。n 為避免性能損失 增加主存帶寬 增加存儲器位寬 交叉存取電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 小測驗小測驗在Cache設(shè)計時,下面哪些指導(dǎo)思想是正確的?A. 存儲器延時越短,cache塊小B. 存儲器延時越短,cache塊大C. 存儲器帶寬越高,cache塊小D. 存儲器帶寬越高,cache塊大電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工

25、程學(xué)院 5.3 Cache 5.3 Cache 性能的評估與改進(jìn)性能的評估與改進(jìn)n 本節(jié)要介紹的內(nèi)容 探討評測和分析Cache性能的方法 減少爭用Cache塊的概率 采用多級高速緩存 改進(jìn)Cache性能的方法電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.3 Cache 5.3 Cache 性能的評估與改進(jìn)性能的評估與改進(jìn)n CPU的時間可以劃分為 程序執(zhí)行時間 主要是Cache未命中的時間 存儲器的阻塞時間CPU時間 = CPU執(zhí)行時間+存儲器的阻塞時間電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.3 Cache 5.3 Cache 性能的評估與

26、改進(jìn)性能的評估與改進(jìn)n 存儲器的阻塞時間分為: 讀操作阻塞 寫操作阻塞在大部分寫直達(dá)Cache中,讀和寫的缺失代價是一樣的,因此:平均每個程序的訪存次數(shù)電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 例:例:Cache Cache 性能計算性能計算問題:處理器實際的CPI是多少? 指令Cache(I_Cache)的缺失率:2% 數(shù)據(jù)Cache(D_Cache)的缺失率:4% 缺失代價:100個時間周期 Store/load指令占:36%假定: 處理器的CPI(理想) :2電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 例:例:Cache Cache 性能計算

27、性能計算平均每條指令缺失的時鐘周期:參考答案:平均每條指令數(shù)據(jù)缺失的時鐘周期:實際CPI電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 例:例:Cache Cache 性能計算性能計算,其它不變假設(shè):實際CPI存儲器阻塞花費時間占整個執(zhí)行時間的比例:電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 平均存儲器訪問時間平均存儲器訪問時間AMATAMATn AMAT AveragememoryaccesstimeAMAT=命中時間+缺失率缺失代價例如: CPU時鐘周期:1ns 缺失代價:20個時鐘周期 指令缺失率:0.05 Cache訪問時間(命中時間):1個時鐘

28、周期AMAT=1+0.0520=2(個時鐘周期)=2ns電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.3.1 5.3.1 通過靈活放置塊來減少通過靈活放置塊來減少CacheCache的缺失的缺失n 將數(shù)據(jù)塊放入Cache的方法 直接映射法 硬件硬件實現(xiàn)實現(xiàn)容易,容易,CacheCache利用率低利用率低 全相聯(lián)映射法一個數(shù)據(jù)塊可映射到一個數(shù)據(jù)塊可映射到CacheCache的任何位置的任何位置檢索項多、硬件實現(xiàn)復(fù)雜,檢索項多、硬件實現(xiàn)復(fù)雜,CacheCache利用利用率高率高電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.3.1 5.3.1 通過靈活

29、放置塊來減少通過靈活放置塊來減少CacheCache的缺失的缺失n 組相聯(lián)映射電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 5.3.1 5.3.1 通過靈活放置塊來減少通過靈活放置塊來減少CacheCache的缺失的缺失n n路組相聯(lián)映射假設(shè): 主存:32位地址線 Cache大?。?56KB 塊大?。?KB n:4,即4路組組相聯(lián)映射電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 Cache Cache 的設(shè)置的設(shè)置TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2T

30、agBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 34路相聯(lián)0組1組15組組的大小=44=16KBCache的組數(shù) =25616=16最后組是15組電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 主存主存(Memory)(Memory)的設(shè)置的設(shè)置Block 0Block 1Block15Block 0Block 1Block 15Cache分為16組0組Block 0Block 1Block 151組65535組組的大小=164=64KB主存的組數(shù) =23221064=65536最后組是65535組電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)

31、院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 Cache - Cache - 主存主存(Memory) (Memory) 的映射關(guān)系的映射關(guān)系Block 0Block 1Block 15Block 0Block 1Block 15Block 0Block 1Block 15TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 3TagBlock 0TagBlock 1TagBlock 2TagBlock 30組1組15組0組1組65535組CacheMemory電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技

32、大學(xué)計算機(jī)科學(xué)與工程學(xué)院 主存主存(Memory)(Memory)地址地址12 bits組內(nèi)塊號:01516 bits組號:0655354 bits塊內(nèi)尋址:塊大小4K31011121516電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 Cache Cache 的標(biāo)志的標(biāo)志 ( Tag )( Tag )1 bit16 bits有效位Tag數(shù)據(jù)塊數(shù)據(jù)塊Data問題(針對前面的假設(shè)):主存地址:101A 1234 (Hex)計算:該地址數(shù)據(jù)放入Cache后,在Cache中的的塊號及對應(yīng)Cache項的Tag是多少?內(nèi)存中的組號電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院電子科技大學(xué)計算機(jī)科學(xué)與工程學(xué)院 問題解答問題解答(1)(1):1. 首先計算該地址在主存的塊號:n該地址所在的塊號是:2. 分析塊號n在主存中的組號及組內(nèi)序號在主存中的組號:101AH組內(nèi)序號:1H(每組有16個塊

溫馨提示

  • 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

提交評論