演示文稿計算機組成原理第五章微程序控制器_第1頁
演示文稿計算機組成原理第五章微程序控制器_第2頁
演示文稿計算機組成原理第五章微程序控制器_第3頁
演示文稿計算機組成原理第五章微程序控制器_第4頁
演示文稿計算機組成原理第五章微程序控制器_第5頁
已閱讀5頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

(優(yōu)選)計算機組成原理第五章微程序控制器當前第1頁\共有72頁\編于星期二\11點5.4微程序控制器發(fā)展微程序的概念和原理是由英國劍橋大學的M·V·Wilkes教授于1951年在曼徹斯特大學計算機會議上首先提出來的,當時還沒有合適的存放微程序的控制存儲器的元件。到1964年,IBM公司在IBM360系列機上成功地采用了微程序設計技術。20世紀70年代以來,由于VLSI技術的發(fā)展,推動了微程序設計技術的發(fā)展和應用。目前,從大型機到小型機、微型機都普遍采用了微程序設計技術。當前第2頁\共有72頁\編于星期二\11點5.4微程序控制器基本思想:仿照解題的方法,把操作控制信號編制成微指令,存放到控制存儲器里,運行時,從控存中取出微指令,產(chǎn)生指令運行所需的操作控制信號。微程序設計技術是用軟件方法來設計硬件的技術。當前第3頁\共有72頁\編于星期二\11點5.4微程序控制器微程序控制原理

微程序設計技術當前第4頁\共有72頁\編于星期二\11點微程序控制原理控制部件執(zhí)行部件執(zhí)行部件微命令反饋信息:狀態(tài)測試微命令微命令CPU中的功能部件可以劃分為兩大類:微操作微操作微操作執(zhí)行部件當前第5頁\共有72頁\編于星期二\11點微程序控制原理

微命令:控制部件向執(zhí)行部件發(fā)出的各種控制命令叫作微命令,它是構成控制序列的最小單位。例如:打開或關閉某個控制門的電位信號、某個寄存器的打入脈沖等。微命令是控制計算機各部件完成某個基本微操作的命令。什么是微操作?當前第6頁\共有72頁\編于星期二\11點微程序控制原理微操作:是微命令的操作過程。微命令和微操作是一一對應的。微命令是微操作的控制信號,微操作是微命令的操作過程。微操作是執(zhí)行部件中最基本的操作。舉例:控制門電位信號的變化、寄存器輸入端的控制、ALU的基本執(zhí)行過程…當前第7頁\共有72頁\編于星期二\11點微程序控制原理

由于數(shù)據(jù)通路的結構關系,微操作可分為相容的和相斥的兩種:相斥的微操作,是指不能同時或不能在同一個節(jié)拍內(nèi)并行執(zhí)行的微操作。相容的微操作,是指能夠同時或在同一個節(jié)拍內(nèi)并行執(zhí)行的微操作。必須各占一位當前第8頁\共有72頁\編于星期二\11點類比并行與并發(fā)當前第9頁\共有72頁\編于星期二\11點舉一個例子:先勘誤:P156圖5.20右側中間579應該改為975當前第10頁\共有72頁\編于星期二\11點975相斥:(468)(579)(+-M)相容:(123)(XY組合)圖解釋當前第11頁\共有72頁\編于星期二\11點對圖的解釋:寄存器的兩個輸入端:一個代表數(shù)據(jù)寫入,一個代表控制線路,兩者都有效時產(chǎn)生輸出算數(shù)邏輯單元亦類似當前第12頁\共有72頁\編于星期二\11點微程序控制原理3、微指令(Microinstruction):在機器的一個CPU周期中,一組實現(xiàn)一定操作功能的微命令的組合,構成一條微指令。微指令:指在同一CPU周期內(nèi)并行或并發(fā)執(zhí)行的微操作控制信息集合。它是微命令的組合,微指令存儲在控制器中的控制存儲器中。當前第13頁\共有72頁\編于星期二\11點微程序控制原理4、微程序一系列微指令的有序集合就是微程序。一段微程序對應一條指令。微地址

:存放微指令的控制存儲器的單元地址舉例:以簡單運算器通路圖的微指令格式為例:當前第14頁\共有72頁\編于星期二\11點微程序控制原理微指令基本格式注意勘誤:當前第15頁\共有72頁\編于星期二\11點975相斥:(468)(579)(+-M)相容:(123)(XY組合)圖解釋當前第16頁\共有72頁\編于星期二\11點微程序控制原理操作控制:發(fā)出管理和指揮全機工作圓點表示一個個微命令某一位為1表示發(fā)出微命令,為0不發(fā)出。Eg.第1位為1時表示發(fā)出LDR1’第4、5位位1表示將R1同時寫入X、Y微命令信號的時間控制Eg.4、9、10、2在節(jié)拍電位均有效需要和T脈沖做與操作如:P157圖5.22當前第17頁\共有72頁\編于星期二\11點微程序控制原理順序控制:決定下一條微指令地址后四位:下一條微指令直接地址P1P2:判斷測試標志P1P2均為0:使用直接地址P1P2中有1:要進行P1或P2測試根據(jù)測試結果修改直接地址當前第18頁\共有72頁\編于星期二\11點微程序控制原理看圖p158圖5.23提示:圖中間下方,“微命令寄存器”不要改為“微指令寄存器”當前第19頁\共有72頁\編于星期二\11點微程序控制原理當前第20頁\共有72頁\編于星期二\11點微程序控制原理思考:微指令周期?微指令字長?控制存儲器的字長控制存儲器的大小受什么影響?微地址如何按照非順序方式執(zhí)行?當前第21頁\共有72頁\編于星期二\11點微程序控制原理控制存儲器(μCM)。這是微程序控制器的核心部件,用來存放微程序。其性能(包括容量、速度、可靠性等)與計算機的性能密切相關。只讀特性微指令周期:讀出一條微指令并執(zhí)行微指令的時間總和。當前第22頁\共有72頁\編于星期二\11點微程序控制原理微指令寄存器(μIR)分為兩部分:微地址寄存器(μMAR)和微命令寄存器用來存放從控制存儲器取出的正在執(zhí)行的微指令,它的位數(shù)同微指令字長相等。微地址寄存器存放將要訪問的下一條微指令地址微命令寄存器存放一條微指令(包括操作控制字段和判別測試字段)當前第23頁\共有72頁\編于星期二\11點微程序控制原理地址轉移邏輯如果微程序不出現(xiàn)分支:下一條微指令地址直接由微地址寄存器給出如果微程序出現(xiàn)分支:通過判別測試字段P和執(zhí)行部件的“狀態(tài)條件”反饋信息,修改微地址寄存器內(nèi)容。當前第24頁\共有72頁\編于星期二\11點勘誤:其實不能叫勘誤,要指出的是,教材P158頁,介紹完基本三個部分功能之后,沒有給出微程序控制器的工作過程描述。工作過程描述的相關內(nèi)容要在本ppt或者配套多媒體課件上學習。當前第25頁\共有72頁\編于星期二\11點微程序控制原理微程序控制器的工作過程(1)執(zhí)行取指令的公共操作。取指令的公共操作通常由一段取指微程序來完成,在機器開始運行時,自動將取指微程序的入口微地址送微地址寄存器,并從控制存儲器中讀出相應的微指令送入微指令寄存器。微指令的操作控制字段產(chǎn)生有關的微命令,用來控制實現(xiàn)取機器指令的公共操作。當取指微程序執(zhí)行完后,從主存中取出的機器指令就已存入指令寄存器IR中了。(2)由機器指令的操作碼字段通過微地址形成部件產(chǎn)生出該機器指令所對應的微程序的入口地址,并送入微地址寄存器當前第26頁\共有72頁\編于星期二\11點微程序控制原理(3)從控制存儲器中逐條取出對應的微指令并執(zhí)行之,每條微指令都能自動產(chǎn)生下一條微指令的地址。(4)一條機器指令對應的微程序的最后一條微指令執(zhí)行完畢后,其下一條微指令地址又回到取指微程序的人口地址,從而繼續(xù)第(1)步,以完成取下條機器指令的公共操作。以上是一條機器指令的執(zhí)行過程,如此周而復始,直到整個程序的所有機器指令執(zhí)行完畢。當前第27頁\共有72頁\編于星期二\11點微程序控制原理以一個典型例子說明微指令的工作過程首先做知識準備明確問題環(huán)境當前第28頁\共有72頁\編于星期二\11點微程序控制原理BCD碼?用4位二進制數(shù)來表示1位十進制數(shù)中的0~9這10個數(shù)碼Eg.(379)10=(001101111001)BCD101111011889當前第29頁\共有72頁\編于星期二\11點微程序控制原理在我們的例子中:7+3=10用BCD碼做加法期望得到:

0111+0011=00010000而實際0111+0011=1010用什么辦法解決實際問題,滿足應用需求?當前第30頁\共有72頁\編于星期二\11點微程序控制原理原理:判斷兩個數(shù)的和的每位兩位之和小于等于9時:按二進制加法處理兩位之和大于9時:需再加6,促成進位舉例:6+27+311+895+25減法規(guī)則與之類似當前第31頁\共有72頁\編于星期二\11點微程序控制原理在圖5.20所示運算器基礎上的具體做法:

R1+R2+R3ab6做加法:a+b+6有進位?是:結果值正確否:結果值減6恢復a+b的真實結果當前第32頁\共有72頁\編于星期二\11點微程序控制原理假設在某編程環(huán)境下,需要完成BCD兩個位加法運算,代碼:b=b+a;該代碼被編譯成機器語言后,以匯編語言寫出可以假定是

對于該指令,共耗費4個CPU周期取指占1個CPU周期執(zhí)行占2-3個CPU周期指令:ADDR2R1當前第33頁\共有72頁\編于星期二\11點微程序控制原理BCD加法指令流程數(shù)據(jù)通路圖P156圖5.20指令周期流程圖如右圖R1R2R3ab6取指微指令微指令地址判別測試P1給出微地址判別測試P2是否進位指令:ADDR2R1當前第34頁\共有72頁\編于星期二\11點勘誤注意P159:第一條微指令的二進制編碼:

“在這條微指令中….”10000000000000000010101當前第35頁\共有72頁\編于星期二\11點微程序控制原理共四條微指令1000000000第1條微指令:取指令操作信號0000000000001010113.PC->ABUS(I)15.LDIR’17.PC+118.P1判別:操作碼譯碼“ADD2”:101013--17當前第36頁\共有72頁\編于星期二\11點取指執(zhí)行過程圖示當前第37頁\共有72頁\編于星期二\11點0010011010010100100100000002.存結果LDR24.R1->X7.R2->Y10.+不判別測試,下一條微指令地址1001第2條微指令:R2+R1->R2當前第38頁\共有72頁\編于星期二\11點0100001001010001001100000002.存結果LDR26.R2->X9.R3->Y10.+P2判別:進位標志Cy,Cy=0:

0001Cy=1:

0000第3條微指令:R2+R3->R2當前第39頁\共有72頁\編于星期二\11點0000000001010001001001000002.存結果LDR26.R2->X9.R3->Y12.-轉地址0000,即取指令第4條微指令:R2-R3->R2當前第40頁\共有72頁\編于星期二\11點微程序控制原理6、CPU周期和微指令周期的關系T1,T2,T3時間執(zhí)行微指令(如運算等)T4上升沿打入結果至寄存器T4時間讀取微指令eg.取指eg.執(zhí)行當前第41頁\共有72頁\編于星期二\11點機器指令與微指令的關系微地址寄存器當前第42頁\共有72頁\編于星期二\11點機器指令與微指令的關系1.一條機器指令對應一個微程序2.指令、程序、地址與內(nèi)存有關,微指令、微程序、微地址與控制存儲器有關3.每一個CPU周期對應一條微指令當前第43頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術一、設計微指令應當追求的目標有利于縮短微指令的長度有利于縮小μCM的容量有利于提高微程序的執(zhí)行速度有利于對微指令的修改有利于提高微程序設計的靈活性當前第44頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術1、微命令的編碼方法編碼有三種方法:直接表示法/編碼表示法/混合表示法直接表示法:操作控制字段中的各位分別可以直接控制計算機,不需要進行譯碼。當前第45頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術直接表示法特點:這種方法結構簡單,并行性強,操作速度快,但是微指令字太長,若微命令的總數(shù)為N個,則微指令字的操作控制字段就要有N位。另外,在N個微命令中,有許多是互斥的,不允許并行操作,將它們安排在一條微指令中會使信息的利用率下降。當前第46頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術2、編碼表示法:將操作控制字段分為若干個小組,每個組通過譯碼輸出操作控制信號。當前第47頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術可能存在的問題:兩位定義了四個微命令00,01,10,11現(xiàn)在需要同時發(fā)出,或者說在同一個CPU周期內(nèi)發(fā)出00和01微命令,怎么辦?解決方法:相斥的微命令分為一組當前第48頁\共有72頁\編于星期二\11點123456789順序控制4、5:00無操作01R1->X10R2->X11DR->X

6、7:00無操作01R3->Y10R2->Y11R1->Y

8、9:00無操作01+10-11M

混和表示法1、2、3位為直接表示法4、5;6、7;8、9位為編碼表示法對于教材上例子的改進:當前第49頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術編碼注意幾點:①把互斥性的微命令分在同一組內(nèi),兼容性的微命令分在不同組內(nèi)。這樣不僅有助于提高信息的利用率,縮短微指令字長,而且有助于充分利用硬件所具有的并行性,加快執(zhí)行的速度。②應與數(shù)據(jù)通路結構相適應。③每個小組中包含的信息位不能太多,否則將增加譯碼線路的復雜性和譯碼時間。④一般每個小組還要留出一個狀態(tài),表示本小組不發(fā)出任何微命令。當前第50頁\共有72頁\編于星期二\11點編碼表示法特點: 可以避免相斥,使指令字大大縮短,但增加了譯碼電路,使微程序的執(zhí)行速度減慢當前第51頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術3、混合編碼法:將前兩種結合在一起,兼顧兩者特點。一個字段的某些編碼不能獨立地定義某些微命令,而需要與其他字段的編碼來聯(lián)合定義當前第52頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術二、微指令地址的形成入口地址:每條機器指令對應一段微程序,當公用的取指微程序從主存中取出機器指令之后,由機器指令的操作碼字段指出各段微程序的入口地址,這是一種多分支(或多路轉移)的情況。當前第53頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術1、入口地址形成:如果機器指令操作碼字段的位數(shù)和位置固定,可以直接使操作碼與微程序入口地址的部分位相對應。當前第54頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術2、后繼微地址形成方法(1)計數(shù)器的方式方法:微程序順序執(zhí)行時,其后繼微地址就是現(xiàn)行微地址加上一個增量(通常為1);當微程序遇到轉移或轉子程序時,由微指令的轉移地址段來形成轉移微地址。在微程序控制器中也有一個微程序計數(shù)器μPC,一般情況下都是將微地址寄存器μMAR作為μPC當前第55頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術特點:優(yōu)點是簡單、易于掌握,編制微程序容易缺點是這種方式不能實現(xiàn)兩路以上的并行微程序轉移,因而不利于提高微程序的執(zhí)行速度。當前第56頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術(2)多路轉移的方式根據(jù)條件轉移如圖條件:狀態(tài)條件/測試/微指令中微地址/操作碼例如:P字段的2位可以做4路轉移適用于:取指微指令執(zhí)行之后,OP譯碼實現(xiàn)多路微程序入口微地址跳轉當前第57頁\共有72頁\編于星期二\11點當前第58頁\共有72頁\編于星期二\11點當前第59頁\共有72頁\編于星期二\11點【例2】微地址寄存器有6位(μA5-μA0),當需要修改其內(nèi)容時,可通過某一位觸發(fā)器的強置端S將其置“1”?,F(xiàn)有三種情況:(1)執(zhí)行“取指”微指令后,微程序按IR的OP字段(IR3-IR0)進行16路分支;(2)執(zhí)行條件轉移指令微程序時,按進位標志C的狀態(tài)進行2路分支;(3)執(zhí)行控制臺指令微程序時,按IR4,IR5的狀態(tài)進行4路分支。請按多路轉移方法設計微地址轉移邏輯。當前第60頁\共有72頁\編于星期二\11點問題分析:指令格式:微指令格式:

地址碼R3R2R1R0P3P2P1uA5uA4uA3uA2uA1uA0微命令進位標記C當前第61頁\共有72頁\編于星期二\11點

按所給設計條件,微程序有三種判別測試,分別為P1,P2,P3。由于修改μA5-μA0內(nèi)容具有很大靈活性,現(xiàn)分配如下:(1)用P1和IR3-IR0修改μA3-μA0;(2)用P2和C修改μA0;(3)用P3和IR5、IR4修改μA5、μA4。其中μA0在P字段內(nèi)容不同時,作用不同。最后再加上節(jié)拍脈沖當前第62頁\共有72頁\編于星期二\11點假設在CPU周期最后一個節(jié)拍脈沖獲得微地址,轉移邏輯表達式如下:

μA5=P3·IR5·T4

μA4=P3·IR4·T4

μA3=P1·IR3·T4

μA2=P1·IR2·T4

μA1=P1·IR1·T4

μA0=P1·IR0·T4+P2·C·T4

由于從觸發(fā)器強置端修改,故前5個表達式可用“與非”門實現(xiàn),最后一個用“與或非”門實現(xiàn)。下圖僅畫出了μA2、μA1、μA0觸發(fā)器的微地址轉移邏輯圖。當前第63頁\共有72頁\編于星期二\11點當前第64頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術3、微指令格式分為兩類:水平型微指令和垂直型微指令(1)水平型微指令水平型微指令是指一次能定義并能并行執(zhí)行多個微命令的微指令。格式如下控制字段判別測試字段下地址字段當前第65頁\共有72頁\編于星期二\11點5.4.2微程序控制器設計技術水平型微指令特點:優(yōu)點:微指令字較長,速度越快。微指令中的微操作有高度的并行性。微指令譯碼簡單??刂拼鎯ζ鞯目v向容量小,靈活性強。當前第66頁\共有72頁\編于星期二\11點缺點:微指令字比較長,明顯地增加了控制存儲器的橫向容量。水平微指令與機器指令差別很大,一般要熟悉機器結構、數(shù)據(jù)通路、時序系統(tǒng)以及指令執(zhí)行過程的人才能進行微程序設計,這

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論