




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第一節(jié)計算機體系結(jié)構(gòu)的基本概念一、提高計算機硬件性能的因素
1.器件換代是計算機換代的基本標志
以器件的發(fā)展為標志,計算機系統(tǒng)經(jīng)歷了四代。器件技術(shù)為計算機的發(fā)展提供了必不可少的物質(zhì)基礎(chǔ),是推動計算機發(fā)展的基本因素。
2.體系結(jié)構(gòu)是現(xiàn)代計算機系統(tǒng)分類的基本依據(jù)
計算機的分類方法很多,普遍認可的是按性能與價格劃分,由此可分為巨型機、大型機、中型機、小型機和微型機五大類。但該分類方法已不能正確地反映當前計算機的性能、應用和發(fā)展趨勢等方面的現(xiàn)狀。第一節(jié)計算機體系結(jié)構(gòu)的基本概念主要原因有:
一是相互之間的界限越來越模糊;二是某一類機器的歸屬是動態(tài)變化的;三是現(xiàn)代計算機的硬件處理核心基本相同;四是該分類法沒有真正體現(xiàn)計算機的本質(zhì)特征。
第一節(jié)計算機體系結(jié)構(gòu)的基本概念主要特征嵌入式計算機 桌面計算機 服務(wù)器 超級計算機應用范圍智能儀器、測控裝置 面向個人大規(guī)模信息處理科學計算對應關(guān)系微型機應用微型化小型機、微型機大型機、中型機巨型機微處理器數(shù)目1~2個 1~4個幾個~幾十個幾十個以上系統(tǒng)價格差異很大500~5000美元5000~500萬1千萬~1億微處理器價格0.01~100美元 50~500200~10000200~10000性能通用、性價比、圖形等多媒體性能專用、價格、實時性、可靠性設(shè)計關(guān)鍵設(shè)吞吐量、可靠性、可擴性、可測性計關(guān)鍵性能專用、吞吐量、浮點計算第一節(jié)計算機體系結(jié)構(gòu)的基本概念二、廣義計算機語言與虛擬計算機
1.什么是計算機系統(tǒng)
一是指狹義的計算機系統(tǒng)。認為計算機系統(tǒng)是由運算器、控制器、存儲器、輸入設(shè)備、輸出設(shè)備五個部件組成。
I/O—CPU—M/S模式。二是指本義的計算機系統(tǒng)。認為計算機系統(tǒng)是由硬件和軟件兩部分組成。
S—H模式。
三是指廣義的計算機系統(tǒng)。認為計算機系統(tǒng)是由人員、數(shù)據(jù)、設(shè)備、程序、規(guī)程等五部分組成,只有把它們有機地結(jié)合在一起才能完成各種任務(wù)。
廣義模式。第一節(jié)計算機體系結(jié)構(gòu)的基本概念2.廣義的計算機語言
計算機系統(tǒng)的根本功能在于信息處理,任何一個信息處理過程都是對某一層面而言。因此,把描述控制流程的、有一定規(guī)則的字符集合稱之為計算機語言。而控制流程實現(xiàn)有三種方法:全硬件的方法。硬件和軟件相結(jié)合的方法。全軟件的方法??梢?,計算機語言并不專屬軟件范疇,而是分屬于計算機系統(tǒng)的各個層面,且有不同的作用,這就是計算機語言的廣義性。3.虛擬計算機計算機系統(tǒng)只對某一層次的觀察者而存在,通過該層次的廣義語言來體現(xiàn)它的功能,并為廣義語言提供翻譯手段,作用于信息處理和控制對象上,并從對象上獲得必要的狀態(tài)信息,這就是虛擬計算機。簡言之,由軟件實現(xiàn)的機器即為虛擬計算機。第一節(jié)計算機體系結(jié)構(gòu)的基本概念觀察者廣義語言編譯或解釋器硬件電路狀態(tài)信息控制信息虛擬計算機的組成4.透明性
虛擬計算機僅對這一層次的觀察者而存在的。從某一層次的觀察者來看,只是通過該層次的語言來了解和使用機器,不必關(guān)心其內(nèi)層的那些機器是如何工作和如何實現(xiàn)各自功能的。這一概念稱為透明性,即所謂透明性是指在計算機技術(shù)中,一種本來存在的事物或原性,但從某種角度看似乎不存在。它是基于虛擬計算機的觀點而形成的一個概念。第一節(jié)計算機體系結(jié)構(gòu)的基本概念三、計算機體系結(jié)構(gòu)及其范疇
1.什么是計算機體系結(jié)構(gòu)計算機體系結(jié)構(gòu)是G.M.Amdahl等人在1964年提出的。他們提出計算機體系結(jié)構(gòu)是程序員看到的計算機屬性,然而不同級程序員所看到的計算機屬性顯然不同。
Amdahl等人提出的程序員是指機器語言程序員,計算機屬性是硬件的概念結(jié)構(gòu)及其功能特性,是計算機硬件的外特性。因此完整的計算機體系結(jié)構(gòu)的定義是:機器語言程序員所必須了解的機器概念性結(jié)構(gòu)和功能特性。第一節(jié)計算機體系結(jié)構(gòu)的基本概念2.計算機體系結(jié)構(gòu)范疇計算機體系結(jié)構(gòu)作為一門學科,主要是研究軟件與硬件功能分配和對軟件、硬件界面的確定,即哪些功能由軟件完成,哪些功能由硬件完成,以及如何最佳最合理地實現(xiàn)分配給硬件的功能。它所包括的內(nèi)容一般有:①數(shù)據(jù)表示②尋址方式③寄存器組織④指令系統(tǒng)⑤存儲系統(tǒng)⑥中斷機構(gòu)⑦機器工作狀態(tài)(如管態(tài)、目態(tài)等)的定義和切換⑧機器級的I/O結(jié)構(gòu)⑨信息保護
第一節(jié)計算機體系結(jié)構(gòu)的基本概念第一節(jié)計算機體系結(jié)構(gòu)的基本概念四、計算機組成與實現(xiàn)
1.計算機組成
什么是計算機組成。
計算機組成是計算機體系結(jié)構(gòu)的邏輯實現(xiàn),包括機器內(nèi)部的數(shù)據(jù)流和控制流的組成以及邏輯設(shè)計等。計算機邏輯設(shè)計的目的及其內(nèi)容。計算機邏輯設(shè)計是按所希望達到的性能價格比,最佳、最合理地把各種設(shè)備和部件組成計算機,以實現(xiàn)所確定的計算機體系結(jié)構(gòu)。計算機組成的設(shè)計內(nèi)容對傳統(tǒng)機器程序員一般是透明的。
邏輯設(shè)計的內(nèi)容主要包括:
數(shù)據(jù)通路寬度。操作對功能部件的共享程度。專用功能部件的設(shè)置。功能部件的并行性。緩沖和排隊技術(shù)的??刂撇考M成方式??煽啃约夹g(shù)。性能優(yōu)化技術(shù)。第一節(jié)計算機體系結(jié)構(gòu)的基本概念2.計算機實現(xiàn)
計算機實現(xiàn)是指計算機組成的物理實現(xiàn)。主要內(nèi)容有:(1)處理機、主存儲器等部件的物理結(jié)構(gòu)。(2)器件的物理性能,如電參數(shù)、傳輸速度、動態(tài)范圍、集成度等。(3)器件、模塊、插件和底板等的劃分與連接。(4)專用器件的設(shè)計、微組裝技術(shù)。(5)信號傳輸、制作、電源、冷卻和裝配等技術(shù)以及有關(guān)的制造技術(shù)和工藝等。
第一節(jié)計算機體系結(jié)構(gòu)的基本概念
3.計算機體系結(jié)構(gòu)、組成與實現(xiàn)間的關(guān)系
計算機體系結(jié)構(gòu)、計算機組成和實現(xiàn)是三個不同的概念。計算機體系結(jié)構(gòu)、計算機組成和實現(xiàn)相互影響。計算機體系結(jié)構(gòu)、組成和實現(xiàn)的界限模糊。
第一節(jié)計算機體系結(jié)構(gòu)的基本概念第一節(jié)計算機體系結(jié)構(gòu)的基本概念四、計算機體系結(jié)構(gòu)的特性
1.計算機體系結(jié)構(gòu)的層次性
計算機系統(tǒng)是硬件和軟件的統(tǒng)一體,直接反映結(jié)構(gòu)上的層次性。如果依據(jù)虛擬計算機的觀點來看,不同層次的觀察者看到的計算機系統(tǒng)無論功能還是結(jié)構(gòu)都不相同,即就有如圖所示計算機系統(tǒng)的層次結(jié)構(gòu)。機器指令時序微程序控制寄存器傳送門指令系統(tǒng)CPU機器語言程序鍵盤命令和OS原語操作系統(tǒng)運行程序匯編語言匯編程序運行程序高級語言編譯解釋運行程序應用語言應用程序信息處理系統(tǒng)硬操作時序硬聯(lián)邏輯邏輯線路內(nèi)核M0硬聯(lián)邏輯問題規(guī)范數(shù)學模型系統(tǒng)配置M7系統(tǒng)分析M6應用程序機器M5高級語言機器M4匯編語言機器M3操作系統(tǒng)機器M2機器語言機器M1微程序控制系統(tǒng)分析員用戶高級語言程序員低級語言程序員操作員虛擬機邏輯設(shè)計員物理機機器語言程序員硬件設(shè)計員問題
分析應用
軟件系統(tǒng)
軟件計算機組成與結(jié)構(gòu)第一節(jié)計算機體系結(jié)構(gòu)的基本概念2.計算機體系結(jié)構(gòu)的等級性
計算機系統(tǒng)分為巨型、中型、小型、微型等若干等級。一臺計算機體系結(jié)構(gòu)的等級將隨時間而下移。各型機器的性能、價格隨時間變化的趨勢大致可以用圖說明。由圖可見,各型機器所具備的性能隨時間是在動態(tài)地下移的,但價格卻在相當長一段時間內(nèi)基本不變。第一節(jié)計算機體系結(jié)構(gòu)的基本概念巨型機大型機中型機小型機微型機價格虛線為等性能線
t-3t-2t-1tt+1年代圖1.3計算機體系結(jié)構(gòu)等級與性能、價格的關(guān)系3.計算機體系結(jié)構(gòu)的系列性系列機是指由同一個廠家生產(chǎn)的體系結(jié)構(gòu)相同、組成和實現(xiàn)不同的一系列不同型號的機器。簡言之,體系結(jié)構(gòu)相同的機器即為系列機。而把不同公司廠家生產(chǎn)的具有相同系統(tǒng)結(jié)構(gòu)的計算機稱為兼容機。
系列機軟件兼容是指同一個軟件(目標程序)可以不加修改地運行于系統(tǒng)結(jié)構(gòu)相同的各檔次的機器,而且所得結(jié)果一致。軟件兼容有向上兼容與向下兼容和向前兼容與向后兼容兩種類型。對系列機而言,必須保證做到軟件向后兼容,力爭做到軟件向上兼容。第一節(jié)計算機體系結(jié)構(gòu)的基本概念第一節(jié)計算機體系結(jié)構(gòu)的基本概念
機器檔次高
向后兼容向前兼容
向下兼容
向上兼容當前機器4.計算機系統(tǒng)結(jié)構(gòu)的模擬仿真性
模擬是指用機器語言程序解釋實現(xiàn)程序移植的方法,被模擬的B機稱為虛擬機,A機稱為宿主機。
用微程序直接解釋另一種機器的指令系統(tǒng)稱為仿真。仿真與模擬的主要區(qū)別在于解釋所用的語言。仿真是用微程序解釋,其解釋程序在微程序存儲器中;模擬是用機器語言解釋,其解釋程序在主存儲器中。另外仿真的速度要比模擬快,但實現(xiàn)難度要大。第一節(jié)計算機體系結(jié)構(gòu)的基本概念第一節(jié)計算機體系結(jié)構(gòu)的基本概念B虛擬機A宿主機M4以上的應用級M5高級語言級M2機器語言級M4匯編語言級M1微程序級M2機器語言級M3OS級M3OS級圖1-5在A機器語言級上實現(xiàn)B機器指令系統(tǒng)
第二節(jié)計算機體系結(jié)構(gòu)的演變一、計算機體系結(jié)構(gòu)的基本模型
1.計算機工作的原理
存儲程序、順序控制原理的基本點是指令驅(qū)動,即程序由指令組成,并和數(shù)據(jù)一起存放在計算機存儲器中。機器一經(jīng)啟動,就能按照程序指定的邏輯順序把指令從存儲器中讀出來逐條執(zhí)行,自動完成由程序所描述的處理工作。2.計算機體系結(jié)構(gòu)的框架
運算器存儲器控制器輸入設(shè)備輸出設(shè)備第二節(jié)計算機體系結(jié)構(gòu)的演變典型的馮·諾依曼型計算機的硬件結(jié)構(gòu)框架第二節(jié)計算機體系結(jié)構(gòu)的演變以存儲器為中心的計算機硬件結(jié)構(gòu)框架存儲器控制器運算器輸入設(shè)備輸出設(shè)備I/O主機中央處理器CPU算術(shù)邏輯運算單元ALU控制單元CU主存儲器M.MI/O接口I/O設(shè)備
第二節(jié)計算機體系結(jié)構(gòu)的演變現(xiàn)代計算機的基本結(jié)構(gòu)框架
第二節(jié)計算機體系結(jié)構(gòu)的演變3.馮·諾依曼型計算機的特點
機器以運算器為中心。由控制器集中控制。采用存儲程序的思想。指令和數(shù)據(jù)在存貯器中同等對待均采用二進制編碼。存儲器是一個順序、線性編址的一維空間,每個存儲單元的二進制的位數(shù)是固定的,地址是唯一定義的。指令為低級機器語言(二進制),驅(qū)動機器進行操作。軟件與硬件完全分開。二、計算機體系結(jié)構(gòu)存在的主要問題及其改進
1.馮·諾依曼型結(jié)構(gòu)存在的主要問題
由于機器以運算器為中心,使得低速的輸入/輸出和高速的運算不得不相互等待,串行進行。由于采用控制器集中控制使控制器的負擔過重,從而嚴重影響了機器速度和設(shè)備利用率的提高。由于采用存儲程序控制的思想,當前后指令需要的數(shù)據(jù)相關(guān)時,順序執(zhí)行是必須的。但實際程序中的許多前后指令的數(shù)據(jù)互不相關(guān),因此單純的順序執(zhí)行指令就難以最大限度地發(fā)揮系統(tǒng)的并行處理能力。由于指令和數(shù)據(jù)混存于同一存儲器中,在程序執(zhí)行過程中,指令可能被當作數(shù)據(jù)而被修改。不利于程序調(diào)試、再入性、遞歸調(diào)用,不利于指令和數(shù)據(jù)并行存取,不利于采用重疊方式來提高速度第二節(jié)計算機體系結(jié)構(gòu)的演變
由于存貯單元是按順序、線性編址的,一維線性空間的表示與棧、樹、圖、多維數(shù)組等非線性、多維、離散的數(shù)據(jù)結(jié)構(gòu)相矛盾。由于存貯單元是按一級直接尋址訪問,導致存貯空間極為有限,外圍譯碼電路又極為復雜。操作數(shù)并不表示它本身是何種數(shù)據(jù)類型,而是由操作碼指出。因此每增加一種操作數(shù)類型,就要增加一組處理這種數(shù)據(jù)類型的指令。這樣,一方面不僅使指令系統(tǒng)日益龐大復雜,另一方面由于高級語言中操作符與數(shù)據(jù)類型無關(guān)。使得機器指令與高級語言之間存在的語義差距過去只好通過編譯程序來彌補,從而加重了編譯的負擔,增大輔助開銷。軟件與硬件截然分開,硬件結(jié)構(gòu)的完全固定,會使得無法更合理地進行軟硬功能分配,難以優(yōu)化系統(tǒng)結(jié)構(gòu)。當求解的問題和應用要求變化時,會使性能價格比明顯下降。第二節(jié)計算機體系結(jié)構(gòu)的演變2.馮·諾依曼型計算機結(jié)構(gòu)的改進
機器以運算器為中心改為以主存為中心,讓系統(tǒng)的輸入/輸出與CPU
的操作并行,多種輸入/輸出并行。存儲程序順序控制的思想改為存儲程序激發(fā)控制的思想。計算機系統(tǒng)增設(shè)許多高級數(shù)據(jù)表示,使得數(shù)據(jù)不帶類型標志改為自身帶有數(shù)據(jù)類型標志,增強指令具有對多種數(shù)據(jù)類型操作的通用性,簡化指令系統(tǒng),縮小高級語言與機器語言的距離。強調(diào)軟硬結(jié)合,硬件結(jié)構(gòu)邏輯的可編程性。依靠知識邏輯推理而不依靠精確的數(shù)值運算,從而出現(xiàn)了處理非數(shù)值化信息的智能計算機。為實現(xiàn)各種特定任務(wù),出現(xiàn)了各種不同的計算機系統(tǒng)。存儲器組成多樣化、復雜化。對于指令與數(shù)據(jù)等同問題,對于存儲的線性直接尋址的問題,對于存儲器帶寬問題。為解決局部存在的問題,而采用了許多技術(shù)措施。第二節(jié)計算機體系結(jié)構(gòu)的演變
第二節(jié)計算機體系結(jié)構(gòu)的演變
3.現(xiàn)代計算機體系結(jié)構(gòu)的主要特點
(1)軟硬件功能分配更加科學合理。(2)計算過程的并行處理能力強。(3)存儲器的組織結(jié)構(gòu)更加適合計算機系統(tǒng)的需要。(4)高性能的微處理器得以實現(xiàn)。(5)多處理機組織結(jié)構(gòu)的計算機占據(jù)統(tǒng)治地位。
第二節(jié)計算機體系結(jié)構(gòu)的演變?nèi)?、計算機體系結(jié)構(gòu)的演變過程
1.計算機體系結(jié)構(gòu)的生命周期硬件系統(tǒng)軟件應用軟件消亡5~7年5~7年5~7年第二節(jié)計算機體系結(jié)構(gòu)的演變2.計算機體系結(jié)構(gòu)的演變過程年代器件 體系結(jié)構(gòu)技術(shù)軟件技術(shù)典型機器
第一代(1945~1954)電子管、繼電器和絕緣導線互連程序控制I/O、定點數(shù)據(jù)表示機器語言和匯編語言普林斯頓ISAENIACIBM701第二代(1955~1964)晶體管、磁芯和印刷電路浮點數(shù)據(jù)表示、尋址技術(shù)、中斷和I/O處理機UnivacLARCCDC--1604IBM7030高級語言、編譯和批處理監(jiān)控程序第三代(1965~1974)SSI和MSI、多層印刷電路和微程序IBM360/370DECPDP-8多道程序和分時操作系流水線、高速緩存、先行處理和系列機第四代(1975~1990)SI、VLSI和半導體存儲器向量處理、分布式存儲器和指令級并行技術(shù)并行和分布處理Cray-1IBM3090DECVAX9000可擴展并行和分布處理線程級并行技術(shù)、SMP、MP、MPP和網(wǎng)絡(luò)高性能微處理器和大規(guī)模高蜜度電路
第五代(1991~)SGICrayT3EIBMxServerSUNE10000
第三節(jié)影響計算機體系結(jié)構(gòu)的因素一、影響計算機體系結(jié)構(gòu)的基本因素
1.軟件對計算機體系結(jié)構(gòu)的影響軟件是推動計算機體系結(jié)構(gòu)發(fā)展的關(guān)鍵因素。一是操作系統(tǒng)。操作系統(tǒng)與硬件關(guān)系最為密切,如網(wǎng)絡(luò)操作系統(tǒng)的主要功能是提供計算機之間的通信和資源共享,要求計算機的體系結(jié)構(gòu)內(nèi)必須配置通信接口部件。二是語言處理系統(tǒng)。為實現(xiàn)軟件的移植,則要求計算機體系結(jié)構(gòu)具有系列性和模擬仿真性;再是統(tǒng)一高級語言,不僅要求語言標準化,也要求計算機體系結(jié)構(gòu)在處理程序設(shè)計語言上具有相同的屬性。
第三節(jié)影響計算機體系結(jié)構(gòu)的因素2.并行處理技術(shù)對計算機體系結(jié)構(gòu)的影響
并行處理技術(shù)是推動計算機體系結(jié)構(gòu)發(fā)展的關(guān)鍵因素。實現(xiàn)并行處理的技術(shù)不同,就形成了不同的計算機體系結(jié)構(gòu),如時間重疊的流水線并行處理技術(shù)的應用就產(chǎn)生了流水線計算機,重復設(shè)置功能部件的并行處理技術(shù)的應用就產(chǎn)生了陣列計算機,資源共享并行處理技術(shù)的應用就產(chǎn)生了多計算機系統(tǒng)。計算機體系結(jié)構(gòu)從低級向高級發(fā)展的過程也就是并行處理技術(shù)不斷發(fā)展的過程。
第三節(jié)影響計算機體系結(jié)構(gòu)的因素
3.應用對計算機體系結(jié)構(gòu)的影響
應用需求是促使計算機系統(tǒng)結(jié)構(gòu)發(fā)展的根本動力。不同的應用對計算機體系結(jié)構(gòu)的設(shè)計提出了不同的要求,如果現(xiàn)有的計算機不能滿足應用要求,則需要設(shè)計和采用新的計算機體系結(jié)構(gòu)。因為對計算機應用來講,計算效率高低是一個關(guān)鍵問題。專用的體系結(jié)構(gòu)的高效率與通用的體系結(jié)構(gòu)的廣泛市場呈均勢,二者相輔相成。
4.器件對計算機系統(tǒng)結(jié)構(gòu)的影響器件是促使計算機體系結(jié)構(gòu)發(fā)展的最活躍的因素。器件是組成計算機的最基本單元,通常所講的第幾代計算機,則是以器件為劃分標準。器件的性能、使用方法改變,影響體系結(jié)構(gòu)及組成設(shè)計方法。器件性能/價格提高,使新結(jié)構(gòu)、新組成、新技術(shù)從理論變?yōu)楝F(xiàn)實,提高計算機體系結(jié)構(gòu)的性能,使新結(jié)構(gòu)、新組成下移。5.價格對計算機體系結(jié)構(gòu)的影響
性能價格比是計算機體系結(jié)構(gòu)的重要參數(shù)。全面地評價一個計算機體系結(jié)構(gòu)時,既要考慮性能又要考慮價格。第三節(jié)影響計算機體系結(jié)構(gòu)的因素
第三節(jié)影響計算機體系結(jié)構(gòu)的因素二、編譯技術(shù)與計算機體系結(jié)構(gòu)的關(guān)系
在所有軟件中,編譯程序與計算機體系結(jié)構(gòu)的相互影響最強,相互間的影響關(guān)系是通過指令系統(tǒng)結(jié)構(gòu)來反映。具備哪些特性的指令結(jié)構(gòu)可以生成高質(zhì)量的目標代碼,以設(shè)計出合理的指令集結(jié)構(gòu);如何才能容易地為指令系統(tǒng)結(jié)構(gòu)編寫出相應高效的編譯器,以充分發(fā)揮計算機性能。第三節(jié)影響計算機體系結(jié)構(gòu)的因素
1.現(xiàn)代編譯程序的結(jié)構(gòu)
一是要保證編譯的目標代碼正確,使所有有效的程序能夠被正確地編譯;二是編譯出的目標代碼在目標機器上的執(zhí)行速度要盡可能高,代碼的容量要盡可能??;三是編譯的速度、對程序調(diào)試的支持以及各種語言之間互操作的可能性等。
高度依賴機器而不依賴語言依賴關(guān)系過程結(jié)構(gòu)功能語言預處理高級優(yōu)化局部與全局優(yōu)化代碼生成依賴語言而與機器獨立將語言轉(zhuǎn)換到一般中間形式較多依賴語言而大部分與機器獨立過程展開和循環(huán)變換等較少依賴語言而開始依賴機器(如寄存器個數(shù)/類型)含全局和局部優(yōu)化、寄存器分配仔細選擇指令,機器相關(guān)的優(yōu)化
第三節(jié)影響計算機體系結(jié)構(gòu)的因素
2.現(xiàn)代編譯程序優(yōu)化轉(zhuǎn)換的類型
高級優(yōu)化。高級優(yōu)化是對源始程序進行優(yōu)化,并將優(yōu)化轉(zhuǎn)換結(jié)果送到后續(xù)的優(yōu)化掃描中。局部優(yōu)化。局部優(yōu)化是一系列在線性的程序段(也稱為基本塊)中進行的優(yōu)化轉(zhuǎn)換。全局優(yōu)化。全局優(yōu)化是在局部優(yōu)化的基礎(chǔ)上,考慮到各種分支情況,對循環(huán)和分支進行一系列的優(yōu)化轉(zhuǎn)換?;跈C器的優(yōu)化?;跈C器的優(yōu)化目的是充分利用機器結(jié)構(gòu)的某些特點進行代碼優(yōu)化轉(zhuǎn)換。優(yōu)化轉(zhuǎn)換類型優(yōu)化轉(zhuǎn)換方法說明高級優(yōu)化:處于或接近源代碼級別,與機器獨立無關(guān)。過程集成用過程體代替過程調(diào)用語句局部優(yōu)化:線性代碼序列內(nèi)的優(yōu)化。消去公共子表達式設(shè)法找出在同一表達式中出現(xiàn)的公共子表達式,并把第一次公共子表達式計算出的值存放在一個臨時變量中,利用該臨時變量值消去表達式中的其他相同公共子表達式的計算。常數(shù)傳遞將所有被賦值為常數(shù)的變量用該常數(shù)的值代替。降低堆棧的高度對表達式進行重新組織,盡量減少表達式求值時所需的資源。全局優(yōu)化(含寄存器分配):非線性代碼序列的優(yōu)化,其中寄存器分配是提高實現(xiàn)機器代碼速度等方面的核心問題。消去公共子表達式和局部優(yōu)化中的消去公共子表達式優(yōu)化類似??截悅鬟f如果變量A已經(jīng)賦值為X,則用X代替所有地方的A。代碼移動如果循環(huán)體中的某段代碼在每次循環(huán)中均是計算相同的值,則將這段代碼移到循環(huán)的外部。消去索引變量簡化/消去在循環(huán)體中的數(shù)組地址計算?;跈C器的優(yōu)化:依賴于機器的特點降低計算量如:用加操作和移位操作來代替一個常數(shù)的乘操作。流水線調(diào)度重新組織指令序列以提高流水線性能。分支偏移的優(yōu)化選擇能夠達到分支目標的最短分支偏移量。
第三節(jié)影響計算機體系結(jié)構(gòu)的因素
第三節(jié)影響計算機體系結(jié)構(gòu)的因素三.算法對計算機系統(tǒng)結(jié)構(gòu)的影響
計算機具有高性能是相對于某一類算法而言,而算法的優(yōu)劣是相對于某一計算機體系結(jié)構(gòu)而言。計算機體系結(jié)構(gòu)設(shè)計應針對某些應用領(lǐng)域,研究一類算法(不是一個算法)的基礎(chǔ)上,構(gòu)造出一個適合該類算法的計算機體系結(jié)構(gòu)。算法設(shè)計也應依據(jù)某種計算機體系結(jié)構(gòu)開展研究,構(gòu)造出一個適合該類計算機體系結(jié)構(gòu)的算法。專用與通用計算機一直是計算機體系結(jié)構(gòu)的研究的方向和同一問題的處理算法有許多研究者在設(shè)計的主要原因就在此。并行算法的優(yōu)劣直接依賴于并行計算機的體系結(jié)構(gòu),串行算法構(gòu)則相對獨立。
第三節(jié)影響計算機體系結(jié)構(gòu)的因素指令流(InstructionStream)是指機器執(zhí)行的指令序列。數(shù)據(jù)流(DataStream)是指根據(jù)指令操作要求依次存取數(shù)據(jù)的序列。多倍性(Multiplicity)是指在系統(tǒng)最受限制的部件上,同時處于該部件執(zhí)行階段的指令或數(shù)據(jù)的最大可能個數(shù)。
Flynn分類法|多倍性分類法一、計算機體系結(jié)構(gòu)的分類
1.Flynn分類法—多倍性分類法
第三節(jié)影響計算機體系結(jié)構(gòu)的因素單指令流單數(shù)據(jù)流MMPUCUISSIDS
單指令流多數(shù)據(jù)流CUPUnPU2PU1MMnMM2MM1ISSIDS2……DS3DS1第三節(jié)影響計算機體系結(jié)構(gòu)的因素多指令流單數(shù)據(jù)流
…PU2PU1CUnCU2CU1PUNMMnMM2MM1IS1IS1DS1…IS2IS2DS2ISnISnDSn…
…
…第三節(jié)影響計算機體系結(jié)構(gòu)的因素多指令流多數(shù)據(jù)流
…CUnCU2CU1PUnPU2PU1MMnMM2MM1IS1IS1DS1IS2IS2DS2ISnISnDSn………第三節(jié)影響計算機體系結(jié)構(gòu)的因素
2.馮氏分類法——最大并行度分類法
最大并行度Pm是指計算機系統(tǒng)在單位時間內(nèi)能夠處理的最大的二進制位數(shù)。字串位串字并位串字串位并字并位并
12864321字寬(n位)位片寬(m字)132643.Handler分類法——型號定義法
T(系統(tǒng)型號)=f(k,k’
,d,d’
,w,w’)式中:k——處理控制器PCU的數(shù)目;
k’——可組成流水線的PCU數(shù)目;
d——每個PCU所控制的ALU(或PE)數(shù)目;
d’——可組成流水線的ALU數(shù)目;
w——ALU或PE的字長;
w’——在ALU或一個PE中的流水段數(shù)目。
第三節(jié)影響計算機體系結(jié)構(gòu)的因素第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展一、并行性與并行處理
1.并行性及其度量
并行性是指問題中具有可以同時進行運算或操作的特性。并行性實際上包括同時性和并發(fā)性兩層含義。同時性指的是兩個或多個事件在同一時刻發(fā)生。并發(fā)性指的是兩個或多個事件在同一時間間隔內(nèi)發(fā)生。度量標準主要4個:
指令級并行度:計算機每個時鐘周期完成的指令條數(shù),當ILP>1時為高度并行,需要特殊的并行處理技術(shù)來支持。線程級并行度:計算機在線程級并行時線程粒度的大小。數(shù)據(jù)級并行度:數(shù)據(jù)處理的字并數(shù)或數(shù)據(jù)流通路條數(shù)。多機級耦合度:計算機之間或計算機部件之間的數(shù)據(jù)關(guān)聯(lián)或功能關(guān)聯(lián)的程度,用于體現(xiàn)進程或作業(yè)之間的并行性。第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展2.并行處理與并行算法
并行處理是信息處理過程中并行性開發(fā)的一種有效形式,通過發(fā)掘解題過程中的并行事件,使并行性達到較高的級別,進入并行處理領(lǐng)域,提高計算機系統(tǒng)的性能價格比。并行算法是指實現(xiàn)并行性事件或?qū)崿F(xiàn)并行處理的算法。并行性原理就是要以并行算法為基礎(chǔ),通過并行處理技術(shù)實現(xiàn)各個級別上的并行性。
第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展3.并行計算機及其種類
具有并行處理能力的計算機稱為并行計算機??煞譃?種,實現(xiàn)基本形式可以采用SISD、SIMD和MIMD。(1)流水線計算機:實現(xiàn)部件重疊時間并行,實現(xiàn)形式屬于SISD。(2)陣列計算機:實現(xiàn)資源重復空間并行,實現(xiàn)形式屬于SIMD。(3)多處理機:實現(xiàn)資源共享異步并行,實現(xiàn)形式屬于MIMD。(4)數(shù)據(jù)流處理機:實現(xiàn)數(shù)據(jù)組織處理并行,實現(xiàn)形式屬于MIMD。
第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展二、并行性等級的劃分
1.按執(zhí)行程序?qū)哟蝿澐?/p>
指令內(nèi)部并行。指令內(nèi)部各操作之間的并行,主要取決于硬件及其組成的設(shè)計。指令之間并行。多條指令并行執(zhí)行,主要解決和處理指令之間存在的相互關(guān)聯(lián)。線程之間并行。多個線程并行執(zhí)行,線程運行過程中只需要少量的資源,開銷很小。任務(wù)或進程之間并行。多個任務(wù)或程序段并行執(zhí)行,主要涉及如何進行任務(wù)分解。作業(yè)或程序之間并行。多個作業(yè)或多道程序的并行執(zhí)行,關(guān)鍵是硬軟件資源的分配。第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展2.按處理數(shù)據(jù)層次劃分
位串字串。只對一個字的一位處理,沒有并行性。位并字串。同時對一個字的全部位進行處理,開始出現(xiàn)并行性。位片串字并。同時對許多字的多個位(稱多位片)進行處理,開始進入并行處理領(lǐng)域。全并行。同時對許多字的全部或部分位組進行處理。第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展3.按信息加工步驟劃分
存儲器操作并行。存儲器操作可以采用單體多字、多體單字或多體多字方式在一個存儲周期內(nèi)訪問多個字。處理器操作步驟并行。處理器操作步驟可以是一條指令的取指、分析和執(zhí)行等操作步驟,也可以是如浮點加法的求階差、對階、尾加、舍入和規(guī)格化等具體操作的執(zhí)行步驟。處理器操作并行。為支持向量或數(shù)組運算,可以通過重復設(shè)置大量處理單元,使它們在同一控制器控制下同時按同一條指令的要求對多個數(shù)據(jù)進行操作。線程、任務(wù)或作業(yè)并行。多個處理機同時對多條指令及其有關(guān)的多個數(shù)據(jù)組進行處理,構(gòu)成多指令流多數(shù)據(jù)流計算機。1.時間重疊(TimeInteleaving)第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展引入時間因素,讓多個處理過程在時間上錯開,輪流重疊使用同一套硬件設(shè)備的各部分,以加快硬件使用周期來提高處理速度。
引入空間因素,通過重復設(shè)置硬件資源來提高系統(tǒng)可靠性或性能。2.資源重復(ResourceReplication)3.資源共享(ResourceSharing)資源共享是利用軟件的方法讓多個用戶按一定時間順序輪流地使用一套資源,以提高系統(tǒng)資源利用率,也可以相應提高整個系統(tǒng)的性能。三、提高計算機系統(tǒng)并行性的技術(shù)途徑第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展四、多機系統(tǒng)及其耦合度
1.多處理機系統(tǒng)與多計算機系統(tǒng)
多機系統(tǒng)是多處理機系統(tǒng)和多計算機系統(tǒng)統(tǒng)的總稱。而多計算機系統(tǒng)是由多臺獨立的計算機組成的系統(tǒng),多處理機系統(tǒng)是由多臺處理機組成的單一計算機系統(tǒng)。多計算機系統(tǒng)和多處理機系統(tǒng)的差別:一是在操作系統(tǒng)方面二是在存儲器方面三是在信息交換方面四是在并行性的級別方面
第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展2.多機系統(tǒng)的耦合度
耦合度是用來反映多機系統(tǒng)中各機器之間物理連接的緊密程度和交互作用能力的強弱的概念。多機系統(tǒng)的耦合度可以分為最低耦合、松散耦合和緊密耦合。最低耦合:沒有物理連接最低耦合系統(tǒng)松散耦合:通過通道或通信線路實現(xiàn)互連松散耦合系統(tǒng)緊密耦合:通過總線或高速開關(guān)互連緊密耦合系統(tǒng)
第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展五、多處理機系統(tǒng)
1.多處理機系統(tǒng)的種類
按組織形式來分,多處理機系統(tǒng)可分為三種。
一是異構(gòu)型多處理機系統(tǒng):又稱非對稱型多機系統(tǒng),是指由多個不同類型的,至少擔負不同功能的處理機組成的多處理機系統(tǒng)。二是同構(gòu)型多處理機系統(tǒng):又稱對稱型多處理機系統(tǒng),是指由多個同類型的,且完成同樣功能的處理(器)機組成的多處理機系統(tǒng)。三是分布處理系統(tǒng):是指有大量分散、重復的處理機資源(一般是具有獨立功能的單處理機)相互連接在一起,在操作系統(tǒng)的全局控制下統(tǒng)一協(xié)調(diào)工作。第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展
2.多處理機系統(tǒng)間的比較主要有分工方式、工作方式、控制形式是不同的。項目同構(gòu)型多處理機系統(tǒng)異構(gòu)型多處理機系統(tǒng)分布處理系統(tǒng)目的提高性能(可靠性和速度)提高系統(tǒng)使用效率兼顧性能與效率技術(shù)途徑資源重復(機間互聯(lián))時間重疊(功能專用)資源共享(網(wǎng)絡(luò)化)組成同類型、同功能不同類型、不同功能不限制分工方式任務(wù)分布功能分布資源分布工作方式一個作業(yè)由多機協(xié)同并行地完成一個作業(yè)由多機協(xié)同串行地完成一個作業(yè)由一臺機完成必要時可由它機協(xié)助控制形式一般是浮動控制一般是專用控制一般是分布控制耦合度緊密緊密、松散松散、緊密互聯(lián)要求快速、靈活、可重構(gòu)專用快速、靈活、簡單、通用第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展六、計算機系統(tǒng)結(jié)構(gòu)實現(xiàn)并行處理系統(tǒng)的歷程
1.實現(xiàn)并行性的基本思想
計算機系統(tǒng)中可以通過時間重疊、資源重復、資源共享等技術(shù)途徑,在不同等級上實現(xiàn)并行性,提高計算機系統(tǒng)的并行處理能力,使計算機系統(tǒng)由低性能向高性能發(fā)展。但僅在單處理機下來提高并行性,只能是在處理機內(nèi)的功能部件指令級、數(shù)據(jù)級并行。擺脫單處理機的束縛,發(fā)展各種不同耦合度的多計算機系統(tǒng),才有可能達到更高(程序級、進程級)的并行處理水平。因此,從單處理機和多計算機系統(tǒng)兩極出發(fā),遵循不同的發(fā)展途徑,實現(xiàn)了3種不同類型的多處理機系統(tǒng)。第四節(jié)計算機系統(tǒng)結(jié)構(gòu)中的并行性及其發(fā)展多道程序、分時系統(tǒng)、虛存部件冗余單機系統(tǒng)重疊方式、先行控制、緩存多終端遠程終端多存儲體多操作部件流水線:指令、操作、宏智能終端并行處理機相聯(lián)處理機向量處理機分布處理系統(tǒng)同構(gòu)多機系統(tǒng)異構(gòu)多機系統(tǒng)局部計算機網(wǎng)可重構(gòu)、容錯多處理機高級語言、數(shù)據(jù)庫多處理機通信處理機遠程網(wǎng)絡(luò)緊密耦合系統(tǒng)松散耦合系統(tǒng)專用外圍機多計算機系統(tǒng)2.單處理機實現(xiàn)并行處理的歷程3.多計算機實現(xiàn)并行處理的歷程第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)一、計算機系統(tǒng)結(jié)構(gòu)設(shè)計的原則
1.計算機系統(tǒng)設(shè)計的基本原則計算機系統(tǒng)設(shè)計的主要任務(wù)包括計算機系統(tǒng)結(jié)構(gòu)、計算機組成、計算機實現(xiàn)三個方面。應遵循的基本原則有:確定計算機系統(tǒng)的功能是計算機系統(tǒng)設(shè)計的基礎(chǔ)。軟件和硬件合理分配是計算機系統(tǒng)設(shè)計的關(guān)鍵。計算機系統(tǒng)結(jié)構(gòu)應符合發(fā)展需要是計算機系統(tǒng)設(shè)計的方向。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)2.軟硬件取舍的基本原則
軟硬件功能分配的核心是軟硬件的取舍,而軟硬件取舍的指導思想就是綜合權(quán)衡,一般應遵循以下基本原則。性能價格比高的原則充分利用組成與實現(xiàn)技術(shù)的原則軟硬件相互支持的原則第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)二、計算機系統(tǒng)結(jié)構(gòu)設(shè)計的方法
1.計算機系統(tǒng)結(jié)構(gòu)設(shè)計的主要方法計算機系統(tǒng)由多級層次組成,從哪一層開始設(shè)計就構(gòu)成三種不同的設(shè)計方法。(1)“由下往上”設(shè)計。(2)“由上往下”設(shè)計。
(3)“由中間開始”設(shè)計。
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)2.計算機體系結(jié)構(gòu)設(shè)計的等級方法按計算機體系結(jié)構(gòu)的等級性來設(shè)計計算機系統(tǒng)應遵循三個基本思想。一是在本等級范圍內(nèi)以合理的價格獲得盡可以好的性能,逐漸向高檔機發(fā)展,稱最佳性能價格比設(shè)計。二是只求保持一定的使用性能而爭取最低價格,稱最低價格設(shè)計,其結(jié)果往往是低檔向下分化出新的計算機等級。三是以獲取最高性能為主要目標而不惜增加價格,稱最高性能設(shè)計,其結(jié)果是產(chǎn)生當時最高等級的計算機。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)三、軟件可移植性及其實現(xiàn)的基本方法軟件的可移植性指的是軟件不修改或只經(jīng)少量修改就可由一臺機器搬到另一臺機器上運行,同一軟件可應用于不同的環(huán)境。實現(xiàn)軟件移植的基本方法有:
(1)通用程序設(shè)計語言的方法所有程序員均用通用程序設(shè)計語言進行程序設(shè)計,在各種類型的計算機上,建立一層由該語言所定義的虛擬機就能方便地把一個程序從一臺機器移植到另一臺機器。通用程序設(shè)計語言程序解釋宏匯編編譯編譯機器1機器2機器3機器M(2)強力逼近的方法。為每一臺機器上的每一種語言都設(shè)計一個編譯程序或解釋程序,程序員不管選用何種語言,總可得到一個有效的翻譯程序,在由那個語言所定義的虛擬機上都能運行。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)語言1語言1語言L機器1機器1機器M第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)(3)通用計算機語言的方法。設(shè)計一臺由通用計算機語言所確定的虛擬機,用這臺虛擬機實現(xiàn)各種語言層,為各種計算機語言編寫編譯程序或解釋程序,以把各種計算機語言程序轉(zhuǎn)換為通用計算機語言程序。機器1語言1語言2語言L機器1機器M通用計算機語言程序第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)
(4)仿真與模擬和系列化的方法。仿真與模擬和系列化不僅是目前計算機系統(tǒng)結(jié)構(gòu)的基本特性之一,也是實現(xiàn)軟件移植的基本方法。(5)計算機網(wǎng)絡(luò)的方法。利用異種機器聯(lián)網(wǎng)的優(yōu)勢,將程序通過網(wǎng)絡(luò)傳送至能執(zhí)行的機器上運行,其結(jié)果再由網(wǎng)絡(luò)傳送回來。該方法效率高,不需要預處理,也不存在同步問題,為程序移植提供了一個簡單而又方便的解決方法。但網(wǎng)絡(luò)的投資大,且時間開銷也較大。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)四、計算機體系結(jié)構(gòu)設(shè)計的定量原理
1.大概率事件優(yōu)先原理
大概率事件優(yōu)先原理是計算機系統(tǒng)結(jié)構(gòu)設(shè)計中最常用的原理。其基本思想是:對于大概率事件(最常見的事件),賦予它優(yōu)先的處理權(quán)和資源使用權(quán),以獲得全局的最優(yōu)結(jié)果。
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)2.Amdahl定律
Amdahl定律是指加快某部件執(zhí)行速度所獲得的系統(tǒng)性能加速比,受限于該部件在系統(tǒng)中的重要性。它有兩個方面的作用,一是用來確定系統(tǒng)中對性能限制最大的部件,二是用來計算由于改進某些部件而獲得的系統(tǒng)加速比。系統(tǒng)加速比是指改進后的機器比改進前的機器快多少倍。機器系統(tǒng)的加速比Sn就是:系統(tǒng)加速比(Sn)=改進后系統(tǒng)性能/改進前系統(tǒng)性能
=改進前總執(zhí)行時間/改進后總執(zhí)行時間=T0/Tn第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)
系統(tǒng)加速比與兩個因素有關(guān):一是計算機執(zhí)行某個任務(wù)的總時間中可被改進部分的時間所占的百分比,記為Fe,它總小于1;另一個是改進部分采用改進措施后比沒有采用改進措施前性能提高的倍數(shù),記為Se,它總大于1。因此有改進后整個任務(wù)的執(zhí)行時間為:
Tn=T0(1–Fe)+T0Fe/Se=T0(1–Fe+Fe/Se)而改進后整個系統(tǒng)的加速比Sn為:
Sn=T0/Tn=1/[(1–Fe)+Fe/Se]
式中(1–Fe)表示不可改進部分,當Fe為0,即沒有可改進部分時,Sn為1,所以性能的提高幅度受改進部分所占比例的限制。當Se->∞時,Sn=1/(1–Fe),可獲取性能改善的極限值也受到Fe值的約束。3.程序訪存的局部性原理
程序訪存的局部性原理是指一個程序用90%的執(zhí)行時間去執(zhí)行僅占10%的程序代碼。它是構(gòu)造存儲器體系的基礎(chǔ)。4.20%---80%原理
20%--80%原理是指大約有20%的指令使用頻率比較高,使用量約占整個程序的80%;而有80%左右的指令很少使用,使用量約占整個程序的20%。它標明各種指令的使用頻度相差很大,是設(shè)計精簡指令計算機的基礎(chǔ)之一。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)二、CPU性能分析執(zhí)行程序所花的CPU時間(Tcpu)可從兩個方面進行描述。一是用程序機器指令使用的CPU時鐘周期數(shù)(Nc)來表示。
Tcpu=Nc×t=Nc/f
二是用程序機器指令的條數(shù)(Ic)來表示。由于CPI=Nc/Ic,則有:
Tcpu=Ic×CPI×t=Ic×CPI/f表明CPU執(zhí)行程序的時間與3個要素有關(guān):①時鐘頻率,取決于硬件技術(shù)和組織;②機器指令的平均時鐘周期數(shù)CPI,取決于系統(tǒng)結(jié)構(gòu)組織和指令集的設(shè)計與實現(xiàn);③程序執(zhí)行的指令條數(shù),取決于系統(tǒng)結(jié)構(gòu)的指令集和編譯技術(shù)。第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)
實際上,一條指令可能會在程序中多次被使用,若指令i在程序中執(zhí)行的次數(shù)為Ii,指令i所需的時鐘周期為CPIi,該程序化費的CPU的時鐘周期數(shù)為:
其中:n為程序中使用指令種類數(shù)。且有:式中:Ii/Ic為i指令在程序中使用次數(shù)占總指令數(shù)的比例。
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)例1.3假設(shè)要將某執(zhí)行部件改進后速度提高10倍,改進后被改進部件執(zhí)行時間占系統(tǒng)總運行時間的50%。問改進后獲得的加速比是多少?該部件改進前的執(zhí)行時間系統(tǒng)總運行時間的百分比?解假定系統(tǒng)改進前后的總運行時間分別為T0和Tn,則:
T01Sn==Tn(1–Fe)+Fe/Se
Tn=[(1–Fe)+Fe/Se]×T0
根據(jù)題意有:50%Tn=(Fe×T0)/10
則Tn=(Fe×T0)/5Fe=5×Tn/T0
另外50%Tn=(1–Fe)×T0
所以Sn=T0/Tn=5.5
代入Sn的計算公式有:Fe=91%。例1.4如果FP指令的比例為25%,其中,F(xiàn)PSQR占全部指令的比例為2%,F(xiàn)P操作的CPI為4,F(xiàn)PSQR操作的CPI為20,其他指令的平均CPI為1.33?,F(xiàn)有兩種改進方案,一種是把FPSQR操作的CPI減至2,另一種是把所有的FP操作的CPI減至2,試比較兩種方案對系統(tǒng)性能的提高程度。解沒有改進之前,系統(tǒng)的指令平均時鐘周期數(shù)CPI為:
=(4×25%)+(1.33×75%)=2
采用方案A,如果使FPSQR操作的時鐘周期數(shù)由CPIFPSQR=20降至CPI’FPSQR=2,那么,整個系統(tǒng)的指令平均時鐘周期數(shù)為:CPTA=CPI–(CPIFPSQR-CPI’FPSQR)×2%=2-(20-2)×2%=1.64
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)
采用方案B,如果使所有FP操作的平均時鐘周期數(shù)由CPIFP=4降至CPI’FP=2,那么,整個系統(tǒng)的指令平均時鐘周期數(shù)為:CPTA=CPI-(CPIFP-CPI’FP)×25%=2-(4-2)×25%=1.5
從降低整個系統(tǒng)的指令平均時鐘周期數(shù)的程度來看,方案B優(yōu)于方案A。分別計算兩種方案的加速比:
SA=改進前的CPU執(zhí)行時間/方案A的CPU執(zhí)行時間
=(IC×時鐘周期×CPI)/(IC×時鐘周期×CPIA)=CPI/CPIA=1.22
同樣可計算出方案B的加速比SB=CPI/CPIB=2/1.5=1.33。從加速比來看,也可得出方案B優(yōu)于方案A的結(jié)論。
第五節(jié)計算機系統(tǒng)結(jié)構(gòu)設(shè)計的基礎(chǔ)例1.5有A、B兩臺機器的指令系統(tǒng)都規(guī)定執(zhí)行條件轉(zhuǎn)移指令需2個T,執(zhí)行其它指令只需1個T,T為時鐘周期。假設(shè)A機器的一次條件轉(zhuǎn)移使用比較和測試轉(zhuǎn)移兩條指令,B機器的一次條件轉(zhuǎn)移使用一條比較轉(zhuǎn)移指令。由于B機器條件轉(zhuǎn)移指令包含了比較功能,因此時鐘周期要比A機器要長,設(shè)TB=1.25TA。A機器中測試轉(zhuǎn)移指令占總指令數(shù)的20%,試比較它們性能的優(yōu)劣解A機器中測試轉(zhuǎn)移指令占總指令數(shù)的20%,由于比較和測試轉(zhuǎn)移分開為兩條指令,所以比較指令也要占總指令數(shù)的20%。B機器條件轉(zhuǎn)移指令包含了比較功能,所以同一功能的程序,B機器的總指令數(shù)是B機器的80%,即ICB=0.8×ICA。而B機器的條件轉(zhuǎn)移指令占總指令數(shù)的比例為:0.2/0.8=25%。由于有因此有:
CPIA=0.2×2+0.8×1=1.2TACPU=ICA×CPIA×TA=1.2ICA×TACPIB=0.25×2+0.75×1=1.25TBCPU=ICB×CPIB×TB=1.25×0.8ICA×1.25TA=1.25ICA×TA
因為TACPU<TBCPU,所以A機器的速度快。說明將一條復雜指令簡化為兩條簡單指令,有時還能加快運算速度。第六節(jié)計算機系統(tǒng)的評價一、計算機系統(tǒng)評價的概念
計算機系統(tǒng)評價即是對計算機系統(tǒng)的優(yōu)劣做出判斷。第六節(jié)計算機系統(tǒng)的評價二、計算機系統(tǒng)的性能
1.計算機性能的含義
計算機的性能與測試者看問題的角度有關(guān)。計算機的即速度是衡量計算機性能的主要指標。同樣的工作
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 漁船租賃業(yè)務(wù)合同協(xié)議
- 銀行信托計劃保管合同模板
- 供港農(nóng)產(chǎn)品購銷合同代理協(xié)議(樣本)
- 國有林權(quán)出讓合同
- 畢業(yè)生實習與勞動合同解析
- 渠道合作銷售合同范本
- 合同法視角:股東不履行義務(wù)糾紛案例分析
- 新車銷售團隊心理素質(zhì)訓練考核試卷
- 木制拼圖游戲考核試卷
- 世界音樂教育項目的策劃與實施考核試卷
- 部編版小學(2024版)小學道德與法治一年級下冊《有個新目標》-第一課時教學課件
- 稅法(第5版) 課件 第13章 印花稅
- 建加油站申請書
- 2024-2025學年廣州市高二語文上學期期末考試卷附答案解析
- 咖啡店合同咖啡店合作經(jīng)營協(xié)議
- 2025年山東鋁業(yè)職業(yè)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 全套電子課件:技能成就夢想
- 2024年教育公共基礎(chǔ)知識筆記
- 2025年江蘇農(nóng)林職業(yè)技術(shù)學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 異構(gòu)數(shù)據(jù)融合技術(shù)-深度研究
- 北京市朝陽區(qū)2024-2025學年七年級上學期期末考試數(shù)學試卷(含答案)
評論
0/150
提交評論