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