版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)組成原理白中英第五章中央處理器第1頁(yè),共101頁(yè),2023年,2月20日,星期四第一章計(jì)算機(jī)系統(tǒng)概論第二章運(yùn)算方法和運(yùn)算器第三章存儲(chǔ)系統(tǒng)第四章指令系統(tǒng)第五章中央處理器第六章總線系統(tǒng)第七章外圍設(shè)備第八章輸入輸出系統(tǒng)第九章并行組織目錄第2頁(yè),共101頁(yè),2023年,2月20日,星期四教材白中英,計(jì)算機(jī)組成原理·網(wǎng)絡(luò)版,科學(xué)出版社,2002參考書(shū)石磊,計(jì)算機(jī)組成原理·第2版,清華大學(xué)出版社,2006錢(qián)曉捷,微型計(jì)算機(jī)原理及應(yīng)用,清華大學(xué)出版社,2006王愛(ài)英,計(jì)算機(jī)組成與結(jié)構(gòu)·第3版,清華大學(xué)出版社,2001白中英鄺堅(jiān),計(jì)算機(jī)組織與結(jié)構(gòu)·網(wǎng)絡(luò)版,科學(xué)出版社,2003第3頁(yè),共101頁(yè),2023年,2月20日,星期四計(jì)算機(jī)組成原理第5章中央處理器
5.1CPU的組成和功能 5.8流水CPU5.2
指令周期 5.9RISCCPU5.3時(shí)序產(chǎn)生器和控制方式 5.10多媒體CPU5.4微程序控制器 5.11CPU性能評(píng)價(jià)5.5微程序設(shè)計(jì)技術(shù)5.6硬布線控制器5.7傳統(tǒng)CPU第4頁(yè),共101頁(yè),2023年,2月20日,星期四5.1CPU的功能和組成
當(dāng)代主流計(jì)算機(jī)所遵循的仍然是馮.諾依曼的“存儲(chǔ)程序、程序控制”思想
程序告訴計(jì)算機(jī):應(yīng)該逐步執(zhí)行什么操作;在什么地方找到用來(lái)操作的數(shù)據(jù),結(jié)果存到何處等
中央處理器是控制計(jì)算機(jī)自動(dòng)完成取出指令和執(zhí)行指令任務(wù)的部件。它是計(jì)算機(jī)的核心部件,通常簡(jiǎn)稱(chēng)為CPU(CentralProcessingUnit)第5頁(yè),共101頁(yè),2023年,2月20日,星期四5.1.1CPU的功能
★指令控制
保證機(jī)器按程序規(guī)定的順序取出執(zhí)行★操作控制
CPU產(chǎn)生每條指令所對(duì)應(yīng)的操作信號(hào),并把各種操作信號(hào)送往相應(yīng)的部件,從而控制這些部件按指令的要求進(jìn)行動(dòng)作★時(shí)間控制
對(duì)各種操作的實(shí)施時(shí)間進(jìn)行定時(shí)★數(shù)據(jù)加工
對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算處理第6頁(yè),共101頁(yè),2023年,2月20日,星期四5.1.2CPU的基本組成控制器完成對(duì)整個(gè)計(jì)算機(jī)系統(tǒng)操作的協(xié)調(diào)與指揮。
(1)控制機(jī)器從內(nèi)存中取出一條指令,并指出下一條指令在內(nèi)存中的位置;
(2)對(duì)指令進(jìn)行譯碼,并產(chǎn)生相應(yīng)的操作控制信號(hào),送往相應(yīng)的部件,啟動(dòng)規(guī)定的動(dòng)作;
(3)指揮并控制CPU、內(nèi)存與輸入/輸出(I/O)設(shè)備之間數(shù)據(jù)流動(dòng)的方向運(yùn)算器是數(shù)據(jù)加工處理部件,所進(jìn)行的全部操作由控制器發(fā)出的控制信號(hào)指揮
(1)執(zhí)行所有的算術(shù)運(yùn)算;
(2)執(zhí)行所有的邏輯運(yùn)算,并進(jìn)行邏輯測(cè)試第7頁(yè),共101頁(yè),2023年,2月20日,星期四算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC存儲(chǔ)器
I/OCPUALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制ccccc緩沖寄存器DRCPU的基本模型第8頁(yè),共101頁(yè),2023年,2月20日,星期四5.1.3
CPU中的主要寄存器
數(shù)據(jù)緩沖寄存器(DR)暫時(shí)存放由內(nèi)存讀出或?qū)懭氲闹噶罨驍?shù)據(jù)字指令寄存器(IR)保存當(dāng)前正在執(zhí)行的一條指令程序計(jì)數(shù)器(PC)確定下一條指令的地址地址寄存器(AR)保存當(dāng)前CPU所訪問(wèn)的內(nèi)存單元的地址累加寄存器(AC)最常使用的一個(gè)通用寄存器狀態(tài)條件寄存器(PSW)保存由算術(shù)和邏輯指令的結(jié)果建立的各種條件碼第9頁(yè),共101頁(yè),2023年,2月20日,星期四5.1.4操作控制器與時(shí)序產(chǎn)生器
操作控制器在各寄存器之間建立數(shù)據(jù)通路(傳送信息的通路)操作控制器的功能:就是根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生各種操作控制信號(hào),以便正確地建立數(shù)據(jù)通路,從而完成取指令和執(zhí)行指令的控制硬布線控制器微程序控制器時(shí)序產(chǎn)生器產(chǎn)生并發(fā)出計(jì)算機(jī)所需要的時(shí)序控制信號(hào)第10頁(yè),共101頁(yè),2023年,2月20日,星期四5.2
指令周期—讀取指令指令地址送入主存地址寄存器讀主存,讀出內(nèi)容送入指定的寄存器—分析指令—按指令規(guī)定內(nèi)容執(zhí)行指令不同指令的操作步驟數(shù)和具體操作內(nèi)容差異很大—檢查有無(wú)中斷請(qǐng)求若無(wú),則轉(zhuǎn)入下一條指令的執(zhí)行過(guò)程形成下一條指令地址指令的執(zhí)行過(guò)程取指令執(zhí)行指令第11頁(yè),共101頁(yè),2023年,2月20日,星期四5.2.1指令周期的基本概念
指令周期
:
CPU從內(nèi)存取出一條指令并執(zhí)行完這條指令的時(shí)間總和
CPU周期
:
又稱(chēng)機(jī)器周期(總線周期),CPU訪問(wèn)內(nèi)存所花的時(shí)間較長(zhǎng),因此用CPU從內(nèi)存讀取一條指令字的所需的最短時(shí)間來(lái)定義時(shí)鐘周期
:
通常稱(chēng)為節(jié)拍脈沖或T周期。一個(gè)CPU周期包含若干個(gè)時(shí)鐘周期T
相互關(guān)系:
1個(gè)指令周期=若干個(gè)CPU周期
1個(gè)CPU周期=若干T周期
取指時(shí)間+執(zhí)行指令時(shí)間第12頁(yè),共101頁(yè),2023年,2月20日,星期四指令周期·CPU周期·
時(shí)鐘周期第13頁(yè),共101頁(yè),2023年,2月20日,星期四020
CLA
;累加器清0021
ADD30
;(AC)+(30)→AC
022
STA40
;(AC)→(40)023
NOP
;空操作
024
JMP21
;21→PC
…030000006 ;數(shù)據(jù)
…040存和數(shù) ;數(shù)據(jù)5條典型指令構(gòu)成的簡(jiǎn)單程序第14頁(yè),共101頁(yè),2023年,2月20日,星期四一個(gè)CPU周期一個(gè)CPU周期取指令階段執(zhí)行指令階段開(kāi)始取指令PC+1對(duì)指令譯碼執(zhí)行指令取下條指令PC+15.2.2CLA指令的指令周期第15頁(yè),共101頁(yè),2023年,2月20日,星期四取出CLA指令算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC緩沖寄存器DRCPUALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制cccc+10000202021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021第16頁(yè),共101頁(yè),2023年,2月20日,星期四算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC緩沖寄存器DRCPUALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000020CLACLA000021000000執(zhí)行CLA指令第17頁(yè),共101頁(yè),2023年,2月20日,星期四5.2.3
ADD指令的指令周期
一個(gè)CPU周期一個(gè)CPU周期取指令階段執(zhí)行指令階段開(kāi)始取指令PC+1對(duì)指令譯碼送操作數(shù)地址取下條指令PC+1取出操作數(shù)執(zhí)行加操作一個(gè)CPU周期第18頁(yè),共101頁(yè),2023年,2月20日,星期四算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC緩沖寄存器DRCPUALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制cccc+12021222324303140CLAADD30STA40NOPJMP21000006000021ADDADD300000210000220000300000060+6=6000006取出并執(zhí)行ADD指令第19頁(yè),共101頁(yè),2023年,2月20日,星期四5.2.4
STA指令的指令周期
第20頁(yè),共101頁(yè),2023年,2月20日,星期四算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC緩沖寄存器DRCPUALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000022STASTA40000022000023000040000006000006000006取出并執(zhí)行STA指令第21頁(yè),共101頁(yè),2023年,2月20日,星期四5.2.5NOP指令和JMP指令的指令周期第22頁(yè),共101頁(yè),2023年,2月20日,星期四算術(shù)邏輯單元狀態(tài)條件寄存器程序計(jì)數(shù)器PC地址寄存器AR地址總線ABUS數(shù)據(jù)總線DBUS累加器AC緩沖寄存器DRALU指令寄存器IR指令譯碼器操作控制器時(shí)序產(chǎn)生器時(shí)鐘狀態(tài)反饋取指控制執(zhí)行控制cccc+120212223243040CLAADD30STA40NOPJMP21000006000024JMP21JMP21000024000021000006000006000025000021取出并執(zhí)行JMP指令第23頁(yè),共101頁(yè),2023年,2月20日,星期四5.3
時(shí)序產(chǎn)生器和控制方式
用二進(jìn)制碼表示的指令和數(shù)據(jù)都放在內(nèi)存里,那么CPU是怎樣識(shí)別出它們是數(shù)據(jù)還是指令呢?
從時(shí)間上來(lái)說(shuō):取指令事件發(fā)生在指令周期的第一個(gè)CPU周期中,即發(fā)生在“取指令”階段,而取數(shù)據(jù)事件發(fā)生在指令周期的后面幾個(gè)CPU周期中,即發(fā)生在“執(zhí)行指令”階段。
從空間上來(lái)說(shuō):如果取出的代碼是指令,那么一定經(jīng)DR送往指令寄存器IR,如果取出的代碼是數(shù)據(jù),那么一定送往運(yùn)算器。時(shí)間控制對(duì)計(jì)算機(jī)來(lái)說(shuō)是非常重要的![思考]第24頁(yè),共101頁(yè),2023年,2月20日,星期四5.3.1時(shí)序信號(hào)的作用和體制
計(jì)算機(jī)的協(xié)調(diào)動(dòng)作需要時(shí)間標(biāo)志,而且需要采用多級(jí)時(shí)序體制。而時(shí)間標(biāo)志則用時(shí)序信號(hào)來(lái)體現(xiàn)。
硬布線控制器中,時(shí)序信號(hào)往往采用主狀態(tài)周期-節(jié)拍電位-節(jié)拍脈沖三級(jí)體制。主狀態(tài)周期(指令周期):包含若干個(gè)節(jié)拍周期,可以用一個(gè)觸發(fā)器的狀態(tài)持續(xù)時(shí)間來(lái)表示節(jié)拍電位(機(jī)器周期):表示一個(gè)CPU周期的時(shí)間,包含若干個(gè)節(jié)拍脈沖節(jié)拍脈沖(時(shí)鐘周期):表示較小的時(shí)間單位
微程序控制器中,時(shí)序信號(hào)則一般采用節(jié)拍電位-節(jié)拍脈沖二級(jí)體制。第25頁(yè),共101頁(yè),2023年,2月20日,星期四節(jié)拍脈沖節(jié)拍電位1主狀態(tài)周期節(jié)拍電位2主狀態(tài)周期-節(jié)拍電位-節(jié)拍脈沖第26頁(yè),共101頁(yè),2023年,2月20日,星期四數(shù)據(jù)準(zhǔn)備好后,以電位的方式送觸發(fā)器控制信號(hào)來(lái)到后,用一個(gè)脈沖信號(hào)把數(shù)據(jù)裝入觸發(fā)器數(shù)據(jù):電位控制信號(hào):脈沖節(jié)拍電位-節(jié)拍脈沖第27頁(yè),共101頁(yè),2023年,2月20日,星期四
IORQMREQRDWET1T2T3T4
IORQ°MREQ°RD°WE°T1°T2°T3°T4°MERQ’IORQ’RD’WR’Φ提供頻率穩(wěn)定且電平匹配的方波時(shí)鐘脈沖信號(hào)由石英晶體振蕩器組成產(chǎn)生一組有序的間隔相等或不等的脈沖序列啟動(dòng)停機(jī)5.3.2時(shí)序信號(hào)產(chǎn)生器
啟??刂七壿嫻?jié)拍脈沖和讀寫(xiě)時(shí)序譯碼邏輯環(huán)形脈沖發(fā)生器時(shí)鐘脈沖源第28頁(yè),共101頁(yè),2023年,2月20日,星期四時(shí)序產(chǎn)生器
(1/4)一、
概念
1、時(shí)序部件:計(jì)算機(jī)的機(jī)內(nèi)時(shí)鐘。它用其產(chǎn)生的周期狀態(tài),節(jié)拍電位及時(shí)標(biāo)脈沖去對(duì)指令周期進(jìn)行時(shí)間劃分,刻度和標(biāo)定。
2、指令周期:在計(jì)算機(jī)中從指令的讀取到指令的執(zhí)行完成,執(zhí)行一條指令所需要的時(shí)間,稱(chēng)為指令周期。 指令周期通常由若干個(gè)CPU周期來(lái)表示,CPU周期也稱(chēng)為機(jī)器周期。由于CPU內(nèi)部的操作速度較快,而CPU訪問(wèn)一次內(nèi)存所花的時(shí)間較長(zhǎng),通常用存儲(chǔ)周期為基礎(chǔ)來(lái)規(guī)定CPU周期。第29頁(yè),共101頁(yè),2023年,2月20日,星期四時(shí)序產(chǎn)生器
(2/4)二、3級(jí)時(shí)序信號(hào)
1、周期(1)在一個(gè)控制階段內(nèi)均持續(xù)起作用的信號(hào);(2)通常用周期狀態(tài)寄存器來(lái)標(biāo)志和指明某某周期控制;(3)指令周期可分為取指周期、分析周期、執(zhí)行周期。
2、節(jié)拍(1)把一個(gè)機(jī)器周期分成若干個(gè)相等的時(shí)間段,每一個(gè)時(shí)間段對(duì)應(yīng)一個(gè)電位信號(hào),稱(chēng)節(jié)拍電位;(2)一般都以能保證ALU進(jìn)行一次運(yùn)算操作作為一拍電位的時(shí)間寬度。
3、時(shí)標(biāo)工作脈沖(1)
及時(shí)改變標(biāo)志狀態(tài);(2)
時(shí)標(biāo)脈沖的寬度一般為節(jié)拍電位寬度的1/N,只要能保證所有的觸發(fā)器都能可靠地,穩(wěn)定地翻轉(zhuǎn)即可。第30頁(yè),共101頁(yè),2023年,2月20日,星期四時(shí)序產(chǎn)生器
(3/4)三、3級(jí)時(shí)序信號(hào)的關(guān)系1、一臺(tái)計(jì)算機(jī)機(jī)內(nèi)的控制信號(hào)一般均由若干個(gè)周期狀態(tài),若干個(gè)節(jié)拍電位及若干個(gè)時(shí)標(biāo)脈沖這樣3級(jí)控制時(shí)序信號(hào)定時(shí)完成。2、3級(jí)控制時(shí)序信號(hào)的寬度均成正整數(shù)倍同步關(guān)系。周期狀態(tài)之間,節(jié)拍電位之間,時(shí)標(biāo)脈沖之間既不容許有重疊交叉,又不容許有空白間隙,應(yīng)該是能一個(gè)接一個(gè)地準(zhǔn)確連接,一個(gè)降落另一個(gè)升起而準(zhǔn)確切換的同步信號(hào)。第31頁(yè),共101頁(yè),2023年,2月20日,星期四時(shí)序產(chǎn)生器
(4/4)圖6-7三級(jí)時(shí)序系統(tǒng)時(shí)標(biāo)脈沖節(jié)拍周期第32頁(yè),共101頁(yè),2023年,2月20日,星期四CPU的控制方式
(1/4)控制器的控制方式:形成控制不同微操作序列的時(shí)序控制信號(hào)的方法??刂品绞降姆诸?lèi):同步控制方式異步控制方式同異步聯(lián)合控制方式第33頁(yè),共101頁(yè),2023年,2月20日,星期四CPU的控制方式
(2/4)一、同步控制方式1、含義:又稱(chēng)為固定時(shí)序控制方式或無(wú)應(yīng)答控制方式。任何指令的執(zhí)行或指令中每個(gè)微操作的執(zhí)行都受事先安排好的時(shí)序信號(hào)的控制。2、每個(gè)周期狀態(tài)中產(chǎn)生統(tǒng)一數(shù)目的節(jié)拍電位及時(shí)標(biāo)工作脈沖。3、以最復(fù)雜指令的實(shí)現(xiàn)需要為基準(zhǔn)。4、優(yōu)點(diǎn):設(shè)計(jì)簡(jiǎn)單,操作控制容易實(shí)現(xiàn)。缺點(diǎn):效率低。第34頁(yè),共101頁(yè),2023年,2月20日,星期四CPU的控制方式
(3/4)二、異步控制方式
1、
含義:可變時(shí)序控制方式或應(yīng)答控制方式。執(zhí)行一條指令需要多少節(jié)拍,不作統(tǒng)一的規(guī)定,而是根據(jù)每條指令的具體情況而定,需要多少,控制器就產(chǎn)生多少時(shí)標(biāo)信號(hào)。
2、特點(diǎn):每一條指令執(zhí)行完畢后都必須向控制時(shí)序部件發(fā)回一個(gè)回答信號(hào),控制器收到回答信號(hào)后,才開(kāi)始下一條指令的執(zhí)行。
3、優(yōu)點(diǎn):指令的運(yùn)行效率高; 缺點(diǎn):控制線路比較復(fù)雜。
4、異步工作方式一般采用兩條定時(shí)控制線來(lái)實(shí)現(xiàn)。我們把這兩條線稱(chēng)為“請(qǐng)求”線和“回答”線。當(dāng)系統(tǒng)中兩個(gè)部件A和B進(jìn)行數(shù)據(jù)交換時(shí),若A發(fā)出“請(qǐng)求”信號(hào),則必須有B的“回答”信號(hào)進(jìn)行應(yīng)答,這次操作才是有效的,否則無(wú)效。第35頁(yè),共101頁(yè),2023年,2月20日,星期四CPU的控制方式
(4/4)三、同步,異步聯(lián)合控制方式
1、含義:同步控制和異步控制相結(jié)合的方式即聯(lián)合控制方式,區(qū)別對(duì)待不同指令。
2、一般的設(shè)計(jì)思想是,在功能部件內(nèi)部采用同步式,而在功能部件之間采用異步式,并且在硬件實(shí)現(xiàn)允許的情況下,盡可能多地采用異步控制。第36頁(yè),共101頁(yè),2023年,2月20日,星期四5.3.3控制方式控制不同操作序列時(shí)序信號(hào)的方法1.同步控制方式已定的指令在執(zhí)行時(shí)所需的CPU周期(機(jī)器周期)數(shù)和時(shí)鐘周期數(shù)都固定不變。例如采用完全統(tǒng)一的機(jī)器周期執(zhí)行各種不同的指令2.異步控制方式
控制器發(fā)出某一操作控制信號(hào)后,等待執(zhí)行部件完成操作后發(fā)“回答”信號(hào),再開(kāi)始新的操作3.聯(lián)合控制方式同步控制和異步控制相結(jié)合的方式第37頁(yè),共101頁(yè),2023年,2月20日,星期四CPU周期取指周期CPU周期取源數(shù)CPU周期取目標(biāo)數(shù)CPU周期執(zhí)行周期P0P1P2W0W1完全同步控制方式第38頁(yè),共101頁(yè),2023年,2月20日,星期四W0W1…Wi第N條指令結(jié)束應(yīng)答W0W1…Wj第N+1條指令結(jié)束應(yīng)答啟動(dòng)下一條W0W1…Wk第N+2條指令結(jié)束應(yīng)答異步控制方式啟動(dòng)下一條i、j、k不一定相等一般采用兩條定時(shí)控制線:“請(qǐng)求”線和“回答”線演示第39頁(yè),共101頁(yè),2023年,2月20日,星期四5.4微程序控制器微程序控制器同硬布線控制器相比較,具有規(guī)整性、靈活性、可維護(hù)性等一系列優(yōu)點(diǎn)它利用軟件方法(微程序設(shè)計(jì)技術(shù))來(lái)設(shè)計(jì)硬件微程序控制的基本思想就是把操作控制信號(hào)編成所謂的“微指令”,存放到一個(gè)只讀存儲(chǔ)器里(控制存儲(chǔ)器CM)。當(dāng)機(jī)器運(yùn)行時(shí),一條又一條地讀出這些微指令,從而產(chǎn)生全機(jī)所需要的各種操作控制信號(hào),是相應(yīng)部件執(zhí)行所規(guī)定的操作第40頁(yè),共101頁(yè),2023年,2月20日,星期四微命令→指令系統(tǒng)處理器內(nèi)部可以分為:控制部件和執(zhí)行部件微命令:控制部件向執(zhí)行部件發(fā)出的控制命令微操作:執(zhí)行部件接受微命令后所進(jìn)行的操作 (微操作在執(zhí)行部件中是最基本的操作)微指令:實(shí)現(xiàn)一定操作功能的一組微命令微程序:實(shí)現(xiàn)一條機(jī)器指令功能的微指令序列指令系統(tǒng)=所有指令,指令=微程序微程序=若干微指令,微指令=一組微命令微命令→微操作第41頁(yè),共101頁(yè),2023年,2月20日,星期四機(jī)器指令與微指令程序機(jī)器指令1機(jī)器指令2機(jī)器指令i機(jī)器指令n……..………微指令2微指令1微指令i微指令n……..……..微程序第42頁(yè),共101頁(yè),2023年,2月20日,星期四程序計(jì)數(shù)器PC地址寄存器AR緩沖寄存器DR指令寄存器IR微地址寄存器μAR微指令寄存器μIR主存儲(chǔ)器控制存儲(chǔ)器CM微命令地址譯碼器地址譯碼機(jī)器指令級(jí)微指令級(jí)第43頁(yè),共101頁(yè),2023年,2月20日,星期四
5.5微程序設(shè)計(jì)技術(shù)1.靜態(tài)微程序設(shè)計(jì)對(duì)應(yīng)于一臺(tái)計(jì)算機(jī)的機(jī)器指令只有一組微程序,而且這一組微程序設(shè)計(jì)好之后,一般無(wú)須改變而且也不好改變2.動(dòng)態(tài)微程序設(shè)計(jì)采用EPROM作為控制存儲(chǔ)器,可以通過(guò)改變微指令和微程序來(lái)改變機(jī)器的指令系統(tǒng)采用動(dòng)態(tài)微程序設(shè)計(jì),微指令和微程序可以根據(jù)需要加以改變,因而可在一臺(tái)機(jī)器上仿真其它機(jī)器指令系統(tǒng)第44頁(yè),共101頁(yè),2023年,2月20日,星期四5.6硬布線控制器硬布線控制器把控制部件看作為產(chǎn)生專(zhuān)門(mén)固定時(shí)序控制信號(hào)的邏輯電路(以使用最少元件和取得最高操作速度為設(shè)計(jì)目標(biāo))硬布線控制的優(yōu)點(diǎn):速度較快;缺點(diǎn):不容易修改添加新功能微程序控制的優(yōu)點(diǎn):具有規(guī)整性、靈活性、可維護(hù)性等;缺點(diǎn):采用存儲(chǔ)程序原理,需要執(zhí)行多條微指令,速度較慢第45頁(yè),共101頁(yè),2023年,2月20日,星期四5.7傳統(tǒng)CPUM6800CPU是一個(gè)比較典型的單總線結(jié)構(gòu)的微處理器M6800CPU是一種8位微處理器,采用單一的5V電源。時(shí)鐘脈沖采用兩相(φ1,φ2),主頻為1MHz,由外面加入CPU。M6800的CPU主要包括8位的ALU,16位的程序計(jì)數(shù)器、16位的堆棧指示器和16位的變址寄存器,兩個(gè)8位的累加器和一個(gè)8位的狀態(tài)條件碼寄存器,一個(gè)8位的指令寄存器以及指令譯碼與控制部件(即操作控制器)。此外還有一個(gè)8位的數(shù)據(jù)緩沖寄存器和一個(gè)16位的地址緩沖寄存器。ALU部件執(zhí)行算術(shù)運(yùn)算和邏輯操作,它們包括邏輯“與”、邏輯“或”、邏輯“異或”、求補(bǔ)、比較、加法、減法、十進(jìn)制調(diào)整等。在M6800中,主存地址和外設(shè)地址是統(tǒng)一編址的,因此,在65536個(gè)地址中有一部分是為外圍設(shè)備使用的。第46頁(yè),共101頁(yè),2023年,2月20日,星期四傳統(tǒng)CPU舉例Intel8088CPUIntel8088是一種通用的準(zhǔn)16位微處理器,其內(nèi)部結(jié)構(gòu)為16位,與外部交換的數(shù)據(jù)為8位。它可以處理16位數(shù)據(jù)(具有16位運(yùn)算指令,包括乘除法指令),也可處理8位數(shù)據(jù)。它有20條地址線,直接尋址能力達(dá)到1M字節(jié)。CPU從功能上來(lái)說(shuō)分成總線接口單元BIU和執(zhí)行單元EU兩大部分。BIU負(fù)責(zé)與存儲(chǔ)器和外圍設(shè)備接口,即8088CPU與存儲(chǔ)器和外圍設(shè)備之間的信息傳送,都是由BIU進(jìn)行的。EU部分負(fù)責(zé)指令的執(zhí)行。取指部分與執(zhí)行指令部分是獨(dú)立并行工作的,在一條指令的執(zhí)行過(guò)程中,可取出下一條(或多條)指令,在指令流隊(duì)列寄存器中排隊(duì)。在一條指令執(zhí)行完以后就可以立即執(zhí)行下一條指令,減少了CPU為取指令而等待的時(shí)間,提高了系統(tǒng)的運(yùn)行速度。第47頁(yè),共101頁(yè),2023年,2月20日,星期四傳統(tǒng)CPU舉例IBM370CPU32位CPUALU部件按功能不同分為如下三個(gè)子部件:(1)定點(diǎn)運(yùn)算,包括整數(shù)計(jì)算和有效地址的計(jì)算;(2)浮點(diǎn)運(yùn)算;(3)可變長(zhǎng)運(yùn)算,包括十進(jìn)制算術(shù)運(yùn)算和字符串操作。為了存放地址和數(shù)據(jù),使用了兩組獨(dú)立的可編址寄存器,16個(gè)通用寄存器用來(lái)存放操作數(shù)和運(yùn)算結(jié)果,且可用作變址寄存器。4個(gè)浮點(diǎn)寄存器用于浮點(diǎn)運(yùn)算。數(shù)據(jù)寄存器DR、地址寄存器AR、指令寄存器IR是標(biāo)準(zhǔn)化的。Intel80486CPU32位CPU通過(guò)采用流水技術(shù),以及微程序控制和硬布線邏輯控制相結(jié)合的方式,進(jìn)一步縮短可變長(zhǎng)指令的譯碼時(shí)間,達(dá)到基本指令可以在一個(gè)時(shí)鐘周期內(nèi)完成。第48頁(yè),共101頁(yè),2023年,2月20日,星期四傳統(tǒng)CPU舉例486芯片內(nèi)部包含一個(gè)8KB的數(shù)據(jù)和指令混合性cache,為頻繁訪問(wèn)的指令和數(shù)據(jù)提供快速的內(nèi)部存儲(chǔ),從而使系統(tǒng)總線有更多的時(shí)間用于其他控制。486芯片內(nèi)部包含了增強(qiáng)性80387協(xié)處理器,稱(chēng)為浮點(diǎn)運(yùn)算部件(FPU)。由于FPU功能擴(kuò)充,且放在CPU內(nèi)部,使引線縮短,故速度比80387提高了3—5倍。486CPU的內(nèi)部數(shù)據(jù)總線寬度為64位,這也是它縮短指令周期的一個(gè)原因。而外部數(shù)據(jù)總線的寬度也可以自動(dòng)轉(zhuǎn)換。地址信號(hào)線擴(kuò)充到32位,可以處理4GB(232字節(jié))的物理存儲(chǔ)空間。如果利用虛擬存儲(chǔ)器,其存儲(chǔ)空間達(dá)64TB(246字節(jié))。第49頁(yè),共101頁(yè),2023年,2月20日,星期四5.8流水CPU洗衣房的流水作業(yè)三個(gè)階段:1.水洗(30)2.烘干(40)3.熨燙(20)ABCD6PM789TaskOrderTime304040404020演示第50頁(yè),共101頁(yè),2023年,2月20日,星期四5.8.1并行處理技術(shù)并行性(Parallelism): 在同一時(shí)刻或是同一時(shí)間間隔內(nèi)完成兩種或兩種以上性質(zhì)相同或不相同的工作同時(shí)性(Simultaneity):同一時(shí)刻發(fā)生的并行性并發(fā)性(Concurrency):同一個(gè)時(shí)間間隔內(nèi)發(fā)生的并行性并行性的等級(jí)指令內(nèi)部并行:微操作之間指令級(jí)并行(ILP:InstructionLevelParallel)線程級(jí)并行(TLP:ThreadLevelParallel)程序級(jí)并行系統(tǒng)級(jí)并行:分布式系統(tǒng)、多機(jī)系統(tǒng)、機(jī)群系統(tǒng)第51頁(yè),共101頁(yè),2023年,2月20日,星期四提高并行性的技術(shù)途徑時(shí)間重疊(Time-interleaving)=時(shí)間并行
多個(gè)過(guò)程在時(shí)間上相互錯(cuò)開(kāi),輪流重疊地使用同一套硬件設(shè)備的各個(gè)部分資源重復(fù)(Resource-replication)=空間并行 通過(guò)重復(fù)設(shè)置資源(尤其是硬件資源),提高性能資源共享(Resource-sharing)
使多個(gè)任務(wù)按一定時(shí)間順序輪流使用同一套硬件設(shè)備單機(jī)系統(tǒng)中并行性的發(fā)展→9.1.3指令流水線,部件冗余,分時(shí)系統(tǒng)多機(jī)系統(tǒng)中并行性的發(fā)展→9.1.4多機(jī)系統(tǒng)耦合度:松散耦合、緊密耦合第52頁(yè),共101頁(yè),2023年,2月20日,星期四5.8.2流水CPU的結(jié)構(gòu)指令流水線
IF(InstructionFetch) 取指令階段ID(InstructionDecode) 指令譯碼階段EX(Execute) 執(zhí)行運(yùn)算階段MEM(MemoryAccess) 存儲(chǔ)器訪問(wèn)階段WB(WriteBack) 寫(xiě)回結(jié)果階段WB第53頁(yè),共101頁(yè),2023年,2月20日,星期四流水線的時(shí)空?qǐng)D流水線技術(shù):把一個(gè)重復(fù)的過(guò)程分解為若干個(gè)子過(guò)程,每個(gè)子程序可以與其他子過(guò)程同時(shí)進(jìn)行描述流水線的工作,最常用的方法是時(shí)間-空間圖(時(shí)空?qǐng)D)橫坐標(biāo):表示時(shí)間,即各個(gè)任務(wù)在流水線中所經(jīng)過(guò)的時(shí)間縱坐標(biāo):表示空間,即流水線的各個(gè)子過(guò)程,也稱(chēng)為級(jí)、段、流水線深度(Stage)第54頁(yè),共101頁(yè),2023年,2月20日,星期四非流水計(jì)算機(jī)的時(shí)空?qǐng)D每4個(gè)機(jī)器周期才有一個(gè)輸出結(jié)果第55頁(yè),共101頁(yè),2023年,2月20日,星期四流水計(jì)算機(jī)的時(shí)空?qǐng)D每個(gè)機(jī)器周期可以輸出一個(gè)結(jié)果演示第56頁(yè),共101頁(yè),2023年,2月20日,星期四流水線的特點(diǎn)流水線實(shí)際上是把一個(gè)功能部件分解成多個(gè)獨(dú)立的子功能部件(一個(gè)任務(wù)也就分成了幾個(gè)子任務(wù),每個(gè)子任務(wù)由一個(gè)子功能部件完成),并依靠多個(gè)子功能部件并行工作來(lái)縮短所有任務(wù)的執(zhí)行時(shí)間流水線有助于提高整個(gè)程序(所有任務(wù))的吞吐率,但并沒(méi)有減少每個(gè)指令(任務(wù))的執(zhí)行時(shí)間流水線各個(gè)功能段所需時(shí)間應(yīng)盡量相等。否則,時(shí)間長(zhǎng)的功能段將成為流水線的“瓶頸”,會(huì)造成流水線的“阻塞”(Stall)流水線開(kāi)始需要“通過(guò)時(shí)間”(Fill)和最后需要“排空時(shí)間”(Drain)。流水線只有處理連續(xù)不斷的任務(wù)才能發(fā)揮其效率第57頁(yè),共101頁(yè),2023年,2月20日,星期四5.8.3流水線中的主要問(wèn)題流水線中存在一些相關(guān)(沖突、冒險(xiǎn)Hazard,相關(guān)、依賴(lài)Dependence,競(jìng)爭(zhēng)Competition)的情況,它使得下一條指令無(wú)法在設(shè)計(jì)的時(shí)鐘周期內(nèi)執(zhí)行。這些相關(guān)將降低流水線性能主要有三種類(lèi)型的相關(guān)(沖突)結(jié)構(gòu)相關(guān)(資源沖突):當(dāng)指令重疊執(zhí)行過(guò)程中,硬件資源滿足不了指令重疊執(zhí)行的要求數(shù)據(jù)相關(guān)(數(shù)據(jù)沖突):在同時(shí)執(zhí)行的多條指令中,一條指令依賴(lài)前一條指令的執(zhí)行結(jié)果(數(shù)據(jù))卻無(wú)法得到控制相關(guān)(控制沖突):流水線遇到分支指令或其他改變PC值的指令第58頁(yè),共101頁(yè),2023年,2月20日,星期四1.資源相關(guān)
資源相關(guān)是指多條指令進(jìn)入流水線后,在同一機(jī)器時(shí)鐘周期內(nèi)爭(zhēng)用同一個(gè)功能部件所發(fā)生的沖突
例:假定一條指令流水線由五段組成,且僅有IF過(guò)程和MEM過(guò)程需要訪問(wèn)存儲(chǔ)器I1與I4兩條指令在時(shí)鐘4爭(zhēng)用存儲(chǔ)器資源的相關(guān)沖突第59頁(yè),共101頁(yè),2023年,2月20日,星期四2.數(shù)據(jù)相關(guān)
ADDR1,R2,R3 ;
R2+R3→R1SUBR4,R1,R5 ;
R1-R5→R4ANDR6,R1,R7 ;
R1∧R7→R0指令發(fā)生數(shù)據(jù)相關(guān)沖突
第60頁(yè),共101頁(yè),2023年,2月20日,星期四3.控制相關(guān)控制相關(guān)沖突由轉(zhuǎn)移指令(分支指令)引起執(zhí)行轉(zhuǎn)移指令時(shí),依據(jù)轉(zhuǎn)移條件的產(chǎn)生結(jié)果 可能為順序取下條指令 也可能轉(zhuǎn)移到新的目標(biāo)地址取指令 地址不定,流水線需要暫停、發(fā)生斷流轉(zhuǎn)移指令主要有: 無(wú)條件轉(zhuǎn)移指令:跳轉(zhuǎn)、過(guò)程調(diào)用和返回 條件分支指令第61頁(yè),共101頁(yè),2023年,2月20日,星期四
【例5】流水線中有三類(lèi)數(shù)據(jù)相關(guān)沖突:寫(xiě)后讀(RAW)相關(guān);讀后寫(xiě)(WAR)相關(guān);寫(xiě)后寫(xiě)(WAW)相關(guān)⑴I1:ADDR1,R2,R3 ;R2+R3→R1
I2:SUBR4,R1,R5 ;R1-R5→R4
⑵I3:STAM(x),R3 ;R3→M(x)
I4:ADDR3,R4,R5 ;R4+R5→R3
⑶I5:MULR3,R1,R2 ;R1×R2→R3
I6:ADDR3,R4,R5 ;R4+R5→R3RAWWARWAW第62頁(yè),共101頁(yè),2023年,2月20日,星期四指令動(dòng)態(tài)調(diào)度策略簡(jiǎn)單指令流水線技術(shù)的一個(gè)主要局限 指令順序發(fā)射(in-orderissue)=按序發(fā)射
指令順序執(zhí)行(in-orderexecution)
如果一條指令在流水線中,與之相關(guān)的指令及其后面的指令都不能進(jìn)行處理改進(jìn)指令流水線,只要指令操作數(shù)就緒就執(zhí)行, 指令亂序執(zhí)行(out-of-orderexecution)
指令亂序結(jié)束(out-of-ordercompletion)MULR0,R2,R4ADDR6,R0,R8SUBR7,R3,R1第63頁(yè),共101頁(yè),2023年,2月20日,星期四多指令流出技術(shù)進(jìn)一步改進(jìn)指令流水線,實(shí)現(xiàn)一個(gè)時(shí)鐘周期發(fā)射(流出issue)多條指令超標(biāo)量(Superscalar)處理器:每個(gè)時(shí)鐘周期發(fā)射多條指令(1~8)超長(zhǎng)指令字(VLIW:VeryLongInstructionWord):通過(guò)編譯器調(diào)度無(wú)關(guān)的多條指令(4~16)形成一條長(zhǎng)指令,每個(gè)時(shí)鐘周期發(fā)射一條長(zhǎng)指令超級(jí)流水線(Superpipelining):將每個(gè)功能部件進(jìn)一步流水化,使得一個(gè)功能部件在一個(gè)時(shí)鐘周期中可以處理多條指令(可以簡(jiǎn)單地理解為很長(zhǎng)的流水線)第64頁(yè),共101頁(yè),2023年,2月20日,星期四多發(fā)射流水線01234567T正常流水線超標(biāo)量流水線0123456T0123456T超長(zhǎng)指令字流水線3個(gè)操作01234567T超級(jí)流水線第65頁(yè),共101頁(yè),2023年,2月20日,星期四80486的整數(shù)指令流水線5級(jí)指令流水線,每級(jí)1個(gè)時(shí)鐘周期
PF指令預(yù)?。╬refetch)
D1指令譯碼1(decodestage1) 對(duì)所有操作碼和尋址方式信息進(jìn)行譯碼
D2指令譯碼2(decodestage2) 將操作碼擴(kuò)展為ALU的控制信號(hào),存儲(chǔ)器地址計(jì)算EX指令執(zhí)行(execute) 完成ALU操作和Cache存取WB回寫(xiě)(writeback) 更新在EX步驟得到的寄存器數(shù)據(jù)和狀態(tài)標(biāo)志第66頁(yè),共101頁(yè),2023年,2月20日,星期四Pentium的超標(biāo)量流水線類(lèi)似80486的5級(jí)流水線,后3級(jí)可以在兩個(gè)流水線同時(shí)進(jìn)行指令預(yù)取PF和指令譯碼D1步驟可以并行取出、譯碼2條簡(jiǎn)單指令,然后分別發(fā)向U和V流水線在滿足指令配對(duì)的條件下,Pentium可以每個(gè)時(shí)鐘周期執(zhí)行完2條指令V流水線U流水線地址生成D2地址生成D2指令預(yù)取PF指令譯碼D1執(zhí)行EX執(zhí)行EX回寫(xiě)WB回寫(xiě)WB第67頁(yè),共101頁(yè),2023年,2月20日,星期四Pentium的超標(biāo)量結(jié)構(gòu)轉(zhuǎn)移指令地址寄存器V流水線ALUU流水線ALU移位器指令譯碼和配對(duì)控制單元分支目標(biāo)緩沖器V流水線存儲(chǔ)地址產(chǎn)生器U流水線存儲(chǔ)地址產(chǎn)生器隊(duì)列B隊(duì)列A指令Cache指令預(yù)取電路分支目標(biāo)地址產(chǎn)生分支地址第68頁(yè),共101頁(yè),2023年,2月20日,星期四PentiumIII的動(dòng)態(tài)執(zhí)行結(jié)構(gòu)取指取數(shù)順序發(fā)送前端(取指與譯碼單元)讀取指令譯碼指令為微代碼處理指令分支亂序執(zhí)行核心(分派與執(zhí)行單元)調(diào)度和執(zhí)行微代碼包含5個(gè)執(zhí)行端口順序退出單元(退出單元)順序退出指令寫(xiě)入寄存器和存儲(chǔ)器結(jié)果L1指令CacheL1數(shù)據(jù)Cache存數(shù)總線接口單元L2Cache系統(tǒng)總線重排序緩沖區(qū)ROB(指令池)等待執(zhí)行的微代碼緩沖區(qū)第69頁(yè),共101頁(yè),2023年,2月20日,星期四5.9RISCCPURISC的三個(gè)要素
(1)一個(gè)有限的簡(jiǎn)單的指令集
(2)CPU配備大量的通用寄存器
(3)強(qiáng)調(diào)對(duì)指令流水線的優(yōu)化第70頁(yè),共101頁(yè),2023年,2月20日,星期四5.9.1RISC機(jī)器的特點(diǎn)⑴等長(zhǎng)指令,典型長(zhǎng)度是4個(gè)字節(jié)(32位)⑵尋址方式少且簡(jiǎn)單,一般為2~3種⑶只有取數(shù)指令和存數(shù)指令訪問(wèn)存儲(chǔ)器⑷指令數(shù)目一般少于100種,指令格式一般少于4種⑸指令功能簡(jiǎn)單,控制器多采用硬布線方式⑹指令的執(zhí)行時(shí)間為一個(gè)處理時(shí)鐘周期⑺整數(shù)寄存器的個(gè)數(shù)不少于32個(gè)⑻強(qiáng)調(diào)通用寄存器資源的優(yōu)化使用⑼支持指令流水并強(qiáng)調(diào)指令流水的優(yōu)化使用⑽RlSC技術(shù)的編譯程序復(fù)雜第71頁(yè),共101頁(yè),2023年,2月20日,星期四RISC與CISC的主要特征對(duì)比
比較內(nèi)容CISCRISC指令系統(tǒng)復(fù)雜,龐大簡(jiǎn)單,精簡(jiǎn)指令數(shù)目一般大于200一般小于100指令格式一般大于4一般小于4尋址方式一般大于4一般小于4指令字長(zhǎng)不固定等長(zhǎng)可訪存指令不加限制只有LOAD/STORE指令各種指令使用頻率相差很大相差不大各種指令執(zhí)行時(shí)間相差很大絕大多數(shù)在一個(gè)周期內(nèi)完成優(yōu)化編譯實(shí)現(xiàn)很難較容易程序源代碼長(zhǎng)度較短較長(zhǎng)控制器實(shí)現(xiàn)方式絕大多數(shù)為微程序控制主要采用硬布線控制軟件系統(tǒng)開(kāi)發(fā)時(shí)間較短較長(zhǎng)第72頁(yè),共101頁(yè),2023年,2月20日,星期四5.10多媒體CPU
VendorExtensionYear#InstrRegistersHPMAX-1and294,959,8(int)Int32x64bSunVIS95121(int)FP32x64bIntelMMX9757(int)FP8x64bAMD3DNow!9821(fp)FP8x64bMotorolaAltivec98162(int,fp)32x128b(new)IntelSSE9870(fp)8x128b(new)MIPSMIPS-3D?23(fp)FP32x64bAMDE3DNow!9924(fp)8x128(new)IntelSSE201144(int,fp)8x128(new)IntelSSE30313(int,fp)8x128(new)第73頁(yè),共101頁(yè),2023年,2月20日,星期四5.10.1多媒體技術(shù)的主要問(wèn)題媒體(media):傳遞信息的媒介 包括存儲(chǔ)信息的實(shí)體與傳遞信息的載體多媒體(multimedia)技術(shù):計(jì)算機(jī)把各種不同的電子媒質(zhì)集成起來(lái),統(tǒng)一進(jìn)行存儲(chǔ)、處理和傳輸多媒體技術(shù):將多媒體信息,經(jīng)計(jì)算機(jī)設(shè)備獲取、編輯、存儲(chǔ)等處理后,以多媒體形式表現(xiàn)出來(lái)的技術(shù)多媒體技術(shù)解決的主要問(wèn)題 1.圖像與聲音的壓縮技術(shù) 2.適應(yīng)多媒體技術(shù)的軟件技術(shù) 3.計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)方面的技術(shù)
第74頁(yè),共101頁(yè),2023年,2月20日,星期四計(jì)算機(jī)體系結(jié)構(gòu)的分類(lèi)根據(jù)指令流和數(shù)據(jù)流的并行情況,F(xiàn)lynn[1966]提出了對(duì)所有計(jì)算機(jī)進(jìn)行分類(lèi)的簡(jiǎn)單模型單指令流、單數(shù)據(jù)流SISD:?jiǎn)翁幚砥飨到y(tǒng)單指令流、多數(shù)據(jù)流SIMD: 多媒體指令和向量計(jì)算機(jī)多指令流、單數(shù)據(jù)流MISD:尚無(wú)商用多指令流、多數(shù)據(jù)流MIMD: 每個(gè)處理器取用自己的指令并對(duì)自己的數(shù)據(jù)進(jìn)行操作。通常使用現(xiàn)有的微處理器實(shí)現(xiàn)SIMDstandsforSingleInstructionMultipleData第75頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令SIMD指令是能夠同時(shí)處理多個(gè)數(shù)據(jù)的指令,用于擴(kuò)展通用處理器對(duì)多媒體數(shù)據(jù)的處理能力許多應(yīng)用需要多媒體處理能力桌面應(yīng)用
3D圖形,語(yǔ)音識(shí)別,視頻/音頻解碼服務(wù)器 視頻/音頻編碼,數(shù)字圖書(shū)館和媒體挖掘,計(jì)算機(jī)動(dòng)畫(huà),3D建模和著色嵌入系統(tǒng)
3D圖形,視頻/音頻解碼編碼,圖像處理、信號(hào)處理第76頁(yè),共101頁(yè),2023年,2月20日,星期四MMX數(shù)據(jù)類(lèi)型MMX(multimediaextensions)630緊縮4字PackedQuadword6332310緊縮雙字PackedDoubleword634847323116150緊縮字PackedWord63565548474039323124231615870緊縮字節(jié)PackedByte第77頁(yè),共101頁(yè),2023年,2月20日,星期四SSE/SSE2/SSE3數(shù)據(jù)類(lèi)型SSE(StreamingSIMDExtensions)12764630緊縮雙精度浮點(diǎn)數(shù)PackedDouble-precisionFloating-point1279695646332310緊縮單精度浮點(diǎn)數(shù)PackedSingle-precisionFloating-point第78頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令-飽和運(yùn)算a2+b2a2+b2a1+b1a1+b1a0+b0a0+b0第79頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令-乘加運(yùn)算****++第80頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令-比較指令第81頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令-類(lèi)型轉(zhuǎn)換第82頁(yè),共101頁(yè),2023年,2月20日,星期四SIMD指令-操作模式SSE指令128位操作模式SSE指令32位操作模式第83頁(yè),共101頁(yè),2023年,2月20日,星期四5.11CPU性能評(píng)價(jià)CPU性能與3個(gè)要素有關(guān)時(shí)鐘頻率f每條指令需要的時(shí)鐘周期數(shù)CPI指令條數(shù)IN時(shí)鐘周期長(zhǎng)度t=1/fCPU時(shí)鐘周期數(shù)Nc=CPI×IN第84頁(yè),共101頁(yè),2023年,2月20日,星期四5.11.1CPU性能公式第i類(lèi)指令在總程序中占的比例第85頁(yè),共101頁(yè),2023年,2月20日,星期四補(bǔ)充例題假設(shè)在一般程序中浮點(diǎn)開(kāi)平方操作FPSQR所占的比例為2%,它的CPI為100;其他浮點(diǎn)操作FP所占的比例為23%,它的CPI=4.0;其余75%指令的CPI=1.33,計(jì)算該處理機(jī)的CPI。如果FPSQR操作的CPI也為4.0,重新計(jì)算CPI。解答:CPI1=100×2%+4×23%+1.33×75%=3.92CPI2=4×25%+1.33×75%=2.00第86頁(yè),共101頁(yè),2023年,2月20日,星期四〔例題7〕有兩種條件分支指令的設(shè)計(jì)方案:①CPUA:比較指令設(shè)置條件碼,條件分支指令測(cè)試條件碼進(jìn)行分支②CPUB:條件分支指令包括比較、并進(jìn)行分支兩種方案中,條件分支指令占用2個(gè)時(shí)鐘周期、其他指令占用1個(gè)時(shí)鐘周期CPUA的條件分支指令占20%,比較指令也占20%CPUB的時(shí)鐘周期比CPUA慢25%哪個(gè)CPU更快?第87頁(yè),共101頁(yè),2023年,2月20日,星期四例題7解答CPIA=0.2×2+0.8×1=1.2CPU時(shí)間A=INA×1.2×tACPUB沒(méi)有獨(dú)立的比較指令:INB=0.8×INACPUB條件分支指令所占比例:
20%÷80%=25%=0.25CPIB=0.25×2+0.75×1=1.25CPU時(shí)間B=INB×CPIB×tB
=0.8×INA×1.25×tB
=INA×tBtB=tA+0.25×tA=
1.25×tACPU時(shí)間B=INA×1.25×tA
>
CPU時(shí)間A第88頁(yè),共101頁(yè),2023年,2月20日,星期四5.11.2性能評(píng)價(jià)標(biāo)準(zhǔn)最初:執(zhí)行單項(xiàng)操作的時(shí)間,例如:加法操作時(shí)間改進(jìn)為:平均指令執(zhí)行時(shí)間=進(jìn)一步成為容易理解的:每秒百萬(wàn)條指令(MillionInstructionsPerSecond)同時(shí)出現(xiàn):
MFLOPS(每秒百萬(wàn)浮點(diǎn)操作)最終形成: 測(cè)試程序(Benchmarks)第89頁(yè),共101頁(yè),2023年,2月20日,星期四測(cè)試程序?qū)嶋H應(yīng)用程序修正的(或者腳本化)應(yīng)用程序核心測(cè)試程序LivermoreLoops和Linpack小型測(cè)試程序Quicksort,Puzzle和Sieve合成測(cè)試程序Whetstone和Dhrystone第90頁(yè),共101頁(yè),2023年,2月20日,星期四基準(zhǔn)測(cè)試程序組件SPEC(StandardPerformanceEvaluationCorporation)SPEC89→SPEC92→SPEC95→SPEC200011個(gè)整數(shù)基準(zhǔn)程序(CINT2000)14個(gè)浮點(diǎn)基準(zhǔn)程序(CFP2000)WinBench99andWinstone2004WinBench99:measurestheperformanceofaPC'sgraphics,disk,processor,andvideosubsystemsBusinessWinstone2004:application-basedbenchmarkthatmeasuresaPC'soverallperformance第91頁(yè),共101頁(yè),2023年,2月20日,星期四CPU時(shí)間與CPU性能衡量性能最可靠的標(biāo)準(zhǔn):真實(shí)程序的執(zhí)行時(shí)間真實(shí)程序的執(zhí)行時(shí)間 =CPU時(shí)間+I(xiàn)/O操作等時(shí)間CPU時(shí)間 =用戶CPU時(shí)間+系統(tǒng)CPU時(shí)間CPU性能對(duì)應(yīng)用戶CPU時(shí)間CPU時(shí)間還可細(xì)分為用戶CPU時(shí)間及系統(tǒng)CPU時(shí)間,前者表示用戶程序所花費(fèi)的CPU時(shí)間,后者表示用戶程序運(yùn)行期間操作系統(tǒng)花費(fèi)的CPU時(shí)間。第92頁(yè),共101頁(yè),2023年,2月20日,星期四〔例題8〕一臺(tái)40MHz處理器執(zhí)行標(biāo)準(zhǔn)測(cè)試程序求:CPI,MIPS和執(zhí)行時(shí)間T指令類(lèi)型指令條數(shù)時(shí)鐘周期數(shù)整數(shù)運(yùn)算數(shù)據(jù)傳送浮點(diǎn)運(yùn)算控制傳送45000320001500080001222第93頁(yè),共101頁(yè),2023年,2月20日,星期四例題8解答CPI=(45000×1+
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年五年級(jí)英語(yǔ)教師期末工作總結(jié)樣本(2篇)
- 印刷廠裝修延期合同
- 商業(yè)空間裝修工程勞動(dòng)合同
- 學(xué)校修繕項(xiàng)目用工協(xié)議
- 林業(yè)公司網(wǎng)點(diǎn)裝修合同
- 教育機(jī)構(gòu)裝修免租期協(xié)議
- 商場(chǎng)電梯間瓦工改造協(xié)議
- 地下餐廳裝修合同范本
- 服裝輔料危險(xiǎn)品運(yùn)輸協(xié)議
- 公司簽股合同范例
- 二零二五年度集團(tuán)公司內(nèi)部項(xiàng)目專(zhuān)項(xiàng)借款合同范本3篇
- 事業(yè)單位公開(kāi)招聘工作人員考試題(公共基礎(chǔ)知識(shí)試題和答案)
- 低空飛行旅游觀光項(xiàng)目可行性實(shí)施報(bào)告
- 2024年版:煤礦用壓力罐設(shè)計(jì)與安裝合同
- 甲狀腺的科普宣教
- 《算法定價(jià)壟斷屬性問(wèn)題研究的國(guó)內(nèi)外文獻(xiàn)綜述》4200字
- 2024年04月浙江義烏農(nóng)商銀行春季招考筆試歷年參考題庫(kù)附帶答案詳解
- 2024年浙江省五校聯(lián)盟高考地理聯(lián)考試卷(3月份)
- 在線心理健康咨詢(xún)行業(yè)現(xiàn)狀分析及未來(lái)三至五年行業(yè)發(fā)展報(bào)告
- 電動(dòng)三輪車(chē)購(gòu)銷(xiāo)合同
- 淋巴瘤的免疫靶向治療
評(píng)論
0/150
提交評(píng)論