《微機(jī)原理與接口技術(shù)(第2版)》第03章存儲(chǔ)管理_第1頁
《微機(jī)原理與接口技術(shù)(第2版)》第03章存儲(chǔ)管理_第2頁
《微機(jī)原理與接口技術(shù)(第2版)》第03章存儲(chǔ)管理_第3頁
《微機(jī)原理與接口技術(shù)(第2版)》第03章存儲(chǔ)管理_第4頁
《微機(jī)原理與接口技術(shù)(第2版)》第03章存儲(chǔ)管理_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第3章存儲(chǔ)管理本章知識(shí)要點(diǎn):

本章從存儲(chǔ)器系統(tǒng)的構(gòu)成以及在微機(jī)系統(tǒng)中的重要作用入手,從科學(xué)發(fā)展的視角,逐步地、由淺入深地引導(dǎo)讀者認(rèn)識(shí)微處理器的存儲(chǔ)器管理功能,以及存儲(chǔ)器管理技術(shù)的發(fā)展。以16位的8086和32位的Pentium為平臺(tái),以新-舊對(duì)比的方法介紹存儲(chǔ)器管理技術(shù),以及各功能部件的結(jié)構(gòu)、功能、操作原理等。對(duì)所采用的虛擬存儲(chǔ)技術(shù)(分段、分頁存儲(chǔ)管理技術(shù))等先進(jìn)技術(shù),進(jìn)行了說明和剖析。

本章也是微機(jī)知識(shí)的核心之一、是重點(diǎn)、難點(diǎn)所在。通過本章,讀者得到是系統(tǒng)的先進(jìn)的存儲(chǔ)管理技術(shù)知識(shí)。

3.1存儲(chǔ)器系統(tǒng)

計(jì)算機(jī)的存儲(chǔ)器管理體系采用的是一種層次結(jié)構(gòu),它的最頂層的、與CPU聯(lián)系最密切的存儲(chǔ)部件是微處理器內(nèi)部的寄存器。然后,就是一級(jí)高速緩沖存儲(chǔ)器L1,二級(jí)高速緩沖存儲(chǔ)器L2。接下來的就是微處理器必須配置的主存儲(chǔ)器,它們都是微機(jī)系統(tǒng)的內(nèi)部存儲(chǔ)器。再下一個(gè)層次的存儲(chǔ)器就是外部存儲(chǔ)器,通常是硬盤、光盤等,如圖

CPU

寄存器組

一級(jí)

Cache

二級(jí)

Cache

主存儲(chǔ)器

外部存儲(chǔ)器

所謂存儲(chǔ)管理,其實(shí)是一個(gè)硬件機(jī)制,由于它的存在可以讓操作系統(tǒng)為眾多運(yùn)行的程序創(chuàng)造一個(gè)便于管理的和諧的存儲(chǔ)環(huán)境。通過微處理器的總線訪問的存儲(chǔ)器叫做物理存儲(chǔ)器。它是由一系列的(由8位二進(jìn)制的)字節(jié)組成的,而且給每一個(gè)字節(jié)都分配了一個(gè)惟一地址,把這種地址稱之為物理地址。像Pentium可訪問的物理存儲(chǔ)器的范圍為4GB(232–1)。

Pentium微處理器片內(nèi)存儲(chǔ)管理部件負(fù)責(zé)對(duì)物理存儲(chǔ)器實(shí)施安全可靠且行之有效的存儲(chǔ)管理操作。

3.2半導(dǎo)體存儲(chǔ)器1.內(nèi)存儲(chǔ)器內(nèi)存儲(chǔ)器是指微機(jī)系統(tǒng)中存放程序和數(shù)據(jù)的部件,是CPU能直接進(jìn)行存取操作的部件,它是由一組或多組具有數(shù)據(jù)存儲(chǔ)功能、以及能進(jìn)行讀寫操作的大規(guī)模集成電路組成。內(nèi)存儲(chǔ)器條。2.隨機(jī)存取存儲(chǔ)器RAMRAM是一種既能讀出也能寫入的存儲(chǔ)器,它適合于存放用戶程序和數(shù)據(jù),因?yàn)檫@類信息是經(jīng)常變化的RAM有3個(gè)特點(diǎn)

①可以讀出,也可以寫入?讀出時(shí)并不損壞所存儲(chǔ)的內(nèi)容?只有在寫入時(shí)才修改原來所存儲(chǔ)的內(nèi)容?

②所謂隨機(jī)存取,意味著存取任一單元所需的時(shí)間相同?因?yàn)榇鎯?chǔ)單元排成二維陣列?就象通過X?Y兩個(gè)坐標(biāo)就能確定一個(gè)點(diǎn)那樣?

③當(dāng)斷電后,存儲(chǔ)的內(nèi)容立即消失,又稱為NOVRAM(NonvolatileRAM)或NVRAM?RAM的分類在RAM中,又被分為雙極性RAM、和MOSRAM這樣兩大類。(1)雙極性RAM

(2)MOSRAM①SRAM(StaticRAM,靜態(tài)隨機(jī)存儲(chǔ)器)

SRAM的運(yùn)行速度非???,像CPU內(nèi)的一級(jí)、二級(jí)緩沖存儲(chǔ)器就使用了SRAM,其運(yùn)行頻率與CPU的時(shí)鐘同步。SRAM高速度的特點(diǎn),對(duì)提高系統(tǒng)性能非常有利,但價(jià)格較貴。

②DRAM(DynamicRAM,動(dòng)態(tài)隨機(jī)存儲(chǔ)器)3.只讀存儲(chǔ)器(ReadOnlyMemory)

常用的只讀存儲(chǔ)器又分成以下幾類:

(1)ROM:一般由生產(chǎn)廠家把編好的程序固化在ROM中。

(2)PROM:是可編程只讀存儲(chǔ)器(ProgrammableReadOnlyMemory),它與ROM的性能一樣?存儲(chǔ)的程序在處理過程不會(huì)丟失,也不會(huì)被替換?

(3)EPROM:可擦除的ROM?這是一種可由用戶編程并可擦除的ROM。存放在EPROM中的信息可以擦除,然后再寫入,且能多次改寫其中的內(nèi)容,只是寫入速度較慢?

(4)EEPROM:電可擦除可重寫只讀存儲(chǔ)器(或E2PROM)。也叫“電擦除可編程只讀存儲(chǔ)器EEPROM”、或被稱之為EAROM,是電可擦除PROM、或電可改寫ROM。。

(5)閃速存儲(chǔ)器(FlashMemory)

閃速存儲(chǔ)器是一種特殊類型的EEPROM類的存儲(chǔ)器,是目前較理想的一類存儲(chǔ)器,具有密度高、讀/寫速度快、成本低和不易丟失的特點(diǎn)。Flash的主要優(yōu)點(diǎn)是:

①不易丟失性:相比于SRAM,F(xiàn)lash不需后備電源來保持信息。

②易更新性:與EEPROM相比,F(xiàn)lash的成本更低,密度和可靠性更高。4.內(nèi)存儲(chǔ)器條

內(nèi)存儲(chǔ)器條是微機(jī)系統(tǒng)用來存放程序和數(shù)據(jù)的實(shí)際存儲(chǔ)器,主要有兩種類型:(1)第一種是單邊直插式存儲(chǔ)器模塊SIMM(SingleInlineMemoryModule),早期的30線、72線的內(nèi)存儲(chǔ)器條屬于這種類型。

72線內(nèi)存儲(chǔ)器條多用在80486、早期的Pentium微處理器上,其容量有4MB、8MB、16MB和32MB等,可提供32位有效數(shù)據(jù)位。(2)第二種是雙邊直插式存儲(chǔ)器模塊DIMM(DoubleInlineMemoryModule),像168線的SDRAM和184線的DDRSDRAM內(nèi)存儲(chǔ)器條屬于這種類型。5.內(nèi)存儲(chǔ)器的主要性能指標(biāo)

內(nèi)存儲(chǔ)器容量:即內(nèi)存儲(chǔ)器所能容納的字節(jié)總數(shù);

②存取速度:即從內(nèi)存儲(chǔ)單元中將二進(jìn)制信息讀出到存儲(chǔ)器數(shù)據(jù)寄存器中(或反之)所需的時(shí)間;③存儲(chǔ)器的可靠性:用平均無故障時(shí)間的長(zhǎng)短來表征,即兩次故障之間的平均時(shí)間間隔;④性能價(jià)格比。3.316位微處理器的存儲(chǔ)管理

3.3.1.分段存儲(chǔ)管理由于8086與地址相關(guān)的寄存器是16位(內(nèi)部寄存器都是16位),算術(shù)邏輯單元ALU也只能進(jìn)行16位計(jì)算,因此只能存放16位地址,即只能尋址達(dá)到64KB(216=64KB)。為了形成20位地址,以便尋址1MB存儲(chǔ)空間。8086采用分段辦法管理1MB存儲(chǔ)空間,即將1MB存儲(chǔ)空間分成若干個(gè)邏輯段,每個(gè)邏輯段最大為64KB。

8086把內(nèi)存分成4種邏輯段,即代碼段、數(shù)據(jù)段、堆棧段和附加段。FFFFFH00000H可重疊代碼段數(shù)據(jù)段附加段堆棧段存放代碼存放數(shù)據(jù)存放數(shù)據(jù)存放臨時(shí)數(shù)據(jù)

1MB存儲(chǔ)空間

圖3-4內(nèi)存分段示意圖3.3.2存儲(chǔ)管理中的術(shù)語

4個(gè)技術(shù)術(shù)語:物理地址、偏移地址、段基地址和邏輯地址。物理地址

8086/8088的1MB存儲(chǔ)器以字節(jié)地址為單位,即存儲(chǔ)器是按“字節(jié)尋址”。存儲(chǔ)器中的每個(gè)字節(jié)中可以存放一個(gè)字節(jié)數(shù),每個(gè)字節(jié)擁有一個(gè)惟一的地址編號(hào)。存儲(chǔ)單元的地址碼由8086芯片提供,去進(jìn)行存儲(chǔ)器的地址譯碼。由于8086最大內(nèi)存容量為1MB,把每一個(gè)內(nèi)存單元的20位地址叫做物理地址。偏移地址是指段內(nèi)某內(nèi)存單元的物理地址,相對(duì)于段起始地址的位移量,稱為段內(nèi)偏移地址。也就是說,是段內(nèi)的某個(gè)存儲(chǔ)單元與該段段首地址的差值,稱為段內(nèi)偏移地址或稱為偏移量或相對(duì)地址,用16位二進(jìn)制代碼表示。由于一個(gè)段最大為64KB,故偏移地址用16位二進(jìn)制表示就可以了。段基地址是放置在段寄存器上的地址信息。由于8086對(duì)內(nèi)存儲(chǔ)器采用分段存儲(chǔ)管理的辦法,8086將大小為1MB的存儲(chǔ)空間分為若干段,而段的大小可以根據(jù)需要決定,其最大值可為64KB。存儲(chǔ)器分段后,每一段都要有一個(gè)段號(hào),且要用16位二進(jìn)制數(shù)表示。其實(shí),每個(gè)段首地址的高端16位二進(jìn)制代碼就是該段的段號(hào),也叫段基地址

8086/8088對(duì)存儲(chǔ)器分段時(shí),各段的起始位置通常是地址編號(hào)是能被16整除的內(nèi)存單元。邏輯地址是在程序中對(duì)存儲(chǔ)器地址的一種表示方法,一般是將段基址和偏移地址稱為邏輯地址。3.432位微處理器存儲(chǔ)管理

為要認(rèn)識(shí)32位微處理器的存儲(chǔ)管理技術(shù),下面將以32位的Pentium微處理器為例,對(duì)其采用的存儲(chǔ)管理技術(shù)進(jìn)行分析。一是與8086的存儲(chǔ)管理技術(shù)進(jìn)行比較,認(rèn)識(shí)到存儲(chǔ)管理技術(shù)與時(shí)俱進(jìn)是歷史的必然。二是認(rèn)識(shí)到先進(jìn)的存儲(chǔ)管理技術(shù),是計(jì)算機(jī)技術(shù)發(fā)展的基礎(chǔ)和需要。

3.4.1虛擬存儲(chǔ)技術(shù)

1.虛擬存儲(chǔ)技術(shù)

(1)虛擬存儲(chǔ)器

虛擬存儲(chǔ)器技術(shù)是使程序所用的存儲(chǔ)容量,不取決于實(shí)際隨機(jī)存儲(chǔ)器RAM容量,程序可以運(yùn)行在比實(shí)際存儲(chǔ)器大得多的存儲(chǔ)器上的一種方法?

在虛擬存儲(chǔ)系統(tǒng)中,磁盤成了事實(shí)上的主存儲(chǔ)器,而實(shí)際隨機(jī)存儲(chǔ)器RAM則是變成了用來暫時(shí)存放微處理器當(dāng)前正在使用的指令代碼和數(shù)據(jù)的一個(gè)區(qū)域,在主存儲(chǔ)器內(nèi)存放的是,微處理器正在執(zhí)行的或?qū)⒁獔?zhí)行的保存在磁盤上的部分程序的拷貝。虛擬存儲(chǔ)系統(tǒng)為了能把虛擬地址(也稱其為邏輯地址)轉(zhuǎn)換成實(shí)地址(稱物理地址),在硬件上提供了關(guān)鍵性的技術(shù)支持。

(2)虛擬存儲(chǔ)方案

就目前的虛擬存儲(chǔ)技術(shù),虛擬存儲(chǔ)方案有如下三種:

①分段存儲(chǔ)方案,即把虛擬存儲(chǔ)器分成大小可以變化的若干個(gè)段;

②分頁存儲(chǔ)方案,這種方案是把虛擬存儲(chǔ)器分成大小固定的若干個(gè)頁;

③混合方案,是在大小可以變化的段的基礎(chǔ)上,再把段細(xì)分成大小固定的若干個(gè)頁?

2.分段存儲(chǔ)管理技術(shù)

(1)Pentium實(shí)施的分段存儲(chǔ)管理技術(shù)存儲(chǔ)管理是由分段存儲(chǔ)管理和分頁存儲(chǔ)管理組成,分段存儲(chǔ)管理模式是建立在可靠性和高性能的基礎(chǔ)之上的一項(xiàng)管理技術(shù)。所謂分段,就是將Pentium的4GB的存儲(chǔ)空間分成若干個(gè)各自獨(dú)立的被保護(hù)的地址空間。每一個(gè)應(yīng)用程序都可以使用若干個(gè)大小不等的段。分段部件是一種可以提供多個(gè)各自獨(dú)立地址空間的機(jī)構(gòu)。所以段實(shí)際上就是一個(gè)獨(dú)立的被保護(hù)的地址空間。(2)段信息的流程

分段需要的操作步驟、分段操作過程、及幾個(gè)需要知道的基本概念和技術(shù)術(shù)語。分段所需要的操作過程,是由Pentium的存儲(chǔ)管理(即分段部件和分頁部件)負(fù)責(zé)控制執(zhí)行。

Pentium器配備有6個(gè)16位的段寄存器,與80386的6個(gè)16位的段寄存器同宗、同名、同功能。段寄存器的另一種稱呼叫段選擇符。在段寄存器內(nèi)存放的信息表示的就是段選擇符的信息,用這個(gè)段選擇符的信息,可以從兩個(gè)段描述符表中的其中一個(gè)之中,找出這個(gè)段的描述符信息。從段寄存器上的信息,到得到段描述符的信息的過程,可用一個(gè)如下的流程圖表示之。段寄存器段選擇符段描述符表段描述符①段寄存器

段寄存器上的信息是用來說明本次指示的是6種段中的哪一類段(是代碼段、數(shù)據(jù)段、堆棧段)。②段選擇符由于存放在段寄存器上的內(nèi)容,實(shí)際上是段的選擇符信息,它指明了本次段選擇符上的內(nèi)容所指示著的段描述符,是在兩個(gè)段描述符表中的哪一個(gè)之中。為更清楚說明問題起見,圖中展示出段寄存器(段選擇符)的結(jié)構(gòu)。

圖中符號(hào)說明:1.位0位1(RPL);請(qǐng)求特權(quán)級(jí)字段

RPL=00表示最高特權(quán)級(jí)

RPL=11表示最低特權(quán)級(jí)

2.位2(Ti);字段是指示符字段

Ti=0指向全局描述符表

Ti=1指向局部描述符表

3.位15~位3;索引字段索引字段012315RPLTi③段描述符表

段描述符表,是用來保存段描述符的地方。也就是說,段描述符表是由各種段(代碼段、數(shù)據(jù)段、堆棧段、附加數(shù)據(jù)段)的描述符組成。

Pentium配備的段描述表為兩個(gè)表,其一叫全局描述符表GDT,另一個(gè)則叫局部描述符表LDT,如圖所示。全局描述符表是供系統(tǒng)中所有程序使用的。而局部描述符表是供各自運(yùn)行程序使用的。

TiRPL段界限基地址段界限基地址訪問控制局部描述符表全局描述符表Ti=1Ti=0段選擇符01215局部描述符表寄存器LDTR全局描述符表寄存器GDTR④段描述符

圖展示出了一個(gè)Pentium使用的段描述符,它是由8個(gè)字節(jié)(64位)組成。

07811109121314151619202122232431段界限15~00基地址15~00段界限19~16基地址23~16基地址31~24DPL類型AVLD/B0GPS段描述符符號(hào)說明:

AVL通過系統(tǒng)軟件可以使用

DPL描述符特權(quán)級(jí)

D/B缺省操作數(shù)大小尺寸(0=16位的段,1=32位的段

G粒位

P段存在位

S描述符類型(0=系統(tǒng)級(jí),1=應(yīng)用級(jí))類型段的類型基地址段的基地址(3)分段部件的轉(zhuǎn)換操作

系統(tǒng)給出的地址以及程序給定的地址都是邏輯地址,段選擇符內(nèi)容再加上這個(gè)段的偏移量,被Pentium當(dāng)成一個(gè)邏輯地址處理。邏輯地址也稱為虛擬地址。這是因?yàn)樗且粋€(gè)只有應(yīng)用程序才能看到的地址。經(jīng)過分段部件的操作之后,其結(jié)果是經(jīng)由分段部件將邏輯地址轉(zhuǎn)換成線性地址。16位段選擇符

32位的偏移量

3122211211048位的邏輯地址32位基地址

段描述符

描述符表311500線性地址偏移量頁表頁目錄3.分頁存儲(chǔ)管理技術(shù)(1)分頁存儲(chǔ)管理分頁存儲(chǔ)管理是Pentium的另一種形式的存儲(chǔ)管理模式。是用一種規(guī)模、容量相對(duì)說來比較小的存儲(chǔ)器空間和磁盤,去模擬一個(gè)大容量的不分段的存儲(chǔ)空間。

Pentium的分頁部件為訪問比實(shí)際用存儲(chǔ)空間還要大的數(shù)據(jù)結(jié)構(gòu)提供了一種技術(shù)支持,具體做法就是,將這個(gè)大數(shù)據(jù)結(jié)構(gòu)的一部分保存在存儲(chǔ)器中,而將另一部分保存在磁盤存儲(chǔ)器中。

Pentium是將4KB地址空間定義為一個(gè)頁。分頁部件可將線性地址空間分成若干大小為4KB的被稱之為頁的存儲(chǔ)模塊。邏輯地址空間首先經(jīng)分段部件轉(zhuǎn)換成線性地址空間,然后再將線性地址空間轉(zhuǎn)換成一定數(shù)量的頁。(2)分頁步驟

48位的邏輯地址經(jīng)分段部件之后,就被轉(zhuǎn)換成了32位的線性地址。如果不分頁,此時(shí)的線性地址就是物理地址。如果需要分頁,則要經(jīng)分頁部件,再將32位的線性地址轉(zhuǎn)換成物理地址,這是分頁部件的職責(zé)。

①分頁的基礎(chǔ)

48位的邏輯地址經(jīng)分段部件之后,要先被轉(zhuǎn)換成32位的線性地址。

②允許分頁

Pentium的控制寄存器CRO的位31(PG位)是允許分頁控制位,若將控制寄存器CRO的位31置成1,才表示分頁機(jī)構(gòu)允許分頁。

③線性地址的結(jié)構(gòu)下圖展示出線性地址的結(jié)構(gòu)。32位的線性地址被進(jìn)一步分成3個(gè)字段,其中高端10位(位31~位22)是頁目錄索引字段,中間的10位(位21~位12)是頁表索引字段。而剩下的低端12位字段,所表示的則是一個(gè)存儲(chǔ)器頁內(nèi)的4KB個(gè)地址。

頁目錄索引頁表索引偏移量01112213122④頁目錄線性地址中的高端10位(位31~位22)是頁目錄索引字段,10位的頁目錄最多可以索引、定位1024個(gè)頁目錄項(xiàng)。也就是說,頁目錄是由1024個(gè)頁目錄項(xiàng)組成。⑤頁表線性地址的中間10位(位21~位12)是頁表索引字段,10位的頁表最多可以索引、定位1024個(gè)頁表項(xiàng)。也就是說,頁表是由1024個(gè)頁表項(xiàng)組成。由于10位的頁目錄最多可以索引、定位1024個(gè)頁目錄項(xiàng),而10位的頁表最多可以索引、定位1024個(gè)頁表項(xiàng)。這樣線性地址的高端20位,就可以索引、定位1M個(gè)頁地址(即1024×1024=1M頁)。⑥

存儲(chǔ)器頁

Pentium約定,把4KB大小的存儲(chǔ)器空間規(guī)定成一個(gè)頁。所以,Pentium的4GB的存儲(chǔ)器空間可以分成1M個(gè)頁(即4GB/4KB=1M)。(3)分頁部件的轉(zhuǎn)換操作

系統(tǒng)給出的地址以及程序給定的地址都是邏輯地址,經(jīng)過分段部件的操作之后是將邏輯地址轉(zhuǎn)換成線性地址。分頁部件的作用就是將線性地址轉(zhuǎn)換成物理地址。下面說明分頁部件的轉(zhuǎn)換操作的條件和步驟:

①允許分頁位

Pentium的控制寄存器CRO的位31(PG位)是允許分頁控制位,若將控制寄存器CRO的位31置成1,則表示分頁機(jī)構(gòu)允許分頁。②線性地址的轉(zhuǎn)換

圖中所展示出的是,Pentium怎樣用兩級(jí)頁表,將線性地址字段中的頁目錄索引字段、頁表索引字段以及偏移量字段轉(zhuǎn)換成物理地址的。

32位線性地址存儲(chǔ)器頁頁表頁目錄頁目錄項(xiàng)頁表項(xiàng)操作數(shù)12112221310頁目錄索引頁表索引偏移量③頁表

所謂頁表,實(shí)際上是由若干個(gè)大小為32位(4個(gè)字節(jié))的頁表項(xiàng)組成的一個(gè)陣列。頁表本身也是一個(gè)頁,其規(guī)模大小為4096個(gè)字節(jié)的存儲(chǔ)空間,所以其內(nèi)最多可保存1K個(gè)32位的頁表項(xiàng),如上圖。在這種4KB的頁內(nèi)當(dāng)然也保存著頁目錄項(xiàng)、頁表項(xiàng)。

④頁表項(xiàng)兩級(jí)頁表中,雖頁表項(xiàng)和頁目錄項(xiàng)的內(nèi)容不同,但頁表項(xiàng)的格式卻是一樣的(頁目錄內(nèi)缺少臟位這種情況除外)。圖中展示出了頁表項(xiàng)的格式。頁目錄中的臟位D(Dirty)位保留供將來用。0132456789113112頁框地址31~12PWUAD00PWTPCDAVAIL系統(tǒng)設(shè)計(jì)人員可用可寫存在用戶頁透明寫頁Cache禁止存取操作臟位保留

3.5高速緩沖存儲(chǔ)器Cache

存儲(chǔ)器系統(tǒng)層次結(jié)構(gòu)

計(jì)算機(jī)的存儲(chǔ)器系統(tǒng)是由幾種容量大小、存取速度、性能價(jià)格、在微機(jī)系統(tǒng)中所處的位置等均有所不同的存儲(chǔ)器組成。計(jì)算機(jī)的存儲(chǔ)器管理體系采用的是一種層次結(jié)構(gòu)

1.它的最頂層的、與CPU聯(lián)系最密切的存儲(chǔ)部件是微處理器內(nèi)部的寄存器。然后,就是配置在CPU芯片內(nèi)一級(jí)CacheL1。

2.在PentiumII等高檔的微處理器芯片內(nèi),增配了二級(jí)高速緩沖存儲(chǔ)器CacheL2。

3.而在Pentium4等更高檔的微處理器芯片內(nèi),甚至又新增配了三級(jí)高速緩沖存儲(chǔ)器CacheL3。

CPU

寄存器組一級(jí)

CacheL1

主存儲(chǔ)器(物理存儲(chǔ)器)外部存儲(chǔ)器(虛擬存儲(chǔ)器)三級(jí)CacheL3二級(jí)CacheL2

4.接下來的就是微處理器必須配置的主存儲(chǔ)器(也被稱之為物理存儲(chǔ)器),通常是由動(dòng)態(tài)隨機(jī)存儲(chǔ)器DRAM組成。

5.再下一個(gè)層次的存儲(chǔ)器就是外部存儲(chǔ)器(也叫虛擬存儲(chǔ)器),通常是硬盤、光盤等1.Cache存儲(chǔ)器

Cache存儲(chǔ)器是一種高速的,但其規(guī)模大小相對(duì)于主存儲(chǔ)器而言又是比較小的位于處理器和操作速度比較低的主存儲(chǔ)器之間的一種存儲(chǔ)設(shè)備,其內(nèi)保存的是目前處理器正在使用的主存儲(chǔ)器的副本,處理器使用Cache可以快速地從其內(nèi)取得所需的指令和數(shù)據(jù)。由于裝備有Cache,相應(yīng)地減少了訪問主存儲(chǔ)器的次數(shù).2.Cache的作用和有效性

Cache存儲(chǔ)器的作用和有效性表現(xiàn)在:微機(jī)系統(tǒng)內(nèi)的Cache存儲(chǔ)器,確實(shí)擁有保存微處理器當(dāng)前經(jīng)常使用的指令和數(shù)據(jù)的能力,而且還具有存取速度快、命中率高的特點(diǎn),這些特征充分表現(xiàn)出Cache技術(shù)的有效性。說明Cache有效性的另一個(gè)重要標(biāo)志是微機(jī)系統(tǒng)的性能。在正常情況下,由于訪問Cache的速度要比訪問主存儲(chǔ)器的速度快3~8倍。這樣就明顯地增強(qiáng)了整個(gè)系統(tǒng)性能。3.局部性原理

為使Cache更加有效,要求程序有高度的暫時(shí)性和局部性。配備Cache的基礎(chǔ)是基于程序訪問的局部性原理,即要被訪問的數(shù)據(jù)大多集中在存儲(chǔ)器的某個(gè)局部區(qū)域。從程序執(zhí)行的過程上來說,它不可能長(zhǎng)時(shí)間地僅執(zhí)行位于存儲(chǔ)器內(nèi)某個(gè)局部區(qū)域中的某一段程序,被執(zhí)行的程序段有可能會(huì)隨著程序的結(jié)構(gòu)被更換,但在短時(shí)間內(nèi)CPU訪問的程序段還是固定的幾個(gè)程序段。研究表明,大部分程序都是串行的、順序執(zhí)行的,除分支轉(zhuǎn)移指令和調(diào)用指令外,在大多數(shù)情況下,下一次要取的指令往往是緊跟著上一次剛?cè)〉哪且粭l指令。

圖中展示出了Cache中內(nèi)容相對(duì)于主存儲(chǔ)器來說是暫時(shí)的和局部的。CPUloop

主存儲(chǔ)器地址總線Cache控制控制loop數(shù)據(jù)總線4.Cache存儲(chǔ)器數(shù)目和容量

Pentium芯片內(nèi)采用的是指令Cache和數(shù)據(jù)Cache各自獨(dú)立、各為一體的分離式Cache。也就是說,Pentium配備有兩個(gè)Cache,一個(gè)是指令Cache,另一個(gè)是數(shù)據(jù)Cache。在指令Cache內(nèi),只是存放目前CPU正在執(zhí)行的程序指令。而在數(shù)據(jù)Cache內(nèi),則僅僅存放目前CPU正在執(zhí)行的程序所需要的數(shù)據(jù)。目前已經(jīng)達(dá)到了三級(jí)Cache。分別是一級(jí)CacheL1,二級(jí)CacheL2,三級(jí)CacheL3。5Pentium配備的Cache

Pentium的片內(nèi)Cache,是由Cache控制器82496和Cache體84291組成,三者之間的邏輯關(guān)系如圖3-17所示。它們都被集成在Pentium微處理器片內(nèi)。82491CachePentium

微處理器82496Cache

控制器

存儲(chǔ)器總線控制器/存儲(chǔ)器總線6.Cache存儲(chǔ)器性能

(1)命中率(Hitrate)

Cache存儲(chǔ)器的性能主要表現(xiàn)在Cache命中率的高低、和不命中率頻率上。當(dāng)CPU欲訪問存儲(chǔ)器時(shí),首先會(huì)到Cache內(nèi)尋找本次操作所需的數(shù)據(jù)。若這時(shí)欲尋找的數(shù)據(jù)保存在Cache內(nèi),本次訪問Cache的操作就叫作命中。否則,則稱之為不命中。(2)影響Cache性能的因素

影響Cache性能的因素有很多

①Cache規(guī)模大小

②締合方式(Associaivity)

③Cache行大小

④寫回和記入式寫

⑤配置(3)Cache大小規(guī)模和性能

表中列出了各種配置的一級(jí)Cache命中率。表中所列這些統(tǒng)計(jì)數(shù)字還是比較保守的數(shù)字,這是因?yàn)檫@些數(shù)字是通過分析大量的主機(jī)運(yùn)行情況后統(tǒng)計(jì)出的最低命中率。而且這個(gè)命中率也不是絕對(duì)數(shù),命中率與軟件也是息息相關(guān)的。本表的意義在于可以對(duì)各種不同配置的Cache進(jìn)行一番比較。通過這張表,可以說明欲使Cache達(dá)到一定的效率,其硬件的復(fù)雜程度應(yīng)如何。表中列出的一級(jí)Cache的命中率分別是直接映像、二路相聯(lián)以及四路相聯(lián)Cache結(jié)構(gòu)下的命中率。

7.Cache存儲(chǔ)器映射1.Cache締合方式

Cache

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論