網(wǎng)絡(luò)工程師考試考前串講.doc_第1頁
網(wǎng)絡(luò)工程師考試考前串講.doc_第2頁
網(wǎng)絡(luò)工程師考試考前串講.doc_第3頁
網(wǎng)絡(luò)工程師考試考前串講.doc_第4頁
網(wǎng)絡(luò)工程師考試考前串講.doc_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

網(wǎng)絡(luò)工程師 /jiaocheng/zg9.html網(wǎng)絡(luò)工程師考試考前串講第2章計算機(jī)硬件基礎(chǔ)從歷次考試試題來看,計算機(jī)硬件基礎(chǔ)知識是網(wǎng)絡(luò)工程師考試的一個必考點(diǎn)。根據(jù)考試大綱,計算機(jī)硬件基礎(chǔ)的考查知識包括計算機(jī)系統(tǒng)的組成、存儲系統(tǒng),以及輸入/輸出結(jié)構(gòu)和設(shè)備。2.1考點(diǎn)分析本節(jié)把歷次考試中計算機(jī)硬件基礎(chǔ)方面的試題進(jìn)行匯總,得出本章的考點(diǎn),如表2-1所示(括號中的數(shù)字表示知識點(diǎn)所考查的分?jǐn)?shù))。表2-1 計算機(jī)硬件基礎(chǔ)試題知識點(diǎn)分布根據(jù)表2-1,我們可以得出計算機(jī)硬件基礎(chǔ)的考點(diǎn)主要有以下幾個方面。(1)計算機(jī)組成:包括計算機(jī)的基本組成、Flynn分類、RISC和CISC計算機(jī)的特點(diǎn)、多處理機(jī)、總線和接口等。(2)數(shù)據(jù)運(yùn)算:包括數(shù)據(jù)的表示(含浮點(diǎn)數(shù)的表示)、邏輯運(yùn)算。(3)尋址方式:包括指令的各種尋址方式。(4)中斷:主要考查中斷的概念,以及中斷響應(yīng)的過程。(5)存儲體系:包括內(nèi)存編址、內(nèi)存容量的計算、Cache(高速緩沖存儲器)、磁盤參數(shù)的計算。(6)流水線:主要考查流水線的概念、性能,以及有關(guān)參數(shù)的計算。(7)性能評估:主要考查系統(tǒng)可靠性的計算、時鐘頻率等。對這些知識點(diǎn)進(jìn)行歸類,按照重要程度進(jìn)行排列,如表2-2所示。其中的星號(*)代表知識點(diǎn)的重要程度,星號越多,表示越重要。表2-2 計算機(jī)硬件基礎(chǔ)各知識點(diǎn)重要程度在本章的后續(xù)內(nèi)容中,我們將對這些知識點(diǎn)進(jìn)行逐個講解。2.2計算機(jī)組成對于本知識點(diǎn)的考查,主要掌握計算機(jī)的基本組成、Flynn分類、RISC和CISC計算機(jī)的特點(diǎn)、多處理機(jī)的關(guān)鍵特性等。2.2.1計算機(jī)的基本組成在一臺計算機(jī)中,主要有6種部件,分別是控制器、運(yùn)算器、內(nèi)存儲器、外存儲器、輸入設(shè)備和輸出設(shè)備,它們之間的合作關(guān)系如圖2-1所示。圖2-1 計算機(jī)各功能部件之間的合作關(guān)系(1)控制器(Control unit):是分析和執(zhí)行指令的部件,也是統(tǒng)一指揮并控制計算機(jī)各部件協(xié)調(diào)工作的中心部件,所依據(jù)的是機(jī)器指令??刂破鞯慕M成包含程序計數(shù)器(PC)、指令寄存器(IR)、指令譯碼器、時序部件、微操作控制信號形成部件(PSW)和中斷機(jī)構(gòu)。(2)運(yùn)算器:也叫做算術(shù)邏輯單元(Arithmetic and Logic Unit,ALU),對數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算。通常由ALU(算術(shù)邏輯單元,包括累加器、加法器等)、通用寄存器(不包含地址寄存器)、多路轉(zhuǎn)換器、數(shù)據(jù)總線組成。(3)內(nèi)存儲器(Memory或Primary storage,簡稱內(nèi)存或主存):存儲現(xiàn)場操作的信息與中間結(jié)果,包括機(jī)器指令和數(shù)據(jù)。(4)外存儲器(Secondary storage或Permanent storage,簡稱外存或輔存):存儲需要長期保存的各種信息。(5)輸入設(shè)備(Input devices):接收外界向計算機(jī)輸入的信息。(6)輸出設(shè)備(Output devices):將計算機(jī)中的信息向外界輸送?,F(xiàn)在的控制器和運(yùn)算器被制造在同一塊超大規(guī)模集成電路中,統(tǒng)稱為中央處理器,即CPU(Central Processing Unit)。2.2.2Flynn的分類1966年,Michael.J.Flynn提出根據(jù)指令流、數(shù)據(jù)流的多倍性特征對計算機(jī)系統(tǒng)進(jìn)行了分類(通常稱為Flynn分類法),有關(guān)概念的定義如下。(1)指令流:指機(jī)器執(zhí)行的指令序列。(2)數(shù)據(jù)流:指由指令流調(diào)用的數(shù)據(jù)序列,包括輸入數(shù)據(jù)和中間結(jié)果,但不包括輸出數(shù)據(jù)。(3)多倍性:指在系統(tǒng)性能瓶頸部件上同時處于同一執(zhí)行階段的指令或數(shù)據(jù)的最大可能個數(shù)。Flynn根據(jù)不同的指令流和數(shù)據(jù)流組織方式,把計算機(jī)系統(tǒng)分成如下4類。 (1)單指令流單數(shù)據(jù)流(Single Instruction stream and Single Data stream,SISD)。SISD其實(shí)就是傳統(tǒng)的順序執(zhí)行的單處理器計算機(jī),其指令部件每次只對一條指令進(jìn)行譯碼,并只對一個操作部件分配數(shù)據(jù)。流水線方式的單處理機(jī)有時也被當(dāng)作SISD. (2)單指令流多數(shù)據(jù)流(Single Instruction stream and Multiple Data stream,SIMD)。SIMD以并行處理機(jī)(陣列處理機(jī))為代表,并行處理機(jī)包括多個重復(fù)的處理單元,由單一指令部件控制,按照同一指令流的要求為它們分配各自所需的不同數(shù)據(jù)。相聯(lián)處理機(jī)也屬于這一類。 (3)多指令流單數(shù)據(jù)流(Multiple Instruction stream and Single Data stream,MISD)。MISD具有n個處理單元,按n條不同指令的要求對同一數(shù)據(jù)流及其中間結(jié)果進(jìn)行不同的處理。一個處理單元的輸出又作為另一個處理單元的輸入。這類系統(tǒng)實(shí)際上很少見到。有文獻(xiàn)把流水線看作多個指令部件,稱流水線計算機(jī)是MISD. (4)多指令流多數(shù)據(jù)流(Multiple Instruction stream and Multiple Data stream,MIMD)。MIMD是指能實(shí)現(xiàn)作業(yè)、任務(wù)、指令等各級全面并行的多機(jī)系統(tǒng)。多處理機(jī)屬于MIMD.當(dāng)前的高性能服務(wù)器與超級計算機(jī)大多具有多個處理機(jī),能進(jìn)行多任務(wù)處理,稱為多處理機(jī)系統(tǒng),不論是大規(guī)模并行處理機(jī)還是對稱多處理機(jī),都屬于MIMD.2.2.3并行處理本節(jié)主要介紹幾種多處理機(jī)系統(tǒng)。(1)超級標(biāo)量處理機(jī)。在超級標(biāo)量處理機(jī)中,配置了多個功能部件和指令譯碼電路,采取了多條流水線,還有多個寄存器端口和總線,因此可以同時執(zhí)行多個操作,以并行處理來提高機(jī)器速度。它可以同時從存儲器中取出幾條指令同時送入不同的功能部件。超級標(biāo)量處理機(jī)的硬件是不能重新安排指令的前后次序的,但可以在編譯程序時采取優(yōu)化的辦法對指令的執(zhí)行次序進(jìn)行精心安排,把能并行執(zhí)行的指令搭配起來。(2)超級流水線處理機(jī)。超級流水線處理機(jī)的周期比其他結(jié)構(gòu)的處理機(jī)短。與超級標(biāo)量處理機(jī)一樣,硬件不能調(diào)整指令的執(zhí)行次序,而由編譯程序解決優(yōu)先問題。(3)超長指令字處理機(jī)。超長指令字處理機(jī)是一種單指令流多操作碼多數(shù)據(jù)的系統(tǒng)結(jié)構(gòu),編譯程序在編譯時把這個能并行執(zhí)行的操作組合在一起,成為一條有多個操作段的超長指令,由這條超長指令控制計算機(jī)中多個互相獨(dú)立的功能部件,每個操作段控制一個功能部件,相當(dāng)于同時執(zhí)行多條指令。(4)向量處理機(jī)。向量處理機(jī)是一種具有向量數(shù)據(jù)表示,并設(shè)置有相應(yīng)的指令和硬件,能對向量的各個元素進(jìn)行并行處理的計算機(jī)。當(dāng)進(jìn)行向量運(yùn)算時,它的性能要比大型機(jī)好得多。向量處理機(jī)有巨型計算機(jī)和向量協(xié)處理機(jī)(或稱為數(shù)組處理機(jī))兩種類型。巨型計算機(jī)能對大量的數(shù)據(jù)進(jìn)行浮點(diǎn)運(yùn)算,同時還是可以進(jìn)行標(biāo)量計算和一般數(shù)據(jù)處理的通用計算機(jī)。向量處理機(jī)一般采用流水線工作,當(dāng)它處理一條數(shù)組指令時,對數(shù)組中的每個元素執(zhí)行相同的操作,而且各元素間是互相無關(guān)的,因此流水線不會阻塞,能以每個時鐘周期送出一個結(jié)果的速度運(yùn)行。為了存儲系統(tǒng)能及時提供數(shù)據(jù),向量處理機(jī)配有一個大容量的、分成多個模塊交錯工作的主存儲器。為了提高運(yùn)算速度,在向量處理機(jī)的運(yùn)算部件中可采用多個功能部件,例如向量部件、浮點(diǎn)部件、整數(shù)運(yùn)算部件和計算地址用的地址部件。向量處理機(jī)是專門處理浮點(diǎn)和向量運(yùn)算的數(shù)組處理機(jī),它連接到主機(jī)總線上。(5)多處理機(jī)系統(tǒng)。多處理機(jī)具有兩個或兩個以上的處理機(jī),共享輸入/輸出子系統(tǒng),在操作系統(tǒng)統(tǒng)一控制下,通過共享主存或高速通信網(wǎng)絡(luò)進(jìn)行通信,協(xié)同求解一個個復(fù)雜的問題。多處理機(jī)通過利用多臺處理機(jī)進(jìn)行多任務(wù)處理來提高速度,利用系統(tǒng)的重組能力來提高可靠性、適應(yīng)性和可用性。多處理機(jī)具有共享存儲器和分布存儲器兩種不同的結(jié)構(gòu)。具有共享存儲器的多處理機(jī)中,程序員無數(shù)據(jù)劃分的負(fù)擔(dān),編程容易;系統(tǒng)處理機(jī)數(shù)目較少,不易擴(kuò)充。具有分布式存儲器的多處理機(jī)結(jié)構(gòu)靈活,容易擴(kuò)充;難以在各個處理單元之間實(shí)現(xiàn)復(fù)雜數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)傳送;任務(wù)動態(tài)分配復(fù)雜;現(xiàn)有軟件可繼承性差,需要設(shè)計新的并行算法。多處理機(jī)系統(tǒng)屬于MIMD系統(tǒng),與SIMD的并行處理機(jī)相比,有很大的差別。其根源就在于兩者的并行性的層次不同,多處理機(jī)要實(shí)現(xiàn)的是更高一層的作業(yè)任務(wù)間的并行。(6)大規(guī)模并行處理機(jī)。并行處理機(jī)有時也稱為陣列處理機(jī),并行處理機(jī)使用按地址訪問的隨機(jī)存儲器,以SIMD方式工作,主要用于要求大量高速進(jìn)行向量矩陣運(yùn)算的應(yīng)用領(lǐng)域。并行處理機(jī)制的并行性來源于資源重復(fù),把大量相同的處理單元通過互聯(lián)網(wǎng)絡(luò)連接起來,在統(tǒng)一的控制器控制下,對各自分配來的數(shù)據(jù)并行地完成同一條指令所規(guī)定的操作。并行處理機(jī)有兩種基本結(jié)構(gòu)類型:采用分布存儲器的并行處理結(jié)構(gòu)和采用集中式共享存儲器的并行處理結(jié)構(gòu)。分布式存儲器的并行處理結(jié)構(gòu)中,每一個處理機(jī)都有自己局部的存儲器,只要控制部件將并行處理的程序分配至各處理機(jī),它們便能并行處理,各自從自己的局部存儲器中取得信息。而共享存儲器并行處理結(jié)構(gòu)中的存儲器是集中共享的,由于多個處理機(jī)共享,在各處理機(jī)訪問共享存儲器時會發(fā)生競爭。因此,需采取措施盡可能避免競爭的發(fā)生。大規(guī)模并行處理機(jī)(Massively Parallel Processor,MPP)是由眾多的微處理器(從幾百到上萬)組成的大規(guī)模的并行系統(tǒng)。MPP的出現(xiàn)成為計算機(jī)領(lǐng)域中一個研發(fā)熱點(diǎn),被用作開發(fā)萬億次甚至更高速的巨型機(jī)的主要結(jié)構(gòu)。MPP可以采用市場上出售的RISC處理器,所以有很高的性價比。(7)對稱多處理機(jī)。對稱多處理機(jī)(Symmetrical Multi Processor,SMP)目前也基于RISC微處理器。它與MPP最大的差別在于存儲系統(tǒng)。SMP有一個統(tǒng)一的共享主存空間,而MPP則是每個微處理器都擁有自己的本地存儲器。2.2.4精簡指令系統(tǒng)計算機(jī)RISC(Reduced Instruction Set Computer,精簡指令系統(tǒng)計算機(jī))是相對于傳統(tǒng)的CISC(Complex Instruction Set Computer,復(fù)雜指令系統(tǒng)計算機(jī))而言的。RISC不是簡單地把指令系統(tǒng)進(jìn)行簡化,而是通過簡化指令的途徑使計算機(jī)的結(jié)構(gòu)更加簡單合理,以減少指令的執(zhí)行周期數(shù),從而提高運(yùn)算速度。在這個知識點(diǎn)中,我們主要掌握RISC計算機(jī)的主要特點(diǎn),列舉如下。(1)指令數(shù)量少。優(yōu)先選取使用頻率最高的一些簡單指令以及一些常用指令,避免使用復(fù)雜指令。大多數(shù)指令都是對寄存器操作,對存儲器的操作僅提供了讀和寫兩種方式。(2)指令的尋址方式少。通常只支持寄存器尋址方式、立即數(shù)尋址方式以及相對尋址方式。(3)指令長度固定,指令格式種類少。因?yàn)镽ISC指令數(shù)量少,格式相對簡單,其指令長度固定,指令之間各字段的劃分比較一致,譯碼相對容易。(4)只提供了Load/Store指令訪問存儲器。只提供了從存儲器讀數(shù)(Load)和把數(shù)據(jù)寫入存儲器(Store)兩條指令,其余所有的操作都在CPU的寄存器間進(jìn)行。因此,RISC需要大量的寄存器。(5)以硬布線邏輯控制為主。為了提高操作的執(zhí)行速度,通常采用硬布線邏輯(組合邏輯)來構(gòu)建控制器。而CISC的指令系統(tǒng)很復(fù)雜,難以用組合邏輯電路實(shí)現(xiàn)控制器,通常采用微程序控制。(6)單周期指令執(zhí)行。因?yàn)楹喕酥噶钕到y(tǒng),很容易利用流水線技術(shù)使得大部分指令都能在一個機(jī)器周期內(nèi)完成。因此,RISC通常采用流水線組織。少數(shù)指令可能會需要多個周期執(zhí)行,例如Load/Store指令因?yàn)樾枰L問存儲器,其執(zhí)行時間就會長一些。(7)優(yōu)化的編譯器。RISC的精簡指令集使編譯工作簡單化。因?yàn)橹噶铋L度固定、格式少、尋址方式少,編譯時不必在具有相似功能的許多指令中進(jìn)行選擇,也不必為尋址方式的選擇而費(fèi)心,同時易于實(shí)現(xiàn)優(yōu)化,從而可以生成高效率執(zhí)行的機(jī)器代碼。大多數(shù)RISC采用了Cache方案,而且有的RISC甚至使用兩個獨(dú)立的Cache來改善性能。一個稱為指令Cache,另一個稱為數(shù)據(jù)Cache.這樣取指和讀數(shù)可以同時進(jìn)行,互不干擾。從理論上來看,CISC和RISC都有各自的優(yōu)勢,不能認(rèn)為RISC就好,CISC就不好。事實(shí)上,這兩種設(shè)計方法很難找到完全的界線,而且在實(shí)際的芯片中,這兩種設(shè)計方法也有相互滲透的地方,表2-3是兩者的簡單對比。表2-3 CISC和RISC的簡單對比2.2.5總線和接口總線就是一組進(jìn)行互連和傳輸信息(指令、數(shù)據(jù)和地址)的信號線,它好比連接計算機(jī)系統(tǒng)各個部件之間的橋梁。另外,我們廣義上通常也把AGP接口、USB接口等稱為AGP總線、USB總線。可以說總線在計算機(jī)中無處不在。1.總線的分類按總線相對于CPU或其他芯片的位置可分為內(nèi)部總線(Internal Bus)和外部總線(External Bus)兩種。在CPU內(nèi)部,寄存器之間和算術(shù)邏輯部件ALU與控制部件之間傳輸數(shù)據(jù)所用的總線稱為內(nèi)部總線;而外部總線,是指CPU與內(nèi)存RAM、ROM和輸入/輸出設(shè)備接口之間進(jìn)行通信的通路。由于CPU通過總線實(shí)現(xiàn)程序取指令、內(nèi)存/外設(shè)的數(shù)據(jù)交換,在CPU與外設(shè)一定的情況下,總線速度是制約計算機(jī)整體性能的最大因素。按總線功能來劃分又可分為地址總線、數(shù)據(jù)總線、控制總線3類。我們通常所說的總線都包括上述3個組成部分,地址總線用來傳送地址信息,數(shù)據(jù)總線用來傳送數(shù)據(jù)信息,控制總線用來傳送各種控制信號。例如ISA總線共有98條線,其中數(shù)據(jù)線16條,地址線24條,其余為控制信號線、接地線和電源線。按總線在微機(jī)系統(tǒng)中的位置可分為機(jī)內(nèi)總線和機(jī)外總線(Peripheral Bus)兩種。我們上面所說的總線都是機(jī)內(nèi)總線,而機(jī)外總線是指與外部設(shè)備接口相連的,實(shí)際上是一種外設(shè)的接口標(biāo)準(zhǔn)。如目前計算機(jī)上流行的接口標(biāo)準(zhǔn)IDE、SCSI、USB和IEEE 1394等,前兩種主要是與硬盤、光驅(qū)等IDE設(shè)備接口相連,后兩種新型外部總線可以用來連接多種外部設(shè)備。計算機(jī)的總線按其功用來劃分主要有局部總線、系統(tǒng)總線、通信總線3種類型。其中局部總線是在傳統(tǒng)的ISA總線和CPU總線之間增加的一級總線或管理層,它的出現(xiàn)是由于計算機(jī)軟、硬件功能的不斷發(fā)展,系統(tǒng)原有的ISA/EISA等已遠(yuǎn)遠(yuǎn)不能適應(yīng)系統(tǒng)高傳輸能力的要求,而成為整個系統(tǒng)的主要瓶頸。系統(tǒng)總線是計算機(jī)系統(tǒng)內(nèi)部各部件(插板)之間進(jìn)行連接和傳輸信息的一組信號線,例如ISA、EISA、MCA、VESA、PCI、AGP等。通信總線是系統(tǒng)之間或微機(jī)系統(tǒng)與設(shè)備之間進(jìn)行通信的一組信號線。2.總線標(biāo)準(zhǔn)總線標(biāo)準(zhǔn)是指計算機(jī)部件各生產(chǎn)廠家都需要遵守的系統(tǒng)總線要求,從而使不同廠家生產(chǎn)的部件能夠互換??偩€標(biāo)準(zhǔn)主要規(guī)定總線的機(jī)械結(jié)構(gòu)規(guī)范、功能結(jié)構(gòu)規(guī)范和電氣規(guī)范。總線標(biāo)準(zhǔn)可以分為正式標(biāo)準(zhǔn)和工業(yè)標(biāo)準(zhǔn),其中正式標(biāo)準(zhǔn)是由IEEE等國際組織正式確定和承認(rèn)的標(biāo)準(zhǔn);工業(yè)標(biāo)準(zhǔn)是首先由某一廠家提出,得到其他廠家廣泛使用的標(biāo)準(zhǔn)。3.接口的分類根據(jù)外部設(shè)備與I/O模塊交換數(shù)據(jù)的方式,系統(tǒng)接口可以分為串行和并行接口兩種。串行接口一次只能傳送1位信息,而并行接口一次就可傳送多位信息(一般為8的倍數(shù))。串行通信又可分為異步通信方式和同步通信方式兩種。并行接口數(shù)據(jù)傳輸速率高,控制簡單,通常用于高速數(shù)據(jù)通道接口;但是所需連線很多,不適于遠(yuǎn)距離傳送。串行通信連線少,適于長距離傳送;但是控制復(fù)雜而且傳輸速度較慢。4.常見接口常見的設(shè)備接口有以下幾種。(1)ST506.主要用于溫盤,結(jié)構(gòu)簡單,只完成磁盤信息的讀/寫放大,把數(shù)據(jù)的編碼解碼、數(shù)據(jù)的格式轉(zhuǎn)換等功能都留給I/O模塊處理。其傳輸速率為57Mbps,最多可支持2個硬盤,最大支持盤空間為150MB.(2)ESDI.一種通用的標(biāo)準(zhǔn)接口,不僅適用于小型溫盤,還適用于磁帶機(jī)和光盤存儲器。該接口除了完成信息的讀/寫放大外,還要完成數(shù)據(jù)的編碼解碼。數(shù)據(jù)傳輸速率為510Mbps,最多可支持4個硬盤,硬盤空間最大可達(dá)600MB.(3)IDE.IDE是最常用的磁盤接口,分為普通IDE和增強(qiáng)型IDE(EIDE)接口。普通IDE數(shù)據(jù)傳輸速率不超過1.5Mbps,數(shù)據(jù)傳輸寬度為8位,最多可連接4個IDE設(shè)備,每個IDE硬盤容量不超過528MB.根據(jù)傳輸速率的不同, EIDE可以分為UDMA-33、UDMA-66、UDMA-133三種,數(shù)據(jù)傳輸速率可達(dá)1218Mbps,數(shù)據(jù)傳輸寬度為32位,最多可連接4個IDE設(shè)備,每個IDE硬盤可超過528MB.(4)SCSI.數(shù)據(jù)寬度為8位、16位和32位,是大容量存儲設(shè)備、音頻設(shè)備和CD-ROM驅(qū)動器的一種標(biāo)準(zhǔn)。SCSI接口通常被看作是一種總線,可用于連接多個外設(shè),這些SCSI設(shè)備以雛菊鏈(Mode daisy chain)形式接入,并被分配給唯一的ID號(07),其中7號分配給SCSI控制器。某些SCSI控制器可以提供多達(dá)35個SCSI通道。SCSI設(shè)備彼此獨(dú)立運(yùn)作,相互之間可以交換數(shù)據(jù),也可以和主機(jī)進(jìn)行交互。數(shù)據(jù)以分組消息的形式進(jìn)行傳輸。最初的SCSI標(biāo)準(zhǔn)(目前又稱為SCSI I)的最大同步傳輸速率為5Mbps,后來的SCSI II規(guī)定了2種提高速度的選擇。一種為提高數(shù)據(jù)傳輸?shù)念l率,即Fast SCSI.由于頻率提高了一倍,即使數(shù)據(jù)通路仍和SCSI I同為8位寬,其最大同步傳輸速率也提高了一倍,達(dá)到10Mbps.另一種提高速度的選擇是傳輸頻率提高一倍的同時也增大數(shù)據(jù)通路的寬度,由8位增至16位,這就是Wide SCSI,其最大同步傳輸速率為20Mbps.(5)PCMCIA.PCMCIA是一種廣泛用于筆記本電腦的接口標(biāo)準(zhǔn),體積小,擴(kuò)展較方便靈活。最初的PCMCIA主要用于筆記本電腦擴(kuò)展內(nèi)存,目前常用作一種存儲器卡接口或進(jìn)行傳真、調(diào)制解調(diào)器功能擴(kuò)展接口?,F(xiàn)在用PCMCIA代表個人計算機(jī)存儲器卡國際協(xié)會,而PCMCIA接口更名為PC Card接口。PC Card接口具有以下特點(diǎn):電源管理服務(wù),允許系統(tǒng)控制PC Card的工作狀態(tài)(開/關(guān));支持3.3V/5V電壓,可降低功耗;支持多功能卡、擴(kuò)充卡的信息結(jié)構(gòu),以提高其兼容性;規(guī)定了直接內(nèi)存訪問規(guī)范,增加了一個32位的Card Bus接口。(6)P1394.P1394是一種高速的串行總線,用于連接眾多的外部設(shè)備。P1394有許多優(yōu)于SCSI等其他外設(shè)接口的特點(diǎn):數(shù)據(jù)傳輸速率高,價格低且容易實(shí)現(xiàn),所以不僅應(yīng)用于計算機(jī)系統(tǒng)中,也廣泛應(yīng)用于消費(fèi)類電子產(chǎn)品中,諸如數(shù)碼相機(jī)、VCD等。P1394的數(shù)據(jù)傳輸速率可達(dá)400Mbps,新的標(biāo)準(zhǔn)是800Mbps.P1394接口使用雛菊鏈?zhǔn)降脑O(shè)備連接方式,一個端口可以支持63個設(shè)備;而且使用橋互聯(lián)的方式,以樹型結(jié)構(gòu)配置,可以支持的設(shè)備數(shù)高達(dá)1022.P1394支持設(shè)備的熱插拔,即允許計算機(jī)在未關(guān)機(jī)帶電的情況下插入或拔除所連接的外部設(shè)備而不會造成損害。(7)USB.USB接口是一種串行總線式的接口,在串行接口中可達(dá)到較高的數(shù)據(jù)傳輸速率,并且也允許設(shè)備以雛菊鏈形式接入,最多可連接127個設(shè)備。USB的最大特點(diǎn)是允許熱插拔,目前在便攜式計算機(jī)和臺式計算機(jī)中已成為標(biāo)準(zhǔn)配置。許多數(shù)碼相機(jī)、閃存、視頻攝像頭以及打印機(jī)等都可通過USB口接入計算機(jī)。USB 1.0的速度是1.2Mbps,USB 2.0的速度達(dá)到了480Mbps.2.3數(shù)據(jù)運(yùn)算對于本知識點(diǎn)的考查,主要是數(shù)據(jù)的各種碼制的表示和運(yùn)算、浮點(diǎn)數(shù)的表示和運(yùn)算,以及邏輯運(yùn)算。2.3.1各種碼制本節(jié)主要掌握原碼、反碼、補(bǔ)碼和移碼的概念,以及各自的用途和優(yōu)點(diǎn)。1.原碼將最高位用作符號位(0表示正數(shù),1表示負(fù)數(shù)),其余各位代表數(shù)值本身的絕對值的表示形式。這種方式是最容易理解的。例如,假設(shè)用8位表示一個數(shù),則+11 的原碼是00001011,-11 的原碼是10001011.直接使用原碼在計算時會有麻煩。例如,(1)10+(-1)10= 0.如果直接使用原碼,則(00000001)2+(1000001)2= (10000010)2這樣計算的結(jié)果是-2,也就是說,使用原碼直接參與計算可能會出現(xiàn)錯誤的結(jié)果。所以,原碼的符號位不能直接參與計算,必須和其他位分開,這樣會增加硬件的開銷和復(fù)雜性。2.反碼正數(shù)的反碼與原碼相同。負(fù)數(shù)的反碼符號位為1,其余各位為該數(shù)絕對值的原碼按位取反。例如,-11的反碼為11110100.同樣,對上面的加法,使用反碼的結(jié)果是:(00000001)2+ (11111110)2= (11111111)2這樣的結(jié)果是負(fù)0,而在人們普遍的觀念中,0是不分正負(fù)的。反碼的符號位可以直接參與計算,而且減法也可以轉(zhuǎn)換為加法計算。3.補(bǔ)碼正數(shù)的補(bǔ)碼與原碼相同。負(fù)數(shù)的補(bǔ)碼是該數(shù)的反碼加1,這個加1就是補(bǔ).例如,-11的補(bǔ)碼為11110100+1 = 11110101再次做以上的加法,是這樣的:(00000001)2+ (11111111)2= (00000000)2這說明,直接使用補(bǔ)碼進(jìn)行計算的結(jié)果是正確的。對一個補(bǔ)碼表示的數(shù),要計算其原碼,只要對它再次求補(bǔ)即可。由于補(bǔ)碼能使符號位與有效值部分一起參加運(yùn)算,從而簡化了運(yùn)算規(guī)則,同時它也使減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算,進(jìn)一步簡化計算機(jī)中運(yùn)算器的電路,這使得在大部分計算機(jī)系統(tǒng)中,數(shù)據(jù)都使用補(bǔ)碼表示。4.移碼移碼又稱為增碼,移碼的符號表示和補(bǔ)碼相反,1表示正數(shù),0表示負(fù)數(shù)。也就是說,移碼是在補(bǔ)碼的基礎(chǔ)上把首位取反得到的,這樣使得移碼非常適合于階碼的運(yùn)算,所以移碼常用于表示階碼。2.3.2定點(diǎn)數(shù)和浮點(diǎn)數(shù)定點(diǎn)數(shù)和浮點(diǎn)數(shù)的區(qū)別在于如何對待小數(shù)點(diǎn),在運(yùn)算方式上也不相同,衡量一個計算機(jī)系統(tǒng),定點(diǎn)運(yùn)算和浮點(diǎn)運(yùn)算是兩個重要的指標(biāo)。定點(diǎn)數(shù)的小數(shù)點(diǎn)是隱含的,固定在某個位置。如果該位置是在數(shù)的最低位之后,就是定點(diǎn)整數(shù)。定點(diǎn)數(shù)表示比較簡單,運(yùn)算規(guī)則也比較容易實(shí)現(xiàn),但是當(dāng)數(shù)值范圍變化大時,使用定點(diǎn)數(shù)表示和運(yùn)算就比較困難。為了表示更大范圍的數(shù)值,可以使用浮點(diǎn)數(shù)表示法。在表示一個很大的數(shù)時,我們常常使用一種稱為科學(xué)計數(shù)法的方式:其中M稱為尾數(shù),e是指數(shù)(階碼),R為基數(shù)。浮點(diǎn)數(shù)就是使用這種方法來表示大范圍的數(shù),其中基數(shù)一般是2、8、16.而且對于特定機(jī)器而言,基數(shù)是固定不變的,所以在浮點(diǎn)數(shù)中基數(shù)并不出現(xiàn)。從這個表達(dá)式可以看出,浮點(diǎn)數(shù)表示的精度取決于尾數(shù)的寬度,范圍取決于基數(shù)的大小和指數(shù)的寬度。1.格式化數(shù)使用格式化數(shù)是提高浮點(diǎn)數(shù)有效位的方法。格式化的意思是把尾數(shù)前面加0,同時修改指數(shù),這樣,在尾數(shù)位數(shù)固定的情況下,能提供最多的有效位來表示尾數(shù)。當(dāng)指數(shù)小于能夠表示的最小值時,這個數(shù)稱為機(jī)器零,此時會把尾數(shù)和指數(shù)同時清零。2.定點(diǎn)數(shù)的溢出處理計算機(jī)中通常使用補(bǔ)碼進(jìn)行計算。兩個正數(shù)相加,如果結(jié)果的符號位變成了1,則表示有溢出;兩個負(fù)數(shù)相加,如果結(jié)果的符號位變成了0,那么也意味著溢出。如果是正數(shù)和負(fù)數(shù)相加,則不會出現(xiàn)溢出的情況。判斷處理的方法可以再增加一個符號位,稱為第一符號位,原來那個符號位變成了第二符號位。兩個符號位都參與計算,如果計算結(jié)果的兩個符號位相同,表示沒有溢出;如果不同,就表示出現(xiàn)了溢出。而第一符號位才是真正的符號。也可以通過進(jìn)位信號來判斷,當(dāng)數(shù)值最高位的進(jìn)位信號和符號位的進(jìn)位信號一致時(都有進(jìn)位信號或都沒有進(jìn)位信號),則沒有溢出,否則表示有溢出。3.浮點(diǎn)數(shù)的運(yùn)算浮點(diǎn)數(shù)運(yùn)算過程比定點(diǎn)數(shù)復(fù)雜,包括以下過程。(1)對階。首先計算兩個數(shù)的指數(shù)差,把指數(shù)小的向指數(shù)大的對齊,并將尾數(shù)右移指數(shù)差的位數(shù)。這樣,兩個浮點(diǎn)數(shù)就完成了對階的操作??梢钥闯觯瑢﹄A的過程可能使得指數(shù)小的浮點(diǎn)數(shù)失去一些有效位。如果兩個浮點(diǎn)數(shù)階數(shù)相差很大,這個差大于指數(shù)小的浮點(diǎn)數(shù)的尾數(shù)寬度,則對階后指數(shù)小的浮點(diǎn)數(shù)的尾數(shù)就變成了0,即當(dāng)作機(jī)器零處理了。(2)尾數(shù)計算。對階完成后,兩個浮點(diǎn)數(shù)的尾數(shù)就和定點(diǎn)數(shù)一樣進(jìn)行計算。(3)結(jié)果格式化。尾數(shù)計算后,可能會產(chǎn)生溢出,此時將尾數(shù)右移,同時指數(shù)加1,如果指數(shù)加1后發(fā)生了溢出,則表示兩個浮點(diǎn)數(shù)的運(yùn)算發(fā)生了溢出。如果尾數(shù)計算沒有溢出,則尾數(shù)不斷左移,同時指數(shù)減1,直到尾數(shù)為格式化數(shù)。在這個過程中,指數(shù)小于機(jī)器能表達(dá)的最小數(shù),則將結(jié)果置機(jī)器零,這種情況稱為下溢。2.3.3邏輯運(yùn)算在計算機(jī)中,運(yùn)算可以分為算術(shù)運(yùn)算和邏輯運(yùn)算。二進(jìn)制數(shù)1和0在邏輯上可以代表真與假、是與否、有與無.這種具有邏輯屬性的變量就稱為邏輯變量,邏輯變量之間的運(yùn)算稱為邏輯運(yùn)算。邏輯運(yùn)算與算術(shù)運(yùn)算的主要區(qū)別是:邏輯運(yùn)算是按位進(jìn)行的,位與位之間不像加、減運(yùn)算那樣有進(jìn)位或借位的聯(lián)系。邏輯運(yùn)算主要包括4種基本運(yùn)算,分別是邏輯加法(或運(yùn)算)、邏輯乘法(與運(yùn)算)、邏輯否定(非運(yùn)算、否運(yùn)算)和異或運(yùn)算(半加運(yùn)算)。1.邏輯加法邏輯加法通常用符號+或來表示。邏輯加法運(yùn)算規(guī)則如下:0+0=0, 00=00+1=1, 01=11+0=1, 10=11+1=1, 11=1對于邏輯加法,在給定的邏輯變量A和B中,只要有一個為1,其邏輯加的結(jié)果就為1.只有兩者都為0時,邏輯加的結(jié)果才為0.2.邏輯乘法邏輯乘法通常用符號或或來表示。邏輯乘法運(yùn)算規(guī)則如下:00=0, 00=0, 00=001=0, 01=0, 01=010=0, 10=0, 10=011=1, 11=1, 11=1對于邏輯乘法,當(dāng)參與運(yùn)算的邏輯變量都同時取值為1時,其邏輯乘積才等于1.只要有一個邏輯變量為0,其結(jié)果就為0.3.邏輯否定邏輯非的規(guī)則為把變量取反,即:,4.異或運(yùn)算異或運(yùn)算通常用符號表示,其運(yùn)算規(guī)則為:00=0,01=1,10=1,11=0也就是說,只有兩個邏輯變量相異(一個為0,另一個為1),結(jié)果才為1.如果兩個邏輯變量相同,則結(jié)果為0.2.4尋址方式在計算機(jī)中,CPU都會定義出自己特定的指令系統(tǒng),不過都遵循著統(tǒng)一的標(biāo)準(zhǔn)格式。指令的基本格式是由操作碼和地址碼兩部分組成的。操作碼指出該指令要完成什么操作,地址碼則提供原始的數(shù)據(jù)。指令系統(tǒng)中定義操作碼的方式可以分為規(guī)整型(定長編碼)和非規(guī)整型(變長編碼)兩種,如表2-4所示。表2-4 指令系統(tǒng)中的操作碼在指令系統(tǒng)中用來確定如何提供操作數(shù)或提供操作數(shù)地址的方式稱為尋址方式(編址方式)。操作數(shù)可以存放在CPU中的寄存器(用寄存器名操作)、主存儲器(指出存儲單元地址)、堆棧(先進(jìn)后出的存儲機(jī)制,用棧頂指針SP來標(biāo)出其當(dāng)前位置)、外存儲器或外圍設(shè)備中。不過在運(yùn)算時,數(shù)據(jù)均在主存儲器中,操作數(shù)可以采用以下幾種尋扯方式。(1)立即尋址:直接給出操作數(shù),而非地址。(2)直接尋址:直接給出操作數(shù)地址或所在寄存器號(寄存器尋址)。(3)間接尋址:給出的是指向操作數(shù)地址的地址,稱為間接尋址。(4)變址尋址:給出的地址需與特定的地址值累加從而得出操作數(shù)地址,稱為變址尋址。通過采用不同的尋址方式,能夠達(dá)到縮短指令長度、擴(kuò)大尋址空間和提高編程靈活性等目的。例如,某計算機(jī)字長為16位,運(yùn)算器為16位,有16個16位通用寄存器,8種尋址方式,主存容量為64K字。指令中地址碼由尋址方式字段和寄存器字段組成,采用單字長指令。那么要表示8種尋址方式需要3位,要表示16個通用寄存器則需要4位,所以地址碼一共需要7位;而又采用單字長指令,字長為16位,因此,操作碼的位數(shù)就只有16-7=9位。也就是說,可以表示的指令種類是29條,即512條。因?yàn)槊總€寄存器是16位的,所以,可以表示的地址范圍是216字,即64K字。2.5中斷在計算機(jī)中,I/O系統(tǒng)可以有3種不同的工作方式,分別是程序控制方式、程序中斷方式和DMA工作方式。1.程序控制方式在程序控制方式模式下,輸入/輸出完全由CPU控制,在整個I/O過程中CPU必須等待其完成,限制了CPU的高速能力。不過這種方式下,是由程序主動查詢外設(shè),完成主機(jī)與外設(shè)間的數(shù)據(jù)傳送,方法簡單,硬件開銷小。在這種方式下,I/O設(shè)備有2種編碼方式。(1)存儲器映射:即I/O設(shè)備和主存儲器統(tǒng)一編址,使用相同的機(jī)器指令來訪問內(nèi)存和外設(shè),這種方式下,CPU是采用地址的不同來區(qū)分訪問的是外設(shè)還是存儲器的。(2)獨(dú)立編址:I/O設(shè)備和主存儲器的地址空間相互獨(dú)立,CPU使用專門的I/O指令來訪問外設(shè)。程序查詢時,CPU既可以進(jìn)行串行點(diǎn)名,也可以進(jìn)行并行查詢。(1)串行點(diǎn)名:CPU依次對所有的外設(shè)進(jìn)行查詢,不過每次只查詢一臺。(2)并行查詢:將各個外設(shè)的狀態(tài)位集中起來,由CPU通過一個專用的端口來讀取,每次可以同時查詢多個外設(shè)的狀態(tài)。2.程序中斷方式在I/O控制中引入中斷,是為了解決程序控制輸入/輸出方法中CPU低效等待的缺陷。采用該機(jī)制,CPU將無須定期查詢I/O系統(tǒng)的狀態(tài),節(jié)約時間。當(dāng)I/O系統(tǒng)完成后,則以中斷信號通知CPU,之后CPU保存正在執(zhí)行程序的現(xiàn)場(包括程序計數(shù)器PC,記住執(zhí)行到哪個指令),然后轉(zhuǎn)入I/O中斷服務(wù)程序完成數(shù)據(jù)交換。而收到中斷請求后,停止正在執(zhí)行的代碼,保存現(xiàn)場的時間稱為中斷響應(yīng)時間,這個時間應(yīng)該盡可能地短。在系統(tǒng)中有多個中斷源時,常見的處理方法如下。(1)多中斷信號線法:就是給每個中斷源拉一根電話線,做到專線專用。(2)中斷軟件查詢法:CPU收到中斷后轉(zhuǎn)到中斷服務(wù)程序,由該程序來確認(rèn)中斷源。(3)雛菊鏈法:硬件查詢法,所有的I/O模塊共享一條共同的中斷請求線。(4)總線仲裁法:一個I/O設(shè)備在發(fā)出中斷請求前,必須先獲得總線控制權(quán)。由總線仲裁機(jī)制來決定誰有權(quán)發(fā)出中斷信號。(5)中斷向量表法:中斷向量表用來保存各個中斷源的中斷服務(wù)程序的入口地址,當(dāng)外設(shè)發(fā)出中斷后,由中斷控制器確定其中繼號。3.DMA工作方式中斷法雖然比程序控制法更加有效,但由于都是由軟件來完成工作的,因此難以滿足高速傳輸?shù)囊?。而DMA工作方式則使用DMA控制器(DMAC)來控制和管理數(shù)據(jù)傳輸。DMAC與CPU共享系統(tǒng)總線,并且具有可以獨(dú)立訪問存儲器的能力。在進(jìn)行DMA時,CPU放棄對系統(tǒng)總線的控制,改由DMAC控制總線;由DMAC提供存儲器地址及必需的讀寫控制信號,實(shí)現(xiàn)外設(shè)與存儲器的數(shù)據(jù)交換。(1)向CPU申請DMA傳送。(2)獲得CPU允許后,DMA控制器接管系統(tǒng)總線的控制權(quán)。(3)在DMA控制器的控制下,在存儲器和外設(shè)之間進(jìn)行數(shù)據(jù)傳送,在傳送過程中無須CPU參與,開始時需要提供傳送數(shù)據(jù)的長度和起始地址。(4)傳送結(jié)束后,向CPU返回DMA操作完成信號。DMAC獲取系統(tǒng)總線的控制權(quán)可以采用暫停方式(CPU交出控制權(quán)到DMA操作結(jié)束)、周期竊取方式(CPU空閑時暫時放棄總線,插入一個DMA周期)、共享方式(CPU不使用系統(tǒng)總線時,由DMAC來進(jìn)行DMA傳輸)。2.6存儲體系 在計算機(jī)中,用于存放程序或數(shù)據(jù)的存儲部件有CPU內(nèi)部寄存器、高速緩沖存儲器(Cache)、主存儲器(內(nèi)存儲器、內(nèi)存)、輔存(外存儲器、外存)。它們的存取速度不一樣,從快到慢依次為寄存器Cache內(nèi)存輔存。一般來講,速度越快,成本就會越高。因?yàn)槌杀驹礁?,所以容量就會越小。?yán)格來說,CPU內(nèi)部寄存器不算存儲系統(tǒng)。因此,在計算機(jī)的存儲體系中,Cache是訪問速度最快的層次。在存儲體系這個知識點(diǎn),主要考查內(nèi)存編址、內(nèi)存容量的計算、Cache(高速緩沖存儲器),以及磁盤參數(shù)的計算。2.6.1主存儲器 主存儲器(內(nèi)存)采用的是隨機(jī)存取方式,因此簡稱為RAM(Random Access Memory)。如果計算機(jī)斷電,則RAM中的信息會丟失。內(nèi)存需對每個數(shù)據(jù)塊進(jìn)行編碼,即每個單元有個地址,這就是所謂的內(nèi)存編址問題。內(nèi)存一般按照字節(jié)編址或按照字編址,通常采用十六進(jìn)制表示。例如,假設(shè)某內(nèi)存儲器按字節(jié)編址,地址從A4000H到CBFFFH,則表示該存儲器有(CBFFF-A4000)+1個字節(jié)(28000H字節(jié)),也就是163840個字節(jié)(160KB)。要注意的是,編址的基礎(chǔ)可以是字節(jié),也可以是字(字是由一個或多個字節(jié)組成的),要算地址位數(shù),首先應(yīng)計算要編址的字或字節(jié)數(shù),然后求2的對數(shù)即可得到。例如,上述內(nèi)存的容量為160KB,則需要18位地址來表示(217= 131072,218= 262144)。在內(nèi)存這個知識點(diǎn)的另外一個問題,就是求存儲芯片的組成問題。實(shí)際的存儲器總是由一片或多片存儲器配以控制電路構(gòu)成的。設(shè)其容量為WB,W是存儲單元的數(shù)量,B表示每個單元由多少位組成。如果某一芯片規(guī)格為wb,則組成WB的存儲器需要用(W/w)(B/b)塊芯片。例如,上述例子中的存儲器容量為160KB,若用存儲容量為32K8bit的存儲芯片構(gòu)成,因?yàn)?B=8b(一個字節(jié)由8位組成),則至少需要(160K/32K)(1B/8b)=5塊。2.6.2高速緩沖存儲器Cache的功能是提高CPU數(shù)據(jù)輸入/輸出的速率,突破所謂的馮諾依曼瓶頸,即CPU與存儲系統(tǒng)間數(shù)據(jù)傳送帶寬限制。高速存儲器能以極高的速率進(jìn)行數(shù)據(jù)的訪問,但因其價格高昂,如果計算機(jī)的內(nèi)存完全由這種高速存儲器組成,則會大大增加計算機(jī)的成本。通常在CPU和內(nèi)存之間設(shè)置小容量的高速存儲器 Cache.Cache容量小但速度快,內(nèi)存速度較低但容量大,通過優(yōu)化調(diào)度算法,系統(tǒng)的性能會大大改善,仿佛其存儲系統(tǒng)容量與內(nèi)存相當(dāng)而訪問速度近似 Cache.1.Cache基本原理使用Cache改善系統(tǒng)性能的依據(jù)是程序的局部性原理。依據(jù)局部性原理,把內(nèi)存中訪問概率高的內(nèi)容存放在Cache中,當(dāng)CPU需要讀取數(shù)據(jù)時就首先在Cache中查找是否有所需內(nèi)容,如果有,則直接從Cache中讀??;若沒有,再從內(nèi)存中讀取該數(shù)據(jù),然后同時送往CPU和Cache.如果CPU需要訪問的內(nèi)容大多都能在Cache中找到(稱為訪問命中),則可以大大提高系統(tǒng)性能。如果以h代表對Cache的訪問命中率(1-h稱為失效率,或者稱為未命中率),t1表示Cache的周期時間,t2表示內(nèi)存的周期時間,以讀操作為例,使用Cache+主存儲器的系統(tǒng)的平均周期為t3.則:系統(tǒng)的平均存儲周期與命中率有很密切的關(guān)系,命中率的提高即使很小也能導(dǎo)致性能上的較大改善。例如:設(shè)某計算機(jī)主存的讀/寫時間為100ns,有一個指令和數(shù)據(jù)合一的Cache,已知該Cache 的讀/寫時間為10ns,取指令的命中率為98%,取數(shù)的命中率為95%.在執(zhí)行某類程序時,約有1/5指令需要存/取一個操作數(shù)。假設(shè)指令流水線在任何時候都不阻塞,則設(shè)置Cache后,每條指令的平均訪存時間約為:(2%100ns + 98%10ns)+ 1/5(5%100ns + 95%10ns) = 14.7ns2.映射機(jī)制當(dāng)CPU發(fā)出訪存請求后,存儲器地址先被送到Cache控制器以確定所需數(shù)據(jù)是否已在Cache中,若命中則直接對Cache進(jìn)行訪問。這個過程稱為Cache的地址映射(映射)。在Cache的地址映射中,主存和Cache將均分成容量相同的塊(頁)。常見的映射方法有直接映射、相聯(lián)映射和組相聯(lián)映射。(1)直接映射直接映射方式以隨機(jī)存取存儲器作為Cache存儲器,硬件電路較簡單。直接映射是一種多對一的映射關(guān)系,但一個主存塊只能夠拷貝到Cache的一個特定位置上去。Cache的塊號i和主存的塊號j有函數(shù)關(guān)系:i=j%m(其中m為Cache總塊數(shù))。例如,某Cache容量為16KB(即可用14位表示),每塊的大小為16B(即可用4位表示),則說明其可分為1024塊(可用10位表示)。則主存地址的最低4位為Cache的塊內(nèi)地址,然后接下來的中間10位為Cache塊號。如果內(nèi)存地址為1234E8F8H(一共32位),那么最后4位就是1000(對應(yīng)十六進(jìn)制數(shù)的最后一位8),而中間10位,則應(yīng)從E8F(1110 1000 1111)中獲取,得到10 1000 1111.因此,內(nèi)存地址為1234E8F8H的單元裝入的Cache地址為10 1000 1111 1000.直接映射方式的優(yōu)點(diǎn)是比較容易實(shí)現(xiàn),缺點(diǎn)是不夠靈活,有可能使Cache的存儲空間得不到充分利用。例如,假設(shè)Cache有8塊,則主存的第1塊與第17塊同時復(fù)制到Cache的第1頁,即使Cache其他頁面空閑,也有一個主存頁不能寫入Cache.(2)全相聯(lián)映射全相聯(lián)映射使用相聯(lián)存儲器組成的Cache存儲器。在全相聯(lián)映射方式中,主存的每一頁可以映射到Cache的任一頁。如果淘汰Cache中某一頁的內(nèi)容,則可調(diào)入任一主存頁的內(nèi)容,因而較直接映射方式靈活。在全相聯(lián)映射方式中,主存地址不能直接提取Cache頁號,而是需要將主存頁標(biāo)記與Cache各頁的標(biāo)記逐個比較,直到找到標(biāo)記符合的頁(訪問Cache命中),或者全部比較完后仍無符合的標(biāo)記(訪問Cache失敗)。因此這種映射方式速度很慢,失掉了高速緩存的作用,這是全相聯(lián)映射方式的最大缺點(diǎn)。如果讓主存頁標(biāo)記與各Cache標(biāo)記同時比較,則成本又太高。全相聯(lián)映射方式比較器電路難于設(shè)計和實(shí)現(xiàn),因此只適用于小容量Cache.(3)組相聯(lián)映射組相聯(lián)映射是直接映射和全相聯(lián)映射的折中方案。它將Cache中的塊再分成組,通過直接映射方式?jīng)Q定組號,通過全相聯(lián)映射方式?jīng)Q定Cache中的塊號。在組相聯(lián)映射方式中,主存中一個組內(nèi)的塊數(shù)與Cache的分組數(shù)相同。例如,容量為64塊的Cache采用組相聯(lián)映射方式,每塊大小為128個字,每4塊為一組。若主存容量為4096塊,且以字編址,那么主存地址應(yīng)該為多少位?主存區(qū)號(組號)為多少位?這樣的題目,首先根據(jù)主存與Cache塊的容量需一致,即每個內(nèi)存塊的大小也是128個字,因此共有1284096個字(219個字),即主存地址需要19位。因?yàn)镃ache的容量為64塊,所以內(nèi)存需要分為4096/64個組,即26,因此主存組號需6位。在組相聯(lián)映射中,由于Cache中每組有若干可供選擇的頁,因而它在映射定位方面較直接映射方式靈活;每組頁數(shù)有限,因此付出的代價不是很大,可以根據(jù)設(shè)計目標(biāo)選擇組內(nèi)頁數(shù)。3.淘汰算法當(dāng)Cache產(chǎn)生了一次訪問未命中之后,相應(yīng)的數(shù)據(jù)應(yīng)同時讀入CPU和Cache.但是當(dāng)Cache已存滿數(shù)據(jù)后,新數(shù)據(jù)必須淘汰Cache中的某些舊數(shù)據(jù)。最常用的淘汰算法有隨機(jī)淘汰法、先進(jìn)先出法(FIFO)和近期最少使用淘汰法(LRU)。其中平均命中率最高的是LRU算法。4.寫操作因?yàn)樾枰WC緩存在Cache中的數(shù)據(jù)與內(nèi)存中的內(nèi)容一致,相對讀操作而言,Cache的寫操作比較復(fù)雜,常用的有以下幾種方法。(1)寫直達(dá)(write through)。當(dāng)要寫Cache時,數(shù)據(jù)同時寫回內(nèi)存,有時也稱為寫通。(2)寫回(write back)。CPU修改Cache的某一行后,相應(yīng)的數(shù)據(jù)并不立即寫入內(nèi)存單元,而是當(dāng)該行從Cache中被淘汰時,才把數(shù)據(jù)寫回到內(nèi)存中。(3)標(biāo)記法。對Cache中的每一個數(shù)據(jù)設(shè)置一個有效位。當(dāng)數(shù)據(jù)進(jìn)入Cache后,有效位置1;而當(dāng)CPU要對該數(shù)據(jù)進(jìn)行修改時,數(shù)據(jù)只需寫入內(nèi)存并同時將該有效位清0.當(dāng)要從Cache中讀取數(shù)據(jù)時需要測試其有效位,若為l,則直接從Cache中取數(shù);否則從內(nèi)存中取數(shù)。2.6.3磁盤磁盤是最常見的一種外部存儲器,它是由一至多個圓形磁盤組成的,其結(jié)構(gòu)如圖2-2所示。圖2-2 磁盤主要術(shù)語示意圖磁盤的常見技術(shù)指標(biāo)如下。(1)計算磁道數(shù):(外半徑-內(nèi)半徑)磁道密度記錄面數(shù)說明:磁盤的第一面與最后一面是起保護(hù)作用的,一般不用于存儲數(shù)據(jù),所以在計算的時候要減掉。例如,6個雙面的盤片的有效記錄面數(shù)是62-2=10.(2)非格式化容量=位密度 3.14 最內(nèi)圈直徑總磁道數(shù)說明:每個磁道的位密度是不相同的,但每個磁道的容量卻是相同的。一般來說,0磁道是最外面的磁道,其位密度最小。(3)格式化容量 = 每道扇區(qū)數(shù)扇區(qū)容量總磁道數(shù)(4)平均數(shù)據(jù)傳輸速率 = 每道扇區(qū)數(shù)扇區(qū)容量盤片轉(zhuǎn)速說明:盤片轉(zhuǎn)速是指磁盤每秒鐘轉(zhuǎn)多少轉(zhuǎn)。(5)存取時間 = 尋道時間 + 等待時間說明:尋道時間是指磁頭移動到磁道所需的時間;等待時間是指等待讀寫的扇區(qū)轉(zhuǎn)到磁頭下方所用的時間。顯然,尋道時間與磁盤的轉(zhuǎn)速沒有關(guān)系,而是取決于磁盤移動臂的速度。2.6.4RAID廉價磁盤冗余陣列(Redundant Array of Inexpensive Disks,RAID)技術(shù)旨在縮小日益擴(kuò)大的CPU速度和磁盤存儲器速度之間的差距。其策略是用多個較小的磁盤驅(qū)動器替換單一的大容量磁盤驅(qū)動器,同時合理地在多個磁盤上分布存放數(shù)據(jù)以支持同時從多個磁盤進(jìn)行讀寫,從而改善了系統(tǒng)的I/O性能。最初,inexpensive一詞主要針對當(dāng)時另一種技術(shù)(Single Large Expensive Disk,SLED)而言,但隨著技術(shù)的發(fā)展,SLED已是明日黃花,RAID和non-RAID皆采用了類似的磁盤技術(shù)。因此 RAID現(xiàn)在代表獨(dú)立磁盤冗余陣列(Redundant Array of Independent Disks),用 independent來強(qiáng)調(diào)RAID技術(shù)所帶來的性能改善和更高的可靠性。RAID機(jī)制中共分8個級別,RAID應(yīng)用的主要技術(shù)有分塊技術(shù)、交叉技術(shù)和重聚技術(shù)。(1)RAID 0級(無冗余和無校驗(yàn)的數(shù)據(jù)分塊):具有最高的I/O性能和最高的磁盤空間利用率,易管理,但系統(tǒng)的故障率高,屬于非冗余系統(tǒng),主要應(yīng)用于那些關(guān)注性能、容量和價格而不是可靠性的應(yīng)用程序。(2)RAID 1級(磁盤鏡像陣列):由磁盤對組成,每一個工作盤都有其對應(yīng)的鏡像盤,上面保存著與工作盤完全相同的數(shù)據(jù)拷貝,具有最高的安全性,但磁盤空間利用率只有50%.RAID 1主要用于存放系統(tǒng)軟件、數(shù)據(jù)以及其他重要文件。它提供了數(shù)據(jù)的實(shí)時備份,一旦發(fā)生故障所有的關(guān)鍵數(shù)據(jù)即刻就可使用。(3)RAID 2級(采用糾錯海明碼的磁盤

溫馨提示

  • 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

提交評論