基本模型機設計與實現_第1頁
基本模型機設計與實現_第2頁
基本模型機設計與實現_第3頁
基本模型機設計與實現_第4頁
基本模型機設計與實現_第5頁
已閱讀5頁,還剩12頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、目 錄緒 論- 1 -1、 課設目的- 1 -2、課設意義- 1 -一、實 驗 原 理- 2 -線 路 連 接 圖- 6 -三、 實 驗 步 驟- 6 -四、運行調試及結果分析- 9 -五、設計體會與小結- 13 -六、參 考 文 獻- 14 -七、 附 錄- 15 -緒 論1、 課設目的(1). 在掌握部件單元電路實驗的基礎上,進一步將其組成系統構造一臺基本模型計算機。(2).為其定義五條機器指令,并編寫相應的微程序,具體上機調試掌握整機概念。2、課設意義 掌握計算機系統的組成及內部工作機制,理解計算機各功能部件工作原理的基礎上,深入掌握數據信息流和控制信息流的流動過程,進一步加深計算機系統

2、各模塊間相互關系的認識和整機的概念,培養開發和調試計算機的技能,在設計實踐中提高應用所學專業知識分析問題和解決問題的能力。一、實 驗 原 理1在部件實驗過程中,各部件單元的控制信號是人為模擬產生的,而本實驗將能在微過程控制下自動產生各部件單元控制信號,實現特定的功能。實驗中,計算機數據通路的控制將由微過程控制器來完成,CPU從內存中取出一條機器指令到指令執行結束的一個指令周期,全部由微指令組成的序列來完成,即一條機器指令對應一個微程序。2指令格式(1)指令格式采用寄存器直接尋址方式,其格式如下:位 7654 3210功能OP-CODErsrd其中,OP-CODE為操作碼,rs為源寄存器,rd為

3、目的寄存器,并規定:Rs或rd選定的寄存器000110R0R1R2助記符機器指令碼Addr地址碼功能說明I INAD ADD addrST STA addrOU OUT addrJM JMP addr0 0H1 0H XX H2 0H XX H3 0H XX H4 0H XX H“INPUT”中的數據R0R0+addr ->R0R0 -> addraddr -> BUSaddr PC其中IN為單字長(8位二進制),其余為雙字長指令,XX H 為addr對應的十六進制地址碼。為了向RAM中裝入程序和數據,檢查寫入是否正確,并能啟動程序執行,還必須設計三個控制臺操作微程序。1、存

4、儲器讀操作(KRD):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“0 0”時,可對RAM連續手動讀入操作。2、存儲器寫操作(KWE):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“0 1”時,可對RAM連續手動寫操作。3、啟動程序(RP):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“1 1”時,即可轉入到微地址“01”號“取指令”微指令,啟動程序運行。SWBSWA控制臺指令001011讀內存(KRD)寫內存(KWE)啟動程序(RP)24232221201918171615 14 1312 11 10987654321S3S2S1S0MC

5、nWEA9A8ABCuA5uA4uA3uA2uA1uA0 表1 24位微代碼定義A字段B字段C字段151413選擇121110選擇987選擇000000000001LDRi001RS-B001P(1)010LDDR1010010011LDDR2011011100LDIR100100P(4)101LOAD101ALU-B101LDAR110LDAR110PC-B110LDPC表2 A、B、C各字段功能說明系統涉及到的微程序流程見圖1。當執行“取指令”微指令時,該微指令的判斷測試字段為P(1)測試。由于“取指令”微指令是所有微程序都使用的公用微指令,因此P(1)的測試結果出現多路分支(見圖1左圖)

6、。用指令寄存器的高4位(IR7-IR4)作為測試條件,出現5路分支,占用5個固定地址單元。控制臺操作為P(4)測試(見圖1右圖),它以控制臺信號SWB、SWA作為測試條件,出現了3路分支,占用3個固定微地址單元。當分支微地址單元固定后,剩下的其它地方就可以一條微指令占用控制存儲器的一個微地址單元,隨意填寫。注意:微程序流程圖上的微地址為8進制! 圖1 微程序流程圖(注:圖中的DR1應改為DR0, DR2應改為DR1) 當全部微程序設計完畢后,應將每條微指令代碼化,表3即為圖1的微程序流程圖按微指令格式轉化而成的“二進制微代碼表”。微地址微指令S3 S2 S1 S0 M CN WE A9 A8A

7、BCUA5UA0000181100000000110000001000100000100ED820000000011101101100000100200C0480000000011000000010010000300E0040000000011100000000001000400B0050000000010110000000001010501A20600000001101000100000011006919A011001000110011010000000010700E00D000000001110000000001101100010010000000000010000000000011100

8、ED830000000011101101100000111200ED870000000011101101100001111300ED8E0000000011101101100011101400ED9600000001111011011001011015038201000000110000010000000011600E00F0000000011100000000011111700A0150000000010100000000101012001ED920000000111101101100100102101ED940000000111101101100101002200A010000000001

9、010000000010000230080010000000010000000000000012406201100000110001000000001000125070A010000011100001010000000012600D181000000001101000110000001 表3 二進制微代碼表線 路 連 接 圖 圖2 線路連接圖3、 實 驗 步 驟1. 按圖1連接實驗電路2. 聯機寫程序按照規定格式,將機器指令及微指令二進制代碼表(如表4)編輯成十六進制的文件。機器代碼:$P0000$P010B$P0210$P030A$P0420$P0530$P0640$P0A01$P0B0C$

10、P0C02微指令格式: $M00018110 $M0200C048 $M0300E004$M0400E005$M05009001$M0600E007$M0700B00D$M0801ED83 $M0901ED86$M0A01A20F$M0B070201$M0C01800C$M0D01A20E$M0EE99A01$M0FF59A01$M1001ED92$M1101ED92$M1200A017$M13018001$M14002018$M17070A10$M18068A113. 聯機運行 聯機運行程序時,進入軟件界面,裝載機器指令及微指令后,選擇(運行)(通路圖)(復雜模型機)功能菜單打開相應的動態數

11、據通路圖,按相應功能鍵即可聯機運行、監控、調試程序。 01 PCAR PC + 1 02RAMBUSBUSIR P(1) 10 MOV OR DEC OUT HLT 10 11 12 13 14HLTR0LEDR0DR1PCARPC + 1PCARPC + 1 03 06 17 DR1-1 R0RAMBUSBUS ARRAMBUSBUS AR 01 04 07RAMBUSBUSDR2RAMBUSBUS AR 01 05 15R0DR1RAMBUSBUS R0 16DR1 +DR2 R0 01 01圖3 微程序流程圖四、運行調試及結果分析 先C/ZC/CMP選擇1通道進入實驗,按F4寫入我們的程

12、序名稱,待數據裝入后,按F6 debug進入CPU的原理圖。按F2單步執行程序,下面就是實驗進程。 把05H1AH /存數到存儲單元1AH,首先在數據開關置數05,然后把05賦給R0,然后找到地址1AH,把R0的值賦給1AH 把01H1BH /存數到存儲單元1AH,首先在數據開關置數05,然后把01賦給R0,然后找到地址1BH,把R0的值賦給1BH 1AHR0 /存數到R0,直接從數據開關置數賦給R0 把1A輸入內存 把1AH送給地址寄存器,得到ram的值為1AH里面的值=05H R01CH /將R0內容送到存儲器單元 1CHBUS /顯示存儲單元1CH內容,可以在LED燈上顯示04H。五、設

13、計體會與小結本次實驗經歷了三大步驟。首先,連接電路;其次,裝載課程設計指導書上設計的程序并運行,通過觀察運行情況和數據在總線上的流動,了解各功能部件的工作原理。最后是自己設計程序并裝載運行。對于自己要設計的程序首先根據題目要求寫出它的匯編格式,再根據這個匯編格式寫出機器指令并設計出微程序流程圖。最后根據所設計的微程序流程圖寫出其微指令代碼。這些工作完成后把所設計的機器指令和微程序代碼改寫成指定的格式裝載到實驗機上運行,觀察運行過程和設計目的是否一致。如果不一致,要進行適當的修改直到一致為止。通過這次的課程設計,我明白了機器指令和微指令之間的關系,機器指令為微指令提供入口以及操作數或操作數的地址

14、,微指令具體實現機器指令所指定的功能。此外,通過這次實驗,我對微程序控制器的工作方式有了更進一步的理解。在整個實驗過程中我們遇到了很多麻煩,其中最主要的有微程序的編寫,它需要和指令格式表中進行嚴格的對照,尤其是在UA5UA0的6位后續微地址,分別由6個控制位譯碼輸出多位。根據UA5UA0所對應的代碼進行P測試,使微程序轉入相應的微地址入口,從而實現微程序的順序、分支、循環。再者就是在調試程序中所遇到的困難,由于一個學期的使用實驗的模擬機的某些部件可能存在問題,尤其常見的是電源線的故障,所以我們在調試程序的過程中首先遇到的就是排除機器故障的問題。接下來便是將相應的機器指令存入內存,微指令存入控制

15、存儲器中。這些都是一些比較瑣碎的工作所以稍微疏忽便會出錯。 這次實驗再次讓我們體會到了團隊合作的快樂,可以說如果沒有大家齊心協力,我們就不能完成這個實驗.正是由于大家的團隊精神,在討論時能各抒己見,不斷的交流和學習,我們才能依靠集體的力量,順利的完成了這個實驗。六、參 考 文 獻1. 胡越明主編. 計算機組成與系統結構. 電子工業大學出版社2. 白中英. 計算機組成原理與應用 工業出版社 3. 王子齊著. 計算機組成原理. 科學技術出版社7、 附 錄機器指令程序:1.本實驗要求實現以下指令流程:指令執行流程:輸入兩個數05,01分別送到存儲器地址單元1AH,1BH, 051AH /IN,STA 011BH /IN,STA 1AHR0 /IN R0 R0 /自己設計 R0-1BH R0 /自己設計 R01CH 1CH LED顯示存儲單元1CH內容2相應機器指令程序如下:地 址(二進制) 內 容(二進制) 助記符 說 明0000 0000 0000 0000 IN “05”R00000 0001 0010 0000 STA 1AH R01AH0000 0010 0001 10100000 0011 0000 0000 IN “01”R00000 0100 0010 0000 STA 1BH R01BH0

溫馨提示

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

評論

0/150

提交評論