版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第十章控制單元設(shè)計計算機組成原理2006年8月28日10.1組合邏輯設(shè)計以這種設(shè)計方式,CU本質(zhì)上是一個組合邏輯電路,它將輸入邏輯信號轉(zhuǎn)換為一組輸出控制信號,又稱為硬連線方式。10.1.1設(shè)計方法1.列出微操作序列的操作時間表每一條指令都可分解為一個微操作序列。由前已寫出的幾條指令的微操作序列可看出,每個微操作控制信號的產(chǎn)生由指令的操作碼,尋址方式、時序信號、狀態(tài)條件等決定。根據(jù)這些條件即可構(gòu)成產(chǎn)生每一個控制信號的邏輯電路。圖10.1所示為產(chǎn)生ALU→LT的電路示意。將這些電路集中起來,就構(gòu)成了控制單元CU。但是,因為不同指令的微操作序列中有相同的控制信號,因此,需將相同的控制信號綜合在一起。&FTP0圖10-1產(chǎn)生ALULT電路例如:BUS→MAR控制信號,參照上章的幾條微操作序列,找出出現(xiàn)BUS→MAR的地方和條件有:公操作:FTP0ADDDTP0(MD=1)
SUBSTP0(MS=2)
DTP0(MD=4)
DTP1(MD=4)
INCDTP0(MD=3)
DTP0(MD=3)2.綜合合并產(chǎn)生單一控制信號的邏輯表達式BUS→MAR=FTP0+DTP0ADD(MD=1)+STP0SUB(MS=2)+DTP0SUB(MD=4)+DT’P1SUB(MD=4)+P0INC(MD=3)+DT’P0INC(MD=3)+……類似有1C0=FTP0+STP0SUB(MS=2)+DTP0SUB(MD=4)+DTP0INC(MD=3)+ETP0INC+ETP0JMP(MS=2)+……從上面的例子可以看出,微操作控制信號是周期、節(jié)拍、指令碼及其他條件的函數(shù)。上面寫出的微操作控制信號的邏輯表達式是根據(jù)僅有的幾條指令寫出的,如果指令條數(shù)增多,其邏輯表達式可能還要長。實際機器指令往往有幾十條到幾百條,所在整個機器的微操作控制信號很多,而且每個微操作信號的邏輯表達式中包含的項數(shù)也很多。所以,還須進行邏輯化簡、整理、以得到最簡的合理表達式。3.化簡問題,可采用“數(shù)字邏輯”課程中介紹的各種方法?;喌哪康模皇菧p少引線,減少元器件數(shù),使成本最低;二是使邏輯級數(shù)最少,以減少延遲時間,提高速度。4.邏輯實現(xiàn)經(jīng)過化簡以后的邏輯表達式即可用邏輯電路實現(xiàn)。圖10.2是產(chǎn)生BUS→MAR的邏輯電路示意圖。
圖5.31硬布線控制器結(jié)構(gòu)方框圖來自指令操作碼(OP)譯碼器的輸出Im;
來自執(zhí)行部件的反饋信息Bj來自時序產(chǎn)生器的時序信號,包括節(jié)拍電位信號M和節(jié)拍脈沖信號T
邏輯網(wǎng)絡(luò)N的輸出信號就是微操作控制信號,它用來對執(zhí)行部件進行控制。
硬布線控制器的基本原理:C=f(Im,Mi,Tk,Bj)1、組合邏輯控制單元框圖(1).CU外特性CU由組合邏輯網(wǎng)絡(luò)組成,可以是組合邏輯電路或PLA等。它的輸入信號主要有:(1)指令譯碼器輸出。包括指令OP和尋址方式譯碼器輸出。因為不同指令需要不同的微操作控制信號,必須由當(dāng)前執(zhí)行的指令的OP決定。同時,在執(zhí)行不同尋址方式取不同操作數(shù)時,應(yīng)有尋址方式?jīng)Q定執(zhí)行相應(yīng)的微操作。(2)時序信號,當(dāng)指令處于不同的時間段時,執(zhí)行不同的操作,則CU也必須受周期、節(jié)拍信號的控制。(3)標志,由PSW給出,CU需要一些標志來決定CPU應(yīng)該發(fā)出哪些控制信號。組合邏輯網(wǎng)絡(luò)的輸出即為微操作控制信號(微命令)。指令執(zhí)行過程:機器加電后產(chǎn)生的Reset信號將要執(zhí)行的第一條指令的地址裝入PC,并且將FT周期觸發(fā)器置1。當(dāng)復(fù)位信號結(jié)束后,開放時鐘,節(jié)拍發(fā)生器產(chǎn)生節(jié)拍信號,CU則根據(jù)周期觸發(fā)器狀態(tài),節(jié)拍信號產(chǎn)生取指令所需的各個微命令,完成將第一條指令取出送到IR。同時PC+1→PC,準備好下一條指令的地址。然后根據(jù)取出的指令進行相應(yīng)的操作,具體完成本條指令的功能。
·邏輯網(wǎng)絡(luò)的輸入信號來源:
①來自指令操作碼的譯碼輸出信號Im;
②來自執(zhí)行部件的操作反饋信息Bj;
③來自時序產(chǎn)生器的時序信號:·節(jié)拍電位(CPU周期)信號Mi
·節(jié)拍脈沖(時鐘脈沖)信號Tk
·邏輯網(wǎng)絡(luò)的輸出信號:
①微操作控制信號Cn---對執(zhí)行部件進行操作控制;
②其他控制信號---根據(jù)條件變量改變時序發(fā)生器的計數(shù)順序,以縮短指令周期?!辔⒉僮骺刂菩盘朇n是Im、Mi、Tk和Bj的函數(shù),即:
Cn=f(Im,Mi,Tk,Bj)
(2)節(jié)拍信號CLKT0T1T2T3時鐘周期機器周期機器周期T0T1T2T3T0T1T2T3
2.微操作的節(jié)拍安排采用
同步控制方式CPU內(nèi)部結(jié)構(gòu)采用非總線方式一個
機器周期
內(nèi)有
3
個節(jié)拍(時鐘周期)
MDRPC
MARIRACCU時鐘ALU………C1C2C5C9C0C10C3C7C4C6C12C11C8控制信號標志控制信號
(1).安排微操作時序的原則原則一微操作的先后順序不得隨意更改原則二被控對象不同的微操作盡量安排在一個節(jié)拍內(nèi)完成原則三占用時間較短的微操作盡量安排在一個節(jié)拍內(nèi)完成并允許有先后順序(2).取指周期微操作的節(jié)拍安排PCMARM(MAR)MDRMDRIR(PC)+1PC原則二原則二原則三(3).間址周期微操作的節(jié)拍安排M(MAR)MDRMDRAd(IR)T0T1T2T0T1T21ROP(IR)IDAd(IR)MAR1R(4).執(zhí)行周期微操作的節(jié)拍安排①CLA②COM
③SHRT0T1T2T0T1T2T0T1T2AC0AC0L(AC)R(AC)0ACACAC④CSL⑤STP⑥ADDX⑦STAXR(AC)L(AC)AC0ACnT0T1T20GT0T1T2T0T1T2T0T1T2Ad(IR)MARM(MAR)MDR
(AC)+(MDR)ACAd(IR)MARACMDRMDRM(MAR)1R1W⑧LDAX⑨JMPX⑩BANXT0T1T2Ad(IR)MARM(MAR)MDRMDRACT0T1T2T0T1T2Ad(IR)PC1RA0?Ad(IR)+A0?
PCPC(5).中斷周期微操作的節(jié)拍安排T0T1T20MARPCMDRMDRM(MAR)硬件關(guān)中斷向量地址PC中斷隱指令完成1W3、組合邏輯設(shè)計步驟(1).列出操作時間表T2T1T0
FE取指JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記PCMAR1RM(MAR)MDR(PC)+1PCMDRIROP(IR)ID1IND1EXII間址特征
組合邏輯設(shè)計步驟列出操作時間表T2T1T0
IND
間址JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記Ad(IR)MAR1RM(MAR)MDRMDRAd(IR)1EXIND間址周期標志T2T1T0
EX執(zhí)行JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記Ad(IR)MAR1RM(MAR)MDRACMDR(AC)+(MDR)ACMDRM(MAR)MDRAC0AC組合邏輯設(shè)計步驟列出操作時間表1W組合邏輯設(shè)計步驟列出操作時間表T2T1T0
FE取指JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記PCMAR1RM(MAR)MDR(PC)+1PCMDRIROP(IR)ID1IND1EXII1111111111111111111111111111111111111111111111組合邏輯設(shè)計步驟列出操作時間表T2T1T0
IND
間址JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記Ad(IR)MAR1RM(MAR)MDRMDRAd(IR)1EXIND11111111111111111111組合邏輯設(shè)計步驟列出操作時間表T2T1T0
EX執(zhí)行JMPLDASATADDCOMCLA微操作命令信號狀態(tài)條件節(jié)拍工作周期標記Ad(IR)MAR1RM(MAR)MDRACMDR(AC)+(MDR)ACMDRM(MAR)MDRAC0AC1W1111111111111(2).寫出微操作命令的最簡表達式=FE
·T1+IND·T1(ADD+STA+LDA+JMP+BAN)+EX·T1(ADD+LDA)M(MAR)MDR=T1{FE+IND(ADD+STA+LDA+JMP+BAN)+EX(ADD+LDA)}(3).畫出邏輯圖特點
思路清晰簡單明了
龐雜調(diào)試困難修改困難
速度快&&&11&&&&&≥FEINDEXLDAADDJMPBANSTAT1M(MAR)MDR(RISC)&&10.2微程序設(shè)計CU采用組合邏輯設(shè)計,因微操作控制信號全部由硬件產(chǎn)生,所以速度快,可用于構(gòu)成高速的RISC機和巨型機。它的缺點:(1)邏輯實現(xiàn)復(fù)雜(2)不易擴展和修改。采用微程序設(shè)計方法可克服上述缺點。它是利用程序設(shè)計及存儲邏輯的概念,稱為微程序設(shè)計技術(shù)。它解決了設(shè)計的規(guī)整性問題,它將不規(guī)則的微操作命令變成了有規(guī)律的微程序,使控制單元的設(shè)計更科學(xué)合理。存儲邏輯又解決了可修改問題,簡化了控制器的設(shè)計任務(wù),即不易出錯成本又較低;缺點是操作速度比較低。10.2.1微程序設(shè)計思想的產(chǎn)生1951英國劍橋大學(xué)教授Wilkes完成一條機器指令微操作命令1微操作命令2微操作命令n……微指令110100000微指令n微程序00010010存儲邏輯一條機器指令對應(yīng)一個微程序……存入ROM10.2.1微程序控制的基本原理1.基本概念1)微命令和微操作計算機基本可劃分為二大部分——控制部件和執(zhí)行部件。控制器是控制部件,而運算器、存儲器、外部設(shè)備是執(zhí)行部件。微命令——構(gòu)成控制信號序列的最小單位,即微操作控制信號。微操作——執(zhí)行部件接受微命令后所進行的最基本的操作。2)微指令和微周期微指令——若干個微命令的組合。以編碼字的形式放在控存的一個單元中。用來產(chǎn)生一組控制信號。一條微指令有:微操作碼字段,又稱操作控制字段。微地址碼字段,又稱順序控制字段。其它相關(guān)信息,如常數(shù)字段、標志字段等。
微指令周期:從控制存儲器中讀取一條微指令并執(zhí)行這條微指令所需的時間,通常一個微指令周期與一個CPU周期的時間相等.微指令中的微命令可以用節(jié)拍脈沖來同步定時.微周期子周期T1T2T3T4多周期節(jié)拍脈沖T1T2T3T4T1T2T3T4讀微指令執(zhí)行微指令微指令周期CPU周期
CPU周期與微指令周期的關(guān)系3)微程序和微程序微設(shè)計微程序——由微指令組成的程序。微程序設(shè)計是將傳統(tǒng)的程序設(shè)計方法運用到控制邏輯的設(shè)計中??刂七壿嫷谋举|(zhì)是控制計算機內(nèi)部的信息傳送以及它們之間的相互關(guān)系。因此,微程序設(shè)計就是用類似程序設(shè)計的方法,組織和控制計算機內(nèi)部信息的傳送和相互的聯(lián)系。4)控制存儲器存放微程序的存儲器,又稱為微程序存儲器。由于該存儲器主要存放控制命令與下一條要執(zhí)行的微指令地址,所以稱控制存儲器。它們每個單元存放一條微指令代碼。計算機的指令系統(tǒng)是固定的,所以實現(xiàn)指令系統(tǒng)的微程序也是固定的,于是控存可用只讀存儲器實現(xiàn)。10.2.2微程序控制單元及工作原理1.機器指令對應(yīng)的微程序M+1MM+2P+1KK+2PP+2K+1…取指周期微程序?qū)?yīng)LDA操作的微程序?qū)?yīng)STA操作的微程序間址周期微程序中斷周期微程序2.微程序控制單元的基本框圖
微地址
形成部件順序邏輯CMAR地址譯碼控制存儲器標志CLK下地址CMDR至CPU內(nèi)部和系統(tǒng)總線的控制信號OPIR操作控制順序控制微指令基本格式微程序控制單元框圖及工作原理M+1MM+2P+1KK+2PP+2K+1…取指周期微程序?qū)?yīng)
LDA操作的微程序?qū)?yīng)STA
操作的微程序間址周期微程序中斷周期微程序M+1M+2P+1P+2K+1K+2MM轉(zhuǎn)執(zhí)行周期微程序…轉(zhuǎn)取指周期微程序…3.工作原理控存M+1MM+2P+1QQ+2PP+2Q+1…取指周期
微程序?qū)?yīng)
LDA操作的微程序?qū)?yīng)ADD
操作的微程序Q+1Q+2MM+1M+2P+1P+2M………對應(yīng)STA
操作的微程序K+1K+2MKK+2K+1LDAXADDYSTAZ主存STP用戶程序工作原理(1)取指階段MCMARCM(CMAR)CMDR由CMDR發(fā)命令形成下條微指令地址Ad(CMDR)CMARCM(CMAR)CMDR由CMDR發(fā)命令A(yù)d(CMDR)CMARCM(CMAR)CMDR由CMDR發(fā)命令M+1M+2PCMAR1RM(MAR)MDR(PC)+1PCMDRIR0010000M+2…100001M+1M…010010M+2M+1…形成下條微指令地址執(zhí)行取指微程序(取指令微程序的第一條微指令的微地址M)(2)執(zhí)行階段CM(CMAR)CMDR由CMDR發(fā)命令A(yù)d(CMDR)CMARCM(CMAR)CMDR由CMDR發(fā)命令A(yù)d(CMDR)CMARCM(CMAR)CMDR由CMDR發(fā)命令OP(IR)微地址形成部件
CMAR(PCMAR)Ad(CMDR)CMARAd(IR)MAR1RM(MAR)MDRMDRAC00000010P+2
…M執(zhí)行LDA微程序
形成下條微指令地址P+1形成下條微指令地址P+2形成下條微指令地址
M(MCMAR)01000P+2P+1…0001001P+1P…(3)取指階段CM(CMAR)CMDR由CMDR發(fā)命令MCMARPCMAR1R100001M+1M全部微指令存在CM中,程序執(zhí)行過程中只需讀出關(guān)鍵
微指令的操作控制字段如何形成微操作命令
微指令的后繼地址如何形成執(zhí)行取指微程序……10.2.2微程序設(shè)計技術(shù)微程序設(shè)計的關(guān)鍵是如何確定微指令的結(jié)構(gòu)(包括微指令編碼和微地址形成方法)。1.微指令編碼(1)直接表示法---微指令操作控制宇段中的每一位代表一個微命令。
·優(yōu)點:簡單直觀,其輸出可直接用于控制;
·缺點:微指令字較長,因而使控制存儲器容量較大。(2)編碼表示法---把一組相斥性的微命令信號組成一個小組(即一個字段),然后通過小組(字段)譯碼器產(chǎn)生操作控制信號。
·優(yōu)點:可以用較少的二進制信息位表示較多的微命令信號,使微指令字長大大縮短;
·缺點:由于增加了譯碼延時,微程序的執(zhí)行速度略有減慢。(3)混合表示法---把直接表示法與編碼表示法混合使用,以便綜合考慮微指令字長、靈活性和執(zhí)行微程序速度等方面的要求。(例)某機有8條微指令I(lǐng)1-I8,每條微指令所包含的微命令控制信號如下表所示。
a-j分別對應(yīng)10種不同性質(zhì)的微命令信號。假設(shè)一條微指令的控制字段為8位,請安排微指令的控制字段格式。
解:分析表格,(e,f,h)和(b,i,j)對于任何一條微指令,都是相斥性微操作,即不可能在同一個CPU周期中同時發(fā)生這些操作,因此可分別組成兩個小組或兩個字段,然后進行譯碼產(chǎn)生這六個微命令信號。剩下的a,c,d,g四個微命令信號可進行直接控制,其整個微指令控制字段組成如下:
(2)微地址的確定方法在計算機中,微程序以編碼形式按給定的微指令地址存放在控存中相應(yīng)單元,執(zhí)行時,只依次給出各條微指令的地址,就能使微程序連續(xù)執(zhí)行,直至完成為止。要解決微程序的執(zhí)行順序控制,關(guān)鍵在于當(dāng)前微指令執(zhí)行完畢后,如何確定,后續(xù)微指令的地址。后續(xù)微地址的確定,取決于微程序的基本流程。在微程序設(shè)計中充分運用了軟件的程序設(shè)計技術(shù),因而,微程序流程中也有微程序、微程序循環(huán)、微子程序等。■初始微地址的形成--微指令地址的形成此節(jié)討論微指令中地址字段和后繼微地址的形成方法,然后討論如何找到每條機器指令的微程序入口,又如何使微程序連續(xù)執(zhí)行下去。
1)初始微地址的形成每一條機器指令對應(yīng)著一段微程序,這段微程序的入口地址就是初始微地址。由于每條機器指令都先要執(zhí)行取指令操作,所以要有“取機器指令”微程序來取出一條機器指令,這段微程序是公用的,一般安排在0號單元或1號單元開始。取出機器指令后,就要執(zhí)行對應(yīng)這條機器指令的一段微程序,因此要由機器指令操作碼轉(zhuǎn)換成微程序入口地址,這叫做“功能轉(zhuǎn)移”。功能轉(zhuǎn)移有以下幾種方式。①一級功能轉(zhuǎn)移當(dāng)操作碼的位數(shù)與位置是固定時,可直接使操作碼與微地址的部分位相對應(yīng)。例如入口地址=00Q,Q為操作碼。這樣,把控制存儲器零頁的一些單元安排為各段微程序入口地址,再通過無條件轉(zhuǎn)移使這些單元和自己的后續(xù)微程序相連接,這就一次轉(zhuǎn)移成功。②二級功能轉(zhuǎn)移各類指令的操作碼位數(shù)與位置不固定時,可能要分級轉(zhuǎn)移。例如第一次先按指令類型的標志位轉(zhuǎn)移到某條微指令,這次轉(zhuǎn)移先區(qū)分出是哪一大類,如單操作數(shù)指令,或雙操作數(shù)指令。在每一類中操作碼的位數(shù)與位置是固定的,第二次就進一步按機器指令操作碼轉(zhuǎn)移,區(qū)分出是該類機器指令中的哪一條機器指令。
2)后繼微地址的形成找到微程序入口地址后,就可以開始執(zhí)行微程序,每條微指令執(zhí)行完畢都要根據(jù)要求形成后繼微指令的地址。后繼微地址的形成方法對微程序編制的靈活性影響很大。值得指出的是:在微程序中分支流程是很多的,不僅對無條件轉(zhuǎn)移和條件轉(zhuǎn)移要有分支,還有很多指令的微程序中也要有分支。由于每條指令都對應(yīng)一個獨立的微子程序,而且大多數(shù)機器指令都有幾種尋址方式,如果為每條機器指令,每種尋址方式單獨設(shè)置一段微子程序,則微程序太長,需要的控存的存儲容量太大。因此應(yīng)把重復(fù)的部分作為共享的微子程序,由各微程序調(diào)用,這就導(dǎo)致了大量的尋址分支流程。對于尋址分支流程,測試源是機器指令中的尋址方式字段的編碼,按照測試的結(jié)果轉(zhuǎn)到相應(yīng)的尋址操作流程,這是多路分支流程。當(dāng)一條指令執(zhí)行完畢時,就需要對中斷請求等進行測試,若有中斷請求,則程序應(yīng)轉(zhuǎn)向相應(yīng)的處理程序,否則就順序取下一條機器指令。這也是多路分支。
總之,在微程序中分支流程是很多的,因而產(chǎn)生大量的轉(zhuǎn)移,從而使機器指令的執(zhí)行時間增加。為了實現(xiàn)這些轉(zhuǎn)移,微程序控制常用的方法是在微程序中引入條件轉(zhuǎn)移的概念,對微指令系統(tǒng)進行擴充,把一些條件轉(zhuǎn)移的微指令包括進去。轉(zhuǎn)移微指令中除了給出轉(zhuǎn)移地址以外,還要指出需要檢查哪個狀態(tài)標志,條件代碼,或者指令寄存器的哪些位作為產(chǎn)生轉(zhuǎn)移的條件。按這種方法形成微地址,叫做順序轉(zhuǎn)移微地址,或叫增量型微地址。1)增量方式(計數(shù)方式)增量型微地址與一般程序地址相類似,微程序按地址遞增順序一條一條地執(zhí)行微指令,遇到轉(zhuǎn)移時,由微指令指出轉(zhuǎn)移微地址,使微程序按新的順序執(zhí)行。這種微地址的指令格式如下:
微操作控制字段轉(zhuǎn)移方式轉(zhuǎn)移地址順序控制字段
轉(zhuǎn)移方式指明判別條件,轉(zhuǎn)移地址指明轉(zhuǎn)移成功后微程序的去向,不成功則順序執(zhí)行。轉(zhuǎn)移地址的字段位數(shù)較短,一般只有4~8位,這是因為轉(zhuǎn)移地址通常在現(xiàn)行微地址的附近。全機可作為轉(zhuǎn)移判別的條件有多個,但每次只能選擇一個測試判別源,所以一次只允許兩路分支。實現(xiàn)增量方式的微程序控制器如下圖10-6所示。在該控制器中,使用μ
PC其位數(shù)與控存的容量相適應(yīng),由μ
PC給出控存的地址,就可實現(xiàn)從微程序存儲器中順序讀出微指令?!捌鹗己娃D(zhuǎn)移地址發(fā)生器”的任務(wù)有兩個,其一是當(dāng)一條新的機器指令裝入IR時,它就把對應(yīng)的該機器指令的微程序的起始地址裝入μ
PC,μ
PC自動地隨時鐘增加,這就連續(xù)地從控存中讀出微指令,控制信號也就以正確的順序傳送到CPU的各部分。第二個任務(wù)是當(dāng)微指令指示它測試狀態(tài)標志條件代碼或機器指令的某些位時,它就對指定的條件進行測試,滿足轉(zhuǎn)移條件,就把新的地址裝入μ
PC,實現(xiàn)轉(zhuǎn)移;如不滿足轉(zhuǎn)移條件,則不裝入新地址,微程序順序執(zhí)行。所以,每次從微程序存儲器中取出一條新的微指令時,μ
PC都增加,只有下述情況例外。①遇到END微指令時,就把微程序的第1條控制字的地址裝入UPC,開始取指令周期。②當(dāng)一條新的指令裝入IR時,就把該指令的微程序的起始地址裝入μ
PC。③遇到轉(zhuǎn)移微指令,并滿足轉(zhuǎn)移條件時,就把轉(zhuǎn)移地址裝入μPC。在增量方式中,順序控制與一般程序控制很相似,其優(yōu)點是微指令中順序控制字段較短,微程序便于順序執(zhí)行,也便于無條件轉(zhuǎn)移和條件轉(zhuǎn)移。其缺點是增量方式盡管可以對多個測試源進行測試,但是對一條微指令來說只能實現(xiàn)兩路分支,或者是順序執(zhí)行,或者是按轉(zhuǎn)移地址來執(zhí)行,從而不利于提高微程序的執(zhí)行速度。如果要求一次能進行四路轉(zhuǎn)移,則應(yīng)有三個轉(zhuǎn)移地址字段,它又大大增加了微指令的字長。為解決這個問題,須采用其他技術(shù)。這種方式比較適用于速度要求不高的小型、微型機。2)斷定方式——具有下地址域的微指令形成后繼微地址的斷定方式是指后繼微地址可由微程序設(shè)計者指定,或者根據(jù)微指令所測試的結(jié)果直接決定后繼地址全部或部分地址值。這種微地址結(jié)構(gòu)打破了順序地址物理分配方式,也打破了順序執(zhí)行微指令的控制方式。因為每條微指令的地址必須由上一條微指令給出,所以每條機器指令的微程序序列也不一定要求安排在控存的連續(xù)單元之中,從而使得微程序中各微指令的安排十分靈活,給微程序在ROM中的物理分配提供了方便,并可使ROM中的各單元得以充分利用。采用斷定方式的微指令都有一個地址區(qū),這種微指令又叫具有下地址域的微指令。該地址域區(qū)一般分為兩部分,一部分為非測試地址,由程序設(shè)計者直接指定,占高位部分;另一部分為測試地址,由測試結(jié)果確定其地址值,占低位部分。測試地址相當(dāng)于在指定的區(qū)域內(nèi)斷定具體的分支。所依據(jù)的測試狀態(tài)可能是指定的開關(guān)狀態(tài),按鍵狀態(tài),指令的某些位,狀態(tài)字,運算結(jié)果等。
2.微指令格式1)水平型微指令---一次能定義并執(zhí)行多個并行操作微命令的微指令,叫做水平型微指令。
2)垂直型微指令---類似與機器指令的結(jié)構(gòu),由微操作碼決定該條微指令的功能,通常一條微指令中只有1-2個微操作命令,功能簡單。
垂直型微指令字短,但解釋執(zhí)行一條機器指令所需的微指令條數(shù)多。
兩種微指令方式的比較:
·水平型微指令并行操作能力強,效率高,靈活性強。垂直型微指令則較差;
·水平型微指令執(zhí)行一條指令的時間短,垂直型微指令執(zhí)行時間長;
·由水平型微指令解釋指令的微程序,具有微指令字比較長,但微程序短的特點。垂直型微指令則相反,微指令字比較短而微程序長;
·水平型微指令用戶難以掌握,而垂直型微指令與指令比較相似,相對來說,比較容易掌握。
μ
OP測試判別下地址圖10-7斷定方式的微指令格式例題:已知MOV,ADD,COM,ADT四條指令微程序流圖如下:(1)P(1)的條件是指令寄存器OP字段,即IR7,IR6,P(2)的條件碼是進位寄存器CJ,請設(shè)計畫出微程序控制器地址轉(zhuǎn)移邏輯圖。(2)現(xiàn)設(shè)定控制存儲器EPROM容量最大為16字節(jié),其字長符合微指令格式要求。請給微程序流程圖中每條微指令分配當(dāng)前微地址與下一微地址(用二進制編碼給出)。
解:(1)從流程圖看出,P(1)處微程序出現(xiàn)四個分支,對應(yīng)四個微地址。為此用OP碼修改微地址寄存器的最后兩個觸發(fā)器即可。在P(2)處微程序出現(xiàn)2路分支,對應(yīng)兩個微地址,此時的測試條件是進位觸發(fā)器Cj的狀態(tài)。為此用j修改μA2即可。轉(zhuǎn)移邏輯表達式如下:
μ
A0=P1·T4·IR6,μ
A1=P1·T4·IR7,μ
A2=P2·T4·j。由此可畫出微地址轉(zhuǎn)移邏輯。如下圖所示。
解:(2)因EPROM容量為16單元,微地址寄存器4位即可,設(shè)為μA3~μA0,七條微指令地址分配如下表所示,一條微指令只占一個微地址(可直接填寫在流程圖右上角和右下角)。(3)兩種微指令格式的比較①水平型微指令比垂直型微指令并行操作能力強
靈活性強②水平型微指令執(zhí)行一條機器指令所要的微指令數(shù)目少,速度快③水平型微指令用較短的微程序結(jié)構(gòu)換取較長的微指令結(jié)構(gòu)④水平型微指令與機器指令差別大3.微指令的執(zhí)行方式及時序控制微程序計算機的控制是通過一條一條地址執(zhí)行微指令來實現(xiàn)的。執(zhí)行一條微指令的過程分二步。第一步,將微指令從控存中取出,稱取微指令;第二步執(zhí)行微指令所規(guī)定的各個操作。根據(jù)這二步可有二種執(zhí)行方式。(1)串行執(zhí)行方式在這種方式中,取微指令和執(zhí)行微指令按順序進行,在一條微指令取出并執(zhí)行后,才能取下一條微指令。微周期的安排如下:
即從控存讀取微指令的操作與執(zhí)行微指令的數(shù)據(jù)通路操作是順序進行的。假定控制存儲器的讀出時間為TCM,微指令的執(zhí)行時間為TCPU,則微周期TU=TCM+TCPU。該方式中在讀微指令時,數(shù)據(jù)通路是空閑的;在數(shù)據(jù)通路操作時,控存是空閑的如果TCM=1/3~1/2TU,則在執(zhí)行微指令時,就有1/3~1/2左右的額外消耗時間在從控存讀取微指令的時間上,因此,TCM越小越好。(2)并行執(zhí)行方式為了提高微程序的執(zhí)行速度,將從控存讀微指令時與執(zhí)行微指令的操作在時間上重疊起來,在一條微指令執(zhí)行結(jié)束前下一條微指令提前從控存中取出,這就是并行執(zhí)行方式。如下圖。在這種方式下,由于預(yù)取微指令的時間重疊到現(xiàn)行微指令的執(zhí)行時間上,使CPU數(shù)據(jù)通路操作連續(xù)不斷地進行,縮短了微指令周期,提高了執(zhí)行速度。并行執(zhí)行方式提高了微程序的執(zhí)行速度,但是,有一個根本問題要解決,就是如何解決微程序的轉(zhuǎn)移問題。
10.3微程序控制器單元設(shè)計舉例設(shè)計一個微程序控制器,主要用微程序設(shè)計的方法來設(shè)計其微操作序列形成部件。一般可歸納為下列四個步驟:①擬定各條機器指令的操作流程圖,寫出其微操作序列;②根據(jù)全機的微操作序列選用微指令的編碼設(shè)計方案;③根據(jù)各條機器指令的功能編制出相應(yīng)的微程序;④把已編好調(diào)試好的微程序?qū)懭胍粋€可高速讀出的只讀存儲器中。我們還是以前模型機的千條指令為例,來說明微程序控制器的設(shè)計過程。1.列出各條機器指令的微操作序列根據(jù)圖10-2所示的指令流程,列出各條機器指令的微操作序列如下:(1)清除累加器指令CLA的微操作序列(PC)→AR:指令地址送地址寄存器。(PC)→BUS,BUS→MAR(AR)→ABUS,RD:指令地址送地址總線,并發(fā)讀命令。
MAR→ABUS,RDDBUS→MDR,(PC)+1→PC:讀出指令以數(shù)據(jù)總線送數(shù)據(jù)寄存器,程序計數(shù)器加1送PC。
(MDR)→IR→ID:讀出指令送指令寄存器并譯碼
OP→uAR:操作碼經(jīng)微指令地址形成部件送微地址寄存器。
O→AC:“0”送累加器,即清除累加器。(2)加法指令A(yù)DD的微操作序列(PC)→MAR:同前(MAR)→ABUS,RD:同前
DBUS→MDR,(PC)+1→PC:同前(DR)→IR→ID:同前
OP→uAR:同前
IR(ADDR)→MAR:指令中操作數(shù)地址送地址寄存器。這里采用直接地址。(MAR)→ABUS,RD:操作數(shù)地址送地址總線,并發(fā)讀命令。
DBUS→MDR:讀出的操作數(shù)送數(shù)據(jù)寄存器。(MDR)→ALU:讀出的操作數(shù)送算/邏部件。(AC)→ALU:累加器中的數(shù)送算/邏部件。
ADD:加法命令。HALT(V=1):回溢出位V=1時,停機。ALU→AC(V=0):當(dāng)溢出位V=0時,運算結(jié)果送累加器。(3)送存累加器指令STA(即將AC中的內(nèi)容按指令中給出的操作數(shù)地址存入存儲器)的微操作序列。(PC)→MAR:同前
PC→BUS,BUS→MAR(MAR)→ABUS,RD:
DBUS→MDR,(PC)+1→PC(MDR)→IR→IDOP→UARIR(ADDR)→MAR:同前,采用直接地址(MAR)→ABUS:存放操作數(shù)的地址送地址總線。(AC)→MDR:累加器中的結(jié)果送數(shù)據(jù)寄存器。(MDR)→DBUS,WE:結(jié)果送數(shù)據(jù)總線,發(fā)寫命令。(4)無條件轉(zhuǎn)移指令JMP的微操作序列。(PC)→AR:同前
PC→BUS,BUS→MAR
(MAR)→ABUS,RD:同前
DBUS→MDR,(PC)+1→PC:同前(MDR)→IR→ID:同前
OP→μAR:同前
IR(ADDR)→PC,IR(ADDR)→MAR:指令中操作數(shù)地址(此處是直接轉(zhuǎn)移地址)同時送PC和AR。2.進行微指令的編碼設(shè)計(1)直接編碼法上面四條指令共有19個微操作信號,因此,可以采用直接編碼的方法來安排微指令,如下圖10-10所示。直接編碼法微指令的每位代表一個微命令,不要譯碼,故稱為譯法。其優(yōu)點是簡單、直觀、輸出可直接用于控制,又叫直接控制方式。這種方式在任何一個微周期內(nèi),一條微指令可以定義并執(zhí)行多個并行的微命令,故又稱為水平型微指令。但當(dāng)微命令增多時,會導(dǎo)致微指令字加長,使控制存儲器的容量加大。故只適用于微命令數(shù)量不多的機器。由于本設(shè)計例子微命令較少,選用直接控制法。(2)微地址的設(shè)計①直接下地址這是順序執(zhí)行微指令的最有效的辦法之一,即在微指令中用若干位來作為下址字段,當(dāng)本條微指令被取出執(zhí)行時,它的下址字段將指出下一條要執(zhí)行的微指令的地址。②微指令計數(shù)器增量簡稱增量方式。由于微地址的增量為1,故用一個微程序計數(shù)器μPC來作增量器。這種方式可節(jié)省控制存儲器空間,但其執(zhí)行速度慢,靈活性差,只能實現(xiàn)單分支轉(zhuǎn)移,其多路并行轉(zhuǎn)移的功能差。由于本例微指令占用的控制存儲器的空間不大所以采用直接下地址域的方法。
3.微程序的編制在解決了后續(xù)微指令地址形成之后,便可進行微程序設(shè)計。由于模型機僅用了4條機器指令,采用直接尋址時只要19個微命令,共有15條微指令。因此,采用25位字長的直接編碼微指令,其中第0-18位為微操作命令字段,第19-23位為直接下址字段;第24位為測試位,該位為0,表示后繼微地址由下址字段產(chǎn)生。該位為1時,表示程序轉(zhuǎn)移,后繼微地址經(jīng)“狀態(tài)條件”測試后,由微地址形成部件產(chǎn)生,當(dāng)操作碼出現(xiàn)時,機器指令執(zhí)行段微程序入口地址由操作碼產(chǎn)生。模型機幾條指令的微程序如下表所示。
4.微程序裝入控制存儲器當(dāng)上表所示的微程序編好之后,經(jīng)檢測、調(diào)試無誤后,即可寫入高速讀出的只讀存儲器ROM中,得到所需的微程序控制器。為了使讀者對微程序控制器有較深刻的理解,下圖10-11畫出了模型機微程序控制器簡框圖。圖中打圓點的地方,表示有微操作命令輸出。即表示該微地址被選中后與信號輸出線上跨接上一個導(dǎo)通的二極管。其工作過程與表所示微程序一一對應(yīng)。10.4典型CPU--奔騰CPU結(jié)構(gòu)框圖
1.奔騰CPU的結(jié)構(gòu)框圖(1)超標量流水線
超標量流水線是pentium系統(tǒng)結(jié)構(gòu)的核心。它由U和V兩條指令流水線構(gòu)成,每條流水線都有自已的ALU、地址生成電路、與數(shù)據(jù)cache的接口。兩個指令預(yù)取緩沖器,每個都是32字節(jié),負責(zé)由指令cache或主存取指令并放入其中。(2)指令cache和數(shù)據(jù)cache奔騰CPU則分設(shè)指令cache和數(shù)據(jù)cache,各8KB。指令cache是只讀的,以單端口256位(32B)向指令預(yù)取緩沖器提供超長指令字代碼。數(shù)據(jù)cache是可讀可寫的,雙端口,(3)浮點運算部件奔騰CPU內(nèi)部包含了一個8段的流水浮點運算器。(4)動態(tài)轉(zhuǎn)移預(yù)測技術(shù)執(zhí)行轉(zhuǎn)移指令時為了不使流水線斷流,
2.P
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二四前期物業(yè)服務(wù)協(xié)議及社區(qū)文化活動服務(wù)合同3篇
- 2024年高端紅酒代理銷售合同協(xié)議
- 2025年度市場調(diào)研服務(wù)外包合同4篇
- 二零二四年個性化嬰兒護理服務(wù)與月嫂雇傭協(xié)議3篇
- 2025年茶店加盟管理合同范本簡易4篇
- 專業(yè)蝦苗供應(yīng)協(xié)議模板2024年適用版A版
- 2025年度航空器材產(chǎn)品定制采購服務(wù)協(xié)議4篇
- 2025年度城市地下綜合管廊建設(shè)施工合同9篇
- 2025年茶樓茶葉采購與營銷推廣合同范本4篇
- 2024門店承包與區(qū)域市場拓展合同范本3篇
- 《庖丁解?!帆@獎?wù)n件(省級公開課一等獎)-完美版PPT
- 化工園區(qū)危險品運輸車輛停車場建設(shè)標準
- 6月大學(xué)英語四級真題(CET4)及答案解析
- 氣排球競賽規(guī)則
- 電梯維修保養(yǎng)報價書模板
- 危險化學(xué)品目錄2023
- FZ/T 81024-2022機織披風(fēng)
- GB/T 33141-2016鎂鋰合金鑄錠
- JJF 1069-2012 法定計量檢定機構(gòu)考核規(guī)范(培訓(xùn)講稿)
- 綜合管廊工程施工技術(shù)概述課件
- 公積金提取單身聲明
評論
0/150
提交評論