計算機組成原理課程設(shè)計設(shè)計一個微程序控制器_第1頁
計算機組成原理課程設(shè)計設(shè)計一個微程序控制器_第2頁
計算機組成原理課程設(shè)計設(shè)計一個微程序控制器_第3頁
計算機組成原理課程設(shè)計設(shè)計一個微程序控制器_第4頁
計算機組成原理課程設(shè)計設(shè)計一個微程序控制器_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章 設(shè)計概述1.1課程設(shè)計的目的 本課程設(shè)計的教學(xué)目是在掌握計算機系統(tǒng)的組成及內(nèi)部工作機制,理解計算機各功能部件工作原理的基礎(chǔ)上,深入掌握數(shù)據(jù)信息流和控制信息流的流動過程,進一步加深計算機系統(tǒng)各模塊間相互關(guān)系的認識和整機的概念,培養(yǎng)開發(fā)和調(diào)試計算機的技能,在設(shè)計實踐中提高應(yīng)用所學(xué)專業(yè)知識分析問題和解決問題的能力。1.2設(shè)計任務(wù)和基本要求 本課程設(shè)計以TDN-CM+計算機組成原理教學(xué)實驗系統(tǒng)為平臺設(shè)計完成。1. 按給定的數(shù)據(jù)格式和指令系統(tǒng),設(shè)計一個微程序控制器。2. 設(shè)計給定機器指令系統(tǒng)以及微程序流程圖,按微指令格式寫出微程序的為指令代碼。3. 連接邏輯電路完成啟動,測試,編程,測試,效驗和

2、運行,并觀測運行過程及結(jié)果。4. 將微程序控制器模塊與運算器模塊,存儲器模塊聯(lián)機,組成一臺模型計算機。5. 用微程序控制器控制模型機的數(shù)據(jù)通路。6. 通過在模型機上運行由機器指令組成的簡單程序,掌握機器指令與微指令的關(guān)系,建立計算機整機的概念,掌握計算機的控制機制。7. 按指定的應(yīng)用項目進行匯編指令格式及功能設(shè)計,并設(shè)計相應(yīng)的機器指令代碼,按照模型機數(shù)據(jù)通路設(shè)計實現(xiàn)機器指令功能的微程序.在PC機上編輯機器指令和微程序,裝載代碼到TDN-CM+實驗系統(tǒng)并運行,實現(xiàn)應(yīng)用要求。第二章 規(guī)定項目的驗證實現(xiàn)2.1規(guī)定項目任務(wù)和要求:任務(wù):從輸入設(shè)備輸入一個數(shù)與內(nèi)存中地址為0AH存放的數(shù)字1相加結(jié)果送地址

3、為0BH單元中。并能從內(nèi)存中取出到外圍設(shè)備顯示之。 要求:通過此驗證實驗來學(xué)會數(shù)據(jù)通路電路圖的連接、機器指令的設(shè)計、微指令設(shè)計中相關(guān)字段的作用、微程序流程圖的設(shè)計以及能熟練掌握用微程序控制數(shù)據(jù)通路來實現(xiàn)機器指令的功能,為以后的實驗設(shè)計做好準備。 2.2規(guī)定項目實現(xiàn)原理:(1)在本設(shè)計中,數(shù)據(jù)通路的控制將由微程序控制器來完成。計算機從內(nèi)存中取出一條機器指令到指令執(zhí)行結(jié)束的一個指令周期全部由微指令組成的序列來完成,即一條機器指令對應(yīng)一個微程序。(2)本設(shè)計采用五條機器指令:IN、ADD、STA、OUT、JMP;其相應(yīng)的機器指令和匯編程序如下: 地址(二進制) 內(nèi)容(二進制) 助記符 注釋 0000

4、 0000 0000 0000 IN R0; “input”> R00000 0001 0001 0000 ADD 0AH, R0 R0 +0AH> R00000 0010 0000 1010 0000 0011 0010 0000 STA R0 , 0BH R0>0BH 0000 0100 0000 1011 0000 0101 0011 0000 OUT 0BH ; 0BH-àLED 0000 0110 0000 1011 0000 0111 0100 0000 JMP 00H 00H-àPC0000 1000 0000 00000000 100100

5、00 1010 0000 00010000 10112.3規(guī)定項目實現(xiàn)過程:(1)連接線路:按圖1鏈接實驗線路。最后保證實驗中的各個原件及數(shù)據(jù)線路如圖2所示。圖1 接 線 圖圖2 數(shù)據(jù)通路框圖 (2)讀懂項目給出的程序按照規(guī)定格式,機器指令及微指令二進制代碼表已編輯成十六進制文件。本項目的程序如下:程序 機器指令格式說明$P0000 $P060D $PXX XX$P0110 $P0740 機器指令代碼$P020A $P0800 $P0320 $P0A01 十六進制地址$P0530微程序 微指令格式說明:$M00018110 $M06959A01 $MXX XXX XXX$M0101ED82 $

6、M0700E00D 微指令代碼$M0200C048 $M08001001$M0300E004 $M0901ED83 十進制地址$M0400B005 $M0A01ED87$M0501A206 $M0B01ED8E$M0C01ED96 $M1200A017$M0D028201 $M13018001$M0E00E00F $M14002018$M0F00A015 $M15070A01$M1001ED92 $M1600D181$M1101ED94 $M17070A10$M18068A11(3) 聯(lián)機運行驗證: 三條控制臺指令用兩個開關(guān)SWB、SWA的狀態(tài)來設(shè)置,其定義如表1:表1 SWB SWA 控制臺

7、指令 0 0 讀內(nèi)存(KRD ) 0 1 寫內(nèi)存(KRD ) 0 1 啟動程序(RP)聯(lián)機運行程序時,進入軟件界面,裝載機器指令及微指令后,調(diào)整控制臺,使SWA=1,SWB=0,即啟動程序。接著選擇(運行)(通路圖)(復(fù)雜模型機)功能菜單打開相應(yīng)的動態(tài)數(shù)據(jù)通路圖,按相應(yīng)功能鍵即可聯(lián)機運行、監(jiān)控、調(diào)試程序。在驗證過程中,首先采用但不運行,仔細看每一條機器指令的執(zhí)行過程,明白其每一步對應(yīng)的微指令,為下一步完成項目的設(shè)計實現(xiàn)打下基礎(chǔ)。2.4驗證結(jié)果:從輸入設(shè)備輸入的數(shù)字4,聯(lián)機運行,得到的輸出結(jié)果是5,與理論計算結(jié)果一致。說明微程序控制實現(xiàn)了機器指令的功能。第三章:指定應(yīng)用項目的設(shè)計實現(xiàn)3.1 指定

8、項目任務(wù)和要求: 將以K為地址的內(nèi)存單元的內(nèi)容X與以N為間接地址的內(nèi)存單元的內(nèi)容Y,執(zhí)行(X+Y)減6的運算,結(jié)果送R03.2 項目任務(wù)分析及解決方案: 在機器指令中設(shè)置N=0AH在內(nèi)存地址0AH中存放0CH,而內(nèi)存0CH中存放Y的值即4,內(nèi)存地址0BH中存放X的值7. 運算時,通過微程序控制從內(nèi)存中通過間接尋址取出Y的值送往R0,從內(nèi)存中直接尋址取出X的值7,進行或地運算結(jié)果放R0。執(zhí)行減法運算時,把R0的值送往中3.3 實現(xiàn)原理:(1)機器匯編指令設(shè)計:本設(shè)計采用8條機器指令:IN、STA、MOV、NOT、EOR 、STO、OUT、HLT;其相應(yīng)的機器指令和匯編程序如下:(其中表示間接尋址

9、,表示直接尋址)地址(二進制) 內(nèi)容(二進制) 助記符 注釋 0000 0000 0000 0000 IN R0; “X=input”> R00000 0001 0001 0000 STA R0 , 11 ; X= R0> 110000 0010 0000 0001 0000 0011 0010 0000 MOV 10, R0 ; Y=10 >R0 0000 0100 0001 0000 0000 0101 0011 0000 NOT R0 ; Y> R00000 0110 0100 0000 EOR 11, R0 ; XY > R0 0000 0111 0001

10、 0001 0000 1000 0011 0000 NOT R0 ; XY > R0 0000 1001 0111 0000 STO R0 , 13; R0 >13 0000 1010 0001 0011 0000 1011 0101 0000 OUT 13 130000 1100 0001 0011Y=04X=05K=11N=1311=1717=X0000 1101 0110 0000 HLT0001 0000 0000 0100 0001 0001 0001 0111 0001 0010 0000 00000001 0011 0000 00000001 0111 0000 00

11、00(2)微程序設(shè)計:為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動程序執(zhí)行,設(shè)計如圖4的三個控制臺操作微程序。其功能說明見表1。按照數(shù)據(jù)通路可畫出機器指令的微程序流程圖如圖4所示。當擬定“取指”微指令時,該微指令的判別測試字段為P(1)測試。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的測試結(jié)果出現(xiàn)多路分支。本機用指令寄存器的前4位(IR7-IR4)作為測試條件,出現(xiàn)8路分支,占用8個固定的微地址單元。 控制臺 00 20 P(4) KWE(01) KRD(00) RP(11) PCARPC + 1PCARPC + 1 21 20 23 24 22 01RAMBU

12、SBUS DR1SW>BUSBUS>DR1DR1>LED 30 27DR1>RAM圖4微程序控制臺(3)微指令代碼設(shè)計:微指令格式如表1所示。當微指令格式確定以后,下一步就是確定后續(xù)微指令地址。通常的方法是先確定微程序分支處的微地址,因為微程序分支處需要進行判斷測試。這些微地址確定以后,就可以在一個“微地址表”中將分支微指令填入相應(yīng)得分支地址單元,避免以后的設(shè)計中因重復(fù)使用而造成錯誤。對于其它位置就可以按一條微指令對應(yīng)一個微地址隨意填寫。表2 微指令格式24232221201918171615 14 1312 11 109 8 7654321S3S2S1S0MCnWEA

13、9A8ABCA5A4A3A2A1A0A字段B字段C字段151413選擇121110選擇987選擇000000000001LDRi001RSB001P(1)010LDDR1010RDB010P(2)011LDDR2011RIB011P(3)100LDIR100299B100P(4)101LOAD101ALUB101AR110LDAR110PCB110LDPC當全部微指令設(shè)計完畢后,應(yīng)將每條微指令代碼化,表3即為將圖3微程序流程圖按微指令格式轉(zhuǎn)化而得到的“二進制代碼表”。表3 二進制微代碼表微地址S3 S2 S1 S0 M CN WE A9 A8ABCA5A00 00000000110000001

14、000100000 10000000111101101100000100 20000000011000000010010000 30000000011100000000001110 4000000101000 0010000000010 5000000001110 0000000001100 60000000010010000000000010 70000000011100000000001001 00000000000010000000000011 10000000111101101100001101 20000000111101101100001011 300000001101000100

15、00111111 40000000111101101100101011 50000000111101101100111001 6 0000000110000000000011101 70000000111101101101000002 000000001111011011001001021 0000000111101101100101002200000000101000000001011123000000011000000000000001240000000000100000000110002500000111000010100000000126000000001101000110000001

16、2700000111000010100001000030000001101000101000010001310000000010110000000110003200000001101000100001101133011010011001101000000001340000000011100000000110013500000000101000000001111036000001110000101000000001370000100110011010000000014000000000111000000010000141000000101000001000000001指令寄存器(IR)用來保存當

17、前正在執(zhí)行的一條指令。當執(zhí)行一條指令時,先把它從內(nèi)存取到緩沖寄存器中,然后再傳送至指令寄存器。指令劃分為操作碼和地址碼字段,由二進制數(shù)構(gòu)成。為了執(zhí)行任何給定的指令,必須對操作碼進行測試P(1),通過節(jié)拍脈沖T4的控制以便識別所要求的操作。“指令寄存器”(實驗板上標有“INS DECODE”的芯片)根據(jù)指令中的操作碼譯碼結(jié)果強置微控器單元的微地址,使下一條微指令指向相應(yīng)得微程序首地址。本系統(tǒng)使用兩種外部設(shè)備,一種是二進制代碼開關(guān),它作為輸入設(shè)備(INPUT DEVICE);另一種是數(shù)碼管,它作為輸出設(shè)備(OUPUT DEVICE)。例如:輸入時,二進制開關(guān)數(shù)據(jù)直接經(jīng)過三態(tài)門送到總線上,只要開關(guān)狀

18、態(tài)不變,輸入的信息也不變。輸出時,將輸出的數(shù)據(jù)送到數(shù)據(jù)總線BUS上,當寫信號(W/R)有效時,將數(shù)據(jù)打入輸出鎖存器,驅(qū)動數(shù)碼管顯示。3.4 指定項目的實現(xiàn)過程:(1)按圖1連接實驗電路(2)聯(lián)機寫程序:按照規(guī)定格式,將機器指令及微指令二進制代碼表(如表4)編輯成十六進制的.txt文件。機器代碼:程序$P0000$P0110$P0211$P0320$P0410$P0530$P0640$P0711$P0830$P0970$P0A13$P0B50$P0C13$P0D60$P1004$P1117$P1300$P1700微程序$M00018110$M0101ED82$M0200C048$M0300E00

19、7$M04028201$M0500E006$M06009001$M0700E004$M08001001$M0901ED83$M0A01ED85$M0B01A21F$M0C01ED95$M0D01ED9C$M0E00000E$M0F01EDA0$M1001ED92$M1101ED94$M1200A017$M13018001$M14002018$M1500E016$M1600E019$M17070A10$M18068A11$M1900B01A$M1A01A21B$M1B699A01$M1C00E01D$M1D00A01E$M1E070A01$M1F099A01$M2000E021$M21028201(3)聯(lián)機運行: 聯(lián)機運行程序時,進入軟件界面,裝載機器指令及微指令后,選擇(運行)(通路圖)(復(fù)雜模型機)功能菜單打開相應(yīng)的動態(tài)數(shù)據(jù)通路圖,按相應(yīng)功能鍵即可聯(lián)機運行、監(jiān)控、調(diào)試程序。3.5 實現(xiàn)結(jié)果:理論計算:Y=04,取反之后其值為

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論