自學考試-計算機系統(tǒng)結(jié)構(gòu)(全國)_第1頁
自學考試-計算機系統(tǒng)結(jié)構(gòu)(全國)_第2頁
自學考試-計算機系統(tǒng)結(jié)構(gòu)(全國)_第3頁
自學考試-計算機系統(tǒng)結(jié)構(gòu)(全國)_第4頁
自學考試-計算機系統(tǒng)結(jié)構(gòu)(全國)_第5頁
已閱讀5頁,還剩286頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機系統(tǒng)結(jié)構(gòu)

JISUANJIXITONGJIEGO

目錄

第1章概論....................................................................8

1.1計算機系統(tǒng)的層次結(jié)構(gòu)...................................................8

1.2計算機系統(tǒng)結(jié)構(gòu)、計算機組成和計算機實現(xiàn)...............................10

1.2.1計算機系統(tǒng)結(jié)構(gòu)的定義和內(nèi)涵......................................10

122計算機組成與計算機實現(xiàn)的定義和內(nèi)涵...............................11

123計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)的相互關(guān)系和影響.......................15

1.3計算機系統(tǒng)的軟、硬件取舍及定量設計原理....................................17

1.3.1軟、硬件取舍的基本原則..........................................17

1.3.2計算機系統(tǒng)的定量設計原理........................................19

133計算機系統(tǒng)設計的主要任務和方法...................................21

1.4軟件、應用、器件的發(fā)展對系統(tǒng)結(jié)構(gòu)的影響...............................25

141軟件發(fā)展對系統(tǒng)結(jié)構(gòu)的影響..........................................25

1.4.2應用的發(fā)展對系統(tǒng)結(jié)構(gòu)的影響.......................................31

143器件的發(fā)展對系統(tǒng)結(jié)構(gòu)的影響.......................................32

1.5系統(tǒng)結(jié)構(gòu)中的并行性開發(fā)及計算機系統(tǒng)的分類.............................34

151并行性的概念與開發(fā)................................................34

152計算機系統(tǒng)的分類.................................................3

【章節(jié)練習】...................................................................38

第2章數(shù)據(jù)表示、尋址方式與指令系統(tǒng)...........................................44

2.1數(shù)據(jù)表示...............................................................44

2.1.1數(shù)據(jù)表示與數(shù)據(jù)結(jié)構(gòu)..............................................44

2.1.2高級數(shù)據(jù)表示.....................................................45

1

2.1.3引入數(shù)據(jù)表示的原則..............................................4

2.1.4浮點數(shù)尾數(shù)基值大小和下溢處理方法的選擇........................4

2.2尋址方式..............................................................51

221尋址方式的三種面向................................................51

222尋址方式在指令中的指明...........................................52

223程序在主存中的定位技術(shù)...........................................52

224物理主存中信息的存儲分布.........................................54

2.3指令系統(tǒng)的設計和優(yōu)化..................................................5

2.3.1指令系統(tǒng)設計的基本原則..........................................5

2.3.2指令操作碼的優(yōu)化................................................58

2.3.3指令字格式的優(yōu)化..................................................0

2.4指令系統(tǒng)的發(fā)展和改進...................................................1

2.4.1兩種途徑和方向(CISC和RISC)..................................1

2.4.2按QSC方向發(fā)展和改進指令系統(tǒng)..................................2

243按RISC方向發(fā)展和改進指令系統(tǒng)....................................

【章節(jié)練習】....................................................................71

第3章存儲、中斷、總線與I/O系統(tǒng)..............................................75

3.1存儲系統(tǒng)的基本要求和并行主存系統(tǒng)......................................75

3.1.1存儲系統(tǒng)的基本要求...............................................75

3.1.2并行主存系統(tǒng).....................................................75

3.2中斷系統(tǒng)...............................................................80

321中斷的分類和分級..................................................80

2

322中斷的響應次序與處理次序.........................................82

323中斷系統(tǒng)的軟、硬件功能分配.......................................83

3.3總線系統(tǒng).................................................................84

3.3.1總線的分類.......................................................84

3.3.2總線的控制方式...................................................8

3.3.3總線的通信技術(shù)...................................................89

3.3.4數(shù)據(jù)寬度與總線線數(shù)..............................................91

3.41/0系統(tǒng).................................................................93

3.4.11/0系統(tǒng)概述......................................................93

342通道處理機的工作原理和流量設計..................................94

【章節(jié)練習】...................................................................100

第4章存儲體系................................................................104

4.1基本概念.............................................................104

4.1.1存儲體系及其分支...............................................104

4.1.2存儲體系的構(gòu)成依據(jù).............................................10

4.1.3存儲體系的性能參數(shù).............................................107

4.2虛擬存儲器...........................................................109

4.2.1虛擬存儲器的管理方式...........................................109

422頁式虛擬存儲器的構(gòu)成.............................................11

423頁式虛擬存儲器實現(xiàn)中的問題......................................12

4.3高速緩沖存儲器.......................................................13

4.3.1工作原理和基本結(jié)構(gòu).............................................13

3

432地址的映像與變換.................................................138

4.3.3存儲器的LRU替換算法的硬件實現(xiàn).................................144

4.4三級存儲體系..........................................................151

4.4.1物理地址Cache.................................................................................................................................151

4.4.2虛地址Cache......................................................................................................................................152

4.4.3全Cache.................................................................................................................................................153

【章節(jié)練習】...................................................................153

第5章標量處理機..............................................................15

5.1重疊方式.............................................................15

5.1.1重疊原理與一次重疊.............................................15

5.1.2相關(guān)處理.......................................................158

5.2流水方式.............................................................1

521基本概念........................................................1

522標量流水線的主要性能............................................171

5.3指令級高度并行的超級處理機..........................................180

5.3.1超標量處理機...................................................180

5.3.2超長指令字處理機...............................................181

5.3.3超流水線處理機.................................................183

5.3.4超標量超流水線處理機..........................................183

【章節(jié)練習】...................................................................184

第6章向量處理機.............................................................18

6.1向量的流水處理與向量流水處理機.......................................18

4

6.1.1向量的處理和向量的流水處理.....................................18

6.1.2向量流水處理機的結(jié)構(gòu)舉例.......................................188

6.13通過并行、鏈接提高性能.........................................190

6.2陣列處理機的原理.......................................................193

621陣列處理機的構(gòu)形和特點..........................................193

6.2.2ILUACIV的處理單元陣列結(jié)構(gòu).....................................19

623ILUAQV的并行算法舉例..........................................197

6.3SIMD計算機的互連網(wǎng)絡.................................................203

6.3.1互連網(wǎng)絡的設計目標與互連函數(shù)..................................203

6.3.2互連網(wǎng)絡應抉擇的幾個問題.......................................204

6.3.3基本的單級互連網(wǎng)絡..............................................20

6.3.4基本的多級互連網(wǎng)絡.............................................210

6.3.5全排列網(wǎng)絡......................................................219

6.4共享主存構(gòu)形的陣列處理機中并行存儲器的無沖突訪問...................221

6.5脈動陣列流水處理機...................................................225

6.5.1脈動陣列結(jié)構(gòu)的原理..............................................225

652通用脈動陣列結(jié)構(gòu).................................................228

【章節(jié)練習】...................................................................229

第7章多處理機................................................................233

7.1多處理機的概念、問題和硬件結(jié)構(gòu)......................................233

7.1.1多處理機的基本概念和要解決的技術(shù)問題..........................233

7.1.2多處理機的硬件結(jié)構(gòu)..............................................234

5

7.2緊耦合多處理機多Cache的一致性問題..................................248

721多Cache的一致性問題的產(chǎn)生......................................248

722多Cache的一致性問題的解決辦法..................................249

7.3多處理機的并行性和性能...............................................252

7.3.1并行算法........................................................252

7.3.2程序并行性的分析................................................254

7.3.3并行語言與并行編譯..............................................258

7.3.4多處理機的性能..................................................259

7.4多處理機的操作系統(tǒng)....................................................21

741主從型操作系統(tǒng)....................................................22

742各自獨立型操作系統(tǒng)................................................23

7.43浮動型操作系統(tǒng)....................................................24

7.5多處理機的發(fā)展..........................................................25

751分布式共享存儲器多處理機.........................................25

7.5.2對稱多處理機......................................................25

7.53多向量多處理機...................................................2

754并行向量處理機...................................................2

755大規(guī)模并行處理機.................................................2

7.5.6機群系統(tǒng)..........................................................29

【章節(jié)練習】...................................................................271

第8章數(shù)據(jù)流計算機和歸約機...................................................273

8.1數(shù)據(jù)流計算機...........................................................273

8.1.1數(shù)據(jù)驅(qū)動的概念.................................................273

8.1.2數(shù)據(jù)流程序圖和語言.............................................277

8.1.3數(shù)據(jù)流計算機的結(jié)構(gòu).............................................283

8.1.4數(shù)據(jù)流計算機存在的問題........................................284

8.1.5數(shù)據(jù)流計算機的進展.............................................285

8.2歸約機.................................................................28

7

第1章概論

本章先從計算機系統(tǒng)層次結(jié)構(gòu)出發(fā),定義什么是計算機系統(tǒng)結(jié)構(gòu)、計算機組成和計算機

實現(xiàn),以及它們的內(nèi)涵和相互關(guān)系。在討論計算機系統(tǒng)軟、硬件功能取舍的原則后,簡要講

述計算機系統(tǒng)的定量設計原理、計算機系統(tǒng)設計的主要任務和方法。然后講述軟件、應用、

器件的發(fā)展對系統(tǒng)結(jié)構(gòu)的影響。最后介紹計算機系統(tǒng)結(jié)構(gòu)的并行性開發(fā)和計算機系統(tǒng)的分

類,以便為后續(xù)各章具體討論系統(tǒng)結(jié)構(gòu)和組成的內(nèi)容打下基礎。

1.1計算機系統(tǒng)的層次結(jié)構(gòu)

從使用語言的角度,一臺由軟、硬件組成的通用計算機系統(tǒng)可以被看成是按功能劃分的

多層機器級組成的層次結(jié)構(gòu)。層次結(jié)構(gòu)由高到低依次為應用語言機器級、供給語言機器級、

匯編語言機器級、操作系統(tǒng)機器級、傳統(tǒng)機器語言機器級、傳統(tǒng)機器語言機器級和微程序機

器級,如圖1-1所示。具體的計算機系統(tǒng),其層次數(shù)的多少可以有所不同。

第5級應用語言程序經(jīng)應用程序包

虛擬機器翻譯成高級語言程序

第4級高級語言程序經(jīng)編譯程序@1譯

虛擬機器成匯編語言程序(或是某種中間

語言程序,或是機器語言程序)

第3級匯編語言程序經(jīng)匯編程序翻譯

虛擬機器成機器語言程序

第2級一般用機器語言程序解釋作業(yè)

虛擬機器控制語句等

第1級

實際機器用微指令程序解暮機器指令

第0級

實際機器微指令由硬件直接執(zhí)行

圖1-1計算機系統(tǒng)的多級層次結(jié)構(gòu)

對使用某一級語言編程的程序員來講,只要熟悉和遵守該級語言的使用規(guī)定,所編序就

8

總能在此機器上運行并得到結(jié)果,而不用考慮這個機器級是如何實現(xiàn)的。就好像該程序員有

了一臺可以直接使用這種語言作為機器語言的機器一樣。這里,"機器"被定義為能存儲

和執(zhí)行相應語言程序的算法和數(shù)據(jù)結(jié)構(gòu)的集合體。實際上,只有二進制機器指令,即傳統(tǒng)

所講的機器語言與機器硬件直接對應,方可直接被硬件識別和執(zhí)行。

各機器級的實現(xiàn)采用翻譯技術(shù)或解釋技術(shù),或者是這兩種技術(shù)的結(jié)合。翻譯

(Trans-lation)技術(shù)是先用轉(zhuǎn)換程序?qū)⒏咭患墮C器級上的程序整個地變換成低一級機器

級上等效的程序,然后在低一級機器級上實現(xiàn)的技術(shù)。解釋(Interpretation)技術(shù)則是在

低級機器級上用它的一串語句或指令來仿真高級機器級上的一條語句或指令的功能,是通過

對高級機器級語言程序中的每條語句或指令逐條解釋來實現(xiàn)的技術(shù)。

應用語言虛擬機器級M5是為滿足專門的應用設計的。使用面向某種應用的應用語言

(L5)編寫的程序一般是通過應用程序包翻譯成高級語言(L4)程序后,再逐級向下實現(xiàn)

的。高級語言機器級M4上的程序可以先用編譯程序整個翻譯成匯編語言(L3)程序或機

器語言(L1)程序,再逐級或越級向下實現(xiàn);也可以用匯編語言(L3)程序、機器語言(L1)

程序,甚至微指令語言(L0)程序解釋實現(xiàn)。匯編語言(L3)源程序則是先用匯編程序整

個將它變換成等效的二進制機器語言(L1)目標程序,再在傳統(tǒng)機器語言機器級Ml上實現(xiàn)。

操作系統(tǒng)程序雖然已經(jīng)發(fā)展成用高級語言(如C語言)編寫,但最終還是要用機器語言程

序或微指令程序來解釋。它提供了傳統(tǒng)機器語言機器級Ml所沒有,但為匯編語言與高級語

言使用和實現(xiàn)所用的基本操作、命令及數(shù)據(jù)結(jié)構(gòu)。例如,文件管理、存儲管理、進程管理、

多道程序共行、多重處理、作業(yè)控制等所用到的操作命令、語句和數(shù)據(jù)結(jié)構(gòu)等。因此,操作

系統(tǒng)機器級M2放在傳統(tǒng)機器語言機器級Ml和匯編語言機器級M3之間是適宜的。傳統(tǒng)

機器語言機器級Ml采用組合邏輯電路控制,其指令可直接用硬件來實現(xiàn),也可以采用微

程序控制,用微指令(L0)程序來解釋實現(xiàn)。微指令直接控制硬件電路的動作。

9

1.2計算機系統(tǒng)結(jié)構(gòu)、計算機組成和計算機實現(xiàn)

1.2.1計算機系統(tǒng)結(jié)構(gòu)的定義和內(nèi)涵

從計算機的層次結(jié)構(gòu)角度來看,系統(tǒng)結(jié)構(gòu)(SystemArchitecture)是對計算機系統(tǒng)中

各級界面的定義及其上下的功能分配。每級都有其自己的系統(tǒng)結(jié)構(gòu)。在此,先說明有關(guān)"透

明”的概念。如果客觀存在的事物或?qū)傩詮哪硞€角度看不到,則稱對它是透明(Transparent)

的。不同機器級程序員所看到的計算機屬性是不同的,它就是計算機系統(tǒng)不同層次的界面。

系統(tǒng)結(jié)構(gòu)就是要研究對于某級,哪些屬性應透明,哪些屬性不應透明。透明可簡化該級的設

計,但因無法控制也會帶來不利影響。因此,要正確進行透明性取舍。

計算機系統(tǒng)結(jié)構(gòu)也稱計算機系統(tǒng)的體系結(jié)構(gòu)(ComputerArchitecture),它只是系統(tǒng)

結(jié)構(gòu)中的一部分,指的是傳統(tǒng)機器語言機器級的系統(tǒng)結(jié)構(gòu)。其界面之上包括操作系統(tǒng)級、

匯編語言級、高級語言級和應用語言級中所有軟件的功能,該界面之下包括所有硬件和固件

的功能。因此,它是軟件和硬件/固件的交界面,是機器語言、匯編語言程序設計者或編譯

程序設計者看到的機器物理系統(tǒng)的抽象。

結(jié)論:計算機系統(tǒng)結(jié)構(gòu)研究的是軟、硬件之間的功能分配以及對傳統(tǒng)機器級界面的確

定。為機器語言、匯編語言程序設計者或編譯程序生成系統(tǒng)設計或生成的程序能在機器上正

確運行提供應看到和遵循的計算機屬性。

就目前的通用機來說,計算機系統(tǒng)結(jié)構(gòu)的屬性包括:

1)硬件能直接識別和處理的數(shù)據(jù)類型及格式等的數(shù)據(jù)表示。

2)最小可尋址單位、尋址種類、地址計算等的尋址方式。

3)通用/專用寄存器的設置、數(shù)量、字長、使用約定等的寄存器組織。

4)二進制或匯編指令的操作類型、格式、排序方式、控制機構(gòu)等的指令系統(tǒng)。

10

5)主存的最小編址單位、編址方式、容量、最大可編址空間等的存儲系統(tǒng)組織。

6)中斷的分類與分級、中斷處理程序功能及入口地址等的中斷機構(gòu)。

7)系統(tǒng)機器級的管態(tài)和用戶態(tài)的定義與切換。

8)輸入/輸出設備的連接、使用方式、流量、操作結(jié)束、出錯指示等的機器級I/O結(jié)構(gòu)。

9)系統(tǒng)各部分的信息保護方式和保護機構(gòu)等屬性。

1.2.2計算機組成與計算機實現(xiàn)的定義和內(nèi)涵

從計算機系統(tǒng)結(jié)構(gòu)的內(nèi)涵可以看出,機器級內(nèi)部的數(shù)據(jù)流和控制流的組成、邏輯設計和

器件設計等都不屬于計算機系統(tǒng)結(jié)構(gòu),就是說,它們對計算機系統(tǒng)結(jié)構(gòu)設計是透明的。它們

屬于計算機組成或計算機實現(xiàn)的范疇。

1.計算機組成

計算機組成(Computerorganization)指的是計算機系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn),包括機

器級內(nèi)部的數(shù)據(jù)流和控制流的組成以及邏輯設計等。

計算機組成著眼于機器級內(nèi)部各事件的排序方式與控制機構(gòu)、各部件的功能及各部件

間的聯(lián)系。它要解決的問題是在希望達到的性能和價格的情況下,如何更好、更合理地把各

種設備和部件組織成計算機,實現(xiàn)所確定的系統(tǒng)結(jié)構(gòu)。20世紀60年代以來,計算機組成

設計主要是圍繞提高速度,著重提高操作的并行度、重疊度,以及功能的分散和設置專用

功能部件來進行的。

計算機組成設計要確定的方面一般應包括:

1)數(shù)據(jù)通路寬度(數(shù)據(jù)總線一次并行傳送的信息位數(shù))。

2)專用部件的設置(是否設置乘除法、浮點運算、字符處理、地址運算等專用部件,

設置的數(shù)量與機器要達到的速度、價格及專用部件的使用頻率等有關(guān))。

3)各種操作對部件的共享程度(分時共享使用程度高,雖然限制了速度,但價格便宜。

設置部件多降低共享程度,因操作并行度提高,可提高速度,但價格也會提高)。

4)功能部件的并行度(是用順序串行,還是用重疊、流水或分布式控制和處理)。

5)控制機構(gòu)的組成方式(用硬件還是微程序控制,是單機處理還是多機或功能分布處

理)。

6)緩沖和排隊技術(shù)(部件間如何設置及設置多大容量的緩沖器來協(xié)調(diào)它們的速度差。

是用隨機、先進先出、先進后出、優(yōu)先級,還是用循環(huán)方式來安排事件處理的順序)。

7)預估、預判技術(shù)(用什么原則為優(yōu)化性能預測未來行為)。

8)可靠性技術(shù)(用何種冗余和容錯技術(shù)來提高可靠性)。

2.計算機實現(xiàn)

計算機實現(xiàn)(Computerimplementation)指的是計算機組成的物理實現(xiàn),包括處理

機、主存等部件的物理結(jié)構(gòu),器件的集成度和速度,器件、模塊、插件、底板的劃分與連

接,專用器件的設計,微組裝技術(shù),信號傳輸,電源、冷卻及整機裝配技術(shù)等。

計算機實現(xiàn)的設計著眼于器件技術(shù)和微組裝技術(shù),其中,器件技術(shù)起著主導作用。

確定指令系統(tǒng)中是否要設置乘法指令屬于計算機系統(tǒng)結(jié)構(gòu)。乘法指令是用專門的高速

乘法器實現(xiàn),還是靠用加法器和移位器經(jīng)一連串時序信號控制其相加和右移來實現(xiàn),屬于計

算機組成。乘法器、加法-移位器的物理實現(xiàn),如器件的類型、集成度、數(shù)量、價格,以及

微組裝技術(shù)的確定和選擇屬于計算機實現(xiàn)。

主存容量與編址方式(按位、按字節(jié),還是按字訪問等)的確定屬于計算機系統(tǒng)結(jié)構(gòu)。

為達到性能價格要求,主存速度應該為多少,以及邏輯結(jié)構(gòu)是否采用多體交叉屬于計算機組

成。主存器件的選定、邏輯設計、微組裝技術(shù)的使用屬于計算機實現(xiàn)。

【例】IBM370系列有115、125、135、145、158、168等由低檔到高檔的多種型號

12

機器。從匯編語言、機器語言程序設計者角度看到的概念性結(jié)構(gòu)如圖1-2所示。它們均

主存儲器

中央

處理機

控破

制帶

臺機

控I/OI/O

片磁

機盤

總機

線.

制破

器盤

圖1-2IBM370系列的概念性結(jié)構(gòu)

是由中央處理機/主存一通道一設備控制器一外設4級構(gòu)成的,以主存為中心,采用通道方

式輸入/輸出。從層次結(jié)構(gòu)角度看,IBM370系列中不同型號的機器從高級語言機器級、匯

編語言機器級到傳統(tǒng)機器語言機器級都是相同的,只是使用不同的組成和實現(xiàn)、不同的微程

序機器級使機器性能、價格不同。因此,設計何種系列機屬于計算機系統(tǒng)結(jié)構(gòu),而系列內(nèi)不

同型號計算機的組織屬于計算機組成。

IBM370系列的中央處理機都有相同的機器指令和匯編指令系統(tǒng),只是指令的分析、

執(zhí)行在低檔機上采用順序方式進行,在高檔機上則采用重疊、流水或其他并行處理方式。程

序設計者編程時所看到的數(shù)據(jù)形式(即數(shù)據(jù)表示)都是相同的32位字長,定點數(shù)都是半字

長16位或全字長32位,浮點數(shù)都是單字長32位、雙字長64位或四字長128位,如圖l-3a

所示。由于速度、價格的要求不同,在組成和實現(xiàn)時,數(shù)據(jù)通路寬度(數(shù)據(jù)總線線數(shù))可

13

以分別采用8位、16位、32位或64位,如圖l-3b所示。一個64位的字在8位數(shù)據(jù)通路

寬度的機器上需分8次傳送完,而在64位數(shù)據(jù)通路寬度的機器上只需一次即可傳送完,速

度快了,但硬件多了,價格變貴。因此,數(shù)據(jù)總線寬度對程序員是透明的,是不需耍知道的。

a)

E3

圖1?3IBM370系列字長、數(shù)的表示和數(shù)據(jù)通路寬度

a)統(tǒng)一的字長與定、浮點數(shù)表示b)不同的數(shù)據(jù)通路寬度

14

IBM370系列的各檔機器都采用通道方式進行輸入/輸出,但在計算機組成上,低檔

機器可以采用結(jié)合型通道,讓通道的功能借用中央處理機的某些部件完成,同一套硬件分時

執(zhí)行中央處理機和通道的功能,雖然系統(tǒng)速度性能低,但可以降低成本。而高檔機器上采用

獨立型通道,單獨設置通道硬件,與中央處理機并行,成本雖高,但系統(tǒng)速度提高了。

結(jié)論:機器/匯編指令系統(tǒng)、數(shù)據(jù)表示、是否采用通道方式輸入/輸出的確定屬于計算機

系統(tǒng)結(jié)構(gòu);指令采用順序、重疊、流水還是其他方式解釋,數(shù)據(jù)通路寬度的確定,通道采用

結(jié)合型還是獨立型,則屬于計算機組成。

1.2.3計算機系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)的相互關(guān)系和影響

計算機系統(tǒng)結(jié)構(gòu)、組成、實現(xiàn)三者互不相同,但又相互影響。從前面的例子可以看出,

相同結(jié)構(gòu)(如指令系統(tǒng)相同)的計算機,可以因速度不同而采用不同的組成。例如,指令間

既可以順序執(zhí)行,也可以重疊執(zhí)行,以提高性能。乘法指令既可以用專門的乘法器來實現(xiàn),

也可以用加法器、移位器等經(jīng)重復加、移位來實現(xiàn),這取決于性能、價格、乘法指令使用頻

度及所用乘法的運算方法。高速、高頻的可以使用專門乘法器,否則宜用后一種方法來降低

價格。

同樣,一種組成可有多種不同的實現(xiàn)方法。例如,主存器件可用雙極型的,也可用MOS

型的;可用VLSI單片,也可用多片小規(guī)模集成電路組成。這取決于要求的性能價格比及器

件技術(shù)狀況。

結(jié)構(gòu)不同會使可能采用的組成技術(shù)不同。

15

要提高運算速度,可讓相加與相乘并行,為此這兩種結(jié)構(gòu)在組成上都要求設置獨立的加

法器和乘法器。對于面向寄存器的結(jié)構(gòu),還要求R1和R2能同時被訪問。而對于面向主存

的三地址尋址的結(jié)構(gòu)并無此要求,但是要求能同時形成多個訪存操作數(shù)地址和能同時訪存。

組成也會影響結(jié)構(gòu)。微程序控制就是一個范例。通過改變控制存儲器中的微程序,就可

以改變系統(tǒng)的機器指令,改變結(jié)構(gòu)。在一臺計算機上提供對應多種指令系統(tǒng)的微程序,動態(tài)

切換,結(jié)構(gòu)可變,這是硬聯(lián)控制組成技術(shù)無法做到的。另外,增加多倍長運算、十進制運算、

字符行處理、矩陣乘、多項式求值、三角函數(shù)求值、查表、字節(jié)測試、開方等復合機器指令

和宏指令,由微程序解釋實現(xiàn),因為大量減少了訪主存取機器指令的次數(shù),速度比用基本機

器指令構(gòu)成的機器語言子程序?qū)崿F(xiàn)要快幾倍到十幾倍。如果沒有組成技術(shù)的進步,結(jié)構(gòu)的進

展是不可能的。

因此,系統(tǒng)結(jié)構(gòu)的設計必須結(jié)合應用考慮,為軟件和算法的實現(xiàn)提供更多、更好的支持,

同時還要考慮可能采用和準備采用的組成技術(shù)。結(jié)構(gòu)設計應避免過多地或不合理地限制各種

組成、實現(xiàn)技術(shù)的采用與發(fā)展,盡量做到既能方便地在低檔機上用簡單、便宜的組成實現(xiàn),

又能在高檔機上用復雜、較貴的組成實現(xiàn),使它們都能充分發(fā)揮實現(xiàn)方法所帶來的好處,這

樣,結(jié)構(gòu)才有生命力。

組成設計向上決定于結(jié)構(gòu),向下受限于實現(xiàn)技術(shù)。然而,它們是可以與實現(xiàn)折中權(quán)衡的。

例如,為達到所要求的速度,可用較簡單的組成,但卻是復雜的實現(xiàn)技術(shù);也可用復雜的組

成,但卻是一般速度的實現(xiàn)技術(shù)。前者可能要選用高性能的器件,從而增加器件測試、組裝、

電源和冷卻等的負擔;而后者可能造成組成設計復雜化和更多地采用專用芯片。組成和實現(xiàn)

的權(quán)衡取決于器件來源、廠家技術(shù)特長和性能價格比能否優(yōu)化。應當在當時器件技術(shù)條件下,

保證價格不增或只增很少的情況下盡可能地提高速度。

結(jié)構(gòu)、組成和實現(xiàn)所包含的具體內(nèi)容隨著不同的時期及不同的計算機系統(tǒng)也會有差異。

1

在某些系統(tǒng)中作為結(jié)構(gòu)的內(nèi)容,在另一些系統(tǒng)中可能是組成和實現(xiàn)的內(nèi)容。軟件的硬化和硬

件的軟化都反映了這一事實。VLSI的發(fā)展更使結(jié)構(gòu)、組成和實現(xiàn)融合于一體,難以分開。

由于計算機組成和計算機實現(xiàn)關(guān)系密切,有人將它們合稱為計算機實現(xiàn),即計算機系統(tǒng)

的邏輯實現(xiàn)和物理實現(xiàn)。

結(jié)論:計算機系統(tǒng)結(jié)構(gòu)設計的任務是進行軟、硬件的功能分配,確定傳統(tǒng)機器級的軟、

硬件界面,但作為"計算機系統(tǒng)結(jié)構(gòu)”這門學科來講,實際上包括了系統(tǒng)結(jié)構(gòu)和組成兩個方

面的內(nèi)容。因此,它研究的是軟、硬件的功能分配以及如何更好、更合理地實現(xiàn)分配給硬件

的功能。可把著眼于軟、硬件功能分配和確定程序設計者所看到的機器級界面的計算機系統(tǒng)

結(jié)構(gòu),稱為程序設計者看到的計算機系統(tǒng)結(jié)構(gòu);而把著眼于如何更好、更合理地實現(xiàn)分配給

硬件的功能的計算機組成,稱為計算機設計者看到的計算機系統(tǒng)結(jié)構(gòu)。

1.3計算機系統(tǒng)的軟、硬件取舍及定量設計原理

1.3.1軟、硬件取舍的基本原則

軟、硬件的功能分配是計算機系統(tǒng)結(jié)構(gòu)的主要任務,而軟件和硬件在邏輯功能上又是等

效的。從原理上講,軟件的功能可以用硬件或固件完成,硬件的功能也可以用軟件模擬完成,

只是它們在性能、價格、實現(xiàn)的難易程度上是不同的。

原則1應考慮在現(xiàn)有硬、器件(主要是邏輯器件和存儲器件)條件下,系統(tǒng)要有高的

性能價格比,主耍從實現(xiàn)費用、速度和其他性能要求來綜合考慮。

僅從實現(xiàn)費用要求討論。

無論是硬件實現(xiàn),還是軟件實現(xiàn),實現(xiàn)費用都應包括研制費用和重復生產(chǎn)費用。雖然目

前軟件的設計效率低,但用硬件實現(xiàn)的設計費用還是明顯地高于用軟件實現(xiàn)的費用,尤其是

17

VLSI專用芯片的設計費用是比較高的。

假設某功能的軟、硬件實現(xiàn)的每次設計費用分別為Ds和?!眲t。產(chǎn)100D,是完全可

能的。

至于重復生產(chǎn)費用,硬件實現(xiàn)的也比軟件實現(xiàn)的貴得多,后者只是軟件的復制費用加上

存放該軟件的存儲介質(zhì)(如盤片)的費用。假設該功能軟、硬件實現(xiàn)的每次重復生產(chǎn)費用分

別為和Mh,則A/^100M,也是可能的。

用硬件實現(xiàn)的功能(如子程序調(diào)用的全部操作)一般只需設計一次,而用軟件實現(xiàn)時,

每用到該功能往往要重新設計。設C為該功能在軟件實現(xiàn)時需重新設計的次數(shù),則該功能

用軟件實現(xiàn)的設計費用就為Cx由于重新設計時可利用原設計進行修改或簡單套用,

使設計費用。、要低得多)。同一功能的軟件在存儲介質(zhì)上可能多次復制和存儲,如出現(xiàn)了

R次,則軟件實現(xiàn)此功能的重復生產(chǎn)費用就為RxM.

假定某計算機系統(tǒng)生產(chǎn)了V臺。每臺計算機用硬件實現(xiàn)的費用為DJV+M?,若改

用軟件實現(xiàn),費用則為有當

DJV+M=CxD/V+RxMs

用硬件實現(xiàn)才是適宜的。將上述。.與2、與",的比值代入,得

100D/K+100M<fxD/V+RxMs

結(jié)論:只有在C和R的值較大時,這個不等式才越能夠成立。就是說,只有這個功能

是經(jīng)常要用的基本單元功能,才宜于用硬件實現(xiàn)。不要盲目地認為硬件實現(xiàn)的功能比例越大

越好。

目前,就軟件設計費用來說,要遠比軟件的重復生產(chǎn)費用高,104XM中是完全

可能的。將此關(guān)系式代入上式,得

io6/r+ioo<ioxC/v+R

18

由于C值一般總比100小,因此K值越大,這個不等式才越成立。

結(jié)論:只有對產(chǎn)量大的計算機系統(tǒng),增大硬件功能實現(xiàn)的比例才是適宜的。如果用硬件

實現(xiàn)不能給用戶帶來明顯的好處,產(chǎn)量仍較低,則系統(tǒng)是不會有生命力的。

原則2要考慮到準備采用和可能采用的組成技術(shù),使之盡可能不要過多或不合理地限

制各種組成、實現(xiàn)技術(shù)的采用。

原則3不能僅從"硬"的角度考慮如何便于應用組成技術(shù)的成果和便于發(fā)揮器件技術(shù)

的進展,還應從"軟"的角度把如何為編譯和操作系統(tǒng)的實現(xiàn)以及為高級語言程序的設計提

供更多、更好的硬件支持放在首位。

結(jié)論:應當進一步縮短高級語言與機器語言、操作系統(tǒng)與計算機系統(tǒng)結(jié)構(gòu)、程序設計環(huán)

境(如模塊化、數(shù)據(jù)類型抽象)等與計算機系統(tǒng)結(jié)構(gòu)之間存在的語義差距。計算機系統(tǒng)結(jié)構(gòu)、

機器語言是用硬件和固件實現(xiàn)的,而這些語義差距是用軟件來填補的。語義差距的大小實質(zhì)

上取決于軟、硬件功能的分配,差距縮小了,系統(tǒng)結(jié)構(gòu)對軟件設計的支持就加強了。本書將

在第2章中結(jié)合數(shù)據(jù)表示、尋址方式與指令系統(tǒng)的設計和改進,討論在維持一定語義差距

的前提下縮小語義差距的某些途徑。

1.3.2計算機系統(tǒng)的定量設計原理

在設計計算機系統(tǒng)時,一般應遵循如下的定量設計原理。

1.哈夫曼(Huffman)壓縮原理

盡可能加速處理高概率的事件遠比加速處理概率很低的事件對性能的提高要顯著。例

如,CPU在運算中發(fā)生溢出的概率是很低的,為此,設計時可考慮加快不溢出時的運算速

度,而對溢出時的速度不予考慮。有關(guān)哈夫曼壓縮原理將在以后章節(jié)中詳細講述。

Amdah[定律

19

該定律是1967年IBM公司的Amdahl在設計IBM360系列機時首先提出來的。該定

律可用于確定對系統(tǒng)中性能瓶頸部件采取措施提高速度后系統(tǒng)性能改進的程度,即系統(tǒng)加速

比與。系統(tǒng)加速比S,定義為系統(tǒng)改進后的性能與未改進時的性能的比值,或者定義為系統(tǒng)

未改進時的程序執(zhí)行時間7;病改進后的程序執(zhí)行時間卻“,的比值。系統(tǒng)加速比S,,與兩個

因素有關(guān),即性能可改進比和部件加速比加

性能可改進比力是系統(tǒng)性能可改進部分占用的時間與未改進時系統(tǒng)總執(zhí)行時間的比

值,顯然,09篇1。部件加速比九是系統(tǒng)性能可改進部分在改進后性能提高的比值,不

難看出,片”,>1。

這樣,系統(tǒng)加速比為

new\'new/'/newnew

式中,分母的(l-/,eu.)為不能改進性能這部分的比例。

可見,當系統(tǒng)性能可改進比力0時,Sp=l;而當部件加速比力“,趨于無窮大時,

分母中的£然榔般于0,這里有

s二

p

/new

就是說,性能提高的幅度受限于性能改進部分所占的比例大小,而性能改善的極限又受

性能可改進比九“,的約束。

Amdahl定律告訴我們,改進效果好的高性能系統(tǒng)應是一個各部分性能均能平衡得到

提高的系統(tǒng),不能只是其中某個功能部件性能的提高。

3.程序訪問的局部性定律

程序訪問的局部性包括了時間上和空間上的兩個局部性。時間上的局部性指的是現(xiàn)在

正使用的信息可能不久還要使用,這是因為程序存在著循環(huán)??臻g上的局部性指的是最近的

20

將來要用到的信息很可能與現(xiàn)在正在使用的信息在程序位置上是鄰近的,這是因為指令通常

是順序存放、順序執(zhí)行的,數(shù)據(jù)也通常是以向量、陣列、樹、表等形式簇聚地存放在一起

的。統(tǒng)計表明,程序執(zhí)行時,90%的時間只訪問整個程序的10%那一部分,而其余10%的

時間才訪問另外90%的那部分程序。甚至有的程序部分訪問時間連1%都不到。這為設計

指令系統(tǒng)提供了重要的依據(jù),即指令硬件的設計應盡量加速高頻指令的執(zhí)行。

1.3.3計算機系統(tǒng)設計的主要任務和方法

1.計算機系統(tǒng)設計的主要任務

計算機系統(tǒng)設計的主要任務包括系統(tǒng)結(jié)構(gòu)、組成和實現(xiàn)的設計。它涉及軟硬件功能分

配、計算機指令系統(tǒng)設計、功能組織、邏輯設計、集成電路設計、封裝、電源、冷卻等許多

方面。優(yōu)化設計時,還要熟悉編譯系統(tǒng)和操作系統(tǒng)的設計技術(shù)。

計算機系統(tǒng)設計首先要根據(jù)市場和應用情況,確定用戶對計算機系統(tǒng)的功能、性能和價

格的要求。其中,應用軟件對功能的確定起主要作用。如果某類應用軟件基于某種指令系統(tǒng)

且在市場上應用很普遍,就必須在系統(tǒng)結(jié)構(gòu)設計時實現(xiàn)這種指令系統(tǒng),以滿足其應用需求。

1)要弄清其應用領域是專用的還是通用的。專用機用于特殊的專門領域,往往要求有

高的性能和實時性。通用機則要求適用于多種應用場合,并且在每一種應用場合中都能有較

均衡的高性能。如果是面向科學計算的通用機,就要提高浮點運算性能;而如果是面向事務

處理的通用機,則應增加事務處理類指令和對數(shù)據(jù)庫的支持和操作功能。

2)要弄清軟件兼容是放在哪級層次。如果是高級語言級兼容,就比較靈活,主要研究

相應的編譯程序。如果是傳統(tǒng)機器語言(目標代碼)級的軟件兼容,結(jié)構(gòu)就已確定,靈活性

較差。這時可不必考慮軟件移植的工作,但可以考慮采用不同的微程序?qū)崿F(xiàn)。

3)要弄清對操作系統(tǒng)有何種要求。這主要是關(guān)注于存儲系統(tǒng)的設計。如果尋址范圍很

21

大,就要考慮采用何種存儲管理方式。例如,是采用頁式管理還是段頁式管理,需要采取哪

些存儲保護方式等。

4)要如何保證有高的標準化程度。對現(xiàn)有國際標準和國家標準應盡可能遵守,如各種

浮點數(shù)標準、總線標準、網(wǎng)絡標準、程序語言標準等。隨著技術(shù)發(fā)展,當前的標準不能適用

時,則應向廠家、研究所和各種標準化組織提出研究新的標準。

在系統(tǒng)的功能確定后,就要考慮如何優(yōu)化系統(tǒng)的設計,使之能有高的性能價格比。這可

用代表性的應用程序測試,評價、量化其性能。其中關(guān)鍵的是要考慮如何使軟件和硬件功能

的分配更為合理。功能用硬件實現(xiàn)還是軟件實現(xiàn)是各有優(yōu)缺點的。硬件實現(xiàn)的優(yōu)點是速度往

往較快,性能好,但缺點是不靈活,適應性差。軟件實現(xiàn)的優(yōu)點是設計容易,修改容易,有

靈活的適應性,但缺點是速度、性能低。應該看到,硬件實現(xiàn)也不是一定比軟件實現(xiàn)的速度

高,算法有著舉足輕重的影響。先進的算法用軟件實現(xiàn)有時可比差勁的算法用硬件實現(xiàn)的速

度快得多。用于科學計算的計算機就要配置浮點協(xié)處理器來提高浮點運算速度,事務處理計

算機就要配置二-十進制數(shù)表示、字符操作類指令。因此,協(xié)調(diào)平衡好軟、硬件功能分配的

比例,就能使系統(tǒng)獲得更高的性能價格比。

系統(tǒng)結(jié)構(gòu)設計應適應硬件技術(shù)、軟件技術(shù)、器件技術(shù)、應用要求的發(fā)展變化。注意并適

應這些變化,系統(tǒng)結(jié)構(gòu)才能有強的生命力。器件特別是集成電路、動態(tài)隨機訪問存儲器、硬

盤等的發(fā)展,會促進軟件實現(xiàn)的功能更多地改用硬件實現(xiàn)。目前芯片上的晶體管數(shù)量每年增

加1/4,開關(guān)電路的速度每年提高1/4,存儲器訪問周期每10年縮短1/3,硬盤存儲密度每年提

高1/4,硬盤訪問時間每10年減少1/3o

硬件設計還要考慮有好的易擴性、兼容性,以便日后系統(tǒng)的升級換代。從應用來看,存

儲容量每年增長1.5~2倍,相應要求訪存地址碼位數(shù)每年增加0.5~1位,所以主存容量應

有可擴性。此外,高級語言逐步取代匯編語言,要求系統(tǒng)結(jié)構(gòu)能更好地支持編譯程度和編程

22

模式的改變。面向?qū)ο蟮某绦蛟O計就要求系統(tǒng)結(jié)構(gòu)設計能有相應的支持。

2.計算機系統(tǒng)的設計方法

從多級層次結(jié)構(gòu)出發(fā),計算機系統(tǒng)的設計按多級層次結(jié)構(gòu)(見圖1-1)的由上、下、中

開始設計可以有"由上往下"、"由下往上"、"由中間開始"3種不同的設計方法。

1)"由上往下"設計,也稱"由頂向底"設計。它是先考慮如何滿足應用要求,定好

面向應用的那個虛擬機器級的特性和工作環(huán)境,如要用到的基本命令、指令、語句結(jié)構(gòu)、數(shù)

據(jù)類型、數(shù)據(jù)格式等,再逐級地向下設計,每設計下一級都考慮對上一級是優(yōu)化的。這樣設

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論