計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程課件第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)_第1頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程課件第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)_第2頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程課件第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)_第3頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程課件第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)_第4頁(yè)
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程課件第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)_第5頁(yè)
已閱讀5頁(yè),還剩109頁(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)介

計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)天津商業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)教研室專(zhuān)業(yè)基礎(chǔ)課,學(xué)位必/選修課內(nèi)容多、理論性強(qiáng)、難度較大總結(jié)性課程(硬件方面:數(shù)字邏輯、組成原理等,軟件方面:操作系統(tǒng)、匯編語(yǔ)言、數(shù)據(jù)結(jié)構(gòu)等再通過(guò)學(xué)習(xí)《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)》建立起計(jì)算機(jī)系統(tǒng)的完整概念)課程特點(diǎn)第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念(6學(xué)時(shí))第二章指令系統(tǒng)的設(shè)計(jì)(8學(xué)時(shí))第三章流水線(xiàn)技術(shù)(10學(xué)時(shí))第四章向量處理機(jī)(4學(xué)時(shí))第五章存儲(chǔ)系統(tǒng)(10學(xué)時(shí))第六章輸入輸出系統(tǒng)(6學(xué)時(shí))第七章多處理機(jī)(自學(xué))(8學(xué)時(shí))習(xí)題課1-3次課程內(nèi)容與課時(shí)分配作業(yè):

每個(gè)章節(jié)留若干課后作業(yè)上交;未布置的習(xí)題課下盡量全部完成;成績(jī):

平時(shí)成績(jī)-----出勤率、課堂表現(xiàn)15%作業(yè)成績(jī)15%期末考試成績(jī)70%課程郵箱:tjcu2012@163.comkey:jsjtxjg作業(yè)與成績(jī)計(jì)算計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)教程張晨曦清華大學(xué)出版社教學(xué)參考書(shū)計(jì)算機(jī)從1946年誕生至今,經(jīng)歷了多次更新?lián)Q代。一般將主要電子器件的使用作為計(jì)算機(jī)更新?lián)Q代的最突出標(biāo)志。例如:電子管、晶體管、集成電路、中小規(guī)模IC、超大規(guī)模IC等。實(shí)際上,還有一個(gè)計(jì)算機(jī)更新?lián)Q代的重要標(biāo)志就是系統(tǒng)結(jié)構(gòu)技術(shù)的不斷出現(xiàn)與運(yùn)用。引言:為什么要討論系統(tǒng)結(jié)構(gòu)?第一代:(1946-1954)元器件:電子管、繼電器存儲(chǔ)器、絕緣導(dǎo)線(xiàn)互聯(lián)軟硬件:?jiǎn)蝹€(gè)CPU、順序定點(diǎn)計(jì)算采用機(jī)器語(yǔ)言或匯編語(yǔ)言用CPU程序控制I/O代表機(jī)型:ENIAC、IBM701分析:計(jì)算機(jī)各代的關(guān)鍵技術(shù)第二代:(1955-1964)元器件:分立式晶體三極管、二極管鐵氧體的磁芯存儲(chǔ)器、印刷電路板軟硬件:?jiǎn)蝹€(gè)CPU、變址寄存器、浮點(diǎn)計(jì)算多路存儲(chǔ)器、I/O處理機(jī)采用高級(jí)語(yǔ)言、子程序庫(kù)、批處理監(jiān)控程序代表機(jī)型:UnivacLARC、CDC1604、IBM7030分析:計(jì)算機(jī)各代的關(guān)鍵技術(shù)第三代:(1965-1974)元器件:中小規(guī)模集成電路、多層印刷電路軟硬件:微程序控制、流水線(xiàn)、高速緩存、先行處理機(jī)代表機(jī)型:IBM360-370系列、CDC6600/7600系列、PDP系列分析:計(jì)算機(jī)各代的關(guān)鍵技術(shù)第四代:(1974-1991)元器件:大或超大規(guī)模集成電路、半導(dǎo)體存儲(chǔ)器、軟硬件:各種不同結(jié)構(gòu)的并行計(jì)算機(jī)出現(xiàn)(采用共享存儲(chǔ)器、分布存儲(chǔ)器、向量硬件等)用于并行處理的多處理OS、專(zhuān)用語(yǔ)言、編譯器,用于并行或分布處理的軟件工具和環(huán)境代表機(jī)型:VAX9000、CRAYX-MP、IBM3090V分析:計(jì)算機(jī)各代的關(guān)鍵技術(shù)第五代:(1991-至今)元器件:VLSI工藝更加完善的高密度、高速處理機(jī)和存儲(chǔ)器芯片軟硬件:大規(guī)模并行處理,采用可擴(kuò)展的和容許時(shí)延的系統(tǒng)結(jié)構(gòu)代表機(jī)型:FujitsuVPP500、CRAYMPP、IntelParagon、SUN10000分析:計(jì)算機(jī)各代的關(guān)鍵技術(shù)

系統(tǒng)結(jié)構(gòu)的不斷改進(jìn)、新概念的不斷提出與實(shí)現(xiàn)使計(jì)算機(jī)性能不斷提高。例1:P.H.Enslow比較了1965-1975年共10年的變化:元器件性能10倍計(jì)算機(jī)系統(tǒng)性能100倍

結(jié)論:為什么要討論系統(tǒng)結(jié)構(gòu)?例2:INTEL奔騰系列微機(jī)CPU換代Pentium(P5):基于UV兩條指令流水線(xiàn)Pentiummmx(P55):基于mmx技術(shù)Pentiumpro:基于動(dòng)態(tài)執(zhí)行技術(shù)PII:基于P55和Ppro技術(shù)的結(jié)合PIII:基于SSE(數(shù)據(jù)流單指令多數(shù)據(jù)擴(kuò)展)概念PIV:基于SSE2(雙精度SIMD指令集)

結(jié)論:為什么要討論系統(tǒng)結(jié)構(gòu)?

計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)是從程序和計(jì)算機(jī)設(shè)計(jì)的角度來(lái)研究計(jì)算機(jī)本身,以及由計(jì)算機(jī)組成的各種系統(tǒng)的體系結(jié)構(gòu)和組成科學(xué)。ComputerArchitecture計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)計(jì)算機(jī)體系結(jié)構(gòu)計(jì)算機(jī)體系結(jié)構(gòu)學(xué)科=系統(tǒng)結(jié)構(gòu)+組成課程介紹從外部來(lái)研究計(jì)算機(jī)系統(tǒng)定性:軟硬兩方面

研究軟、硬件功能分配以及如何最佳、最合理的實(shí)現(xiàn)分配給硬件的功能。評(píng)價(jià)計(jì)算機(jī)的性能價(jià)格比研究?jī)?nèi)容建立計(jì)算機(jī)系統(tǒng)的完整概念學(xué)習(xí)計(jì)算機(jī)系統(tǒng)的分析方法和設(shè)計(jì)方法掌握新型計(jì)算機(jī)系統(tǒng)的基本結(jié)構(gòu)及其工作原理交叉點(diǎn)內(nèi)容:提高,建立完整概念新內(nèi)容:流水線(xiàn)、超標(biāo)量、超流水線(xiàn)處理機(jī)、向量處理機(jī)、并行處理機(jī)、多處理機(jī)等學(xué)習(xí)目的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)正處于變革時(shí)期軟件—系統(tǒng)結(jié)構(gòu)—組成技術(shù),兩頭發(fā)展快、中間慢非馮計(jì)算機(jī)正興起系統(tǒng)結(jié)構(gòu)的發(fā)展時(shí)期已經(jīng)到來(lái)課時(shí)安排課內(nèi):48學(xué)時(shí);課本+補(bǔ)充知識(shí)課外:參考書(shū)

第一章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基礎(chǔ)知識(shí)天津商業(yè)大學(xué)1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)

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

1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展

1.1.1計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)=硬件/固件+軟件計(jì)算機(jī)語(yǔ)言從低級(jí)向高級(jí)發(fā)展

高一級(jí)語(yǔ)言的語(yǔ)句相對(duì)于低一級(jí)語(yǔ)言來(lái)說(shuō)功能更強(qiáng),更便于應(yīng)用,但又都以低級(jí)語(yǔ)言為基礎(chǔ)。從計(jì)算機(jī)語(yǔ)言的角度,把計(jì)算機(jī)系統(tǒng)按功能劃分成

多級(jí)層次結(jié)構(gòu)。每一層以一種語(yǔ)言為特征1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念虛擬機(jī)物理機(jī)1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念物理機(jī):用硬件/固件實(shí)現(xiàn)的機(jī)器

(最下面的兩級(jí)機(jī)器)虛擬機(jī):由軟件實(shí)現(xiàn)的機(jī)器虛擬機(jī)中有些操作可以由硬件或固件實(shí)現(xiàn)。固件:具有軟件功能的硬件。

1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念各機(jī)器級(jí)的實(shí)現(xiàn)主要靠翻譯或解釋?zhuān)騼烧叩慕Y(jié)合。翻譯:先用轉(zhuǎn)換程序把高一級(jí)機(jī)器上的程序轉(zhuǎn)換為低一級(jí)機(jī)器上等效的程序,然后再在這低一級(jí)機(jī)器上運(yùn)行,實(shí)現(xiàn)程序的功能。解釋?zhuān)簩?duì)于高一級(jí)機(jī)器上的程序中的每一條語(yǔ)句或指令,都是轉(zhuǎn)去執(zhí)行低一級(jí)機(jī)器上的一段等效程序。執(zhí)行完后,再去高一級(jí)機(jī)器取下一條語(yǔ)句或指令,再進(jìn)行解釋執(zhí)行,如此反復(fù),直到解釋執(zhí)行完整個(gè)程序。解釋執(zhí)行比編譯后再執(zhí)行所花的時(shí)間多,但占用的存儲(chǔ)空間較少。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

1.1.2計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的定義計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的經(jīng)典定義1964年G.M.Amdahl在介紹IBM360系統(tǒng)提出:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)是程序員所看到的計(jì)算機(jī)屬性,即程序員編寫(xiě)出能在機(jī)器上正確運(yùn)行的程序所必須了解到的概念性結(jié)構(gòu)和功能特性。——計(jì)算機(jī)系統(tǒng)的外特性1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念外特性

用一個(gè)不恰當(dāng)?shù)谋扔鳎罕热鐒?dòng)物的“系統(tǒng)結(jié)構(gòu)”是指什么呢?它的概念性結(jié)構(gòu)和功能特性,就相當(dāng)于動(dòng)物的器官組成及其功能特性。如人有胃,胃可以消化食物。至于胃是什么形狀的、又什么組成就不是“系統(tǒng)結(jié)構(gòu)”研究的問(wèn)題了。系統(tǒng)結(jié)構(gòu)只管到這一層。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念問(wèn)題:從計(jì)算機(jī)系統(tǒng)的多級(jí)層次結(jié)構(gòu)出發(fā),不同級(jí)的程序員所看到的計(jì)算機(jī)屬性不一樣的。例如:高級(jí)語(yǔ)言程序員:軟件(程序語(yǔ)言、OS、編譯程序)機(jī)器語(yǔ)言程序員:硬件(數(shù)據(jù)表示、尋址方式、寄存器定義、指令系統(tǒng)、中斷、輸入輸出)1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念傳統(tǒng)機(jī)器存在的差別是高級(jí)程序員不需要看見(jiàn)的,對(duì)他是透明的。透明性

一種本來(lái)存在的事物或?qū)傩?,從某個(gè)角度看卻好像不存在。通常:計(jì)算機(jī)系統(tǒng)中,低層機(jī)器級(jí)的概念性結(jié)構(gòu)和功能特性對(duì)高層機(jī)器級(jí)的程序員來(lái)說(shuō),基本是透明的。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念由于從不同層次(級(jí))的程序員看計(jì)算機(jī)的屬性是不同的,這個(gè)屬性就是計(jì)算機(jī)系統(tǒng)不同層次的界面。定義2:“系統(tǒng)結(jié)構(gòu)”就是指的計(jì)算機(jī)系統(tǒng)中對(duì)各級(jí)之間界面的定義,及其上下的功能分配。

——各個(gè)機(jī)器級(jí)都有自己的系統(tǒng)結(jié)構(gòu)。設(shè)計(jì)者要研究好各級(jí)的透明性,進(jìn)行合理的分析、取舍。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念討論:G.M.Amdahl列舉的屬性

處理機(jī)、存儲(chǔ)系統(tǒng)、I/O方式、中斷機(jī)構(gòu)----機(jī)器語(yǔ)言或匯編程序設(shè)計(jì)者了解的屬性,既有軟件,又有硬件系統(tǒng)結(jié)構(gòu)研究的內(nèi)容本書(shū)——傳統(tǒng)機(jī)器級(jí)的系統(tǒng)結(jié)構(gòu)軟件與硬(固)件的交界面內(nèi)容:計(jì)算機(jī)軟硬件功能的分配以及對(duì)機(jī)器級(jí)界面的確定。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的實(shí)質(zhì):

確定計(jì)算機(jī)系統(tǒng)中軟硬件的界面,界面之上是軟件實(shí)現(xiàn)的功能,界面之下是硬件和固件實(shí)現(xiàn)的功能。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.1.3計(jì)算機(jī)組成和計(jì)算機(jī)實(shí)現(xiàn)1、計(jì)算機(jī)組成計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯實(shí)現(xiàn),包括物理機(jī)器級(jí)內(nèi)的數(shù)據(jù)流和控制流的組成以及邏輯設(shè)計(jì)等。任務(wù):系統(tǒng)結(jié)構(gòu)確定了分配各硬件子系統(tǒng)的功能及概念性結(jié)構(gòu)后,研究各組成部分的內(nèi)部構(gòu)造和相互聯(lián)系,以實(shí)現(xiàn)機(jī)器指令級(jí)的要求。設(shè)計(jì)要求:按性?xún)r(jià)比要求,最佳最合理地把各種設(shè)備和部件組合成計(jì)算機(jī),而且性能參數(shù)互相匹配。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念2、計(jì)算機(jī)實(shí)現(xiàn)

計(jì)算機(jī)組成的物理實(shí)現(xiàn)。包括處理機(jī)、主存等部件的物理結(jié)構(gòu),器件的集成度和速度,模塊、插件、底板的劃分與連接,信號(hào)傳輸,電源、冷卻及整機(jī)裝配技術(shù)等。著眼于:器件技術(shù)(起主導(dǎo)作用)、微組裝技術(shù)。任務(wù):器件的選擇和組裝技術(shù)要求:性能價(jià)格比要求1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念舉例:

胃的例子:系統(tǒng)結(jié)構(gòu)——外特性,胃具有消化功能;組成——計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的內(nèi)特性:將那些外特性加以“邏輯實(shí)現(xiàn)”的基本屬性。比如胃的功能是消化食物——外特性。那怎么消化呢,胃的蠕動(dòng)、分泌胃酸等操作就是內(nèi)特性。實(shí)現(xiàn)——胃由那些組織,幾條肌肉和神經(jīng)來(lái)促使它運(yùn)動(dòng)。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

例.指令系統(tǒng)的確定(條數(shù)、類(lèi)型、方式)——系統(tǒng)結(jié)構(gòu)

取指、取操作數(shù)、運(yùn)算、送結(jié)果等具體操作及其排序方式——組成具體電路、器件的設(shè)計(jì)及裝配技術(shù)等——實(shí)現(xiàn)1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念

具有相同系統(tǒng)結(jié)構(gòu)的計(jì)算機(jī)可以采用不同的計(jì)算機(jī)組成。同一種計(jì)算機(jī)組成又可以采用多種不同的計(jì)算機(jī)實(shí)現(xiàn)。系列機(jī)由同一廠(chǎng)家生產(chǎn)的具有相同系統(tǒng)結(jié)構(gòu)、但具有不同組成和實(shí)現(xiàn)的一系列不同型號(hào)的機(jī)器。例如IBM公司的IBM370系列,Intel公司的x86系列等。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的分類(lèi)常見(jiàn)的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)分類(lèi)法有3種:Flynn分類(lèi)法馮氏分類(lèi)法Handler分類(lèi)法

1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念Flynn分類(lèi)法按照指令流和數(shù)據(jù)流的多倍性進(jìn)行分類(lèi)。指令流:計(jì)算機(jī)執(zhí)行的指令序列數(shù)據(jù)流:由指令流調(diào)用的數(shù)據(jù)序列多倍性:在系統(tǒng)最受限的部件上,同時(shí)處于同一執(zhí)行階段的指令或數(shù)據(jù)的最大數(shù)目。1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念把計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)分為4類(lèi)單指令流單數(shù)據(jù)流SISD(SingleInstructionstreamSingleDatastream)單指令流多數(shù)據(jù)流SIMD(SingleInstructionstreamMultipleDatastream)多指令流單數(shù)據(jù)流MISD(MultipleInstructionstreamSingleDatastream)多指令流多數(shù)據(jù)流MIMD(MultipleInstructionstreamMultipleDatastream)

1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念4類(lèi)計(jì)算機(jī)的基本結(jié)構(gòu)IS:指令流DS:數(shù)據(jù)流CS:控制流CU:控制部件PU:處理部件MM和SM:存儲(chǔ)器1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念馮氏分類(lèi)法用系統(tǒng)的最大并行度對(duì)計(jì)算機(jī)進(jìn)行分類(lèi)。最大并行度:計(jì)算機(jī)系統(tǒng)在單位時(shí)間內(nèi)能夠處理的最大的二進(jìn)制位數(shù)。

用平面直角坐標(biāo)系中的一個(gè)點(diǎn)代表一個(gè)計(jì)算機(jī)系統(tǒng),其橫坐標(biāo)表示字寬(n位),縱坐標(biāo)表示一次能同時(shí)處理的字?jǐn)?shù)(m字)。m×n就表示了其最大并行度。

1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念4類(lèi)不同最大并行度的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)字串位串:n=1,m=1。(第一代計(jì)算機(jī)發(fā)展初期的純串行計(jì)算機(jī))字串位并:n>1,m=1。這是傳統(tǒng)的單處理機(jī),同時(shí)處理單個(gè)字的多個(gè)位,如16位、32位等。字并位串:n=1,m>1。同時(shí)處理多個(gè)字的同一位(位片)。字并位并:n>1,m>1。同時(shí)處理多個(gè)字的多個(gè)位。平均并行度

與最大并行度密切相關(guān)的一個(gè)指標(biāo)。取決于系統(tǒng)的運(yùn)用程度,與應(yīng)用程序有關(guān)。

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

假設(shè)每個(gè)時(shí)鐘周期內(nèi)能同時(shí)處理的二進(jìn)制位數(shù)為Pi,則T個(gè)時(shí)鐘周期內(nèi)的平均并行度為:

系統(tǒng)在T個(gè)時(shí)鐘周期內(nèi)的平均利用率定義為:1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念Handler分類(lèi)法根據(jù)并行度和流水線(xiàn)對(duì)計(jì)算機(jī)進(jìn)行分類(lèi)。把計(jì)算機(jī)的硬件結(jié)構(gòu)分成3個(gè)層次程序控制部件(PCU)的個(gè)數(shù)k算術(shù)邏輯部件(ALU)或處理部件(PE)的個(gè)數(shù)d每個(gè)算術(shù)邏輯部件包含基本邏輯線(xiàn)路(ELC)的套數(shù)w1.1計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念用公式表示

t(系統(tǒng)型號(hào))=(k,d,w)進(jìn)一步改進(jìn)

t(系統(tǒng)型號(hào))=(k×k’,d×d’,w×w’)k’:宏流水線(xiàn)中程序控制部件的個(gè)數(shù)d’:指令流水線(xiàn)中算術(shù)邏輯部件的個(gè)數(shù)w’:操作流水線(xiàn)中基本邏輯線(xiàn)路的套數(shù)

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

例如:Cray-1有1個(gè)CPU,12個(gè)相當(dāng)于ALU或PE的處理部件,可以最多實(shí)現(xiàn)8級(jí)流水線(xiàn)。字長(zhǎng)為64位,可以實(shí)現(xiàn)1~14位流水線(xiàn)處理。所以Cray-1系統(tǒng)結(jié)構(gòu)可表示為:

t(Cray-1)=(1,12×8,64×(1~14))幾個(gè)例子:

t(PDP-11)=(1,1,16)t(IlliacⅣ)=(1,64,64)t(STARAN)=(1,8192,1)t(Cmmp)=(16,1,16)t(PEPE)=(1×3,288,32)t(TI-ASC)=(1,4,64×8)4個(gè)定量原理:以經(jīng)常性事件為重點(diǎn)(大概率事件優(yōu)先原理)對(duì)經(jīng)常發(fā)生的情況采用優(yōu)化方法的原則進(jìn)行選擇,以得到更多的總體上的改進(jìn)。優(yōu)化是指分配更多的資源、達(dá)到更高的性能或者分配更多的電能等。優(yōu)先的處理權(quán)、資源使用權(quán)1.2.1計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的定量原理1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)阿姆達(dá)爾(Amdahl)定律系統(tǒng)中某個(gè)部件進(jìn)行改進(jìn)后,所能獲得的整個(gè)系統(tǒng)系能的提高,受限于該部件的執(zhí)行時(shí)間占系統(tǒng)中總執(zhí)行時(shí)間的百分比。系統(tǒng)性能加速比:改進(jìn)前后性能或時(shí)間的比值。加速比=系統(tǒng)性能改進(jìn)后系統(tǒng)性能改進(jìn)前總執(zhí)行時(shí)間改進(jìn)前總執(zhí)行時(shí)間改進(jìn)后=1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)加速比依賴(lài)于兩個(gè)因素(參數(shù))可改進(jìn)比例(Fe):在改進(jìn)前的系統(tǒng)中,可改進(jìn)部分的執(zhí)行時(shí)間在總的執(zhí)行時(shí)間中所占的比例。它總是小于等于1。例如:一個(gè)需運(yùn)行60秒的程序中有20秒的運(yùn)算可以加速,那么這個(gè)比例就是20/60。部件加速比(Se):可改進(jìn)部分改進(jìn)以后性能提高的倍數(shù)。它是改進(jìn)前所需的執(zhí)行時(shí)間與改進(jìn)后執(zhí)行時(shí)間的比。一般情況下部件加速比是大于1的。例如:若系統(tǒng)改進(jìn)后,可改進(jìn)部分的執(zhí)行時(shí)間是2秒,而改進(jìn)前其執(zhí)行時(shí)間為5秒,則部件加速比為5/2。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)改進(jìn)后程序的總執(zhí)行時(shí)間總執(zhí)行時(shí)間改進(jìn)后=不可改進(jìn)部分的執(zhí)行時(shí)間+

可改進(jìn)部分改進(jìn)后的執(zhí)行時(shí)間總執(zhí)行時(shí)間改進(jìn)后=(1-可改進(jìn)比例)×總執(zhí)行時(shí)間改進(jìn)前

+=[(1-可改進(jìn)比例)+]×總執(zhí)行時(shí)間改進(jìn)前

可改進(jìn)比例部件加速比可改進(jìn)比例×總執(zhí)行時(shí)間改進(jìn)前部件加速比1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)系統(tǒng)加速比為改進(jìn)前與改進(jìn)后總執(zhí)行時(shí)間之比加速比=總執(zhí)行時(shí)間改進(jìn)前總執(zhí)行時(shí)間改進(jìn)后=(1-可改進(jìn)比例)+可改進(jìn)比例部件加速比11.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)改進(jìn)后程序的總執(zhí)行時(shí)間TnT0:改進(jìn)前整個(gè)程序的執(zhí)行時(shí)間1-Fe:不可改進(jìn)比例

系統(tǒng)加速比Sn為改進(jìn)前與改進(jìn)后總執(zhí)行時(shí)間之比:1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

例1.1將計(jì)算機(jī)系統(tǒng)中某一功能的處理速度加快15倍,但該功能的處理時(shí)間僅占整個(gè)系統(tǒng)運(yùn)行時(shí)間的40%,則采用此增強(qiáng)功能方法后,能使整個(gè)系統(tǒng)的性能提高多少?解由題可知:Fe=40%=0.4Se=15根據(jù)Amdahl定律可知:

采用此增強(qiáng)功能方法后,能使整個(gè)系統(tǒng)的性能提高到原來(lái)的1.6倍。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)例1.2某計(jì)算機(jī)系統(tǒng)采用浮點(diǎn)運(yùn)算部件后,使浮點(diǎn)運(yùn)算速度提高到原來(lái)的25倍,而系統(tǒng)運(yùn)行某一程序的整體性能提高到原來(lái)的4倍,試計(jì)算該程序中浮點(diǎn)操作所占的比例。解由題可知:Se=25Sn=4根據(jù)Amdahl定律可知:

由此可得:Fe

=78.1%即程序中浮點(diǎn)操作所占的比例為78.1%。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)Amdahl定律:一種性能改進(jìn)的遞減規(guī)則如果僅僅對(duì)計(jì)算任務(wù)中的一部分做性能改進(jìn),則改進(jìn)得越多,所得到的總體性能的提升就越有限。重要推論:如果只針對(duì)整個(gè)任務(wù)的一部分進(jìn)行改進(jìn)和優(yōu)化,那么所獲得的加速比不超過(guò):1/(1-可改進(jìn)比例)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)CPU性能公式執(zhí)行一個(gè)程序所需的CPU時(shí)間CPU時(shí)間=執(zhí)行程序所需的時(shí)鐘周期數(shù)×?xí)r鐘周期時(shí)間其中:時(shí)鐘周期時(shí)間是系統(tǒng)時(shí)鐘頻率的倒數(shù)。每條指令執(zhí)行的平均時(shí)鐘周期數(shù)CPI

(CyclesPerInstruction)

CPI=執(zhí)行程序所需的時(shí)鐘周期數(shù)/IC

IC:所執(zhí)行的指令條數(shù)程序執(zhí)行的CPU時(shí)間可以寫(xiě)成

CPU時(shí)間=IC×CPI×?xí)r鐘周期時(shí)間

1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)CPU的性能取決于三個(gè)參數(shù)時(shí)鐘周期時(shí)間:取決于硬件實(shí)現(xiàn)技術(shù)和計(jì)算機(jī)組成;CPI:取決于計(jì)算機(jī)組成和指令系統(tǒng)的結(jié)構(gòu);IC:取決于指令系統(tǒng)的結(jié)構(gòu)和編譯技術(shù)。對(duì)CPU性能公式進(jìn)行進(jìn)一步細(xì)化假設(shè):計(jì)算機(jī)系統(tǒng)有n種指令,n是指令的種類(lèi)。CPIi:第i種指令的處理時(shí)間;

ICi:在程序中第i種指令出現(xiàn)的次數(shù);則:CPU時(shí)鐘周期數(shù)=(CPIi

ICi)ni=11.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)CPU時(shí)間=執(zhí)行程序所需的時(shí)鐘周期數(shù)×?xí)r鐘周期時(shí)間=

(CPIi×ICi)×?xí)r鐘周期時(shí)間CPI可以表示為:CPI===

其中:(ICi/IC)反映了第i種指令在程序中所占的比例。用于設(shè)計(jì)方案的評(píng)價(jià)。i=1n時(shí)鐘周期數(shù)IC(CPIi×ICi)i=1nIC(CPIi×)i=1nICiIC1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)例1.3

假設(shè)FP指令的比例為25%,平均CPI為4。其他指令的平均CPI為1.33。其中,F(xiàn)PSQR占全部指令的比例為2%,CPI為20,現(xiàn)有兩種改進(jìn)方案,第一種是把FPSQR操作的CPI減至2,第二種是把所有的FP操作的CPI減至2,試比較兩種方案對(duì)系統(tǒng)性能的提高程度。解

沒(méi)有改進(jìn)之前,每條指令的平均時(shí)鐘周期CPI為:

1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)(1)采用第一種方案FPSQR操作的CPI由CPIFPSQR=20減至CPI’FPSQR=2,則整個(gè)系統(tǒng)的指令平均時(shí)鐘周期數(shù)為:

CPI1=CPI―(CPIFPSQR―CPI’FPSQR)×2%=2―(20―2)×2%=1.64

(2)采用第二種方案所有FP操作的CPI由CPIFP=4減至CPI’FP=2,則整個(gè)系統(tǒng)的指令平均時(shí)鐘周期數(shù)為:

CPI2=CPI―(CPIFP―CPI’FP)×25%=2―(4―2)×25%=1.5從降低整個(gè)系統(tǒng)的指令平均時(shí)鐘周期數(shù)的程度來(lái)看,第二種方案優(yōu)于第一種方案。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

例1.4考慮條件分支指令的兩種不同設(shè)計(jì)方法:(1)CPU1:通過(guò)比較指令設(shè)置條件碼,然后測(cè)試條件碼進(jìn)行分支。(2)CPU2:在分支指令中包括比較過(guò)程。在這兩種CPU中,條件分支指令都占用2個(gè)時(shí)鐘周期,而所有其它指令占用1個(gè)時(shí)鐘周期。對(duì)于CPU1,執(zhí)行的指令中分支指令占30%;由于每條分支指令之前都需要有比較指令,因此比較指令也占30%。由于CPU1在分支時(shí)不需要比較,因此CPU2的時(shí)鐘周期時(shí)間是CPU1的1.35倍。問(wèn):哪一個(gè)CPU更快?如果CPU2的時(shí)鐘周期時(shí)間只是CPU1的1.15倍,哪一個(gè)CPU更快呢?1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

解我們不考慮所有系統(tǒng)問(wèn)題,所以可用CPU性能公式。占用2個(gè)時(shí)鐘周期的分支指令占總指令的30%,剩下的指令占用1個(gè)時(shí)鐘周期。所以

CPI1=0.3×2+0.70×1=1.3則CPU1性能為:總CPU時(shí)間1=IC1

×1.3×?xí)r鐘周期1根據(jù)假設(shè),有:時(shí)鐘周期2=1.35×?xí)r鐘周期1在CPU2中沒(méi)有獨(dú)立的比較指令,所以CPU2的程序量為CPU1的70%,分支指令的比例為:1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

30%/70%=42.8%這些分支指令占用2個(gè)時(shí)鐘周期,而剩下的57.2%的指令占用1個(gè)時(shí)鐘周期,因此:CPI2=0.428×2+0.572×1=1.428因?yàn)镃PU2不執(zhí)行比較,故:IC2=0.7×IC1因此CPU2性能為:總CPU時(shí)間2=IC2

×CPI2

×?xí)r鐘周期2=0.7×IC1

×1.428×(1.35×?xí)r鐘周期1)=1.349×IC1

×?xí)r鐘周期11.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

在這些假設(shè)之下,盡管CPU2執(zhí)行指令條數(shù)較少,CPU1因?yàn)橛兄痰臅r(shí)鐘周期,所以比CPU2快。如果CPU2的時(shí)鐘周期時(shí)間僅僅是CPU1的1.15倍,則時(shí)鐘周期2=1.15×?xí)r鐘周期1CPU2的性能為:總CPU時(shí)間2=IC2×CPI2

×?xí)r鐘周期2

=0.7×IC1

×1.428×(1.15×?xí)r鐘周期1)=1.15×IC1

×?xí)r鐘周期1因此CPU2由于執(zhí)行更少指令條數(shù),比CPU1運(yùn)行更快。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)程序的局部性原理程序執(zhí)行時(shí)所訪(fǎng)問(wèn)的存儲(chǔ)器地址分布不是隨機(jī)的,而是相對(duì)地簇聚。常用的一個(gè)經(jīng)驗(yàn)規(guī)則程序執(zhí)行時(shí)間的80%都是在執(zhí)行程序中20%的代碼。程序的時(shí)間局部性程序即將用到的信息很可能就是目前正在使用的信息。程序的空間局部性程序即將用到的信息很可能與目前正在使用的信息在空間上相鄰或者臨近。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)計(jì)算機(jī)系統(tǒng)設(shè)計(jì)者的任務(wù)包括:指令系統(tǒng)的設(shè)計(jì)、數(shù)據(jù)表示的設(shè)計(jì)、功能的組織、邏輯設(shè)計(jì)以及其物理實(shí)現(xiàn)等。1.2.2計(jì)算機(jī)系統(tǒng)設(shè)計(jì)者的主要任務(wù)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的要求:確定用戶(hù)對(duì)計(jì)算機(jī)系統(tǒng)的功能、價(jià)格和性能的要求軟硬件功能分配—平衡取舍系統(tǒng)結(jié)構(gòu)符合今后發(fā)展的要求—生命周期長(zhǎng)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)1、確定用戶(hù)對(duì)計(jì)算機(jī)系統(tǒng)的功能、價(jià)格和性能的要求應(yīng)用領(lǐng)域

專(zhuān)用/通用?面向科學(xué)計(jì)算/商用處理?

軟件兼容軟件兼容是指一臺(tái)計(jì)算機(jī)上的程序不加修改就可以搬到另一臺(tái)計(jì)算機(jī)上正常運(yùn)行。程序設(shè)計(jì)語(yǔ)言層/二進(jìn)制目標(biāo)代碼層?操作系統(tǒng)需求地址空間大小/存儲(chǔ)管理方式/保護(hù)方式?標(biāo)準(zhǔn)確定系統(tǒng)中哪些方面要采用標(biāo)準(zhǔn)以及采用什么標(biāo)準(zhǔn)。浮點(diǎn)數(shù)/I/O總線(xiàn)/網(wǎng)絡(luò)/程序設(shè)計(jì)語(yǔ)言特定應(yīng)用優(yōu)化或軟件兼容1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)2、軟硬件功能取舍原則——優(yōu)化原則一:在現(xiàn)有器件和技術(shù)條件下,系統(tǒng)要有高的性能價(jià)格比;

硬件實(shí)現(xiàn):優(yōu)點(diǎn):速度快、占存少缺點(diǎn):成本高、靈活性差

軟件實(shí)現(xiàn):優(yōu)點(diǎn):成本低、靈活性好缺點(diǎn):速度慢、占存大、周期長(zhǎng)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)費(fèi)用=設(shè)計(jì)費(fèi)用+重復(fù)生產(chǎn)費(fèi)用硬件費(fèi)用=軟件費(fèi)用*100結(jié)論:大量生產(chǎn),常用功能,硬件實(shí)現(xiàn)才適宜;為特殊需要配備硬件:MMX,3Dnow!1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)原則二:考慮設(shè)計(jì)的軟硬件實(shí)現(xiàn)復(fù)雜度:完成時(shí)間與競(jìng)爭(zhēng)力軟件領(lǐng)域和組成,實(shí)現(xiàn)技術(shù)發(fā)展較快計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)變化不大(不應(yīng)對(duì)軟件和組成、實(shí)現(xiàn)技術(shù)有過(guò)多的限制)原則三:對(duì)軟件(OS、編譯高級(jí)語(yǔ)言)提供更好的硬件支持1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)3、計(jì)算機(jī)系統(tǒng)負(fù)荷今后發(fā)展要求延長(zhǎng)機(jī)器的使用壽命例如:軟件占用越來(lái)越多的存儲(chǔ)容量1.5-2倍/年高級(jí)語(yǔ)言代替匯編語(yǔ)言---------編譯器支持1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)出發(fā)點(diǎn):多級(jí)層次結(jié)構(gòu)“由上往下”(top-down)設(shè)計(jì)“由下往上”(bottom-up)設(shè)計(jì)“從中間開(kāi)始”(middle-out)設(shè)計(jì)1.2.3計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的主要方法——設(shè)計(jì)思路1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)

“由上往下”(top-down)設(shè)計(jì)自然直觀,從應(yīng)用開(kāi)始逐層向下實(shí)現(xiàn),并優(yōu)化上層優(yōu)點(diǎn):面向用戶(hù),效率高適用于專(zhuān)用機(jī)的設(shè)計(jì)缺點(diǎn):適應(yīng)性差,周期長(zhǎng)軟硬脫節(jié)、分離解決方法:不完全優(yōu)化不專(zhuān)門(mén)設(shè)計(jì)機(jī)器級(jí)的“選型”1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)“由下往上”(bottom-up)設(shè)計(jì)

根據(jù)器件等情況研制硬件,根據(jù)要求配置軟件各層。優(yōu)點(diǎn):可設(shè)計(jì)通用計(jì)算機(jī)缺點(diǎn):軟硬件脫節(jié)、效率差;采用這種方法時(shí),軟件技術(shù)完全處于被動(dòng)狀態(tài),這會(huì)造成軟件和硬件的脫節(jié),使整個(gè)系統(tǒng)的效率降低。(在早期被采用得比較多,現(xiàn)在已經(jīng)很少被采用了)1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)“從中間開(kāi)始”(middle-out)設(shè)計(jì)

“由上往下”和“由下往上”設(shè)計(jì)方法的主要缺點(diǎn)軟、硬件設(shè)計(jì)分離和脫節(jié)解決方法:綜合考慮軟、硬件的分工,從中間開(kāi)始設(shè)計(jì)?!爸虚g”:層次結(jié)構(gòu)中的軟硬件的交界面,目前一般是在傳統(tǒng)機(jī)器語(yǔ)言機(jī)器級(jí)與操作系統(tǒng)機(jī)器級(jí)之間。1.2計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)從中間開(kāi)始設(shè)計(jì)綜合考慮硬器件和軟件要求,定義好軟硬界面,再同時(shí)進(jìn)行軟硬件設(shè)計(jì)優(yōu)點(diǎn):軟硬件功能分配比較合理縮短了研制周期交互式的研制解決了:軟件與硬件分離執(zhí)行時(shí)間和吞吐率如何評(píng)測(cè)一臺(tái)計(jì)算機(jī)的性能,與測(cè)試者看問(wèn)題的角度有關(guān)。用戶(hù)關(guān)心的是:?jiǎn)蝹€(gè)程序的執(zhí)行時(shí)間(執(zhí)行單個(gè)程序所花的時(shí)間很少)數(shù)據(jù)處理中心的管理員關(guān)心的是:吞吐率(在單位時(shí)間里能夠完成的任務(wù)很多)1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)假設(shè)兩臺(tái)計(jì)算機(jī)為X和Y,X比Y快的意思是:

對(duì)于給定任務(wù),X的執(zhí)行時(shí)間比Y的執(zhí)行時(shí)間少。X的性能是Y的n倍:執(zhí)行時(shí)間與性能成反比:執(zhí)行時(shí)間Y執(zhí)行時(shí)間X=nn===執(zhí)行時(shí)間Y執(zhí)行時(shí)間X性能Y1性能X1性能X性能Y1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)執(zhí)行時(shí)間可以有多種定義:計(jì)算機(jī)完成某一任務(wù)所花費(fèi)的全部時(shí)間,包括磁盤(pán)訪(fǎng)問(wèn)、存儲(chǔ)器訪(fǎng)問(wèn)、輸入/輸出、操作系統(tǒng)開(kāi)銷(xiāo)等。CPU時(shí)間:CPU執(zhí)行所給定的程序所花費(fèi)的時(shí)間,不包含I/O等待時(shí)間以及運(yùn)行其它程序的時(shí)間。用戶(hù)CPU時(shí)間:用戶(hù)程序所耗費(fèi)的CPU時(shí)間。系統(tǒng)CPU時(shí)間:用戶(hù)程序運(yùn)行期間操作系統(tǒng)耗費(fèi)的

CPU時(shí)間。1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)基準(zhǔn)測(cè)試程序用于測(cè)試和比較性能的基準(zhǔn)測(cè)試程序的最佳選擇是真實(shí)應(yīng)用程序。

(例如編譯器)以前常采用簡(jiǎn)化了的程序,例如:核心測(cè)試程序:從真實(shí)程序中選出的關(guān)鍵代碼段構(gòu)成的小程序。小測(cè)試程序:簡(jiǎn)單的只有幾十行的小程序。合成的測(cè)試程序:人工合成出來(lái)的程序。Whetstone與Dhrystone是最流行的合成測(cè)試程序。

從測(cè)試性能的角度來(lái)看,上述測(cè)試程序不可信了。1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)原因:這些程序比較小,具有片面性;系統(tǒng)結(jié)構(gòu)設(shè)計(jì)者和編譯器的設(shè)計(jì)者可以“合謀”把他們的機(jī)器面向這些測(cè)試程序進(jìn)行優(yōu)化設(shè)計(jì),使得該機(jī)器顯得性能更高。性能測(cè)試的結(jié)果除了和采用什么測(cè)試程序有關(guān)以外,還和在什么條件下進(jìn)行測(cè)試有關(guān)?;鶞?zhǔn)測(cè)試程序設(shè)計(jì)者對(duì)制造商的要求采用同一種編譯器;對(duì)同一種語(yǔ)言的程序都采用相同的一組編譯標(biāo)志。1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)一個(gè)問(wèn)題:是否允許修改測(cè)試程序的源程序三種不同的處理方法:不允許修改;允許修改,但因測(cè)試程序很復(fù)雜或者很大,幾乎是無(wú)法修改。允許修改,只要保證最后輸出的結(jié)果相同。基準(zhǔn)測(cè)試程序套件:由各種不同的真實(shí)應(yīng)用程序構(gòu)成。(能比較全面地反映計(jì)算機(jī)在各個(gè)方面的處理性能)SPEC系列:最成功和最常見(jiàn)的測(cè)試程序套件(美國(guó)的標(biāo)準(zhǔn)性能測(cè)試公司創(chuàng)建)1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)桌面計(jì)算機(jī)的基準(zhǔn)測(cè)試程序套件可以分為兩大類(lèi):

處理器性能測(cè)試程序,圖形性能測(cè)試程序SPEC89:用于測(cè)試處理器性能。10個(gè)程序(4個(gè)整數(shù)程序,6個(gè)浮點(diǎn)程序)演化出了4個(gè)版本

SPEC92:20個(gè)程序

SPEC95:18個(gè)程序

SPEC2000:26個(gè)程序

SPECCPU2006:29個(gè)程序SPECCPU20061.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)整數(shù)程序12個(gè)(CINT2006)9個(gè)是用C寫(xiě)的,3個(gè)是用C++寫(xiě)的浮點(diǎn)程序17個(gè)(CFP2006)6個(gè)是用FORTRAN寫(xiě)的,4個(gè)是用C++寫(xiě)的,3個(gè)是用C寫(xiě)的,4個(gè)是用C和FORTRAN混合編寫(xiě)的。SPEC測(cè)試程序套件中的其它一系列測(cè)試程序組件SPECSFS:用于NFS(網(wǎng)絡(luò)文件系統(tǒng))文件服務(wù)器的測(cè)試程序。它不僅測(cè)試處理器的性能,而且測(cè)試I/O系統(tǒng)的性能。它重點(diǎn)測(cè)試吞吐率。SPECWeb:Web服務(wù)器測(cè)試程序。1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)SPECviewperf:用于測(cè)試圖形系統(tǒng)支持OpenGL庫(kù)的性能。SPECapc:用于測(cè)試圖形密集型應(yīng)用的性能。性能比較機(jī)器A機(jī)器B機(jī)器CW(1)

W(2)

W(3)

程序11.0010.0020.000.500.9090.999程序21000.0010.0020.000.500.0910.001加權(quán)算術(shù)平均值A(chǔ)m(1)500.5010.0020.00加權(quán)算術(shù)平均值A(chǔ)m(2)91.9110.0020.00加權(quán)算術(shù)平均值A(chǔ)m(3)2.0010.0020.00兩個(gè)程序在A、B、C三臺(tái)機(jī)器上的執(zhí)行時(shí)間1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)如何比較這三臺(tái)機(jī)器的性能呢?從該表可以得出:執(zhí)行程序1:A機(jī)的速度是B機(jī)的10倍A機(jī)的速度是C機(jī)的20倍B機(jī)的速度是C機(jī)的2倍執(zhí)行程序2:B機(jī)的速度是A機(jī)的100倍C機(jī)的速度是A機(jī)的50倍B機(jī)的速度是C機(jī)的2倍1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)方法1:總執(zhí)行時(shí)間:機(jī)器執(zhí)行所有測(cè)試程序的總時(shí)間平均執(zhí)行時(shí)間:各測(cè)試程序執(zhí)行時(shí)間的算術(shù)平均值其中:Ti:第i個(gè)測(cè)試程序的執(zhí)行時(shí)間

n:測(cè)試程序組中程序的個(gè)數(shù)1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)加權(quán)執(zhí)行時(shí)間:各測(cè)試程序執(zhí)行時(shí)間的加權(quán)平均值其中,Wi:第i個(gè)測(cè)試程序在測(cè)試程序組中所占的比重

Ti:該程序的執(zhí)行時(shí)間1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)方法2—調(diào)和平均值法(前提:性能是用速度來(lái)表示的)其中,Ri:由n個(gè)程序組成的工作負(fù)荷中執(zhí)行第i個(gè)程序的速度

Ri=1/TiTi:第i個(gè)程序的執(zhí)行時(shí)間加權(quán)調(diào)和平均值公式(各程序出現(xiàn)比例不同)

1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)方法3—幾何平均值法:以某臺(tái)計(jì)算機(jī)的性能作為參考標(biāo)準(zhǔn),其他計(jì)算機(jī)性能則除以該參考標(biāo)準(zhǔn)而獲得一個(gè)比值。

Ri:由n個(gè)程序組成的工作負(fù)荷中執(zhí)行第i個(gè)程序的速度

Ri=1/Ti∏:連乘1.3計(jì)算機(jī)系統(tǒng)的性能評(píng)測(cè)加權(quán)幾何平均值Gm表示法有一個(gè)很好的特性

幾何平均值的比等于比的幾何平均值

1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展1.4.1馮·諾依曼結(jié)構(gòu)及其改進(jìn)存儲(chǔ)程序計(jì)算機(jī)的結(jié)構(gòu)1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展存儲(chǔ)程序原理的基本點(diǎn):指令驅(qū)動(dòng)程序預(yù)先存放在計(jì)算機(jī)存儲(chǔ)器中,機(jī)器一旦啟動(dòng),就能按照程序指定的邏輯順序執(zhí)行這些程序,自動(dòng)完成由程序所描述的處理工作。馮·諾依曼結(jié)構(gòu)的主要特點(diǎn)計(jì)算機(jī)以運(yùn)算器為中心。在存儲(chǔ)器中,指令和數(shù)據(jù)同等對(duì)待。指令和數(shù)據(jù)一樣可以進(jìn)行運(yùn)算,即由指令組成的程序是可以修改的。存儲(chǔ)器是按地址訪(fǎng)問(wèn)、按順序線(xiàn)性編址的一維結(jié)構(gòu),每個(gè)單元的位數(shù)是固定的。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展指令的執(zhí)行是順序的。一般是按照指令在存儲(chǔ)器中存放的順序執(zhí)行。程序的分支由轉(zhuǎn)移指令實(shí)現(xiàn)。由指令計(jì)數(shù)器PC指明當(dāng)前正在執(zhí)行的指令在存儲(chǔ)器中的地址。指令由操作碼和地址碼組成。指令和數(shù)據(jù)均以二進(jìn)制編碼表示,采用二進(jìn)制運(yùn)算。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展對(duì)系統(tǒng)結(jié)構(gòu)進(jìn)行的改進(jìn)輸入/輸出方式的改進(jìn)采用并行處理技術(shù)如何挖掘傳統(tǒng)機(jī)器中的并行性?在不同的級(jí)別采用并行技術(shù)。例如:微操作級(jí)、指令級(jí)、線(xiàn)程級(jí)、進(jìn)程級(jí)、任務(wù)級(jí)等。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展存儲(chǔ)器組織結(jié)構(gòu)的發(fā)展相聯(lián)存儲(chǔ)器與相聯(lián)處理機(jī)通用寄存器組高速緩沖存儲(chǔ)器Cache指令系統(tǒng)的發(fā)展兩個(gè)發(fā)展方向:復(fù)雜指令集計(jì)算機(jī)CISC精減指令集計(jì)算機(jī)RISC1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展軟件的可移植性:一個(gè)軟件可以不經(jīng)修改或者只需少量修改就可以由一臺(tái)機(jī)器移植到另一臺(tái)機(jī)器上正確地運(yùn)行。即同一個(gè)軟件可以應(yīng)用于不同的環(huán)境。差別只是執(zhí)行時(shí)間的不同。我們稱(chēng)這兩臺(tái)機(jī)器是軟件兼容的。實(shí)現(xiàn)可移植性的常用方法統(tǒng)一高級(jí)語(yǔ)言,采用系列機(jī),模擬與仿真。1.4.2軟件對(duì)系統(tǒng)結(jié)構(gòu)的影響1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展1、統(tǒng)一高級(jí)語(yǔ)言方法:所有用戶(hù)使用同一種高級(jí)語(yǔ)言編寫(xiě)軟件。方法特點(diǎn):需要特殊的編譯器適用范圍:所有的機(jī)器優(yōu)點(diǎn):實(shí)現(xiàn)軟件移植的一種理想的方法缺點(diǎn):較難實(shí)現(xiàn)1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展2、系列機(jī)方法:統(tǒng)一匯編語(yǔ)言、機(jī)器語(yǔ)言

定義:由同一廠(chǎng)家生產(chǎn)的具有相同的系統(tǒng)結(jié)構(gòu),但具有不同組成和實(shí)現(xiàn)的一系列不同型號(hào)的機(jī)器。較好地解決軟件開(kāi)發(fā)要求系統(tǒng)結(jié)構(gòu)相對(duì)穩(wěn)定與器件、硬件技術(shù)迅速發(fā)展的矛盾。適用:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)相同系列機(jī)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)要慎重,保證較長(zhǎng)時(shí)間不變化。但可做必要擴(kuò)充。`向上(下)兼容:按某檔機(jī)器編制的程序,不加修改就能運(yùn)行于比它高(低)檔的機(jī)器。向前(后)兼容:按某個(gè)時(shí)期投入市場(chǎng)的某種型號(hào)機(jī)器編制的程序,不加修改地就能運(yùn)行于在它之前(后)投入市場(chǎng)的機(jī)器。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展軟件兼容1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展系列機(jī)要求:保證向后兼容,力爭(zhēng)做到向上兼容。兼容機(jī):由不同公司廠(chǎng)家生產(chǎn)的具有相同系統(tǒng)結(jié)構(gòu)的計(jì)算機(jī)。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展3、模擬和仿真問(wèn)題的提出:不同系統(tǒng)結(jié)構(gòu)機(jī)器上的移植——實(shí)現(xiàn)另一種系統(tǒng)結(jié)構(gòu)關(guān)鍵:在一種系統(tǒng)結(jié)構(gòu)上實(shí)現(xiàn)另一種系統(tǒng)結(jié)構(gòu)。從指令集的角度來(lái)看,就是要在一種機(jī)器上實(shí)現(xiàn)另一種機(jī)器的指令集。1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展模擬用軟件的方法在一臺(tái)現(xiàn)有的機(jī)器A上實(shí)現(xiàn)另一臺(tái)機(jī)器B的系統(tǒng)結(jié)構(gòu)。A有B的指令系統(tǒng)1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展實(shí)現(xiàn)方法:用A機(jī)器的機(jī)器語(yǔ)言解釋實(shí)現(xiàn)B機(jī)器程序的方法被模擬的——虛擬機(jī)模擬用的——宿主機(jī)解釋程序——模擬程序模擬程序內(nèi)容:指令系統(tǒng)、數(shù)據(jù)表示、存儲(chǔ)系統(tǒng)、I/O系統(tǒng)等、形成虛擬機(jī)的操作系統(tǒng)缺點(diǎn):運(yùn)行速度慢、性能較差1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展仿真:少一重解釋?zhuān)C(jī)器語(yǔ)言、微程序)定義:用一臺(tái)現(xiàn)有機(jī)器上的微程序去解釋實(shí)現(xiàn)另一臺(tái)機(jī)器的指令集。進(jìn)行仿真的——宿主機(jī)被仿真的——目標(biāo)機(jī)解釋微程序——仿真微程序運(yùn)行速度比模擬方法的快仿真只能在系統(tǒng)結(jié)構(gòu)差距不大的機(jī)器之間使用1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展推動(dòng)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)不斷發(fā)展的最活躍的因素摩爾定律集成電路芯片上所集成的晶體管數(shù)目每隔18個(gè)月就翻一番。計(jì)算機(jī)的分代主要以器件作為劃分標(biāo)準(zhǔn)。它們?cè)谄骷?、系統(tǒng)結(jié)構(gòu)和軟件技術(shù)等方面都有各自的特征。SMP:對(duì)稱(chēng)式共享存儲(chǔ)器多處理機(jī)

MPP:大規(guī)模并行處理機(jī)MP:多處理機(jī)1.4.3器件發(fā)展對(duì)系統(tǒng)結(jié)構(gòu)的影響分代器件特征結(jié)構(gòu)特征軟件特征典型實(shí)例第一代(1945—1954年)電子管和繼電器存儲(chǔ)程序計(jì)算機(jī)程序控制I/O機(jī)器語(yǔ)言匯編語(yǔ)言普林斯頓ISA,ENIAC,IBM701第二代(1955—1964年)晶體管、磁芯印刷電路浮點(diǎn)數(shù)據(jù)表示尋址技術(shù)中斷、I/O處理機(jī)高級(jí)語(yǔ)言和編譯批處理監(jiān)控系統(tǒng)UnivacLAPC,CDC1604,IBM7030第三代(1965—1974年)SSI和MSI多層印刷電路微程序流水線(xiàn)、Cache先行處理系列機(jī)多道程序分時(shí)操作系統(tǒng)IBM360/370,CDC6600/7600,DECPDP-8第四代(1975—1990年)LSI和VLSI半導(dǎo)體存儲(chǔ)器向量處理分布式存儲(chǔ)器并行與分布處理Cray-1,IBM3090,DECVAX9000,Convax-1第五代(1991年—)高性能微處理器高密度電路超標(biāo)量、超流水SMP、MP、MPP機(jī)群大規(guī)模、可擴(kuò)展并行與分布處理SGICrayT3E,IBMSP2,DECAlphaServer84001.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展不同的應(yīng)用對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)提出了不同的要求。應(yīng)用需求是促使計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展的最根本的動(dòng)力。一些特殊領(lǐng)域:需要高性能的系統(tǒng)結(jié)構(gòu)高結(jié)構(gòu)化的數(shù)值計(jì)算氣象模型、流體動(dòng)力學(xué)、有限元分析非結(jié)構(gòu)化的數(shù)值計(jì)算蒙特卡洛模擬、稀疏矩陣實(shí)時(shí)多因素問(wèn)題語(yǔ)音識(shí)別、圖象處理、計(jì)算機(jī)視覺(jué)1.4.4應(yīng)用對(duì)系統(tǒng)結(jié)構(gòu)的影響1.4計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展大存儲(chǔ)容量和輸入輸出密集的問(wèn)題數(shù)據(jù)庫(kù)系統(tǒng)、事務(wù)處理系統(tǒng)圖形學(xué)和設(shè)計(jì)問(wèn)題計(jì)算機(jī)輔助設(shè)計(jì)人工智能面向知識(shí)的系統(tǒng)、推理系統(tǒng)等并行性:計(jì)算機(jī)系統(tǒng)在同一時(shí)刻或者同一時(shí)間間隔內(nèi)進(jìn)行多種運(yùn)算或操作。只要在時(shí)間上相互重疊,就存在并行性。同時(shí)性:兩個(gè)或兩個(gè)以上的事件在同一時(shí)刻發(fā)生。并發(fā)性:兩個(gè)或兩個(gè)以上的事件在同一時(shí)間間隔內(nèi)發(fā)生。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展1.5.1并行性的概念1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展從處理數(shù)據(jù)的角度來(lái)看,并行性等級(jí)從低到高可分為:字串位串:每次只對(duì)一個(gè)字的一位進(jìn)行處理。最基本的串行處理方式,不存在并行性。字串位并:同時(shí)對(duì)一個(gè)字的全部位進(jìn)行處理,不同字之間是串行的。開(kāi)始出現(xiàn)并行性。字并位串:同時(shí)對(duì)許多字的同一位(稱(chēng)為位片)進(jìn)行處理。具有較高的并行性。全并行:同時(shí)對(duì)許多字的全部位或部分位進(jìn)行處理。最高一級(jí)的并行。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展從執(zhí)行程序的角度來(lái)看,并行性等級(jí)從低到高可分為:指令內(nèi)部并行:?jiǎn)螚l指令中各微操作之間的并行。指令級(jí)并行:并行執(zhí)行兩條或兩條以上的指令。線(xiàn)程級(jí)并行:并行執(zhí)行兩個(gè)或兩個(gè)以上的線(xiàn)程。通常是以一個(gè)進(jìn)程內(nèi)派生的多個(gè)線(xiàn)程為調(diào)度單位。任務(wù)級(jí)或過(guò)程級(jí)并行:并行執(zhí)行兩個(gè)或兩個(gè)以上的過(guò)程或任務(wù)(程序段)以子程序或進(jìn)程為調(diào)度單元。作業(yè)或程序級(jí)并行:并行執(zhí)行兩個(gè)或兩個(gè)以上的作業(yè)或程序。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展三種途徑:時(shí)間重疊引入時(shí)間因素,讓多個(gè)處理過(guò)程在時(shí)間上相互錯(cuò)開(kāi),輪流重疊地使用同一套硬件設(shè)備的各個(gè)部分,以加快硬件周轉(zhuǎn)而贏得速度。資源重復(fù)引入空間因素,以數(shù)量取勝。通過(guò)重復(fù)設(shè)置硬件資源,大幅度地提高計(jì)算機(jī)系統(tǒng)的性能。1.5.2提高并行性的技術(shù)途徑1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展例如對(duì)于解釋指令的五個(gè)過(guò)程,就分別需要五個(gè)專(zhuān)用的部件,即取指令部件(IF)、指令譯碼部件(ID)、指令執(zhí)行部件(EX)、訪(fǎng)問(wèn)存儲(chǔ)器部件(M)和寫(xiě)結(jié)果部件(WB)。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展資源共享這是一種軟件方法,它使多個(gè)任務(wù)按一定時(shí)間順序輪流使用同一套硬件設(shè)備。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展系統(tǒng)結(jié)構(gòu)向并行性發(fā)展兩級(jí)

單機(jī)功能部件級(jí)多機(jī)更高并行水平不同耦合度的多機(jī):

最低耦合、松散耦合、緊密耦合三類(lèi):

分布處理系統(tǒng)同構(gòu)性多處理機(jī)異構(gòu)性多處理機(jī)1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展在發(fā)展高性能單處理機(jī)過(guò)程中,起主導(dǎo)作用的是時(shí)間重疊原理。實(shí)現(xiàn)時(shí)間重疊的基礎(chǔ):部件功能專(zhuān)用化把一件工作按功能分割為若干相互聯(lián)系的部分;把每一部分指定給專(zhuān)門(mén)的部件完成;然后按時(shí)間重疊原理把各部分的執(zhí)行過(guò)程在時(shí)間上重疊起來(lái),使所有部件依次分工完成一組同樣的工作。1.5.3單機(jī)系統(tǒng)中并行性的發(fā)展1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展在單處理機(jī)中,資源重復(fù)原理的運(yùn)用也已經(jīng)十分普遍。多體存儲(chǔ)器多操作部件通用部件被分解成若干個(gè)專(zhuān)用部件,如加法部件、乘法部件、除法部件、邏輯運(yùn)算部件等,而且同一種部件也可以重復(fù)設(shè)置多個(gè)。只要指令所需的操作部件空閑,就可以開(kāi)始執(zhí)行這條指令(如果操作數(shù)已準(zhǔn)備好的話(huà))。這實(shí)現(xiàn)了指令級(jí)并行。1.5計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展陣列處理機(jī)(并行處理機(jī))更進(jìn)一步,設(shè)置許多相同的處理單元,讓它們?cè)谕粋€(gè)控制器的指揮下,按照同一條指令的要求

溫馨提示

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