第5章存儲器系統(tǒng)_第1頁
第5章存儲器系統(tǒng)_第2頁
第5章存儲器系統(tǒng)_第3頁
第5章存儲器系統(tǒng)_第4頁
第5章存儲器系統(tǒng)_第5頁
已閱讀5頁,還剩75頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五章存儲器系統(tǒng)第五章存儲器系統(tǒng)1、存儲器系統(tǒng)概述2、存儲器與CPU的接口3、高速緩存CACHE4、虛擬內(nèi)存技術(shù)馮·諾依曼機數(shù)字計算機由五個部件構(gòu)成,即運算、控制、存儲和輸入、輸出部件。其中運算與控制部件又成為中央處理單元(CPU)。當(dāng)兩者集成在一個器件內(nèi),就是微處理器,1、存儲器系統(tǒng)概述存儲器的分類

存儲系統(tǒng)是計算機系統(tǒng)中存放程序和數(shù)據(jù)的設(shè)備。從不同角度出發(fā),存儲系統(tǒng)有不同的分類方式。1.按工作時與CPU聯(lián)系的密切程度分類可分為主存和輔存,或稱作內(nèi)存和外存。2.按存儲系統(tǒng)讀寫方式分類可分為隨機存儲器(內(nèi)存)和順序存儲器(外存)、可讀寫存儲器和只讀存儲器等。3.按數(shù)據(jù)保存的特性分,暫時存儲和永久存儲。1、存儲器系統(tǒng)概述存儲器的分類4.按存儲器芯片所用的材料分類目前常用的有半導(dǎo)體存儲器、磁存儲器和光存儲器。5.只讀存儲器按數(shù)據(jù)寫入方式分生產(chǎn)時寫入(掩膜),用戶一次性可寫,用戶多次可改寫;光可擦除,電可擦除。6.按存儲器數(shù)據(jù)保存的特點分靜態(tài)存儲器和動態(tài)存儲器7.單總線存儲器,多(雙)總線存儲器。并行總線存儲器,串行存儲器等。1、存儲器系統(tǒng)概述存儲器的性能指標(biāo)存儲容量:其可存儲的二進(jìn)制位數(shù)表容量=存儲單元數(shù)*位數(shù)例如型號為6116的存儲器,前兩位數(shù)字表示類型,后面兩位表示它的容量。為16K位(16384位)。按字節(jié)算容量為2K字節(jié)。而型號為6264的存儲器,它的容量為8K字節(jié)(65536位)。存儲器芯片的主要性能指標(biāo)有4項,即存儲容量、存取速度、可靠性及性能價格比(功耗)存儲器28256,27512的容量各為多少?

AT28C010AT24C010AT25P10241、存儲器系統(tǒng)概述存儲器的性能指標(biāo)存取速度:指從CPU給出存儲器地址開始,到存儲器寫入或讀出數(shù)據(jù)所需要的時間。所需時間越小,存取速度越快。芯片上可見-7為70ns-10為100ns1、存儲器系統(tǒng)概述存儲器的層次結(jié)構(gòu)目前計算機系統(tǒng)中的存儲系統(tǒng)具有如圖所示結(jié)構(gòu)特點:自上而下,存儲容量越來越大,工作速度越來越慢。1、存儲器系統(tǒng)概述存儲器的層次結(jié)構(gòu)CPU內(nèi)部寄存器為處理器的組成部分。計算機系統(tǒng)的存儲器體系結(jié)構(gòu)分三級,即高速緩沖存儲器(Cache)、內(nèi)存儲器和輔助存儲器。Cache提高數(shù)據(jù)處理速度。(Cache速度可與CPU內(nèi)部寄存器速度相當(dāng)。)內(nèi)存儲器存放計算機運行的程序和運行時需要的數(shù)據(jù)。一臺計算機可以沒有Cache,但不能沒有內(nèi)存。CPU可以直接訪問內(nèi)存儲器中的數(shù)據(jù)。但CPU不能直接訪問輔助存儲器中的數(shù)據(jù)。1、存儲器系統(tǒng)概述半導(dǎo)體存儲芯片的結(jié)構(gòu)半導(dǎo)體存儲器芯片由保存數(shù)據(jù)的存儲體矩陣、存儲單元的地址譯碼器、讀寫控制邏輯和三態(tài)數(shù)據(jù)緩沖寄存器等部分組成。存儲體矩陣由存儲元件組成。存儲元件是能存儲一位二進(jìn)制代碼(1或0)的物理器件。N個存儲元件構(gòu)成一個存儲單元,能記憶N位二進(jìn)制代碼,并可以同時進(jìn)行數(shù)據(jù)存取。稱為N位存儲器。存儲器位數(shù)表示同時可讀寫數(shù)據(jù)位數(shù),不代表存儲器的容量。存儲器的容量由地址和數(shù)據(jù)兩部分乘積來表示。半導(dǎo)體存儲器分為RAM和ROM1、存儲器系統(tǒng)概述半導(dǎo)體存儲芯片的結(jié)構(gòu)1、存儲體—由多個基本存儲單元組成,容量即為M×N;2、地址譯碼器—對地址信號進(jìn)行譯碼,選擇存儲體中要訪問的存儲單元;3、數(shù)據(jù)緩沖器—芯片數(shù)據(jù)信號經(jīng)雙向三態(tài)門掛在數(shù)據(jù)總線上,未選中該片,呈高阻狀態(tài);4、讀/寫控制電路—接受來自CPU的片選信號、讀/寫信號。(對ROM—只讀;對DRAM-刷新信號)1、存儲器系統(tǒng)概述半導(dǎo)體存儲芯片的結(jié)構(gòu)存儲器芯片的引線分地址線、數(shù)據(jù)線、控制線,電源與地線。地址線與芯片內(nèi)部的地址譯碼器,用于選擇唯一的存儲單元。數(shù)據(jù)線用于傳送數(shù)據(jù),雙向或單向。用表示讀信號,表示寫信號。為芯片選擇信號,為高電平時,表示該芯片未選中,使三態(tài)緩沖器處于高阻狀態(tài)(斷開)。早期(有的)芯片用為讀寫控制信號,確定對芯片是讀操作還是寫操作,即確定三態(tài)緩沖器的方向。1、存儲器系統(tǒng)概述隨機讀寫存儲器RAM隨機讀寫存儲器RAM,所有單元都可以直接讀/寫。隨機存儲器分為靜態(tài)RAM(StaticRAM)和動態(tài)RAM(DynamicRAM)兩類。靜態(tài)RAM組成的電路復(fù)雜,存儲容量相對較小。但只要不斷電,其中的數(shù)據(jù)就不會丟失,因此外部操作電路簡單,適合存儲容量較小的系統(tǒng)中使用。(靜態(tài)RAM電路可視為一雙穩(wěn)態(tài)觸發(fā)器)動態(tài)RAM要求按一定時間周期對數(shù)據(jù)進(jìn)行重寫(“刷新”),否則會丟失信息。動態(tài)RAM存儲元件結(jié)構(gòu)簡單,因此集成度高(容量大),功耗低。但它要增加動態(tài)刷新電路,外部操作電路復(fù)雜。適合大容量存儲器系統(tǒng)中使用。(動態(tài)RAM可視作電容加開關(guān))。1、存儲器系統(tǒng)概述隨機讀寫存儲器RAM1、存儲器系統(tǒng)概述隨機讀寫存儲器RAM----611616384個存儲元件,8個存儲元件為一組(單元)2048個存儲單元。A10~A011根地址線,8根數(shù)據(jù)線D7~D0

。寫允許信號

輸出允許信號

芯片選擇信號

1、存儲器系統(tǒng)概述隨機讀寫存儲器RAM----6264和622561、存儲器系統(tǒng)概述只讀存儲器ROM只讀存儲器特點是信息可以無限次讀出,并且在斷電后,信息也不會丟失的存儲器。只讀存儲器要在特定的條件下才能寫入。根據(jù)寫入方式只讀存儲器可分為:掩模ROM,可編程ROM(PROM),紫外線擦除可編程只讀存儲器(習(xí)慣上稱為EPROM)和電可擦除只讀存儲器(EEPROM)等。(OTP)只讀存儲器用來保存系統(tǒng)工作時不需要改變的數(shù)據(jù),如PC機中的系統(tǒng)啟動程序、系統(tǒng)自檢程序、基本輸入輸出程序等。在控制系統(tǒng)或智能化儀器、儀表中存儲程序等。1、存儲器系統(tǒng)概述只讀存儲器ROM----EPROM2764、271281、存儲器系統(tǒng)概述只讀存儲器ROM1、存儲器系統(tǒng)概述只讀存儲器ROM----電可擦除只讀存儲器EEPROM1、存儲器系統(tǒng)概述只讀存儲器ROM----電可擦除只讀存儲器EEPROM1、存儲器系統(tǒng)概述不同型號,相同容量芯片的引腳2、存儲器與CPU的接口8086/8088共有20根存儲器的地址線,(16根I/O端口地址線)。16/8根數(shù)據(jù)線。存儲器引線分地址線、數(shù)據(jù)線與控制線(電源和地線)。根據(jù)容量不同(或存儲器單元數(shù)不同),地址線的根數(shù)也不同,它們與CPU的地址線、數(shù)據(jù)線可能也不同(一般少于CPU)。(存儲器結(jié)構(gòu)不同,數(shù)據(jù)線根數(shù)不同)。一臺計算機中所配的存儲容量和存儲器類型要根據(jù)實際需要確定。因此,在設(shè)計計算機的存儲器系統(tǒng)時主要考慮:根據(jù)系統(tǒng)工作要求設(shè)計存儲容量和選擇合適的存儲器芯片,分配各個存儲器芯片在系統(tǒng)中的地址。存儲器芯片總線的連接2、存儲器與CPU的接口

存儲器芯片與CPU地址總線、數(shù)據(jù)總線和控制總線的連接方法比較統(tǒng)一。計算機系統(tǒng)可用多片存儲器芯片組成內(nèi)存系統(tǒng),確定各存儲器芯片在系統(tǒng)中的地址。分配的地址段通過片選信號確定。存儲器芯片的基本連接方法:數(shù)據(jù)線的連接:各存儲器芯片的數(shù)據(jù)總線并聯(lián),再與CPU數(shù)據(jù)(/地址)總線連接。地址線的連接:由于CPU與存儲器地址線根數(shù)不同,因此存儲器芯片都設(shè)計有片選線。各存儲器芯片的地址總線根據(jù)其編號并聯(lián),再與地址鎖存器的輸出相連。存儲器芯片總線的連接2、存儲器與CPU的接口存儲器芯片總線的連接2、存儲器與CPU的接口3.片選線用來確定各芯片在系統(tǒng)內(nèi)所處的物理地址。

4.讀、寫控制線的連接:不同的CPU有不同的信號(及組合)。對8086/8088要用M/IO與RD、或M/IO與WR相與后產(chǎn)生的信號作為存儲器的讀、寫信號。5.電源線:所有芯片的電源線并聯(lián),所有芯片的地線并聯(lián)。確定存儲器芯片在存儲器系統(tǒng)的地址段2、存儲器與CPU的接口線選法:直接以系統(tǒng)的高位地址線作為存儲器芯片的片選信號,連接的特點是簡單,缺點是不能充分利用處理器的尋址能力。適用于系統(tǒng)尋址能力大,而對存儲容量需求較小的系統(tǒng)。注意:不能同時選中兩片存儲器??偩€上只允許有一片芯片的輸出引腳有效。

譯碼法:系統(tǒng)中的高位地址線進(jìn)行譯碼后,作為存儲器芯片的片選信號,能有效地利用地址空間。

線選法舉例:2、存儲器與CPU的接口片內(nèi)單元地址:000~7FFHM0在系統(tǒng)中的物理地址:1000~17FFHM1在系統(tǒng)中的物理地址:800~FFFH若A13也接一片6116,則各存儲器的地址將如何確定?譯碼法----譯碼芯片74ls1382、存儲器與CPU的接口74LS138是3-8譯碼器,它有3個數(shù)據(jù)輸入端、8個數(shù)據(jù)輸出端和3個控制端。芯片的引腳及功能如下圖所示。當(dāng)74LS138譯碼器的三個控制端不為100時,所有數(shù)據(jù)輸出端均為高電平。只有在控制端為l00時,8個譯碼輸出端中的某一個為低電平,其余的仍保持高電平。哪個數(shù)據(jù)輸出端為低電平,由數(shù)據(jù)輸入端C、B、A的狀態(tài)確定,從000到111,對應(yīng)輸出Y0~Y7。這樣,采用三根地址線,通過74LS138可接8片存儲器芯片,并且各端對應(yīng)的在系統(tǒng)中的地址是連續(xù)的。譯碼法----譯碼芯片74ls1382、存儲器與CPU的接口譯碼法----譯碼芯片74ls1382、存儲器與CPU的接口譯碼法舉例:2、存儲器與CPU的接口譯碼法舉例:2、存儲器與CPU的接口存儲器系統(tǒng)與CPU的連接2、存儲器與CPU的接口8086AD0~AD15、8088的AD0~AD7為地址數(shù)據(jù)分時復(fù)用總線,因此要進(jìn)行地址鎖存(8282)。采用什么信號?總線時序分析。同樣A16~A19為地址狀態(tài)總線,也要進(jìn)行地址鎖存。各存儲器芯片相同編號的地址線并聯(lián),并連接到地址鎖存器的輸出端。若采用線選法,將選中的高地址(地址鎖存器輸出端)直接與對應(yīng)芯片CS腳相連。若采用譯碼法,參加譯碼的高地址接譯碼器輸入端,譯碼器的輸出,接各存儲器CS腳。 數(shù)據(jù)總線采用雙向總線驅(qū)動器8286,方向端接CPUDT/R腳,輸出允許端接CPUDEN端。存儲器系統(tǒng)與CPU的連接----外部地址鎖存器2、存儲器與CPU的接口存儲器系統(tǒng)與CPU的連接----總線收發(fā)器2、存儲器與CPU的接口存儲器系統(tǒng)與CPU的連接舉例:2、存儲器與CPU的接口8086的存儲器系統(tǒng)2、存儲器與CPU的接口

8086有16根數(shù)據(jù)線,因此一次可讀、寫16位數(shù)據(jù)。

8086也允許一次讀、寫8位數(shù)據(jù),因此就有用哪8根數(shù)據(jù)線的問題。大部分存儲器芯片均為8位的。因此,要一次可讀、寫16位數(shù)據(jù)要同時對兩片存儲器進(jìn)行操作。不分偶地址和奇地址2、存儲器與CPU的接口地址000~7FFH,每個地址有16位數(shù)據(jù)。MOVAX,[0000H]MOVAX,[0001H]分偶地址和奇地址2、存儲器與CPU的接口EVEN地址:000~FEEODD地址:001~FFF地址分配情況2、存儲器與CPU的接口存儲器與CPU的速度匹配問題2、存儲器與CPU的接口

存儲器的讀寫速度是微型計算機系統(tǒng)工作效率的關(guān)鍵之一。8086,8088(5MHz),8086-2,8088-2(8MHz)靜態(tài)RAM(45~85ns)。處理器給存儲器提供的地址和控制信號必須滿足存儲器的時序參數(shù),其中最重要的是存儲器的存取時間。存儲器讀周期的波形如圖所示

2、存儲器與CPU的接口存儲器與CPU的速度匹配問題----讀周期2、存儲器與CPU的接口2、存儲器與CPU的接口存儲器與CPU的速度匹配問題----讀周期

圖中tRC是CPU對存儲器進(jìn)行讀操作所用的時間,即存儲器進(jìn)行兩次連續(xù)的讀操作所必須間隔的時間(讀周期時間);tA是當(dāng)存儲器得到CPU的地址碼,到存儲單元的數(shù)據(jù)出現(xiàn)在芯片內(nèi)部數(shù)據(jù)總線上所需的時間;信號使數(shù)據(jù)出現(xiàn)在系統(tǒng)數(shù)據(jù)總線上,tCO是輸出數(shù)據(jù)穩(wěn)定所需的時間。當(dāng)微處理器進(jìn)行存儲器讀操作時,要求tRC大于tA+tCO,且要求CPU發(fā)出的讀存儲器控制信號保持有效直到微處理器將總線上的數(shù)據(jù)讀入為止。當(dāng)時序滿足這些條件時CPU對存儲器的讀操作可正確完成,否則就需要插入等待周期Tw。

2、存儲器與CPU的接口存儲器與CPU的速度匹配問題----寫周期2、存儲器與CPU的接口存儲器與CPU的速度匹配問題----寫周期存儲器的寫周期與讀周期類似,除了要求地址和片選信號有效外,只是讀輸出允許信號,變成寫允許信號。當(dāng)?shù)刂沸盘?,?shù)據(jù)信號穩(wěn)定之后,WE變?yōu)榈碗娖剑鎯ζ鲝臄?shù)據(jù)輸入DIN上接收數(shù)據(jù),并存放于存儲緩沖器單元。twc為存儲器寫周期時間。地址信息保持穩(wěn)定,tw為存儲器寫時間,數(shù)據(jù)被寫入存儲單元。tDW是數(shù)據(jù)有效時間,即從數(shù)據(jù)穩(wěn)定到存儲器寫入的時間。

實驗5:設(shè)計計算機要求用PROTEL軟件繪制計算機原理圖。

習(xí)題:1、2、3、4、5實驗和作業(yè)3、高速緩存CACHE了解:Cache的基本概念基本工作原理命中率Cache的分級體系結(jié)構(gòu)3、高速緩存CACHE計算機系統(tǒng)中,提高CPU處理數(shù)據(jù)的速度,是提高系統(tǒng)性能的關(guān)鍵。系統(tǒng)中,與CPU工作的關(guān)系最密切的部件是內(nèi)存儲器。而一般來說,內(nèi)存儲器的速度比CPU低。因此,提高內(nèi)存儲器的速度成為提高系統(tǒng)性能的關(guān)鍵。CACHE:高速緩存,提高數(shù)據(jù)讀取的速度。采用專門硬件電路實現(xiàn),對CPU來講是透明的。CPU“看不見”。3、高速緩存CACHE現(xiàn)代計算機的運行速度不斷提高,就存儲子系統(tǒng)而言,除了存儲器器件本身的工作速度的提高外,還應(yīng)歸功于高速緩沖存儲器(cache)技術(shù)的應(yīng)用。目前的PC機中高速緩存都分為兩個級別:L1cache和L2cache。并且Llcache集成在CPU中。CPU工作時,能直接讀寫的存儲器是主存儲器(內(nèi)存)。絕大部分時間,程序是順序執(zhí)行的,數(shù)據(jù)也是順序存放的。Cache是用小容量的高速存儲器,代替大容量的主存儲器,以達(dá)到提高系統(tǒng)速度的目的。3、高速緩存CACHECACHE的工作原理CPUCache主存DB3、高速緩存CACHE引入cache必須解決的問題cache一定比內(nèi)存容量小,并且小的多,但是要求:1)CPU要訪問的信息,幾乎都能從cache中得到。2)cache對CPU而言是透明的,即不論是否有cache,CPU訪問存儲器的方法都是一樣的,即不需任何附加軟件。相當(dāng)于CPU僅僅“看到”了一個更高速的存儲器(由cache和主存構(gòu)成的)。Cache技術(shù)是用低的成本實現(xiàn)高速、大容量存儲器系統(tǒng)的一種技術(shù)。3、高速緩存CACHECACHE的工作原理3、高速緩存CACHECACHE的工作原理1)CPU輸出的均是主存地址。該地址保存在cache控制部件內(nèi)的主存地址寄存器MA中。2)只有一部分主存的信息能復(fù)制到cache中,控制部件應(yīng)能檢索出哪一部分信息在cache中。3)檢索到要訪問的信息已經(jīng)在cache中時。根據(jù)CAM中的cache地址轉(zhuǎn)而訪問cache。4)如果在cache中未檢索到要訪問的信息。CPU直接訪問主存。同時cache控制部件依據(jù)某種算法將主存中的信息送入cache中。(將該信息所在的整塊信息送到CACHE)3、高速緩存CACHECACHE的地址映射和地址變換將主存和cache按相同字節(jié)數(shù)分頁。設(shè)主存容量為2n、cache的容量為2m,而頁面大小為2p。

主存地址可由p位的頁內(nèi)地址和n-p位的主存頁號(頁地址)組成。cache地址也由p位的頁內(nèi)地址和m-p位的cache頁號(頁地址)組成。由于主存和cache的頁面大小相同,在地址映射時,只需對主存的頁地址進(jìn)行映射。

3、高速緩存CACHECACHE的地址映射和地址變換3、高速緩存CACHE全相聯(lián)映射主存中的任意一頁可映射到cache中的任意一頁。這種映射方法發(fā)生沖突的概率最小,但需要一個速度快且容量較大的主存頁號--cache頁號映射表。每次映射都需要根椐主存頁號檢索該表,以確定該主存頁是否在cache中。地址映射簡單,只需用檢索到的cache頁號替換主存頁號,即可形成cache地址。但每次訪問平均需要進(jìn)行2m–p-1次比較,花費時間長。為了加快檢索時間,要采用高速器件,導(dǎo)致硬件價格昂貴。3、高速緩存CACHE全相聯(lián)映射3、高速緩存CACHE直接映射在這種映射方法中,主存的頁號B和cache的頁號b必須滿足以下等式:

b=Bmod2m-p

其中,2m-p是cache的總頁數(shù)。這種方法不需要專門的地址變換部件(地址可以直接映射而無需變換),優(yōu)點是速度較快,實現(xiàn)簡單;缺點是主存的頁面分成固定的若干組,每一組中序號相同的頁共用cache中指定的一個頁面。當(dāng)主存的兩個經(jīng)常用到的頁面映射到cache的同一頁上時,即使cache中有其它空閑頁,也無法使用,頁面的沖突概率較高,使用不靈活命,并且中率顯著降低。3、高速緩存CACHE直接映射對n-p頁主存取余數(shù),根據(jù)余數(shù)比較地址變換部件中數(shù)據(jù),確定數(shù)據(jù)是否在cache中。例如,8086地址0FFFFFH,分為每一頁0FFH單元,CACHE有16頁(0F)。地址變換器中保留最高兩位地址。3、高速緩存CACHE直接映射3、高速緩存CACHE組相聯(lián)映射組相聯(lián)方式在cache和主存分頁的基礎(chǔ)上,將主存和cache都再分組。主存中一組的頁數(shù)與cache中一組的頁數(shù)相等。由于主存的容量遠(yuǎn)大于cache的容量,因而主存還要進(jìn)一步分區(qū),每個分區(qū)的大小等于cache的大小。主存地址由區(qū)號、組號、組內(nèi)頁號和頁內(nèi)地址組成,而cache地址則由組號、組內(nèi)頁號和頁內(nèi)地址組成,頁內(nèi)地址同樣無需變換。

3、高速緩存CACHE組相聯(lián)映射3、高速緩存CACHE組相聯(lián)映射映射時,各組之間采用直接映射,但組內(nèi)各頁之間則采用全相連映射。為了進(jìn)行地址變換,同樣需要一個高速存儲器構(gòu)成的頁表,但頁表的行數(shù)要少得多。因為組間是直接映射的。所以組號可以直接用于尋址而不必映射。實現(xiàn)時可以每一組安排一個頁表,也可以用一個大頁表按照組號進(jìn)行組織,每組對應(yīng)其中的一部分。每組所對應(yīng)的頁表的長度與組內(nèi)包含的頁數(shù)相等。每一表項給出了該組內(nèi)的兩個參數(shù)之間的對應(yīng)關(guān)系

3、高速緩存CACHE組相聯(lián)映射組相聯(lián)映射及其變換示意

地址變換部件結(jié)構(gòu)3、高速緩存CACHE組相聯(lián)映射假定CACHE為4K,內(nèi)存為1M,按16字節(jié)分頁(E),CACHE共有256頁,再按16頁為一組,分成16組(c)。頁號(D)內(nèi)存按CACHE大小分塊,共256塊(AB)。每一塊按CACHE相同劃分,4K。地址變換部件中要存儲除組號外的地址信息。數(shù)據(jù)從內(nèi)存讀到CACHE時根據(jù)組地址存儲。查找時根據(jù)組號(C)直接比較地址變換部件中的地址(AB+D)。3、高速緩存CACHE映射方法總結(jié)組相聯(lián)映射方法綜合了全相聯(lián)映射和直接映射的優(yōu)點,是這兩種方案的折衷,也是目前采用較多的一種映射方式。在組相聯(lián)方式中,主存中的多個頁面可以映射到cache中的幾個頁面,與直接映射相比提高了命中率。組相聯(lián)無需在整個頁表中進(jìn)行檢索,只需在組內(nèi)的頁表中進(jìn)行檢索,與全相聯(lián)映射比提高了速度,降低了對硬件速度的要求。

3、高速緩存CACHE替換算法當(dāng)數(shù)據(jù)不在cache內(nèi)時,CPU要訪問主存,并把數(shù)據(jù)所在頁調(diào)入cache。cache的容量遠(yuǎn)小于主存,所以,在調(diào)入數(shù)據(jù)同時,還要確定被替換出的cache中的頁。這就是替換算法應(yīng)解決的問題。替換的原則同樣是要保證命中率盡可能高。3、高速緩存CACHE替換算法隨機替換法

這種方法是從cache中任意選一頁替換。該方法不考慮程序運行的歷史記錄,隨意將cache的某一頁替換出,效果不好。

3、高速緩存CACHE替換算法先進(jìn)先出替換法

它把最先調(diào)入cache的頁作為被替換對象。它是根據(jù)數(shù)據(jù)調(diào)入的時間先后進(jìn)行替換,故每頁均保存一個裝入順序數(shù)。這種算法的優(yōu)點是實現(xiàn)簡單,但同樣效果不好,因為那些經(jīng)常使用的頁,恰恰是最需調(diào)入的,采用此算法,可能剛調(diào)出,立即又要調(diào)入,增加許多工作量。3、高速緩存CACHE替換算法最近最少使用(LRU)替換法

依據(jù):最近最少使用的頁將來被使用的概率也很小。故在替換時,總是選擇在cache中最近很少使用的頁。這種算法考慮了程序的運行特性,它要求提供每一頁的使用頻度,替換時要做大量比較,找出最少使用的頁,實現(xiàn)過程復(fù)雜,速度也較慢。

3、高速緩存CACHE替換算法它是LRU算法的一個變種,選擇最長時間不使用的頁進(jìn)行替換。這樣,將使用次數(shù)多少的比較變?yōu)榕袛嗍欠袷褂?。而最久沒有使用算法可以利用堆棧法來實現(xiàn)。所謂堆棧法是指利用堆棧的概念,把cache看作堆棧,將CPU訪問的頁面當(dāng)作入棧數(shù)據(jù)看待,每次都把CPU最后訪問的頁面放在棧頂位置,這樣棧底位置的頁面,總是最長時間未使用的頁面,而將被替換。最久沒有使用(LFU)替換法

3、高速緩存CACHE替換算法其操作過程如下:當(dāng)命中cache時,將該頁從堆棧中取出,再從棧頂壓入堆棧,棧中其他頁面順序下移,直到棧內(nèi)該頁原來所處的位置為止,下面的頁面不動。若cache未命中,則直接訪問主存,并把該頁直接壓入堆棧頂部,堆棧中其他頁面依次下移。這樣,每次調(diào)入新頁面時,被淘汰的頁面就是堆棧棧底被擠出的頁面。實際現(xiàn)時,并不需要對cache內(nèi)的數(shù)據(jù)進(jìn)行入棧和出棧操作,只需對頁號操作即可。因為這種算法的實現(xiàn)簡單,因而被很多cache采用。最久沒有使用(LFU)替換法

3、高速緩存CACHEcache的一致性問題:更新算法cache中保存的信息是主存中的一小部分信息的副本。由于cache的命中率很高,所以大部分時間CPU實際上直接訪問的是cache,而不是主存。這樣就有一個主存和cache內(nèi)容一致性的問題。有兩個原因會導(dǎo)致主存和cache內(nèi)容的不一致:一是CPU改變了cache的內(nèi)容,而主存沒有改變,二是輸入輸出設(shè)備或其他主控部件改變了主存,而cache的內(nèi)容沒有隨之改變。

3、高速緩存CACHEcache的一致性問題:更新算法寫回法

在CPU寫入cache時,主存并不立即更新,而是在cache中加以標(biāo)記。當(dāng)該頁從cache中

溫馨提示

  • 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

提交評論