版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、2021年10月16日星期六1Principles of Computer Organization教材:白中英. 計(jì)算機(jī)組成原理(第4版). 科學(xué)出版社第5章 中央處理機(jī)2021年10月16日星期六3目錄目錄5.1 CPU的功能和組成的功能和組成掌握掌握5.2 指令周期指令周期掌握掌握5.3 時(shí)序產(chǎn)生器和控制方式時(shí)序產(chǎn)生器和控制方式了解了解5.4 微程序控制器微程序控制器掌握掌握5.5 硬連線控制器硬連線控制器了解了解5.6 傳統(tǒng)傳統(tǒng)CPU了解了解5.7 流水流水CPU掌握掌握5.8 RISC CPU了解了解5.9 多媒體多媒體CPU了解了解2021年10月16日星期六4考研大綱要求考研大綱
2、要求(一)(一)CPU的功能和基本結(jié)構(gòu)的功能和基本結(jié)構(gòu)(二)指令執(zhí)行過程(二)指令執(zhí)行過程(三)數(shù)據(jù)通路的功能和基本結(jié)構(gòu)(三)數(shù)據(jù)通路的功能和基本結(jié)構(gòu)(四)控制器的功能和工作原理(四)控制器的功能和工作原理硬布線控制器硬布線控制器微程序控制器微程序控制器u微程序、微指令和微命令微程序、微指令和微命令u微指令的編碼方式;微地址的形成方式微指令的編碼方式;微地址的形成方式(五)(五) 指令流水線指令流水線指令流水線的基本概念指令流水線的基本概念1.超標(biāo)量和動(dòng)態(tài)流水線的基本概念超標(biāo)量和動(dòng)態(tài)流水線的基本概念2021年10月16日星期六55.1 CPU的組成和功能的組成和功能l 5.1.1 CPU的功能
3、的功能l 5.1.2 CPU的基本組成的基本組成l 5.1.3CPU中的主要寄存器中的主要寄存器l 5.1.4 操作控制器與時(shí)序產(chǎn)生器操作控制器與時(shí)序產(chǎn)生器2021年10月16日星期六65.1.1 CPU的功能的功能lCPU(中央處理器)(中央處理器) 控制程序按設(shè)定方式執(zhí)行;控制程序按設(shè)定方式執(zhí)行;lCPU的主要功能:的主要功能: 指令控制指令控制u控制程序的執(zhí)行順序;控制程序的執(zhí)行順序; 操作控制操作控制u產(chǎn)生和發(fā)送各操作信號(hào);產(chǎn)生和發(fā)送各操作信號(hào); 時(shí)間控制時(shí)間控制u控制指令、或操作的實(shí)施時(shí)間;控制指令、或操作的實(shí)施時(shí)間; 數(shù)據(jù)加工數(shù)據(jù)加工u對(duì)數(shù)據(jù)進(jìn)行算術(shù)邏輯運(yùn)算;對(duì)數(shù)據(jù)進(jìn)行算術(shù)邏輯運(yùn)算
4、;順序?qū)ぶ贰⑻S尋址順序?qū)ぶ?、跳躍尋址對(duì)指令操作碼譯碼后產(chǎn)生控制信號(hào)對(duì)指令操作碼譯碼后產(chǎn)生控制信號(hào)維持各類操作的時(shí)序關(guān)系維持各類操作的時(shí)序關(guān)系由由ALU完成具體的運(yùn)算完成具體的運(yùn)算2021年10月16日星期六75.1.2 CPU的基本組成的基本組成l現(xiàn)代的現(xiàn)代的CPU的組成的組成運(yùn)算器、控制器運(yùn)算器、控制器l控制器的主要功能控制器的主要功能從內(nèi)存中取出一條指令,并指出下條指令的存放位置;從內(nèi)存中取出一條指令,并指出下條指令的存放位置;對(duì)指令進(jìn)行譯碼,產(chǎn)生相應(yīng)的操作控制信號(hào);對(duì)指令進(jìn)行譯碼,產(chǎn)生相應(yīng)的操作控制信號(hào);控制控制CPU、內(nèi)存和輸入、內(nèi)存和輸入/輸出設(shè)備之間數(shù)據(jù)流動(dòng);輸出設(shè)備之間數(shù)據(jù)流動(dòng)
5、;l運(yùn)算器的主要功能:運(yùn)算器的主要功能: 執(zhí)行所有的算術(shù)運(yùn)算;執(zhí)行所有的算術(shù)運(yùn)算;執(zhí)行所有的邏輯運(yùn)算,并進(jìn)行邏輯測(cè)試。執(zhí)行所有的邏輯運(yùn)算,并進(jìn)行邏輯測(cè)試。馮馮諾依曼諾依曼機(jī)的定義機(jī)的定義、片內(nèi)、片內(nèi)Cache;PC、IRALU、通用寄存器組、通用寄存器組、標(biāo)志寄存器標(biāo)志寄存器CU、時(shí)序電路、時(shí)序電路、操作控制器操作控制器2021年10月16日星期六8CPU模型圖模型圖動(dòng)畫演示:動(dòng)畫演示:5-1.swf5-1.swf運(yùn)算器運(yùn)算器Cache控制器控制器2021年10月16日星期六95.1.3CPU中的主要寄存器(中的主要寄存器(1/3) l 數(shù)據(jù)緩沖寄存器(數(shù)據(jù)緩沖寄存器(DR) 暫時(shí)存放暫時(shí)存放
6、CPU與外界傳送的數(shù)據(jù),可以是指令字或數(shù)據(jù)字。與外界傳送的數(shù)據(jù),可以是指令字或數(shù)據(jù)字。 作用作用 :u作為作為CPU和內(nèi)存、外部設(shè)備之間信息傳送的中轉(zhuǎn)站;和內(nèi)存、外部設(shè)備之間信息傳送的中轉(zhuǎn)站;u補(bǔ)償補(bǔ)償CPU和內(nèi)存、外圍設(shè)備之間在操作速度上的差別;和內(nèi)存、外圍設(shè)備之間在操作速度上的差別;l 通用寄存器通用寄存器 功能:暫時(shí)存放功能:暫時(shí)存放ALU運(yùn)算的數(shù)據(jù)或結(jié)果。運(yùn)算的數(shù)據(jù)或結(jié)果。 CPU中的通用寄存器可多達(dá)中的通用寄存器可多達(dá)16個(gè),個(gè),32個(gè),甚至更多。個(gè),甚至更多。2021年10月16日星期六105.1.3CPU中的主要寄存器(中的主要寄存器(2/3) l狀態(tài)條件寄存器(狀態(tài)條件寄存器(
7、PSW) 保存各種狀態(tài)和條件控制信號(hào);保存各種狀態(tài)和條件控制信號(hào);u進(jìn)位標(biāo)志進(jìn)位標(biāo)志(C),溢出標(biāo)志,溢出標(biāo)志(V),零標(biāo)志,零標(biāo)志(Z),符號(hào)標(biāo)志,符號(hào)標(biāo)志(N) 每個(gè)信號(hào)由一個(gè)觸發(fā)器保存,從而拼成一個(gè)寄存器。每個(gè)信號(hào)由一個(gè)觸發(fā)器保存,從而拼成一個(gè)寄存器。l地址寄存器(地址寄存器(AR) 保存當(dāng)前保存當(dāng)前CPU所訪問數(shù)據(jù)的內(nèi)存單元地址;所訪問數(shù)據(jù)的內(nèi)存單元地址; 主要用于解決主存主要用于解決主存/外設(shè)和外設(shè)和CPU之間的速度差異,使地址信之間的速度差異,使地址信息可以保持到主存息可以保持到主存/外設(shè)的讀寫操作完成為止。外設(shè)的讀寫操作完成為止。2021年10月16日星期六115.1.3CPU中
8、的主要寄存器(中的主要寄存器(3/3) l程序計(jì)數(shù)器(程序計(jì)數(shù)器(PC)始終存放下一條指令的地址,對(duì)應(yīng)于指令始終存放下一條指令的地址,對(duì)應(yīng)于指令Cache的訪問;的訪問;其內(nèi)容變化分兩種情況其內(nèi)容變化分兩種情況u順序執(zhí)行:順序執(zhí)行: PC+1PCu轉(zhuǎn)移執(zhí)行轉(zhuǎn)移執(zhí)行: (指令指令OPR)PCl指令寄存器(指令寄存器(IR)保存當(dāng)前正在執(zhí)行的一條指令。保存當(dāng)前正在執(zhí)行的一條指令。指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。寄存功能寄存功能計(jì)數(shù)功能計(jì)數(shù)功能2021年10月16日星期六125.1.4 操作控制器與時(shí)序產(chǎn)生器操作控制器與時(shí)序產(chǎn)生器
9、l數(shù)據(jù)通路數(shù)據(jù)通路 寄存器之間傳送信息的通路。寄存器之間傳送信息的通路。l操作控制器操作控制器 根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生各種操作控制信號(hào);根據(jù)指令操作碼和時(shí)序信號(hào),產(chǎn)生各種操作控制信號(hào); 建立正確的數(shù)據(jù)通路,從而完成指令的執(zhí)行。建立正確的數(shù)據(jù)通路,從而完成指令的執(zhí)行。l根據(jù)設(shè)計(jì)方法不同,操作控制器可分為根據(jù)設(shè)計(jì)方法不同,操作控制器可分為 硬布線控制器硬布線控制器:采用時(shí)序邏輯技術(shù)實(shí)現(xiàn);:采用時(shí)序邏輯技術(shù)實(shí)現(xiàn); 微程序控制器微程序控制器:采用存儲(chǔ)邏輯實(shí)現(xiàn);:采用存儲(chǔ)邏輯實(shí)現(xiàn); 前兩種方式的結(jié)合前兩種方式的結(jié)合;l時(shí)序產(chǎn)生器時(shí)序產(chǎn)生器對(duì)各種操作實(shí)施時(shí)間的控制。對(duì)各種操作實(shí)施時(shí)間的控制。202
10、1年10月16日星期六13數(shù)據(jù)通路的建立數(shù)據(jù)通路的建立增量增量寫入寫入讀出讀出寫入寫入讀出讀出寫入寫入讀出讀出鎖存鎖存鎖存鎖存寫入寫入讀出讀出寫入寫入讀出讀出運(yùn)算運(yùn)算類型類型讀出讀出寫入寫入2021年10月16日星期六145.2 指令周期指令周期l5.2.1 指令周期的基本概念指令周期的基本概念l5.2.2 MOV R0 , R1指令指令的的指令指令周期周期l5.2.3 LAD R1 , 6指令的指令周期指令的指令周期l5.2.4ADD R1 , R2指令的指令周期指令的指令周期 l5.2.5STO R2 , (R3)指令的指令周期指令的指令周期 l5.2.6 JMP 101指令的指令周期指令
11、的指令周期l5.2.7 用方框圖語言表示指令周期用方框圖語言表示指令周期2021年10月16日星期六155.2.1 指令周期的基本概念指令周期的基本概念 lCPU執(zhí)行程序是一個(gè)執(zhí)行程序是一個(gè)“取指令取指令執(zhí)行指令執(zhí)行指令”的循環(huán)過程。的循環(huán)過程。l指令周期指令周期 CPU從內(nèi)存中從內(nèi)存中取出取出一條指令,并一條指令,并執(zhí)行執(zhí)行的時(shí)間總和;的時(shí)間總和;lCPU周期周期 又稱機(jī)器周期,一般為從內(nèi)存讀取一條指令字的最短時(shí)間;又稱機(jī)器周期,一般為從內(nèi)存讀取一條指令字的最短時(shí)間; 一個(gè)一個(gè)CPU周期可以完成周期可以完成CPU的一個(gè)基本操作。的一個(gè)基本操作。 l時(shí)鐘周期時(shí)鐘周期 也叫節(jié)拍脈沖或也叫節(jié)拍脈沖
12、或T周期,是計(jì)算機(jī)處理操作的基本時(shí)間單位。周期,是計(jì)算機(jī)處理操作的基本時(shí)間單位。動(dòng)畫演示:動(dòng)畫演示:5-2.swf5-2.swf2021年10月16日星期六16關(guān)于指令周期關(guān)于指令周期l一個(gè)完整的指令周期由一個(gè)完整的指令周期由若干機(jī)若干機(jī)器周期組成器周期組成:取指周期取指周期間址周期間址周期執(zhí)行周期執(zhí)行周期中斷周期中斷周期l所有指令的所有指令的第一個(gè)機(jī)器周期必第一個(gè)機(jī)器周期必為取指周期為取指周期;l一個(gè)基本的機(jī)器周期包含一個(gè)基本的機(jī)器周期包含4個(gè)時(shí)個(gè)時(shí)鐘周期鐘周期,對(duì)于某些機(jī)器周期可以,對(duì)于某些機(jī)器周期可以包含更多的時(shí)鐘周期。包含更多的時(shí)鐘周期。l不同指令的指令周期所包含的不同指令的指令周期所
13、包含的時(shí)鐘周期個(gè)數(shù)時(shí)鐘周期個(gè)數(shù)不一定相同不一定相同。求操作數(shù)求操作數(shù)有效地址有效地址本教材上,間址周本教材上,間址周期和執(zhí)行周期統(tǒng)稱期和執(zhí)行周期統(tǒng)稱為執(zhí)行周期!為執(zhí)行周期!2021年10月16日星期六17一個(gè)簡單的程序一個(gè)簡單的程序地址 指令說明100程序執(zhí)行前設(shè)置(R0)=00,(R1)=10;(R2)=20,(R3)=30101MOV R0 , R1傳送指令MOV執(zhí)行(R1)R0102LAD R1 , 6取數(shù)指令LAD從6號(hào)單元中取數(shù)100R1103ADD R1 , R2加法指令A(yù)DD執(zhí)行(R1)+(R2)R2,結(jié)果為(R2)=120104STO R2 , (R3)存數(shù)指令STO用(R3)
14、間接尋址,(R2)=120寫入30號(hào)單元105JMP 101轉(zhuǎn)移指令JMP改變程序執(zhí)行順序,轉(zhuǎn)到101號(hào)單元106AND R1 , R3邏輯與指令A(yù)ND執(zhí)行(R1) (R2) R3地址數(shù)據(jù)570610076610773040(120)2021年10月16日星期六185.2.2 MOV R0 , R1指令的指令周期指令的指令周期lMOV是一條是一條RR型指令,它需型指令,它需要兩個(gè)要兩個(gè)CPU 周期:周期:取指周期取指周期u從存儲(chǔ)器中取出指令;從存儲(chǔ)器中取出指令;u程序計(jì)數(shù)器程序計(jì)數(shù)器PC加加1;u譯碼或測(cè)試指令操作碼,譯碼或測(cè)試指令操作碼,發(fā)出控制信號(hào);發(fā)出控制信號(hào);執(zhí)行周期執(zhí)行周期在控制信號(hào)
15、的作用下,在控制信號(hào)的作用下,將將R1中的數(shù)據(jù)經(jīng)過中的數(shù)據(jù)經(jīng)過ALU送入送入R0;2021年10月16日星期六19MOV R0 , R1指令的執(zhí)行過程演示指令的執(zhí)行過程演示101101MOV R0 , R1MOV R0 , R1102102MOVMOV1010動(dòng)畫動(dòng)畫演示演示2021年10月16日星期六20MOV R0 , R1指令周期中的控制信號(hào)指令周期中的控制信號(hào)l取指周期取指周期 PCABUS指令指令Cache ,譯碼并啟動(dòng);,譯碼并啟動(dòng); 指令指令Cache IR; PC PC+1,為取下條指令做好準(zhǔn)備;,為取下條指令做好準(zhǔn)備; IR中的操作碼被譯碼或測(cè)試,中的操作碼被譯碼或測(cè)試,CP
16、U識(shí)別出是指令識(shí)別出是指令MOV。l執(zhí)行指令階段執(zhí)行指令階段 R1ALU,R1中數(shù)據(jù)通過中數(shù)據(jù)通過ALU傳送;傳送; ALU DBUS DRR0;PCPC讀讀指令指令CacheCache啟動(dòng)啟動(dòng)指令指令CacheCache讀讀IRIR寫寫PCPC增量增量R1R1讀讀ALUALU傳送控制傳送控制ALUALU輸出輸出DRDR鎖存鎖存R0R0寫寫2021年10月16日星期六215.2.3 LAD R1 , 6指令的指令周期指令的指令周期lLAD指令是指令是RS型指令,型指令,需要訪存獲取操作數(shù),共需要訪存獲取操作數(shù),共包含三個(gè)包含三個(gè)CPU周期:周期:取指周期取指周期間址周期間址周期u從從IR的地址
17、碼字段獲的地址碼字段獲取操作數(shù)地址;(或取操作數(shù)地址;(或者通過計(jì)算獲得者通過計(jì)算獲得EA)執(zhí)行周期執(zhí)行周期訪存獲取操作數(shù)送入訪存獲取操作數(shù)送入通用寄存器通用寄存器R1;2021年10月16日星期六22LAD R1 , 6指令的執(zhí)行過程演示指令的執(zhí)行過程演示102102LAD R1,6LAD R1,6103103LADLAD6 6100100動(dòng)畫動(dòng)畫演示演示2021年10月16日星期六23LAD R1 , 6指令周期中的控制信號(hào)指令周期中的控制信號(hào)lLAD取指周期取指周期CPU動(dòng)作與動(dòng)作與MOV指令的取指周期中一樣。指令的取指周期中一樣。lLAD指令的執(zhí)行周期指令的執(zhí)行周期IR DBUS AR
18、;u該過程為尋址周期;該過程為尋址周期; ARABUS數(shù)據(jù)數(shù)據(jù)Cache ,譯碼并啟動(dòng);,譯碼并啟動(dòng);數(shù)據(jù)數(shù)據(jù)Cache DBUS DRR1;IRIR讀讀ARAR鎖存鎖存數(shù)據(jù)數(shù)據(jù)CacheCache啟動(dòng)啟動(dòng)數(shù)據(jù)數(shù)據(jù)CacheCache讀讀DRDR鎖存鎖存R1R1寫寫2021年10月16日星期六245.2.4ADD R1 , R2指令的指令周期指令的指令周期 lADD指令的指令周期由兩個(gè)指令的指令周期由兩個(gè)CPU周期組成周期組成 。取指周期(略)取指周期(略)執(zhí)行周期執(zhí)行周期u從寄存器從寄存器R1、R2中取出數(shù)據(jù),作為源操作數(shù);中取出數(shù)據(jù),作為源操作數(shù);u將兩數(shù)據(jù)送往將兩數(shù)據(jù)送往ALU,并使,并
19、使ALU進(jìn)行加運(yùn)算;進(jìn)行加運(yùn)算;結(jié)果保存到結(jié)果保存到R1中。中。2021年10月16日星期六25ADD R1 , R2指令的執(zhí)行過程演示指令的執(zhí)行過程演示103103ADD R1,R2ADD R1,R2104104ADDADD1001002020120120動(dòng)畫動(dòng)畫演示演示2021年10月16日星期六26ADD R1 , R2指令周期中的控制信號(hào)指令周期中的控制信號(hào)l取指周期(略)取指周期(略)CPU動(dòng)作與動(dòng)作與MOV指令的取指令周期中一樣。指令的取指令周期中一樣。l執(zhí)行周期執(zhí)行周期R1、R2ALU;ALU做加運(yùn)算,將兩數(shù)相加;做加運(yùn)算,將兩數(shù)相加;ALUDBUSDRR1,保存結(jié)果;,保存結(jié)果
20、;R1R1讀讀R2R2讀讀ALUALU加加ALUALU輸出輸出DRDR鎖存鎖存R1R1寫寫2021年10月16日星期六275.2.5STO R2 , (R3)指令的指令周期指令的指令周期 lSTO指令是指令是RS型指令,需要型指令,需要3個(gè)個(gè)CPU周期。周期。取指周期(略)取指周期(略)間址周期間址周期u根據(jù)根據(jù)R3中的地址尋址所要訪問的存儲(chǔ)單元;中的地址尋址所要訪問的存儲(chǔ)單元;執(zhí)行周期執(zhí)行周期將寄存器將寄存器R2中的數(shù)據(jù)送入指定的存儲(chǔ)單元;中的數(shù)據(jù)送入指定的存儲(chǔ)單元;2021年10月16日星期六28STO R2 , (R3)指令的執(zhí)行過程演示指令的執(zhí)行過程演示104104STO R2,(ST
21、O R2,(R3) )105105STOSTO動(dòng)畫動(dòng)畫演示演示 30 120 2021年10月16日星期六29STO R2 , (R3)指令周期中的控制信號(hào)指令周期中的控制信號(hào)l 取指周期(略)取指周期(略)l 執(zhí)行周期執(zhí)行周期 R3DBUSAR,發(fā)出地址啟動(dòng)數(shù)據(jù),發(fā)出地址啟動(dòng)數(shù)據(jù)Cache;u該過程為間址周期;該過程為間址周期; R2DBUS數(shù)據(jù)數(shù)據(jù)Cache;R3R3讀讀ARAR鎖存鎖存R2R2讀讀數(shù)據(jù)數(shù)據(jù)CacheCache寫寫2021年10月16日星期六305.2.6 JMP 101指令的指令周期指令的指令周期lJMP指令是一條無條件轉(zhuǎn)移指令,用來改變程序的指令是一條無條件轉(zhuǎn)移指令,用
22、來改變程序的執(zhí)行順序;執(zhí)行順序;lJMP指令的執(zhí)行需要兩個(gè)指令的執(zhí)行需要兩個(gè)CPU周期:周期:取指周期(略)取指周期(略)執(zhí)行周期執(zhí)行周期u使用使用JMP指令中的直接地址為指令中的直接地址為PC賦值;賦值;2021年10月16日星期六31JMP 101指令的執(zhí)行過程演示指令的執(zhí)行過程演示105105JMP 101JMP 101106106JMPJMP動(dòng)畫動(dòng)畫演示演示1011012021年10月16日星期六32JMP 101指令指令周期中的控制信號(hào)周期中的控制信號(hào)l 取指周期(略)取指周期(略)l 執(zhí)行周期執(zhí)行周期 IRDBUSPC;IRIR讀讀PCPC寫寫2021年10月16日星期六335.2
23、.7用方框圖語言表示指令周期用方框圖語言表示指令周期l方框方框代表一個(gè)代表一個(gè)CPU周期;周期;方框中的內(nèi)容表示數(shù)據(jù)通路的操作或某種控制操作。方框中的內(nèi)容表示數(shù)據(jù)通路的操作或某種控制操作。 l菱形菱形通常用來表示某種判別或測(cè)試;通常用來表示某種判別或測(cè)試;時(shí)間上依附于之前一個(gè)方框的時(shí)間上依附于之前一個(gè)方框的CPU周期,而不單獨(dú)占用一周期,而不單獨(dú)占用一個(gè)個(gè)CPU周期;周期;l(公操作符號(hào))(公操作符號(hào))表示一條指令已經(jīng)執(zhí)行完畢,轉(zhuǎn)入公操作。表示一條指令已經(jīng)執(zhí)行完畢,轉(zhuǎn)入公操作。所謂公操作所謂公操作就是一條指令執(zhí)行完畢后,就是一條指令執(zhí)行完畢后,CPU所開始的一些所開始的一些操作,比如對(duì)外圍設(shè)備
24、請(qǐng)求的處理等。操作,比如對(duì)外圍設(shè)備請(qǐng)求的處理等。動(dòng)畫演示動(dòng)畫演示 5.14.swf2021年10月16日星期六34P139 圖圖5.14方框圖語言表示的指令周期方框圖語言表示的指令周期 MOV R0 , R1 LAD R1 , 6 ADD R1 , R2 STO R2 , (R3) JMP 101 2021年10月16日星期六35課本課本P139 【例例1】l圖圖5.15所示為雙總線結(jié)構(gòu)機(jī)器的數(shù)據(jù)通路,各構(gòu)成部件如圖,所示為雙總線結(jié)構(gòu)機(jī)器的數(shù)據(jù)通路,各構(gòu)成部件如圖,線上標(biāo)注有小圈表示有控制信號(hào),未標(biāo)字符的線為直通線。線上標(biāo)注有小圈表示有控制信號(hào),未標(biāo)字符的線為直通線。 “ADD R2,R0”指
25、令完成指令完成(R0)+(R2)R0的功能操作,畫的功能操作,畫出其指令周期流程圖,并列出相應(yīng)的微操作控制信號(hào)序列。出其指令周期流程圖,并列出相應(yīng)的微操作控制信號(hào)序列。 “SUB R1,R3”指令完成指令完成(R3)-(R1)R3的操作,畫出其的操作,畫出其指令期流程圖,并列出相應(yīng)的微操作控制信號(hào)序列。指令期流程圖,并列出相應(yīng)的微操作控制信號(hào)序列。2021年10月16日星期六36l 指令周期應(yīng)包括指令周期應(yīng)包括取指取指周期周期和和執(zhí)行周期執(zhí)行周期;l 執(zhí)行周期中應(yīng)首先將執(zhí)行周期中應(yīng)首先將R0、R2兩寄存器的兩寄存器的內(nèi)容送入內(nèi)容送入ALU的操作的操作數(shù)緩沖器中,再執(zhí)行數(shù)緩沖器中,再執(zhí)行加法運(yùn)算
26、;加法運(yùn)算;(1) “ADD R2,R0” (R0)+(R2)R0(PC)AR(M)DR(DR)IR譯碼譯碼(R2)Y(R0)X(R0)+(R2)R0取指周期取指周期執(zhí)行周期執(zhí)行周期PC0GARiR/W=1DR0GIRiR20GYiR00GXi+GR0i2021年10月16日星期六37指令指令A(yù)DD R2,R0的執(zhí)行過程的執(zhí)行過程指令指令地址地址指令指令R2R0和和2021年10月16日星期六38l指令周期應(yīng)包括指令周期應(yīng)包括取指周取指周期期和和執(zhí)行周期執(zhí)行周期;l取指周期與取指周期與ADD指令指令完全相同;完全相同;l執(zhí)行周期與執(zhí)行周期與ADD指令指令不同之處在于不同之處在于ALU的的控制信
27、號(hào)為控制信號(hào)為“”(2) “SUB R1,R3” (R3) (R1)R3(PC)AR(M)DR(DR)IR譯碼譯碼(R3)Y(R1)X(R3)-(R1)R3取指周期取指周期執(zhí)行周期執(zhí)行周期PC0GARiR/W=1DR0GIRiR30GYiR10GXiGR3i2021年10月16日星期六39參考上例試寫出下列指令的微操作序列參考上例試寫出下列指令的微操作序列l(wèi)指令指令STO R1,(R2)功能:功能:R1(R2),將,將R1的數(shù)據(jù)送入的數(shù)據(jù)送入R2指向的單元中;指向的單元中;l指令指令LAD (R3),R0功能:將功能:將R3指向單元中的數(shù)據(jù)送入指向單元中的數(shù)據(jù)送入R0中;中;l指令指令A(yù)DD
28、R0,(R1)功能:將功能:將R1指向單元中的數(shù)據(jù)和指向單元中的數(shù)據(jù)和R0的內(nèi)容相加,并將結(jié)果存的內(nèi)容相加,并將結(jié)果存入入R0寄存器中。寄存器中。l指令指令A(yù)DD (R1),R0功能:功能:(R0)+(R1)(R1),將,將R0中的數(shù)據(jù)與中的數(shù)據(jù)與R1指向單元中指向單元中的數(shù)據(jù)相加,并將結(jié)果送入的數(shù)據(jù)相加,并將結(jié)果送入R1指向的單元中;指向的單元中;2021年10月16日星期六40計(jì)算機(jī)的性能指標(biāo)計(jì)算機(jī)的性能指標(biāo)l主頻主頻/時(shí)鐘周期時(shí)鐘周期主時(shí)鐘的頻率主時(shí)鐘的頻率(f)叫叫CPU的主頻的主頻;主頻的倒數(shù)稱為主頻的倒數(shù)稱為CPU時(shí)鐘周期(時(shí)鐘周期(T),),T=1/f。lCPI執(zhí)行一條指令所需的
29、平均時(shí)鐘周期數(shù)。執(zhí)行一條指令所需的平均時(shí)鐘周期數(shù)。lMIPS每秒百萬指令數(shù),即單位時(shí)間內(nèi)執(zhí)行的指令數(shù)。每秒百萬指令數(shù),即單位時(shí)間內(nèi)執(zhí)行的指令數(shù)。2021年10月16日星期六41【例例1】某某CPU的主頻為的主頻為8MHz,設(shè)每個(gè),設(shè)每個(gè)CPU周期平周期平均包括均包括4個(gè)時(shí)鐘周期,且該機(jī)平均指令執(zhí)行速個(gè)時(shí)鐘周期,且該機(jī)平均指令執(zhí)行速度為度為1MIPS。l 求該機(jī)平均指令周期。求該機(jī)平均指令周期。 平均指令周期平均指令周期l 求每個(gè)指令周期包含的平均求每個(gè)指令周期包含的平均CPU周期。周期。 時(shí)鐘周期時(shí)鐘周期 一個(gè)一個(gè)CPU周期為周期為4個(gè)時(shí)鐘周期,則個(gè)時(shí)鐘周期,則40.125=0.5us; 故每
30、個(gè)指令周期包含故每個(gè)指令周期包含1/0.5=2個(gè)平均個(gè)平均CPU周期。周期。1 1秒秒1 1百萬條指令百萬條指令1 110106 61us1 1 8MHz0.125us2021年10月16日星期六42【例例2】 若某機(jī)主頻為若某機(jī)主頻為200MHz,每個(gè)指令周期,每個(gè)指令周期平均為平均為2.5個(gè)個(gè)CPU周期,每個(gè)周期,每個(gè)CPU周期周期平均包括平均包括2個(gè)時(shí)鐘周期。個(gè)時(shí)鐘周期。l 該機(jī)平均指令執(zhí)行速度為多少該機(jī)平均指令執(zhí)行速度為多少M(fèi)IPS?執(zhí)行一條指令的時(shí)間執(zhí)行一條指令的時(shí)間 2.5 2時(shí)鐘周期時(shí)鐘周期 2.5 2平均指令執(zhí)行速度平均指令執(zhí)行速度1/平均指令周期平均指令周期l 若主頻不變,但
31、每條指令平均包括若主頻不變,但每條指令平均包括5個(gè)個(gè)CPU周期,每個(gè)周期,每個(gè)CPU周周期又包含期又包含4個(gè)時(shí)鐘周期,平均指令執(zhí)行速度為多少個(gè)時(shí)鐘周期,平均指令執(zhí)行速度為多少M(fèi)IPS?執(zhí)行一條指令的時(shí)間執(zhí)行一條指令的時(shí)間 2.5 2時(shí)鐘周期時(shí)鐘周期 5 4平均指令執(zhí)行速度平均指令執(zhí)行速度1/平均指令周期平均指令周期 1 1 200MHz40MIPS 1 1 200MHz10MIPS 1 1 40M 1 1 10M2021年10月16日星期六435.3 時(shí)序產(chǎn)生器和控制方式時(shí)序產(chǎn)生器和控制方式 l5.3.1 時(shí)序信號(hào)的作用和體制時(shí)序信號(hào)的作用和體制l5.3.2 時(shí)序信號(hào)產(chǎn)生器時(shí)序信號(hào)產(chǎn)生器l5.
32、3.3 控制方式控制方式2021年10月16日星期六445.3.1 時(shí)序信號(hào)的作用和體制時(shí)序信號(hào)的作用和體制l時(shí)序信號(hào)的作用時(shí)序信號(hào)的作用使計(jì)算機(jī)準(zhǔn)確、迅速、有條不紊地工作;使計(jì)算機(jī)準(zhǔn)確、迅速、有條不紊地工作;lCPU通過時(shí)序控制來識(shí)別指令和數(shù)據(jù):通過時(shí)序控制來識(shí)別指令和數(shù)據(jù):指令周期的第一個(gè)指令周期的第一個(gè)CPU周期周期取指周期取指周期;u從存儲(chǔ)單元中取出的一定是指令,需要送往從存儲(chǔ)單元中取出的一定是指令,需要送往IR指令寄存器;指令寄存器;指令周期的其他指令周期的其他CPU周期周期執(zhí)行周期執(zhí)行周期;u從存儲(chǔ)單元中取出的一定是數(shù)據(jù),需要送往運(yùn)算器。從存儲(chǔ)單元中取出的一定是數(shù)據(jù),需要送往運(yùn)算器
33、。l時(shí)序信號(hào)的體制:時(shí)序信號(hào)的體制:電位電位脈沖制脈沖制脈沖到達(dá)之前,電平信號(hào)必須要穩(wěn)定;脈沖到達(dá)之前,電平信號(hào)必須要穩(wěn)定;CPUCPU的時(shí)間表的時(shí)間表2021年10月16日星期六45控制器的時(shí)序信號(hào)控制器的時(shí)序信號(hào)l硬布線控制器的時(shí)序信號(hào)硬布線控制器的時(shí)序信號(hào)常采用常采用主狀態(tài)周期節(jié)拍電位節(jié)拍脈沖主狀態(tài)周期節(jié)拍電位節(jié)拍脈沖三級(jí)體制。三級(jí)體制。l微程序控制器的時(shí)序信號(hào)微程序控制器的時(shí)序信號(hào)一般采用一般采用節(jié)拍電位節(jié)拍脈沖節(jié)拍電位節(jié)拍脈沖二級(jí)體制。二級(jí)體制。節(jié)拍節(jié)拍脈沖脈沖節(jié)拍節(jié)拍電位電位1主狀態(tài)主狀態(tài)周期周期節(jié)拍節(jié)拍電位電位2節(jié)拍電位節(jié)拍電位可表示一可表示一個(gè)個(gè)CPUCPU周期周期主狀態(tài)周期可
34、主狀態(tài)周期可包含若干個(gè)節(jié)包含若干個(gè)節(jié)拍電位,是最拍電位,是最大的時(shí)間單位大的時(shí)間單位時(shí)鐘周期時(shí)鐘周期2021年10月16日星期六465.3.2 時(shí)序信號(hào)產(chǎn)生器時(shí)序信號(hào)產(chǎn)生器l時(shí)序信號(hào)產(chǎn)生器:用邏輯電路實(shí)現(xiàn)時(shí)序的控制;時(shí)序信號(hào)產(chǎn)生器:用邏輯電路實(shí)現(xiàn)時(shí)序的控制;l微程序控制器中時(shí)序信號(hào)產(chǎn)生器的組成:微程序控制器中時(shí)序信號(hào)產(chǎn)生器的組成: P142圖圖5.17時(shí)鐘源時(shí)鐘源提供穩(wěn)定的基本方波時(shí)鐘信號(hào);提供穩(wěn)定的基本方波時(shí)鐘信號(hào);環(huán)形脈沖發(fā)生器環(huán)形脈沖發(fā)生器產(chǎn)生一組有序的間隔相等或不等的脈沖序列;產(chǎn)生一組有序的間隔相等或不等的脈沖序列;節(jié)拍脈沖和讀寫時(shí)序譯碼邏輯節(jié)拍脈沖和讀寫時(shí)序譯碼邏輯 環(huán)形脈沖與節(jié)拍脈
35、沖共同作用產(chǎn)生各控制信號(hào)的時(shí)序;環(huán)形脈沖與節(jié)拍脈沖共同作用產(chǎn)生各控制信號(hào)的時(shí)序;啟??刂七壿媶⑼?刂七壿?2021年10月16日星期六475.3.3控制方式控制方式 l控制器的控制方式控制器的控制方式控制不同操作序列的時(shí)序信號(hào)的方法。控制不同操作序列的時(shí)序信號(hào)的方法。 l同步控制方式同步控制方式在任何情況下,已定的指令在執(zhí)行時(shí)所需的機(jī)器周期數(shù)和時(shí)在任何情況下,已定的指令在執(zhí)行時(shí)所需的機(jī)器周期數(shù)和時(shí)鐘周期數(shù)都固定不變。鐘周期數(shù)都固定不變。 l異步控制方式異步控制方式每條指令、每個(gè)操作控制信號(hào)需要多少時(shí)間就占用多少時(shí)間。每條指令、每個(gè)操作控制信號(hào)需要多少時(shí)間就占用多少時(shí)間。 l聯(lián)合控制方式聯(lián)合控制
36、方式大部分操作序列為固定的機(jī)器周期,對(duì)某些時(shí)間難以確定的大部分操作序列為固定的機(jī)器周期,對(duì)某些時(shí)間難以確定的操作則以執(zhí)行部件的操作則以執(zhí)行部件的“回答回答”信號(hào)作為本次操作的結(jié)束。信號(hào)作為本次操作的結(jié)束。機(jī)器周期的節(jié)拍脈沖數(shù)固定,但是各條指令周期的機(jī)器周期機(jī)器周期的節(jié)拍脈沖數(shù)固定,但是各條指令周期的機(jī)器周期數(shù)不固定。數(shù)不固定。2021年10月16日星期六485.4 微程序控制器微程序控制器 l5.4.1 微程序控制原理微程序控制原理l5.4.2 微程序設(shè)計(jì)技術(shù)微程序設(shè)計(jì)技術(shù)2021年10月16日星期六495.4.1 微程序控制原理微程序控制原理l微程序設(shè)計(jì)技術(shù)是微程序設(shè)計(jì)技術(shù)是利用軟件方法來設(shè)
37、計(jì)硬件利用軟件方法來設(shè)計(jì)硬件的一門技術(shù)。的一門技術(shù)。具有具有規(guī)整性、靈活性、可維護(hù)性規(guī)整性、靈活性、可維護(hù)性等一系列優(yōu)點(diǎn);等一系列優(yōu)點(diǎn);逐漸取代了早期的組合邏輯控制器,已被廣泛地應(yīng)用。逐漸取代了早期的組合邏輯控制器,已被廣泛地應(yīng)用。l基本思想基本思想仿照通常的解題程序的方法,仿照通常的解題程序的方法,把操作控制信號(hào)編成所謂的把操作控制信號(hào)編成所謂的“微指令微指令”,存放到一個(gè)只讀存儲(chǔ)器里;,存放到一個(gè)只讀存儲(chǔ)器里;當(dāng)機(jī)器運(yùn)行時(shí),一條一條地讀出這些微指令,從而產(chǎn)生全當(dāng)機(jī)器運(yùn)行時(shí),一條一條地讀出這些微指令,從而產(chǎn)生全機(jī)所需要的各種操作控制信號(hào),使部件執(zhí)行規(guī)定的操作。機(jī)所需要的各種操作控制信號(hào),使部
38、件執(zhí)行規(guī)定的操作。2021年10月16日星期六501、微命令和微操作、微命令和微操作l控制部件與執(zhí)行部件之間的聯(lián)系控制部件與執(zhí)行部件之間的聯(lián)系控制部件向執(zhí)行部件發(fā)出控制信號(hào);控制部件向執(zhí)行部件發(fā)出控制信號(hào);執(zhí)行部件向控制部件返回狀態(tài)信息;執(zhí)行部件向控制部件返回狀態(tài)信息; l微命令微命令控制部件通過控制線向執(zhí)行部件發(fā)出的各種控制命令;控制部件通過控制線向執(zhí)行部件發(fā)出的各種控制命令;l微操作微操作執(zhí)行部件接受微命令后所執(zhí)行的操作;執(zhí)行部件接受微命令后所執(zhí)行的操作;l狀態(tài)測(cè)試狀態(tài)測(cè)試執(zhí)行部件通過反饋線向控制部件反映當(dāng)前操作狀態(tài),以使執(zhí)行部件通過反饋線向控制部件反映當(dāng)前操作狀態(tài),以使控制部件決定下一步
39、的微命令;控制部件決定下一步的微命令;控制線控制線執(zhí)行部件的最基本的操作執(zhí)行部件的最基本的操作2021年10月16日星期六51微操作的分類微操作的分類l相容性微操作相容性微操作在同時(shí)或同一個(gè)在同時(shí)或同一個(gè)CPU周期內(nèi)可以并行執(zhí)行的微周期內(nèi)可以并行執(zhí)行的微操作;操作;l相斥性微操作相斥性微操作不能在同時(shí)或不能在同一個(gè)不能在同時(shí)或不能在同一個(gè)CPU周期內(nèi)并行執(zhí)周期內(nèi)并行執(zhí)行的微操作。行的微操作。2021年10月16日星期六52簡單運(yùn)算器數(shù)據(jù)通路簡單運(yùn)算器數(shù)據(jù)通路相斥性相斥性微操作微操作相斥性相斥性微操作微操作相斥性相斥性微操作微操作相容性相容性微操作微操作動(dòng)畫演示:動(dòng)畫演示:5-20.swf5-2
40、0.swf2021年10月16日星期六532、微指令和微程序、微指令和微程序l微指令微指令一個(gè)一個(gè)CPU周期中,實(shí)現(xiàn)一定操作功能的一組微命令的組合。周期中,實(shí)現(xiàn)一定操作功能的一組微命令的組合。微指令一般包含微指令一般包含操作控制操作控制和和順序控制順序控制兩大部分兩大部分u操作控制:用于發(fā)出管理和指揮全機(jī)工作的控制信號(hào);操作控制:用于發(fā)出管理和指揮全機(jī)工作的控制信號(hào);u順序控制:用于決定產(chǎn)生下一條微指令的地址;順序控制:用于決定產(chǎn)生下一條微指令的地址;所有的微指令都存放于控制存儲(chǔ)器中,使用所有的微指令都存放于控制存儲(chǔ)器中,使用地址地址訪問;訪問;l微程序微程序能實(shí)現(xiàn)一條機(jī)器指令功能的多條微指令
41、序列;能實(shí)現(xiàn)一條機(jī)器指令功能的多條微指令序列;每條機(jī)器指令都對(duì)應(yīng)著一段微程序;每條機(jī)器指令都對(duì)應(yīng)著一段微程序;微地址微地址2021年10月16日星期六54l順序控制部分的順序控制部分的P1、P2為判別測(cè)試標(biāo)志;為判別測(cè)試標(biāo)志;若為若為00,則順序?qū)ぶ肺⒅噶?;,則順序?qū)ぶ肺⒅噶睿蝗魹槿魹?1、10,則跳躍尋址微指令。,則跳躍尋址微指令。l直接地址直接地址2023位位順序?qū)ぶ窌r(shí),直接地址即為下一條微指令地址;順序?qū)ぶ窌r(shí),直接地址即為下一條微指令地址;跳躍尋址時(shí),則要對(duì)直接地址修改,得到下條微指令地址;跳躍尋址時(shí),則要對(duì)直接地址修改,得到下條微指令地址;微指令基本格式微指令基本格式節(jié)拍脈節(jié)拍脈沖信號(hào)
42、沖信號(hào)節(jié)拍電節(jié)拍電位信號(hào)位信號(hào)2021年10月16日星期六553、微程序控制器原理框圖、微程序控制器原理框圖l微程序控制器主要構(gòu)成部件:微程序控制器主要構(gòu)成部件: P147圖圖5.23控制存儲(chǔ)器(控制存儲(chǔ)器(CM)u存放實(shí)現(xiàn)全部指令系統(tǒng)的微指令;存放實(shí)現(xiàn)全部指令系統(tǒng)的微指令;u由只讀存儲(chǔ)器構(gòu)成,要求速度快,讀出周期短。由只讀存儲(chǔ)器構(gòu)成,要求速度快,讀出周期短。微指令寄存器微指令寄存器 存放由控制存儲(chǔ)器讀出的一條微指令信息;存放由控制存儲(chǔ)器讀出的一條微指令信息;u微地址寄存器:微地址寄存器:決定將要訪問的下一條微指令的地址;決定將要訪問的下一條微指令的地址;u微命令寄存器微命令寄存器:保存一條微
43、指令的操作控制字段和判別測(cè)試字:保存一條微指令的操作控制字段和判別測(cè)試字段的信息。段的信息。地址轉(zhuǎn)移邏輯地址轉(zhuǎn)移邏輯u用于跳躍尋址微指令時(shí),承擔(dān)自動(dòng)完成修改微地址的任務(wù)。用于跳躍尋址微指令時(shí),承擔(dān)自動(dòng)完成修改微地址的任務(wù)。2021年10月16日星期六56P147圖圖5.23 微程序控制器原理框圖微程序控制器原理框圖動(dòng)畫演示:動(dòng)畫演示:5-23.swf5-23.swf2021年10月16日星期六57微程序控制器的工作過程微程序控制器的工作過程l“取指微指令取指微指令”為所有指令的公用微指令;為所有指令的公用微指令;通常放在控制存儲(chǔ)器中的通常放在控制存儲(chǔ)器中的“0”地址單元地址單元;所有機(jī)器指令的
44、所有機(jī)器指令的最后一條微指令的直接地址最后一條微指令的直接地址都指向都指向0地址單地址單元,用以取下一條微指令。元,用以取下一條微指令。l取得機(jī)器指令后,取得機(jī)器指令后,經(jīng)過經(jīng)過P1測(cè)試測(cè)試,即操作碼測(cè)試,產(chǎn)生對(duì)應(yīng)的微,即操作碼測(cè)試,產(chǎn)生對(duì)應(yīng)的微程序入口地址,并送入微地址寄存器。程序入口地址,并送入微地址寄存器。l指令執(zhí)行過程中,指令執(zhí)行過程中,通過通過P2測(cè)試測(cè)試,修正下一條微指令的地址,逐,修正下一條微指令的地址,逐條讀取微指令執(zhí)行。條讀取微指令執(zhí)行。l執(zhí)行完對(duì)應(yīng)于一條機(jī)器指令的微程序后,返回到取指微指令,執(zhí)行完對(duì)應(yīng)于一條機(jī)器指令的微程序后,返回到取指微指令,不斷重復(fù),直至程序執(zhí)行完畢。不
45、斷重復(fù),直至程序執(zhí)行完畢。2021年10月16日星期六584、微程序舉例、微程序舉例l “十進(jìn)制加法十進(jìn)制加法”指令是用指令是用BCD碼來完成十進(jìn)制數(shù)的加法運(yùn)算。碼來完成十進(jìn)制數(shù)的加法運(yùn)算。當(dāng)兩數(shù)位相加小于等于當(dāng)兩數(shù)位相加小于等于9時(shí),結(jié)果正確;時(shí),結(jié)果正確;當(dāng)兩數(shù)位相加大于當(dāng)兩數(shù)位相加大于9時(shí),必須對(duì)和數(shù)位進(jìn)行加時(shí),必須對(duì)和數(shù)位進(jìn)行加6的修正。的修正。l例如:例如:3+4 = 0011 + 0100 = 0111= 78+7 = 1000 + 0111 = 111125+36 = 0010 0101 + 0011 0110 =0101 1011+ 0110 = 0001 0101= 15 =
46、 0110 0001以以“十進(jìn)制加法十進(jìn)制加法”指令為指令為例例+ 01102021年10月16日星期六59(R2) - (R3) R2十進(jìn)制加法指令的微指令執(zhí)行流程十進(jìn)制加法指令的微指令執(zhí)行流程l假定假定(R1)=a,(R2)=b,(R3)=6;l第一條微指令第一條微指令取指微指令取指微指令從內(nèi)存中取出該指令,并修改從內(nèi)存中取出該指令,并修改PC的值;的值;對(duì)操作碼進(jìn)行對(duì)操作碼進(jìn)行P1測(cè)試,確定下一條微指測(cè)試,確定下一條微指令的地址;令的地址;l第二條微指令第二條微指令兩數(shù)相加微指令兩數(shù)相加微指令l第三條微指令第三條微指令和數(shù)修正微指令和數(shù)修正微指令P2測(cè)試,根據(jù)進(jìn)位標(biāo)志決定下一條微指測(cè)試,
47、根據(jù)進(jìn)位標(biāo)志決定下一條微指令的地址令的地址l第四條微指令第四條微指令和數(shù)逆修正微指令和數(shù)逆修正微指令取指令取指令P1測(cè)試測(cè)試(R1)+(R2) R2(R2)+(R3) R2P2測(cè)試測(cè)試Cy=1Cy=02021年10月16日星期六60十進(jìn)制加法指令的微指令十進(jìn)制加法指令的微指令l第一條微指令(取微指令)第一條微指令(取微指令)000 00 00 00 000 11111 10 0000l第二條微指令(兩數(shù)相加)第二條微指令(兩數(shù)相加)010 10 01 00 100 00000 00 1001l第三條微指令(和數(shù)加第三條微指令(和數(shù)加6)010 00 10 01 100 00000 01 000
48、0l第四條微指令(和數(shù)減第四條微指令(和數(shù)減6)010 00 10 01 001 00000 00 0000取微指令和數(shù)減6和數(shù)加6兩數(shù)相加0000000110011010控制存儲(chǔ)器控制存儲(chǔ)器LDARRDLDDRLDIRPC+1R1XR2Y+LDR2R2XR3Y+LDR2R2XR3YLDR2動(dòng)畫演示:動(dòng)畫演示: 十進(jìn)制加法指十進(jìn)制加法指令微程序令微程序.swf.swf進(jìn)行進(jìn)行P1測(cè)測(cè)試試進(jìn)行進(jìn)行P2測(cè)測(cè)試試2021年10月16日星期六615、CPU周期與微指令周期的關(guān)系周期與微指令周期的關(guān)系l微指令周期微指令周期讀出微指令的時(shí)間加上執(zhí)行該條微指令的時(shí)間讀出微指令的時(shí)間加上執(zhí)行該條微指令的時(shí)間;
49、串行方式的微程序控制器中的概念;串行方式的微程序控制器中的概念;l一般來講,一般來講,一個(gè)微指令周期時(shí)間設(shè)計(jì)得恰好和一個(gè)微指令周期時(shí)間設(shè)計(jì)得恰好和CPU周期時(shí)間相等周期時(shí)間相等。 2021年10月16日星期六62CPU周期與微指令周期關(guān)系的例子周期與微指令周期關(guān)系的例子lCPU周期為周期為0.8us,包括,包括4個(gè)節(jié)拍脈沖個(gè)節(jié)拍脈沖T1T4,每個(gè)脈沖,每個(gè)脈沖200ns;T1T3的的600ns為執(zhí)行微指令的時(shí)間;為執(zhí)行微指令的時(shí)間;T4的的200ns為取微指令的時(shí)間;為取微指令的時(shí)間;lT1的上升沿,將讀出的微指令存入微指令寄存器;的上升沿,將讀出的微指令存入微指令寄存器;lT4的上升沿保存微
50、指令的執(zhí)行結(jié)果,的上升沿保存微指令的執(zhí)行結(jié)果,T4期間取微指令。期間取微指令。T1 T2 T3 T4 T1 T2 T3 T4T4T4執(zhí)行微指令執(zhí)行微指令 微指令周期微指令周期CPU周期周期CPU周期周期 讀讀微指令微指令 2021年10月16日星期六636、機(jī)器指令與微指令的關(guān)系、機(jī)器指令與微指令的關(guān)系l一條機(jī)器指令對(duì)應(yīng)一個(gè)微程序,一個(gè)微程序由若干條微指一條機(jī)器指令對(duì)應(yīng)一個(gè)微程序,一個(gè)微程序由若干條微指令序列組成的;令序列組成的;一條機(jī)器指令所完成的操作劃分成若干條微指令來完成,一條機(jī)器指令所完成的操作劃分成若干條微指令來完成,由微指令進(jìn)行解釋和執(zhí)行。由微指令進(jìn)行解釋和執(zhí)行。l從指令與微指令,
51、程序與微程序,地址與微地址的一一對(duì)從指令與微指令,程序與微程序,地址與微地址的一一對(duì)應(yīng)關(guān)系來看,應(yīng)關(guān)系來看,前者與內(nèi)存有關(guān)前者與內(nèi)存有關(guān),后者與控制存儲(chǔ)器有關(guān)后者與控制存儲(chǔ)器有關(guān)。l每一個(gè)每一個(gè)CPU周期對(duì)應(yīng)一條微指令。周期對(duì)應(yīng)一條微指令。動(dòng)畫演示:動(dòng)畫演示: 5.27.swf5.27.swf2021年10月16日星期六64【例例】 設(shè)某設(shè)某16位計(jì)算機(jī)運(yùn)算器框圖如下圖位計(jì)算機(jī)運(yùn)算器框圖如下圖(a)所示,其中所示,其中ALU為為16位的加法器位的加法器(高電平工作高電平工作),SA、SB為為16位暫存器。位暫存器。4個(gè)通用寄存器,其讀、寫控制功個(gè)通用寄存器,其讀、寫控制功能見下表。能見下表。
52、讀控制RRA0 RA1選中100R0101R1110R2111R30不讀寫控制WWA0 WA1 選中100R0101R1110R2111R30不寫2021年10月16日星期六65l 控制信號(hào)說明控制信號(hào)說明 RA0RA1 / WA0WA1 :讀寫通用寄存器時(shí),選擇所讀寫的寄存器;:讀寫通用寄存器時(shí),選擇所讀寫的寄存器; R / W:寄存器讀:寄存器讀 / 寫命令;寫命令; LDSA / LDSB :將數(shù)據(jù)打入:將數(shù)據(jù)打入SA / SB的控制信號(hào);的控制信號(hào); SB ALU:將:將SB中數(shù)據(jù)送入中數(shù)據(jù)送入ALU的控制信號(hào);的控制信號(hào); ALU:傳送:傳送SB的控制信號(hào),并使加法器最低位加的控制信
53、號(hào),并使加法器最低位加1; Reset:清暫存器:清暫存器SB為零的信號(hào);為零的信號(hào); :一段微程序結(jié)束,轉(zhuǎn)入取機(jī)器指令的控制信號(hào);:一段微程序結(jié)束,轉(zhuǎn)入取機(jī)器指令的控制信號(hào);l 要求:用二進(jìn)制代碼寫出如下指令的微程序:要求:用二進(jìn)制代碼寫出如下指令的微程序: “ADD R0,R1”指令,即指令,即(R0)+(R1)R1 “SUB R2,R3”指令,即指令,即(R3)-(R2)R3 “MOV R2,R3”指令,即指令,即(R2)(R3)【例例】微指令微指令字長字長12位,微指令格式如下所示(未位,微指令格式如下所示(未考慮順序控制字段)。考慮順序控制字段)。WA1RA1RA0WA0R WLDS
54、ALDSBSBALU SBALUReset SB2021年10月16日星期六66【例例】解答解答l三條指令的微指令的微程序流程圖三條指令的微指令的微程序流程圖l三條指令的微程序代碼如下表:三條指令的微程序代碼如下表:未考慮未考慮“取指周期取指周期”和順序控制問題,僅考慮和順序控制問題,僅考慮“執(zhí)行周執(zhí)行周期期”;每一個(gè)方框表示一條微指令,用數(shù)字序號(hào)標(biāo)明微指令序列每一個(gè)方框表示一條微指令,用數(shù)字序號(hào)標(biāo)明微指令序列的順序。的順序。指令微程序代碼ADD1. 00*101000002. 01*100100003. *0101001001SUB4. 11*101000005. 10*100100006.
55、 *1101000101MOV7. 10*101000008. *11010010112021年10月16日星期六675.4.2 微程序設(shè)計(jì)技術(shù)微程序設(shè)計(jì)技術(shù) l 微命令編碼微命令編碼l 微地址的形成方法微地址的形成方法l 微指令格式微指令格式l 動(dòng)態(tài)微程序設(shè)計(jì)動(dòng)態(tài)微程序設(shè)計(jì)2021年10月16日星期六681、微命令編碼、微命令編碼l微指令中微指令中操作控制字段操作控制字段的編碼表示方法,以及如何把編碼翻譯的編碼表示方法,以及如何把編碼翻譯成相應(yīng)的微指令。成相應(yīng)的微指令。l微命令編碼主要考慮的問題:微命令編碼主要考慮的問題:如何有效縮短微指令字長;如何有效縮短微指令字長;如何有利于縮短微程序,
56、減少所需的控存空間;如何有利于縮短微程序,減少所需的控存空間;如何有利于提高微程序執(zhí)行速度;如何有利于提高微程序執(zhí)行速度;l微命令編碼表示方法微命令編碼表示方法直接表示法、編碼表示法、混合表示法直接表示法、編碼表示法、混合表示法2021年10月16日星期六69直接表示法直接表示法l操作控制字段中的每一位代表一個(gè)微命令;操作控制字段中的每一位代表一個(gè)微命令;l優(yōu)點(diǎn)優(yōu)點(diǎn)簡單直觀,其輸出可直接用于控制,執(zhí)行速度快;簡單直觀,其輸出可直接用于控制,執(zhí)行速度快;l缺點(diǎn)缺點(diǎn)微指令字較長,因而使控制存儲(chǔ)器容量較大。微指令字較長,因而使控制存儲(chǔ)器容量較大。 . 4 5 6 7 8 9 10 11 12 13
57、14 15 16 17 18 19 20 21 22 23LDR1LDR2LDR3R1YR2XR2YR1XDRXR3Y + M - RDLDDRLDIRLDARPC+1 P1 P2直接地址直接地址 操作控制操作控制 順序控制順序控制2021年10月16日星期六70編碼表示法(編碼表示法(1/2)l編碼方法編碼方法將微指令操作控制字段劃分為若干個(gè)將微指令操作控制字段劃分為若干個(gè)子字段子字段;每個(gè)子字段的所有微命令進(jìn)行統(tǒng)一編碼;每個(gè)子字段的所有微命令進(jìn)行統(tǒng)一編碼;每個(gè)子字段的不同編碼表示不同的微命令;每個(gè)子字段的不同編碼表示不同的微命令;l例如,某機(jī)器指令系統(tǒng)總共需要例如,某機(jī)器指令系統(tǒng)總共需要2
58、56個(gè)微命令個(gè)微命令采用直接編碼法采用直接編碼法u微指令的操作控制字段需微指令的操作控制字段需256位位;采用編碼表示法采用編碼表示法u若若4個(gè)微命令劃分一個(gè)子字段,則每個(gè)子字段可編碼個(gè)微命令劃分一個(gè)子字段,則每個(gè)子字段可編碼16個(gè)微命令;個(gè)微命令;u256個(gè)微命令需個(gè)微命令需16個(gè)子字段,即微指令的操作控制字段僅個(gè)子字段,即微指令的操作控制字段僅64位位。2021年10月16日星期六71編碼表示法(編碼表示法(2/2)l遵循原則:遵循原則:把把相斥的微命令相斥的微命令劃分在同一個(gè)字段中,相容的微命令劃分劃分在同一個(gè)字段中,相容的微命令劃分在不同字段;在不同字段;字段的劃分應(yīng)與數(shù)據(jù)通路結(jié)構(gòu)相適
59、應(yīng);字段的劃分應(yīng)與數(shù)據(jù)通路結(jié)構(gòu)相適應(yīng);每個(gè)子字段應(yīng)留出一個(gè)每個(gè)子字段應(yīng)留出一個(gè)空操作狀態(tài)空操作狀態(tài);每個(gè)子字段所定義的微命令不宜太多;每個(gè)子字段所定義的微命令不宜太多;l優(yōu)點(diǎn)優(yōu)點(diǎn)可大大縮短微指令字長;可大大縮短微指令字長;l缺點(diǎn)缺點(diǎn)需要微命令譯碼需要微命令譯碼,故微程序的執(zhí)行速度稍稍減慢。,故微程序的執(zhí)行速度稍稍減慢。2021年10月16日星期六722、微地址的形成方法、微地址的形成方法l微程序的入口地址微程序的入口地址微程序的第一條微指令所在控存單元的地址;微程序的第一條微指令所在控存單元的地址;l現(xiàn)行微指令現(xiàn)行微指令執(zhí)行微程序過程中,當(dāng)前正在執(zhí)行的微指令;執(zhí)行微程序過程中,當(dāng)前正在執(zhí)行的微
60、指令;現(xiàn)行微指令的地址稱為現(xiàn)行微地址?,F(xiàn)行微指令的地址稱為現(xiàn)行微地址。l后繼微指令后繼微指令現(xiàn)行微指令執(zhí)行完畢后,下一條要執(zhí)行的微指令;現(xiàn)行微指令執(zhí)行完畢后,下一條要執(zhí)行的微指令;后繼微指令的地址稱為后繼微地址。后繼微指令的地址稱為后繼微地址。l微指令中確定下一條微指令地址的方法;微指令中確定下一條微指令地址的方法;計(jì)數(shù)器方式、多路轉(zhuǎn)移方式;計(jì)數(shù)器方式、多路轉(zhuǎn)移方式;2021年10月16日星期六73計(jì)數(shù)器方式計(jì)數(shù)器方式l同同CPU中程序計(jì)數(shù)器產(chǎn)生機(jī)器指令地址的方法相類似。中程序計(jì)數(shù)器產(chǎn)生機(jī)器指令地址的方法相類似。l優(yōu)點(diǎn)優(yōu)點(diǎn)微指令的順序控制字段較短,微地址產(chǎn)生機(jī)構(gòu)簡單。微指令的順序控制字段較短,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度高校與企業(yè)合作辦學(xué)項(xiàng)目合同3篇
- 二零二五年度特種車輛安裝與安全培訓(xùn)合同3篇
- 西安醫(yī)學(xué)高等??茖W(xué)?!渡虡I(yè)影片綜合案例制作》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五版1209兩人合伙經(jīng)營寵物美容與寄養(yǎng)中心協(xié)議3篇
- 二零二五年度珠寶首飾交易居間代理協(xié)議3篇
- 新疆機(jī)電職業(yè)技術(shù)學(xué)院《影視劇美術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 個(gè)體經(jīng)銷商專屬銷售授權(quán)協(xié)議(2024年度)版B版
- 通化師范學(xué)院《二維動(dòng)畫技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024離婚債務(wù)分割詳細(xì)合同書版B版
- 二零二五版廚具設(shè)備售后服務(wù)與技術(shù)培訓(xùn)合同3篇
- 銀行會(huì)計(jì)主管年度工作總結(jié)2024(30篇)
- 教師招聘(教育理論基礎(chǔ))考試題庫(含答案)
- 2024年秋季學(xué)期學(xué)校辦公室工作總結(jié)
- 上海市12校2025屆高三第一次模擬考試英語試卷含解析
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案集錦
- 長亭送別完整版本
- 《鐵路軌道維護(hù)》課件-更換道岔尖軌作業(yè)
- 股份代持協(xié)議書簡版wps
- 職業(yè)學(xué)校視頻監(jiān)控存儲(chǔ)系統(tǒng)解決方案
- 《銷售心理學(xué)培訓(xùn)》課件
- 2024年安徽省公務(wù)員錄用考試《行測(cè)》真題及解析
評(píng)論
0/150
提交評(píng)論