計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第四章_第1頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第四章_第2頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第四章_第3頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第四章_第4頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第四章_第5頁(yè)
已閱讀5頁(yè),還剩58頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第四章 存儲(chǔ)體系概 述本章著重講述存貯體系的基本概念并行主存系統(tǒng)的組成虛擬存貯器的原理Cache存貯器的原理虛實(shí)地址的映象和變換替換算法影響性能的因素分析及軟硬件功能分配中的某些問(wèn)題本章的基本要求并行主存系統(tǒng)的基本要求:領(lǐng)會(huì)發(fā)展存貯體系的必要性及存貯體系的兩個(gè)分支。了解并行主存系統(tǒng)的各種組織形式。掌握并行主存系統(tǒng)的極限頻寬和實(shí)際頻寬的關(guān)系與計(jì)算。領(lǐng)會(huì)并行主存局限性以及發(fā)展存貯體系的必要性。了解有關(guān)存貯體系的性能參數(shù)及相關(guān)結(jié)論。4本章的基本要求虛擬存儲(chǔ)器的基本要求:理解虛擬存貯器的工作原理;掌握頁(yè)式虛擬存貯器的虛、實(shí)地址字段對(duì)應(yīng)關(guān)系和地址映象規(guī)則。熟練掌握在頁(yè)式虛擬存貯器中,頁(yè)面裝入和替換的過(guò)程

2、,并能計(jì)算出頁(yè)面命中率。理解堆棧型替換算法的定義。領(lǐng)會(huì)在虛擬存貯器中對(duì)頁(yè)面失效的處理及內(nèi)部地址映象表中的快慢表機(jī)構(gòu)。 5本章的基本要求高速緩存存儲(chǔ)器的基本要求:了解Cache存貯器的組成、工作原理。掌握Cache存貯器中的組相聯(lián)地址映象規(guī)則,相應(yīng)的映象表機(jī)構(gòu)和虛、實(shí)地址變換過(guò)程。給出主存的塊地址流后,采用組相聯(lián)或直接映象、LRU或FIFO替換算法時(shí),能 熟練畫(huà)出各主存塊裝入Cache和其被替換的過(guò)程示意圖,并計(jì)算出Cache塊的命中率。6一、存貯體系的概念與并行主存系統(tǒng)1 存貯系統(tǒng)的基本要求 對(duì)存貯系統(tǒng)的基本要求是:大容量、高速度、低價(jià)格。 存儲(chǔ)器容量SM=WLm 存儲(chǔ)器速度可以用存儲(chǔ)周期TM

3、和頻寬Bm來(lái)描述。 TM是存貯器連續(xù)訪問(wèn)時(shí)所需要的間隔時(shí)間; Bm是指存貯器連續(xù)訪問(wèn)時(shí)能提供的數(shù)據(jù)傳送速率: Bm=Wm/ TM7一、存貯體系的概念與并行主存系統(tǒng)2 發(fā)展存儲(chǔ)體系的必要性 存在的問(wèn)題: 1) 容量增大,速度會(huì)下降,價(jià)格會(huì)升高; 2)速度升高,價(jià)格也會(huì)升高。 解決問(wèn)題的思路: 1)改進(jìn)工藝、提高技術(shù)、降低成本; 2)配置多種性能價(jià)格不同的存貯器組成系統(tǒng),使所有信息以各種方式分布于不同的存儲(chǔ)器上。8一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字9一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字10一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字BM=W/T

4、M11一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字BM=W/TM12一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字BM=W/TMBM=4W/TM一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字BM=W/TMBM=4W/TM一、存貯體系的概念與并行主存系統(tǒng)單體單字單體多字多體單字BM=W/TMBM=4W/TMBM=4W/TM一、存貯體系的概念與并行主存系統(tǒng)單體多字存儲(chǔ)器主要缺點(diǎn):(訪問(wèn)沖突大)1)取指沖突;2)讀操作數(shù)沖突;3)寫(xiě)數(shù)據(jù)沖突;4)讀寫(xiě)沖突;單體多字一、存貯體系的概念與并行主存系統(tǒng)單體多字存儲(chǔ)器與多體單字存儲(chǔ)器的區(qū)別:1)前者并行讀出的數(shù)據(jù)其地址必須是連

5、續(xù)的且在同一單元內(nèi);2)后者并行讀出的數(shù)據(jù)可以分屬不同的分體,地址無(wú)需連續(xù),因?yàn)槊總€(gè)存儲(chǔ)體均有自己的地址譯碼、讀寫(xiě)驅(qū)動(dòng)等外圍電路。一、存貯體系的概念與并行主存系統(tǒng)一、存貯體系的概念與并行主存系統(tǒng)4 并行主存系統(tǒng)的局限性主要缺點(diǎn):分體沖突;5 存儲(chǔ)體系的形成與分支 所謂存貯體系指的是構(gòu)成存貯系統(tǒng)的n種不同的存貯器(M1Mn)之間,配上輔助軟硬件或輔助硬件,使之從應(yīng)用程序員來(lái)看,他們?cè)谶壿嬌鲜且粋€(gè)整體。讓存貯層次的等效訪問(wèn)速度接近于最高層M1的,容量是最低層 Mn 的,每位價(jià)格是接近于 Mn 的。典型的兩級(jí)存貯體系是虛擬存貯器和Cache存貯器。一、存貯體系的概念與并行主存系統(tǒng) 虛擬存貯器是從主存

6、容量滿足不了要求提出來(lái)的。在主存和輔存之間,增加輔助的軟硬件,讓它們構(gòu)成一個(gè)整體。從CPU看,速度接近于主存的,容量是輔存的,每位價(jià)格接近于輔存的。主存輔存一、存貯體系的概念與并行主存系統(tǒng)Cache存貯器是從主存速度滿足不了要求提出來(lái)的。在物理Cache和主存之間,加設(shè)輔助硬件,讓它們構(gòu)成一個(gè)整體。從CPU看,速度接近于物理Cache的,容量是主存的,每位價(jià)格接近于主存的。Cache主存一、存貯體系的概念與并行主存系統(tǒng)6 存儲(chǔ)體系的性能參數(shù)C=(C1SM1+C2SM2)/(SM1+SM2)T=HT1+(1-H)T2 在設(shè)計(jì)存貯體系時(shí),需要在選擇高命中率的算法、層次化相鄰兩級(jí)存貯器之間的容量差和

7、速度差,以及所增設(shè)的輔助軟硬件價(jià)格等多個(gè)因素之間進(jìn)行綜合權(quán)衡。C1、SM1、T1C2、SM2、T2C、SM、TM1M2一、存貯體系的概念與并行主存系統(tǒng) 7 存貯體系依據(jù)于程序的局部性 程序的局部性表現(xiàn)在 時(shí)間和空間兩個(gè)方面。時(shí)間上的局部性是因?yàn)槌绦虼嬖谥h(huán)。空間上的局部性是因?yàn)槌绦蛑写蟛糠种噶钍琼樞虼尜A和順序被取出來(lái)執(zhí)行的,數(shù)據(jù)一般也是以向量、數(shù)組、樹(shù)、表等形式簇聚地存貯在一起的。最近的未來(lái)要用的指令和數(shù)據(jù)大多局限于正在用的指令和數(shù)據(jù),或是與這些指令和數(shù)據(jù)位置上鄰近的單元。這樣,就可以把目前常用或?qū)⒁玫降男畔㈩A(yù)先放在容量較小的第一級(jí)存貯器M1中,從而使CPU的訪問(wèn)速度可接近于M1的。一、存

8、貯體系的概念與并行主存系統(tǒng)8 存貯體系的透明性 虛擬存貯器和Cache存貯器對(duì)應(yīng)用程序員都是透明的,不需要對(duì)應(yīng)用程序做任何修改就可以在系統(tǒng)上運(yùn)行。由于CPU與主存的速度差只有一個(gè)數(shù)量級(jí),主存與輔存之間的速度差卻有3至4個(gè)數(shù)量級(jí),所以,Cache存貯器只能全部采用硬件來(lái)實(shí)現(xiàn)。這樣,Cache存貯器對(duì)系統(tǒng)程序員也是透明的,操作系統(tǒng)不參予對(duì)Cache存貯器的管理。而在虛擬存貯器中,為了降低系統(tǒng)的成本,讓不少功能依靠操作系統(tǒng)中的虛擬存貯管理軟件來(lái)實(shí)現(xiàn)。因此,虛擬存貯器對(duì)系統(tǒng)程序員則是不透明的。二、虛擬存貯器段式存貯管理 根據(jù)所用的存貯映象算法不同,虛擬存貯器可以有段式、頁(yè)式和段頁(yè)式三種不同的存貯管理方

9、式。1 段式存貯管理方式: 在系統(tǒng)工作時(shí),根據(jù)所給的某道程序虛地址,由該道程序的程序號(hào)經(jīng)硬件自動(dòng)到段表基址寄存器組中取出相應(yīng)該程序的段表起始地址。將段表起始地址與程序地址中給出的段號(hào)相加后,到該程序段表中讀出相應(yīng)行中的裝入位。若裝入位為“0”,就發(fā)生段失效故障。此時(shí),程序自動(dòng)換道,由I/O處理機(jī)去調(diào)段,而CPU轉(zhuǎn)去執(zhí)行另一道程序。若裝入位為“1”,就讀出段映象表中該行的地址字段的值。將此地址字段的值與程序虛地址的段內(nèi)位移相加,就形成訪存的物理地址。按此物理地址就可以訪問(wèn)所需要的物理存貯單元。利用段表中的段長(zhǎng)字段可以判斷出該段的地址是否越界。利用段表中的訪問(wèn)方式字段可以判斷出這次訪問(wèn)是否會(huì)發(fā)生訪

10、問(wèn)方式保護(hù)。 二、虛擬存貯器段式存貯管理 將程序按邏輯意義分成段,各段順序編號(hào);各段程序都以該段的起點(diǎn)為0相對(duì)編址。 設(shè)置段表,程序分幾段,段表有幾行,行與段順序?qū)?yīng);地址字段記錄、裝入位、段長(zhǎng)。 如果系統(tǒng)有N道程序,就有N個(gè)段映象表。用N個(gè)段表基址寄存器分別記錄各道程序的段表在主存中的起始地址。二、虛擬存貯器段式存貯管理段表二、虛擬存貯器段式存貯管理 段式存貯管理方式為了對(duì)實(shí)主存的空間進(jìn)行分配和回收,段式存貯器需要為操作系統(tǒng)配備一個(gè)實(shí)主存空間管理表,進(jìn)行存貯管理。它包括占用區(qū)域表和可用區(qū)域表兩部分。在分配主存空間時(shí),可采用下述兩種方法:二、虛擬存貯器段式存貯管理首先分配法:掃描可用區(qū)域表,找

11、到可用區(qū)域立即分配;二、虛擬存貯器段式存貯管理最佳分配法:掃描全部可用區(qū)域表,分配找到可用區(qū)域,使的分配后段間可用區(qū)零頭最小;二、虛擬存貯器段式存貯管理段式存貯管理的優(yōu)點(diǎn)是:支持了程序的模塊化設(shè)計(jì)和并行編程的要求,縮短了程序的編制時(shí)間;各個(gè)程序段的修改相互不會(huì)有影響;便于多道程序共享主存中某些段,不必將它們?cè)谖锢碇鞔嬷兄貜?fù)存放;段式存貯管理最主要的問(wèn)題是:段映象表機(jī)構(gòu)太龐大,其地址字段和段長(zhǎng)字段都太長(zhǎng);查表進(jìn)行地址變換的速度太慢;對(duì)主存各區(qū)域的存貯管理十分麻煩;存貯器內(nèi)部的段間零頭浪費(fèi)大,有時(shí)難以利用。結(jié)論:?jiǎn)渭兊亩问酱尜A管理在實(shí)際的系統(tǒng)中無(wú)法采用。 將程序和內(nèi)存分稱大小相等的頁(yè),分別按頁(yè)順序

12、編號(hào);虛頁(yè)號(hào)和實(shí)頁(yè)號(hào)。讓程序的起點(diǎn)必須處在主存中某一個(gè)頁(yè)面位置的起點(diǎn)上。 設(shè)置頁(yè)表,程序分幾頁(yè),頁(yè)表有幾行,行與頁(yè)順序?qū)?yīng);虛頁(yè)號(hào)、實(shí)頁(yè)號(hào)、裝入位。 如果系統(tǒng)有N道程序,就有N個(gè)頁(yè)映象表。用N個(gè)頁(yè)表基址寄存器分別記錄各道程序的頁(yè)表在主存中的起始地址。二、虛擬存貯器頁(yè)式存貯管理二、虛擬存貯器頁(yè)式存貯管理頁(yè)表二、虛擬存貯器頁(yè)式存貯管理頁(yè)式存貯管理的優(yōu)點(diǎn):所用映象表的硬件量少;地址變換的速度快;主存空間的分配和管理簡(jiǎn)便得多。頁(yè)式存貯管理最主要的不足是:缺乏段式存貯管理的優(yōu)點(diǎn)。結(jié)論:頁(yè)式存貯管理在實(shí)際中使用較多。將段式存貯管理和頁(yè)式存貯管理加以結(jié)合,取長(zhǎng)補(bǔ)短,引出了段頁(yè)式的存貯管理。二、虛擬存貯器段頁(yè)

13、式存貯管理3段頁(yè)式存貯管理方式:分主存為大小相等的頁(yè),并順序編號(hào);將程序按邏輯意義先分成段,并順序編號(hào);各段再分成與實(shí)頁(yè)相同大小的頁(yè),各段的頁(yè)單獨(dú)順序編號(hào);每道程序通過(guò)一個(gè)段表和相應(yīng)的一組頁(yè)表來(lái)進(jìn)行程序在主存空間中的定位;段表和頁(yè)表一般在主存中,段表的起始地址在段表基址寄存器中,頁(yè)表的起始地址在段表中;段(頁(yè))表中的每一行對(duì)應(yīng)一個(gè)段頁(yè));二、虛擬存貯器地址映象與變換全相聯(lián)映象:讓每道程序的任何一個(gè)虛頁(yè)均可以映象裝入到主存中任何一個(gè)實(shí)頁(yè)位置上。地址映象:建立虛頁(yè)和實(shí)頁(yè)的對(duì)應(yīng)關(guān)系;地址變換:根據(jù)多用戶虛地址計(jì)算實(shí)地址。實(shí)地址=實(shí)頁(yè)號(hào)*每頁(yè)字?jǐn)?shù)+頁(yè)內(nèi)偏移虛頁(yè)號(hào)=Int(虛地址/每頁(yè)字?jǐn)?shù))頁(yè)內(nèi)偏移=M

14、od(虛地址,每頁(yè)字?jǐn)?shù))二、虛擬存貯器地址映象與變換頁(yè)面失效:CPU按虛地址訪存時(shí)未找到所需的程序頁(yè),稱為頁(yè)面失效。頁(yè)面爭(zhēng)用:兩個(gè)以上的虛頁(yè)要想進(jìn)入主存中同一個(gè)實(shí)頁(yè)位置時(shí),就會(huì)產(chǎn)生實(shí)頁(yè)沖突,或稱發(fā)生了頁(yè)面爭(zhēng)用。地址映象方式的選擇應(yīng)盡量能降低實(shí)頁(yè)沖突發(fā)生的概率。因此,虛擬存貯器都采用全相聯(lián)的映象規(guī)則,實(shí)頁(yè)沖突發(fā)生的概率必將是最低的。二、虛擬存貯器頁(yè)面替換算法4 頁(yè)面替換算法當(dāng)頁(yè)面失效后,從輔存中將一個(gè)虛頁(yè)調(diào)入主存時(shí)又發(fā)生了實(shí)頁(yè)沖突,這就要啟用替換算法,選出主存中的一個(gè)頁(yè),將其替換出去。替換算法的選擇應(yīng)當(dāng)盡可能使主存的命中率高些,算法的實(shí)現(xiàn)要方便,所需的軟硬件要少,成本要低。二、虛擬存貯器頁(yè)面替換

15、算法1)隨機(jī)(RAND)替換算法是用軟件或硬件的隨機(jī)數(shù)生成器產(chǎn)生出一個(gè)待替換頁(yè)的頁(yè)號(hào)。 此替換算法雖然簡(jiǎn)單,容易實(shí)現(xiàn),但由于未反映出程序的局部性特點(diǎn),命中率很低,所以無(wú)法實(shí)用。2)先進(jìn)先出(FIFO)替換算法是選擇其中最早裝入主存的虛頁(yè),將其替換出去。 這種算法實(shí)現(xiàn)起來(lái)不復(fù)雜,但不能很好地反映出程序的局部性,因此主存的命中率不一定很高。由于實(shí)現(xiàn)成本低,目前仍有不少系統(tǒng)在用。二、虛擬存貯器頁(yè)面替換算法3)近期最少使用(LRU)替換算法是選擇近期使用得最少的頁(yè),將其替換出去。 這種算法能比較確切地反映出程序的局部性特點(diǎn)。也稱為近期最久未用過(guò)的替換算法。4)優(yōu)化(OPT)替換算法是選擇未來(lái)的近期里不

16、用或很久才用的頁(yè)面,將其替換出去。 這種算法雖然不實(shí)用,但它可作為評(píng)價(jià)所用替換算法好壞的一個(gè)標(biāo)準(zhǔn),哪種替換算法的主存命中率能接近于OPT法的,它就是好的替換算法。二、虛擬存貯器頁(yè)面替換算法例1有一個(gè)虛擬存貯器,主存有03四頁(yè)位置,程序有07八個(gè)虛頁(yè),采用全相聯(lián)映象和LRU替換算法。給出如下程序頁(yè)地址流:2,3,5,2,4,0,1,2,4,6。 (1) 分配給程序3個(gè)實(shí)頁(yè),請(qǐng)畫(huà)出上述頁(yè)地址流工作過(guò)程中,主存各頁(yè)位置上所裝程序各頁(yè)頁(yè)號(hào)的變化過(guò)程圖,標(biāo)出命中時(shí)刻。 (2) 分配給程序4個(gè)實(shí)頁(yè),請(qǐng)畫(huà)出上述頁(yè)地址流工作過(guò)程中,主存各頁(yè)位置上所裝程序各頁(yè)頁(yè)號(hào)的變化過(guò)程圖,求此時(shí)命中率。二、虛擬存貯器頁(yè)面替

17、換算法5)堆棧型替換算法對(duì)任一程序的頁(yè)地址流作兩次主存頁(yè)面分配,分別分配給m個(gè)和n個(gè)頁(yè)面,并且有mn,如果在任何時(shí)刻t,主存中的虛頁(yè)集合Bt都滿足關(guān)系: Bt(m) Bt( n)則這類替換算法稱為堆棧型替換算法。通俗地講,凡屬堆棧型替換算法,當(dāng)增加分配給程序的實(shí)頁(yè)數(shù)目時(shí),其命中率一般會(huì)提高,至少不會(huì)下降。二、虛擬存貯器頁(yè)面替換算法例3 頁(yè)式虛擬存貯器共有9頁(yè)空間準(zhǔn)備分配給A、B兩道程序。已知B道程序若給其分配4頁(yè)時(shí),命中率為8/15;而若分配5頁(yè)時(shí),命中率可達(dá)10/15。現(xiàn)給出A道程序的頁(yè)地址流為2,3,2,1,5,2,4,5,3,2,5,2,1,4,5。 (1)畫(huà)出用堆棧對(duì)A道程序頁(yè)地址流的

18、模擬處理過(guò)程圖,統(tǒng)計(jì)給其分配4頁(yè)和5頁(yè)時(shí)的命中率。 (2)根據(jù)已知條件和上述統(tǒng)計(jì)結(jié)果,給A、B兩道程序各分配多少實(shí)頁(yè),可使系統(tǒng)總的命中率最高?系統(tǒng)總的命中率是多少?二、虛擬存貯器影響H的主要因素6 影響H的主要因素(1)頁(yè)面替換算法(2)頁(yè)地址流(3)所分配到的實(shí)頁(yè)數(shù)(4)頁(yè)面的大?。?)主存容量等多種因素有關(guān)。二、虛擬存貯器提高虛擬存儲(chǔ)器等效訪問(wèn)速度的措施理論依據(jù):程序的局部性特點(diǎn)。硬件支持:小容量快速存儲(chǔ)器。那些地方還可繼續(xù)改進(jìn)? 24 12 12 二、虛擬存貯器提高虛擬存儲(chǔ)器等效訪問(wèn)速度的措施理論依據(jù):一段時(shí)間內(nèi)快表對(duì)應(yīng)一個(gè)用戶或任務(wù)。1 有什么缺陷?2 如何改進(jìn)? 24 12 12 二

19、、虛擬存貯器提高虛擬存儲(chǔ)器等效訪問(wèn)速度的措施第三步:改進(jìn)快表1 有什么缺陷? 如何改進(jìn)?2那些地方還可繼續(xù)改進(jìn)?二、虛擬存貯器提高虛擬存儲(chǔ)器等效訪問(wèn)速度的措施三、高速緩沖存貯器 Cache存貯器和虛擬存貯器在工作原理上并沒(méi)有本質(zhì)上的區(qū)別,只是因?yàn)镃ache存貯器的訪問(wèn)速度要求很高,所以在虛實(shí)地址字段的對(duì)應(yīng)關(guān)系、信息塊大小的劃分、虛實(shí)地址映象規(guī)則、映象表機(jī)構(gòu)、地址的變換和替換算法的實(shí)現(xiàn)、透明性及性能分析上有著較大的差異。三、高速緩沖存貯器1 Cache的工作原理分和主存為大小相等的塊,為了加速調(diào)塊,一般讓Cache塊的大小取成主存在一個(gè)主存周期里能訪問(wèn)到的字節(jié)數(shù)。因此,主存貯器都采用模m多分體多

20、字交叉并行訪問(wèn)的組織形式。受主存實(shí)際效率的影響,模數(shù)m不可能很高,使得Cache塊的大小一般只有十幾到幾十個(gè)字節(jié),只是虛擬存貯器頁(yè)面大小的幾十分之一;三、高速緩沖存貯器2 地址的映象與變換 在Cache存貯器中,所謂地址的映象就是讓主存塊能裝入到物理Cache中的哪些塊位置的規(guī)則。映象規(guī)則好壞的評(píng)價(jià)標(biāo)準(zhǔn):進(jìn)行地址映象和變換所需增加的輔助硬件是否少;價(jià)格是否便宜;地址變換的速度是否高;實(shí)現(xiàn)是否方便;Cache的塊沖突概率是否比較低;物理Cache的空間利用率是否比較高。三、高速緩沖存貯器全相聯(lián)映象是在主存和Cache都機(jī)械等分成相同大小的塊后,讓主存中的任何一個(gè)塊均可以映象裝入到Cache中任何

21、一個(gè)塊位置上。三、高速緩沖存貯器全相聯(lián)映象優(yōu)點(diǎn):Cache塊沖突概率最低Cache空間利用率最高全相聯(lián)映象缺點(diǎn):目錄表容量太大,成本極高。結(jié)論:無(wú)法實(shí)用。Why?三、高速緩沖存貯器直接映象是在主存和Cache都機(jī)械等分成相同大小的塊后,再將主存空間按物理Cache大小等分成區(qū),讓主存中每一個(gè)區(qū)中的各個(gè)塊均只能按位置一一對(duì)應(yīng)裝入Cache中相應(yīng)的塊位置上。也就是說(shuō),當(dāng)物理Cache共有n個(gè)塊位置時(shí),讓主存第i塊只能唯一映象裝入到物理Cache的第i mod n塊位置上。三、高速緩沖存貯器直接映象優(yōu)點(diǎn):目錄表所需的硬件量很少,成本低,易于實(shí)現(xiàn)。采用直接映象時(shí),查表找區(qū)號(hào)可以與訪物理Cache同時(shí)進(jìn)

22、行。所以Cache的實(shí)際訪問(wèn)速度很快。直接映象缺點(diǎn):Cache塊沖突的概率很高,Cache的空間利用率很低。結(jié)論:現(xiàn)在已很少使用。Why?三、高速緩沖存貯器組相聯(lián)映象規(guī)則:分Cache和主存為大小相等的塊;Cache分為幾個(gè)大小相同的組,并順序編號(hào);主存各區(qū)以同樣方式分組,使的主存每區(qū)組數(shù)等于Cache的組數(shù),各區(qū)的分組單獨(dú)順序編號(hào);主存和Cache各組內(nèi)的塊也單獨(dú)順序編號(hào)(以組為單位),一般從0開(kāi)始;主存的組與Cache的組通過(guò)組號(hào)直接映象,組內(nèi)塊間全相聯(lián)映象;三、高速緩沖存貯器三、高速緩沖存貯器地址映象和變換通過(guò)目錄表來(lái)完成, Cache分幾組,目錄表有幾個(gè);組內(nèi)有幾塊,目錄表有幾行,每行

23、有三個(gè)字段:區(qū)號(hào)(nd)、主存組內(nèi)塊號(hào)(S)、 Cache組內(nèi)塊號(hào)(S);可否改進(jìn)?三、高速緩沖存貯器一種改進(jìn)方法:通常所有目錄表存于一個(gè)單體多字存儲(chǔ)器中,每存儲(chǔ)單元字?jǐn)?shù)m= Cache每組內(nèi)塊數(shù), Cache有幾組,存儲(chǔ)器有幾行(存儲(chǔ)單元),存儲(chǔ)器設(shè)有m個(gè)相等比較電路,按地址訪問(wèn),按內(nèi)容相聯(lián)比較。三、高速緩沖存貯器例4 Cache一主存存貯層次中,主存有07共8塊,Cache為4塊,采用組相聯(lián)映象。假設(shè)Cache已先后訪問(wèn)并預(yù)取進(jìn)了主存的第5、1、3、7塊,現(xiàn)訪存塊地址流又為1、2、4、1、3、7、0、1、2、5、4、6時(shí), (1)畫(huà)出用LRU替換算法,Cache內(nèi)各塊的實(shí)際替換過(guò)程圖,并標(biāo)

24、出命中時(shí)刻。其中Cache分為兩組。 (2)求出在此期間的Cache命中率。三、高速緩沖存貯器例5 Cache分S116塊,主存分S2256塊,讓主存第i塊映象裝入到Cache中的第j塊,jI mod Sl。 (1)這是什么映象規(guī)則? (2)畫(huà)出主存地址到Cache地址變換過(guò)程的示意圖,圖中應(yīng)標(biāo)識(shí)出主存與Cache地址各字段位數(shù)及對(duì)應(yīng)關(guān)系;指出用于地址映象變換的輔助表存貯器的寬度和單元數(shù);對(duì)變換過(guò)程作簡(jiǎn)單的文字說(shuō)明。三、高速緩沖存貯器 3 提高Cache命中率的取算法 Cache的取算法會(huì)影響到Cache的塊命中率。按需取進(jìn)法是在Cache發(fā)生塊失效時(shí)才去調(diào)塊。預(yù)取法是在將要用到某塊之前,就已經(jīng)將該塊預(yù)先取進(jìn)Cache中了。 預(yù)取算法具體又有恒預(yù)取法和不命中時(shí)預(yù)取法兩種。恒預(yù)取法是在訪問(wèn)到主存第i塊的信息時(shí),不管其是否在Cache中命中,恒將主存第 i +1塊預(yù)取進(jìn)Cache。不命中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論