版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六章中央處理器6.1控制器的組成6.2微程序控制計(jì)算機(jī)的基本工作原理6.3微程序設(shè)計(jì)技術(shù)6.4硬布線控制的計(jì)算機(jī)6.5流水線工作原理6.6CPU舉例6.7計(jì)算機(jī)的供電本章教學(xué)內(nèi)容本章學(xué)習(xí)目標(biāo)從兩個(gè)方面來(lái)認(rèn)識(shí)CPU:CPU的結(jié)構(gòu)組成CPU如何工作計(jì)算機(jī)組成:運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備五大部件
微處理器:運(yùn)算器+控制器集成在一個(gè)芯片上,通常稱之為中央處理部件(CPU)??刂破鞯慕M成和功能:(6.1節(jié))
協(xié)調(diào)并控制計(jì)算機(jī)的各個(gè)部件執(zhí)行程序的指令序列。
控制器分為微程序控制器(6.2節(jié)、6.3節(jié))和硬布線控制器(6.4節(jié))。機(jī)器加電和reset:(1)可以利用reset信號(hào)將某值(例如全“0”)置于程序計(jì)數(shù)器PC中,此即為開(kāi)機(jī)后執(zhí)行的第一條指令的地址,也就是固定程序入口地址。(2)也可以直接在指令寄存器中置入一條無(wú)條件轉(zhuǎn)移指令(轉(zhuǎn)移到固定程序入口),然后開(kāi)始執(zhí)行程序。執(zhí)行程序: 固定程序:先對(duì)計(jì)算機(jī)各部件進(jìn)行測(cè)試,然后引導(dǎo)進(jìn)入操作系統(tǒng)環(huán)境,等候從鍵盤、鼠標(biāo)等送入的命令。(一般放在ROM中)
程序執(zhí)行過(guò)程:計(jì)算機(jī)從程序入口地址開(kāi)始執(zhí)行該程序的指令序列,是不斷地取指令、分析指令和執(zhí)行指令這樣一個(gè)周而復(fù)始的過(guò)程。
當(dāng)前正在執(zhí)行的指令地址是放在控制器的程序計(jì)數(shù)器(PC)中的。停機(jī)和停電:(P129)
停機(jī):一般停機(jī)時(shí)電壓任維持正常(晶振停振),寄存器與存儲(chǔ)器仍保持信息不變。重啟后從斷點(diǎn)處繼續(xù)執(zhí)行。
停電:寄存器與存儲(chǔ)器內(nèi)容消失,加電后產(chǎn)生的reset信號(hào)使機(jī)器從固定入口重新開(kāi)始運(yùn)行。
斷電觸發(fā)的中斷保護(hù)計(jì)算機(jī)的工作過(guò)程:
加電→產(chǎn)生reset信號(hào)→執(zhí)行程序→停機(jī)→停電6.1控制器的組成6.1.1控制器的功能
計(jì)算機(jī)對(duì)信息進(jìn)行處理(或計(jì)算)是通過(guò)程序的執(zhí)行而實(shí)現(xiàn)的,程序是完成某個(gè)確定算法的指令序列,要預(yù)先存放在存儲(chǔ)器中??刂破鞯淖饔?控制程序的執(zhí)行,它必須具有以下基本功能:
1.取指令
當(dāng)程序已在存儲(chǔ)器中時(shí),首先根據(jù)程序入口取出第一條指令,為此要發(fā)出指令地址及控制信號(hào)。然后不斷取出第2,3,…條指令。
2.分析指令
或叫解釋指令、指令譯碼等。是對(duì)當(dāng)前取得的指令進(jìn)行分析,指出它要求作什么操作,并產(chǎn)生相應(yīng)的操作控制命令,如果參與操作的數(shù)據(jù)在存儲(chǔ)器中,還需要形成操作數(shù)地址。
3.執(zhí)行指令
根據(jù)分析指令時(shí)產(chǎn)生的“操作命令”和“操作數(shù)地址”形成相應(yīng)的操作控制信號(hào)序列,通過(guò)CPU及輸入輸出設(shè)備的執(zhí)行,實(shí)現(xiàn)每條指令的功能,其中還包括對(duì)運(yùn)算結(jié)果的處理以及下條指令地址的形成。
計(jì)算機(jī)不斷重復(fù)順序執(zhí)行上述三種基本操作:取指、分析、執(zhí)行;再取指、再分析、再執(zhí)行……,如此循環(huán),直到遇到停機(jī)指令或外來(lái)的干預(yù)為止。
部件或設(shè)備發(fā)出:
(1)“中斷請(qǐng)求”信號(hào)待CPU執(zhí)行完當(dāng)前指令后,響應(yīng)該請(qǐng)求,中止當(dāng)前執(zhí)行的程序,轉(zhuǎn)去執(zhí)行中斷程序。當(dāng)處理完畢后,再返回原程序繼續(xù)運(yùn)行下去。
(2)DMA請(qǐng)求信號(hào)等CPU完成當(dāng)前機(jī)器周期操作后,暫停工作,讓出總線給I/O設(shè)備,在完成I/O設(shè)備與存儲(chǔ)器之間的傳送數(shù)據(jù)操作后,CPU從暫時(shí)中止的機(jī)器周期開(kāi)始繼續(xù)執(zhí)行指令。4.控制程序和數(shù)據(jù)的輸入與結(jié)果輸出
根據(jù)程序的安排或人的干預(yù),在適當(dāng)?shù)臅r(shí)候向輸入輸出設(shè)備發(fā)出一些相應(yīng)的命令來(lái)完成I/O功能,這實(shí)際上也是通過(guò)執(zhí)行程序來(lái)完成的。5.對(duì)異常情況和某些請(qǐng)求的處理6.1.2控制器的組成1.程序計(jì)數(shù)器(PC) 即指令地址寄存器。在某些計(jì)算機(jī)中用來(lái)存放當(dāng)前正在執(zhí)行的指令地址;而在另一些計(jì)算機(jī)中則用來(lái)存放即將要執(zhí)行的下一條指令地址;而在有指令預(yù)取功能的計(jì)算機(jī)中,一般還需要增加一個(gè)程序計(jì)數(shù)器用來(lái)存放下一條要取出的指令地址。2.指令寄存器(IR) 用以存放當(dāng)前正在執(zhí)行的指令,以便在指令執(zhí)行過(guò)程中,控制完成一條指令的全部功能。3.指令譯碼器或操作碼譯碼器(ID)
對(duì)指令寄存器中的操作碼進(jìn)行分析解釋,產(chǎn)生相應(yīng)的控制信號(hào)。
4.脈沖源及啟停線路(CLK) 脈沖源產(chǎn)生一定頻率的脈沖信號(hào),作為整個(gè)機(jī)器的時(shí)鐘脈沖,是機(jī)器周期和工作脈沖的基準(zhǔn)信號(hào)。在機(jī)器剛加電時(shí),還應(yīng)產(chǎn)生一個(gè)總清信號(hào)(reset)。 啟停線路保證可靠地送出或封鎖時(shí)鐘脈沖,控制時(shí)序信號(hào)的發(fā)生或停止,從而啟動(dòng)機(jī)器工作或使之停機(jī)。5.時(shí)序控制信號(hào)形成部件(CON)
當(dāng)機(jī)器啟動(dòng)后,在CLK時(shí)鐘作用下,根據(jù)當(dāng)前正在執(zhí)行的指令的需要,產(chǎn)生相應(yīng)的時(shí)序控制信號(hào),并根據(jù)被控功能部件的反饋信號(hào)調(diào)整時(shí)序控制信號(hào)。
即指令地址寄存器。存放當(dāng)前正在執(zhí)行的指令地址或下一條指令地址。指令地址形成:(PC)+1->PC?;?轉(zhuǎn)移指令修改其內(nèi)容用以存放當(dāng)前正在執(zhí)行的指令對(duì)指令寄存器中的操作碼進(jìn)行分析解釋,產(chǎn)生相應(yīng)的控制信號(hào)。脈沖源產(chǎn)生一定頻率的脈沖信號(hào)作為整個(gè)機(jī)器的時(shí)鐘脈沖,是機(jī)器周期和工作脈沖的基準(zhǔn)信號(hào)。根據(jù)當(dāng)前正在執(zhí)行的指令的需要,產(chǎn)生相應(yīng)的時(shí)序控制信號(hào)圖6.1控制器基本組成框圖1、控制器包括哪幾個(gè)組成部分,各個(gè)部分的功能是什么?2、控制器需要向哪些邏輯電路發(fā)送控制信號(hào)?各發(fā)送哪些控制信號(hào)?1.組成控制器的基本電路計(jì)算機(jī)中采用的電路,基本上分為兩種類型。
一類是具有記憶功能的觸發(fā)器以及由它組成的寄存器、計(jì)數(shù)器和存儲(chǔ)單元等。
一類是沒(méi)有記憶功能的門電路及由它組成的加法器、算術(shù)邏輯運(yùn)算單元(ALU)和各種邏輯電路等。6.1.3指令執(zhí)行過(guò)程圖6.2記憶電路2.指令執(zhí)行過(guò)程舉例數(shù)據(jù)通路:控制器組成:圖6.1
運(yùn)算器組成:圖6.4
中央處理器組成:圖6.6一條加法指令的執(zhí)行過(guò)程:指令格式:rs,rd,rs1為通用寄存器地址;imm(或disp)為立即數(shù)(或位移量)。加法指令功能:(rs)+[(rs1)+disp]->rd取指令計(jì)算地址取數(shù)運(yùn)算送結(jié)果劃分機(jī)器周期的原則:總線不沖突.(時(shí)序圖)返回指令執(zhí)行圖6.1控制器基本組成框圖返回指令執(zhí)行圖6.4運(yùn)算器框圖返回指令執(zhí)行返回指令執(zhí)行取指令:PC→ABW/R=0,M/IO=1;DB→IR;PC+1計(jì)算地址rsl→GR,(rsl)→ALU,disp→ALU;“+”;ALU→AR返回指令執(zhí)行返回指令執(zhí)行取數(shù):
AR→ABW/R=0M/IO=1DB→DR返回指令執(zhí)行運(yùn)算送結(jié)果:
rs→GR(rs)→ALUDR→ALU“+”:rd→GRALU→rd置N,Z,V,C返回指令執(zhí)行取指令:PC→ABW/R=0,M/IO=1;DB→IR;PC+1計(jì)算地址rsl→GR,(rsl)→ALU,disp→ALU;“+”;ALU→AR取數(shù):
AR→ABW/R=0M/IO=1DB→DR運(yùn)算送結(jié)果:
rs→GR(rs)→ALUDR→ALU“+”:rd→GRALU→rd置N,Z,V,C2)條件轉(zhuǎn)移指令的執(zhí)行過(guò)程指令功能:根據(jù)N,Z,V,C的狀態(tài),決定是否轉(zhuǎn)換。如轉(zhuǎn)移條件成立,則轉(zhuǎn)移到本條指令所指定的地址,否則順序執(zhí)行下一條指令。
指令執(zhí)行步驟:
(1)從存儲(chǔ)器取指令,送入指令寄存器,并進(jìn)行操作碼譯碼。程序計(jì)數(shù)器加1,如不轉(zhuǎn)移,即為下一條要執(zhí)行的指令地址。本操作對(duì)所有指令都是相同的。
(2)如轉(zhuǎn)移條件成立,根據(jù)指令規(guī)定的尋址方式計(jì)算有效地址,轉(zhuǎn)移指令經(jīng)常采用相對(duì)尋址方式,此時(shí)轉(zhuǎn)移地址=PC+disp。此處PC是指本條指令的地址,而在上一機(jī)器周期已執(zhí)行PC+1操作,因此計(jì)算時(shí)應(yīng)取原PC值,或?qū)\(yùn)算進(jìn)行適當(dāng)修正。最后將轉(zhuǎn)移地址送PC。控制信號(hào): PC→ALU disp→ALU
“+” ALU→PC其他指令的控制信號(hào)也按同樣方法分析,根據(jù)每條指令的功能確定所需的機(jī)器周期數(shù),并得出每個(gè)機(jī)器周期所需要的控制信號(hào),最后將所有的控制信號(hào)進(jìn)行綜合簡(jiǎn)化。控制器的功能就是按每條指令的要求產(chǎn)生所需的控制信號(hào)。因此在設(shè)計(jì)控制器時(shí)要求系統(tǒng)設(shè)計(jì)師提供一個(gè)完整的無(wú)二義性的指令系統(tǒng)說(shuō)明書(shū)。
產(chǎn)生控制信號(hào)一般有微程序控制和硬布線控制兩種方法。6.2微程序控制計(jì)算機(jī)的基本工作原理6.2.1微程序控制的基本概念1.微操作(微命令)
實(shí)現(xiàn)一條指令的功能按一定次序執(zhí)行一系列基本操作,這些基本操作稱為~。微操作是指不可再分解的操作,進(jìn)行微操作需要相應(yīng)的控制信號(hào)(稱為微操作控制信號(hào)或微操作命令)
例如,前面講到的加法指令,分成四步(取指令、計(jì)算地址、取數(shù)、加法運(yùn)算)完成,每一步實(shí)現(xiàn)若干個(gè)微操作。2.微指令
由同時(shí)發(fā)出的控制信號(hào)所執(zhí)行的一組微操作稱為微指令,它含控制命令(信號(hào))與下一條執(zhí)行的微指令地址。
將一條機(jī)器指令分成若干條微指令,按次序執(zhí)行這些微指令,就可以實(shí)現(xiàn)指令的功能。3.微程序
執(zhí)行一條機(jī)器指令所對(duì)應(yīng)的多條微指令構(gòu)成一段微程序。
如:加法指令“addrd/rs,imm[rs1]”所對(duì)應(yīng)的微程序由以下四條微指令組成一段微程序:
取指微指令 計(jì)算有效地址微指令 取數(shù)微指令 運(yùn)算微指令微程序段中各條微指令既可連續(xù)存儲(chǔ)、也可分散存儲(chǔ)。4、控制存儲(chǔ)器(CS:ControlStore)控制字段下一條微指令地址字段 控制存儲(chǔ)器的工作原理依據(jù)從內(nèi)存中讀取的指令的操作碼,找到與該條機(jī)器指令相對(duì)應(yīng)的一段微程序的入口地址,并按下址字段提供的微地址逐條從控制存儲(chǔ)器中讀出微指令,由控制字段提供的微命令控制計(jì)算機(jī)各功能部件工作(接收、輸出、執(zhí)行算術(shù)或邏輯運(yùn)算)。執(zhí)行機(jī)器指令的實(shí)質(zhì)是什么?執(zhí)行一段微程序微程序←微指令←微操作(微命令)←控制信號(hào)微指令的格式存放所有微程序的存儲(chǔ)器。它可以用只讀存儲(chǔ)器實(shí)現(xiàn)。6.2.2實(shí)現(xiàn)微程序控制的基本原理1.控制信號(hào)返回控制信號(hào)
以執(zhí)行一條加法指令為例,它由四條微指令解釋執(zhí)行,一條微指令中的所有控制信號(hào)是同時(shí)發(fā)出的。每條微指令所需的控制信號(hào)如下:
(2)計(jì)算地址微指令
①取兩個(gè)源操作數(shù)(計(jì)算地址用):
rsl→GR(8),(rsl)→ALU(10),disp→ALU(4)。②加法運(yùn)算:“+”(13)。③有效地址送地址寄存器:ALU→AR(19)。(1)取指微指令
①指令地址送地址總線:PC→AB(1)②發(fā)訪存控制命令,ADS(21),M/IO=1(22),
W/R=0(23)。從存儲(chǔ)器取指令送數(shù)據(jù)總線。③指令送指令寄存器:DB→IR(5)④程序計(jì)數(shù)器+1:PC+1(3)
(3)取數(shù)微指令①數(shù)據(jù)地址送地址總線:AR→AB(20)。②發(fā)訪存控制命令:ADS(21),M/IO(22),W/R(23)。由存儲(chǔ)器將數(shù)據(jù)送數(shù)據(jù)總線DB。③數(shù)據(jù)送數(shù)據(jù)寄存器:DB→DR(6)(4)加法運(yùn)算和送結(jié)果微指令
①兩源操作數(shù)送ALU:rs→GR(9),(rs)→ALU(11);DR→ALU(12)。②加法運(yùn)算:“+”(13)③送結(jié)果;ALU→GR(17)微指令如何產(chǎn)生控制信號(hào)?
微指令最簡(jiǎn)單的組成形式:
將每個(gè)控制信號(hào)用一個(gè)控制位來(lái)表示,當(dāng)該位為“1”時(shí),定義為有控制信號(hào),當(dāng)該位為“0”時(shí),沒(méi)有控制信號(hào)。W/R(寫(xiě):1;讀:0)控制存儲(chǔ)器容量為4K字,則每條微指令還需要12位來(lái)表示下址??刂拼鎯?chǔ)器的容量取決于實(shí)現(xiàn)指令系統(tǒng)所需的微程序長(zhǎng)度。
圖6.7為加法指令的四條微指令編碼,每一小格表示一位(二進(jìn)制),空格表示0,第24位到第35位為下址。假設(shè)四條微指令的地址如下:(取指微指令下址XXX為微程序入口地址)取指微指令:1000Q 計(jì)算有效地址微指令:1001Q(加法指令入口地址)取數(shù)微指令:1002Q 計(jì)算并存數(shù)微指令:1003Q圖6.7加法指令的微指令編碼微程序用流程圖來(lái)表示方框:表示微指令右下角的數(shù)字:表示下址上方的數(shù)字:微指令的地址圖6.8微程序流程圖舉例微程序控制器的基本工作原理:
當(dāng)指令取入IR中以后,根據(jù)操作碼進(jìn)行譯碼,得到相應(yīng)指令的第一條微指令的地址。指令譯碼部件可用只讀存儲(chǔ)器組成,將操作碼作為只讀存儲(chǔ)器的輸入地址,該單元的內(nèi)容即為相應(yīng)的微指令在控制存儲(chǔ)器中的地址。據(jù)根控制存儲(chǔ)器中的地址從控制存儲(chǔ)器取出微指令,并將它存放在微指令寄存器中。控制字段各位的輸出通過(guò)連接線直接與受控制的門相連,于是就提供了在本節(jié)所提出的控制信號(hào)。2.微程序控制器時(shí)序控制信號(hào)形成部件圖6.9微程序控制器簡(jiǎn)化框圖3、時(shí)序信號(hào)及工作脈沖的形成分析(P126)圖6.10中輸出與輸入波形之間的關(guān)系結(jié)論:CLK2二分頻---得到CLKCLK二分頻---得到T1T1反相---得到T2時(shí)序圖兩個(gè)工作脈沖的疊加信號(hào)T2的末尾產(chǎn)生一個(gè)CP,用來(lái)保存計(jì)算結(jié)果或接收傳送的數(shù)據(jù)及指令等。T1的末尾產(chǎn)生另一個(gè)工作脈沖。4.電路配合中的常見(jiàn)問(wèn)題1)電路延遲引起的波形畸變
圖6.11符合電路及波形F/F無(wú)延遲CLK無(wú)畸變F/F有延遲CLK有畸變圖6.12延遲引起的毛刺2)機(jī)器周期的確定
(1)機(jī)器周期應(yīng)大于等于一條微指令中執(zhí)行時(shí)間最長(zhǎng)的微操作。主要考慮存儲(chǔ)器訪問(wèn)時(shí)間和一次算術(shù)運(yùn)算所需的時(shí)間。
(2)機(jī)器周期的延長(zhǎng)如圖6.5,信號(hào)來(lái)自存儲(chǔ)器,若無(wú)信號(hào)時(shí),CPU在將插入等待脈沖,延長(zhǎng)一個(gè)或一個(gè)以上T2節(jié)拍信號(hào),等待存儲(chǔ)器訪問(wèn)的完成。圖6.13觸發(fā)器之間傳送信息的電路3)時(shí)鐘脈沖CLK和工作脈沖CP的標(biāo)準(zhǔn)性當(dāng)滿足cond條件時(shí),才產(chǎn)生CP—B和CP-C信號(hào)。CP脈沖不受控制,總是作用在觸發(fā)器上,但當(dāng)條件不成立時(shí),使觸發(fā)器處于保持狀態(tài),而當(dāng)條件成立時(shí),接受新?tīng)顟B(tài)。打入脈沖的同時(shí)性:在控制打入脈沖的機(jī)器中,總是盡量將CP信號(hào)送到控制門的最后一級(jí)。以免延遲造成失真和不同步。圖6.14CP脈沖在電路中的安排5.微程序控制計(jì)算機(jī)的工作過(guò)程簡(jiǎn)單的總結(jié)1)機(jī)器加電后,首先由reset信號(hào)在PC內(nèi)置入開(kāi)機(jī)后執(zhí)行的第一條指令的地址,同時(shí)在微指令寄存器內(nèi)置入一條“取指”微指令,并將其他一些有關(guān)的狀態(tài)位或寄存器置于初始狀態(tài)。當(dāng)電壓達(dá)到穩(wěn)定值后,自動(dòng)啟動(dòng)機(jī)器工作,產(chǎn)生節(jié)拍電位T1,T2和CP。2)機(jī)器開(kāi)始執(zhí)行程序,不斷地取出指令、分析指令、執(zhí)行指令。程序可以存放在固定存儲(chǔ)器中,也可以利用一小段引導(dǎo)程序(在固存中)將要執(zhí)行的程序和數(shù)據(jù)從外部設(shè)備調(diào)入主存。3)實(shí)現(xiàn)各條指令的微程序存放在微程序控制器中 當(dāng)前正在執(zhí)行的微指令從微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和數(shù)據(jù)的傳送,并進(jìn)行相應(yīng)的處理。當(dāng)遇到停機(jī)指令或外來(lái)停機(jī)命令時(shí),應(yīng)該待當(dāng)前這條指令執(zhí)行完再停機(jī)或至少在本機(jī)器周期結(jié)束時(shí)再停機(jī)。6.3微程序設(shè)計(jì)技術(shù)
在實(shí)際進(jìn)行微程序設(shè)計(jì)時(shí),要考慮下面三個(gè)問(wèn)題:(1)如何縮短微指令字長(zhǎng);(2)如何減少微程序長(zhǎng)度;(3)如何提高微程序的執(zhí)行速度。
6.3.1微指令控制字段的編譯法微指令的編碼,就是對(duì)微指令的控制字段采用的表示方法。1.直接控制法(不譯碼法)操作控制字段中的每一位代表一個(gè)微命令。
“1”-有效,“0”-無(wú)效。優(yōu)點(diǎn):簡(jiǎn)單直觀,輸出直接用于控制缺點(diǎn):微指令字較長(zhǎng),因而使控制存儲(chǔ)器容量較大。2.字段直接編譯法(使用較普遍)
微周期:是一條微指令所需的執(zhí)行時(shí)間。如果有若干個(gè)(一組)微命令,在每次選擇使用它們的微周期內(nèi),只有一個(gè)微命令起作用,那么這若干個(gè)微命令是互斥的。選擇互斥的微命令入同組分組編碼,用微命令譯碼器譯碼控制。如:PC-G、ALU-G、R0-G、R1-G、R2-G
例:字段長(zhǎng)度為3位時(shí),最多只能表示7個(gè)互斥的微命令,通常代碼000表示不發(fā)微命令。字段長(zhǎng)度n與所能表示的微命令數(shù)m的關(guān)系:m=2n-1優(yōu)點(diǎn):縮短了微指令長(zhǎng)度。代價(jià):在微指令寄存器的輸出端,為該字段增加一個(gè)譯碼器,該譯碼器的輸出即為原來(lái)的微命令。圖6.16字段直接編譯法3、字段間接編譯法
如果在字段直接編譯法中,還規(guī)定一個(gè)字段的某些微命令,要兼由另一字段中的某些微命令來(lái)解釋,稱為字段間接編譯法。優(yōu)點(diǎn):進(jìn)一步減少了指令長(zhǎng)度。缺點(diǎn):削弱微指令的并行控制能力。A受B控制,B發(fā)b1微命令時(shí),字段A發(fā)出a1,1~a7,1中的一個(gè)微命令。B發(fā)b2微命令時(shí),字段A發(fā)出a1,2~a7,2中的一個(gè)微命令。4.常數(shù)源字段供設(shè)計(jì)者在填寫(xiě)微指令時(shí)作為要使用的常數(shù)E;參與其它控制字段的間接編碼。適用于擴(kuò)充定義零星、不常用的微操作。6.3.2微程序流的控制基本概念現(xiàn)行微指令:當(dāng)前正在執(zhí)行的微指令?,F(xiàn)行微地址:現(xiàn)行微指令所在的控制存儲(chǔ)器單元的地址。后繼微指令:下一條要執(zhí)行的微指令。后繼微地址:后繼微指令所在的控制存儲(chǔ)器單元地址。微程序流控制:當(dāng)前微指令執(zhí)行完畢后,產(chǎn)生后繼微指令的微地址的方法。1、增量與下址字段結(jié)合產(chǎn)生后繼微指令地址的方法
A)微程序入口:首條微指令,由專門硬件電路產(chǎn)生B)順序執(zhí)行:后繼微地址=現(xiàn)行微地址+1C)轉(zhuǎn)移:后繼微地址=現(xiàn)行微地址+轉(zhuǎn)移條件譯碼(相對(duì)轉(zhuǎn)移量)D)由操作碼產(chǎn)生后繼地址在圖中,μPC兼作控制存儲(chǔ)器的地址寄存器,輸入有四個(gè)來(lái)源。下址字段僅有兩位,其功能是選擇三個(gè)輸入源中的一個(gè)作為μPC的輸入,而微程序入口是由專門的硬件產(chǎn)生的,不受下址字段控制。優(yōu)點(diǎn):可使微指令的下址字段很短,僅起選擇作用。缺點(diǎn):微程序轉(zhuǎn)移很不靈活,使得微程序在控存中的物理空間分配相當(dāng)困難。產(chǎn)生后繼微地址的基本方式增量與下址字段結(jié)合產(chǎn)生后繼微地址微指令的下址字段分成兩部分:
轉(zhuǎn)移控制字段BCF和轉(zhuǎn)移地址字段BAF,
BCF控制轉(zhuǎn)移條件,BAF控制轉(zhuǎn)移的目標(biāo)地址。當(dāng)條件成立時(shí),微程序要轉(zhuǎn)移,將BAF送μPC,否則順序執(zhí)行下一條微指令(μPC+1)。執(zhí)行微程序條件轉(zhuǎn)移時(shí),決定轉(zhuǎn)移與否的硬件條件有好幾種。由BCF定義的八個(gè)微命令見(jiàn)表6.2。BCF=0,順序執(zhí)行微命令,μPC+1為后繼微地址。BCF=4;測(cè)試循環(huán)微命令,假如CT≠0,表示需要繼續(xù)執(zhí)行循環(huán)微命令,將循環(huán)人口微地址從BAF送μPC。假如CT=0,表示循環(huán)結(jié)束,后繼微地址為μPC+1。本條微命令同時(shí)完成CT-1操作。BCF=5,轉(zhuǎn)微子程序微命令,把微子程序入口地址從BAF送μPC,從而實(shí)現(xiàn)轉(zhuǎn)移。在轉(zhuǎn)移之前要把該條微指令的下一地址(μPC+1)送入返回寄存器RR之中。BCF=6,返回微命令,把RR中的返回微地址送入μPC,從而實(shí)現(xiàn)從微子程序返回到原來(lái)的微程序。BCF=7,操作碼產(chǎn)生后繼微地址的微命令,這是取指后,按現(xiàn)行指令執(zhí)行的第一條微指令。圖6.18“增量與下址字段”方式的原理圖BCF=1,條件轉(zhuǎn)移微命令,當(dāng)運(yùn)算結(jié)果為0時(shí),將BAF送μPC,否則μPC+l→μPCBCF=3,無(wú)條件轉(zhuǎn)移微命令,將BAF送μPC。BCF=2,條件轉(zhuǎn)移微命令,當(dāng)運(yùn)算結(jié)果溢出時(shí),將BAF送μPC,否則μPC+1→μPC
BAF的長(zhǎng)度有兩種情況:①與μPC的位數(shù)相等;可以從控制存儲(chǔ)器的任一單元取微指令。
特點(diǎn):轉(zhuǎn)移靈活,但增加了微指令的長(zhǎng)度.②比μPC短;考慮到轉(zhuǎn)移點(diǎn)在μPC附近,或者在控制存儲(chǔ)器的某區(qū)域內(nèi),所以由原來(lái)的μPC的若干位與BAF組合成轉(zhuǎn)移微地址。
特點(diǎn):轉(zhuǎn)移地址受到限制,但可縮短微指令長(zhǎng)度。
2.多路轉(zhuǎn)移方式
一條微指令存在多個(gè)轉(zhuǎn)移分支的情況稱為多路轉(zhuǎn)移。后繼微地址的產(chǎn)生條件:運(yùn)算結(jié)果所置的標(biāo)志位N、Z、V、C等,計(jì)數(shù)器狀態(tài),通據(jù)通路狀態(tài)。
例如:根據(jù)某些硬件狀態(tài)來(lái)決定后繼微地址。根據(jù)一種狀態(tài)(非0即1)來(lái)決定微地址可以有兩種情況,即兩路轉(zhuǎn)移;而根據(jù)兩種狀態(tài)來(lái)決定微地址可以有四種情況,即四路轉(zhuǎn)移。四路轉(zhuǎn)移涉及微地址的兩位,一般就定在微地址的最后兩位,也就是說(shuō)當(dāng)執(zhí)行轉(zhuǎn)移微指令時(shí),根據(jù)條件可轉(zhuǎn)移到四個(gè)微地址中的一個(gè),這四個(gè)微地址的高位部分相等,僅是最低兩位不同。優(yōu)點(diǎn):實(shí)現(xiàn)多路轉(zhuǎn)移可減少微程序的長(zhǎng)度。
3.微中斷
微中斷與程序中斷的概念相似,當(dāng)某一條件滿足時(shí),發(fā)出微中斷請(qǐng)求信號(hào),CPU在完成現(xiàn)行指令的微程序后響應(yīng)該中斷請(qǐng)求,進(jìn)入微中斷處理程序。該微程序的入口地址(硬件產(chǎn)生)即為剛剛執(zhí)行的微程序的后繼微地址。
設(shè)計(jì)人員在進(jìn)行微程序設(shè)計(jì)時(shí),已安排好微中斷處理程序在控制存儲(chǔ)器的位置,因此該微程序段的入口地址是已知的。當(dāng)CPU響應(yīng)微中斷請(qǐng)求時(shí),由微中斷程序的入口地址。當(dāng)中斷處理完畢后,再返回到原來(lái)被中斷的程序。這也是產(chǎn)生后繼微地址的一種情況。微指令的格式大體上可分成兩類:水平型微指令和垂直型微指令。
1.水平型微指令特點(diǎn):在一條微指令中定義并執(zhí)行多個(gè)并行操作微命令。一般格式為:
控制字段|判別測(cè)試字段|下地址字段
在實(shí)際應(yīng)用中,直接控制法、字段編譯法(直接、間接編譯法)經(jīng)常應(yīng)用在同一條水平型微指令中。從速度來(lái)看,直接控制法最快,字段編譯法要經(jīng)過(guò)譯碼,所以會(huì)增加一些延遲時(shí)間。6.3.3微指令的格式2.垂直型微指令
在微指令中設(shè)置有微操作碼字段,采用微操作碼編譯法,由微操作碼規(guī)定微指令的功能,稱為垂直型微指令。微操作碼微操
溫馨提示
- 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年度智能路燈控制系統(tǒng)采購(gòu)與安裝合同4篇
- 二零二五年度食品安全檢測(cè)合同:某檢測(cè)機(jī)構(gòu)為實(shí)現(xiàn)食品安全目標(biāo)約定檢測(cè)范圍、標(biāo)準(zhǔn)、費(fèi)用等事項(xiàng)3篇
- 二零二五版高端裝備制造業(yè)關(guān)鍵部件購(gòu)銷合同3篇
- 二零二五年度電子信息產(chǎn)品購(gòu)銷及知識(shí)產(chǎn)權(quán)保護(hù)合同3篇
- 2025年水果種植與電商直播銷售合作合同模板3篇
- 2025年度環(huán)保型臨時(shí)車輛租賃服務(wù)合同4篇
- 二零二五年電商直播帶貨主播合作協(xié)議范本3篇
- 二零二五年度高新技術(shù)研發(fā)貸款合同與專利申請(qǐng)協(xié)議3篇
- 二零二五年度房地產(chǎn)項(xiàng)目履約擔(dān)保合同范本4篇
- 二零二五年度民族特色餐廳經(jīng)營(yíng)合作協(xié)議2篇
- 骨科手術(shù)后患者營(yíng)養(yǎng)情況及營(yíng)養(yǎng)不良的原因分析,骨傷科論文
- GB/T 24474.1-2020乘運(yùn)質(zhì)量測(cè)量第1部分:電梯
- GB/T 12684-2006工業(yè)硼化物分析方法
- 定崗定編定員實(shí)施方案(一)
- 高血壓患者用藥的注意事項(xiàng)講義課件
- 特種作業(yè)安全監(jiān)護(hù)人員培訓(xùn)課件
- (完整)第15章-合成生物學(xué)ppt
- 太平洋戰(zhàn)爭(zhēng)課件
- 封條模板A4打印版
- T∕CGCC 7-2017 焙烤食品用糖漿
- 貨代操作流程及規(guī)范
評(píng)論
0/150
提交評(píng)論