《計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)》課件第4章_第1頁(yè)
《計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)》課件第4章_第2頁(yè)
《計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)》課件第4章_第3頁(yè)
《計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)》課件第4章_第4頁(yè)
《計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)》課件第4章_第5頁(yè)
已閱讀5頁(yè),還剩171頁(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)介

第4章存儲(chǔ)系統(tǒng)4.1存儲(chǔ)系統(tǒng)概述4.2內(nèi)部存儲(chǔ)器(主存儲(chǔ)器)4.3高速緩沖存儲(chǔ)器4.4虛擬存儲(chǔ)器4.5外部存儲(chǔ)器(輔助存儲(chǔ)器)

4.1存儲(chǔ)系統(tǒng)概述

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

一臺(tái)計(jì)算機(jī)中可能會(huì)包括各種存儲(chǔ)器,如CPU內(nèi)部的通用寄存器組、一級(jí)Cache、CPU外部的二級(jí)Cache和三級(jí)Cache、主板上的主存儲(chǔ)器(簡(jiǎn)稱主存)、主板外的聯(lián)機(jī)(在線)磁盤(pán)存儲(chǔ)器以及脫機(jī)(離線)的磁帶、光盤(pán)存儲(chǔ)器等。在計(jì)算機(jī)中,各種存儲(chǔ)器的容量、速度、訪問(wèn)方式、用途等各不相同,這些存儲(chǔ)器相互配合形成了一種層次結(jié)構(gòu)的存儲(chǔ)系統(tǒng)。在這樣的層次結(jié)構(gòu)中,不同層次上的存儲(chǔ)器發(fā)揮著不同的功能和作用,共同使計(jì)算機(jī)高效地工作。計(jì)算機(jī)存儲(chǔ)系統(tǒng)的層次結(jié)構(gòu)如圖4.1所示。圖4.1存儲(chǔ)系統(tǒng)的層次結(jié)構(gòu)4.1.2存儲(chǔ)器的分類(lèi)

由于構(gòu)成存儲(chǔ)器的材料、性能及使用方法不同,從不同的角度考慮,就有不同的分類(lèi)方法。

1.按照存儲(chǔ)信息的介質(zhì)分類(lèi)

2.按在計(jì)算機(jī)中的用途分類(lèi)

3.按存放信息的易失(揮發(fā))性分類(lèi)

4.按存取方式分類(lèi)

5按存儲(chǔ)器的讀寫(xiě)功能分類(lèi)

4.1.3存儲(chǔ)器的性能指標(biāo)

1.存儲(chǔ)容量

存儲(chǔ)容量指的是存儲(chǔ)器所能存儲(chǔ)的二進(jìn)制信息的總位數(shù),其表示方式一般為:存儲(chǔ)器總存儲(chǔ)單元數(shù)×每個(gè)存儲(chǔ)單元的位數(shù)。例如,某計(jì)算機(jī)內(nèi)存容量為1024K×8bit或1024KB、

1GB(通常用b表示位bit,B表示字節(jié)Byte);某磁盤(pán)存儲(chǔ)器的容量為160GB。

同樣,也用上述方式來(lái)描述一塊存儲(chǔ)器芯片的容量。例如,6264靜態(tài)RAM芯片的容量為8KB,動(dòng)態(tài)RAM芯片NMC41257的容量為256Kb。

2.存儲(chǔ)器的速度

1)存取時(shí)間

存取時(shí)間又稱訪問(wèn)時(shí)間,就是對(duì)存儲(chǔ)器中某一個(gè)存儲(chǔ)單元的數(shù)據(jù)進(jìn)行一次存(取)所需要的時(shí)間。

2)存取周期

存取周期是指連續(xù)對(duì)存儲(chǔ)器進(jìn)行存(取)時(shí),完成一次存(取)所需要的時(shí)間。

3)存儲(chǔ)器帶寬

存儲(chǔ)器帶寬是指單位時(shí)間里存儲(chǔ)器可以讀出(或?qū)懭?的字節(jié)數(shù)。若存儲(chǔ)器的存取周期為tm,且每次可讀出(或?qū)懭?

n個(gè)字節(jié),則存儲(chǔ)器的帶寬Bm=n/tm。

3.可靠性

計(jì)算機(jī)要正確地運(yùn)行,必然要求存儲(chǔ)器系統(tǒng)具有很高的可靠性。內(nèi)存的任何錯(cuò)誤都足以使計(jì)算機(jī)無(wú)法正常工作。

對(duì)計(jì)算機(jī)的存儲(chǔ)器來(lái)說(shuō),有的是不可維修的,如構(gòu)成存儲(chǔ)器的超大規(guī)模集成電路芯片,一旦出現(xiàn)故障就只能更換。而有的存儲(chǔ)器是可維修的,如磁盤(pán)存儲(chǔ)器、磁帶存儲(chǔ)器等。

4.功耗

功耗在電池供電的系統(tǒng)中是非常重要的指標(biāo),使用功耗低的存儲(chǔ)器構(gòu)成存儲(chǔ)系統(tǒng),不僅可以降低對(duì)電源容量的要求,而且還可以提高存儲(chǔ)系統(tǒng)的可靠性。

5.價(jià)格

構(gòu)成存儲(chǔ)系統(tǒng)時(shí),在滿足上述要求的情況下,應(yīng)盡量降低存儲(chǔ)器的價(jià)格。通常是以每KB或每MB的價(jià)格來(lái)衡量存儲(chǔ)器的成本。隨著技術(shù)的發(fā)展,存儲(chǔ)器的價(jià)格已大大降低。

例如,20世紀(jì)80年代初每MB需幾千元,而今天只需幾分錢(qián)。

除上述指標(biāo)外,還有如體積、重量、封裝方式、工作電壓、環(huán)境條件等指標(biāo)。

4.2內(nèi)部存儲(chǔ)器(主存儲(chǔ)器)

4.2.1隨機(jī)讀寫(xiě)存儲(chǔ)器RAM

在計(jì)算機(jī)中,常用的隨機(jī)讀寫(xiě)存儲(chǔ)器RAM分為兩大類(lèi):一類(lèi)是靜態(tài)隨機(jī)讀寫(xiě)存儲(chǔ)器SRAM,另一類(lèi)是動(dòng)態(tài)隨機(jī)讀寫(xiě)存儲(chǔ)器DRAM。

1.RAM芯片內(nèi)部結(jié)構(gòu)及工作原理

1)內(nèi)部譯碼結(jié)構(gòu)

常規(guī)RAM芯片,其外部有地址引線、數(shù)據(jù)引線和控制信號(hào)引線。地址引線在芯片內(nèi)部譯碼,可選中芯片內(nèi)部的相應(yīng)存儲(chǔ)單元。例如,某靜態(tài)RAM芯片上有n條地址線,這些地址線所能表示的地址編碼有2n種,這意味著該芯片內(nèi)部有2n個(gè)存儲(chǔ)單元。

(1)一維譯碼。

(2)二維譯碼。圖4.2

RAM芯片內(nèi)部的兩種譯碼方式

2)單元電路

下面說(shuō)明RAM中1位信息是如何存儲(chǔ)的。

(1)靜態(tài)讀寫(xiě)存儲(chǔ)器SRAM。靜態(tài)RAM可有多種結(jié)構(gòu),圖4.3是一種典型的1位SRAM的構(gòu)造。圖4.3靜態(tài)RAM單元電路

(2)動(dòng)態(tài)讀寫(xiě)存儲(chǔ)器DRAM。動(dòng)態(tài)存儲(chǔ)器DRAM也有多種結(jié)構(gòu)形式,其中一種如圖4.4所示。圖4.4動(dòng)態(tài)RAM單元電路

3)存儲(chǔ)器與CPU的速度協(xié)調(diào)

對(duì)于簡(jiǎn)單的計(jì)算機(jī),只要將半導(dǎo)體集成電路芯片接在計(jì)算機(jī)的系統(tǒng)總線上便可構(gòu)成主存儲(chǔ)器。在構(gòu)成主存時(shí)必須注意存儲(chǔ)器與CPU速度上的協(xié)調(diào),只有當(dāng)CPU讀寫(xiě)主存的時(shí)間大于主存所需要的讀寫(xiě)時(shí)間時(shí),才能保證可靠的讀寫(xiě)。圖4.5

CPU寫(xiě)主存與存儲(chǔ)器寫(xiě)操作的時(shí)序

2.靜態(tài)讀寫(xiě)存儲(chǔ)器

靜態(tài)讀寫(xiě)存儲(chǔ)器SRAM是構(gòu)成小容量高速存儲(chǔ)器最常采用的部件,如高速緩沖存儲(chǔ)器Cache就采用的是RAM。

1)典型靜態(tài)存儲(chǔ)器芯片介紹

現(xiàn)以一塊典型的8K×8bit的CMOSSRAM6264(或6164)芯片為例說(shuō)明其外部特性及工作過(guò)程。圖4.6

6264引腳圖

2)SRAM的工作過(guò)程

從表4.1中可以看到,6264寫(xiě)入數(shù)據(jù)的過(guò)程是:在芯片的A0~A12加上要寫(xiě)入單元的地址,在D0~D7加上要寫(xiě)入的數(shù)據(jù),使CS1

和CS2同時(shí)有效,在WE加上有效的低電平(此時(shí)OE可為高也可為低),這樣就將數(shù)據(jù)寫(xiě)到了芯片內(nèi)地址所選中的存儲(chǔ)單元中。

3)用SRAM構(gòu)成主存模塊

(1)存儲(chǔ)器芯片與系統(tǒng)連接接口。對(duì)于設(shè)計(jì)者來(lái)說(shuō),在了解了存儲(chǔ)器芯片的外部特性(即信號(hào)功能及時(shí)序)之后,重要的是必須掌握存儲(chǔ)器芯片與總線的連接,即按照用戶的設(shè)計(jì)要求,將存儲(chǔ)器芯片正確地連接到系統(tǒng)總線上,構(gòu)成所要求地址范圍的主存模塊。

圖4.7就是利用6264芯片以全地址譯碼方式與系統(tǒng)連接構(gòu)成的地址從F0000H到F1FFFH這8KB的主存空間,連接基于的是8088CPU工作在最大模式下的8位ISA總線。圖4.7

6264芯片與系統(tǒng)連接的接口電路

(2)主存的字?jǐn)U展。

當(dāng)用一片存儲(chǔ)器芯片構(gòu)成主存的字容量(即地址單元數(shù)量)不夠時(shí),可采用字?jǐn)U展的方法達(dá)到目的。

圖4.8是利用6264芯片,通過(guò)字?jǐn)U展的方法,構(gòu)成32KB主存模塊的連接圖。圖4.8主存字?jǐn)U展的連接電路圖

(3)主存的位擴(kuò)展。當(dāng)存儲(chǔ)器芯片的數(shù)據(jù)位數(shù)較少,而構(gòu)成的主存每一存儲(chǔ)地址單元要求的存儲(chǔ)數(shù)據(jù)位較多時(shí),可采用位擴(kuò)展,即用多片存儲(chǔ)器芯片來(lái)達(dá)到位擴(kuò)展的目的。圖4.9就是一種主存位擴(kuò)展連接的形式。

在圖4.9中,存儲(chǔ)器芯片的容量是2K×4bit,而要構(gòu)成的主存模塊是2KB,因此,需要將芯片的4位擴(kuò)展為主存所需要的8位。圖4.9主存位擴(kuò)展連接

(4)Intel80x86系統(tǒng)主存模塊的構(gòu)成。

從16位的8086CPU開(kāi)始,80x86CPU由16位到32位一直發(fā)展到64位。在這樣的CPU構(gòu)成的系統(tǒng)中,由于CPU向下兼容的特性決定了存儲(chǔ)器的結(jié)構(gòu)比較復(fù)雜,在存儲(chǔ)器的設(shè)計(jì)上有特殊之處。80x86系統(tǒng)中規(guī)定,主存是按字節(jié)編址的,每一個(gè)主存地址單元存放8位二進(jìn)制數(shù)。①8086系統(tǒng)的主存接口。8086CPU是真正的16位處理器,它既能按字節(jié)訪問(wèn)主存又能按字(16位)訪問(wèn)主存。

8086系統(tǒng)使用16位ISA總線作為系統(tǒng)總線,其數(shù)據(jù)線是16位的,即D0~D15。圖4.10

8086系統(tǒng)主存模塊構(gòu)成電路②80386、80486系統(tǒng)的主存接口。80386CPU和80486CPU都是典型的32位處理器。在由80386、80486CPU構(gòu)成的系統(tǒng)中,與主存有關(guān)的信號(hào)主要有:

地址信號(hào)A2~A31共30個(gè),其編碼可尋址1G個(gè)32位的存儲(chǔ)單元。這里沒(méi)有A0和A1,這兩個(gè)信號(hào)用于在80386、80486CPU內(nèi)部譯碼產(chǎn)生4個(gè)體選擇信號(hào)。圖4.11

32位機(jī)的主存分體組織圖4.12

80486系統(tǒng)主存模塊構(gòu)成電路③Pentium處理器的主存組織。Pentium處理器有幾百條引線,其中與訪問(wèn)主存有關(guān)的是地址信號(hào)A3~A31、體選

擇信號(hào)BE0~BE7、64位數(shù)據(jù)信號(hào)D0~D63及控制信號(hào)M/IO、D/C和W/R。

3.動(dòng)態(tài)讀寫(xiě)存儲(chǔ)器

1)典型動(dòng)態(tài)存儲(chǔ)器芯片介紹

2164是一塊64K×1bit的DRAM芯片,這種存儲(chǔ)器芯片引線與SRAM有所不同,如圖4.13所示。圖4.13

DRAM2164引線圖

2)DRAM的工作過(guò)程

(1)讀出數(shù)據(jù)。當(dāng)要從DRAM芯片讀出數(shù)據(jù)時(shí),首先將行地址加在A0~A7上,然后加載RAS鎖存信號(hào),該信號(hào)的下降沿將行地址鎖存在芯片內(nèi)部。接著將列地址加到芯片的A0~A7上,再送CAS鎖存信號(hào),該信號(hào)的下降沿將列地址鎖存在芯片內(nèi)部。保持WE=1,則在RAS和CAS同時(shí)有效期間(低電平)數(shù)據(jù)輸出并保持。其過(guò)程如圖4.14所示。圖4.14

DRAM2164的讀出過(guò)程

(2)寫(xiě)入數(shù)據(jù)。當(dāng)需要將數(shù)據(jù)寫(xiě)入芯片時(shí),鎖存地址的過(guò)程與讀出數(shù)據(jù)時(shí)的一樣,行列地址先后由RAS和CAS鎖存在芯片內(nèi)部。使WE有效(為低電平),加上要寫(xiě)入的數(shù)據(jù),則該數(shù)據(jù)寫(xiě)入選中的存儲(chǔ)單元,如圖4.15所示。圖4.15

DRAM2164的寫(xiě)入過(guò)程

(3)刷新。動(dòng)態(tài)RAM的一個(gè)重要的問(wèn)題是,它所存儲(chǔ)的信息必須定期進(jìn)行刷新。對(duì)于單元電路的刷新過(guò)程本節(jié)前面已經(jīng)說(shuō)明。通常DRAM芯片要求每隔2毫秒至幾十毫秒或更長(zhǎng)時(shí)間刷新一次,不同的芯片要求的刷新周期不相同。

①異步刷新。

②集中刷新。

③分布刷新。

刷新操作的具體形式有如下兩種:

①只用RAS刷新。圖4.16描述的就是這種操作形式。

②CAS在RAS有效前進(jìn)行刷新。在RAS有效前使CAS有效,即可進(jìn)入CAS在RAS有效前進(jìn)行刷新的周期。此時(shí),時(shí)鐘激活一個(gè)芯片內(nèi)部的刷新計(jì)數(shù)器,用來(lái)產(chǎn)生需要刷新的行地址。在此刷新過(guò)程中不需要外部的地址信號(hào)。刷新過(guò)程如圖4.17所示。圖4.16

DRAM2164的刷新過(guò)程圖4.17

CAS在RAS前有效刷新

3)內(nèi)存條

內(nèi)存條是PC的重要組成部分。它是將多片存儲(chǔ)器芯片焊接在一小條印刷電路板上構(gòu)成的,使用時(shí)將小條插在主板的內(nèi)存條插座上。由于PC的內(nèi)存要求容量大、速度快、功耗低且造價(jià)低廉,而動(dòng)態(tài)存儲(chǔ)器恰恰具備這些性能,因此,PC的內(nèi)存條無(wú)一例外地采用了動(dòng)態(tài)存儲(chǔ)器。4.2.2只讀存儲(chǔ)器ROM

1.概述

只讀存儲(chǔ)器ROM的重要特性是其存儲(chǔ)信息的非易失性,存放在ROM中的信息不會(huì)因去掉供電電源而丟失,當(dāng)再次加電時(shí),其存儲(chǔ)的信息依然存在。

(1)掩膜工藝ROM。

(2)可一次編程ROM(PROM)。

(3)可擦去重寫(xiě)的PROM。

2.EPROM

1)單元電路

EPROM內(nèi)部結(jié)構(gòu)及單元電路如圖4.18所示,它由存儲(chǔ)一個(gè)二進(jìn)制位的基本單元電路(主要元件為浮置柵場(chǎng)效應(yīng)管)組成的存儲(chǔ)陣列構(gòu)成。陣列中的行線為地址(一維或二維)譯碼信號(hào)選擇的字線(即芯片的存儲(chǔ)單元);列線為位線(即數(shù)據(jù)線),用來(lái)讀出EPROM中存儲(chǔ)的信息。

(1)寫(xiě)入數(shù)據(jù)(編程)。

(2)讀出數(shù)據(jù)。

(3)擦除。圖4.18

EPROM內(nèi)部結(jié)構(gòu)及單元電路

2)典型EPROM芯片介紹

2764是一塊8K×8bit的EPROM芯片,其引線如圖4.19

所示。圖4.19

EPROM2764引線圖

3)用EPROM芯片構(gòu)成主存模塊

在使用2764芯片時(shí),僅用于將其存儲(chǔ)的內(nèi)容讀出。其讀出過(guò)程與RAM十分類(lèi)似,即加載要讀出單元的地址,然后使CE和OE均有效(低電平),則在芯片的D0~D7上就可以輸出要讀出的數(shù)據(jù)。

EPROM2764芯片與8位ISA總線的連接如圖4.20所示。圖4.20用EPROM構(gòu)成主存模塊的電路

4)EPROM芯片的編程

EPROM的一個(gè)重要優(yōu)點(diǎn)就是可擦除重寫(xiě),而且對(duì)某一個(gè)存儲(chǔ)芯片來(lái)說(shuō),允許擦除重寫(xiě)的次數(shù)超過(guò)萬(wàn)次。

(1)擦除。

(2)編程。

①標(biāo)準(zhǔn)編程。

②快速編程。

3.EEPROM

1)單元電路

EEPROM或Flash存儲(chǔ)器(閃存)的內(nèi)部結(jié)構(gòu)及單元電路如圖4.21所示,每個(gè)存儲(chǔ)元電路也是由浮置柵場(chǎng)效應(yīng)管構(gòu)成,且組織成陣列結(jié)構(gòu)。與EPROM的主要不同是浮置柵場(chǎng)效應(yīng)管有所不同,EEPROM中的場(chǎng)效應(yīng)管浮置柵極較薄,且外加了控制柵極。這種改造使得電荷注入浮置柵的速度更快,且不需額外的高編程電壓,擦除時(shí)用電信號(hào)控制就可以實(shí)現(xiàn),所以,對(duì)EEPROM可以進(jìn)行在線擦除和在線編程。圖4.21

EEPROM內(nèi)部結(jié)構(gòu)及單元電路

2)典型EEPROM芯片介紹

EEPROM以其制造工藝及芯片容量的不同而有多種型號(hào)。下面僅以8K×8bit的EEPROMNMC98C64A為例來(lái)加以說(shuō)明。其引線如圖4.22所示。圖4.22

EEPROM98C64A引線圖

3)用EEPROM構(gòu)成主存模塊

EEPROM可以很方便地接到計(jì)算機(jī)系統(tǒng)中。圖4.23就是將98C64A連接到8位ISA總線上構(gòu)成主存模塊的連接圖。圖4.23用EEPROM構(gòu)成主存模塊的電路

4)閃速存儲(chǔ)器

閃速(Flash)存儲(chǔ)器也是一種電可擦除可多次編程的存儲(chǔ)器。與EEPROM不同之處在于其擦除寫(xiě)入的速度比較快,為強(qiáng)調(diào)其寫(xiě)入速度快才稱之為閃速存儲(chǔ)器。閃速存儲(chǔ)器在制造工藝上主要有兩類(lèi):或非(NOR)型陣列和與非(NAND)型陣列。4.2.3其他存儲(chǔ)器

1.多端口存儲(chǔ)器

1)芯片引線

雙端口存儲(chǔ)器DS1609的引線如圖4.24所示,圖中兩組信號(hào)線示意了雙端口存儲(chǔ)器的兩個(gè)獨(dú)立的對(duì)外端口。圖4.24雙端口存儲(chǔ)器DS1609的引線

2)同時(shí)操作

雙端口存儲(chǔ)器存在A、B兩端口對(duì)其存儲(chǔ)單元同時(shí)操作的情況,為保證芯片正確工作,有如下規(guī)定:

(1)對(duì)不同存儲(chǔ)單元允許同時(shí)讀或?qū)?

(2)允許對(duì)同一單元同時(shí)讀;

(3)當(dāng)一個(gè)端口寫(xiě)某單元而另一端口同時(shí)讀該單元時(shí),讀出的數(shù)據(jù)要么是舊數(shù)據(jù),要么是新寫(xiě)入的數(shù)據(jù),因此,這種情況不會(huì)發(fā)生混亂;

(4)當(dāng)兩個(gè)端口同時(shí)對(duì)同一單元寫(xiě)數(shù)據(jù)時(shí),就會(huì)引起競(jìng)爭(zhēng),產(chǎn)生錯(cuò)誤,因此,這種情況應(yīng)想辦法加以避免。圖4.25雙端口存儲(chǔ)器某一端口的寫(xiě)過(guò)程

3)競(jìng)爭(zhēng)的消除

對(duì)于DS1609來(lái)說(shuō),競(jìng)爭(zhēng)發(fā)生在對(duì)同一單元同時(shí)寫(xiě)數(shù)據(jù)時(shí)。為了防止競(jìng)爭(zhēng)的發(fā)生,可以另外設(shè)置兩個(gè)接口,該接口能保證一個(gè)端口只寫(xiě)而另一個(gè)端口只讀。例如,用帶有三態(tài)門(mén)輸

出的鎖存器(如74LS373、74LS374)來(lái)實(shí)現(xiàn)。

2.多體交叉存儲(chǔ)器

1)多體并行訪問(wèn)

多體交叉存儲(chǔ)器在4.2.1節(jié)已經(jīng)涉及,只是沒(méi)有特別強(qiáng)調(diào)。例如,8086系統(tǒng)的主存采用兩個(gè)存儲(chǔ)體——奇地址體和偶地址體的交叉編址方式,80386和80486系統(tǒng)的主存采用四體交叉編址方式。由圖4.11可以看到,四個(gè)存儲(chǔ)體的地址編排不是順序的而是交叉的。同樣的思路,Pentium系統(tǒng)的主存是八體交叉編址。

2)多體交叉訪問(wèn)

為提高主存的訪問(wèn)速度,多體交叉存儲(chǔ)器還有另一種訪問(wèn)方式,即多個(gè)模塊順序輪流進(jìn)行訪問(wèn),也稱為交叉訪問(wèn)。

多體存儲(chǔ)器中的體數(shù)一般是2的冪指數(shù),如2、4、8個(gè)或更多。為了說(shuō)明交叉訪問(wèn),將四個(gè)體的多體存儲(chǔ)器簡(jiǎn)化框圖表示于圖4.26中。圖4.26四體交叉訪問(wèn)存儲(chǔ)器簡(jiǎn)化框圖圖4.27四體存儲(chǔ)器交叉訪問(wèn)示意圖

3.相聯(lián)存儲(chǔ)器

前面所描述的存儲(chǔ)器都是按地址進(jìn)行訪問(wèn)的,也就是說(shuō)這些存儲(chǔ)器都是依照地址去尋找地址中的內(nèi)容。而相聯(lián)存儲(chǔ)器是依據(jù)內(nèi)容確定內(nèi)容對(duì)應(yīng)的地址或者是依據(jù)內(nèi)容去尋找與其相關(guān)的內(nèi)容。圖4.28相聯(lián)存儲(chǔ)器的構(gòu)成

4.3高速緩沖存儲(chǔ)器

4.3.1工作原理

1.高速緩沖存儲(chǔ)器的位置

高速緩沖存儲(chǔ)器的工作建立在程序及數(shù)據(jù)訪問(wèn)的局部性原理之上。對(duì)大量程序執(zhí)行情況的分析表明,在一段較短的時(shí)間間隔內(nèi)程序集中在某一較小的主存地址空間上執(zhí)行,這就是程序執(zhí)行的局部性原理。同樣,對(duì)數(shù)據(jù)的訪問(wèn)也會(huì)存在局部性現(xiàn)象。圖4.29

Cache所處位置

2.Cache的構(gòu)成

Cache的構(gòu)成如圖4.30所示,主要包括替換/更新管理模塊、地址映射與變換模塊以及小容量高速緩存Cache。圖4.30

Cache的構(gòu)成框圖4.3.2地址映射

1.全相聯(lián)方式

為了工作方便,提高效率,通常將Cache和主存分成若

干容量相等的存儲(chǔ)塊。例如,主存為64MB,Cache為

32KB,若以4KB大小分塊,Cache被分為塊號(hào)為0~7的8個(gè)塊,塊號(hào)可用3位二進(jìn)制編碼表示;而主存分為16K個(gè)塊,塊號(hào)為0~16383,塊號(hào)需要用14位二進(jìn)制編碼表示。分塊情況如圖4.31所示。圖4.31全相聯(lián)地址映射圖4.32全相聯(lián)地址變換

2.直接映射方式

下面仍以前面所給出的數(shù)據(jù)為例說(shuō)明直接映射。在直接映射方式下,要將主存先以Cache的容量32KB分區(qū),則64MB的主存就被分成0~2047個(gè)區(qū),即2K個(gè)區(qū)。而后Cache和主存的每個(gè)區(qū)再以4KB分塊,如圖4.33所示。圖4.33直接映射方式示意圖下面分析直接映射的地址變換過(guò)程。同樣假定某一時(shí)刻CPU欲訪問(wèn)的主存地址為28B57A4H。此時(shí)該主存地址由區(qū)號(hào)、區(qū)內(nèi)塊號(hào)、塊內(nèi)地址三部分組成,如圖4.34所示。圖4.34直接映射方式下主存地址結(jié)構(gòu)假如此前CPU已訪問(wèn)過(guò)區(qū)號(hào)為516H、區(qū)內(nèi)塊號(hào)為101(5)的主存塊,則該塊一定已經(jīng)裝入Cache的101B(5)塊中,同時(shí),在地址為101B的地址映射表靜態(tài)存儲(chǔ)器中已存儲(chǔ)了主存的區(qū)號(hào)516H,見(jiàn)圖4.35。圖4.35直接地址變換

3.組相聯(lián)方式

全相聯(lián)方式和直接映射方式各有優(yōu)缺點(diǎn),組相聯(lián)方式就是將兩者的優(yōu)點(diǎn)結(jié)合而盡可能減小其缺點(diǎn)。該方式的存儲(chǔ)結(jié)構(gòu)是將Cache先分組,組內(nèi)再分塊;而主存是先以Cache的總?cè)萘糠謪^(qū),區(qū)內(nèi)按Cache的方法分組,組內(nèi)再分塊。

主存與Cache間的地址映射是組間直接映射而組內(nèi)全相聯(lián)映射,也就是說(shuō)主存某組中的塊只能裝入Cache的同號(hào)組中,而主存某組內(nèi)的塊可以裝入Cache同組號(hào)內(nèi)的任意一塊中,示意圖如圖4.36所示。圖4.36組相聯(lián)地址映射示意圖在圖4.36中,假設(shè)Cache分為0、1兩組,每組分為00B~11B四塊;主存分為0~2047區(qū),每區(qū)分為0、1兩組,每組分為00B~11B四塊。當(dāng)CPU給出的主存地址為28B57A4H時(shí),在組相聯(lián)地址變換中,主存地址結(jié)構(gòu)如圖4.37所示。圖4.37組相聯(lián)方式下主存地址結(jié)構(gòu)現(xiàn)在說(shuō)明組相聯(lián)方式下的地址變換。若在此前CPU曾訪問(wèn)過(guò)28B5000H~28B5FFFH這塊主存的某一地址,使得該塊已調(diào)入Cache中,并被放置在Cache的1組10B塊內(nèi),且將主存塊所在的區(qū)號(hào)(516H)和組內(nèi)塊號(hào)(01B)(即數(shù)據(jù)1459H)存入了地址映射表中1組10B地址單元中,如圖4.38所示。圖4.38組相聯(lián)地址變換4.3.3替換算法

當(dāng)要訪問(wèn)的主存塊不在Cache中,即未命中時(shí),就需要將主存塊調(diào)入Cache,替換Cache中的塊。主要的替換算法有如下幾種。

1.隨機(jī)替換算法(RAND)

這種算法是用隨機(jī)函數(shù)發(fā)生器產(chǎn)生需替換的Cache塊號(hào),將其替換。這種方法沒(méi)有考慮信息的歷史及使用情況,故其命中率比較低?,F(xiàn)已不再使用。

2.先進(jìn)先出算法(FIFO)

該算法是將最先裝入Cache的那個(gè)主存塊替換出去。這種方法只考慮了信息的歷史情況而沒(méi)有考慮其使用情況,也許最先裝入的那一塊正在頻繁使用。因此,該算法也有一定的

局限性,命中率不是很高。

3.近期最少使用算法(LRU)

這種算法就是將近期最少使用的Cache塊替換出去。這種算法需要對(duì)每個(gè)Cache塊設(shè)置一個(gè)計(jì)數(shù)器,某塊每命中一次,就將其計(jì)數(shù)器清0而其他塊的計(jì)數(shù)器加1,記錄Cache中各塊的使用情況。當(dāng)需要替換時(shí),便將計(jì)數(shù)值最大的塊替換出去。由于Cache的工作是建立在程序執(zhí)行及數(shù)據(jù)訪問(wèn)的局部性原理基礎(chǔ)上的,因此,該算法較前兩種算法的命中率要高一些。

4.最不經(jīng)常使用算法(LFU)

該算法是將一段時(shí)間里被訪問(wèn)次數(shù)最少的Cache塊替換出去。這種算法也需要對(duì)每個(gè)Cache塊設(shè)置一個(gè)計(jì)數(shù)器,且開(kāi)始調(diào)入時(shí)計(jì)數(shù)為0。每被訪問(wèn)一次,被訪問(wèn)塊的計(jì)數(shù)器就加1。當(dāng)需要替換時(shí),便將計(jì)數(shù)值最小的塊替換出去。同時(shí)將所有各塊的計(jì)數(shù)器清0。這種方法將計(jì)數(shù)周期限定在兩次替換的時(shí)間間隔內(nèi),不能完全反映近期的訪問(wèn)情況。

5.最優(yōu)替換算法(OTP)

要實(shí)現(xiàn)這種算法,程序需執(zhí)行兩次。執(zhí)行第一遍時(shí),記錄各Cache塊地址的使用情況。根據(jù)第一遍的記錄就能找出需要替換出去的該是哪塊。有了先驗(yàn)的替換信息,在第二次及以后的執(zhí)行中一定能使命中率達(dá)到最高。前面的算法是依據(jù)過(guò)去的信息決定未來(lái),而這種算法是以未來(lái)的信息決定未來(lái),必然最佳。顯然,這種方法是不實(shí)用的,但它可以用作衡量其他算法的標(biāo)準(zhǔn)。下面通過(guò)一個(gè)簡(jiǎn)單的例子說(shuō)明上述替換算法。假定程序在主存中占用5個(gè)存儲(chǔ)塊,Cache容量為3個(gè)存儲(chǔ)塊,采用全相聯(lián)映射。CPU執(zhí)行程序的順序?yàn)镻2、P3、P2、P1、P5、P2、P4、P5、P3、P2、P5、P2。采用FIFO算法、LRU算法和OTP三種算法的Cache命中情況如圖4.39所示。圖4.39三種替換算法的比較4.3.4主存與Cache內(nèi)容的一致性問(wèn)題

1.寫(xiě)回法

寫(xiě)回法是當(dāng)CPU寫(xiě)Cache命中時(shí),只將數(shù)據(jù)寫(xiě)入Cache而不立即寫(xiě)入主存。只有當(dāng)由CPU改寫(xiě)過(guò)的塊被替換出去時(shí)該塊才寫(xiě)回到主存中。

2.全寫(xiě)法

全寫(xiě)法(也稱寫(xiě)直達(dá)法)是當(dāng)CPU寫(xiě)Cache命中時(shí),在將數(shù)據(jù)寫(xiě)入Cache的同時(shí)也寫(xiě)入主存,從而較好地保證了主存與Cache內(nèi)容的一致性。4.3.5

Cache性能分析

1.加速比

在計(jì)算機(jī)中設(shè)置Cache的主要目的就在于降低存儲(chǔ)系統(tǒng)的價(jià)格、提高存儲(chǔ)系統(tǒng)的速度。尤其是速度,它是計(jì)算機(jī)設(shè)計(jì)與發(fā)展中永恒的主題,因此,人們最關(guān)心的性能指標(biāo)就是

加速比。

假設(shè)Cache的訪問(wèn)周期為T(mén)C,主存的訪問(wèn)周期為T(mén)M,Cache的命中率為H,則Cache-主存系統(tǒng)的平均訪問(wèn)周期T可表示為

T=H×TC+(1-H)×(TC+TX)

(4-1)

Cache-主存系統(tǒng)的加速比SP定義為

SP=TM/T

(4-2)

根據(jù)加速比的定義,上述計(jì)算機(jī)的Cache-主存系統(tǒng)的加速比SP=100/11=9.9。

可以看到,在塊大小確定后,命中率愈高,加速比愈大。但加速比不會(huì)無(wú)限增大,其極限值為T(mén)M/TC。

2.成本

Cache的出現(xiàn)是為了提高CPU訪問(wèn)主存儲(chǔ)器的速度,同時(shí)又可以降低成本。

假設(shè)計(jì)算機(jī)中的主存與Cache的容量分別為S1和S2。顯然,S1>>S2。同時(shí),若主存與Cache的單位價(jià)格分別為C1和C2,而且C1一定是低的,則Cache-主存系統(tǒng)的平均價(jià)格C由下式?jīng)Q定:

(4-3)

3.命中率與Cache容量的關(guān)系

Cache的命中率隨著它的容量的增加而增加,其關(guān)系曲線如圖4.40所示。圖4.40命中率H與容量S的關(guān)系曲線一些文獻(xiàn)資料認(rèn)為,在一般情況下,圖4.40的關(guān)系曲線可用下式近似表示:

H=1-S-0.5

(4-4)

式(4-4)中,容量S以字節(jié)為單位。

4.兩級(jí)Cache

為了克服CPU和主存間的性能差距,使兩者在性能上更好地匹配,Cache應(yīng)運(yùn)而生。隨著技術(shù)的發(fā)展,目前在原有的Cache和主存之間增加了另一級(jí)Cache,構(gòu)成兩級(jí)Cache系統(tǒng)。兩級(jí)Cache的總未命中率(或稱總失效率)是由兩級(jí)Cache的各級(jí)失效率來(lái)決定的,即

總失效率=(失效率)第一級(jí)×(失效率)第二級(jí)

(4-5)

例如,在10000次訪問(wèn)存儲(chǔ)器中,第一級(jí)Cache失效400次,第二級(jí)Cache失效4次,則計(jì)算出(失效率)第一級(jí)為4%,

(失效率)第二級(jí)為1%,利用式(4-5)得到使用兩級(jí)Cache后總的失效率降為0.04%。

4.4虛擬存儲(chǔ)器

4.4.1虛擬存儲(chǔ)器的概念

通過(guò)在存儲(chǔ)器系統(tǒng)中增加一個(gè)容量小、速度高的Cache,解決了CPU與主存儲(chǔ)器的速度匹配問(wèn)題。隨著技術(shù)的發(fā)展,與存儲(chǔ)系統(tǒng)有關(guān)的另一個(gè)問(wèn)題凸現(xiàn)出來(lái):要求計(jì)算機(jī)具有海量存儲(chǔ)器,以便支持多用戶、多任務(wù)程序的開(kāi)發(fā)。虛擬存儲(chǔ)器借助于大容量外存(如硬磁盤(pán))為程序員提供了比計(jì)算機(jī)實(shí)際主存大得多的地址空間。它解決的是主存容量與價(jià)格的矛盾,使速度接近主存速度而容量和價(jià)格又接近外存。虛擬存儲(chǔ)器的結(jié)構(gòu)及在存儲(chǔ)體系中的位置如圖4.41所示,它是在硬、軟件的管理支持下,由主存和輔存共同實(shí)現(xiàn)的。圖4.41虛擬存儲(chǔ)器的構(gòu)成4.4.2虛擬存儲(chǔ)器的管理

可依據(jù)不同管理方式構(gòu)成虛擬存儲(chǔ)器。

1.頁(yè)式虛擬存儲(chǔ)器

1)地址變換

在頁(yè)式虛擬存儲(chǔ)器中,由虛擬地址到主存物理地址的變換是通過(guò)頁(yè)表來(lái)實(shí)現(xiàn)的。在頁(yè)表中每一條記錄都包含有虛頁(yè)號(hào)所對(duì)應(yīng)的實(shí)頁(yè)號(hào)。在地址變換中,只要根據(jù)虛頁(yè)號(hào)找到對(duì)

應(yīng)的實(shí)頁(yè)號(hào),將此實(shí)頁(yè)號(hào)與虛擬地址中的低字段所給出的頁(yè)內(nèi)地址拼接在一起,就獲得了主存的物理地址。頁(yè)式虛擬存儲(chǔ)器的地址變換如圖4.42所示。圖4.42頁(yè)式虛擬存儲(chǔ)器的地址變換

2)快表與慢表

由于頁(yè)表設(shè)置在主存中,在頁(yè)式虛擬存儲(chǔ)器工作時(shí),首先要訪問(wèn)主存中的頁(yè)表,進(jìn)行地址變換,獲得主存地址。然后,再利用主存地址訪問(wèn)主存,獲得數(shù)據(jù)。顯然,即使主存命中,也需要兩次訪問(wèn)主存才能獲得主存信息。前面已提到主存速度比較慢,這必然會(huì)降低CPU的速度。若是被訪問(wèn)的頁(yè)不在主存中,那速度就更慢。

快表一般很小,它僅是主存中頁(yè)表(相對(duì)快表可稱其為

慢表)的一小部分。只有在快表中找不到要訪問(wèn)的頁(yè)時(shí),才

去訪問(wèn)慢表,從而提高了速度。利用快表的工作思路如圖4.43所示。圖4.43頁(yè)式虛擬存儲(chǔ)器快表工作思路頁(yè)式虛擬存儲(chǔ)器的主要優(yōu)點(diǎn)是:

(1)主存的利用率高。由于頁(yè)的容量很小,每一用戶程

序只有不到一頁(yè)的浪費(fèi),故形成的主存碎片很小。

(2)地址表的內(nèi)容比較簡(jiǎn)單。

(3)地址映射與地址變換速度比較快。頁(yè)式虛擬存儲(chǔ)器的主要缺點(diǎn):

(1)程序的模塊性差。因?yàn)轫?yè)的大小是固定的,無(wú)法與程序模塊保持一致。

(2)頁(yè)表很長(zhǎng)。如前述例子中頁(yè)表長(zhǎng)達(dá)1M。

2.段式虛擬存儲(chǔ)器

另一種經(jīng)常采用的虛擬存儲(chǔ)器是段式虛擬存儲(chǔ)器。采用此種方式是將完成某種獨(dú)立功能的程序模塊定義為一段,例如主程序、子程序、數(shù)據(jù)塊、表格等均可定義成一段。程序

員在編程時(shí),每一段都可從虛擬地址的0地址開(kāi)始,并且每一段的長(zhǎng)度是不一樣的。圖4.44段式虛擬存儲(chǔ)器的地址變換段式虛擬存儲(chǔ)器的優(yōu)點(diǎn)是:

(1)很適合模塊化程序設(shè)計(jì)。將每一功能獨(dú)立的程序模塊定義為一段,既便于程序的開(kāi)發(fā),又便于虛擬存儲(chǔ)器的管理。

(2)便于程序和數(shù)據(jù)的共享。此方式能將整段獨(dú)立的程序和數(shù)據(jù)裝入主存,起始地址、段長(zhǎng)度均已知,很容易實(shí)現(xiàn)共享。

(3)便于信息保護(hù)。對(duì)裝入段的屬性進(jìn)行設(shè)置,很容易實(shí)現(xiàn)對(duì)段的保護(hù)。

3.段頁(yè)式虛擬存儲(chǔ)器

上述兩種虛擬存儲(chǔ)器各有優(yōu)缺點(diǎn)。為結(jié)合兩者的優(yōu)點(diǎn),人們提出了段頁(yè)式虛擬存儲(chǔ)器。

段頁(yè)式虛擬存儲(chǔ)器是將程序首先分段,段的概念同前。然后,再將每段分成大小相同的若干頁(yè)。對(duì)段來(lái)說(shuō),要用段表來(lái)管理所有各段,段表中存放對(duì)應(yīng)該段的頁(yè)表基地址等有關(guān)信息,見(jiàn)圖4.45。每一段有自己的頁(yè)表,其中存放對(duì)應(yīng)本段每一頁(yè)的實(shí)頁(yè)號(hào)。顯然,在裝入某一段的各頁(yè)時(shí),這些頁(yè)在實(shí)存中并不一定連續(xù)。圖4.45段頁(yè)式虛擬存儲(chǔ)器的地址變換4.4.3幾點(diǎn)說(shuō)明

1.多用戶工作

前面有關(guān)虛擬存儲(chǔ)器的描述都是單用戶(僅一個(gè)程序員)的情況,即一個(gè)程序員在虛擬存儲(chǔ)空間里編寫(xiě)許多程序模塊。以上三種方式均可支持單用戶工作。如果計(jì)算機(jī)系統(tǒng)工作在多用戶的情況下,多個(gè)程序員各自編寫(xiě)、運(yùn)行自己的程序,則要求虛擬存儲(chǔ)器也能支持多用戶的工作。由于虛存空間是海量的,多用戶問(wèn)題完全可以由虛擬存儲(chǔ)器管理(操作系統(tǒng))為用戶指定不同的使用空間來(lái)得到解決,且在虛存管理過(guò)程中為不同的用戶編號(hào),而各用戶在編程時(shí)可自由使用整個(gè)虛擬存儲(chǔ)空間。這時(shí)的虛擬地址增加一個(gè)字段,圖4.46所示的就是段頁(yè)式虛擬存儲(chǔ)器的虛擬地址格式。同樣,對(duì)段式虛擬存儲(chǔ)器只是在圖4.46中無(wú)頁(yè)號(hào)字段,而對(duì)頁(yè)式虛擬存儲(chǔ)器則無(wú)段號(hào)字段。圖4.46多用戶段頁(yè)式虛擬地址格式

2.調(diào)度方式

在三種虛存管理方式之下,由于主存容量有限,因此存在將頁(yè)或段裝入主存的問(wèn)題。

段式虛擬存儲(chǔ)器采用相聯(lián)地址映射方式,在主存中尋找足夠空間將要訪問(wèn)的段裝入。若無(wú)空位,則需按替換算法將某段替換出去。

在頁(yè)式或段頁(yè)式虛擬存儲(chǔ)器中,可采用以下兩種方法之一:

(1)分頁(yè)式。即將程序的所有頁(yè)一次裝入主存,使后續(xù)程序執(zhí)行中主存命中率為100%。

(2)請(qǐng)求頁(yè)式。這種方法每次只裝入一頁(yè),用到哪頁(yè)就裝入哪頁(yè)。

3.替換算法

在虛擬存儲(chǔ)器的管理中,同樣存在段或頁(yè)未能在主存命中,需要將新的段或頁(yè)從外存裝入主存、將主存中的段或頁(yè)替換出去的情況。

4.5外部存儲(chǔ)器(輔助存儲(chǔ)器)

在圖4.1中,無(wú)論是聯(lián)機(jī)磁盤(pán)存儲(chǔ)器還是脫機(jī)光盤(pán)存儲(chǔ)器、磁帶機(jī)等都是外部存儲(chǔ)器,外存是計(jì)算機(jī)系統(tǒng)的重要組成部分。

除了容量、速度等指標(biāo)的差別之外,外存與內(nèi)存(主存)最大的差別在于CPU對(duì)它們的操作方式上。CPU對(duì)主存采取直接操作方式,即CPU提供的主存地址直接加載至構(gòu)成主存的存儲(chǔ)芯片上尋址存儲(chǔ)單元,然后CPU提供讀寫(xiě)信號(hào)并直接加載至存儲(chǔ)芯片上,存儲(chǔ)芯片在地址和讀寫(xiě)信號(hào)的作用下完成數(shù)據(jù)的讀寫(xiě)操作,如4.2節(jié)所述。CPU對(duì)外存采取間接操作方式,即CPU通過(guò)對(duì)外存接口(外存控制器)的操作間接地操作外存的讀寫(xiě),如圖4.47所示。圖4.47

CPU對(duì)外存的操作方式4.5.1磁表面存儲(chǔ)器

1.磁表面存儲(chǔ)原理及記錄方式

1)磁記錄原理

磁記錄的基本原理是利用硬磁材料的剩磁狀態(tài)來(lái)保存二進(jìn)制信息。圖4.48示意了磁頭經(jīng)過(guò)磁層記錄信息的方法。圖4.48水平記錄與垂直記錄示意圖

2)磁記錄方式

磁記錄方式就是按照某種規(guī)則將二進(jìn)制信息變換為磁記錄層上磁場(chǎng)變化的方法。圖4.49給出了二進(jìn)制數(shù)據(jù)與相應(yīng)的寫(xiě)入電流波形,也是相應(yīng)的磁化狀態(tài)。圖4.49磁記錄波形(寫(xiě)入電流或磁化方向)

3)性能評(píng)價(jià)

(1)自同步能力。

若某記錄方式能夠直接由磁層記錄讀出信息獲得其二進(jìn)制碼元同步信號(hào),則稱該記錄方式具有自同步能力。有自同步能力的記錄方式很容易由其讀出信號(hào)獲得同步信號(hào),硬件實(shí)現(xiàn)比較容易。若沒(méi)有自同步能力,則需利用比較復(fù)雜的硬件技術(shù)獲得同步信號(hào)。

(2)編碼效率η。

編碼效率η定義為

(4-7)

2.磁盤(pán)存儲(chǔ)器

1)磁盤(pán)結(jié)構(gòu)

磁盤(pán)可分為軟盤(pán)和硬盤(pán)。在這里只簡(jiǎn)單說(shuō)明硬磁盤(pán)的結(jié)構(gòu)。

硬盤(pán)的盤(pán)片一般是在以鋁為主要成分的基片表面涂上磁性材料形成的。一個(gè)硬盤(pán)驅(qū)動(dòng)器內(nèi)可裝有多個(gè)盤(pán)片,組成盤(pán)片組,每個(gè)盤(pán)片可以提供兩個(gè)記錄面,每個(gè)記錄面都配有一個(gè)獨(dú)立的磁頭。所有記錄面上相同序號(hào)的磁道構(gòu)成一個(gè)圓柱面(Cylinder),其編號(hào)與磁道編號(hào)相同,如圖4.50所示。圖4.50硬磁盤(pán)結(jié)構(gòu)及記錄面扇區(qū)示意圖

2)數(shù)據(jù)記錄格式

信息記錄在磁盤(pán)上,按柱面逐道記錄。一個(gè)柱面記錄滿,再移動(dòng)磁頭記錄下一個(gè)柱面。在一個(gè)磁道上記錄信息的組織形式稱為磁道的記錄格式。不同操作系統(tǒng)所采用的記錄

格式會(huì)有所不同,用戶甚至可以制定自己的格式來(lái)記錄信息。圖4.51給出了一種典型的記錄格式。根據(jù)圖中所描述的情況,可以了解到數(shù)據(jù)是如何記錄在磁道上的。圖4.51磁盤(pán)記錄格式

3)主要技術(shù)指標(biāo)

(1)道密度。

(2)位密度。

(3)存儲(chǔ)容量。

存儲(chǔ)容量是指整個(gè)磁盤(pán)所能存儲(chǔ)的二進(jìn)制信息的總量。磁盤(pán)的容量有非格式化容量和格式化容量之分。

非格式化容量=位密度×內(nèi)圈磁道周長(zhǎng)×每個(gè)記錄面上的磁道數(shù)×記錄面數(shù)

(4-8)

格式化容量=每個(gè)扇區(qū)的字節(jié)數(shù)×每道的扇區(qū)數(shù)×每個(gè)記錄面的磁道數(shù)×記錄面數(shù)

(4-9)

(4)平均訪問(wèn)時(shí)間。

平均訪問(wèn)時(shí)間是指從發(fā)出讀寫(xiě)命令開(kāi)始,磁頭從某一位置移動(dòng)到指定位置并完成數(shù)據(jù)讀寫(xiě)所需的時(shí)間,即

平均訪問(wèn)時(shí)間=平均尋道時(shí)間+平均等待時(shí)間

+數(shù)據(jù)傳輸時(shí)間

(4-10)

(5)轉(zhuǎn)速。轉(zhuǎn)速是指硬盤(pán)內(nèi)驅(qū)動(dòng)電機(jī)主軸的旋轉(zhuǎn)速度,

單位為r/min(轉(zhuǎn)/分鐘)。目前IDE硬盤(pán)的主軸轉(zhuǎn)速一般為5400/7200r/min。SCSI硬盤(pán)的主軸轉(zhuǎn)速可達(dá)7200~10000r/min,最高可達(dá)15000r/min。

(6)數(shù)據(jù)傳輸率。數(shù)據(jù)傳輸率是指磁頭找到數(shù)據(jù)存儲(chǔ)的地址后,單位時(shí)間內(nèi)寫(xiě)入或讀出的字節(jié)數(shù),即

數(shù)據(jù)傳輸率=每個(gè)扇區(qū)的字節(jié)數(shù)×每道扇區(qū)數(shù)

×磁盤(pán)的轉(zhuǎn)速

(4-11)

根據(jù)數(shù)據(jù)傳輸率可以確定出數(shù)據(jù)傳輸時(shí)間。

4)磁盤(pán)存儲(chǔ)器與計(jì)算機(jī)主機(jī)的連接

計(jì)算機(jī)主機(jī)與硬磁盤(pán)(軟磁盤(pán)已成為歷史)驅(qū)動(dòng)器的連接如圖4.52所示,磁盤(pán)驅(qū)動(dòng)器通過(guò)外總線接到磁盤(pán)控制器上,磁盤(pán)控制器接計(jì)算機(jī)的系統(tǒng)總線。圖4.52磁盤(pán)驅(qū)動(dòng)器的連接

3.磁盤(pán)陣列RAID

RAID的優(yōu)點(diǎn)包括以下幾點(diǎn):

(1)成本低,功耗小,傳輸速率高。

(2)可以提供容錯(cuò)功能。

(3)在同樣的容量下,RAID比起傳統(tǒng)的大直徑磁盤(pán)驅(qū)動(dòng)器價(jià)格要低許多。

1)冗余無(wú)校驗(yàn)的磁盤(pán)陣列(RAID0)

圖4.53所示為RAID0結(jié)構(gòu),畫(huà)出的是4個(gè)物理磁盤(pán)的

情況。圖4.53

RAID0中各數(shù)據(jù)帶(塊)的分布

2)鏡像磁盤(pán)陣列(RAID1)

(1)先分塊后鏡像RAID0+1。這種組織形式是先將數(shù)據(jù)以RAID0的方法分布到4個(gè)磁盤(pán)上,然后再將這4個(gè)磁盤(pán)鏡像到另外4個(gè)磁盤(pán)上,如圖4.54所示。圖4.54

RAID0+1先分塊后鏡像

(2)先鏡像后分塊RAID1+0。這種組織形式是先以RAID1的方式構(gòu)造4對(duì)鏡像盤(pán),再將數(shù)據(jù)分布到這4對(duì)盤(pán)中,如圖4.55所示。圖4.55

RAID1+0先鏡像后分塊

3)并行海明糾錯(cuò)陣列(RAID2)

RAID2為位交叉海明碼陣列,采用海明冗余糾錯(cuò)碼。數(shù)據(jù)按位分布到磁盤(pán)上,在記錄數(shù)據(jù)的同時(shí)還記錄數(shù)據(jù)相應(yīng)的海明碼。圖4.56

RAID2位交叉海明碼陣列

4)奇偶校驗(yàn)并行位交錯(cuò)陣列(RAID3)

RAID3是位交叉奇偶校驗(yàn)盤(pán)陣列。與RAID2類(lèi)似,是其簡(jiǎn)化形式。在這里也采用并行存取技術(shù)。

在RAID3中,將數(shù)據(jù)按位或按字節(jié)交叉存于各磁盤(pán)的同時(shí),計(jì)算奇偶校驗(yàn)碼,并將校驗(yàn)碼記在校驗(yàn)磁盤(pán)上,如圖4.57所示。圖4.57

RAID3位交叉奇偶校驗(yàn)陣列從概念上可以這樣簡(jiǎn)單地理解RAID3的原理:當(dāng)將4位數(shù)據(jù)存于各磁盤(pán)的同時(shí),對(duì)數(shù)據(jù)求模2和,并將其存于校驗(yàn)磁盤(pán)上,即

A校驗(yàn)=A0⊕A1⊕A2⊕A3

(4-12)

同樣,也可以求出B校驗(yàn)、C校驗(yàn)、……,分別寫(xiě)入校驗(yàn)磁盤(pán)。當(dāng)某磁盤(pán)出現(xiàn)故障時(shí),只要從累加和中減去正確盤(pán)上的數(shù)據(jù)即可得到故障盤(pán)中的原有正確數(shù)據(jù)。例如,若發(fā)現(xiàn)存儲(chǔ)數(shù)據(jù)A1位的磁盤(pán)失效,則可由其他正常磁盤(pán)讀出的數(shù)據(jù)計(jì)算出A1:

A1=A校驗(yàn)⊕A0⊕A2⊕A3

(4-1

溫馨提示

  • 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)論