《計(jì)算機(jī)組成原理》第9章微程序控制計(jì)算機(jī)的設(shè)計(jì).ppt
《《計(jì)算機(jī)組成原理》第9章微程序控制計(jì)算機(jī)的設(shè)計(jì).ppt》由會員分享,可在線閱讀,更多相關(guān)《《計(jì)算機(jī)組成原理》第9章微程序控制計(jì)算機(jī)的設(shè)計(jì).ppt(63頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
2007.7.2,計(jì)算機(jī)組成原理,1,第9章微程序控制計(jì)算機(jī)的設(shè)計(jì),計(jì)算機(jī)組成原理,2007.7.2,計(jì)算機(jī)組成原理,2,第9章微程序控制計(jì)算機(jī)的設(shè)計(jì),本章主要是為配合前面各章節(jié)理論教學(xué)而設(shè)計(jì)的,是理論與應(yīng)用相結(jié)合教學(xué)內(nèi)容的一部分。通過講述微程序控制計(jì)算機(jī)的設(shè)計(jì)方法和過程,加深讀者對計(jì)算機(jī)存儲器、微程序控制器、指令系統(tǒng)等內(nèi)容的理解,2007.7.2,計(jì)算機(jī)組成原理,3,本章要點(diǎn):,◆計(jì)算機(jī)整機(jī)框圖設(shè)計(jì)◆指令系統(tǒng)設(shè)計(jì)◆微操作信號設(shè)計(jì)◆指令微程序設(shè)計(jì)◆編寫應(yīng)用程序,2007.7.2,計(jì)算機(jī)組成原理,4,第9章微程序控制計(jì)算機(jī)的設(shè)計(jì),●9.1微程序控制計(jì)算機(jī)概述●9.2指令系統(tǒng)設(shè)計(jì)●9.3微程序設(shè)計(jì)●9.4編寫源程序,2007.7.2,計(jì)算機(jī)組成原理,5,9.1微程序控制計(jì)算機(jī)概述,控制計(jì)算機(jī)工作的微命令信號主要通過兩種方法實(shí)現(xiàn),一種是由設(shè)計(jì)的微程序產(chǎn)生,另外一種是通過組合邏輯電路產(chǎn)生。計(jì)算機(jī)控制器構(gòu)成電路主要是圍繞這兩種方法進(jìn)行設(shè)計(jì)的,二者各有優(yōu)缺點(diǎn),詳細(xì)知識第6章已經(jīng)講述,在此通過設(shè)計(jì)實(shí)例主要介紹微程序控制計(jì)算機(jī)的應(yīng)用情況。,2007.7.2,計(jì)算機(jī)組成原理,6,9.1微程序控制計(jì)算機(jī)概述,◆9.1.1設(shè)計(jì)要求與目標(biāo)◆9.1.2計(jì)算機(jī)硬件設(shè)計(jì),2007.7.2,計(jì)算機(jī)組成原理,7,設(shè)計(jì)一個(gè)完整的計(jì)算機(jī)系統(tǒng)不僅要考慮計(jì)算機(jī)硬件設(shè)計(jì),還要考慮機(jī)器字長、指令系統(tǒng)規(guī)模、外部設(shè)備規(guī)模等。詳細(xì)分析主要包括如下幾個(gè)方面:(1)機(jī)器字長采用8位還是16位。即運(yùn)算器、數(shù)據(jù)總線是采用8位還是16位。(2)地址總線的位數(shù)。確定計(jì)算機(jī)尋址空間的大小。(3)計(jì)算機(jī)運(yùn)算器采用什么結(jié)構(gòu)(如多通用寄存器結(jié)構(gòu)、多累加器結(jié)構(gòu)等)。,1.設(shè)計(jì)要求,2007.7.2,計(jì)算機(jī)組成原理,8,(4)計(jì)算機(jī)指令系統(tǒng)規(guī)模(共有多少條指令,多少種尋址方式,指令功能等)。(5)計(jì)算機(jī)是否使用外設(shè)(鍵盤和打印機(jī)),以什么方式使用外設(shè)(程序查詢I/O方式還是中斷I/O方式)。,2007.7.2,計(jì)算機(jī)組成原理,9,計(jì)算機(jī)系統(tǒng)采用8位字長,計(jì)算機(jī)系統(tǒng)的硬件組成應(yīng)該完備,運(yùn)算器、控制器、主存、I/O接口及總線等應(yīng)有一定的典型性,并能驅(qū)動簡單的I/O設(shè)備。此外該計(jì)算機(jī)系統(tǒng)應(yīng)具備一定規(guī)模的指令系統(tǒng),能夠完成基本的算術(shù)邏輯運(yùn)算以及數(shù)據(jù)的輸入輸出控制。,2.設(shè)計(jì)目標(biāo),2007.7.2,計(jì)算機(jī)組成原理,10,計(jì)算機(jī)的工作過程,實(shí)質(zhì)上是不同的數(shù)據(jù)流在控制信號作用下在限定的數(shù)據(jù)通路中進(jìn)行傳送。數(shù)據(jù)通路不同,指令所經(jīng)過的操作過程也不同,機(jī)器的結(jié)構(gòu)也就不—樣,因此數(shù)據(jù)通路的設(shè)計(jì)是至關(guān)重要的。所謂數(shù)據(jù)通路的設(shè)計(jì),也就是確定機(jī)器各邏輯部件相對位置的總框圖。,9.1.2計(jì)算機(jī)硬件設(shè)計(jì)1.設(shè)計(jì)整機(jī)邏輯框圖,2007.7.2,計(jì)算機(jī)組成原理,11,數(shù)據(jù)通路的設(shè)計(jì),目前還沒有非常標(biāo)準(zhǔn)的方法。主要是依據(jù)設(shè)計(jì)者的經(jīng)驗(yàn),并參考現(xiàn)有機(jī)器的幾種典型形式(比如單總線、雙總線或三總線結(jié)構(gòu)),根據(jù)指令系統(tǒng)的要求,可采用試探方法來完成。其主要步驟如下:(1)對指令系統(tǒng)中的各條指令進(jìn)行分析,得出所需要的指令周期與操作序列,以便決定各器件的類型和數(shù)量。,2007.7.2,計(jì)算機(jī)組成原理,12,(2)構(gòu)成一個(gè)總框圖草圖,進(jìn)行各邏輯部件之間的互相連接,即初步確定數(shù)據(jù)通路,使得由指令系統(tǒng)所包涵的數(shù)據(jù)通路都能實(shí)現(xiàn),并滿足技術(shù)指標(biāo)的要求。(3)檢驗(yàn)全部指令周期的操作序列,確定所需要的控制點(diǎn)和控制信號。(4)檢查所設(shè)計(jì)的數(shù)據(jù)通路,盡可能降低成本,簡化線路。注:以上過程可以反復(fù)進(jìn)行,以便得到一個(gè)較好的方案。,2007.7.2,計(jì)算機(jī)組成原理,13,根據(jù)設(shè)計(jì)要求,對計(jì)算機(jī)模塊的硬件資源進(jìn)行邏輯剪輯組合,便可設(shè)計(jì)出該計(jì)算機(jī)的整機(jī)數(shù)據(jù)通路邏輯框圖,如圖9-1所示。為利于調(diào)試,在通路框圖上標(biāo)明了各器件的控制信號及必要的輸出信號。圖9-1中設(shè)計(jì)了運(yùn)算器ALU、移位發(fā)生器(74299)、數(shù)據(jù)寄存器(DR1、DR2等)、寄存器組(R0、R1、R2)、內(nèi)存RAM、微程序控制器單元CU、地址加法器、指令寄存器IR、程序計(jì)數(shù)器PC以及輸入/輸出設(shè)備等單元模塊。,2007.7.2,計(jì)算機(jī)組成原理,14,圖9-1計(jì)算機(jī)整機(jī)邏輯框圖,2007.7.2,計(jì)算機(jī)組成原理,15,(1)移位發(fā)生器單元如圖9-2所示,該電路使用了一片74LS299作為移位發(fā)生器,其中8位輸入/輸出和8位數(shù)據(jù)總線連接。299-B信號控制其使能端(0有效),T4為時(shí)序節(jié)拍脈沖。由S0、S1、M控制信號設(shè)置其運(yùn)行狀態(tài),其控制特性見表9-1所示。,2.單元模塊詳細(xì)設(shè)計(jì),2007.7.2,計(jì)算機(jī)組成原理,16,表9-1移位發(fā)生器控制狀態(tài)表,2007.7.2,計(jì)算機(jī)組成原理,17,圖9-2移位發(fā)生器電路圖,2007.7.2,計(jì)算機(jī)組成原理,18,受設(shè)計(jì)復(fù)雜度的限制,在計(jì)算機(jī)整機(jī)框圖中時(shí)序啟停模塊并沒有畫出,但對于計(jì)算機(jī)系統(tǒng)來說,控制計(jì)算機(jī)工作的時(shí)序信號是極為重要的。如圖9-3時(shí)序啟停電路原理所,其中時(shí)序電路由1/2片74LS74、1片74LS175及6個(gè)二輸入與門、2個(gè)二輸入與非門和3個(gè)反向器構(gòu)成??僧a(chǎn)生4個(gè)等間隔的時(shí)序信號T1~T4,其中“時(shí)鐘”信號由“脈沖源”提供。為了便于控制程序的運(yùn)行,時(shí)序電路發(fā)生器也設(shè)置了一個(gè)啟??刂朴|發(fā)器CR,使T1~T4信號輸出可控。,(2)時(shí)序啟停電路單元,2007.7.2,計(jì)算機(jī)組成原理,19,圖中給出了“運(yùn)行方式”、“停機(jī)”和啟動控制位,用來分別管理時(shí)序信號T1~T4將周而復(fù)始地發(fā)送或單步發(fā)送。時(shí)序信號T1~T4連續(xù)發(fā)送,機(jī)器就可以連續(xù)執(zhí)行微程序;機(jī)器僅發(fā)送單周期4拍制時(shí)序信號,便單步運(yùn)行狀態(tài),機(jī)器每次只執(zhí)行一條微指令,這樣,可以觀察微控制狀態(tài)與當(dāng)前微指令的執(zhí)行結(jié)果。,2007.7.2,計(jì)算機(jī)組成原理,20,圖9-3時(shí)序啟停電路圖,2007.7.2,計(jì)算機(jī)組成原理,21,用示波器觀察時(shí)序波形,可看到時(shí)序信號T1~T4的波形,如圖9-4所示。,圖9-4時(shí)序信號T1~T4的波形圖,2007.7.2,計(jì)算機(jī)組成原理,22,在計(jì)算機(jī)進(jìn)行算術(shù)運(yùn)算、邏輯運(yùn)算或移位運(yùn)算時(shí),運(yùn)算結(jié)果的狀態(tài)主要依靠標(biāo)志寄存器來顯示,因此設(shè)計(jì)計(jì)算機(jī)系統(tǒng)時(shí),設(shè)計(jì)合理的標(biāo)志位鎖存電路十分必要。如電路圖9-5所示,其中181的8位輸出端邏輯或非后進(jìn)入74LS74鎖存器D端,該端的狀態(tài)由AR和T4信號控制,當(dāng)AR=1時(shí),在時(shí)序T1~T4處于單步執(zhí)行狀態(tài)下,在T4節(jié)拍把當(dāng)前零(ZQ)狀態(tài)鎖存到零標(biāo)志鎖存器中。,(3)標(biāo)志位鎖存單元,2007.7.2,計(jì)算機(jī)組成原理,23,圖9-5標(biāo)志位鎖存電路圖,2007.7.2,計(jì)算機(jī)組成原理,24,如電路圖9-6所示,使用2片74LS163組成8位程序計(jì)數(shù)器PC,其8位輸入/輸出公用端與總線(BUS)接口相連接。通過LDPC、LOAD信號和脈沖T3來控制對程序計(jì)數(shù)器PC裝載數(shù)據(jù)和加1操作。當(dāng)LOAD=1、LDPC=1時(shí),在時(shí)序T3上升沿把數(shù)據(jù)開關(guān)的內(nèi)容裝入PC。當(dāng)LOAD=0、LDPC=1時(shí),在單周期四節(jié)拍時(shí)序的T2時(shí)刻打開PC-B三態(tài)門,在T3時(shí)刻PC值通過總線打入地址寄存器、同時(shí)PC值加1。,(4)程序計(jì)數(shù)器單元,2007.7.2,計(jì)算機(jī)組成原理,25,圖9-6程序計(jì)數(shù)器電路圖,2007.7.2,計(jì)算機(jī)組成原理,26,(5)指令寄存器單元如圖9-7所示,1片74LS273作為指令寄存器單元,其8位輸入端與BUS總線已作連接,其輸出端與微程序存儲器地址(SE5~SE0)接口連接。指令數(shù)據(jù)寄存器IR(74LS273)的LDIR為電平正跳變時(shí),把來自數(shù)據(jù)總線的數(shù)據(jù)打入寄存器IR,IR的輸出就作為本系統(tǒng)內(nèi)的8位指令I(lǐng)7~I0。在本系統(tǒng)內(nèi)由這8位指令(可最多譯碼256條不同的指令),通過編碼可對應(yīng)這些指令在微程序存儲器中的入口地址,并且輸出相應(yīng)的微控制指令。,2007.7.2,計(jì)算機(jī)組成原理,27,圖9-7指令寄存器電路圖,2007.7.2,計(jì)算機(jī)組成原理,28,(6)輸入/輸出單元計(jì)算機(jī)系統(tǒng)中所用的輸入/輸出設(shè)備如電路圖9-8、9-9所示。其中輸入設(shè)備有8位帶顯示數(shù)據(jù)開關(guān)經(jīng)一個(gè)三態(tài)門(74LS245)8位數(shù)據(jù)總線相連。輸出設(shè)備經(jīng)一鎖存器(74LS273)實(shí)現(xiàn),該鎖存器的8位輸入端和8位數(shù)據(jù)總線相連,其鎖存輸出端與8個(gè)發(fā)光二極管的顯示接口相連,該顯示接口以二進(jìn)制方式顯示輸出結(jié)果(燈亮表示該輸出位為1,燈滅表示該輸出位為0)。,2007.7.2,計(jì)算機(jī)組成原理,29,說明:在本設(shè)計(jì)中8位數(shù)據(jù)開關(guān)就是簡單的輸入設(shè)備,一次只能向計(jì)算機(jī)輸入8位二進(jìn)制;8個(gè)發(fā)光二極管是簡單的輸出設(shè)備,一次能顯示一個(gè)字節(jié)的結(jié)果。,圖9-8輸入設(shè)備電路圖,2007.7.2,計(jì)算機(jī)組成原理,30,圖9-9輸出設(shè)備電路圖,2007.7.2,計(jì)算機(jī)組成原理,31,說明:運(yùn)算器、存儲器及微程序控制器工作原理分別在前面第2章、第4章和第6章已講述,它們設(shè)計(jì)及應(yīng)用內(nèi)容在第10章實(shí)訓(xùn)部分還會詳細(xì)介紹,此處不再重點(diǎn)講述。,思考:結(jié)合數(shù)字電路知識,請查閱資料分析74LS245、74LS74、74LS175、74LS299、74LS273芯片的作用及特性。,,2007.7.2,計(jì)算機(jī)組成原理,32,9.2指令系統(tǒng)設(shè)計(jì),設(shè)計(jì)一個(gè)計(jì)算機(jī)系統(tǒng)需確定計(jì)算機(jī)的指令系統(tǒng)具體由哪些指令組成,包括哪幾種類型指令,指令操作數(shù)有哪幾種尋址方式,以及指令編碼等,要兼顧必要性(編程方便)和可行性(硬件條件)兩個(gè)條件。,2007.7.2,計(jì)算機(jī)組成原理,33,9.2指令系統(tǒng)設(shè)計(jì),◆9.2.1指令類型◆9.2.2設(shè)計(jì)指令執(zhí)行流程,2007.7.2,計(jì)算機(jī)組成原理,34,1.算術(shù)邏輯指令系統(tǒng)共設(shè)計(jì)9條算術(shù)邏輯指令,分別是:寄存器清零指令(CLR)、數(shù)據(jù)傳送指令(MOV)、帶進(jìn)位加法指令(ADC)、借位減法指令(SUC)、自增運(yùn)算指令I(lǐng)NC)、與運(yùn)算指令(AND)、取反運(yùn)算指令(COM)、帶進(jìn)位循環(huán)右移指令(RRC)和帶進(jìn)位循環(huán)左移指令RLC)。這些指令全部用單字節(jié)表示,尋址方式采用寄存器直接尋址,其格式如下:,微程序控制計(jì)算機(jī)設(shè)計(jì)四大類指令共十六條,其中包括算術(shù)邏輯指令、I/O指令、訪問及轉(zhuǎn)移指令和停機(jī)指令。,2007.7.2,計(jì)算機(jī)組成原理,35,,其中,OP-CODE為操作碼占用4位二進(jìn)制(D7~D4),rs為源寄存器占用2位二進(jìn)制(D3、D2),rd為目的寄存器占用2位二進(jìn)制(D1、D0),并規(guī)定:,9條算術(shù)邏輯指令的名稱、功能和具體格式見表9-1所示。,2007.7.2,計(jì)算機(jī)組成原理,36,2.訪存指令及轉(zhuǎn)移指令系統(tǒng)共設(shè)計(jì)2條訪存指令――存數(shù)(STA)和取數(shù)(LAD),2條轉(zhuǎn)移指令――無條件轉(zhuǎn)移(JMP)和結(jié)果為零或有進(jìn)位轉(zhuǎn)移指令(JZC),這4條指令長度為2個(gè)字節(jié),其指令格式為:,,2007.7.2,計(jì)算機(jī)組成原理,37,其中,OP-CODE為操作碼,rd為目的寄存器地址(LDA、STA指令使用)。D為偏移量(正負(fù)均可),M為尋址模式,其定義如下:,本計(jì)算機(jī)規(guī)定變址寄存器RI指定為寄存器R2。,2007.7.2,計(jì)算機(jī)組成原理,38,3.I/O指令I(lǐng)/O指令共兩個(gè),分別是輸入(IN)和輸出(OUT)。指令采用單字節(jié)指令,其格式如下:,其中,addr=01時(shí),選中“輸入設(shè)備”中的開關(guān)組作為輸入設(shè)備,addr=10時(shí),選中“輸出設(shè)備”中的數(shù)碼顯示單元作為輸出設(shè)備。,2007.7.2,計(jì)算機(jī)組成原理,39,4.停機(jī)指令設(shè)計(jì)一個(gè)停機(jī)指令HLT,該指令用于實(shí)現(xiàn)停機(jī)操作。指令格式如下:,根據(jù)上面介紹,表9-1列出了本計(jì)算機(jī)系統(tǒng)16條基本指令的格式、匯編符號和指令功能,其中算術(shù)邏輯指令9條,訪存指令和程序控制指令4條,輸入輸出指令2條,停機(jī)指令1條。,2007.7.2,計(jì)算機(jī)組成原理,40,表9-1指令詳細(xì)信息表,,2007.7.2,計(jì)算機(jī)組成原理,41,9.2.2設(shè)計(jì)指令執(zhí)行流程,指令類型和數(shù)量確定后,還需結(jié)合計(jì)算機(jī)整機(jī)通路邏輯圖(見圖9-1)設(shè)計(jì)出每條指令的執(zhí)行流程。我們知道,一條指令從內(nèi)存取出到執(zhí)行完畢,需要若干個(gè)機(jī)器周期(節(jié)拍)。任何指令的第一個(gè)機(jī)器周期都是“取指令周期”,或稱為公共操作周期。而—條指令共需幾個(gè)機(jī)器周期取決于指令在計(jì)算機(jī)系統(tǒng)中實(shí)現(xiàn)的復(fù)雜程度。對于微程序控制的計(jì)算機(jī)設(shè)計(jì)指令執(zhí)行流程時(shí),要保證每條微指令所含微操作的必要性和合理性,防止微操作之間有時(shí)序沖突,為此要分析:,2007.7.2,計(jì)算機(jī)組成原理,42,(1)哪些微操作信息可以安排在同一條微指令中;(2)哪些微操作信息必須安排在同一條微指令中;(3)哪些微操作信息不能安排在同—條微指令中。,另外,還應(yīng)記?。嚎偩€(數(shù)據(jù)總線DB、地址總線AB、控制總線CB)僅是傳輸信息的通路而已,無寄存信息的功能;利用總線傳輸信息時(shí)要保證信息的唯一性(即不能有—個(gè)以上器件向總線發(fā)送信息);ALU的輸出緩沖器僅是三態(tài)傳輸門電路,無寄存功能。,2007.7.2,計(jì)算機(jī)組成原理,43,下面我們舉幾個(gè)例子說明如何設(shè)計(jì)指令流程。,說明:箭頭表示數(shù)據(jù)信息流向,括號中的T1,T2,T3為工作脈沖。,【例9-1】單字節(jié)指令A(yù)DCrs,rd(rd是目的寄存器,rs是源寄存器,硬件見圖(9-1)該指令功能為rs+rd+cy→rd(cy是進(jìn)位值),需執(zhí)行的微操作和所需的微操作信號如下:(1)(PC)→(AR)→RAM;根據(jù)PC訪問內(nèi)存所需的微操作信號:LDPC,LDAR(T3)(2)RAM→DB→IR(DB為數(shù)據(jù)總線);讀出指令字節(jié)送IR所需的微操作信號:WE,CE,LDIR(T3)(3)(PC)+1→PC;PC加l計(jì)數(shù),為取下條指令字節(jié)準(zhǔn)備所需的微操作信號:PC+1(T3)(4)R0→DR1;R1→DR2;取兩個(gè)操作數(shù)送數(shù)據(jù)寄存器為ALU準(zhǔn)備好被加數(shù)所需的微操作信號:R0-B,R1-B,RS-BUS,LDDR1,LDDR2(5)(DR1+DR2)+cy→R1;ALU執(zhí)行加法,結(jié)果暫存目的寄存器所需的微操作信號:M,CN,S0,S1,S2,S3,ALU-BUS,LDRi(T2),2007.7.2,計(jì)算機(jī)組成原理,44,【例9-2】單字節(jié)指令MOVrs,rd該指令功能為rs→rd,需執(zhí)行的微操作和所需的微操作信號如下:(1)(PC)→(AR)→RAM;根據(jù)PC訪問內(nèi)存所需的微操作信號:LDPC,LDAR(T3)(2)RAM→DB→IR(DB為數(shù)據(jù)總線);讀出指令字節(jié)送IR所需的微操作信號:WE,CE,LDIR(T3)(3)R0→DB;讀出數(shù)據(jù)到數(shù)據(jù)總線所需的微操作信號:R0-B,RS-BUS(4)DB→R1;數(shù)據(jù)總線上的數(shù)據(jù)送R1所需的微操作信號:LDRi(T2),根據(jù)計(jì)算機(jī)整機(jī)數(shù)據(jù)通路邏輯框圖(9-1),參照例9-1和9-2的設(shè)計(jì)方法,可以完成對INC、AND、RRC等其余14條指令的微操作流程和所需的微操作信號的設(shè)計(jì)。詳細(xì)設(shè)計(jì)留給讀者完成。,思考:指令執(zhí)行過程中微操作信號的作用是什么?,,2007.7.2,計(jì)算機(jī)組成原理,45,9.3微程序設(shè)計(jì),在微程序控制計(jì)算機(jī)中,源程序指令的執(zhí)行是建立在微程序的基礎(chǔ)之上的。計(jì)算機(jī)要完成程序執(zhí)行,必須先設(shè)計(jì)每條指令的微程序,并且放在微程序控制器的存儲器中,這樣,計(jì)算機(jī)就把執(zhí)行源程序指令的工作通過執(zhí)行一個(gè)微程序來實(shí)現(xiàn)。在計(jì)算機(jī)中指令執(zhí)行的效率如何和微程序控制、微指令字長以及微程序設(shè)計(jì)情況密切相關(guān)。,2007.7.2,計(jì)算機(jī)組成原理,46,9.3.1微程序控制器,微程序控制計(jì)算機(jī)的數(shù)據(jù)通路確定后,下一個(gè)設(shè)計(jì)重點(diǎn)就集中在控制器的設(shè)計(jì)上??刂破鬟壿嬁驁D,如圖9-10所示。圖中IR存放的是源程序指令,控制器對源程序指令的操作碼譯碼可以找到該指令的微程序的入口地址,然后送入微程序計(jì)數(shù)器Upc中,根據(jù)微程序的入口地址訪問控制存儲器就可以讀取微程序的第一條微指令,從而開始執(zhí)行一個(gè)微程序完成指令的工作。圖中微程序每一條微指令的執(zhí)行都是在微指令寄存器中完成的。,2007.7.2,計(jì)算機(jī)組成原理,47,圖9-10微程序控制邏輯框圖,2007.7.2,計(jì)算機(jī)組成原理,48,9.3.2微程序設(shè)計(jì),將機(jī)器的全部指令系統(tǒng)采用微指令序列實(shí)現(xiàn)的過程,叫做微程序設(shè)計(jì)。一條機(jī)器指令對應(yīng)一個(gè)微程序,本系統(tǒng)共有16條機(jī)器指令就應(yīng)當(dāng)對應(yīng)有16個(gè)微程序。計(jì)算機(jī)中微程序控制器的強(qiáng)大與否,機(jī)器性能如何,取決于如何設(shè)計(jì)控制流程,并轉(zhuǎn)化為微程序。微程序設(shè)計(jì)是以微指令設(shè)計(jì)為基礎(chǔ)的。,2007.7.2,計(jì)算機(jī)組成原理,49,1.微指令格式,本部分設(shè)計(jì)任務(wù)是綜合微程序控制計(jì)算機(jī)指令系統(tǒng)各指令執(zhí)行流程中涉及到的微操作控制信號,統(tǒng)計(jì)總共需多少個(gè)微操作控制信號,決定這些信號中在微指令中產(chǎn)生的方式及格式。微指令設(shè)計(jì)分為水平型微指令和垂直微指令兩種。如果計(jì)算機(jī)系統(tǒng)復(fù)雜不高,微指令格式建議采用水平型微指令,微命令編碼采用直接表示法和分段直接譯碼法相結(jié)合的混合表示法,以縮短微指令長度。后繼地址采用下址字段給出的方式。微指令格式如下:,2007.7.2,計(jì)算機(jī)組成原理,50,結(jié)合計(jì)算機(jī)指令系統(tǒng)和數(shù)據(jù)通路邏輯框圖,可以分析系統(tǒng)所需的微命令信號的數(shù)目,從而確定微指令中控制字段的長度。比如微指令長24位,若微指令采用全水平不編碼直接控制的格式,那么至多可有24個(gè)微命令控制信號直接產(chǎn)生。如果采用分組編碼譯碼,那么n位微指令編碼通過譯碼器譯碼可實(shí)現(xiàn)2n個(gè)互斥的微命令控制信號(即它們不可能在同一節(jié)拍內(nèi)激活)。系統(tǒng)中微指令格式及微命令信號設(shè)計(jì)實(shí)例如下:,2007.7.2,計(jì)算機(jī)組成原理,51,微指令字長共24位,其控制位順序如下:,24~16為直接控制字段,共給出9個(gè)微命令信號;A、B、C為譯碼字段,可以分別送3-8譯碼器,共可以設(shè)計(jì)出互斥的24個(gè)微命令信號;A5~A0為下址字段(微指令后繼微地址),6位地址可以訪問的控制存儲器的空間為26,即系統(tǒng)設(shè)計(jì)的微指令最多不超過64條。,2007.7.2,計(jì)算機(jī)組成原理,52,2.指令流水執(zhí)行時(shí)空表設(shè)計(jì)指令執(zhí)行流程時(shí)空表應(yīng)在設(shè)計(jì)數(shù)據(jù)通路之前確定,因?yàn)榫唧w的流水線是跟時(shí)空表緊密相聯(lián)的。本設(shè)計(jì)是在已有的數(shù)據(jù)通路的基礎(chǔ)上(該數(shù)據(jù)通路支持流水),通過改進(jìn)控制來提升系統(tǒng)性能,因此將時(shí)空表放在控制器部分進(jìn)行設(shè)計(jì)。表9-2給出的是指令執(zhí)行過程時(shí)空表,表9-3給出的是指令兩級流水執(zhí)行時(shí)空表,表9-4給出的是指令四級流水執(zhí)行時(shí)空表。,2007.7.2,計(jì)算機(jī)組成原理,53,表9-2指令執(zhí)行過程時(shí)空表,表9-3指令兩級流水執(zhí)行時(shí)空表,2007.7.2,計(jì)算機(jī)組成原理,54,表9-2指令執(zhí)行過程時(shí)空表,注意:設(shè)計(jì)選用的時(shí)空表只要設(shè)計(jì)可以實(shí)現(xiàn)即可,不同的時(shí)空表直接影響系統(tǒng)的性能。,思考:設(shè)計(jì)微指令格式時(shí),判別字段的主要作用是什么?,2007.7.2,計(jì)算機(jī)組成原理,55,3.編寫各指令的微程序根據(jù)指令流程和微指令格式仔細(xì)地逐條編寫每一個(gè)指令的微程序,源程序指令對應(yīng)的微程序流程圖及確定微地址,如圖9-11所示。,2007.7.2,計(jì)算機(jī)組成原理,56,圖9-11微程序流程圖,2007.7.2,計(jì)算機(jī)組成原理,57,根據(jù)流程圖,可以寫成二進(jìn)制表示的微程序,為了書寫方便,在此用十六進(jìn)制書寫。十六進(jìn)制微地址$:表示地址M:表示微指令十六進(jìn)制表示微程序格式說明微指令代碼:,2007.7.2,計(jì)算機(jī)組成原理,58,$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M300D8171$M31959B41$M32019A01$M3301B435$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09$M00018108$M0101ED82$M0200C050$M0300A004,$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M300D8171$M31959B41$M32019A01$M3301B435$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09,$M0400E0A0$M0500E006$M0600A007$M0700E0A0$M0801ED8A$M0901ED8C$M0A00A03B$M0B018001$M0C00203C$M0D00A00E$M0E01B60F$M0F95EA25$M1001ED83$M1101ED85$M1201ED8D$M1301EDA6$M14001001$M15030401$M16018016$M173D9A01$M18019201$M1901A22A$M1A01B22C$M1B01A232$M1C01A233$M1D01A236$M1E318237$M1F318239$M20009001$M21028401$M2205DB81,2007.7.2,計(jì)算機(jī)組成原理,59,9.4編寫源程序,計(jì)算機(jī)系統(tǒng)共設(shè)計(jì)了16條指令,指令機(jī)器碼采用單字節(jié)設(shè)計(jì),指令與機(jī)器碼對應(yīng)關(guān)系如表9-5所示:,9.4.1指令機(jī)器碼,2007.7.2,計(jì)算機(jī)組成原理,60,表9-5指令與機(jī)器碼對應(yīng)關(guān)系表,2007.7.2,計(jì)算機(jī)組成原理,61,9.4.2機(jī)器程序設(shè)計(jì)實(shí)例,根據(jù)指令的機(jī)器碼,設(shè)計(jì)的機(jī)器指令程序如下:,地址(二進(jìn)制)內(nèi)容(二進(jìn)制)源程序說明000011010000INR0輸入設(shè)備內(nèi)容→R0000100100000ADCR0,O9HR0+[09H]+cy→R0001000001001001110100000STA0BH,R0R0→[0BH]010000001011010111100000OUT0BH,LED[0BH]→LED(輸出設(shè)備)011000001011011110110000JMP00H00H→PC100000000000100101010101自定101010101010自定1011求和結(jié)果,2007.7.2,計(jì)算機(jī)組成原理,62,機(jī)器指令及微程序按照規(guī)定的格式編寫成十六進(jìn)制格式文件,程序清單如下:,P00D0;機(jī)器指令格式說明("P"代表機(jī)器指令):P0120;PXXXXP0209;地址機(jī)器代碼P03A0P040BP05E0P060BP07B0P0800P0955P0AAA,2007.7.2,計(jì)算機(jī)組成原理,63,本章小節(jié),本章小節(jié)本章從微程序計(jì)算機(jī)的設(shè)計(jì)過程作為學(xué)習(xí)點(diǎn),重點(diǎn)講述了計(jì)算機(jī)的硬件設(shè)計(jì),指令系統(tǒng)設(shè)計(jì),微程序設(shè)計(jì),指令編碼和源程序設(shè)計(jì)等內(nèi)容。旨在從應(yīng)用角度使讀者加深對計(jì)算機(jī)組成原理的理解,提升學(xué)習(xí)興趣。,- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 計(jì)算機(jī)組成原理 計(jì)算機(jī) 組成 原理 微程序 控制 設(shè)計(jì)
鏈接地址:http://ioszen.com/p-11499930.html