計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第二版)尹朝慶主編第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論_第1頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第二版)尹朝慶主編第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論_第2頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第二版)尹朝慶主編第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論_第3頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第二版)尹朝慶主編第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論_第4頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(第二版)尹朝慶主編第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論_第5頁(yè)
已閱讀5頁(yè),還剩93頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1 第第1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 1.1 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念 1.2 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展翻譯計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展翻譯 1.3 計(jì)算機(jī)系統(tǒng)的分類(lèi)計(jì)算機(jī)系統(tǒng)的分類(lèi) 1.4 計(jì)算機(jī)性能的評(píng)價(jià)計(jì)算機(jī)性能的評(píng)價(jià) 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 2 1.1 計(jì)算機(jī)機(jī)系統(tǒng)結(jié)構(gòu)的基本概念計(jì)算機(jī)機(jī)系統(tǒng)結(jié)構(gòu)的基本概念 1.1.1 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu) 計(jì)算機(jī)系統(tǒng)由硬件和軟件組成。從計(jì)算機(jī)語(yǔ)言的角 度,可以把計(jì)算機(jī)系統(tǒng)按功能劃分成多級(jí)層次結(jié)構(gòu),如 圖1.1所示。 這個(gè)層次模型中的每一級(jí)都對(duì)應(yīng)一個(gè)機(jī)器。這里的

2、 “機(jī)器”只對(duì)一定的觀察者而存在,它的功能體現(xiàn)在廣 義語(yǔ)言上,對(duì)該語(yǔ)言提供解釋手段,然后作用在信息處 理或控制對(duì)象上,并從對(duì)象上獲得必要的狀態(tài)信息。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 3 圖1.1 計(jì)算機(jī)系統(tǒng)層次結(jié)構(gòu) 圖1.2一級(jí)機(jī)器的組成 層次模型中的每一 級(jí)所對(duì)應(yīng)的機(jī)器,其組 成如圖1.2所示。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 4 m0 級(jí)為硬聯(lián)邏輯 m1級(jí)是微程序機(jī)器級(jí) m2級(jí)是傳統(tǒng)機(jī)器級(jí) m3級(jí)是操作系統(tǒng)機(jī)器 m4級(jí)是匯編語(yǔ)言機(jī)器 m5級(jí)是高級(jí)語(yǔ)言機(jī)器 m6級(jí)是應(yīng)用語(yǔ)言機(jī)器 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 5 某級(jí)機(jī)器能將

3、本級(jí)機(jī)器的語(yǔ)言轉(zhuǎn)換為下級(jí)機(jī)器 能夠識(shí)別和處理的形式,就完成了本級(jí)機(jī)器的實(shí)現(xiàn)。 層次結(jié)構(gòu)中的m0級(jí)機(jī)器為硬聯(lián)邏輯,m1級(jí)機(jī)器由 硬聯(lián)邏輯實(shí)現(xiàn),m2級(jí)機(jī)器由微程序(固件)實(shí)現(xiàn), m3級(jí)至m6級(jí)主要由軟件實(shí)現(xiàn)。我們將主要由軟件 實(shí)現(xiàn)的機(jī)器稱(chēng)為虛擬機(jī)器,以區(qū)別由硬件或固件實(shí) 現(xiàn)的實(shí)際機(jī)器。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 6 各虛擬機(jī)器級(jí)的實(shí)現(xiàn)有兩種主要的方法,即翻譯和 解釋?zhuān)蛘呤沁@兩者的結(jié)合。 翻譯:是用轉(zhuǎn)換程序?qū)1級(jí)程序全部變換成n級(jí) 程序后,再去執(zhí)行新產(chǎn)生的n級(jí)程序,執(zhí)行過(guò)程中n1 級(jí)程序不再被訪問(wèn)。 解釋?zhuān)菏敲慨?dāng)一條n1級(jí)指令被譯碼后,就在n級(jí) 機(jī)器級(jí)上用它的一串語(yǔ)句

4、或指令來(lái)仿真n1級(jí)機(jī)器級(jí)上 的一條語(yǔ)句或指令的功能,依此重復(fù),通過(guò)對(duì)高一級(jí)程 序中的每條語(yǔ)句或指令逐條解釋來(lái)實(shí)現(xiàn)的技術(shù)。在這個(gè) 過(guò)程中不產(chǎn)生翻譯出來(lái)的程序。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 7 軟件和硬件在邏輯功能上是等效的。從原理上同 一邏輯功能既能用軟件實(shí)現(xiàn),也可以用硬件或固件實(shí) 現(xiàn),只是性能、價(jià)格以及實(shí)現(xiàn)的難易程度不同而已。 一般來(lái)說(shuō),硬件實(shí)現(xiàn)的特點(diǎn)是速度快,但靈活性較差, 增加硬件成本;軟件實(shí)現(xiàn)的特點(diǎn)是靈活性較好,硬件 成本低,但實(shí)現(xiàn)速度慢。計(jì)算機(jī)統(tǒng)采用何種實(shí)現(xiàn)方式, 要從效率、速度、價(jià)格、資源狀況、可靠性等多方面 因素全盤(pán)考慮,對(duì)軟件、硬件及固件的取舍進(jìn)行綜合

5、平衡,使計(jì)算機(jī)系統(tǒng)達(dá)到較高的性能價(jià)格比。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 8 1.1.2 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、組成與實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、組成與實(shí)現(xiàn) 1. 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu) 所謂“系統(tǒng)結(jié)構(gòu)”是指計(jì)算機(jī)系統(tǒng)中各級(jí)之間界面 的定義及其上、下級(jí)的功能分配。本課程中計(jì)算機(jī)系統(tǒng)結(jié) 構(gòu)研究的是對(duì)傳統(tǒng)機(jī)器級(jí)界面的確定以及軟、硬件之間的 功能分配,即機(jī)器語(yǔ)言程序設(shè)計(jì)者或編譯程序設(shè)計(jì)者所看 到的計(jì)算機(jī)物理系統(tǒng)的抽象或定義。 在一個(gè)計(jì)算機(jī)系統(tǒng)中,低層機(jī)器的概念性結(jié)構(gòu)和功能 特性對(duì)高層機(jī)器的程序設(shè)計(jì)者往往是透明的。在計(jì)算機(jī)技 術(shù)中,對(duì)這種本來(lái)存在的事物或?qū)傩?,但從某種角度看卻 好象不存在的概念稱(chēng)為透明

6、性 。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 9 對(duì)于目前的通用型機(jī)器,計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)研究的 內(nèi)容一般包括: (1)數(shù)據(jù)表示 (2)尋址方式 (3)寄存器組織 (4)指令系統(tǒng) (5)存儲(chǔ)系統(tǒng) (6)中斷機(jī)構(gòu) (7)機(jī)器工作狀態(tài) (8)i/o系統(tǒng) (9)信息保護(hù) 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 10 2. 計(jì)算機(jī)組成 計(jì)算機(jī)組成是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯實(shí)現(xiàn),包括 機(jī)器內(nèi)部的數(shù)據(jù)流和控制流的組成以及邏輯設(shè)計(jì)等。 計(jì)算機(jī)組成的任務(wù)是在計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)確定分配 給硬件系統(tǒng)的功能及其概念結(jié)構(gòu)之后,研究各組成部 分的內(nèi)部構(gòu)造和相互之間的聯(lián)系,以實(shí)現(xiàn)機(jī)器指令級(jí) 要求的各種功

7、能和性能。這種相互聯(lián)系包括各功能部 件的配置、相互連接和相互作用。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 11 計(jì)算機(jī)組成的設(shè)計(jì)是按希望達(dá)到的性能價(jià)格 比,最佳、最合理地把各種設(shè)備和部件組成計(jì)算 機(jī),以實(shí)現(xiàn)所確定的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)。對(duì)傳統(tǒng)機(jī) 器程序員來(lái)說(shuō),計(jì)算機(jī)組成的設(shè)計(jì)內(nèi)容一般是透 明的。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 12 計(jì)算器組成設(shè)計(jì)要確定的內(nèi)容應(yīng)包括: (1)數(shù)據(jù)通路的寬度 (2)專(zhuān)用部件的設(shè)置 (3)各種操作對(duì)部件的共享程度 (4)功能部件的并行度 (5)控制機(jī)構(gòu)的組成方式 (6)緩沖和排隊(duì)技術(shù) (7)預(yù)估、預(yù)判技術(shù) (8)可靠性技術(shù) 第第1

8、1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 13 3. 計(jì)算機(jī)實(shí)現(xiàn) 計(jì)算機(jī)實(shí)現(xiàn)是計(jì)算機(jī)組成的物理實(shí)現(xiàn),包括處 理機(jī)、主機(jī)等部件的物理結(jié)構(gòu),器件的集成度和速 度,器件、模塊、插件、底板的劃分與連接,專(zhuān)用 器件的設(shè)計(jì),微組裝技術(shù),信號(hào)傳輸,電源、冷卻 及整機(jī)裝配技術(shù)等。它著眼于器件技術(shù)和微組裝技 術(shù),其中,器件技術(shù)在實(shí)現(xiàn)技術(shù)中起著主導(dǎo)作用。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 14 4. 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、組成和實(shí)現(xiàn)三者的關(guān)系 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、計(jì)算機(jī)組成和計(jì)算機(jī)實(shí)現(xiàn)是 三個(gè)互不相同的概念。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)是計(jì)算機(jī)系 統(tǒng)的軟、硬件的界面;計(jì)算機(jī)組成是計(jì)算機(jī)系統(tǒng)結(jié) 構(gòu)的邏輯實(shí)現(xiàn);計(jì)算機(jī)

9、實(shí)現(xiàn)是計(jì)算機(jī)組成的物理實(shí) 現(xiàn)。它們各自包含不同的內(nèi)容,但又相互聯(lián)系且相 互影響。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 15 具有相同系統(tǒng)結(jié)構(gòu)的計(jì)算機(jī)可因性?xún)r(jià)比要求不同而采用不 同的組成技術(shù)。 而計(jì)算機(jī)組成也會(huì)影響計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)。 一種計(jì)算機(jī)組成也可以采用多種不同的計(jì)算機(jī)實(shí)現(xiàn)。 計(jì)算機(jī)實(shí)現(xiàn)是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)和計(jì)算機(jī)組成的基礎(chǔ)。而計(jì) 算機(jī)組成也會(huì)影響計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)。 系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)必須結(jié)合應(yīng)用考慮,為軟件和算法的實(shí)現(xiàn) 提供更多更好的支持,還應(yīng)考慮減少對(duì)各種組成及實(shí)現(xiàn)技術(shù)的 使用限制。 系統(tǒng)結(jié)構(gòu)、組成和實(shí)現(xiàn)所包含的具體內(nèi)容在不同時(shí)期或隨 不同的計(jì)算機(jī)系統(tǒng)會(huì)有所變化。 第第1 1章章

10、計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 16 1.1.3 計(jì)算機(jī)系統(tǒng)的特性計(jì)算機(jī)系統(tǒng)的特性 計(jì)算機(jī)等級(jí) 計(jì)算機(jī)系統(tǒng)通常被分為巨型、大型、中型、小型、 微型等若干等級(jí)。但隨著技術(shù)進(jìn)步,各等級(jí)的計(jì)算機(jī) 性能指標(biāo)都不斷提高,如果按性能指標(biāo)來(lái)劃分計(jì)算機(jī) 等級(jí),那么一臺(tái)計(jì)算機(jī)的等級(jí)將隨時(shí)間而下移。各型 機(jī)器的性能、價(jià)格隨時(shí)間變化的趨勢(shì)大致可用圖1.3 示意說(shuō)明,其中虛線(xiàn)稱(chēng)為等性能線(xiàn)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 17 圖1.3 計(jì)算機(jī)性能下移示意圖 計(jì)算機(jī)工業(yè)在處理 性能和價(jià)格的關(guān)系上可 以有兩種途徑:一是維 持價(jià)格不變,充分利用 器件技術(shù)等的進(jìn)展不斷 提高機(jī)器的性能,即沿 圖中

11、的水平實(shí)線(xiàn)發(fā)展; 另一是在性能基本不變 的情況下,利用器件技 術(shù)等的進(jìn)展不斷降低機(jī) 器的價(jià)格,即沿圖中虛 線(xiàn)往下發(fā)展。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 18 基于這種思想,不同等級(jí)的計(jì)算機(jī)可采用不同的 發(fā)展策略: 在同等級(jí)范圍內(nèi)以合理的價(jià)格獲得盡可能好的 性能,逐漸向高檔機(jī)發(fā)展,稱(chēng)為最佳性能價(jià)格比設(shè)計(jì)。 維持一定適用的基本性能而爭(zhēng)取最低價(jià)格,稱(chēng) 為最低價(jià)格設(shè)計(jì)。 以獲取最高性能為主要目標(biāo)而不惜增加價(jià)格, 稱(chēng)為最高性能設(shè)計(jì)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 19 從系統(tǒng)結(jié)構(gòu)的觀點(diǎn)來(lái)看,各型計(jì)算機(jī)的性能隨 時(shí)間下移,實(shí)質(zhì)上是在低檔(型)機(jī)上引用甚至照 搬

12、高檔(型)機(jī)的系統(tǒng)結(jié)構(gòu)和組成。這種低檔機(jī)承 襲高檔機(jī)系統(tǒng)結(jié)構(gòu)的狀況正符合小型機(jī)和微型機(jī)的 設(shè)計(jì)原則,即充分發(fā)揮器件技術(shù)的進(jìn)步,以盡可能 低的價(jià)格在低檔機(jī)上實(shí)現(xiàn)高檔機(jī)已有的結(jié)構(gòu)和組成, 而不是花很大力量專(zhuān)門(mén)去研究和采用新的系統(tǒng)結(jié)構(gòu) 和組成技術(shù)。這將有利于計(jì)算機(jī)工業(yè)的快速發(fā)展和 計(jì)算機(jī)應(yīng)用的廣泛普及。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 20 . 系列計(jì)算機(jī) 所謂系列機(jī)的概念,是在軟、硬件界面上設(shè)計(jì)好 一種系統(tǒng)結(jié)構(gòu),然后軟件設(shè)計(jì)者按此系統(tǒng)結(jié)構(gòu)設(shè)計(jì)系 統(tǒng)的軟件;硬件設(shè)計(jì)者根據(jù)機(jī)器速度、性能、價(jià)格的 不同,選擇不同的器件,采用不同的硬件技術(shù)和組成 與實(shí)現(xiàn)技術(shù),研制并提供不同檔次的機(jī)器

13、。在系列機(jī) 上必須保證用戶(hù)看到一致的機(jī)器屬性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 21 系列機(jī)之間必須保持軟件兼容。這是指同一個(gè)軟 件(目標(biāo)程序)可以不加修改地運(yùn)行于系統(tǒng)結(jié)構(gòu)相同 的各檔次機(jī)器,而且所得結(jié)果一致。軟件兼容包括向 上兼容和向下兼容。向上兼容是指在低檔機(jī)器上編制 的軟件,不加修改就可以運(yùn)行于高檔機(jī)器上;向下兼 容則相反。軟件兼容還有向前兼容和向后兼容之分。 向后兼容是指在某個(gè)時(shí)期投入市場(chǎng)的該型號(hào)機(jī)器上編 制的軟件,不加修改就可以運(yùn)行于在它之后投入市場(chǎng) 的機(jī)器上;向前兼容則相反。對(duì)系列機(jī)而言,必須保 證做到軟件向后兼容,力爭(zhēng)做到軟件向上兼容。 第第1 1章章 計(jì)算

14、機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 22 為了減少編制軟件的工作量,降低軟件開(kāi)發(fā)成本, 延長(zhǎng)成熟軟件的生命周期,應(yīng)在研究新的系統(tǒng)結(jié)構(gòu)時(shí), 解決好軟件的可移植性問(wèn)題。所謂軟件的可移植性, 是指軟件不用修改或只需少量加工就能由一臺(tái)機(jī)器搬 到另一臺(tái)機(jī)器上運(yùn)行,即同一軟件用于不同的環(huán)境。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 23 系列機(jī)為了保證軟件兼容,要求系統(tǒng)結(jié)構(gòu)的一致, 這成為妨礙計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展的重要因素。若允許 系列機(jī)中后面推出的各檔機(jī)的系統(tǒng)結(jié)構(gòu)有所發(fā)展和變 化。則這種改變只能是為提高機(jī)器總的性能所作的必 要擴(kuò)充,且主要是為改進(jìn)系統(tǒng)軟件的性能來(lái)修改系統(tǒng) 軟件,盡可能不要影響高

15、級(jí)語(yǔ)言應(yīng)用軟件的兼容。因 此,可以對(duì)系列機(jī)的軟件向下兼容和向前兼容不作要 求,向上兼容在某種情況下也可能做不到,但向后兼 容是肯定要做到的。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 24 把不同公司廠家生產(chǎn)的具有相同系統(tǒng)結(jié)構(gòu)的計(jì) 算機(jī)稱(chēng)為兼容機(jī),它的思想與系列機(jī)的思想是一致 的。兼容機(jī)還可以對(duì)原有的系統(tǒng)結(jié)構(gòu)進(jìn)行某種擴(kuò)充, 使之具有更強(qiáng)的功能。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 25 . 模擬與仿真 為了實(shí)現(xiàn)軟件在不同系統(tǒng)結(jié)構(gòu)的機(jī)器之間移植, 就必須做到能在一種機(jī)器的系統(tǒng)結(jié)構(gòu)上實(shí)現(xiàn)另一種 機(jī)器的系統(tǒng)結(jié)構(gòu)。從計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的層次模型來(lái) 看,就是要在一種機(jī)器的系統(tǒng)結(jié)

16、構(gòu)上實(shí)現(xiàn)另一種機(jī) 器的指令系統(tǒng)。一般可采用模擬方法或仿真方法。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 26 在機(jī)器上用虛擬機(jī)的概念實(shí)現(xiàn)機(jī)器的指令 系統(tǒng),即由機(jī)器的一段機(jī)器語(yǔ)言程序去解釋執(zhí)行 機(jī)器的每一條機(jī)器指令,從而可使機(jī)器的程序 能在機(jī)器上運(yùn)行,如圖1.4所示。這種用機(jī)器語(yǔ)言 程序解釋實(shí)現(xiàn)軟件移植的方法稱(chēng)為模擬被模擬的 機(jī)器稱(chēng)為虛擬機(jī)a機(jī)器稱(chēng)為宿主機(jī)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 27 圖1.4 用模擬方法實(shí)現(xiàn)軟件的移植 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 28 如果機(jī)器采用微程序控制,則直接用機(jī)器 的微程序去解釋機(jī)器的機(jī)器指令就會(huì)

17、加快解釋過(guò) 程,如圖1.5所示。這種用微程序直接解釋另一種機(jī) 器指令系統(tǒng)實(shí)現(xiàn)軟件移植的方法稱(chēng)為仿真進(jìn)行仿真 工作的機(jī)器稱(chēng)為宿主機(jī),被仿真的機(jī)器稱(chēng)為目 標(biāo)機(jī)為仿真所編寫(xiě)的解釋微程序稱(chēng)為仿真微程序。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 29 圖1.5 用仿真方法實(shí)現(xiàn)軟件的移植 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 30 為了使虛擬機(jī)的應(yīng)用軟件能在宿主機(jī)上運(yùn)行,除 了模擬虛擬機(jī)的機(jī)器語(yǔ)言外,還得模擬其存儲(chǔ)體系、 i/o系統(tǒng)、控制臺(tái)的操作,以及形成虛擬機(jī)的操作系 統(tǒng)。即把虛擬機(jī)操作系統(tǒng)作為宿主機(jī)的應(yīng)用程序來(lái)看 待。所有為模擬所編制的解釋程序統(tǒng)稱(chēng)為模擬程序。 第第1 1

18、章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 31 用仿真方法可以提高被移植軟件的運(yùn)行速度, 但由于微程序機(jī)器級(jí)結(jié)構(gòu)深度依賴(lài)于機(jī)器的系統(tǒng)結(jié) 構(gòu),所以當(dāng)兩種機(jī)器結(jié)構(gòu)差別較大時(shí),就很難依靠 仿真來(lái)實(shí)現(xiàn)軟件移植,特別是當(dāng)其i/o系統(tǒng)結(jié)構(gòu)差別 較大時(shí)更是如此。 在實(shí)際應(yīng)用中,不同系列機(jī)之間的軟件移植往 往通過(guò)仿真和模擬兩種方法并用來(lái)實(shí)現(xiàn)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 32 1.2 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展 研究計(jì)算機(jī)體系結(jié)構(gòu)的目的是提高計(jì)算機(jī)系統(tǒng)的 性能。開(kāi)發(fā)計(jì)算機(jī)系統(tǒng)的并行性,是計(jì)算機(jī)體系結(jié) 構(gòu)的重要研究?jī)?nèi)容之一。本節(jié)首先對(duì)馮諾依曼系統(tǒng) 結(jié)構(gòu)進(jìn)

19、行分析,然后敘述體系結(jié)構(gòu)中的并行性概念, 再?gòu)膯螜C(jī)系統(tǒng)和多機(jī)系統(tǒng)兩個(gè)方面對(duì)并行性的發(fā)展 進(jìn)行歸納,得到對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性發(fā)展全 面的了解和認(rèn)識(shí)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 33 1.2.1 馮馮諾依曼型計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)諾依曼型計(jì)算機(jī)系統(tǒng)結(jié)構(gòu) 馮諾依曼型計(jì)算機(jī)由運(yùn)算器、控制器、存儲(chǔ)器、 輸入設(shè)備和輸出設(shè)備個(gè)部分組成。其在結(jié)構(gòu)上有以 下特點(diǎn): 機(jī)器以運(yùn)算器為中心,各部件的操作及相互之 間的聯(lián)系都由控制器集中控制。 采用存儲(chǔ)程序的思想。將存儲(chǔ)器中的指令和數(shù) 據(jù)同等對(duì)待,因此,由指令組成的程序可以在運(yùn)行過(guò) 程中被修改。 存儲(chǔ)器按地址訪問(wèn)。它是一個(gè)順序、線(xiàn)性編址 的一維空

20、間,每個(gè)存儲(chǔ)單元的位數(shù)是固定的。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 34 由指令計(jì)數(shù)器指明要執(zhí)行的指令在存儲(chǔ)器中 的地址,可以改變指令計(jì)數(shù)器的值,以改變指令執(zhí) 行順序。 指令由操作碼和操作數(shù)地址碼組成,操作數(shù) 的數(shù)據(jù)類(lèi)型由操作碼指明,操作數(shù)不能判定它是何 種數(shù)據(jù)類(lèi)型。 數(shù)據(jù)以二進(jìn)制編碼,并采用二進(jìn)制運(yùn)算。 軟件與硬件完全分開(kāi),硬件邏輯結(jié)構(gòu)固定, 其功能是不變的,依靠編制軟件來(lái)適應(yīng)不同的應(yīng)用 需要。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 35 人們已逐漸認(rèn)識(shí)到早期計(jì)算機(jī)所采用的馮諾依 曼型結(jié)構(gòu)存在問(wèn)題,其主要問(wèn)題和改進(jìn)發(fā)展的主要表 現(xiàn)有: 由于機(jī)器以運(yùn)算器為中

21、心,使得低速的輸入/ 輸出和高速的運(yùn)算必須互相等待、串行進(jìn)行。而所有 部件的操作由控制器集中控制,將使控制器的負(fù)擔(dān)過(guò) 重,從而嚴(yán)重影響機(jī)器速度和設(shè)備利用率的提高。后 將機(jī)器的結(jié)構(gòu)改為以主存為中心,讓系統(tǒng)的輸入/輸 出與cpu的操作并行,多種輸入和輸出并行,并進(jìn)一 步發(fā)展為分布處理和并行處理。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 36 存儲(chǔ)程序和程序控制的思想,使機(jī)器各部分 的操作是在指令順序執(zhí)行的控制下完成的。難以最 大限度地發(fā)揮系統(tǒng)的并行處理能力,影響計(jì)算機(jī)性 能的提高。故人們發(fā)展了數(shù)據(jù)流計(jì)算機(jī)。在數(shù)據(jù)流 計(jì)算機(jī)中,只要指令所需要的操作數(shù)都準(zhǔn)備好了, 這一條或一批指令就馬上

22、可被激發(fā)執(zhí)行,完全不需 要程序計(jì)數(shù)器控制,指令的執(zhí)行與指令在程序中出 現(xiàn)的次序完全無(wú)關(guān)。數(shù)據(jù)流計(jì)算機(jī)能最大限度地滿(mǎn) 足程序的并行性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 37 指令和數(shù)據(jù)混存于同一存儲(chǔ)器中,可因共用一套存儲(chǔ) 器外圍電路而節(jié)省硬件,并因?qū)χ噶詈蛿?shù)據(jù)不加區(qū)別同等對(duì) 待而簡(jiǎn)化了存儲(chǔ)管理,但由于程序執(zhí)行過(guò)程中,指令可像操 作數(shù)一樣被修改,因此不利于程序調(diào)試和排錯(cuò),不利于實(shí)現(xiàn) 程序的可再入性和程序的遞歸調(diào)用,不利于指令和數(shù)據(jù)的并 行存取以及在組成上采用重疊、流水方式來(lái)提高速度。所以, 絕大多數(shù)計(jì)算機(jī)已改為指令在執(zhí)行過(guò)程中不準(zhǔn)修改的工作方 式,有的機(jī)器還將指令和數(shù)據(jù)分別存

23、放在兩個(gè)獨(dú)立編址且可 以同時(shí)被訪問(wèn)的不同存儲(chǔ)器中。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 38 存儲(chǔ)器構(gòu)成按地址訪問(wèn)的順序、一維線(xiàn)性空間, 雖然有結(jié)構(gòu)簡(jiǎn)單、價(jià)格便宜、訪問(wèn)速度快等優(yōu)點(diǎn),但 存儲(chǔ)器的一維線(xiàn)性空間表示與應(yīng)用中需要的棧、樹(shù)、 圖、多維數(shù)組等非線(xiàn)性、多維、離散的數(shù)據(jù)結(jié)構(gòu)相矛 盾。經(jīng)軟件變換的方法使軟件復(fù)雜,效率降低,且不 適合對(duì)大量數(shù)據(jù)的快速并行查找。改進(jìn)技術(shù)包括使存 儲(chǔ)器同時(shí)具有多種編址方式;采用虛擬存儲(chǔ)技術(shù);構(gòu) 成多體交叉編址的并行存儲(chǔ)器;采用相聯(lián)存儲(chǔ)器實(shí)現(xiàn) 高速相聯(lián)查找;采用增設(shè)通用寄存器來(lái)減少訪存的次 數(shù);在cpu和主存之間設(shè)置高速緩沖存儲(chǔ)器;使計(jì)算 機(jī)具有高級(jí)

24、尋址能力的數(shù)據(jù)表示等等。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 39 為了進(jìn)一步開(kāi)發(fā)利用求解問(wèn)題和程序隱含的 并行性,提高運(yùn)行的速度和效率,將原來(lái)cpu的順 序執(zhí)行組成方式改為先行控制、重疊、流水等組成 方式。同時(shí)開(kāi)發(fā)指令內(nèi)、指令間、任務(wù)間、作業(yè)間 等不同級(jí)別上的并行性,出現(xiàn)了向量處理機(jī)、并行 處理機(jī)、多處理機(jī)、分布處理系統(tǒng)等計(jì)算機(jī)系統(tǒng)結(jié) 構(gòu)。進(jìn)一步發(fā)展以非控制流方式驅(qū)動(dòng)的數(shù)據(jù)流計(jì)算 機(jī),并研究開(kāi)發(fā)更為復(fù)雜的并行算法。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 40 機(jī)器指令中的操作數(shù)不表示本身的數(shù)據(jù)類(lèi)型, 而由操作碼指出,因此每增加一種操作數(shù)類(lèi)型,就 要增加一組處

25、理這種類(lèi)型操作數(shù)的指令,這將導(dǎo)致 指令系統(tǒng)日益龐大復(fù)雜。在高級(jí)語(yǔ)言中操作符與數(shù) 據(jù)類(lèi)型無(wú)關(guān),操作數(shù)的類(lèi)型是由數(shù)據(jù)類(lèi)型說(shuō)明語(yǔ)句 說(shuō)明的。機(jī)器語(yǔ)言與高級(jí)語(yǔ)言之間存在的這種語(yǔ)義 差別通過(guò)編譯程序來(lái)彌補(bǔ),加重了編譯的負(fù)擔(dān),增 大了輔助開(kāi)銷(xiāo)。為此,人們?yōu)橛?jì)算機(jī)系統(tǒng)增設(shè)了許 多高級(jí)數(shù)據(jù)表示,使指令具有對(duì)多種數(shù)據(jù)類(lèi)型操作 的通用性從而簡(jiǎn)化機(jī)器指令系統(tǒng)和編譯。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 41 軟件與硬件截然分開(kāi),硬件結(jié)構(gòu)完全固定, 會(huì)導(dǎo)致無(wú)法更合理地進(jìn)行軟硬功能分配,難以?xún)?yōu)化 系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)。當(dāng)求解的問(wèn)題和應(yīng)用要求變化時(shí), 會(huì)使機(jī)器性能價(jià)格比明顯下降?,F(xiàn)在特別強(qiáng)調(diào)軟硬 結(jié)合,比如采

26、用可以靈活地選擇和改變指令系統(tǒng)和 結(jié)構(gòu)的動(dòng)態(tài)自適應(yīng)機(jī)器。要求研制出智能計(jì)算機(jī)系 統(tǒng)結(jié)構(gòu)來(lái)有效地支持知識(shí)和信息處理,對(duì)知識(shí)進(jìn)行 邏輯推理,特別是能利用經(jīng)驗(yàn)性知識(shí)對(duì)不完全確定 的事實(shí)進(jìn)行非精確性的推理。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 42 1.2.2 并行性概念并行性概念 所謂并行性是指在同一時(shí)刻或是同一時(shí)間間隔 內(nèi)完成兩種或兩種以上性質(zhì)相同或不相同的工作。只 要時(shí)間上是相互重疊,就存在并行性。嚴(yán)格來(lái)講,把 兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生的并行性叫做同時(shí)性 而把兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生的并行性 叫做并發(fā)性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 43

27、 所謂并行處理,是指一種開(kāi)發(fā)計(jì)算過(guò)程中存在 的并發(fā)事件的信息處理方式。在進(jìn)行并行處理時(shí), 每次處理的規(guī)模大小可用并行性顆粒度來(lái)表示。 顆粒度用于衡量軟件進(jìn)程所含計(jì)算量的大小, 用程序段中指令的條數(shù)來(lái)表示。顆粒度可分為細(xì)粒 度、中粒度和粗粒度三種,若程序段中指令條數(shù)小 于500條,則稱(chēng)為細(xì)粒度,5002000條指令之間則 稱(chēng)為中粒度,大于2000條則稱(chēng)為粗粒度。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 44 假定系統(tǒng)中共有n個(gè)處理器,顆粒度大小g還可用以下公式 來(lái)表示: 式中,tw表示所有處理器工作負(fù)載的總和,即 這里的工作負(fù)載實(shí)際上就是進(jìn)行計(jì)算的時(shí)間;tc表示所有處理器 的通信開(kāi)

28、銷(xiāo)的總和,即 這里的通信開(kāi)銷(xiāo)實(shí)際上就是進(jìn)行通信的時(shí)間。 t t g c w t t g c w t t c w g n i wiwtt 1 n i cictt 1 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 45 計(jì)算機(jī)系統(tǒng)中的并行性有不同的等級(jí)。根據(jù)顆粒 度的不同來(lái)觀察程序的執(zhí)行過(guò)程。并行性等級(jí)從低到 高可分為: ()指令內(nèi)部并行 ()指令級(jí)并行(ilp) ()任務(wù)級(jí)或過(guò)程級(jí)并行 ()作業(yè)或程序級(jí)并行 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 46 從處理數(shù)據(jù)的角度,并行性等級(jí)從低到高可 以分為: ()字串位串 ()字串位并 ()字并位串 ()全并行 第第1 1章章 計(jì)

29、算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 47 并行處理是指在這些層次的一級(jí)或多級(jí)上的 并行性開(kāi)發(fā)。層次越高的并行處理粒度就越粗, 而低層上的并行處理粒度就較細(xì)。粗粒度并行性 主要開(kāi)發(fā)功能并行性。而細(xì)粒度并行性主要開(kāi)發(fā) 的是數(shù)據(jù)并行性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 48 在一個(gè)計(jì)算機(jī)系統(tǒng)中,可同時(shí)采取多種并行性 措施。既可以有執(zhí)行程序方面的并行性,又可以有 處理數(shù)據(jù)方面的并行性。當(dāng)并行性提高到一定級(jí)別 時(shí)則稱(chēng)之為進(jìn)入并行處理領(lǐng)域。如執(zhí)行程序的并行 性達(dá)到任務(wù)或過(guò)程級(jí),或處理數(shù)據(jù)的并行性達(dá)到字 并位串一級(jí),即可認(rèn)為進(jìn)入并行處理領(lǐng)域。并行處 理是硬件、系統(tǒng)結(jié)構(gòu)、軟件、算法、語(yǔ)言

30、等多方面 綜合研究的領(lǐng)域。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 49 1.2.3 提高并行性的技術(shù)途徑提高并行性的技術(shù)途徑 提高計(jì)算機(jī)系統(tǒng)并行性的措施很多,但其基本思 想均可納入下列三種技術(shù)途徑: 1. 時(shí)間重疊 在并行性概念中引入時(shí)間因素,即多 個(gè)處理過(guò)程在時(shí)間上相互錯(cuò)開(kāi),輪流重疊地使用同一 套硬件設(shè)備的各個(gè)部分,以加快硬件周轉(zhuǎn)來(lái)提高處理 速度。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 50 2. 資源重復(fù) 在并行性概念中引入空間因素,是 根據(jù)“以數(shù)量取勝”的原則,通過(guò)重復(fù)設(shè)置資源, 尤其是硬件資源,大幅度提高計(jì)算機(jī)系統(tǒng)的性能。 3. 資源共享 這是一種軟件方

31、法,它使多個(gè)任務(wù) 按一定時(shí)間順序輪流使用同一套資源。資源共享既 降低了成本,以提高系統(tǒng)資源利用率,也可以相應(yīng) 提高整個(gè)系統(tǒng)的性能。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 51 計(jì)算機(jī)結(jié)構(gòu) 設(shè)計(jì)中并行性技 術(shù)的應(yīng)用使計(jì)算 機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展 形成不同類(lèi)型的 多處理機(jī)系統(tǒng)。 并行處理的發(fā)展 過(guò)程可從單處理 機(jī)系統(tǒng)和多計(jì)算 機(jī)系統(tǒng)兩個(gè)方向 來(lái)實(shí)現(xiàn) 。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 52 單機(jī)系統(tǒng)中并行性的發(fā)展單機(jī)系統(tǒng)中并行性的發(fā)展 高性能單處理機(jī)的發(fā)展過(guò)程中,起著主導(dǎo)作用的技術(shù)途徑 是時(shí)間重疊,實(shí)現(xiàn)的基礎(chǔ)是部件功能專(zhuān)用化思想。即把一種工 作按功能分割為若干相互聯(lián)系

32、的部分,把每一部分指定給專(zhuān)門(mén) 的部件完成,然后按時(shí)間重疊原則把各部分執(zhí)行過(guò)程在時(shí)間上 重疊起來(lái),讓所有部件依次分工完成一組同樣的工作。這可使 多個(gè)處理過(guò)程在時(shí)間上相互錯(cuò)開(kāi),輪流重疊地使用同一套硬件 設(shè)備的各個(gè)部分。在處理機(jī)內(nèi)部可以同時(shí)處理多條指令,從而 提高處理機(jī)的速度。時(shí)間重疊開(kāi)發(fā)的是并行性中的并發(fā)行。圖 1.7所示為指令順序執(zhí)行和流水執(zhí)行的情況。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 53 圖1.7 指令順序執(zhí)行和流水執(zhí)行 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 54 按時(shí)間重疊的技術(shù)途徑進(jìn)一步發(fā)展到采用專(zhuān)門(mén) 的流水線(xiàn)處理機(jī)時(shí),就進(jìn)入了并行處理的領(lǐng)域。還 可以

33、進(jìn)一步發(fā)展到處理機(jī)一級(jí),形成以任務(wù)重疊為 特征的宏流水線(xiàn),就由單處理機(jī)發(fā)展到了多處理機(jī) 系統(tǒng)。構(gòu)成由多個(gè)不同類(lèi)型,至少是擔(dān)負(fù)不同功能 的處理機(jī)組成的非對(duì)稱(chēng)型或異構(gòu)型多處理機(jī)系統(tǒng)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 55 資源重復(fù)的途徑來(lái)看,單處理機(jī)向高性能發(fā)展, 最初是將按位串行改為按字并行,后來(lái)在非流水線(xiàn)處 理機(jī)或流水線(xiàn)處理機(jī)中,發(fā)展了多操作部件和多體存 儲(chǔ)器。進(jìn)一步可以重復(fù)設(shè)置多個(gè)相同的處理單元,在 同一個(gè)控制器指揮下,按照同一條指令的要求對(duì)向量 的各元素同時(shí)進(jìn)行操作,這就是所謂的并行處理機(jī)。 從指令和數(shù)據(jù)處理的角度看,它用一條指令處理多個(gè) 數(shù)據(jù),屬于按單指令流多數(shù)據(jù)流

34、(simd)方式工作的 多處理器系統(tǒng)。使處理機(jī)進(jìn)入了并行處理領(lǐng)域。資源 重復(fù)開(kāi)發(fā)的是并行性中的同時(shí)性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 56 如果提高并行性,使其達(dá)到數(shù)據(jù)集級(jí)并行,多 個(gè)處理單元同時(shí)處理一組數(shù)據(jù),就構(gòu)成陣列處理機(jī)。 進(jìn)一步提高并行性,使其達(dá)到任務(wù)級(jí)并行,則每個(gè) 處理單元都有自己的控制器,能獨(dú)立地解釋指令而 成為獨(dú)立處理機(jī),這就進(jìn)入多處理機(jī)范疇,即同時(shí) 有多條指令處理多個(gè)數(shù)據(jù)。這就進(jìn)入了并行處理領(lǐng) 域。由于此多處理機(jī)中的每個(gè)處理(器)機(jī)都是同 類(lèi)型的,且完成同樣的功能,所以構(gòu)成的是一種對(duì) 稱(chēng)型或同構(gòu)型多處理機(jī)系統(tǒng) 。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)

35、系統(tǒng)結(jié)構(gòu)導(dǎo)論 57 同構(gòu)型多處理機(jī)系統(tǒng)也可以是基于處理機(jī)一 級(jí)冗余的容錯(cuò)多處理機(jī),讓多個(gè)處理機(jī)中的一部 分作為備用處理機(jī)以隨時(shí)頂替出故障的工作處理 機(jī),從而提高系統(tǒng)工作的可靠性。還可以進(jìn)一步 發(fā)展成為一種可變結(jié)構(gòu)的系統(tǒng)或可重構(gòu)系統(tǒng)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 58 從資源共享的途徑來(lái)看,最初在單處理機(jī)上 采用多道程序和分時(shí)操作,形成所謂虛擬機(jī)的概 念。類(lèi)似的思想發(fā)展了虛擬存儲(chǔ)器、虛擬處理機(jī)。 隨著遠(yuǎn)程終端、計(jì)算機(jī)網(wǎng)絡(luò)和微型機(jī)小型機(jī)的發(fā) 展,可采用真正的處理機(jī)代替虛擬處理機(jī),構(gòu)成 以分散為特征的多處理機(jī)系統(tǒng),以此代替以集中 為特征的分時(shí)系統(tǒng),這就進(jìn)入到并行處理領(lǐng)域。

36、第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 59 這種有大量分散、重復(fù)的處理機(jī)資源(一般 是具有獨(dú)立功能的單處理機(jī))相互連接在一起, 在操作系統(tǒng)(可以是集中的也可以是分散的)的 全局控制下統(tǒng)一協(xié)調(diào)工作而最少依賴(lài)于集中的程 序、數(shù)據(jù)或硬件的系統(tǒng)稱(chēng)為分布處理系統(tǒng)。 以近距離、寬頻帶、快響應(yīng)為特點(diǎn)的計(jì)算機(jī) 局域網(wǎng)作支持環(huán)境發(fā)展起來(lái)的機(jī)群系統(tǒng)就是分布 處理系統(tǒng)的一個(gè)很好的例子。顯然,分時(shí)系統(tǒng)實(shí) 現(xiàn)的是并行性中的并發(fā)性,而分布處理系統(tǒng)實(shí)現(xiàn) 的是并行性中的同時(shí)性。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 60 再看多機(jī)系統(tǒng)中并行性的發(fā)展。多機(jī)系統(tǒng)也遵 循著時(shí)間重疊。資源重復(fù)和資源共

37、享的技術(shù)途徑, 向著三種不同的多處理機(jī)方向發(fā)展。但在采取的技 術(shù)措施上與單機(jī)系統(tǒng)稍有些差別。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 61 為了反映多機(jī)系統(tǒng)各機(jī)器之間物理連接的緊 密程度和交互作用能力的強(qiáng)弱,引入耦合度的概 念。多機(jī)系統(tǒng)的耦合度可分為: ()最低耦合系統(tǒng) ()松散耦合或間接耦合系統(tǒng) ()緊密耦合系統(tǒng)或直接耦合系統(tǒng) 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 62 在單機(jī)系統(tǒng)中,時(shí)間重疊是通過(guò)功能部件專(zhuān)用化 實(shí)現(xiàn)。而在多處理機(jī)中則是將處理功能分散給各專(zhuān)用 處理機(jī)去完成,即功能專(zhuān)用化。各處理機(jī)之間按照時(shí) 間重疊原理工作。如輸入/輸出功能的分離,導(dǎo)致由 通道向

38、專(zhuān)用外圍處理機(jī)發(fā)展。這種趨勢(shì)的發(fā)展,使許 多主要功能,如數(shù)組運(yùn)算。高級(jí)語(yǔ)言編譯、數(shù)據(jù)庫(kù)管 理等,也逐漸分離出來(lái)交由專(zhuān)用處理機(jī)完成,機(jī)間的 耦合程度也逐漸加強(qiáng),發(fā)展成異構(gòu)型多處理機(jī)系統(tǒng)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 63 為了提高系統(tǒng)的可靠性,開(kāi)始由單機(jī)系統(tǒng)的部 件級(jí)冗余上升到處理機(jī)一級(jí)的冗余,設(shè)置多臺(tái)相同 類(lèi)型的計(jì)算機(jī)構(gòu)成容錯(cuò)多處理機(jī)系統(tǒng)。繼而提高機(jī) 間互連網(wǎng)絡(luò)的靈活性和可重構(gòu)性,發(fā)展為可重構(gòu)系 統(tǒng)?,F(xiàn)在更多的是通過(guò)進(jìn)一步改進(jìn)多處理機(jī)間的互 連網(wǎng)絡(luò),使之具有實(shí)現(xiàn)進(jìn)程或程序一級(jí)的高速并行 處理能力來(lái)提高整個(gè)系統(tǒng)的速度,演變成各種緊密 耦合系統(tǒng)。為使并行處理的任務(wù)能在處理

39、機(jī)之間隨 機(jī)地進(jìn)行調(diào)度,必須使各個(gè)處理機(jī)具有同等的功能, 這樣就發(fā)展成同構(gòu)型的多處理機(jī)系統(tǒng)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 64 要實(shí)現(xiàn)遠(yuǎn)距離多臺(tái)計(jì)算機(jī)之間的資源共享,只 有網(wǎng)絡(luò)化,將通信功能從主機(jī)中分離出來(lái),由專(zhuān)用 通信處理機(jī)完成。計(jì)算機(jī)網(wǎng)絡(luò)按其通信距離可劃分 為遠(yuǎn)程網(wǎng)(wan)和局域網(wǎng)(lan)。 遠(yuǎn)程網(wǎng)距離遠(yuǎn),通信速率較低。局域網(wǎng)距離近, 通信速率高。局域網(wǎng)成為分布處理系統(tǒng)發(fā)展的基礎(chǔ)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 65 表1.1 三種類(lèi)型多處理機(jī)比較 項(xiàng)目同構(gòu)型多處理機(jī)異構(gòu)型多處理機(jī)分布處理系統(tǒng) 目的 提高系統(tǒng)性能 (可靠性、速度) 提高

40、系統(tǒng)使用效率兼顧效率與性能 技術(shù)途徑 資源重復(fù) (機(jī)間互連) 時(shí)間重疊 (功能專(zhuān)用化) 資源共享 (網(wǎng)絡(luò)化) 組成 同類(lèi)型 (同等功能) 不同類(lèi)型 (不同功能) 不限制 分工方式任務(wù)分布功能分布 硬件、軟件、數(shù)據(jù) 等各種資源分布 工作方式 一個(gè)作業(yè)由多機(jī) 協(xié)同并行地完成 一個(gè)作業(yè)由多機(jī) 協(xié)同串行地完成 一個(gè)作業(yè)由一臺(tái)處 理機(jī)完成,必要時(shí) 才請(qǐng)求它機(jī)協(xié)作 控制形式常采用浮動(dòng)控制方式采用專(zhuān)用控制方式分布控制方式 耦合度緊密耦合松散耦合松散、緊密耦合 對(duì)互連網(wǎng)絡(luò)的要求 快速性、靈活性、 可重構(gòu)性 專(zhuān)用性 快速、靈活、 簡(jiǎn)單、通用 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 66 1.3 計(jì)

41、算機(jī)系統(tǒng)的分類(lèi)計(jì)算機(jī)系統(tǒng)的分類(lèi) . flynn 分類(lèi)法分類(lèi)法 michael.j.flynn于1966年提出按指令流和數(shù)據(jù)流 的多倍性對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)進(jìn)行分類(lèi)的方法。指令 流是指機(jī)器執(zhí)行的指令序列。數(shù)據(jù)流是指由指令流 調(diào)用的數(shù)據(jù)序列,包括輸入數(shù)據(jù)和中間結(jié)果。多倍 性是指在系統(tǒng)瓶頸部件上,同時(shí)處于同一執(zhí)行階段 的指令或數(shù)據(jù)的最大可能個(gè)數(shù)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 67 flynn分類(lèi)法按照指令流和數(shù)據(jù)流的不同組織方 式,把計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)分為類(lèi)。 ()單指令流單數(shù)據(jù)流(sisd) ()單指令流多數(shù)據(jù)流(simd) ()多指令流單數(shù)據(jù)流(misd) ()多指令流多數(shù)據(jù)

42、流(mimd) 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 68 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 69 2. 馮氏分類(lèi)法馮氏分類(lèi)法 1972年,美籍華人馮澤云提出用最大并行度對(duì)計(jì)算機(jī) 系統(tǒng)結(jié)構(gòu)進(jìn)行分類(lèi)。所謂最大并行度pm是指計(jì)算機(jī)系統(tǒng)在 單位時(shí)間內(nèi)能夠處理的最大的二進(jìn)制位數(shù)。平均并行度取 決于系統(tǒng)的運(yùn)用程度,它與應(yīng)用程序有關(guān)。最大并行度pm 定量地反映了對(duì)數(shù)據(jù)處理的并行性。 pm=n m 式中,n 表示同時(shí)處理時(shí)一個(gè)字中的二進(jìn)制位數(shù);m 表示能 同時(shí)處理的字?jǐn)?shù)。 t t i i a p p 1 t t i i a p p 1 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)

43、算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 70 按計(jì)算機(jī)對(duì)數(shù)據(jù)處理方式,由pm值可得下列種 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)類(lèi)型。 字串位串(wsbs) 字串位并(wsbp) 字并位串(wpbs) 字并位并(wpbp) 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 71 1.4 計(jì)算機(jī)性能的評(píng)價(jià)計(jì)算機(jī)性能的評(píng)價(jià) 1.4.1 計(jì)算機(jī)系統(tǒng)設(shè)計(jì)和測(cè)評(píng)的基本原則計(jì)算機(jī)系統(tǒng)設(shè)計(jì)和測(cè)評(píng)的基本原則 . 經(jīng)常性事件優(yōu)先原則 經(jīng)常性事件優(yōu)先原則的基本思想是:對(duì)于經(jīng)常 發(fā)生的事件,賦予它優(yōu)先的處理權(quán)和資源使用權(quán), 加快它的處理速度,可以提高整個(gè)系統(tǒng)的性能。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 72 amdahl定律 amdahl

44、 定律指出:系統(tǒng)中某部件由于采用某種 更快的執(zhí)行方式后,整個(gè)系統(tǒng)性能的提高與這種執(zhí)行 方式在系統(tǒng)中使用頻率或占總執(zhí)行時(shí)間的比例有關(guān)。 amdahl定律定義了加速比的概念。假設(shè)對(duì)機(jī)器 進(jìn)行某種改進(jìn),那么機(jī)器系統(tǒng)的加速比就是: 總執(zhí)行時(shí)間 總執(zhí)行時(shí)間 系統(tǒng)性能 系統(tǒng)性能 系統(tǒng)加速比 改進(jìn)后 改進(jìn)前 改進(jìn)前 改進(jìn)后 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 73 系統(tǒng)加速比依賴(lài)于兩個(gè)因素: (1)可改進(jìn)部分在原系統(tǒng)執(zhí)行時(shí)間中所占的比例。 用“可改進(jìn)比例(fe)”表示,fe總是小于或等于的。 1 ffee 總執(zhí)行時(shí)間 可改進(jìn)執(zhí)行時(shí)間 可改進(jìn)比例 改進(jìn)前 改進(jìn)前 (2)可改進(jìn)部分改進(jìn)以后的性

45、能提高。用“部件加 速比(se)”表示性能提高比一般se是大于的。 1 ss ee 改進(jìn)部分執(zhí)行時(shí)間 改進(jìn)部分執(zhí)行時(shí)間 部件加速比 改進(jìn)后 改進(jìn)前 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 74 由此,得到下列結(jié)論; (1)改進(jìn)后系統(tǒng)的總執(zhí)行時(shí)間tn s f ft s tf tft e e eo e oe oen 11 式中,to為改進(jìn)前系統(tǒng)的總執(zhí)行時(shí)間。 (2)改進(jìn)前后整個(gè)系統(tǒng)的加速比sn s f f t t s e e e n o n 1 1 式中,(1fe ) 表示不可改進(jìn)比例,當(dāng)fe0無(wú)改進(jìn)部分時(shí), sn1,所以系統(tǒng)性能提高幅度受改進(jìn)部分所占比例限制。 第第1 1章章 計(jì)算

46、機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 75 當(dāng)se 時(shí),有sn1/ (1fe )。得到amdahl 定律的一個(gè)重要推論:若只針對(duì)整個(gè)系統(tǒng)的一部 分進(jìn)行優(yōu)化,則系統(tǒng)獲取的性能改善極限值受fe 的約束,系統(tǒng)加速比不大于1/ (1fe )。 例1.1設(shè)系統(tǒng)中某部件原處理時(shí)間占整個(gè) 運(yùn)行時(shí)間的30%,現(xiàn)加快速度到15倍,則整個(gè)系統(tǒng) 性能提高多少? 解:由題可知:fe0.3,se15,則 39.1 72.0 1 15 3 .0 3 .01 1 n s 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 76 例1.2若在整個(gè)測(cè)試程序的執(zhí)行時(shí)間中,求浮點(diǎn)數(shù)平方 根fpsqr的操作占10?,F(xiàn)有兩種改進(jìn)方案:一

47、種是采用 fpsqr硬件,使其速度加快到10倍;另一種是使所有浮點(diǎn)數(shù)指 令fp速度加快到4倍,并設(shè)fp指令占整個(gè)程序執(zhí)行時(shí)間的40。 請(qǐng)比較兩種方案的優(yōu)劣。 解:硬件方案:fe0.1,se10,則 fp加速方案:fe0.4,se4,則 由結(jié)果比較可知,fp加速方案更優(yōu)。需注意結(jié)論的前提是程 序量的40%為fp指令。 10.1 91.0 1 10 1 .0 1 .01 1 n s 43.1 7 .0 1 4 4 .0 4 .01 1 n s 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 77 程序訪問(wèn)的局部性原理 所謂程序訪問(wèn)的局部性原理,是指程序在執(zhí)行過(guò) 程中所訪問(wèn)地址的分布有相對(duì)簇聚

48、的傾向,這種簇聚 表現(xiàn)在指令和數(shù)據(jù)兩方面。程序局部性包括時(shí)間上的 局部性和空間上的局部性。前者是指程序即將用到的 信息很可能是目前正在使用的信息。后者是指程序即 將用到的信息很可能與目前正在使用的信息在程序空 間上是相鄰或相近的。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 78 1.4.2 cpu性能公式性能公式 一個(gè)程序在計(jì)算機(jī)上運(yùn)行所花費(fèi)的cpu時(shí)間可表 示為 f時(shí)鐘頻率 時(shí)鐘周期數(shù)總 時(shí)間 cpu cpu 或 cpu時(shí)間總cpu時(shí)鐘周期數(shù)時(shí)鐘周期t 若將程序執(zhí)行過(guò)程中所處理的指令數(shù)記為ic???以獲得一個(gè)與計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)有關(guān)的參數(shù),即每條指 令的平均時(shí)鐘周期數(shù)cpi : ci

49、 cpi 時(shí)鐘周期總cpu 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 79 程序執(zhí)行的cpu時(shí)間可寫(xiě)為 ticcpi f iccpi 時(shí)間cpu 這個(gè)公式通常稱(chēng)為cpu性能公式,它表明cpu性 能與三種系統(tǒng)結(jié)構(gòu)技術(shù)相關(guān): (1)時(shí)鐘頻率f :反映了計(jì)算機(jī)實(shí)現(xiàn)技術(shù)和計(jì)算 機(jī)組織。 (2)機(jī)器指令的平均時(shí)鐘周期數(shù)cpi:反映了計(jì) 算機(jī)系統(tǒng)結(jié)構(gòu)組織和指令集的設(shè)計(jì)與實(shí)現(xiàn)。 (3)程序使用的指令條數(shù)ic:反映了計(jì)算機(jī)指 令集的結(jié)構(gòu)和編譯技術(shù)。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 80 假設(shè)計(jì)算機(jī)系統(tǒng)有n種指令,ici表示第i種指令在程序中執(zhí) 行的次數(shù),cpii表示執(zhí)行一條第

50、 i 種指令所需的平均時(shí)鐘周期 數(shù),則程序執(zhí)行的cpu時(shí)間為 f n i iiiccpi 1 cpu 時(shí)間 n i i i n i ii icic cpi ic cpi iccpi 1 1 則cpi 可表示為 式中 表示了第i 種指令在程序中所占比例。上面這些公 式均稱(chēng)為cpu性能公式。 ic ici 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 81 例1.3若浮點(diǎn)數(shù)指令fp占全部指令的30%,其中浮點(diǎn) 數(shù)平方根fpsqr指令占全部指令的4%,fp操作的cpi為5, fpsqr操作的cpi為20,其他指令的平均cpi為1.25。現(xiàn)提出 兩種改進(jìn)方案,一種是把fpsqr操作的cpi減至

51、3,另一種是 把所有fp操作的cpi減至3,試比較兩種方案對(duì)系統(tǒng)性能的提 高程度。 解:改進(jìn)之前,系統(tǒng)的指令平均時(shí)鐘周期數(shù)為: 38. 2%7025 . 1 %305 1 n i i i ic ic cpi cpi 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 82 方案a:如果使 fpsqr 操作的時(shí)鐘周期數(shù)由 cpifpsqr20降至cpifpsqr3,則系統(tǒng)的cpi為 : 方案:如果使所有fp操作的平均時(shí)鐘周期數(shù)由 cpifp5降至cpifp3,則整個(gè)系統(tǒng)的cpi為: 從降低整個(gè)系統(tǒng)的指令平均時(shí)鐘周期數(shù)的程度來(lái)看, 方案 a優(yōu)于方案b 。 7 . 1%432038. 2 %4 f

52、psqrfpsqra icpcpi cpi cpi 78. 1%303538. 2 %30 fpfpb icpcpi cpi cpi 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 83 計(jì)算兩種方案的加速比: 從加速比來(lái)看,同樣得出方案優(yōu)于方案的結(jié)論。 4 . 1 7 . 1 38. 2 cpua cpu a a a cpi cpi cpi ic cpiic s 時(shí)鐘周期 時(shí)鐘周期 執(zhí)行時(shí)間的方案 執(zhí)行時(shí)間改進(jìn)前的 34. 1 78. 1 38. 2 b b cpi cpi s 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 84 例1.4設(shè)有兩臺(tái)機(jī)器a和b,對(duì)條件轉(zhuǎn)移采用不同方

53、法。 cpua采用比較指令和條件轉(zhuǎn)移指令處理方法,實(shí)現(xiàn)一次條件轉(zhuǎn) 移需執(zhí)行兩條指令,條件轉(zhuǎn)移指令和比較指令各占執(zhí)行指令總 數(shù)的15%。cpub采用比較和條件轉(zhuǎn)移指令合一方法,實(shí)現(xiàn)一次 條件轉(zhuǎn)移只需執(zhí)行一條指令。若規(guī)定兩臺(tái)機(jī)器執(zhí)行條件轉(zhuǎn)移指 令需2個(gè)時(shí)鐘周期,其他指令只需1個(gè)時(shí)鐘周期。cpub的時(shí)鐘周 期比cpua慢20%。請(qǐng)比較: (1)cpua和cpub哪個(gè)工作速度更快? (2)若cpub的時(shí)鐘周期只比cpua慢10%,哪個(gè)cpu工作 速度更快? 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 85 解:(1)計(jì)算機(jī)器a cpia0.1520.8511.15 cpua時(shí)間icacpia

54、ta1.15taic a ica是cpua的指令條數(shù)。因cpub無(wú)比較指令icb0.85ica 使cpub的轉(zhuǎn)移指令所占比例為15%85%17.65%18% 計(jì)算機(jī)器b cpib0.1820.8211.18 又因cpub的tb比cpua的ta慢20%,所以tb1.2ta cpub時(shí)間icbcpibtb1.2 taica 比較可知, cpua時(shí)間cpub時(shí)間,故cpua比cpub工作 速度快。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 86 (2)此時(shí)有tb1.1ta,據(jù)前結(jié)論 cpua時(shí)間1.15taica cpub時(shí)間0.85ica1.181.1ta 1.1 taica 因cpu

55、b時(shí)間cpua時(shí)間,故cpub的工作速度更 快些。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 87 1.4.3 系統(tǒng)結(jié)構(gòu)的性能評(píng)價(jià)標(biāo)準(zhǔn)系統(tǒng)結(jié)構(gòu)的性能評(píng)價(jià)標(biāo)準(zhǔn) 衡量計(jì)算機(jī)性能的標(biāo)準(zhǔn)是機(jī)器真正執(zhí)行程序的 時(shí)間。這里的執(zhí)行時(shí)間是計(jì)算機(jī)在完成一個(gè)任務(wù)時(shí) 所花費(fèi)的全部時(shí)間,也稱(chēng)為計(jì)算機(jī)的響應(yīng)時(shí)間。 cpu時(shí)間是指cpu工作的時(shí)間,不包括i/o等待 時(shí)間。它可分為cpu執(zhí)行用戶(hù)程序的用戶(hù)cpu時(shí)間 和cpu花費(fèi)在操作系統(tǒng)上的系統(tǒng)cpu時(shí)間。 因此,計(jì)算機(jī)性能可分為基于響應(yīng)時(shí)間的“系 統(tǒng)性能”度量方法和基于用戶(hù)cpu時(shí)間的“cpu性 能”度量方法。 第第1 1章章 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論 88 1. mips和mflops mips是目前較為流行的描述計(jì)算機(jī)性能的替代 標(biāo)準(zhǔn)之一。對(duì)于一個(gè)給定的程序,mips定義為: 1010 66 mips cpi 時(shí)鐘頻率 程序執(zhí)行時(shí)間 指令條數(shù) mips是單位時(shí)間內(nèi)執(zhí)行指令的次數(shù)。若用

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論