




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)組成原理The Principle of Computer(2007年3月)1第6章 控制系統(tǒng)與CPU6.1控制器概述6.2控制器的控制方式與時(shí)序系統(tǒng)6.3CPU的總體結(jié)構(gòu)6.4模型機(jī)的總體結(jié)構(gòu)6.5組合邏輯控制器設(shè)計(jì)6.6微程序控制器設(shè)計(jì)6.7流水線處理技術(shù)6.8CPU舉例6.1控制器概述控制器是計(jì)算機(jī)的指揮和控制中心6.1.1指令執(zhí)行的基本步驟6.1.2控制器的基本功能6.1.3控制器的組成6.1.4控制器的組成方式1.取指令2.分析指令(1)產(chǎn)生操作控制電位(2)形成操作數(shù)的有效地址,以進(jìn)行存/取,或形成轉(zhuǎn)移地址以實(shí)現(xiàn)程序轉(zhuǎn)移3.執(zhí)行指令6.1.1指令執(zhí)行的基本步驟開始取指令,PC
2、增量PC尋址?計(jì)算地址轉(zhuǎn)移指令?取操作數(shù)執(zhí)行指令,保存結(jié)果異常/中斷?轉(zhuǎn)去處理執(zhí)行轉(zhuǎn)移轉(zhuǎn)向地址PCNNNYYY指令執(zhí)行的一般流程分析指令程序控制原理 1、編程 2、送主存(通過輸入設(shè)備) 3、機(jī)器工作時(shí),是按一定的序列逐條取出指令,分析指令,執(zhí)行指令,并自動轉(zhuǎn)到下一條指令執(zhí)行,直到程序規(guī)定的任務(wù)完成。 4、程序控制由控制器承擔(dān),程序執(zhí)行由運(yùn)算器和外部設(shè)備具體負(fù)責(zé),程序存儲由存儲器完成。6.1.1指令執(zhí)行的基本步驟1.控制指令的正確執(zhí)行(1)指令流出控制:取指令(PC)MAR,Read(MDR) IR(2)分析指令:指令譯碼器ID分析確定操作性質(zhì),判明尋址方式并形成操作數(shù)的有效地址EA(3)執(zhí)行
3、:根據(jù)分析的結(jié)果和形成的EA產(chǎn)生相應(yīng)的操作控制信號序列,控制相應(yīng)部件完成操作(4)指令流向控制:下一條指令地址的形成控制(PC)=本條指令的(PC)+本條指令字長 (PC)=轉(zhuǎn)移的目標(biāo)地址(或子程序入口地址,或中斷服務(wù)程序入口地址)6.1.2控制器的基本功能2.控制程序和數(shù)據(jù)的輸入及結(jié)果的輸出3.異常情況、特殊請求的檢測和處理:中斷6.1.2控制器的基本功能輸入設(shè)備主存儲器輔助存儲器輸出設(shè)備運(yùn)算器控制器輸入輸出程序原始數(shù)據(jù)運(yùn)算結(jié)果指令數(shù)據(jù)線控制信號線6.1.3 控制器的組成去內(nèi)存取指令或取數(shù)據(jù)對各功能部件產(chǎn)生控制PSR地址形成部件時(shí)序部件指令譯碼器PC微操作信號產(chǎn)生器.控制器基本結(jié)構(gòu)O P 尋
4、址方式 ACALUDBABGRI/O狀態(tài)信息IRDB啟停電路控制臺脈沖源到MAR或ALU中斷控制邏輯中斷源MAR增量MDR1.指令部件指令部件應(yīng)包括程序計(jì)數(shù)器(PC)、指令寄存器(IR)、指令譯碼器(ID)、程序狀態(tài)寄存器(PSR)和地址形成部件等5個(gè)部分。(1)程序計(jì)數(shù)器PC:指令地址寄存器,用來指出在內(nèi)存中存放的將要取的指令的單元地址。傳送指令地址給MAR。(2)指令寄存器IR:指令寄存器用來存放現(xiàn)行指令的代碼。從MDR接收指令。(3)指令譯碼器ID:操作碼譯碼器,用以產(chǎn)生操作性質(zhì)的控制電位,并將其送到微操作(一條指令的執(zhí)行過程可以分解為若干簡單的基本操作,稱為微操作)控制線路上,在時(shí)序部
5、件定時(shí)信號作用下,產(chǎn)生具體的控制操作信號。(4)地址形成部件:根據(jù)尋址方式的不同,用來形成操作數(shù)有效地址的功能部件。6.1.3 控制器的組成(5)程序狀態(tài)字寄存器(PSR)存放程序狀態(tài)字PSW,用來表征當(dāng)前運(yùn)算的狀態(tài)及程序的工作方式。如MCS-51單片機(jī)的PSWCYACFORS1RS0OVPCY(PSW.7)進(jìn)位標(biāo)志位。 AC(PSW.6)輔助進(jìn)位(或稱半進(jìn)位)標(biāo)志。 FO(PSW.5)由用戶定義的標(biāo)志位。 RS1(PSW.4)、 RS0(PSW.3)工作寄存器組選擇位。 OV(PSW.2)溢出標(biāo)志位。 由硬件置位或清零。 6.1.3 控制器的組成2.時(shí)序控制部件時(shí)序控制部件就是用來產(chǎn)生各部件
6、進(jìn)行微操作所需要的定時(shí)控制信號的部件,保證各個(gè)微操作的執(zhí)行順序。(1)脈沖源:利用晶體振蕩器產(chǎn)生一定頻率的主時(shí)鐘脈沖(主頻)。(2)啟停電路:控制機(jī)器工作的啟動和停止(3)時(shí)序信號發(fā)生器:產(chǎn)生機(jī)器所需的時(shí)序信號,以控制有關(guān)部件在不同的時(shí)間完成不同的微操作。6.1.3 控制器的組成3.微操作控制信號形成部件 (1)微操作是指計(jì)算機(jī)中最基本的操作 (2)微操作控制邏輯,用來產(chǎn)生機(jī)器所需的全部的微操作信號。微操作控制邏輯的作用是把操作碼譯碼器輸出的控制電位,時(shí)序信號以及各種控制條件進(jìn)行組合,按一定時(shí)間順序產(chǎn)生并發(fā)出一系列微操作控制信號,以完成指令規(guī)定的全部操作。4.中斷控制邏輯:用來控制中斷處理的硬
7、件邏輯。5.控制臺:實(shí)現(xiàn)人-機(jī)通信6.1.3 控制器的組成6.1.4 控制器的組成方式微操作控制信號形成部件是控制器的核心,其產(chǎn)生信號的方式有三種:(1) 常規(guī)組合邏輯型(或稱隨機(jī)邏輯法)分立元件時(shí)代的產(chǎn)物;方法是按邏輯代數(shù)的運(yùn)算規(guī)則,以組合電路最小化為原則,用邏輯門電路實(shí)現(xiàn);速度快。不規(guī)整,可靠性低,不易修改和擴(kuò)充,造價(jià)高。(2)存儲邏輯型(微程序控制邏輯法)將程序設(shè)計(jì)的思想方法引入控制器的控制邏輯;將各種操作控制信號以編碼信息字的形式存入控制存儲器中(CM);一條機(jī)器指令對應(yīng)一道微程序,機(jī)器指令執(zhí)行的過程就是微程序執(zhí)行的過程。(3) 組合邏輯和存儲邏輯結(jié)合型(可編程邏輯陣列(PLA)法)與
8、組合邏輯型本質(zhì)相同,工藝不同;用大規(guī)模集成電路(LSI)來實(shí)現(xiàn)。6.2控制器的控制方式與時(shí)序系統(tǒng)6.2.1控制方式6.2.2時(shí)序系統(tǒng)如何形成控制不同微操作序列的時(shí)序控制信號的方法,稱為控制器的控制方式。控制方式通常分為同步控制方式、異步控制方式、同異步聯(lián)合控制方式三類。1.同步控制方式又稱為固定時(shí)序控制方式或無應(yīng)答控制方式。任何指令的執(zhí)行或指令中每個(gè)微操作的執(zhí)行都受事先安排好的時(shí)序信號的控制。每個(gè)周期狀態(tài)中產(chǎn)生統(tǒng)一數(shù)目的節(jié)拍電位及時(shí)標(biāo)工作脈沖。以最復(fù)雜(微操作序列最長,執(zhí)行時(shí)間最長)指令的實(shí)現(xiàn)需要為基準(zhǔn)。優(yōu)點(diǎn):設(shè)計(jì)簡單,操作控制容易實(shí)現(xiàn)。缺點(diǎn):效率低。6.2.1 控制方式2.異步控制方式可變時(shí)
9、序控制方式或應(yīng)答控制方式。執(zhí)行一條指令需要多少節(jié)拍,不作統(tǒng)一的規(guī)定,而是根據(jù)每條指令的具體情況而定,需要多少,控制器就產(chǎn)生多少時(shí)標(biāo)信號。特點(diǎn):每一條指令執(zhí)行完畢后都必須向控制時(shí)序部件發(fā)回一個(gè)回答信號,控制器收到回答信號后,才開始下一條指令的執(zhí)行。優(yōu)點(diǎn):指令的運(yùn)行效率高;缺點(diǎn):控制線路比較復(fù)雜。異步工作方式一般采用兩條定時(shí)控制線來實(shí)現(xiàn)。我們把這兩條線稱為“請求”線和“回答”線。當(dāng)系統(tǒng)中兩個(gè)部件A和B進(jìn)行數(shù)據(jù)交換時(shí),若A發(fā)出“請求”信號,則必須有B的“回答”信號進(jìn)行應(yīng)答,這次操作才是有效的,否則無效。6.2.1 控制方式3.同步,異步聯(lián)合控制方式同步控制和異步控制相結(jié)合的方式即聯(lián)合控制方式,區(qū)別對
10、待不同指令。一般的設(shè)計(jì)思想是,在功能部件內(nèi)部采用同步式,而在功能部件之間采用異步式,并且在硬件實(shí)現(xiàn)允許的情況下,盡可能多地采用異步控制。6.2.1 控制方式1. 概念時(shí)序部件:計(jì)算機(jī)的機(jī)內(nèi)時(shí)鐘。它用其產(chǎn)生的周期狀態(tài),節(jié)拍電位及時(shí)標(biāo)脈沖去對指令周期進(jìn)行時(shí)間劃分,刻度和標(biāo)定。指令周期:在計(jì)算機(jī)中從指令的讀取到指令的執(zhí)行完成,執(zhí)行一條指令所需要的時(shí)間,稱為指令周期。指令周期通常由若干個(gè)CPU周期-取指周期、取數(shù)周期、執(zhí)行周期、中斷周期等來表示,CPU周期也稱為機(jī)器周期,在每個(gè)機(jī)器周期完成一個(gè)基本操作。由于CPU內(nèi)部的操作速度較快,而CPU訪問一次內(nèi)存所花的時(shí)間較長,通常用存儲周期為基礎(chǔ)來規(guī)定CPU周
11、期。6.2.2 時(shí)序系統(tǒng)2.三級時(shí)序信號周期 (1) 在一個(gè)控制階段內(nèi)均持續(xù)起作用的信號; (2) 通常用周期狀態(tài)寄存器來標(biāo)志和指明某某周期控制; (3) 指令周期可分為取指周期、分析周期、執(zhí)行周期。節(jié)拍 (1) 把一個(gè)機(jī)器周期分成若干個(gè)相等的時(shí)間段,每一個(gè)時(shí)間段對應(yīng)一個(gè)電位信號,稱節(jié)拍電位; (2) 一般都以能保證ALU進(jìn)行一次運(yùn)算微操作作為一拍電位的時(shí)間寬度。時(shí)標(biāo)工作脈沖 (1) 及時(shí)改變標(biāo)志狀態(tài); (2) 時(shí)標(biāo)脈沖的寬度一般為節(jié)拍電位寬度的1/N,只要能保證所有的觸發(fā)器都能可靠地,穩(wěn)定地翻轉(zhuǎn)即可。6.2.2 時(shí)序系統(tǒng)3.三級時(shí)序信號的關(guān)系一臺計(jì)算機(jī)機(jī)內(nèi)的控制信號一般均由若干個(gè)周期狀態(tài),若
12、干個(gè)節(jié)拍電位及若干個(gè)時(shí)標(biāo)脈沖這樣三級控制時(shí)序信號定時(shí)完成。三級時(shí)序的組合關(guān)系如圖所示。6.2.2 時(shí)序系統(tǒng)PW3W2W2W0M1M0周期0周期1節(jié)拍0節(jié)拍1節(jié)拍2節(jié)拍3脈沖6.3CPU的總體結(jié)構(gòu)CPU=控制器+運(yùn)算器6.3.1 寄存器的設(shè)置6.3.2數(shù)據(jù)通路結(jié)果及指令流程分析6.3.1 寄存器的設(shè)置1.指令寄存器IR2.程序計(jì)數(shù)器PC3.程序狀態(tài)寄存器PSR4.累加寄存器AC及通用寄存器GR:AC暫存操作數(shù)據(jù)和結(jié)果,GR是一組程序可訪問的、具有多種功能的寄存器,能提供操作數(shù)、保存中間結(jié)果、作為地址指針、基址寄存器、變址寄存器、計(jì)數(shù)器等。如Intel 8086的AX、BX、CX、DX、SP、DS
13、、CS、ES、SS、SI、DI等。5.地址寄存器MAR:存放所要訪問的主存單元的地址(來自PC的指令的地址,或來自地址形成部件的操作數(shù)的地址)6.數(shù)據(jù)緩沖寄存器MDR(或MBR):存放向主存寫入的信息或從主存中讀出的信息6.3.2 數(shù)據(jù)通路結(jié)構(gòu)及流程分析1.單總線結(jié)構(gòu)控制信號邏輯IDIRCUIRin時(shí)序部件R0R7R0outR0inR7outR7inPCMARMDRYALUZPSRPCinPCoutMARinMDRinMDRoutYinAB+1ZinZoutIBUSDBUSMEMI/OI/OABUSRWGR6.3.2 數(shù)據(jù)通路結(jié)構(gòu)及流程分析【例】在上圖中,A和B 為ALU的兩個(gè)輸入端,且ALU
14、可以實(shí)現(xiàn)A1、A B等功能,主存以字編址,每條指令 和數(shù)據(jù)均占一個(gè)主存單元。分析指令:ADD (R1),R0的操作流程。其中,源操作數(shù)在前。分析:(1)(PC)MAR,READ,PC Y ;送指令地址,讀主存(2)MEM MDR IR,(Y)+1 Z;取指令到IR,PC+1暫存于Z(3)(Z) PC ;PC+1 PC(4)(R1)MAR,READ ;送源操作數(shù)地址(5)MEM MDR Y ;取出源操作數(shù)到Y(jié)中(6)(Y)+(R0) Z ;執(zhí)行加法運(yùn)算,結(jié)果暫存于Z(7)(Z) R0 ;加法結(jié)果送回目標(biāo)寄存器 FIR6.3.2 數(shù)據(jù)通路結(jié)構(gòu)及流程分析2.雙總線結(jié)構(gòu)IRPCR0R1R2YTEMPM
15、DRR3ALUID控制信號邏輯時(shí)序部件BFBAINCDECADDSUBGonFPCFR0FR1FR2FR3FMDRFTEMPFYIRBPCBR0BR1BR2BR3BMDRBTEMPBMEMMARFMARRWDBUSABUS6.3.2 數(shù)據(jù)通路結(jié)構(gòu)及流程分析【例】在上圖中,F(xiàn)為發(fā)送總線,B為 接收總線,它們通過總線連接器G可直接連接,當(dāng)Gon=1時(shí),G被打開,B的數(shù)據(jù)可傳向F;當(dāng)Gon=0時(shí),G被關(guān)閉,兩總線隔離,且ALU可以實(shí)現(xiàn)A1、A B等功能,主存以字編址,每條指令 和數(shù)據(jù)均占一個(gè)主存單元。分析指令:ADD (R1),R0的操作流程。其中,源操作數(shù)在前。分析:操作流程控制信號序列(1)(P
16、C)MAR,READPC B,Gon,F(xiàn) MAR,READ,F(xiàn) Y(2)(PC)+1 PCINC,F(xiàn) PC(3)M MDR IRMDR B, Gon ,F(xiàn) IR(4)(R1) MAR,READR1 B, Gon ,F(xiàn) MAR,READ(5)M MDR YMDR B, Gon ,F(xiàn) Y(6)(Y)+(R0) R0R0 B,ADD, FR06.4模型機(jī)的總體結(jié)構(gòu)6.4.1模型機(jī)的數(shù)據(jù)通路6.4.2模型機(jī)的指令系統(tǒng)6.4.3模型機(jī)的時(shí)序系統(tǒng)6.4.1 模型機(jī)的數(shù)據(jù)通路控制信號邏輯時(shí)序部件IDCCCZIRPCR0R1R2R3MDRSPTEMPYALU移位器判零CZCCCZCPCZCCCPCCSLEXS
17、RDMC0MS3S2S1S0ABPCBR0BR1BR2BR3BMDRBTEMPBBUS1BUS2CPYCPTEMPCPSPCPMDRCPR3CPR2CPR1CPR0CPPCCPIRMARCPMARMEMR/WI/OMREQIOREQDBUSABUS字長=16 CP:脈沖信號R0R3:通用寄存器000011SP:堆棧指示器100PC:程序計(jì)數(shù)器111MAR:地址寄存器MDR:數(shù)據(jù)寄存器TEMP,Y:暫存器CC:進(jìn)位觸發(fā)器,CZ:零觸發(fā)器BUS1:輸入總線BUS2:輸出總線ABUS:地址總線DBUS:數(shù)據(jù)總線CBUS:控制總線內(nèi)部總線系統(tǒng)總線總線6.4.1 模型機(jī)的數(shù)據(jù)通路工作方式選擇S3S2S1
18、S0F的輸出功能(負(fù)邏輯)邏輯運(yùn)算M=1算術(shù)運(yùn)算M=0,C0=00000AA減10101BAB加(A+B)0110ABA+B1001ABA加B1010BAB加(A+B)1011A+BA+B1110ABAB加A1111AAALU功能6.4.2 模型機(jī)的指令系統(tǒng)1.指令格式OP 尋址方式 RS 尋址方式 RD雙操作數(shù)指令15 12 11 9 8 6 5 3 2 0源操作數(shù)目的操作數(shù)OP 000 備用 尋址方式 RD單操作數(shù)指令15 12 11 9 8 6 5 3 2 0目的操作數(shù)OP 位移量D轉(zhuǎn)移類指令15 12 11 9 8 6 5 3 2 0OP 000 未用 000 未用返回/停機(jī)指令15
19、12 11 9 8 6 5 3 2 0操作碼=4位,共計(jì)16條指令6.4.2 模型機(jī)的指令系統(tǒng)2.指令系統(tǒng)指令名稱操作碼指令功能傳送(MOV)0000(ES)ED加法(ADD)0001(ED) +(ES) ED減法(SUB)0010(ED)-(ES) ED邏輯與(AND)0011(ED) (ES) ED邏輯或(OR)0100(ED) (ES) ED異或(EOR)0101(ED) (ES) ED加1(INC)0110(ED) +1 ED取反(COM)0111(ED) ED左移(ROL)1000(ED)左移一位 ED ,由指令86位指定移位方式右移(ROR)1001(ED)右移一位 ED ,由指令
20、86位指定移位方式無條件轉(zhuǎn)移(JP)1010(PC)+位移量D PC有進(jìn)位轉(zhuǎn)移(JC)1011若CC=1,則(PC)+位移量D PC結(jié)果零轉(zhuǎn)移(JZ)1100若CZ=1,則(PC)+位移量D PC轉(zhuǎn)子程序(JSR)1101(PC)入棧,(PC)+位移量D PC返回(RTS)1110從棧頂彈出返回地址PC停機(jī)(HALT)1111停機(jī)6.4.2 模型機(jī)的指令系統(tǒng)3.尋址方式(1)寄存器尋址:尋址方式編碼000,匯編符號為Rn,n為寄存器編號E= Rn(2)寄存器間接尋址:尋址方式編碼001,匯編符Rn或(Rn)E= (Rn)(3)自增型寄存器間接尋址:尋址方式編碼010,匯編符號(Rn)+E=(R
21、n),(Rn)+1Rn(4)自減型寄存器間接尋址:尋址方式編碼011,匯編符號-( Rn)(Rn)-1Rn , E=(Rn)(5)變址型尋址:尋址方式編碼100,匯編符號X( Rn )E=X+ ( Rn )6.4.2 模型機(jī)的時(shí)序系統(tǒng)1.機(jī)器周期:六個(gè)機(jī)器周期,每個(gè)周期設(shè)一個(gè)周期狀態(tài)觸發(fā)器(1)取指周期FT:實(shí)現(xiàn)取指令、分析指令和(PC)+1PC的操作(2)取源周期ST:用于非寄存器器尋址的雙操作數(shù)指令中源操作數(shù)地址的尋址和取源操作數(shù)。(3)取目的周期DT:用于非寄存器器尋址的雙操作數(shù)指令中目的操作數(shù)地址的尋址和取目的操作數(shù)。(4)執(zhí)行周期ET:完成指令規(guī)定的操作并保存結(jié)果(5)中斷周期IT(
22、6)DMA周期DMATQ Q FT SCP DFTQ QR ST CP DSTQ QR DT CP DDTQ QR ETCP DETRESETTENDP1FT1ST1DT1ET一個(gè)周期=4個(gè)節(jié)拍T0、T1、T2、T36.4.2 模型機(jī)的時(shí)序系統(tǒng)每個(gè)周期內(nèi)可完成主存的一次讀/寫操作。每個(gè)周期=4個(gè)節(jié)拍T0、T1、T2、T3。每個(gè)節(jié)拍內(nèi)設(shè)置一個(gè)脈沖,用于寄存器接收代碼。&T0&T1&T2&T3Q Q C2C TQ Q C1C TRESET&P1DTXDRepeatFTSTET雙數(shù)指令DRETRTSETJSR節(jié)拍發(fā)生器原理圖6.4.2 模型機(jī)的時(shí)序系統(tǒng)PT3T2T1T0M指令周期三級時(shí)序關(guān)系6.5組
23、合邏輯控制器設(shè)計(jì)6.5.1設(shè)計(jì)的步驟6.5.2模型機(jī)的設(shè)計(jì)6.5.1 設(shè)計(jì)的步驟1.繪制指令操作流程圖把指令的執(zhí)行過程分解成若干功能部件能實(shí)現(xiàn)的基本微操作,并以圖的形式排列成有先后次序、相互銜接配合的流程(指令操作流程圖)2.編排指令操作時(shí)間表把指令流程圖中的各個(gè)微操作具體落實(shí)到各個(gè)機(jī)器周期的相應(yīng)節(jié)拍和脈沖中去,并以微操作控制信號的形式編排一張表(指令操作時(shí)間表)3.進(jìn)行微操作綜合對指令操作時(shí)間表中的各個(gè)微操作信號分別按其條件進(jìn)行歸納、綜合,列出其綜合的邏輯表達(dá)式,并進(jìn)行適當(dāng)?shù)恼{(diào)整、化簡,得到比較合理的邏輯表達(dá)式4.設(shè)計(jì)微操作控制信號形成部件用組合邏輯電路實(shí)現(xiàn)邏輯表達(dá)式6.5.2 模型機(jī)的設(shè)計(jì)
24、1. 指令操作流程圖(1)取指周期的操作流程圖(PC) MARREAD,(PC)+1 PC(MDR) IRJUMP?SRDR=?1ST1 DT1 ETYN00或0110FT0FT1FT2FT36.5.2 模型機(jī)的設(shè)計(jì)(2)取源周期的操作流程圖源尋址?(Rs)(Rs)+-(Rs)RepeatXs(Rs)MAR(Rs) MAR(Rs)-1Rs MAR(Rs)+(Y)MAR(PC)MARREADREAD,(Rs)+1 RsREADREADREAD,(PC)+1PC(MDR)TEMP(MDR)TEMP(MDR)TEMP(MDR)TEMP(MDR)YDR=1?清Repeat置Repeat1ST1DT1E
25、TNY6.5.2 模型機(jī)的設(shè)計(jì)(3)取目的周期的操作流程圖目的尋址?(RD)(RD)+-(RD)RepeatXD(RD)MAR(RD) MAR(RD)-1RD MAR(RD)+(Y)MAR(PC)MARREAD1ETREAD,(RD)+1 RD1ETREAD1ETREAD,清Repeat1ETREAD,(PC)+1PC(MDR)Y置Repeat1DT6.5.2 模型機(jī)的設(shè)計(jì)(4)執(zhí)行周期的操作流程圖傳送類指令運(yùn)算類指令轉(zhuǎn)移類指令停機(jī)指令轉(zhuǎn)子/返回指令(略)6.6微程序控制器設(shè)計(jì)6.6.1微程序控制器概述6.6.2微指令的編譯方法6.6.3微程序的順序控制方式6.6.4微指令的執(zhí)行方式6.6.5
26、微程序設(shè)計(jì)方法6.6.6微程序控制器的設(shè)計(jì)步驟6.6.7舉例:模型機(jī)的微程序設(shè)計(jì)微程序控制技術(shù)在現(xiàn)今計(jì)算機(jī)設(shè)計(jì)中得到廣泛的采用,其實(shí)質(zhì)是用程序設(shè)計(jì)的思想方法來組織操作控制邏輯。1、微程序控制技術(shù)被廣泛應(yīng)用的原因 (1)物質(zhì)基礎(chǔ):ROM (2) 靈活性 (3)提高了可靠性,可利用性及可維護(hù)性(簡稱RAS技術(shù)),大大優(yōu)化了硬件控制技術(shù)。 (4)有利于機(jī)器設(shè)計(jì)時(shí)的仿真。也就是說,在M1機(jī)器上使用M2機(jī)器語言編寫程序并運(yùn)行,從用戶角度來看,M1和M2無區(qū)別,要能做到這一點(diǎn),只有機(jī)器具有控存CM的微程序設(shè)計(jì)結(jié)構(gòu)才行。 (5)其他(反映在以下幾方面的優(yōu)點(diǎn))6.6微程序控制器設(shè)計(jì)2、與組合邏輯控制方法相比,
27、微程序控制方法在諸多方面有著顯著的差別 (1) 從實(shí)現(xiàn)方式上微程序控制:規(guī)整,增、刪、改較容易組合邏輯控制:零亂且復(fù)雜,當(dāng)修改指令或增加指令時(shí)非常麻煩,有時(shí)甚至沒有可能。 (2) 從性能上來比較在同樣的半導(dǎo)體工藝條件下,微程序控制的速度比組合邏輯控制方式的速度低,這是因?yàn)閳?zhí)行每條微指令都要從控存中讀取一次,影響了速度,而組合邏輯控制方式取決于電路延遲,因而在超高速計(jì)算機(jī)中,對影響速度的關(guān)鍵部分例如CPU,往往采用組合邏輯控制方法。近年來在一些新型計(jì)算機(jī)結(jié)構(gòu)中如RISC結(jié)構(gòu),一般選用組合邏輯方法。 (3)診斷能力微程序設(shè)計(jì)方法:診斷能力強(qiáng)組合邏輯控制:診斷能力弱6.6微程序控制器設(shè)計(jì)1.基本概念
28、1) 控制字(CW):表征微操作控制要求的二進(jìn)制字,稱為控制字。2) 微命令微程序控制中,把微操作控制信號稱為微命令。微操作是微命令在時(shí)序的配合作用下的操作過程。3) 微地址和微指令微地址:存放控制字的單元地址。微指令:具有微地址的控制字。4) 微程序:一系列微指令的有序集合構(gòu)成微程序。5) 微周期微周期就是從控制存儲器中讀出一條微指令并執(zhí)行相應(yīng)操作所需要的時(shí)間。6.6.1微程序控制器概述6.6.1微程序控制器概述2.基本組成(圖6-30)1)控制存儲器CM:用來存放微程序。2)微指令寄存器IR用來存放從控制存儲器中取得的微指令。3)微地址形成部件AG用來產(chǎn)生機(jī)器指令的首條微指令地址和后續(xù)地址
29、。4)微地址寄存器MAR:接收微地址形成部件送來的微地址。5)譯碼與驅(qū)動電路對微地址寄存器中的微地址進(jìn)行譯碼,找到被訪問的CM單元并驅(qū)動其進(jìn)行讀取操作,存放于IR6.6.1微程序控制器概述3.微程序執(zhí)行過程微程序控制器的工作過程實(shí)質(zhì)上就是在微程序控制器的控制之下,計(jì)算機(jī)執(zhí)行機(jī)器指令的過程:1)從控制存儲器中運(yùn)行取指令微程序,完成從主存儲器中取得機(jī)器指令的工作;2)根據(jù)機(jī)器指令的操作碼,得到相應(yīng)機(jī)器指令的微程序入口;3)逐條取出微指令,完成相關(guān)微操作控制;4)執(zhí)行下一條機(jī)器指令。6.6.2微指令的編譯方法一、編譯法的選擇原則(1)減少微指令的長度;(2)提高微操作的并行性;(3)提高機(jī)器的控制性
30、能并降低價(jià)格;(4)有利于微程序設(shè)計(jì)的靈活性。 二、編譯法 1、直接控制法(不譯法)(1)含義:每一個(gè)獨(dú)立的二進(jìn)制位代表一個(gè)微命令。按不譯法編碼的微指令,又稱水平微指令。(2)本質(zhì)特征:面向數(shù)據(jù)通路的控制門(或控制點(diǎn))。 (3)優(yōu)點(diǎn):A:并行執(zhí)行,執(zhí)行速度也比較快;B:微程序所需用的微指令條數(shù)少。 缺點(diǎn):A:編制程序難度較大;B:微指令不能充分利用。2、最短編譯法 (1) 含義:每一條微指令只定義一個(gè)微命令。按最短編譯法編碼的微指令又稱垂直型微指令。 (2) 本質(zhì)特征:面向算法來編碼的。類似于傳統(tǒng)的程 序設(shè)計(jì)方法。 (3) 優(yōu)點(diǎn):A:編程簡單;B:微指令字中各位都得到充分利用。 缺點(diǎn):A:并行
31、控制能力差,執(zhí)行速度慢;B:微程序長度較長。6.6.2微指令的編譯方法3、字段編譯法(1)、字段直接編譯法A:把一條微指令分成幾段,段與段間按水平法設(shè)計(jì),每個(gè)段內(nèi)分別按垂直法進(jìn)行編碼,每一段形成一個(gè)微命令,一條微指令可同時(shí)有并行的幾個(gè)微命令。B:微指令字分段的原則:(a)在同一節(jié)拍內(nèi),需要互相配合起作用的微操作,是并行操作,其微命令可以分在不同的字段內(nèi),以便配合進(jìn)行微操作控制(組合性的操作控制)。這是微命令的相容性。(b)在同一節(jié)拍內(nèi),不允許同時(shí)出現(xiàn)具有“排它”性的微操作,是串行操作,其微命令可分在一個(gè)字段內(nèi),這是微命令的互斥性。6.6.2微指令的編譯方法(2)、字段間接編譯法它是在字段直接編
32、譯法基礎(chǔ)上用來進(jìn)一步縮短指令字長,組合零散微命令的一種編譯法。若在字段直接編譯法中再規(guī)定一個(gè)字段的某些微命令要由另一個(gè)字段中的某些微命令來解釋,稱為字段間接編譯法。這種編譯法適用于把那些不同類型的,不常用的,但數(shù)量又可觀的“零散”的微命令編入少數(shù)幾個(gè)字段之中,以減少微指令字的長度,組合編譯更多的微命令。6.6.2微指令的編譯方法6.6.3微程序的順序控制方式1、初始微地址的形成每條機(jī)器指令對應(yīng)一段微程序,當(dāng)執(zhí)行公用的取指微程序從主存中取出機(jī)器指令后,由機(jī)器指令的操作碼指出微程序的首地址。這是一種多分支情況,通常有以下幾種方式:(1)操作碼的位數(shù)與位置固定,這時(shí)可直接使操作碼與微地址碼的部分位相
33、對應(yīng)。例如,若微入口地址=00OC,則控制存儲器第零頁的一些單元被安排為各個(gè)微程序入口(即首地址),再通過無條件微轉(zhuǎn)移指令使這些單元與相應(yīng)的后續(xù)微指令相連接。(2)當(dāng)每類指令的操作碼位數(shù)與位置固定,而各類指令之間的操作碼位數(shù)與位置不固定時(shí),可采用分級轉(zhuǎn)移的方法。先按指令類型轉(zhuǎn)移到某條微指令,區(qū)分出是哪一大類,然后進(jìn)一步按機(jī)器指令操作碼轉(zhuǎn)移,區(qū)分出是哪一種具體的機(jī)器指令。(3)當(dāng)操作碼的位數(shù)與位置都不固定時(shí),通常的方法是采用PLA可編程邏輯陣列實(shí)現(xiàn)。6.6.3微程序的順序控制方式2、后繼微地址的形成得到微程序入口以后,就開始執(zhí)行微程序,后繼微地址的形成方法對微程序編制的靈活性影響很大。通常采用兩
34、種方法形成后繼微地址:(1)增量方式這種方式和機(jī)器指令的控制方式類似。 PC: (A)順序:增量。 (B)無條件轉(zhuǎn)向:PC。 (C)有條件轉(zhuǎn)向:條件碼參與,修改PC。(2)在微指令字的格式中,增設(shè)下地址字段之后,就可以用微地址寄存器(MAR)取代微程序計(jì)數(shù)器。下一條微指令地址在多數(shù)情況可由現(xiàn)行微指令字的下地址字段NAF直接給出,少數(shù)情況由微地址產(chǎn)生器對下地址字段進(jìn)行修改后產(chǎn)生后繼微地址。6.6.3微程序的順序控制方式綜合上述,后繼微地址的形成是設(shè)計(jì)微程序控制的關(guān)鍵問題之一。確定后繼微指令地址有以下幾種情況:(A)順序執(zhí)行時(shí),后繼微地址可以由現(xiàn)行微指令字的下地址字段NAF或微程序計(jì)數(shù)器PC直接確
35、定。(B)無條件轉(zhuǎn)向的后繼微地址,可以由現(xiàn)行微指令字的下地址字段確定。(C)有條件轉(zhuǎn)向的后繼微地址由現(xiàn)行機(jī)器指令操作碼,現(xiàn)行微指令執(zhí)行時(shí)產(chǎn)生狀態(tài)特征或條件碼的判別結(jié)果決定。6.6.3微程序的順序控制方式6.6.5 微程序設(shè)計(jì)方法1 水平型微指令與微程序設(shè)計(jì)6.6.5 微程序設(shè)計(jì)方法2 垂直型微指令與微程序設(shè)計(jì)3 毫微程序設(shè)計(jì)(1)毫微程序是用以解釋微程序的一種程序,因此組成毫微程序的毫微指令是負(fù)責(zé)解釋微指令的微指令。(2)毫微程序設(shè)計(jì)的基本思想采用兩級微程序設(shè)計(jì)方法 1) 第一級用垂直微指令編制垂直微程序第一級垂直微程序是為實(shí)現(xiàn)指令系統(tǒng)和其它處理過程的需要而編制的,它有嚴(yán)格的順序結(jié)構(gòu),由它確定后續(xù)微指令的地址。垂直微程序存放于微程序存儲器中。 2) 第二級用水平微指令編制水平微程序。第二級水平微程序是由第一級調(diào)用的,用以解釋垂直微程序并實(shí)現(xiàn)相應(yīng)的數(shù)據(jù)通路操作。水平微指令具有并行操作控制能力,但不包含后續(xù)微指令地址信息。6.6.5 微程序設(shè)計(jì)方法6.6.6 微程序控制器設(shè)計(jì)步驟6.6.7 舉例:模型機(jī)的微程序設(shè)計(jì)6.7流水線處理技術(shù)6.7.0并行處理技術(shù)6.7.1指令的執(zhí)行方式6.7.2流水線的分類6.7.3線性流水線的性能6.7.4流水線的相關(guān)問題6.7.0并行處理技術(shù)標(biāo)準(zhǔn)的馮諾依曼體系結(jié)構(gòu)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 社會工作者考試復(fù)習(xí)資料及試題及答案
- 學(xué)習(xí)資源整合初級社會工作者試題及答案
- 社會工作者中級考試學(xué)習(xí)小組試題及答案
- 汽機(jī)故障試題解析及答案
- 新課標(biāo)物理試題及答案
- 系統(tǒng)分析師考試策略制定試題及答案
- 軟件測試過程分析的試題及答案
- 系統(tǒng)分析師考試解題技巧分享試題及答案
- 系統(tǒng)分析師考試最后沖刺計(jì)劃試題及答案
- 胸痹中藥治療試題及答案
- 【MOOC】線性代數(shù)-北京理工大學(xué) 中國大學(xué)慕課MOOC答案
- 輻射與防護(hù)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 2023年新高考(新課標(biāo))全國2卷數(shù)學(xué)試題真題(含答案解析)
- 中科曙光公司在線測評題
- 2025屆全國新高考語文60篇必背課文合集
- 2024年甘肅省高考化學(xué)真題試卷含答案
- 2024年遼寧阜新市事業(yè)單位招聘普通高校退伍大學(xué)生(高頻重點(diǎn)復(fù)習(xí)提升訓(xùn)練)共500題附帶答案詳解
- 降血糖藥 教學(xué)課件
- 22G101三維彩色立體圖集
- DL∕T 552-2015 火力發(fā)電廠空冷凝汽器傳熱元件性能試驗(yàn)規(guī)程
- 四川省自貢市2023-2024學(xué)年八年級下學(xué)期期末歷史試題 (無答案)
評論
0/150
提交評論