第1章 計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念_第1頁
第1章 計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念_第2頁
第1章 計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念_第3頁
第1章 計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念_第4頁
第1章 計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念_第5頁
已閱讀5頁,還剩77頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

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

課件

編著:陳建鐸

設(shè)計:程俊波

西安石油大學(xué)計算機(jī)學(xué)院

目錄

第一章計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

第二章數(shù)據(jù)與指令系統(tǒng)設(shè)計

第三章存儲器體系結(jié)構(gòu)

第四章標(biāo)量流水線技術(shù)

第五章向量流水與向量處理機(jī)

第六章互連網(wǎng)絡(luò)

第七章并行處理技術(shù)與SIMD陣列機(jī)

第八章多處理機(jī)

第九章計算機(jī)體系結(jié)構(gòu)的發(fā)展

第1章計算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

?內(nèi)容提要:

本章首先簡要介紹計算機(jī)系統(tǒng)結(jié)構(gòu)的含義、層次結(jié)構(gòu)類型,然后講

述計算機(jī)系統(tǒng)結(jié)構(gòu)性能分析的方法、計算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展及計算機(jī)系

統(tǒng)的成本、性能與價格。重點(diǎn)是計算機(jī)系統(tǒng)的層次結(jié)構(gòu)、按“流”分

類、定量分析、Amdahl定律、影響計算機(jī)系統(tǒng)結(jié)構(gòu)的要素。難點(diǎn)是計

算機(jī)系統(tǒng)的層次結(jié)構(gòu)、按“流”分類、定量分析及Amdahl定律。

mi第1章計算機(jī)系統(tǒng)

結(jié)構(gòu)的基本概念

概述

>1.2計算機(jī)系統(tǒng)結(jié)構(gòu)的定義與內(nèi)涵

±1.3計算機(jī)系統(tǒng)結(jié)構(gòu)的類型

->>1.4計算機(jī)系統(tǒng)性能分析

.5計算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展過程

工1.6計算機(jī)系統(tǒng)的成本、性能與價格

■與

1.1概述

自從上世紀(jì)40年代上第一臺數(shù)字計算機(jī)誕生以來,其結(jié)構(gòu)、

規(guī)模、類型、性能、應(yīng)用領(lǐng)域發(fā)生了翻天覆地的變化,其中決

定因素是器件和系統(tǒng)結(jié)構(gòu)的發(fā)展與變化。人們把計算機(jī)的發(fā)展

過程歸結(jié)為四個歷史時期,也稱為四代?,F(xiàn)在,正在向第五代

發(fā)展。各歷史時期及其主要特征如表1.1一所示。

表1.1計算機(jī)的發(fā)展歷史

特征

器件結(jié)構(gòu)軟件典型機(jī)器

年代

第一代電子管和存儲程序計算機(jī)機(jī)器語言與

ENIAC、IBM701

1945—1954年繼電器程序控制I/O匯編語言

浮點(diǎn)數(shù)據(jù)表示、多尋址高級語言與編譯、批UnivacLARC

第二代晶體管、磁芯、

方式、中斷技術(shù)、I/O處理技術(shù)與CDC1604

1955—1964年印刷電路

處理機(jī)監(jiān)控系統(tǒng)IBM7030

微程序控制器、流水線IBM360/370

第三代SSLMSL多層多道程序處理

技術(shù)、CacheCDC6600/7600

1965—1974年印刷電路分時操作系統(tǒng)

先行處理、系列機(jī)DECPDP-8

Cray-1IBM3090

第四代LSI、VLSL半導(dǎo)向量處理、并行計算、并行與分布式

DECVAX9000

1975—1990年體存儲器分布式存儲器處理

Convax-1

SGICrayT3E

第五代高性能微處理器、超標(biāo)量、超級流水線大規(guī)模可擴(kuò)展并行與

IBMSP2DEC

1991—現(xiàn)在高密度器件SMP、MP、MPP分布式處理

AlphaServer8400

計算機(jī)科學(xué)家恩斯洛(P.H.Enslow)曾對1965?1975年間計算機(jī)的發(fā)

展進(jìn)行了研究。結(jié)果表明,計算機(jī)系統(tǒng)的性能提高了10。倍,其中1。倍

歸功于器件的發(fā)展,而另外1。倍歸于系統(tǒng)結(jié)構(gòu)的變化。

在計算機(jī)進(jìn)入第四代以后,人們認(rèn)為第五代計算機(jī)應(yīng)當(dāng)是智能化計

算機(jī)。但是,經(jīng)過多年的努力,一時還難以實現(xiàn)。

而在上世紀(jì)90年代以后,計算機(jī)的硬件體系結(jié)構(gòu)有了新的突破性的

發(fā)展,于是人們把其歸結(jié)為第五代系統(tǒng)結(jié)構(gòu)的發(fā)展時期。典型機(jī)種除了

表1.1中所列舉的幾種之外,還有:

Fujitsu的VPP500、CrayResearch的MPP、ThinkingMachines公司

的CM-5、Intel超級計算機(jī)系統(tǒng)Paragon、SGI的0rigin2000以及SUN

10000服務(wù)器等。

目前,就計算機(jī)的規(guī)模而言,有微型機(jī)、小型機(jī)、中型機(jī)、大型機(jī)

和巨型機(jī);就計算機(jī)的體系結(jié)構(gòu)而言,有標(biāo)量流水機(jī)、向量流水機(jī)、陣

列機(jī)、并行多處理機(jī)、數(shù)據(jù)流機(jī)以及規(guī)約機(jī)等;另外,人工智能計算機(jī)

仍然在發(fā)展之中。

在進(jìn)入上世紀(jì)80年代以后,由于軟件技術(shù)的發(fā)展,對計算機(jī)

系統(tǒng)結(jié)構(gòu)的發(fā)展也起到了一定的促進(jìn)作用。一方面是對匯編語言

的要求有所降低,放寬了對目標(biāo)代碼兼容性的苛刻要求;另一方

面,與廠商無關(guān)、類似于UNIX操作系統(tǒng)那樣的標(biāo)準(zhǔn)化的建立,使

新的系統(tǒng)結(jié)構(gòu)的設(shè)計成本與風(fēng)險有所降低,這就促使許多廠商相

繼推出了許多新型計算機(jī),比如小巨型機(jī)、高性能的微處理機(jī)、

工程工作站以及各種多處理機(jī)等。

在微型計算機(jī)的發(fā)展中,隨著芯片集成度的提高,一方面向

工程工作站、小型機(jī)靠攏;另一方面,各種高性能的微控制器、

嵌入式芯片大量涌現(xiàn)出來,廣泛地用于自動控制、電信和智能化

儀器儀表中。

在進(jìn)入80年代以后,另一個突破性的進(jìn)展出現(xiàn)了。這就是精

簡指令系統(tǒng)計算機(jī)RISC,它是對CISC計算機(jī)的一種挑戰(zhàn),使計算

機(jī)的體系結(jié)構(gòu)再一次發(fā)生了質(zhì)的改變。

m

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

定義與內(nèi)涵

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

彳122計算機(jī)系統(tǒng)結(jié)構(gòu)的定義

與內(nèi)涵

,123計算機(jī)系統(tǒng)的組成與實

現(xiàn)

U11.2.1計算機(jī)系統(tǒng)的層次結(jié)構(gòu)

隨著軟件技術(shù)的U應(yīng)用語言級虛擬機(jī)

t

發(fā)展,人們使用不同

高級語言級

L5虛擬機(jī)

的高級語言編程,站應(yīng)用軟件Yt

匯編語言級

L4虛擬機(jī)

在不同的層面上使用?

操作系統(tǒng)級虛擬機(jī)

L3

計算機(jī)。于是,產(chǎn)生硬、軟件界面

了計算機(jī)系統(tǒng)的多層硬件L?機(jī)器語言(傳統(tǒng)機(jī)器)級物理機(jī)

*

次結(jié)構(gòu),如圖1.1Li微程序機(jī)器級

固件《?

所示。Lo電子線路級

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

圖中每一層對應(yīng)一種“機(jī)器”,為該層的操作者所使用。操作者

通過該層的語言與“機(jī)器”對話,或者交互信息,而不必關(guān)心其內(nèi)層

的結(jié)構(gòu)和工作過程。這體現(xiàn)的是一種稱之為透明性的特性。

L0和L1級是計算機(jī)的底層硬件,指中央控制器。其中

L0級由電子線路組成,用來實現(xiàn)微指令的功能。

L1是微程序控制器,也稱為固件。

L2是傳統(tǒng)的機(jī)器語言級機(jī)器,也稱為物理機(jī),程序員通過機(jī)器語

言指令編程。向下,進(jìn)入L1級,每一條機(jī)器語言指令對應(yīng)于一段微程

序,通過執(zhí)行其微程序,實現(xiàn)該指令的功能。

L3是操作系統(tǒng)虛擬機(jī)。在這一級,多數(shù)指令是傳統(tǒng)的機(jī)器語言指

令,操作系統(tǒng)提供自己的命令集,比如打開/關(guān)閉文件、讀/寫文件等。

程序員主要使用操作系統(tǒng)的命令對文件進(jìn)行操作,其功能由軟件來實

現(xiàn),因此稱為操作系統(tǒng)虛擬機(jī)。

L4是匯編語言虛擬機(jī)。程序員通過對匯編語言指令的編程,來實

現(xiàn)外部的功能要求。匯編語言程序需要翻譯成L3和L2級語言,然后再

由機(jī)器執(zhí)行。這種翻譯程序稱為匯編程序。

L5是高級語言虛擬機(jī)。程序員使用高級語言進(jìn)行程序設(shè)計,

然后再由編譯或解釋程序翻譯成L4級或L3級上的語言,然后由

下一級機(jī)器執(zhí)行。

L6是應(yīng)用語言虛擬機(jī),是為某些專門的應(yīng)用而設(shè)計的,使用

面向問題或?qū)ο笳Z言,可設(shè)計出用于不同領(lǐng)域的虛擬機(jī)。應(yīng)用

語言編寫的程序一般是由應(yīng)用程序包翻譯到L5級上,然后再一

級一級地翻譯或解釋執(zhí)行。

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

計算機(jī)系統(tǒng)結(jié)構(gòu)(Computerarchitecture)這一概念,是在

1962年Buchholz描述IBM7030的擴(kuò)展性(Stretch)時首先提出來的;

主要是指計算機(jī)的外貌,也稱為外特性。1964年,IBM370的主設(shè)計

師Amdahl給出了它的定義:

計算機(jī)系統(tǒng)結(jié)構(gòu)就是程序員所看到的計算機(jī)的基本屬性,即概念

性結(jié)構(gòu)與功能特性。

對于不同層次上的程序員來說,由于使用的程序設(shè)計語言不同,

可能看到的概念性結(jié)構(gòu)與功能特性會有所不同。例如,使用機(jī)器語言

或匯編語言分別在PDP-11和80X86機(jī)上進(jìn)行程序設(shè)計,就會發(fā)現(xiàn)兩種

機(jī)器的基本屬性截然不同;如果使用高級語言,比如FORTRAN或C/C++,

進(jìn)行程序設(shè)計,經(jīng)編譯后再在這兩種機(jī)器上運(yùn)行,就會發(fā)現(xiàn)它們之間

不再有多大的區(qū)別。

/JJ

是什么原因呢?主要是編譯程序填補(bǔ)了兩種機(jī)器之間的差異。象

這種本來存在差異或區(qū)別的事物或特性,站在某一角度來看,似乎不

再有什么差異或者區(qū)別,這種現(xiàn)象或概念稱為透明性(Transparency)。

由此可見,在層次結(jié)構(gòu)的各級機(jī)器上都有相應(yīng)的系統(tǒng)結(jié)構(gòu)。

Amdahl提出的系統(tǒng)結(jié)構(gòu)是指傳統(tǒng)機(jī)器語言級的系統(tǒng)結(jié)構(gòu),即機(jī)器語言

程序員所看到的計算機(jī)外特性,是在傳統(tǒng)的硬件層面上看到的特性。

這種外特性主要有:

①指令系統(tǒng)②數(shù)據(jù)表示③尋址規(guī)則

④寄存器結(jié)構(gòu)⑤中斷系統(tǒng)⑥工作狀態(tài)的定義與切換

⑦存儲系統(tǒng)⑧信息保護(hù)方式⑨I/O結(jié)構(gòu)等。

/JJ

這些在計算機(jī)系統(tǒng)中是由硬件或固件完成的功能。由圖

1.1可以看出,計算機(jī)系統(tǒng)的概念性結(jié)構(gòu)和功能特性實質(zhì)上是由

計算機(jī)系統(tǒng)中軟件與硬件之間的界面所確定,界面之上主要是

軟件功能,界面之下則主要是硬件。

以上是針對經(jīng)典的計算機(jī)系統(tǒng)結(jié)構(gòu)的概念而言的。隨著計

算機(jī)技術(shù)的發(fā)展,計算機(jī)系統(tǒng)結(jié)構(gòu)的概念和它所包含的內(nèi)容也

正處在不斷的發(fā)展與變化之中,它涉及到廣義計算機(jī)系統(tǒng)結(jié)構(gòu)

的概念,包括計算機(jī)新的組成與實現(xiàn)技術(shù)。

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

1.2.3計算機(jī)系統(tǒng)的組成與實現(xiàn)

計算機(jī)組成與實現(xiàn)

n>2.外特性、內(nèi)特性與微外特性

,3.計算機(jī)系統(tǒng)的組成與實現(xiàn)

1.計算機(jī)組成與實現(xiàn)

所謂計算機(jī)組成是在明確計算機(jī)系統(tǒng)結(jié)構(gòu)分配給硬件的功能與概念性

結(jié)構(gòu)之后,研究如何組成其硬件體系,并建立相互之間的聯(lián)系,以實現(xiàn)機(jī)器

語言級指令的功能與特性。其中包括各功能部件的配置、組成、相互之間的

連接與相互作用等。

各功能部件的性能、參數(shù)以及相互之間的合理匹配是計算機(jī)組成的重要

指標(biāo)。例如,運(yùn)算器的組成、功能、運(yùn)算速度,存儲器的層次結(jié)構(gòu)、容量、

存取周期、虛擬存儲技術(shù)、通道技術(shù)或I/O處理機(jī)、先行控制、流水線技術(shù)、

多功能部件、陣列機(jī)以及并行多處理機(jī)技術(shù)等。

計算機(jī)組成是計算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn),包括機(jī)器內(nèi)部數(shù)據(jù)流和控制

流的組成及其邏輯設(shè)計。在研究計算機(jī)組成時,又涉及到各種功能部件的組

成邏輯、時序電路以及時鐘信號的設(shè)計與選用。

例如,在設(shè)計運(yùn)算器時,既涉及到時序電路,又涉及到算法;

在設(shè)計存儲器時既涉及到采用什么樣的器件,又涉及到它的容量、外

圍電路和速度;在設(shè)計輸入輸出通道時,同樣也涉及到采用什么樣的

器件及外圍電路。另外,在構(gòu)成計算機(jī)時還涉及到信號的傳輸方式、

模塊的劃分、插件與底版的連接,以及電源、冷卻方式、組裝工藝和

技術(shù)等。這些,統(tǒng)稱為計算機(jī)組成的物理實現(xiàn)。

計算機(jī)系統(tǒng)結(jié)構(gòu)、計算機(jī)組成和計算機(jī)實現(xiàn)是三個不同的概念。

系統(tǒng)結(jié)構(gòu)是計算機(jī)系統(tǒng)的軟件與硬件之間的界面;計算機(jī)組成是指計

算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯實現(xiàn);計算機(jī)實現(xiàn)是指計算機(jī)組成的物理實現(xiàn)。

它們各自包含有不同的內(nèi)容,相互之間又有著密切的聯(lián)系。

上述三種概念所包含的內(nèi)容隨不同的機(jī)器可能有所變化。在一些

機(jī)器中屬于系統(tǒng)結(jié)構(gòu)內(nèi)容,到了另一種機(jī)器中可能成為計算機(jī)組成或

實現(xiàn)的內(nèi)容。例如高速緩沖存儲器Cache一般是作為計算機(jī)組成提出來

的,其中存儲的信息全部由硬件管理,對程序員來說是透明的;然而

在有的機(jī)器中為了提高效率,配置了Cache操作指令,使程序員可通過

指令參與Cache的管理。這樣,Cache就成為系統(tǒng)結(jié)構(gòu)的一部分,對程

序員不再透明了。

按照Amdahl的定義,在一個系列機(jī)中不同檔次的機(jī)器具有相同的

系統(tǒng)結(jié)構(gòu)。

2.外特性、內(nèi)特性與微外特性

對于機(jī)器語言程序員所看到的計算機(jī)的概念性結(jié)構(gòu)與功能特

性,我們稱之為計算機(jī)的系統(tǒng)結(jié)構(gòu),也就是“外特性”。這種外

特性是由硬件和固件來實現(xiàn)的,而它們本身則是由電子線路、邏

輯門、寄存器等器件組成的。對這些器件和電子線路的抽象,稱

為計算機(jī)系統(tǒng)的“內(nèi)特性”,對應(yīng)于計算機(jī)組成,其本身實際上

就是計算機(jī)系統(tǒng)的實現(xiàn)。

計算機(jī)系統(tǒng)的內(nèi)特性所涉及到的內(nèi)容主要包括機(jī)器語言級內(nèi)

的數(shù)據(jù)流和控制流的組成,CPU與主存等部件的邏輯設(shè)計,各事件

的排序方式與控制機(jī)構(gòu),以及各部件之間的聯(lián)系等。它所涉及到

的問題是如何合理地配置硬件功能和技術(shù)指標(biāo)

在設(shè)有微程序控制器的計算機(jī)系統(tǒng)中,執(zhí)行指令的過程實

際上就是執(zhí)行微程序的過程。這對于微程序設(shè)計人員來說,他們

所看到的外特性實際上就是微程序控制器的外特性,也稱為“微

外特性”。

如果把它作為一個抽象級,可以視為硬件與固件之間的界面,也

稱為微系統(tǒng)結(jié)構(gòu)。

外特性、內(nèi)特性及微系統(tǒng)結(jié)構(gòu)之間的關(guān)系如圖1.2所示。

由于計算機(jī)系統(tǒng)的外特性是對內(nèi)特性的抽象,因此二者之間的影射關(guān)

系是一對多的關(guān)系,即某一外特性可以影射多種內(nèi)特性;而某一內(nèi)特

性也可以影射多種物理實現(xiàn)。

外特性計算機(jī)系統(tǒng)結(jié)構(gòu)

一?抽象

-1

-I________

實現(xiàn)內(nèi)特性計算機(jī)組成

V;----?抽象~

__________i1

微系統(tǒng)結(jié)構(gòu)

I抽象

電子線路、邏輯門、寄存器等器件I計算機(jī)實現(xiàn)

圖L2計算機(jī)的外特性、內(nèi)特性與微系統(tǒng)結(jié)構(gòu)的關(guān)系

3.計算機(jī)系統(tǒng)的組成與實現(xiàn)

計算機(jī)系統(tǒng)的組成既包括硬件系統(tǒng),又包括軟件系統(tǒng)。

它的組成與實現(xiàn)如圖1.1所示,即分為下層的物理機(jī)和上層的

虛擬機(jī)。其系統(tǒng)的組成實際上就是各層的硬件和軟件構(gòu)成的

統(tǒng)一體,由其硬件和軟件實現(xiàn)各層次的功能。各層的組成與

作用已在1.2.1節(jié)介紹。

1.5軟件的戶生?發(fā)屐與軟件危機(jī)

計算機(jī)系統(tǒng)結(jié)構(gòu)分類方式主要有三種。一種是按“流”分

類,一種是按“并行級”和“流水線”分類,另一種是按照計

算機(jī)系統(tǒng)結(jié)構(gòu)的最大并行度進(jìn)行分類。

1.3,1按“流”分類

按“并行級”和“流水線”

IS1分類

133馮氏分類法同

山I.S.I按“流”分類

按“流”分類法是Flynn教授在1966年提出的一種分類方法,他

是按照計算機(jī)中指令流(Instructionstream)和數(shù)據(jù)流(Datastream)

的多倍性進(jìn)行分類。

所謂指令流是指機(jī)器執(zhí)行的指令序列;所謂數(shù)據(jù)流是指指令流調(diào)

用的數(shù)據(jù)序列。多倍性是指在機(jī)器中最受限制(瓶頸最嚴(yán)重)的部件上,

在同一時間單位中,最多可并行執(zhí)行的指令條數(shù)或處理的數(shù)據(jù)個數(shù)。

這樣,可分成如表1.2所示的四種類

型,即:單指令流單數(shù)據(jù)流(SISD)表1.2計算機(jī)系統(tǒng)結(jié)構(gòu)

單指令流多數(shù)據(jù)流(SIMD)的Flynn分類

多指令流單數(shù)據(jù)流(MISD)數(shù)據(jù)流

單多

多指令流多數(shù)據(jù)流(MIMD)指令流

四種類型如圖1.3所示,其中CU表示單SISDSIMD

控制部件,PU表示處理部件,MM是主存模

多MISDMIMD

塊,CS表示控制流,DS表示數(shù)據(jù)流,IS表

示指令流,SM表示共享主存。

/Il

1.SISD計算機(jī)

單指令流單數(shù)據(jù)流計算機(jī)如圖1.3(a)所示,控制部件(CU)只有一個,

處理部件(PU)也只有一個。同一時間單元中只能對一條指令進(jìn)行譯碼和執(zhí)

行。由于主存模塊(MM)也是一個,因此一次所能處理的數(shù)據(jù)也是一個。

2.SIMD計算機(jī)

單指令流多數(shù)據(jù)流計算機(jī)如圖1.3(b)所示,控制部件(CU)只有一個,

在同一時間單元內(nèi)只能對一條指令進(jìn)行譯碼和執(zhí)行;但是有多個處理部件

(PU),同時執(zhí)行控制單元分配給各自的任務(wù),對多個數(shù)據(jù)進(jìn)行處理,即多

數(shù)據(jù)流。并行處理機(jī)可謂這種結(jié)構(gòu)的典型代表。例如ILLIACTV,ICL-DAP,

CRAY-1,YH-1以及CM-2等。

3;MISD計算機(jī)

多指令流單數(shù)據(jù)流計算機(jī)如圖1.3(c)所示,控制部件(CU)有多個,處

理部件(PU)也有多個,在同一時間單元內(nèi)可對多條指令進(jìn)行譯碼和執(zhí)行,

即多個指令流。但是主存模塊(SM)只有一個數(shù)據(jù)通路,僅對一個數(shù)據(jù)流進(jìn)

行處理。

目前,有人認(rèn)為這種結(jié)構(gòu)尚不存在;但是也有學(xué)者認(rèn)為,超級標(biāo)量

機(jī)、超長指令字計算機(jī)、退耦以及脈動陣列機(jī)可歸屬于SIMD計算機(jī)。

4.MIMD計算機(jī)

多指令流多數(shù)據(jù)流計算機(jī)如圖1.3(d)所示,有多個控制部件(CU)和多

個處理部件(PU),可對多個數(shù)據(jù)流進(jìn)行處理。目前的大多數(shù)多處理機(jī)系統(tǒng)

和多計算機(jī)系統(tǒng)當(dāng)屬這種類型。其中,多個處理機(jī)共享一個主存空間,并

由共享主存交換或傳遞數(shù)據(jù)信息的稱為緊耦合MIMD系統(tǒng);對于不直接共享

一個主存空間的,稱為松耦合MIMD系統(tǒng)。實際上,它也是多個獨(dú)立的SISD

計算機(jī)系統(tǒng)的集合。例如IBM370/168MP,CRAYX-MP,YH-2等。

1.3.2按“并行級”和“流水線”

按“并行級”和“流水線”引舞是WolfganH&ndler在1977年提

出的。是在計算機(jī)系統(tǒng)的三個子系統(tǒng)集上,按照并行性和流水線的處

理程度分類。三個層次是處理控制器(PCU)、運(yùn)算部件(ALU)和位級電

路(BLC)。這樣,一個計算機(jī)系統(tǒng)可描述為:

7(C)=<左二少x獷>其中:

C表示計算機(jī)系統(tǒng)型號;

后表示計算機(jī)系統(tǒng)中處理控制器(PCU)的個數(shù);

々'表示可組成流水線的處理控制器的個數(shù);

d表示每一個PCU中運(yùn)算部件(ALU或PE)的個數(shù);

"表示可組成流水線的ALU或PE的個數(shù);

碌示ALU或PE的字長;

”表示所有ALU或一個PE中的流水段數(shù)。

如果任意一對參數(shù)的第二個元素值為1,則可以省略。

UA

【例1.1】CDC6600計算機(jī)系統(tǒng)有一個CPU,它的ALU有10個功能部件,

所有的功能部件可以連成一條流水線,字長60位;此外,配有10個可并行

工作的I/O處理機(jī),每一個I/O處理機(jī)有一個ALU,字長12位。貝ICDC6600計

算機(jī)系統(tǒng)可以描述為:

7(CDC6600)=7<中央處理機(jī)〉x<1/0處理機(jī))

=<1,1x10,60>x<10,1,12>

【例1.2]CRAY-1計算機(jī)有一個CPU,12個相當(dāng)于ALU或PE的處理部件,

最多可實現(xiàn)8級流水線;字長64位,可實現(xiàn)1?14位流水線處理。則CRAY-1

計算機(jī)系統(tǒng)可描述為:

7(CRAY-1)=<1,12x8,64x(1?14)>

按照WolfganHandler分類法,一些典型計算機(jī)可表示為:

r(PDPH)=(1,1,16)

AILLIACIV)=(1,64,64)

Z(STARAN)=(1,8192,1)

T(MPP)=(1,16384,1)

7(C.mmp)=(16,1,16)

T(PEPE)=(1x3,288,32)

/JJ

1.3.3馮氏分類法

馮氏分類法是美籍華人馮澤云于1972年提出來的一種分類方法。

他是按照“最大并行度”對計算機(jī)系統(tǒng)結(jié)構(gòu)進(jìn)行分類。

所謂最大并行度用用]表示,定義為計算機(jī)系統(tǒng)在單位時間內(nèi)所

能處理的最大二進(jìn)制位數(shù)。若設(shè)每一個時鐘周期△行內(nèi)能同時處理

的二進(jìn)制位數(shù)為Pi,則葉時鐘周期內(nèi)平均并行度為:

T

pa=(ZAAA)/T

i=l

平均并行度取決于系統(tǒng)的運(yùn)行程度,與應(yīng)用程序有關(guān)。

為了表示這一特性,可引入系統(tǒng)在什時鐘周期內(nèi)的平均利用

率,用〃表示:

T

〃=2/幾=)/T/Tm

i=l

/11!

下面可通過圖1.4給出用“最大并行度”對計算機(jī)系統(tǒng)結(jié)構(gòu)進(jìn)行分類

的方法。其中直角坐標(biāo)系中的一個點(diǎn)代表一個計算機(jī)系統(tǒng);橫坐標(biāo)表示

字寬S位),即在一個字中可同時處理的二進(jìn)制位數(shù);縱坐標(biāo)表示位片寬

度("字),即在一個位片中可同時處理的字?jǐn)?shù)。這樣,對于一個計算機(jī)系

統(tǒng)的最大并行度可用兩個量的乘積來表示,即通過該點(diǎn)的水平線、垂直

線與兩坐標(biāo)軸圍成的矩形面積。

加序1MPP

.(1,16384)

16384

PEPE

288?_..(32,288)

.[STARAN

256

:(1,256)

ILLIAC-IV

64

1

\TI-ASC

_______J(64,32)

32

Commp1

1

T_________“16,⑹i

16I

i

!EDVAC!PDP-11370/168i

i

:(U):(16,1)(32,1)l

0

1163264W位

圖1.4馮氏分類法同

由圖1.4可見,按照對數(shù)據(jù)處理的方式,可得到4種不同處理方式的計算

機(jī)系統(tǒng)結(jié)構(gòu):

①字串位串(WSBS,WordSerialandBitSerial),即/尸1,

片1。這主要是第一代計算機(jī)發(fā)展的初期,采用純串行工作方式的一類

計算機(jī)。

②字并位串(WPBS,WordParallelandBitSerial),即

片L這主要是傳統(tǒng)的并行單處理機(jī)。

③字串位并(WSBP,WordSerialandBitParallel),即rl,

/〃>1。STARAN.MPP、DAP等屬于這種結(jié)構(gòu)。

④字并位并(WPBP,WordParallelandBitParallel),即z?>l,

力>1。PEPE、ILLIAC-IV.C.mmp等屬于這種結(jié)構(gòu)。

1.4.1定量分析法

1.大概率事件優(yōu)先原理

大概率事件優(yōu)先原理的基本思想是對大概率事件(最常見的事件)

賦予優(yōu)先處理權(quán)和資源使用權(quán),以獲得全局最優(yōu)結(jié)果。例如在CPU的加

法運(yùn)算中,溢出是小概率事件,無溢出是大概率事件。相比之下,應(yīng)

對無溢出加法進(jìn)行優(yōu)化設(shè)計,力口快無溢出加法的速度;而溢出會降低

機(jī)器的運(yùn)算速度,但是它的概率很小。因此,從總體上來看,機(jī)器的

性能還是提高了。

2.Amdahl定律

Amdahl定律是Amdahl于1967年提出來的。他指出,對某一部件采

取某種更快的執(zhí)行方式,所獲得的系統(tǒng)性能改進(jìn)程度取決于這種執(zhí)行

方式被使用的概率或所占用總執(zhí)行時間的比例。簡言之,加快某種部

件執(zhí)行的速度所獲得系統(tǒng)性能加速比,受限于該部件在系統(tǒng)中的重要

性或使用概率。

若用76表示某部件改進(jìn)前執(zhí)行某一任務(wù)所用的時間,7b表示改進(jìn)后執(zhí)行

該任務(wù)所用的時間;re表示部件經(jīng)改進(jìn)后其功能加快的倍數(shù),/b表示該部

件執(zhí)行占系統(tǒng)總執(zhí)行時間的百分比;則系統(tǒng)性能(或時間)加速比Sp的公式

可表示如下:

,(1—兀+

J

顯然,當(dāng)於為0時,Sp為1,表示被改進(jìn)或增強(qiáng)功能的設(shè)備沒有使用;

當(dāng)ret8時:

—0,貝凡f-------

re(1-J/e)

/JJ

【例1.3]若將計算機(jī)系統(tǒng)中某一部件的處理速度提高8倍,該

部件處理時間占整個系統(tǒng)運(yùn)行時間的60%。試問該部件的處理

速度提高后,整個系統(tǒng)的性能提高了多少?

解:根據(jù)題意,re=8,/e=60%,則

11

樂=----------------=-----------------2.11

QY)+fe(1-0.6)+0,6

8

若以Sp為縱坐

標(biāo),/b為橫坐標(biāo),對

不同的re,可畫出函

數(shù):

5p=A/e)

的曲線,如圖1.5

所示。

圖L5Sp4曲線

7

/」」【例1.4】假設(shè)某程序中,求浮點(diǎn)數(shù)平方根FPSQR操作占整個程序執(zhí)行時

間的20%,而所有浮點(diǎn)運(yùn)算指令FP操作占整個程序執(zhí)行時間的50%?,F(xiàn)用兩

種措施來提高計算機(jī)系統(tǒng)的性能,一種是采用FPSQR硬件,可使FPSQR操作

的速度提高10倍;另一種是使所有浮點(diǎn)運(yùn)算指令的速度提高2倍。試比較兩

種改進(jìn)方案。

解:在兩種實施方案下,re分別是10和2;fe分別是20%和50%,使用加

速比Sp的公式:

_1_1

PFPSQR122

_(1_y)+Z/~(l-0.2)+0.2/10~1

c1,1

SPFP=7_7="1?33

(>/)+夕(l-0.5)+0.5/2

通過計算可以看出,使采用“提高FP指令的速度”,要比“FPSQR硬件”

方案好一些。

1.4.2CPU性能分析

在大多數(shù)計算機(jī)中,時鐘周期用又表示,單位為ns。對于一個

有7N條指令的程序來說,執(zhí)行時間可7CPU來表示,貝上

x

TQPU=4xCPI7^

其中CPI表示執(zhí)行一條指令所需要的平均時鐘周期數(shù):

Z9Plx4)

CJPI=----------------------------

IN

人表示程序中指令的總數(shù),人表示第/類指令在程序中執(zhí)行的次數(shù),

以Z表示執(zhí)行一條第/類指令所需要的平均時鐘周期數(shù),刀為程序中所

有指令的種類數(shù)。

/Ill

上述還可以表示為:n

CPICPI=Z(CPLX-)

/=1

【例1.5]假設(shè)某標(biāo)量計算機(jī)使用的時鐘頻

率為40MHz,在執(zhí)行一個典型的測試程序時,所

測到的指令類型、指令的條數(shù)以及所用時鐘周表1.3』執(zhí)行程序參數(shù)表

期數(shù)如表1.3所示。試求執(zhí)行該程序時的平均時指令類型指令數(shù)時鐘周期數(shù)

鐘周期數(shù)CPI和總的CPU執(zhí)行時間。整數(shù)算術(shù)450001

數(shù)據(jù)傳送320002

解:根據(jù)題意6

Tc=l/(40x10)=25ns浮點(diǎn)運(yùn)算150004

控制轉(zhuǎn)移80002

4

CPIPliXRIZN=(45000X1+32000X2+15000X4+8000X2)/100000=1.85

五pu=CPIXl~c-1-85X100000x25=4625000ns=4.625ms

1.4.3MIPS與MFLOPS指標(biāo)

除了上述性能加速比Sp和平均時鐘周期數(shù)CPI之外,在衡量計算

機(jī)的運(yùn)算速度時常用的還有MIPS和MFLOPS指標(biāo)。

1.基本公式

(1)MIPS

MIPS表示每秒百萬條指令,用來衡量標(biāo)量處理機(jī)定點(diǎn)運(yùn)算的速度。

對于一個給定的程序,MIPS可表示為:

,N_______________________________Rc

MIPS666

=TEXIO=/Nxcpixrcxio=CPIXIo

式中久表示程序執(zhí)行時間;竟表示時鐘速率,是時鐘周期兀的倒數(shù)。

根據(jù)這一定義,上述例1.6中處理機(jī)的MIPS值為:

,N7N

MIPS==21.62(百萬條指令/秒)

696

rExio4625000X10-X10

/JJ

(2)MFLOPS

MFLOPS表示每秒百萬條浮點(diǎn)運(yùn)算指令,用來衡量浮點(diǎn)處理機(jī)的運(yùn)算速

度。對于一個給定的程序,MFLOPS可表示為:

MFLOPS=1FN

TexIO,

式中之表示程序中浮點(diǎn)運(yùn)算的次數(shù)(即指令的條數(shù)),4表示程序執(zhí)行

時間。

在MFLOPS和MIPS的量值之間沒有直接的聯(lián)系和統(tǒng)一的標(biāo)準(zhǔn),但是人們

認(rèn)為在一般標(biāo)量機(jī)上進(jìn)行一次浮點(diǎn)運(yùn)算需要2?5條指令,取平均值3,故

1MFLOPS?3MIPSO

2.基準(zhǔn)測試程序

為了較好地反映計算機(jī)系統(tǒng)的性能,常用不同層次的基準(zhǔn)應(yīng)用程

序(Bebchmark)來評價系統(tǒng)的性能,主要有以下幾種。

(1)采用實際應(yīng)用程序

根據(jù)不同的被測系統(tǒng),可選用不同的實際測試程序。例如C語言編譯

程序、TeX文本處理程序、CAD工具軟件Spice等。

(2)采用核心程序

是從實際運(yùn)行的程序中抽出少量關(guān)鍵性的循環(huán)程序段,以此測試和評

估計算機(jī)系統(tǒng)的性能,例如livermore24Loops>Linpack等。

(3)合成測試程序

類似于核心程序,它是考慮到各種操作和程序的比例而專門編寫

的,比較流行的有Whetstone和Dhrystone。其中Whetstone是由整型

運(yùn)算和浮點(diǎn)運(yùn)算混合組成,包括超越函數(shù)、條件轉(zhuǎn)移和函數(shù)調(diào)用等;

Dhrystone主要是有關(guān)的整型運(yùn)算,包括字符串及數(shù)組處理等。

LU

(4)小測試程序

通常測試程序代碼在100行以下,運(yùn)行結(jié)果可以預(yù)知,例如Sieveof

Erastosthenes>Puzzle、Quicksort等程序。

(5)SPEC測試程序

為了對計算機(jī)系統(tǒng)有一個比較公正的評價,1988年起,美國HP、DEC、

MIPS、SUN等公司發(fā)起成立了一個系統(tǒng)性能評價合作團(tuán)體(SPEC組織),用

一組實用程序和相應(yīng)輸入來評價計算機(jī)系統(tǒng)的性能。典型測試程序主要

有以下10個:GCC、Espresso.Spice2g6、DODUC.NASA7、Li、Eqntott.

Matrix300,FPPPP,T0MCATVo其中GCC、Espresso,Li、Eqntott是用C

語言編寫,進(jìn)行整型運(yùn)算;其余是用FORTRAN語言編寫,進(jìn)行浮點(diǎn)運(yùn)算。

測試結(jié)果用SPECmark分值表示,其值越大越好。1SPECmark約相

當(dāng)于0.2?0.3MFL0PSo測試程序進(jìn)一步分為整型SPECint和浮點(diǎn)SPECfp。

與之類似,還有Perfect俱樂部的一組稱為PerfectClub的典型

測試程序。

1.4.4性能測試結(jié)果的統(tǒng)計與比較

1.性能測試結(jié)果的統(tǒng)計

關(guān)于計算機(jī)系統(tǒng)性能的評價,通常有峰值性能(Peak

performance)和持續(xù)性能(Sustainedperformance)兩個標(biāo)準(zhǔn)。表

示持續(xù)性能的主要有算術(shù)平均值、幾何平均值和調(diào)和平均值。

(1)算術(shù)平均值

設(shè)有刀個測試程序,其中第/個程序的執(zhí)行速率用人表示,執(zhí)行周

期用力表示,則算術(shù)平均值和可表示為:

1"1"1

Am——Ri———

瞳』幾t=iTi

若用執(zhí)行時間表示性能,貝心

/JJ

如果考慮不同的程序在總的任務(wù)中所占的比例不同,比如程序1占20%,

程序2占40%等,那么可以用權(quán)因子予以表述,其權(quán)分別為0.2和0.4。若用外

表示權(quán)因子,則加權(quán)平均值可表示為:

n"]

Am=£WiRi=£仍—

i=\i=\Ti

(2)調(diào)和平均值

nn

設(shè)調(diào)和平均值用捌表示,則Hm=F一廠=F一■

i=l八'z=l

加權(quán)調(diào)和平均值可表示為:nn

Hm=---------=-------------

"Wi"

y——ynwi

Z=111Z=1

UA

(3)幾何平均值

設(shè)幾何平均值用的表示,則

Gm勺中i

加權(quán)幾何平均值可表示為:

ri1

Gm=TT因嚴(yán)

i=\

采用施1表示計算機(jī)系統(tǒng)的性能時有一個很好的特性:

GQi)yj

在以上三種表示中,由于幾何平均比值與比的幾何平均值相等,

因此有時使用6hi較為方便。

【例1.6】已知A、B、C三臺計表1.4執(zhí)行程序參數(shù)表

算機(jī)執(zhí)行4個程序所用的時間如表1.4計算機(jī)執(zhí)行時間(s)

所示。假設(shè)每一個程序都有108條指程序ABC

令,試計算三臺計算機(jī)執(zhí)行每一個程111020

2100010020

序時的MIPS值,并用加、枷、捌表示

3500100050

每一臺計算機(jī)的性能。

4100800100

in

解:使用公式MIPS=可求出MIPS值,如表L5所示;

/E入1U

/m、Hn、GTI的值如表1.6所示。

表1.5三臺計算機(jī)MIPS速率

表1.6三臺計算機(jī)力LJGm值

MIPS速率‘m、''m、

算機(jī)計算機(jī)

程序、、ABC

ABC平均值

1100105"m25.32.813.25

20.115小0.250.212.11

30.20.12

1.1890.59462.672

410.1251Gm

山1.5計算機(jī)系統(tǒng)結(jié)構(gòu)的

I發(fā)展過程

71.5.1計算機(jī)系統(tǒng)結(jié)構(gòu)的演變過

-1.5.2軟件對計算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展

的影響問答題

/1.5.3應(yīng)用需求對計算機(jī)系統(tǒng)結(jié)構(gòu)

發(fā)展的影響

一154器件對計算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展

的影響

一155算法對計算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展

的影響

1.5.1計算機(jī)系統(tǒng)結(jié)構(gòu)的演變過程

早期的計算機(jī)是以運(yùn)算器為中心的體系結(jié)構(gòu)。以后50多年

逐步演變成以存儲器為中心,并采用流水線、多處理器、多處

理機(jī)的并行處理技術(shù),使其功能得到不斷地提高。

按其規(guī)模,相繼出現(xiàn)了小型機(jī)、中型機(jī)、大型機(jī)、巨型機(jī)、

微型機(jī),以后又演變出超級小型機(jī)、小巨型機(jī)、工程工作站以

及嵌入式微程序控制器等。

按其結(jié)構(gòu),相繼出現(xiàn)了流水線計算機(jī)、向量機(jī)、并行多處

理機(jī)以及非馮.諾依曼的數(shù)據(jù)流機(jī)、歸約機(jī)和人工智能推理機(jī)等;

目前,隨著計算機(jī)網(wǎng)絡(luò)和工業(yè)控制的發(fā)展,各種專用計算

機(jī)層出不窮。

1.以運(yùn)算器為中心的體系結(jié)構(gòu)

早期的計算機(jī)主要是以運(yùn)算器為中心,所有的輸入輸出都通過

運(yùn)算器來進(jìn)行,其示意如圖1.6所示,

廣存儲器

入J1

士>|運(yùn)算器

原始數(shù)據(jù)口設(shè)

設(shè)=>輸出結(jié)果

和運(yùn)算步驟備

T

控制器

圖1.6以運(yùn)算器為中心的體系結(jié)構(gòu)

主要特點(diǎn)如下:

①存儲程序方式;

②單處理器結(jié)構(gòu);

③使用單元定長的一維存儲器空間;

④使用低級的機(jī)器語言,數(shù)據(jù)以二進(jìn)制形式表示;

⑤以運(yùn)算器為中心,所有輸入輸出都要通過運(yùn)算器進(jìn)行。

這種結(jié)構(gòu)有兩個瓶頸。一是物理瓶頸,數(shù)據(jù)只能通過累加器傳送;

二是智能瓶頸,每次只能由控制器依次取出一條指令執(zhí)行。

2.單CPU系統(tǒng)結(jié)構(gòu)的演變

以后計算機(jī)有了很大的發(fā)展,可概括為兩個方面。一種是改進(jìn)

的方法,即保留馮?諾依曼的“存儲程序”思想,在體系結(jié)構(gòu)和實現(xiàn)

方法上進(jìn)行改進(jìn)。另一種是革命的方法,發(fā)展非馮?諾依曼計算機(jī)。

在改進(jìn)馮?諾依曼計算機(jī)的過程中,產(chǎn)生了以存儲器為中心的體

系結(jié)構(gòu),如圖L7所示。改進(jìn)的思想和方法可歸納如下:

運(yùn)算器

設(shè)

設(shè)輸出

T備

控制器

圖L7以存儲器為中心的體系結(jié)構(gòu)

①增加新的數(shù)據(jù)表示形式,比如浮點(diǎn)數(shù)、字符串、十進(jìn)制等,采

用虛擬存儲器,引入堆棧,以提高不同類型數(shù)據(jù)的處理能力,支持高級

語言編程以及其中的過程調(diào)用、遞歸運(yùn)算及表達(dá)式求值等操作。

②采用變址寄存器,提供多種間接尋址方式,以方便對結(jié)構(gòu)化數(shù)

據(jù)對象的訪問與處理。

③大量使用通用寄存器,增設(shè)高速緩沖存儲器Cache,以減少訪問

主存儲器的次數(shù),緩解CPU與主存之間數(shù)據(jù)的頻繁傳送。

④采用自定義數(shù)據(jù),由數(shù)據(jù)標(biāo)識符表明CPU進(jìn)行何種操作,以減少

指令的類型和條數(shù),方便程序設(shè)計。

⑤使程序/數(shù)據(jù)存儲器獨(dú)立設(shè)置,采用多體交叉存儲器和無沖突并

行訪問技術(shù),以提高CPU訪問主存的帶寬與速度。

⑥采用多功能部件,以支持流水線技術(shù),加快指令處理速度,提

高M(jìn)IPS/MFLOPS速率。

3.并行處理技術(shù)

即發(fā)展多處理器和以并行計算為基礎(chǔ)的并行處理技術(shù),從而出現(xiàn)

了陣列機(jī)和多處理機(jī)系統(tǒng);以后,隨著計算機(jī)網(wǎng)絡(luò)的發(fā)展,人們又在

發(fā)展各種適應(yīng)于網(wǎng)絡(luò)環(huán)境的計算機(jī),以便更大范圍地實現(xiàn)并行處理與

資源共享。

①采用多處理器,以支持流水線和并行處理技術(shù),加快指令的

執(zhí)行和數(shù)據(jù)處理的速度,比如產(chǎn)生了針對向量運(yùn)算的向量機(jī)、脈動陣

列機(jī)等。

②采用多個處理機(jī),構(gòu)成并行處理機(jī)系統(tǒng),比如設(shè)置浮點(diǎn)運(yùn)算

協(xié)處理機(jī)、I/O處理機(jī)等,以提高整機(jī)的數(shù)據(jù)處理能力和I/O速率;在

此基礎(chǔ)上,發(fā)展為多個處理機(jī)的并行處理機(jī)系統(tǒng)。

③隨著計算機(jī)網(wǎng)絡(luò)的發(fā)展,各種計算機(jī)都配置了調(diào)制解調(diào)器,

以便聯(lián)網(wǎng),以實現(xiàn)更大范圍的多機(jī)并行處理和資源共享。

4,非馮.諾依曼計算機(jī)

馮.諾依曼計算機(jī)是一種控制驅(qū)動方式。隨著科學(xué)技術(shù)的發(fā)展,

人們也在尋求其它驅(qū)動方式。于是,產(chǎn)生了數(shù)據(jù)驅(qū)動的數(shù)據(jù)流機(jī)、

需求驅(qū)動的歸約機(jī)。

為了使計算機(jī)能夠理解人們的自然語言,具有視覺能力,識另1

景物;能夠自主學(xué)習(xí),并進(jìn)行知識的積累與重構(gòu),于是產(chǎn)生了人工

智能計算機(jī)的研究。

這類計算機(jī)不遵循或者不完全遵循“存儲程序”的思想,因此

稱為非馮.諾依曼計算機(jī)。

1.5.2軟件對計算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展

的影響問答題

在計算機(jī)硬件和軟件的發(fā)展過程中,人們希望原有的軟件能夠繼續(xù)使

用;對于兩種不同的計算機(jī),希望一臺計算機(jī)兼容另一臺計算機(jī)的功能。

于是,導(dǎo)致了模擬與仿真技術(shù)、系列機(jī)、兼容機(jī)以及統(tǒng)一高級語言標(biāo)準(zhǔn)的

出現(xiàn)。這些,都影響到計算機(jī)系統(tǒng)結(jié)構(gòu)的變化與發(fā)展。

1.模擬與仿真

為了在一臺計算機(jī)上實現(xiàn)另一臺計算機(jī)的功能,模擬和仿真技術(shù)成

為主要途徑。

(1)模擬

所謂“模擬”是用軟件的方法在一臺計算機(jī)上實現(xiàn)另一臺計算機(jī)的功

能。比如在A機(jī)上實現(xiàn)B機(jī)的指令系統(tǒng),可用解釋的方法來實現(xiàn)。就是說,

對于B機(jī)上的一條指令,在A機(jī)上用一段程序予以解釋和執(zhí)行。這種用已有

的機(jī)器語言程序進(jìn)行解釋和執(zhí)行,以此實現(xiàn)軟件移植的方法稱為模擬。A

機(jī)通常稱為宿主機(jī);因為B機(jī)實際上不一定存在,因此稱為虛擬機(jī)。

(2)仿真

所謂仿真,是當(dāng)宿主機(jī)采用微程序控制器時,通過宿主機(jī)上的微程

序來實現(xiàn)虛擬機(jī)指令系統(tǒng)中一條指令的功能。也就是說,通過A機(jī)上的一

段微程序,來實現(xiàn)B機(jī)上一條指令的功能。這時,A機(jī)稱為宿主機(jī),B機(jī)稱

為目標(biāo)機(jī)。由于在A機(jī)中,微程序存放在微程序控制器中,是硬件(固件)

的一部分,因此其速度比純軟件的模擬方法快。但是,微程序控制器依

賴于計算機(jī)的系統(tǒng)結(jié)構(gòu),設(shè)計起來較為復(fù)雜,因此常把仿真與模擬方法

結(jié)合起來使用。

2.系列機(jī)與兼容機(jī)

(1)系列機(jī)的概念

系列機(jī)一般是按同一系統(tǒng)結(jié)構(gòu)而生產(chǎn)的一系列計算機(jī)。這些計算機(jī)

在性能參數(shù)上有所不同,但是具有相同的概念性結(jié)構(gòu)和物理屬性,系統(tǒng)

軟件在不同檔次的計算機(jī)上都可以使用。也就是說,在設(shè)計和制造時采

用統(tǒng)一的機(jī)器語言、數(shù)據(jù)表示和概念性結(jié)構(gòu),實現(xiàn)了系統(tǒng)軟件在不同檔

次計算機(jī)上的可移植性。

例如IBM360、370系列機(jī),DEC公司的PDP-11、VAX-11、Intel公司

的80x86、Motor。la公司的680x0以及我國的銀河等系列機(jī)。

■同

在一個系列中,

又有許多不同型號的

計算機(jī),例如,在

IBM370包含有115,

125,135,145,158,

168等型號的計算機(jī),

其性能是由低到高。

但是機(jī)器語言級的程

序員所看到的概念性

結(jié)構(gòu)和功能屬性是一

樣的,如圖1.8所示。

圖1.8IBM370系列機(jī)的概念性結(jié)構(gòu)

都是由中央處理器/主存--通道--設(shè)備控制器--外圍設(shè)備四級組

成。

(2)系列機(jī)的實現(xiàn)

于系列機(jī)的生產(chǎn),要預(yù)先確定一種系統(tǒng)結(jié)構(gòu),即軟件與硬件之間的

界面。然后進(jìn)行系統(tǒng)軟件的設(shè)計和采用不同的組成方式和物理實現(xiàn)的技

術(shù),以生產(chǎn)出

溫馨提示

  • 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

提交評論