高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述匯總_第1頁
高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述匯總_第2頁
高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述匯總_第3頁
高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述匯總_第4頁
高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述匯總_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、目錄1 .概述31.1 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展31.3 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)32 .計(jì)算機(jī)指令集結(jié)構(gòu)42.1 指令結(jié)構(gòu)的分類42.2 指令集結(jié)構(gòu)的功能設(shè)計(jì)53 .流水線技術(shù)63.1 流水線的基本概念63.2 流水線的相關(guān)與沖突83.3 向量處理機(jī)94 .指令并行104.1 指令的靜態(tài)調(diào)度與動(dòng)態(tài)調(diào)度104.2 動(dòng)態(tài)分支預(yù)測技術(shù)105 .存儲(chǔ)器的層次結(jié)構(gòu)115.1 存儲(chǔ)器的結(jié)構(gòu)115.2 Cache的基本知識(shí)125.3 主存與虛擬存儲(chǔ)器136 .輸入/輸出系統(tǒng)136.1 總線136.2 通道處理機(jī)147 .計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展趨勢147.1 高性能計(jì)算機(jī)體系結(jié)構(gòu)147.2 高性能計(jì)算的發(fā)展方向15參

2、考文獻(xiàn)17高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)綜述摘要:計(jì)算機(jī)體系結(jié)構(gòu)是一門連接硬件與軟件的學(xué)科,在不斷的深入研究過程中,一直在追求計(jì)算機(jī)的功能、性能、功率以及花費(fèi)的高度協(xié)調(diào),以期達(dá)到各方面的最佳狀態(tài),在花費(fèi)、能量、可用性的抑制下,實(shí)現(xiàn)計(jì)算機(jī)的多功能、高性能、低功率、少花費(fèi)的新時(shí)代。本篇綜述主要講述計(jì)算機(jī)指令集結(jié)構(gòu)設(shè)計(jì),流水線技術(shù),指令級(jí)并行,存儲(chǔ)器層次結(jié)構(gòu),輸入/輸出系統(tǒng)以及計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展趨勢。關(guān)鍵字:高級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),流水線技術(shù),指令級(jí)并行,存儲(chǔ)器層次結(jié)構(gòu),輸入/輸出系統(tǒng)OverviewofadvancedcomputerarchitectureAbstract:Thecomputerarchite

3、ctureisasubjectwhichconnectshardwareandsoftware.Intheprocessofcontinuousin-depthstudy,ithasbeenpursuingthefunction,performance,powerandcostofthecomputer,inordertoachievethebeststateineveryaspect,andrealizetheneweraofmulti-function,highperformance,lowpowerandlowcost.Thispapermainlyfocusesonthecompute

4、rinstructionsetarchitecture,pipelinetechnology,instructionlevelparallelism,memoryhierarchy,input/outputsystemandthedevelopmenttrendofcomputerarchitecture.Keywordsadvancedcomputerarchitecture,pipelinetechnology,instructionlevelparallelism,memoryhierarchy,input/outputsystem.1 .概述1.1 計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展世界上第一臺(tái)電子

5、數(shù)字計(jì)算機(jī)是1946年在美國賓夕法尼亞大學(xué)制成的,這是科學(xué)史上一次劃時(shí)代的創(chuàng)新,它奠定了電子計(jì)算機(jī)的發(fā)展基礎(chǔ)。提高計(jì)算機(jī)速度始終是發(fā)展計(jì)算機(jī)性能的一個(gè)突出問題,器件的發(fā)展對推動(dòng)計(jì)算機(jī)的發(fā)展起了重大作用。然而機(jī)器速度提高的速率越來越慢,這一事實(shí)促使人們對計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)做更多的研究工作更多潛力。VLSI技術(shù)的發(fā)展,帶來了集成度高、體積小、功耗低、可靠性高、價(jià)格便宜的器件,使得計(jì)算機(jī)系統(tǒng)可以通過采用更加復(fù)雜的系統(tǒng)結(jié)構(gòu)來創(chuàng)造出性能更高、工作可靠、價(jià)格合理的高性能計(jì)算機(jī)。20世紀(jì)60年代初期,隨著晶體管和磁芯存儲(chǔ)器的出現(xiàn),處理單元和存儲(chǔ)器實(shí)現(xiàn)小型化,并行計(jì)算機(jī)開始出現(xiàn)。到了20世紀(jì)60年代末期,單一處理

6、器中可以集成多個(gè)功能單元,產(chǎn)生了流水線技術(shù)。在70年代初,與向量計(jì)算機(jī)同時(shí)出現(xiàn)了并行處理機(jī),這類計(jì)算機(jī)同向量計(jì)算機(jī)的應(yīng)用領(lǐng)域很多是相同的,但專業(yè)性更強(qiáng)。20世紀(jì)80年代開始,微處理器技術(shù)高速發(fā)展。此時(shí),微處理器隨著機(jī)器的字長從4位、8位、16位一直增加到32位、64位,其性能也隨之顯著提高。另外,80年代在單處理機(jī)中提高指令執(zhí)行的并行度方面也有新發(fā)展。簡化指令系統(tǒng)計(jì)算機(jī)(RISC)簡化了指令系統(tǒng)使能充分發(fā)揮流水線的作用,超長指令字(VLIWI計(jì)算機(jī)和超級(jí)標(biāo)量機(jī)的目標(biāo)更提高了一步。從20世紀(jì)90年代末開始,以前發(fā)展的主要幾種體系逐步走向融合,同時(shí)隨著新技術(shù)的出現(xiàn)又為新的架構(gòu)帶來了新的革命。200

7、6年,處理器開始從單核轉(zhuǎn)向多核處理器發(fā)展,多核處理器已不再局限于高端服務(wù)器,開始向PC機(jī)普及,多核處理器使PC機(jī)變成并行式計(jì)算機(jī)。多核技術(shù)在高性能計(jì)算中也已獲得了廣泛應(yīng)用。1.3 計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)計(jì)算機(jī)是一個(gè)十分復(fù)雜的硬、軟件結(jié)合而成的整體。它通常是多層次結(jié)構(gòu)的,每一級(jí)各對應(yīng)一類機(jī)器,各有自己的機(jī)器語言。在這里,“機(jī)器”的定義是能存儲(chǔ)、執(zhí)行程序的算法和數(shù)據(jù)結(jié)構(gòu)的集合體。各級(jí)機(jī)器的算法和數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)方法不同:M0由硬件實(shí)現(xiàn),M1由微程序(固件)實(shí)現(xiàn),M2-M5由軟件實(shí)現(xiàn)。由軟件實(shí)現(xiàn)的機(jī)器稱為虛擬機(jī)器,以區(qū)別由硬件或固件實(shí)現(xiàn)的實(shí)際機(jī)器。各級(jí)的程序被翻譯成比它低一級(jí)的語言的程序,或由低一級(jí)的程

8、序解釋。如下圖所示:局級(jí)語百機(jī)器M4.具有L4機(jī)器語言(高級(jí)語言)f匯編語言機(jī)器M3具有L3機(jī)器語言(匯編語言)if操作系統(tǒng)機(jī)器M2,具有L2機(jī)器語言(作業(yè)控制語言等)1傳統(tǒng)機(jī)器M1具有L1機(jī)器語言(微機(jī)器令系統(tǒng))微程序機(jī)器M0具有L0機(jī)器語言(微指令系統(tǒng))圖1.1計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)圖應(yīng)用語言機(jī)器M5 具有L5機(jī)器語言(應(yīng)用語言)_ 應(yīng)用語言程序經(jīng)應(yīng)用程序包翻譯成高級(jí)語言程序高級(jí)語言程序經(jīng)編譯程序翻譯成匯編語百匯編語言程序經(jīng)匯編程序翻譯成機(jī)器語言程序般機(jī)器語言程序解釋作業(yè)控制語句等用微指令程序解釋機(jī)器指令微指令由硬件直接執(zhí)行2 .計(jì)算機(jī)指令集結(jié)構(gòu)2.1 指令結(jié)構(gòu)的分類根據(jù)CPUfr用來存儲(chǔ)操

9、作數(shù)的存儲(chǔ)單元的類型,可將指令集結(jié)構(gòu)分為堆棧型指令集結(jié)構(gòu)、累加器型指令集結(jié)構(gòu)和通用寄存器型指令集結(jié)構(gòu)。1 .堆棧型指令集結(jié)構(gòu):堆棧型是一種表示計(jì)算的簡單模型,指令短小,不能隨機(jī)訪問堆棧,從而很難生成有效代碼。同時(shí),由于堆棧是瓶頸,所以很難被高效地實(shí)現(xiàn)。2 .累加器型指令集結(jié)構(gòu):累加器型減少了機(jī)器的內(nèi)部狀態(tài),由于累加器是唯一的暫存器,指令短小,這種機(jī)器的存儲(chǔ)器通信開銷最大。3 .通用寄存器型指令集結(jié)構(gòu):寄存器型易于生成高效的目標(biāo)代碼,所有操作數(shù)均需命名,且要顯式表示,因而指令比較長?,F(xiàn)代大多數(shù)機(jī)器均采用通用寄存器型指令集結(jié)構(gòu),因?yàn)榧拇嫫骱蚦pirt部其他存儲(chǔ)單元一樣,要比存儲(chǔ)器快。其次是對編譯器

10、而言,可以更加容易、有效地分配和使用寄存器。根據(jù)通用寄存器型指令集結(jié)構(gòu),又可進(jìn)一步分為以下三種類型:寄存器-寄存器型(R及具優(yōu)點(diǎn)是簡單,指令字長固定,是一種簡單的代碼生成模型,各種指令的執(zhí)行時(shí)鐘周期數(shù)相近。缺點(diǎn)與指令中含存儲(chǔ)器操作數(shù)的指令集結(jié)構(gòu)相比指令條數(shù)多,因而其目標(biāo)代碼量較大。寄存器-存儲(chǔ)器型(RM其優(yōu)點(diǎn)是可以直接對存儲(chǔ)器操作數(shù)進(jìn)行訪問,而不必先用load指令進(jìn)行加載。容易對指令進(jìn)行編碼,且其目標(biāo)代碼量較小。缺點(diǎn)是指令中的操作數(shù)類型不同。在一條指令中同時(shí)對一個(gè)寄存器操作數(shù)和存儲(chǔ)器操作數(shù)進(jìn)行編碼,將限制指令所能夠表示的寄存器個(gè)數(shù)。指令的執(zhí)行時(shí)鐘周期數(shù)因操作數(shù)的來源(寄存器或存儲(chǔ)器)不同而差別

11、比較大。存儲(chǔ)器-存儲(chǔ)器型(MM具優(yōu)點(diǎn)是一種最緊密的編碼方式,無需“浪費(fèi)”寄存器保存變量。缺點(diǎn)是指令字長多種多樣。每條指令的執(zhí)行時(shí)鐘周期數(shù)也大不一樣,對存儲(chǔ)器的頻繁訪問將導(dǎo)致存儲(chǔ)器訪問瓶頸問題。這種類型的指令集結(jié)構(gòu)現(xiàn)在已不用了。2.2 指令集結(jié)構(gòu)的功能設(shè)計(jì)在設(shè)計(jì)指令集結(jié)構(gòu)時(shí),有兩種截然不同的設(shè)計(jì)策略,產(chǎn)生了兩類不同的計(jì)算機(jī)系統(tǒng):CISC即復(fù)雜指令集計(jì)算機(jī)。它是增強(qiáng)指令功能,把越來越多的功能交由硬件來實(shí)行,并且指令的數(shù)量也是越來越多。CISC通過只執(zhí)行在程序中經(jīng)常使用的指令來簡化處理器的結(jié)構(gòu),而特殊操作則以子程序的方式實(shí)現(xiàn),它們的特殊使用通過處理器額外的執(zhí)行時(shí)間來彌補(bǔ)。RISC即精簡指令集計(jì)算機(jī)。

12、它是盡可能的把指令集簡化,不僅指令的條數(shù)少,而且指令的功能也比較簡單。RISC包含許多應(yīng)用程序中很少使用的特定指令,執(zhí)行數(shù)字存在內(nèi)存而非暫存器的運(yùn)算。相比之下,比較復(fù)雜的指令集較容易使工作更完善,內(nèi)存及快取的效率較高,以及較為簡單的程式碼。3 .流水線技術(shù)3.1 流水線的基本概念流水線技術(shù)是將一個(gè)重復(fù)的時(shí)序過程分解成為若干個(gè)子過程,而每一個(gè)子過程都可有效地在其專用功能段上與其他子過程同時(shí)執(zhí)行。流水線中的每個(gè)子過程及其功能部件稱為流水線的級(jí)或段,段與段相互連接形成流水線。流水線的段數(shù)稱為流水線的深度。流水線技術(shù)具有以下特點(diǎn)(1)流水過程由多個(gè)相聯(lián)系的子過程組成,每個(gè)過程稱為流水線的“級(jí)”或“段”

13、。(2)每個(gè)子過程由專用的功能段實(shí)現(xiàn)。(3)各個(gè)功能段所需時(shí)間應(yīng)盡量相等。流水線需要有“通過時(shí)間”,在此之后流水過程才進(jìn)入穩(wěn)定工作狀態(tài),每一個(gè)時(shí)鐘周期流出一個(gè)結(jié)果。(4)流水技術(shù)適合于大量重復(fù)的時(shí)序過程,只有在輸入端能連續(xù)地提供任務(wù),流水線的效率才能充分發(fā)揮。從不同的角度和觀點(diǎn),可以把流水線分成多種不同的種類。如下圖所示:圖2.1流水線分類圖單功能流水線:只能完成一種固定功能的流水線多功能流水線:流水線的各段可以進(jìn)行不同的連接,從而使流水線在不同的時(shí)間,或者在同一時(shí)間完成不同的功能。靜態(tài)流水線:在同一時(shí)間內(nèi),流水線的各段只能按同一種功能的連接方式工作。動(dòng)態(tài)流水線:在同一時(shí)間內(nèi),當(dāng)某些段正在實(shí)現(xiàn)

14、某種運(yùn)算時(shí),另一些段卻在實(shí)現(xiàn)另一種運(yùn)算。部件級(jí)流水線(運(yùn)算操作流水線):把處理機(jī)的算術(shù)邏輯部件分段,以便為各種數(shù)據(jù)類型進(jìn)行流水操作處理機(jī)級(jí)流水線(指令流水線):把解釋指令的過程按照流水方式處理。處理機(jī)間流水線(宏流水線):由兩個(gè)以上的處理機(jī)串行地對同一數(shù)據(jù)流進(jìn)行處理,每個(gè)處理機(jī)完成一項(xiàng)任務(wù)。標(biāo)量流水處理機(jī):處理機(jī)不具有向量數(shù)據(jù)表示,僅對標(biāo)量數(shù)據(jù)進(jìn)行流水處理。向量流水處理機(jī):處理機(jī)具有向量數(shù)據(jù)表示,并通過向量指令對向量的各元素進(jìn)行處理。線性流水線:流水線的各段串行連接,沒有反饋回路。非線性流水線:流水線中除有串行連接的通路外,還有反饋回路。順序流水線:流水線輸出端任務(wù)流出的順序與輸入端任務(wù)流入的

15、順序完全相同。每一個(gè)任務(wù)在流水線的各段中是一個(gè)跟著一個(gè)順序流動(dòng)的。亂序流水線:流水線輸出端任務(wù)流出的順序與輸入端任務(wù)流入的順序可以不同,允許后進(jìn)入流水線的任務(wù)先完成(從輸出端流出)。3.2 流水線的相關(guān)與沖突相關(guān)是指兩條指令之間存在某種依賴關(guān)系。如果兩條指令相關(guān),則他們就有可能不能在流水線中重疊執(zhí)行或者只能部分重疊執(zhí)行,1 .結(jié)構(gòu)相關(guān):當(dāng)指令在重疊執(zhí)行過程中,硬件資源滿足不了指令重疊執(zhí)行的要求,發(fā)生資源沖突時(shí)將產(chǎn)生“結(jié)構(gòu)相關(guān)”;2 .數(shù)據(jù)相關(guān):當(dāng)一條指令需要用到前面指令的執(zhí)行結(jié)果,而這些指令均在流水線中重疊執(zhí)行時(shí),就可能引起“數(shù)據(jù)相關(guān)”;3 .控制相關(guān):當(dāng)流水線遇到分支指令和其他會(huì)改變PC值的

16、指令時(shí)就會(huì)發(fā)生“控制相關(guān)”。流水線沖突是指對于具體的流水線來說,由于相關(guān)的存在,使得指令流中的下一條指令不能在指定的時(shí)鐘周期執(zhí)行。流水線沖突有三種類型:1 .結(jié)構(gòu)沖突:因硬件資源滿足不了指令重疊執(zhí)行的要求而發(fā)生的沖突。解決方法:流水化功能單元;資源重復(fù);暫停流水線。2 .數(shù)據(jù)沖突:當(dāng)指令在流水線中重疊執(zhí)行時(shí),因需要用到前面指令的執(zhí)行結(jié)果而發(fā)生的沖突。3 .控制沖突:流水線遇到分支指令和其他會(huì)改變PC值的指令所引起的沖突。(可?。┙鉀Q數(shù)據(jù)沖突有四中方法1 .定向技術(shù):在某條指令產(chǎn)生一個(gè)結(jié)果之前,其他指令并不真正需要該計(jì)算結(jié)果,如果將該計(jì)結(jié)果從其產(chǎn)生的地方直接送到其他指令需要它的地方,就可以避免暫

17、停;2 .暫停技術(shù):設(shè)置一個(gè)“流水線互鎖”的功能部件,一旦流水線互鎖檢測到數(shù)據(jù)相關(guān),流水線暫停執(zhí)行發(fā)生數(shù)據(jù)相關(guān)指令后續(xù)的所有指令,直到該數(shù)據(jù)相關(guān)解決為止。;3 .采用編譯器調(diào)度。當(dāng)流水線中出現(xiàn)沖突時(shí),編譯器通過重新排列代碼的順序來消除流水線中的暫停,這種技術(shù)稱為流水線調(diào)度4 .重新組織代碼順序。流水線設(shè)計(jì)者有時(shí)會(huì)允許結(jié)構(gòu)沖突的存在,原因:一是為了減少硬件開銷,二是為了減少功能單元的延遲。3.3向量處理機(jī)在流水線處理機(jī)中,設(shè)置向量數(shù)據(jù)表示和相應(yīng)的向量指令,稱為向量處理機(jī)。不具有向量數(shù)據(jù)表示和相應(yīng)的向量指令的流水線處理機(jī),稱為標(biāo)量處理機(jī)。向量處理方式有以下三種方式:1 .水平處理方式:向量計(jì)算是按

18、行的方式從左到右橫向地進(jìn)行,組成循環(huán)程序進(jìn)行處理,不適合向量處理機(jī)的并行處理。2 .垂直處理方式:適合對向量進(jìn)行流水處理,向量運(yùn)算指令的源/目向量都放在存儲(chǔ)器內(nèi),使得流水線運(yùn)算部件的輸入、輸出端直接與存儲(chǔ)器相聯(lián),構(gòu)成MME(存儲(chǔ)器-存儲(chǔ)器)的運(yùn)算流水線。3 .分組處理方式:把向量分成若干組,組內(nèi)按縱向方式處理,一次處理各組,每組向量運(yùn)算的源/目向量都在向量寄存器中,流水線的運(yùn)算部件輸入、輸出端與向量寄存器相聯(lián),構(gòu)成RRS(寄存器一寄存器)運(yùn)算流水線。提高向量處理機(jī)性能有多種方法,許多新型向量處理機(jī)系統(tǒng)則采用了多處理機(jī)系統(tǒng)結(jié)構(gòu):1. 設(shè)置多個(gè)功能部件,使它們并行工作。2. 采用鏈接技術(shù),加快一串

19、向量指令的執(zhí)行。3. 采用循環(huán)開采技術(shù),加快循環(huán)處理。4. 采用多處理機(jī)系統(tǒng),進(jìn)一步提高性能。4 .指令并行4.1 指令的靜態(tài)調(diào)度與動(dòng)態(tài)調(diào)度當(dāng)指令之間不存在相關(guān)時(shí),它們可以在流水線中重疊起來并行執(zhí)行。這種指令序列中存在的潛在并行性稱為指令級(jí)并行。靜態(tài)調(diào)度方法:依靠編譯器對代碼進(jìn)行靜態(tài)調(diào)度,以減少相關(guān)和沖突。它不是在程序執(zhí)行的過程中、而是在編譯期間進(jìn)行代碼調(diào)度和優(yōu)化。靜態(tài)調(diào)度通過把相關(guān)的指令拉開距離來減少可能產(chǎn)生的停頓。動(dòng)態(tài)調(diào)度方法:在程序的執(zhí)行過程中,依靠專門硬件對代碼進(jìn)行調(diào)度,減少數(shù)據(jù)相關(guān)導(dǎo)致的停頓。Tomasulo算法是一種比較典型的動(dòng)態(tài)調(diào)度算法,其算法的核心思想是記錄和檢測指令相關(guān),操作

20、數(shù)一旦就緒就立即執(zhí)行,把發(fā)生RAM突的可能性減少到最小,通過寄存器換名來消除WAM突和WAW突。Tomasulo算法的基本思想是:只要操作數(shù)有效,就將其取到保留站,避免指令流出時(shí)才到寄存器中取數(shù)據(jù),這就使得即將執(zhí)行的指令從相應(yīng)的保留站中取得操作數(shù),而不是從寄存器中。指令的執(zhí)行結(jié)果也是直接送到等待數(shù)據(jù)的其他保留站中去。因而,對于連續(xù)的寄存器寫,只有最后一個(gè)才真正更新寄存器中的內(nèi)容。一條指令流出時(shí),存放操作數(shù)的寄存器名被換成為對應(yīng)于該寄存器保留站的名稱(編號(hào))。指令流出邏輯和保留站相結(jié)合實(shí)現(xiàn)寄存器換名,從而完全消除了數(shù)據(jù)寫后寫和先讀后寫相關(guān)這類名相關(guān)。4.2 動(dòng)態(tài)分支預(yù)測技術(shù)在程序運(yùn)行時(shí),根據(jù)分支

21、指令過去的表現(xiàn)來預(yù)測其將來的行為。如果分支行為發(fā)生了變化,預(yù)測結(jié)果也跟著改變。預(yù)測分支是否成功和盡快找到分支目標(biāo)地址(或指令),從而避免因控制相關(guān)而造成流水線停頓是動(dòng)態(tài)分支預(yù)測技術(shù)的目的。如何記錄分支的歷史信息以及如何根據(jù)這些信息來預(yù)測分支的去向(甚至取到指令)是其要解決的兩個(gè)關(guān)鍵問題。采用分支歷史表BHT,采用分支目標(biāo)緩沖器BTB以及基于硬件的前瞻執(zhí)行是三種動(dòng)態(tài)分支預(yù)測技術(shù),最常用到的是基于硬件的前瞻執(zhí)行。前瞻執(zhí)行的基本思想:對分支指令的結(jié)果進(jìn)行猜測,并假設(shè)這個(gè)猜測總是對的,然后按這個(gè)猜測結(jié)果繼續(xù)取、流出和執(zhí)行后續(xù)的指令。只是執(zhí)行指令的結(jié)果不是寫回到寄存器或存儲(chǔ)器,而是放到一個(gè)稱為ROB勺緩

22、沖器中。等到相應(yīng)的指令得到“確認(rèn)”(即確實(shí)是應(yīng)該執(zhí)行的)后,才將結(jié)果寫入寄存器或存儲(chǔ)器。對Tomasulo算法加以擴(kuò)充,就可以支持前瞻執(zhí)行了。允許指令亂序執(zhí)行,但必須順序確認(rèn)。前瞻執(zhí)行通過RO改現(xiàn)了指令的順序完成,能夠?qū)崿F(xiàn)精確異常,且很容易地推廣到整數(shù)寄存器和整數(shù)功能單元上,但所需的硬件太復(fù)雜。5 .存儲(chǔ)器的層次結(jié)構(gòu)5.1 存儲(chǔ)器的結(jié)構(gòu)對于通用計(jì)算機(jī)而言,存儲(chǔ)層次至少應(yīng)具有三級(jí):最高層為CPLW存器,中間為主存,最底層為輔存。在較高檔的計(jì)算機(jī)中還可根據(jù)具體的功能分工細(xì)劃如下圖,存儲(chǔ)層次中越往上,存儲(chǔ)介質(zhì)的訪問速度越慢,價(jià)格也越高,相對的存儲(chǔ)容量也越小。CPU寄存器主存輔存圖5.1計(jì)算機(jī)系統(tǒng)存儲(chǔ)

23、層次圖單級(jí)存儲(chǔ)器的主要矛盾是速度越快,每位價(jià)格就越高。容量越大,每位價(jià)格就越低。容量越大,速度越慢。因此采取多級(jí)存儲(chǔ)層次方法來解決此類矛盾?!癈ach-主存”層次:在CPUffi主存之間增加一級(jí)速度快、但容量較小而每位價(jià)格較貴的高速緩沖存儲(chǔ)器。借助于輔助軟硬件,它與主存構(gòu)成一個(gè)有機(jī)的整體,以彌補(bǔ)主存速度的不足。圖5.2"Cach)主存”層次“主存-輔存”層次:在主存外面增加一個(gè)容量更大、每位價(jià)格更便宜、但速度更慢的存儲(chǔ)器。它們依靠輔助軟硬件的作用,構(gòu)成一個(gè)整體。以彌補(bǔ)主存容量的不足。輔助軟硬圖5.3“主存輔存”層次5.2 Cache的基本知識(shí)其地址映象規(guī)則有如下三種:1 .全相聯(lián)映象

24、:主存中的任一塊可以被放置到Cache中的任意一個(gè)位置,空間利用率最高,沖突概率最低,實(shí)現(xiàn)最復(fù)雜。Cache空間的利用率較高,塊沖突概率較低,因而Cache的失效率也低。2 .直接映象:主存中的每一塊只能被放置到Cache中唯一的一個(gè)位置。Cache空間的利用率較低,塊沖突概率較高,因而Cache的失效率也高。3 .組相聯(lián)映象:主存中的每一塊可以被放置到Cache中唯一的一個(gè)組中的任何一個(gè)位置,組相聯(lián)是直接映像和全相聯(lián)的一種折中。查找算法是為了解決當(dāng)CPUJ問Cache時(shí),確定Cache中是否有要訪問的塊,以及確定其位置。替換算法是為了解決當(dāng)新調(diào)入一塊,而Cache又已被占滿,應(yīng)該替換那一塊。

25、有隨機(jī)法,先進(jìn)先出法以及最近最少使用法LRU5.3 主存與虛擬存儲(chǔ)器延遲和帶寬是貯存的主要性能指標(biāo)。可以有以下三種存儲(chǔ)器組織技術(shù)來提高主存性能:增加存儲(chǔ)器的寬度。這樣也就增加CPLW存儲(chǔ)器之間的連接通路的寬度,CPUF口Cache之間就有了一個(gè)多路選擇器,擴(kuò)充主存的最小增量增加了相應(yīng)的倍數(shù),而且寫入有可能變得復(fù)雜。采用簡單的多體交叉存儲(chǔ)器。在存儲(chǔ)系統(tǒng)中采用多個(gè)DRAM并利用它們潛在的并行性。獨(dú)立存儲(chǔ)體。設(shè)置多個(gè)存儲(chǔ)控制器,使多個(gè)體能獨(dú)立操作,以便能同時(shí)進(jìn)行多個(gè)獨(dú)立的訪存。虛擬存儲(chǔ)器是“主存-輔存”層次進(jìn)一步發(fā)展的結(jié)果,可以分為頁式和段式的存儲(chǔ)器管理方式具有多次性,對換性,虛擬性的特點(diǎn)。6 .輸

26、入/輸出系統(tǒng)6.1 總線輸入/輸出系統(tǒng)簡稱I/O系統(tǒng),I/O系統(tǒng)是用于實(shí)現(xiàn)數(shù)據(jù)輸入、輸出及數(shù)據(jù)存儲(chǔ)的系統(tǒng)。它包括I/O設(shè)備以及I/O設(shè)備與處理機(jī)的連接。在計(jì)算機(jī)系統(tǒng)中,各子系統(tǒng)之間可以通過總線相互連接。因?yàn)樗怯刹煌耐庠O(shè)分時(shí)共享的,形成了信息交換的瓶頸,從而限制了系統(tǒng)中總的I/O吞吐量。總線按用途分類可分為1 .CPU存儲(chǔ)器總線。CP必儲(chǔ)器總線比較短,通常具有較高的速度,并且要和存儲(chǔ)器系統(tǒng)的速度匹配來優(yōu)化帶寬。2.1 /O總線。I/O總線要連接許多不同類型、不同帶寬的設(shè)備,因而比較長,并且應(yīng)遵循總線標(biāo)準(zhǔn)。按設(shè)備定時(shí)方式分類,總線可分為同步總線。所有設(shè)備通過統(tǒng)一的總線系統(tǒng)時(shí)鐘進(jìn)行同步。優(yōu)點(diǎn)是成

27、本低,速度快,因?yàn)樗恍枰O(shè)備之間互相確定時(shí)序的邏輯。缺點(diǎn)是總線操作必須以相同的速度運(yùn)行。異步總線。設(shè)備之間沒有統(tǒng)一的系統(tǒng)時(shí)鐘,設(shè)備自己內(nèi)部定時(shí)。設(shè)備之間的信息傳送用總線發(fā)送器和接收器控制。容易適應(yīng)更廣泛的設(shè)備類型,擴(kuò)充總線時(shí)不用擔(dān)心時(shí)鐘時(shí)序和時(shí)鐘同步問題。但在傳輸時(shí),異步總線需要額外的同步開銷。CPUt外部設(shè)備進(jìn)行輸入/輸出的方式在計(jì)算機(jī)的發(fā)展過程中經(jīng)歷了不同的方式。在早期的計(jì)算機(jī)系統(tǒng)中,是采用程序I/O方式;當(dāng)在系統(tǒng)中引入中斷機(jī)制后,I/O方式使發(fā)展為中斷驅(qū)動(dòng)方式;此后,隨著DMA空制器的出現(xiàn),又使I/O方式在傳輸單位上發(fā)生了變化,即從以字節(jié)為單位的傳輸擴(kuò)大到以數(shù)據(jù)塊為單位進(jìn)行傳輸,從而大

28、大地改善了塊設(shè)備的I/O性能;而通道的引入,又使對I/O操作的組織和數(shù)據(jù)的傳送都能獨(dú)立地進(jìn)行而無需CPU勺干預(yù)。6.2通道處理機(jī)通道處理機(jī)(簡稱通道)專門負(fù)責(zé)整個(gè)計(jì)算機(jī)系統(tǒng)的輸入/輸出工作,只能執(zhí)行有限的一組輸入/輸出指令。其對外設(shè)的控制通過輸入/輸出接口和設(shè)備控制器進(jìn)行控制。根據(jù)信息傳送方式的不同通道分為三種類型:字節(jié)多路通道:一種簡單的共享通道,主要為多臺(tái)低速或中速的外圍設(shè)備服務(wù)。傳送過程:通道每連接一個(gè)外圍設(shè)備,只傳送一個(gè)字節(jié),然后又與另一臺(tái)設(shè)備連接,并傳送一個(gè)字節(jié)。數(shù)組多路通道:適于為高速設(shè)備服務(wù)。傳送過程:每連接一臺(tái)高速設(shè)備,一般傳送一個(gè)數(shù)據(jù)塊,傳送完成后,又與另一臺(tái)高速設(shè)備連接,再

29、傳送一個(gè)數(shù)據(jù)塊。選擇通道:為多臺(tái)高速外圍設(shè)備服務(wù)。傳送過程:在選擇通道中,通道每連接一個(gè)外圍設(shè)備,就把這個(gè)設(shè)備的n個(gè)字節(jié)全部傳送完成,然后再與另一臺(tái)設(shè)備相連接。通道完成一次數(shù)據(jù)傳輸?shù)墓ぷ鬟^程:在用戶程序中使用訪管指令進(jìn)入管理程序,由CPU!過管理程序組織一個(gè)通道程序,并啟動(dòng)通道。通道處理機(jī)執(zhí)行CPM它組織的通道程序,完成指定的數(shù)據(jù)I/O工作。通道程序結(jié)束后向CPU發(fā)中斷請求。CPU向應(yīng)這個(gè)中斷請求后,第二次進(jìn)入操作系統(tǒng),調(diào)用管理程序?qū)/O中斷請求進(jìn)行處理。7.計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的發(fā)展趨勢7.1 高性能計(jì)算機(jī)體系結(jié)構(gòu)高性能計(jì)算(highperformancecomputer,HPC)是計(jì)算機(jī)集群系

30、統(tǒng),它通過各種互聯(lián)技術(shù)將多個(gè)計(jì)算機(jī)系統(tǒng)連接在一起,利用所有被連接系統(tǒng)的綜合計(jì)算能力來處理大型計(jì)算問題。高性能計(jì)算方法的基本原理就是將問題分為若干部分,而相連的每臺(tái)計(jì)算機(jī)均可同時(shí)參與問題的解決,從而顯著縮短了解決整個(gè)問題的計(jì)算時(shí)間。解決大型計(jì)算問題需要功能強(qiáng)大的計(jì)算機(jī)系統(tǒng),隨著高性能計(jì)算的出現(xiàn),使這一類應(yīng)用從昂貴的大型外部計(jì)算機(jī)系統(tǒng)演變?yōu)椴捎蒙逃梅?wù)器產(chǎn)品和軟件的高性能計(jì)算機(jī)集群體。因此,高性能計(jì)算系統(tǒng)已經(jīng)成為解決大型問題計(jì)算機(jī)系統(tǒng)的發(fā)展方向。高性能計(jì)算機(jī)具有以下技術(shù):對稱多處理(symmetricalmultiprocessing,SMP)技術(shù)是相對非對稱多處理技術(shù)而言的、應(yīng)用十分廣泛的并行技

31、術(shù)。非一致訪問分布共享存儲(chǔ)技術(shù)(nonuniformmemoryaccess,NUMA)中,每個(gè)處理器與本地存儲(chǔ)器和高速緩存相連,多個(gè)處理器通過處理器、存儲(chǔ)器互聯(lián)網(wǎng)絡(luò)相連。集群(Cluster)是一組相互獨(dú)立的計(jì)算機(jī),利用高速通信網(wǎng)絡(luò)組成一個(gè)單一的計(jì)算機(jī)系統(tǒng),并以單一系統(tǒng)的模式加以管理。網(wǎng)格技術(shù)有可能成為實(shí)現(xiàn)Petaflops的另一條途徑。7.2 高性能計(jì)算的發(fā)展方向混合體系統(tǒng)結(jié)構(gòu)已成為HPC®展趨勢建在東京技術(shù)研究所的TSUBAME用的就是混合體系,除了使用1036個(gè)AMDK核Opteron外,360塊加速卡為系統(tǒng)貢獻(xiàn)了24%勺性能,僅增加了1%勺功耗。而舊M將在2008年完成的名為RoadRuner的1600萬億次HPC中,總共采用了16000個(gè)Opteron和Cell兩種架構(gòu)的處理器。多核微處理器和面向領(lǐng)域的混合體系結(jié)構(gòu)已經(jīng)成為HPC®展的趨勢。集群將成為超級(jí)計(jì)算系統(tǒng)的主流集群架構(gòu)的超級(jí)計(jì)算系統(tǒng),特別是以采用普通商用芯片和內(nèi)聯(lián)技術(shù)組成的系統(tǒng),迅速成為目前高性能計(jì)算架構(gòu)的主流。它大受歡迎的主要原因在于其經(jīng)濟(jì)有效性和公開性。它一般采用廉價(jià)的不同IA服務(wù)器為運(yùn)算節(jié)點(diǎn),小規(guī)模的系統(tǒng)一般采用以太網(wǎng)進(jìn)行內(nèi)聯(lián),規(guī)模大一點(diǎn)和性能要求較高的多采用InfiniBand、

溫馨提示

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

評(píng)論

0/150

提交評(píng)論