




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,1/71,計(jì)算機(jī)組成原理 內(nèi)部存儲(chǔ)器,浙江工業(yè)大學(xué) 計(jì)算機(jī)學(xué)院,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,2/71,了解存儲(chǔ)設(shè)備的組成及存儲(chǔ)原理 掌握主存儲(chǔ)器的組成和基本操作 掌握Cache 的工作原理及其組成,能夠分析其讀取情況,本章的學(xué)習(xí)目標(biāo),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,3/71,主存儲(chǔ)器的組織 主存的邏輯設(shè)計(jì) 主存與CPU的連接 并行存儲(chǔ)器 高速緩沖存儲(chǔ)器Cache Cache的工作原理 Cache的組織 Pentium II CPU的Cache組織,本篇主要內(nèi)容,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,4/71,
2、RAM芯片分析(1-1),RAM芯片通過(guò)地址線(xiàn)、數(shù)據(jù)線(xiàn)和控制線(xiàn)與外部連接。 地址線(xiàn)為單向輸入,其數(shù)目與芯片容量有關(guān)。如1K*4的芯片,則地址線(xiàn)有10根(1K=210) 數(shù)據(jù)線(xiàn)為雙向輸入,其數(shù)目與數(shù)據(jù)位數(shù)有關(guān)。如1K*4的芯片,則數(shù)據(jù)線(xiàn)為4根(數(shù)據(jù)位數(shù)為4) 控制線(xiàn)主要有讀寫(xiě)控制線(xiàn)和片選線(xiàn)兩種。讀寫(xiě)控制線(xiàn)控制芯片的讀寫(xiě)操作(位線(xiàn)),片選線(xiàn)用于選中該芯片(字線(xiàn)),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,5/71,RAM芯片分析(1-2),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,6/71,主存儲(chǔ)器的組織(2-1),主存儲(chǔ)器的邏輯設(shè)計(jì),芯片的選用、,地址分配與片選邏輯、,位擴(kuò)展,信號(hào)線(xiàn)的連
3、接,字?jǐn)U展,A0 A13,A14 A15,0 0,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,7/71,位擴(kuò)展:給定的芯片字長(zhǎng)位數(shù)較短,不滿(mǎn)足設(shè)計(jì)要求的存儲(chǔ)器字長(zhǎng),此時(shí)需要用多片給定芯片擴(kuò)展字長(zhǎng)位數(shù)。 擴(kuò)展字長(zhǎng)(位數(shù)),字?jǐn)?shù)不變 方法:各存儲(chǔ)芯片的地址線(xiàn)、片選線(xiàn)和讀寫(xiě)線(xiàn)相應(yīng)地并聯(lián),而各芯片的數(shù)據(jù)線(xiàn)單獨(dú)列出 原因:字?jǐn)?shù)不變,則地址線(xiàn)一致;字長(zhǎng)擴(kuò)展,則擴(kuò)展了數(shù)據(jù)線(xiàn),主存儲(chǔ)器的組織(2-2),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,8/71,d = 設(shè)計(jì)要求的存儲(chǔ)器容量 / 選擇芯片存儲(chǔ)器容量 【例3.2】利用1M4位的SRAM芯片,設(shè)計(jì)一個(gè)存儲(chǔ)容量為1M8位的SRAM存儲(chǔ)器。解: 所需芯片
4、數(shù):d=(1M8) / (1M4)=2(片)設(shè)計(jì)的存儲(chǔ)器字長(zhǎng)為8位,存儲(chǔ)器容量不變。連接的三組信號(hào)線(xiàn)如圖3.9(P73)所示,地址線(xiàn)、控制線(xiàn)公用,數(shù)據(jù)線(xiàn)分高4位、低4位,但是數(shù)據(jù)線(xiàn)是雙向的,與SRAM芯片的I/O端相連接。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,9/71,假設(shè)用16K*4位的芯片組成16K*8位的存儲(chǔ)器,則如何擴(kuò)展? 總片數(shù)=16K*8/16K*4=2片 地址線(xiàn)有:A0-A13共14根(16K=214) 數(shù)據(jù)線(xiàn)為:16K*4為4根,16K*8為8根 連接如下:,主存儲(chǔ)器的組織(2-3),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,10/71,字?jǐn)U展:給定的芯片存儲(chǔ)容量
5、較小(字?jǐn)?shù)少),不滿(mǎn)足設(shè)計(jì)要求的總存儲(chǔ)容量,此時(shí)需要用多片給定芯片來(lái)擴(kuò)展字?jǐn)?shù)。 擴(kuò)展字?jǐn)?shù),字長(zhǎng)(位數(shù))不變 方法:各存儲(chǔ)芯片的地址線(xiàn)、數(shù)據(jù)線(xiàn)和讀寫(xiě)線(xiàn)并聯(lián),高地址作為片選信號(hào)用于區(qū)分各個(gè)芯片 原因:位數(shù)不變,則數(shù)據(jù)線(xiàn)一致;字?jǐn)?shù)擴(kuò)展,則擴(kuò)展了地址線(xiàn),對(duì)地址線(xiàn)的高地址部分進(jìn)行譯碼成為片選信號(hào),主存儲(chǔ)器的組織(2-4),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,11/71,d = 設(shè)計(jì)要求的存儲(chǔ)器容量 / 選擇芯片存儲(chǔ)器容量 【例3.3】利用1M8位的DRAM芯片設(shè)計(jì)2M8位的DRAM存儲(chǔ)器。解: 所需芯片數(shù):d=(2M8) / (1M8)=2(片)設(shè)計(jì)的存儲(chǔ)器如圖3.10所示。字長(zhǎng)位數(shù)不變,地址
6、總線(xiàn)A0A19同時(shí)連接到兩片DRAM的地址輸入端,地址總線(xiàn)最高位有A20、A20之分:A20作為DRAM1的片選信號(hào),A20作為DRAM2的片選信號(hào),這兩個(gè)芯片不會(huì)同時(shí)工作。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,12/71,假設(shè)用16K*8位的芯片組成64K*8位的存儲(chǔ)器,則如何擴(kuò)展? 總片數(shù)=64K*8/16K*8=4片 地址線(xiàn)有:64K*8共有16根,16K*8為14根 數(shù)據(jù)線(xiàn)為:8根 連接如下:,主存儲(chǔ)器的組織(2-5),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,13/71,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,14/71,主存儲(chǔ)器的組織(2-6),主存儲(chǔ)器的邏輯設(shè)
7、計(jì) 例題: 某半導(dǎo)體存儲(chǔ)器,總?cè)萘?KB。其中固化區(qū)2KB,選用EPROM芯片2716(2Kx8/片);工作區(qū)2KB,選用SRAM芯片2114 (1Kx4/片)。地址總線(xiàn)A15A0(低),雙向數(shù)據(jù)總線(xiàn)D7D0,(1)計(jì)算芯片數(shù),ROM區(qū): 2Kx8 1片2716,RAM區(qū):,位擴(kuò)展,2片1Kx4,1Kx8,2組1Kx8,2KB,4片2114,字?jǐn)U展,(2)地址分配與片選邏輯,存儲(chǔ)器 尋址邏輯,芯片內(nèi)的尋址,芯片外的地址分配與片選邏輯,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,15/71,主存儲(chǔ)器的組織(2-7),主存儲(chǔ)器的邏輯設(shè)計(jì),大容量芯片在地址低端,小容量芯片在地址高端,存儲(chǔ)空間分配:
8、,A15A14A13A12A11A10A9A0,0 0 0 0,1 0 1 1,1 0 0 0,4KB需12位地址尋址:,ROM,A11A0,2KB,1Kx4,RAM,1Kx4,1Kx4,1Kx4,0 1 1 1,1 1 1 1,1 1 0 0,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,16/71,主存儲(chǔ)器的組織(2-8),主存儲(chǔ)器的邏輯設(shè)計(jì),(3)連接方式,參考圖,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,17/71,存儲(chǔ)器模塊條,存儲(chǔ)器通常以插槽用模塊條形式供應(yīng)市場(chǎng)。這種模塊條常稱(chēng)為內(nèi)存條,它們是在一個(gè)條狀形的小印制電路板上,用一定數(shù)量的存儲(chǔ)器芯片,組成一個(gè)存儲(chǔ)容量固定的存儲(chǔ)模塊。
9、如圖所示。 內(nèi)存條有30腳、72腳、100腳、144腳、168腳等多種形式。 30腳內(nèi)存條設(shè)計(jì)成8位數(shù)據(jù)線(xiàn),存儲(chǔ)容量從256KB32MB。 72腳內(nèi)存條設(shè)計(jì)成32位數(shù)據(jù)總線(xiàn) 100腳以上內(nèi)存條既用于32位數(shù)據(jù)總線(xiàn)又用于64位數(shù)據(jù)總線(xiàn),存儲(chǔ)容量從4MB512MB。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,18/71,例4 CDRAM內(nèi)存條組成實(shí)例。 一片CDRAM的容量為1M4位,8片這樣的芯片可組成1M32位4MB的存儲(chǔ)模塊,其組成如下圖所示。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,19/71,例題(3-1),例1設(shè)有一個(gè)具有24位地址和8位字長(zhǎng)的存儲(chǔ)器,問(wèn): (1)該存儲(chǔ)器能存
10、儲(chǔ)多少字節(jié)的信息? (2)如果存儲(chǔ)器由4M*1位的RAM芯片組成,需要多少片? (3)需要多少位作芯片選擇?采用何種擴(kuò)展方式?,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,20/71,(1)該存儲(chǔ)器能存儲(chǔ)多少字節(jié)的信息? 地址為24位,字長(zhǎng)為8位,故能存儲(chǔ)224個(gè)字節(jié)信息,即能存儲(chǔ)16M個(gè)字節(jié)的信息 (2)如果存儲(chǔ)器由4M*1位的RAM芯片組成,需要多少片? 片數(shù)=16M*8/4M*1=32片 (3)需要多少位作芯片選擇?采用何種擴(kuò)展方式? 16M共有24位地址,4M共有22位地址,故地址總線(xiàn)的A0-A21低22位可直接與芯片相連,A22、A23高兩位地址通過(guò)譯碼器產(chǎn)生片選信號(hào)。 采用字和位
11、同時(shí)擴(kuò)展的方式。先將8片4M*1位的RAM芯片用位擴(kuò)展方式組成4M*8位的存儲(chǔ)器,再用四個(gè)相同的組合共同組成16M*8位的存儲(chǔ)單元。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,21/71,主存儲(chǔ)器的組織(4-1),主存儲(chǔ)器與CPU的硬連接 3組連線(xiàn) 地址總線(xiàn)(AB) 數(shù)據(jù)總線(xiàn)(DB) 控制總線(xiàn)(CB) 2個(gè)寄存器 存儲(chǔ)器地址寄存器(MAR) 存儲(chǔ)器數(shù)據(jù)寄存器(MDR),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,22/71,主存儲(chǔ)器的組織(4-2),CPU對(duì)主存的基本操作 讀操作 地址 MAR AB CPU將R/W置高電平,表示讀命令 若主存準(zhǔn)備好,則發(fā)BRDY M(MAR) DB MD
12、R 寫(xiě)操作 地址 MAR AB 數(shù)據(jù) MDR DB CPU將R/W置低電平,表示寫(xiě)命令 若主存準(zhǔn)備好,則發(fā)BRDY,開(kāi)始寫(xiě)數(shù)據(jù)到主存,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,23/71,主存儲(chǔ)器的組織(4-3),主存儲(chǔ)器與CPU的連接 系統(tǒng)模式 最小系統(tǒng)模式 CPU與存儲(chǔ)芯片直接連接 較大系統(tǒng)模式 通過(guò)系統(tǒng)總線(xiàn)連接主存與外部設(shè)備,一次讀寫(xiě)需占用一個(gè)總線(xiàn)周期 專(zhuān)用存儲(chǔ)總線(xiàn)模式 通過(guò)高速存儲(chǔ)總線(xiàn)與主存連接,通過(guò)I/O總線(xiàn)與I/O設(shè)備連接,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,24/71,主存儲(chǔ)器的組織(4-3),速度匹配與時(shí)序控制 時(shí)鐘周期、總線(xiàn)周期 時(shí)鐘周期:CPU執(zhí)行一步操作的時(shí)
13、間 總線(xiàn)周期:通過(guò)系統(tǒng)總線(xiàn)執(zhí)行一次訪(fǎng)存操作的時(shí)間 同步控制,擴(kuò)展同步控制,異步控制 同步控制方式中,一個(gè)總線(xiàn)周期由若干時(shí)鐘周期組成 異步控制方式中,總線(xiàn)周期與時(shí)鐘周期無(wú)關(guān),由異步應(yīng)答信號(hào)控制(如主存的就緒信號(hào)READY),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,25/71,Pentium機(jī)主存連接與讀寫(xiě)組織 通過(guò)系統(tǒng)控制器連接CPU與主存儲(chǔ)器,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,26/71,3.5 并行存儲(chǔ)器,由于CPU和主存儲(chǔ)器之間在速度上是不匹配的,這種情況便成為限制高速計(jì)算機(jī)設(shè)計(jì)的主要問(wèn)題。為了提高CPU和主存之間的數(shù)據(jù)傳輸率,除了主存采用更高速的技術(shù)來(lái)縮短讀出時(shí)間外,還
14、可以采用并行技術(shù)的存儲(chǔ)器。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,27/71,解決途徑 多個(gè)存儲(chǔ)器并行工作 并行訪(fǎng)問(wèn)和交叉訪(fǎng)問(wèn) 設(shè)置各種緩沖器 通用寄存器 采用分層的存儲(chǔ)系統(tǒng) Cache(第6節(jié)) 虛擬存儲(chǔ)系統(tǒng)(第9章),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,28/71,雙端口存儲(chǔ)器(1),1、邏輯結(jié)構(gòu) 雙端口存儲(chǔ)器因同一個(gè)存儲(chǔ)器具有兩組相互獨(dú)立的讀寫(xiě)控制電路而得名。由于兩個(gè)端口可進(jìn)行并行的獨(dú)立操作,因而是一種高速工作的存儲(chǔ)器,在科研和工程中非常有用。 如雙端口存儲(chǔ)器IDT7133。,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,29/71,2020/8/16,計(jì)算機(jī)組成原理計(jì)
15、算機(jī)學(xué)院,30/71,2、無(wú)沖突讀寫(xiě)控制 當(dāng)兩個(gè)端口的地址不相同時(shí),在兩個(gè)端口上進(jìn)行讀寫(xiě)操作,一定不會(huì)發(fā)生沖突。當(dāng)任一端口被選中驅(qū)動(dòng)時(shí),就可對(duì)整個(gè)存儲(chǔ)器進(jìn)行存取,每一個(gè)端口都有自己的片選控制(CE)和輸出驅(qū)動(dòng)控制(OE)。讀操作時(shí),端口的OE(低電平有效)打開(kāi)輸出驅(qū)動(dòng)器,由存儲(chǔ)矩陣讀出的數(shù)據(jù)就出現(xiàn)在I/O線(xiàn)上。 左端口或右端口的數(shù)據(jù)組合詳見(jiàn)P87 表3.4,雙端口存儲(chǔ)器(2),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,31/71,3、有沖突讀寫(xiě)控制 當(dāng)兩個(gè)端口同時(shí)存取存儲(chǔ)器同一存儲(chǔ)單元時(shí),便發(fā)生讀寫(xiě)沖突。為解決此問(wèn)題,特設(shè)置了BUSY標(biāo)志。在這種情況下,片上的判斷邏輯可以決定對(duì)哪個(gè)端口優(yōu)先
16、進(jìn)行讀寫(xiě)操作,而對(duì)另一個(gè)被延遲的端口置BUSY標(biāo)志(BUSY變?yōu)榈碗娖?,即暫時(shí)關(guān)閉此端口。優(yōu)先端口完成操作后再將延遲端口BUSY標(biāo)志復(fù)位。,雙端口存儲(chǔ)器(3),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,32/71,4、有沖突讀寫(xiě)控制判斷方法 (1)如果地址匹配且在CE之前有效,片上的控制邏輯在CEL和CER之間進(jìn)行判斷來(lái)選擇端口(CE判斷)。 (2)如果CE在地址匹配之前變低,片上的控制邏輯在左、右地址間進(jìn)行判斷來(lái)選擇端口(地址有效判斷)。 無(wú)論采用哪種判斷方式,延遲端口的BUSY標(biāo)志都將置位而關(guān)閉此端口,而當(dāng)允許存取的端口完成操作時(shí),延遲端口BUSY標(biāo)志才進(jìn)行復(fù)位而打開(kāi)此端口。,雙端口
17、存儲(chǔ)器(4),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,33/71,多模塊交叉存儲(chǔ)器(1),一個(gè)由若干個(gè)模塊組成的主存儲(chǔ)器是線(xiàn)性編址的。這些地址在各模塊中如何安排,有兩種方式:一種是順序方式,一種是交叉方式,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,34/71,假設(shè)有n個(gè)存儲(chǔ)體,每個(gè)存儲(chǔ)體的容量為m個(gè)存儲(chǔ)單元 順序方式:,多模塊交叉存儲(chǔ)器(2),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,35/71,1、順序方式 例M0M3共四個(gè)模塊,則每個(gè)模塊8個(gè)字 順序方式: M0:07 M1:815 M2:1623 M3:2431 5位地址組織如下: X X X X X 高位選模塊,低位選塊內(nèi)
18、地址 特點(diǎn):某個(gè)模塊進(jìn)行存取時(shí),其他模塊不工作,優(yōu)點(diǎn)是某一模塊出現(xiàn)故障時(shí),其他模塊可以照常工作,通過(guò)增添模塊來(lái)擴(kuò)充存儲(chǔ)器容量比較方便。缺點(diǎn)是各模塊串行工作,存儲(chǔ)器的帶寬受到了限制。,多模塊交叉存儲(chǔ)器(3),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,36/71,2、交叉方式 (可以實(shí)現(xiàn)多模塊流水式并行存?。?多模塊交叉存儲(chǔ)器(4),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,37/71,例M0M3共四個(gè)模塊,則每個(gè)模塊8個(gè)字 交叉方式: M0:0,4,.除以4余數(shù)為0 M1:1,5,.除以4余數(shù)為1 M2:2,6,.除以4余數(shù)為2 M3:3,7,.除以4余數(shù)為3 5位地址組織如下: X X
19、 X X X 高位選塊內(nèi)地址,低位選模塊 特點(diǎn):連續(xù)地址分布在相鄰的不同模塊內(nèi),同一個(gè)模塊內(nèi)的地址都是不連續(xù)的。優(yōu)點(diǎn)是對(duì)連續(xù)字的成塊傳送可實(shí)現(xiàn)多模塊流水式并行存取,大大提高存儲(chǔ)器的帶寬。使用場(chǎng)合為成批數(shù)據(jù)讀取。,多模塊交叉存儲(chǔ)器(5),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,38/71,基本結(jié)構(gòu) 右圖為四模塊交叉存儲(chǔ)器結(jié)構(gòu)框圖。主存被分成4個(gè)相互獨(dú)立、容量相同的模塊M0,M1,M2,M3,每個(gè)模塊都有自己的讀寫(xiě)控制電路、地址寄存器和數(shù)據(jù)寄存器,各自以等同的方式與CPU傳送信息。在理想情況下,如果程序段或數(shù)據(jù)塊都是連續(xù)地在主存中存取,那么將大大提高主存的訪(fǎng)問(wèn)速度。,多模塊交叉存儲(chǔ)器(6),
20、2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,39/71,通常在一個(gè)存儲(chǔ)器周期內(nèi),n個(gè)存儲(chǔ)體必須分時(shí)啟動(dòng),則各個(gè)存儲(chǔ)體的啟動(dòng)間隔為 (n為交叉存取度) 整個(gè)存儲(chǔ)器的存取速度有望提高n倍 m表示連續(xù)讀取m個(gè)字,多模塊交叉存儲(chǔ)器(7),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,40/71,例5 設(shè)存儲(chǔ)器容量為32字,字長(zhǎng)64位,模塊數(shù)m=4,分別用順序方式和交叉方式進(jìn)行組織。存儲(chǔ)周期T=200ns,數(shù)據(jù)總線(xiàn)寬度為64位,總線(xiàn)傳送周期=50ns。若連續(xù)讀出4個(gè)字,問(wèn)順序存儲(chǔ)器和交叉存儲(chǔ)器的帶寬各是多少?,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,41/71,解:順序存儲(chǔ)器和交叉存儲(chǔ)器連續(xù)讀出
21、m=4個(gè)字的信息總量都是: q=64b4=256b 順序存儲(chǔ)器和交叉存儲(chǔ)器連續(xù)讀出4個(gè)字所需的時(shí)間分別是: t2=mT=4200ns=800ns=810-7s t1=T+(m-1)=200ns+3*50ns=350ns=3510-7s 順序存儲(chǔ)器和交叉存儲(chǔ)器的帶寬分別是: W2=q/t2=256b(810-7)s=320Mb/s W1=q/t1=256b(3510-7)s=730Mb/s,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,42/71,高速緩沖存儲(chǔ)器Cache(1-1),問(wèn)題:主存存取速度 CPU工作速度,解決方法:CPU和主存間設(shè)置小容量的高速緩沖存儲(chǔ)器(Cache) ,存放主存信
22、息的副本,目的:減少訪(fǎng)存次數(shù),加快運(yùn)行速度,遠(yuǎn)低于,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,43/71,高速緩沖存儲(chǔ)器Cache(1-2),工作原理:基于程序和數(shù)據(jù)訪(fǎng)問(wèn)的局部性 程序和數(shù)據(jù)的空間局部性 程序和數(shù)據(jù)的時(shí)間局部性,Cache與CPU及主存的關(guān)系,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,44/71,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,45/71,cache基本原理 地址映射 替換策略 寫(xiě)一致性 性能評(píng)價(jià),高速緩沖存儲(chǔ)器Cache(1-3),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,46/71,cache能高速地向CPU提供指令和數(shù)據(jù),從而加快了程序的執(zhí)行速度
23、。從功能上看,它是主存的緩沖存儲(chǔ)器,由高速的SRAM組成。為追求高速,包括管理在內(nèi)的全部功能由硬件實(shí)現(xiàn),因而對(duì)程序員是透明的。 Cache的設(shè)計(jì)依據(jù):空間和時(shí)間局部性。 CPU與Cache之間的數(shù)據(jù)傳送是以字為單位 主存與Cache之間的數(shù)據(jù)傳送是以塊為單位 CPU讀主存時(shí),便把地址同時(shí)送給Cache和主存,Cache控制邏輯依據(jù)地址判斷此字是否在Cache中,若在,此字立即傳送給CPU;否則,則用主存讀周期把此字從主存讀出送到CPU,與此同時(shí),把含有這個(gè)字的整個(gè)數(shù)據(jù)塊從主存讀出送到cache中。,高速緩沖存儲(chǔ)器Cache(1-4),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,47/71,C
24、ache的命中率 在一個(gè)程序執(zhí)行期間,設(shè)Nc表示cache完成存取的總次數(shù),Nm表示主存完成存取的總次數(shù),h定義為命中率,則有 h=Nc/(Nc+Nm) 若tc表示命中時(shí)的cache訪(fǎng)問(wèn)時(shí)間,tm表示未命中時(shí)的主存訪(fǎng)問(wèn)時(shí)間,1-h表示未命中率,則cache/主存系統(tǒng)的平均訪(fǎng)問(wèn)時(shí)間ta為: ta=h*tc+(1-h) tm,高速緩沖存儲(chǔ)器Cache(1-5),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,48/71,例6CPU執(zhí)行一段程序時(shí),cache完成存取的次數(shù)為1900次,主存完成存取的次數(shù)為100次,已知cache存取周期為50ns,主存存取周期為250ns,求cache/主存系統(tǒng)的效率
25、和平均訪(fǎng)問(wèn)時(shí)間。 h=Nc/(Nc+Nm)=1900/(1900+100)=0.95 r=tm/tc=250ns/50ns=5(主存慢于Cache的倍率) e=1/(r+(1-r)h)=1/(5+(1-5)0.95=83.3% (訪(fǎng)問(wèn)效率) ta=tc/e=50ns/0.833=60ns ,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,49/71,A,高速緩沖存儲(chǔ)器Cache(2-1),A,主存地址與Cache地址的映像變換,Cache的地址映像,A,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,50/71,高速緩沖存儲(chǔ)器Cache(2-2),Cache的地址映像的舉例 例:某機(jī)主存容量為1M
26、B;Cache容量為8KB,Cache和主存等分為相同大小的頁(yè),每頁(yè)512B,主存劃分為2048頁(yè),Cache劃分為16頁(yè),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,51/71,無(wú)論選擇那種映射方式,都要把主存和cache劃分為同樣大小的“塊”。 選擇哪種映射方式,要考慮: 硬件是否容易實(shí)現(xiàn) 地址變換的速度是否快 主存空間的利用率是否高 主存裝入一塊時(shí),發(fā)生沖突的概率 以下我們介紹三種映射方法,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,52/71,高速緩沖存儲(chǔ)器Cache(3-1),Cache的地址映像 直接映像: 主存、Cache以同等大小分頁(yè),主存的頁(yè)只能復(fù)制到某一固定Cache頁(yè)
27、,主存每組第N頁(yè)對(duì)應(yīng) Cache第N頁(yè),0頁(yè),16頁(yè),2032頁(yè),0頁(yè),主存以Cache大小分組,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,53/71,高速緩沖存儲(chǔ)器Cache(3-2),Cache的地址映像 直接映像: 主存地址與Cache地址,0,1,511,0 0 0,0,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,54/71,高速緩沖存儲(chǔ)器Cache(3-3),頁(yè)號(hào),標(biāo)記,標(biāo)記,命中,不命中,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,55/71,高速緩沖存儲(chǔ)器Cache(3-4),Cache的地址映像(直接映像): 舉例: 主存地址為2B3A5H,在直接映像方式下該地址指向主
28、存的第幾組、第幾頁(yè)的第幾個(gè)單元?,2B3A5H = (00101011001110100101)2,(0010101)2 = 15H = 21,(1001)2 = 9,(110100101)2 = 1A5H = 421,該地址指向主存的第21組、第9頁(yè)的第421個(gè)單元,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,56/71,高速緩沖存儲(chǔ)器Cache(3-5),Cache的地址映像(直接映像) : 最優(yōu)情況與最差情況,0頁(yè),16頁(yè), 優(yōu)點(diǎn):映像方式簡(jiǎn)單, 實(shí)現(xiàn)代價(jià)小, 缺點(diǎn):不夠靈活, Cache得不到充分利用,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,57/71,高速緩沖存儲(chǔ)器Cache
29、(4),Cache的組織 地址映像 全相聯(lián)映像:,主存的每一頁(yè)能復(fù)制到Cache的任何一頁(yè),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,58/71,高速緩沖存儲(chǔ)器Cache(5),Cache的組織 地址映像 組相聯(lián)映像:,主存與Cache都分組:主存中一個(gè)組內(nèi)的頁(yè)數(shù)與Cache中的分組數(shù)相同,主存頁(yè)與Cache組號(hào)固定映像,即主存每組第N頁(yè)對(duì)應(yīng) Cache第N組,Cache組內(nèi)自由映像,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,59/71,高速緩沖存儲(chǔ)器Cache(6-1),Cache的組織 替換算法 先進(jìn)先出算法FIFO 按頁(yè)面調(diào)入Cache的先后順序決定調(diào)出順序 最不經(jīng)常使用算法LF
30、U 近期訪(fǎng)問(wèn)次數(shù)最少的頁(yè)面調(diào)出 最近最少使用算法LRU 近期使用最少的頁(yè)面先調(diào)出,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,60/71,高速緩沖存儲(chǔ)器Cache(6-2),Cache的組織 Cache的讀/寫(xiě)過(guò)程 讀:將主存地址同時(shí)送往主存和Cache 寫(xiě):,Cache命中,Cache失敗,從主存讀,寫(xiě)回法,全寫(xiě)法,同時(shí)寫(xiě)Cache和主存,將數(shù)據(jù)送訪(fǎng)存源,Cache頁(yè)被替換時(shí),才寫(xiě)入主存,寫(xiě)一次法,第一次寫(xiě)cache和主存,以后只寫(xiě)cache,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,61/71,高速緩沖存儲(chǔ)器Cache(6-3),Cache的組織 多層次Cache存儲(chǔ)器,片內(nèi)Cach
31、e(L1),片外Cache(L2),集成在CPU芯片內(nèi),統(tǒng)一Cache,安裝在主板上,分立Cache,指令和數(shù)據(jù)在同一個(gè)Cache中,在取指令和取數(shù)的負(fù)載之間自動(dòng)平衡,指令和數(shù)據(jù)分別在不同的Cache中, 避免了Cache在指令預(yù)取器和執(zhí)行單元之間的競(jìng)爭(zhēng)。,L1,2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,62/71,高速緩沖存儲(chǔ)器Cache(7-1),Pentium4 CPU的Cache組織,L1(16K)分立Cache,L2(256KB),8K數(shù)據(jù) + 8K指令,八路組相聯(lián),雙重獨(dú)立總線(xiàn),CPU到L2、L3,CPU到主存,L3(1MB),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,63
32、/71,3級(jí)cache結(jié)構(gòu) L3內(nèi)容是主存的子集 L2內(nèi)容是L3的子集 L1內(nèi)容是L2的子集 L1分成8K的指令cache和8K的數(shù)據(jù)cache 指令cache是單端口256位,只讀 數(shù)據(jù)cache是雙端口(每個(gè)32位),讀寫(xiě),采用2路組相聯(lián)結(jié)構(gòu)128組*2行/組*32字節(jié)/行=8KB字節(jié),高速緩沖存儲(chǔ)器Cache(7-2),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,64/71,基本原理圖,高速緩沖存儲(chǔ)器Cache(7-3),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,65/71,主要包括四個(gè)部分: 取指/譯碼單元:順序從L2cache中取程序指令,將它們譯成一系列的微指令,并存入L1指
33、令cache中。 亂序執(zhí)行邏輯:依據(jù)數(shù)據(jù)相關(guān)性和資源可用性,調(diào)度微指令的執(zhí)行,微指令可按不同于所取機(jī)器指令流的順序被調(diào)度執(zhí)行。 執(zhí)行單元:它執(zhí)行微指令,從L1數(shù)據(jù)cache中取所需數(shù)據(jù),并在寄存器組中暫存運(yùn)算結(jié)果。 存儲(chǔ)器子系統(tǒng):包括L2cache、L3cache和系統(tǒng)總線(xiàn)。當(dāng)L2、L3cache未命中時(shí),使用系統(tǒng)總線(xiàn)訪(fǎng)問(wèn)主存。系統(tǒng)總線(xiàn)還用于訪(fǎng)問(wèn)I/O資源。,高速緩沖存儲(chǔ)器Cache(7-4),2020/8/16,計(jì)算機(jī)組成原理計(jì)算機(jī)學(xué)院,66/71,例題,例2 設(shè)某計(jì)算機(jī)采用直接映像Cache,已知容量為4096B(假設(shè)cache頁(yè)大小為1B) 1)若CPU依次從主存單元0,1,99和4096,4097,4195交替取指令,循環(huán)執(zhí)行10次,問(wèn)命中率多少? 2)如Cache存取時(shí)間為10ns,主存存取時(shí)間為100ns,Cache命中率為95%,求平均存取時(shí)間? 1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- MY銀行供應(yīng)鏈金融保理業(yè)務(wù)流程優(yōu)化研究
- 全GFRP筋增強(qiáng)混凝土剪力墻抗震性能研究
- 故事力法則下鄉(xiāng)村文旅景觀規(guī)劃設(shè)計(jì)研究-以浙江新昌縣棠村村為例
- 環(huán)境安全健康之間關(guān)系
- 護(hù)理質(zhì)量管理人員培訓(xùn)大綱
- 肺炎性心臟病護(hù)理
- 甲狀腺結(jié)節(jié)健康教育及指導(dǎo)
- 在線(xiàn)教育社群運(yùn)營(yíng)策劃方案
- 護(hù)理心臟驟停的急救與后續(xù)管理
- 結(jié)腸腫瘤科普
- 2022-2023學(xué)年北京市東城區(qū)高二(下)期末化學(xué)試卷(含解析)
- 防溺水老師培訓(xùn)課件
- 《植物生長(zhǎng)與環(huán)境》課程標(biāo)準(zhǔn)(含課程思政)
- 鐵路行車(chē)組織(高職)全套教學(xué)課件
- 注塑標(biāo)準(zhǔn)成型條件表電子表格模板
- 道閘系統(tǒng)施工方案
- 配置管理與漏洞修復(fù)
- 新版中國(guó)復(fù)發(fā)難治性急性髓系白血病診療指南
- 保潔巡查記錄表
- 成事的時(shí)間管理
- 國(guó)開(kāi)大學(xué)2023年01月22503《學(xué)前兒童健康教育活動(dòng)指導(dǎo)》期末考試答案
評(píng)論
0/150
提交評(píng)論