- 相關推薦
基本模型機設計與實現
目 錄
緒 論 ................................... - 1 - 1、 課設目的 .......................... - 1 - 2、課設意義 ........................... - 1 - 一、實 驗 原 理 .......................... - 2 - 線 路 連 接 圖 ........................... - 6 - 三、 實 驗 步 驟 ......................... - 6 - 四、運行調試及結果分析 ................... - 9 - 五、設計體會與小結 ...................... - 13 - 六、參 考 文 獻 ......................... - 14 - 七、 附 錄 ............................ - 15 -
緒 論
1、課設目的
(1). 在掌握部件單元電路實驗的基礎上,進一步將其組成系統構造
一臺基本模型計算機。
(2).為其定義五條機器指令,并編寫相應的微程序,具體上機調試掌握整機概念。
2、課設意義
掌握計算機系統的組成及內部工作機制,理解計算機各功能部件工作原理的基礎上,深入掌握數據信息流和控制信息流的流動過程,進一步加深計算機系統各模塊間相互關系的認識和整機的概念,培養開發和調試計算機的技能,在設計實踐中提高應用所學專業知識分析問題和解決問題的能力。
一、實 驗 原 理
1.在部件實驗過程中,各部件單元的控制信號是人為模擬產生的,而本實驗將能在微過程控制下自動產生各部件單元控制信號,實現特定的功能。實驗中,計算機數據通路的控制將由微過程控制器來完成,CPU從內存中取出一條機器指令到指令執行結束的一個指令周期,全部由微指令組成的序列來完成,即一條機器指令對應一個微程序。 2.指令格式
(1)指令格式
采用寄存器直接尋址方式,其格式如下:
其中,OP-CODE為操作碼,rs為源寄存器,rd為目的寄存器,并
addr對應的十六進制地址碼。為了向RAM中裝入程序和數據,檢查寫入是否正確,并能啟動程序執行,還必須設計三個控制臺操作微程序。
1、存儲器讀操作(KRD):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“0 0”時,可對RAM連續手動讀入操作。
2、存儲器寫操作(KWE):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“0 1”時,可對RAM連續手動寫操作。
3、啟動程序(RP):下載實驗程序后按總清除按鍵(CLR)后,控制臺SWA、SWB為“1 1”時,即可轉入到微地址“01”號“取指令”微指令,啟動程序運行。
系統涉及到的微程序流程見圖1。當執行“取指令”微指令時,該微指令的判斷測試字段為P(1)測試。由于“取指令”微指令是所有微程序都使用的公用微指令,因此P(1)的測試結果出現多路分支(見圖1左圖)。用指令寄存器的高4位(IR7-IR4)作為測試條件,出現5路分支,占用5個固定地址單元。
控制臺操作為P(4)測試(見圖1右圖),它以控制臺信號SWB、SWA作為測試條件,出現了3路分支,占用3個固定微地址單元。當分支微地址單元固定后,剩下的其它地方就可以一條微指令占用控制存儲器的一個微地址單元,隨意填寫。注意:微程序流程圖上的微地址為8進制!
圖1 微程序流程圖(注:圖中的DR1應改為DR0, DR2應改為DR1)
當全部微程序設計完畢后,應將每條微指令代碼化,表3即為圖1的微程序流程圖按微指令格式轉化而成的“二進制微代碼表”。
表3 二進制微代碼表
線 路 連 接 圖
圖2 線路連接圖
三、實 驗 步 驟
1. 按圖1連接實驗電路 2. 聯機寫程序
按照規定格式,將機器指令及微指令二進制代碼表(如表4)
編
輯成十六進制的文件。
機器代碼: $P0000 $P010B $P0210 $P030A $P0420 $P0530 $P0640 $P0A01 $P0B0C $P0C02
微指令格式:
$M00018110
$M0200C048 $M0300E004 $M0400E005 $M05009001 $M0600E007 $M0700B00D $M0801ED83 $M0901ED86
$M0A01A20F $M0B070201 $M0C01800C $M0D01A20E $M0EE99A01 $M0FF59A01 $M1001ED92 $M1101ED92 $M1200A017 $M13018001 $M14002018 $M17070A10 $M18068A11 3. 聯機運行
聯機運行程序時,進入軟件界面,裝載機器指令及微指令后,選擇(運行)→(通路圖)→(復雜模型機)功能菜單打開相應的動態數據通路圖,按相應功能鍵即可聯機運行、監控、調試程序。
MOV OR DEC OUT 圖3 微程序流程圖
四、運行調試及結果分析
先C/ZC/CMP選擇1通道進入實驗,按F4寫入我們的程序名稱,待數據裝入后,按F6 debug進入CPU的原理圖。按F2單步執行程序,下面就是實驗進程。
把05H→[1AH] //存數到存儲單元1AH,首先在數據開關置數05,然后把05賦給R0,然后找到地址[1AH],把R0的值賦給
[1AH]
把01H→[1BH] //存數到存儲單元1AH,首先在數據開關置數05,然后把01賦給R0,然后找到地址[1BH],把R0的值賦給[1BH]
1AH→R0 //存數到R0,直接從數據開關置數賦給
R0
把1A輸入內存
把1AH送給地址寄存器,得到ram的值為1AH里面的值
=05H
R0→[1CH] //將R0內容送到存儲器單元
[1CH]→BUS //顯示存儲單元1CH內容,可以在LED燈上顯示04H。
五、設計體會與小結
本次實驗經歷了三大步驟。首先,連接電路;其次,裝載課程設計指導書上設計的程序并運行,通過觀察運行情況和數據在總線上的流動,了解各功能部件的工作原理。最后是自己設計程序并裝載運行。對于自己要設計的程序首先根據題目要求寫出它的匯編格式,再根據這個匯編格式寫出機器指令并設計出微程序流程圖。最后根據所設計的微程序流程圖寫出其微指令代碼。這些工作完成后把所設計的機器指令和微程序代碼改寫成指定的格式裝載到實驗機上運行,觀察運行過程和設計目的是否一致。如果不一致,要進行適當的修改直到一致為止。
通過這次的課程設計,我明白了機器指令和微指令之間的關系,機器指令為微指令提供入口以及操作數或操作數的地址,微指令具體實現機器指令所指定的功能。此外,通過這次實驗,我對微程序控制器的工作方式有了更進一步的理解。
在整個實驗過程中我們遇到了很多麻煩,其中最主要的有微程序的編寫,它需要和指令格式表中進行嚴格的對照,尤其是在UA5~UA0的6位后續微地址,分別由6個控制位譯碼輸出多位。根據UA5~UA0所對應的代碼進行P測試,使微程序轉入相應的微地址入口,從而實現微程序的順序、分支、循環。再者就是在調試程序中所遇到的困難,由于一個學期的使用實驗的模擬機的某些部件可能存在問題,尤其常見的是電源線的故障,所以我們在調試程序的過程中首先遇到的就是排除機器故障的問題。接下來便是將相應的機器指令存入內存,微指令存入控制存儲器中。這些都是一些比較瑣碎的工作所以稍微疏忽便會出錯。
這次實驗再次讓我們體會到了團隊合作的快樂,可以說如果沒有大家齊心協力,我們就不能完成這個實驗.正是由于大家基本模型機設計與實現的團隊精神,在討論時能各抒己見,不斷的交流和學習,我們才能依靠集體的力量,順利的完成了這個實驗。
六、參 考 文 獻
1. 胡越明主編. 計算機組成與系統結構. 電子工業大學出版社
2. 白中英. 計算機組成原理與應用》 工業出版社 3. 王子齊著. 計算機組成原理. 科學技術出版社
七、附 錄
機器指令程序:
1.本實驗要求實現以下指令流程:
指令執行流程:輸入兩個數05,01分別送到存儲器地址單元1AH,1BH,
05→[1AH] //IN,STA
01→[1BH] //IN,STA
1AH→R0 //IN
[R0] →R0 //自己設計
R0-[1BH] →R0 //自己設計
R0→[1CH]
[1CH] →LED顯示存儲單元1CH內容
2.相應機器指令程序如下:
地 址(二進制) 內 容(二進制) 助記符 說 明 0000 0000 0000 0000 IN “05”→R0 0000 0001 0010 0000 STA [1AH] R0→[1AH] 0000 0010 0001 1010
0000 0011 0000 0000 IN “01”→R0 0000 0100 0010 0000 STA [1BH] R0→[1BH] 0000 0101 0001 1011
0000 0110 0000 0000 IN “1AH”→R0 0000 0111 0101 0000 SUB R0-[1BH] →R0 0000 1000 0001 1011
0000 1001 0010 0000 STA [1CH] R0→[1CH] 0000 1010 0001 1100
0000 1011 0011 0000 OUT [1CH] 0000 1100 0001 11OO
0000 1101 0100 0000 JMP [00H] 00H→PC 0000 1110 0000 0000
【基本模型機設計與實現】相關文章:
無人直升機模型體系設計04-27
高速矢量處理機的設計與實現04-28
基于SVG的網絡地圖預覽模型的設計和實現05-03
線源擴散模型的建立及算法實現05-02
航模直升機飛行控制系統的設計與實現05-02
基于模型的設計思想快速實現二維DCT變換04-27
3DCM的LOD模型實現方法04-27
基于單片機的交通燈控制系統設計與實現05-02