- 相關(guān)推薦
基本模型機(jī)設(shè)計(jì)與實(shí)現(xiàn)
目 錄
緒 論 ................................... - 1 - 1、 課設(shè)目的 .......................... - 1 - 2、課設(shè)意義 ........................... - 1 - 一、實(shí) 驗(yàn) 原 理 .......................... - 2 - 線 路 連 接 圖 ........................... - 6 - 三、 實(shí) 驗(yàn) 步 驟 ......................... - 6 - 四、運(yùn)行調(diào)試及結(jié)果分析 ................... - 9 - 五、設(shè)計(jì)體會(huì)與小結(jié) ...................... - 13 - 六、參 考 文 獻(xiàn) ......................... - 14 - 七、 附 錄 ............................ - 15 -
緒 論
1、課設(shè)目的
(1). 在掌握部件單元電路實(shí)驗(yàn)的基礎(chǔ)上,進(jìn)一步將其組成系統(tǒng)構(gòu)造
一臺(tái)基本模型計(jì)算機(jī)。
(2).為其定義五條機(jī)器指令,并編寫(xiě)相應(yīng)的微程序,具體上機(jī)調(diào)試掌握整機(jī)概念。
2、課設(shè)意義
掌握計(jì)算機(jī)系統(tǒng)的組成及內(nèi)部工作機(jī)制,理解計(jì)算機(jī)各功能部件工作原理的基礎(chǔ)上,深入掌握數(shù)據(jù)信息流和控制信息流的流動(dòng)過(guò)程,進(jìn)一步加深計(jì)算機(jī)系統(tǒng)各模塊間相互關(guān)系的認(rèn)識(shí)和整機(jī)的概念,培養(yǎng)開(kāi)發(fā)和調(diào)試計(jì)算機(jī)的技能,在設(shè)計(jì)實(shí)踐中提高應(yīng)用所學(xué)專業(yè)知識(shí)分析問(wèn)題和解決問(wèn)題的能力。
一、實(shí) 驗(yàn) 原 理
1.在部件實(shí)驗(yàn)過(guò)程中,各部件單元的控制信號(hào)是人為模擬產(chǎn)生的,而本實(shí)驗(yàn)將能在微過(guò)程控制下自動(dòng)產(chǎn)生各部件單元控制信號(hào),實(shí)現(xiàn)特定的功能。實(shí)驗(yàn)中,計(jì)算機(jī)數(shù)據(jù)通路的控制將由微過(guò)程控制器來(lái)完成,CPU從內(nèi)存中取出一條機(jī)器指令到指令執(zhí)行結(jié)束的一個(gè)指令周期,全部由微指令組成的序列來(lái)完成,即一條機(jī)器指令對(duì)應(yīng)一個(gè)微程序。 2.指令格式
(1)指令格式
采用寄存器直接尋址方式,其格式如下:
其中,OP-CODE為操作碼,rs為源寄存器,rd為目的寄存器,并
addr對(duì)應(yīng)的十六進(jìn)制地址碼。為了向RAM中裝入程序和數(shù)據(jù),檢查寫(xiě)入是否正確,并能啟動(dòng)程序執(zhí)行,還必須設(shè)計(jì)三個(gè)控制臺(tái)操作微程序。
1、存儲(chǔ)器讀操作(KRD):下載實(shí)驗(yàn)程序后按總清除按鍵(CLR)后,控制臺(tái)SWA、SWB為“0 0”時(shí),可對(duì)RAM連續(xù)手動(dòng)讀入操作。
2、存儲(chǔ)器寫(xiě)操作(KWE):下載實(shí)驗(yàn)程序后按總清除按鍵(CLR)后,控制臺(tái)SWA、SWB為“0 1”時(shí),可對(duì)RAM連續(xù)手動(dòng)寫(xiě)操作。
3、啟動(dòng)程序(RP):下載實(shí)驗(yàn)程序后按總清除按鍵(CLR)后,控制臺(tái)SWA、SWB為“1 1”時(shí),即可轉(zhuǎn)入到微地址“01”號(hào)“取指令”微指令,啟動(dòng)程序運(yùn)行。
系統(tǒng)涉及到的微程序流程見(jiàn)圖1。當(dāng)執(zhí)行“取指令”微指令時(shí),該微指令的判斷測(cè)試字段為P(1)測(cè)試。由于“取指令”微指令是所有微程序都使用的公用微指令,因此P(1)的測(cè)試結(jié)果出現(xiàn)多路分支(見(jiàn)圖1左圖)。用指令寄存器的高4位(IR7-IR4)作為測(cè)試條件,出現(xiàn)5路分支,占用5個(gè)固定地址單元。
控制臺(tái)操作為P(4)測(cè)試(見(jiàn)圖1右圖),它以控制臺(tái)信號(hào)SWB、SWA作為測(cè)試條件,出現(xiàn)了3路分支,占用3個(gè)固定微地址單元。當(dāng)分支微地址單元固定后,剩下的其它地方就可以一條微指令占用控制存儲(chǔ)器的一個(gè)微地址單元,隨意填寫(xiě)。注意:微程序流程圖上的微地址為8進(jìn)制!
圖1 微程序流程圖(注:圖中的DR1應(yīng)改為DR0, DR2應(yīng)改為DR1)
當(dāng)全部微程序設(shè)計(jì)完畢后,應(yīng)將每條微指令代碼化,表3即為圖1的微程序流程圖按微指令格式轉(zhuǎn)化而成的“二進(jìn)制微代碼表”。
表3 二進(jìn)制微代碼表
線 路 連 接 圖
圖2 線路連接圖
三、實(shí) 驗(yàn) 步 驟
1. 按圖1連接實(shí)驗(yàn)電路 2. 聯(lián)機(jī)寫(xiě)程序
按照規(guī)定格式,將機(jī)器指令及微指令二進(jìn)制代碼表(如表4)
編
輯成十六進(jìn)制的文件。
機(jī)器代碼: $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. 聯(lián)機(jī)運(yùn)行
聯(lián)機(jī)運(yùn)行程序時(shí),進(jìn)入軟件界面,裝載機(jī)器指令及微指令后,選擇(運(yùn)行)→(通路圖)→(復(fù)雜模型機(jī))功能菜單打開(kāi)相應(yīng)的動(dòng)態(tài)數(shù)據(jù)通路圖,按相應(yīng)功能鍵即可聯(lián)機(jī)運(yùn)行、監(jiān)控、調(diào)試程序。
MOV OR DEC OUT 圖3 微程序流程圖
四、運(yùn)行調(diào)試及結(jié)果分析
先C/ZC/CMP選擇1通道進(jìn)入實(shí)驗(yàn),按F4寫(xiě)入我們的程序名稱,待數(shù)據(jù)裝入后,按F6 debug進(jìn)入CPU的原理圖。按F2單步執(zhí)行程序,下面就是實(shí)驗(yàn)進(jìn)程。
把05H→[1AH] //存數(shù)到存儲(chǔ)單元1AH,首先在數(shù)據(jù)開(kāi)關(guān)置數(shù)05,然后把05賦給R0,然后找到地址[1AH],把R0的值賦給
[1AH]
把01H→[1BH] //存數(shù)到存儲(chǔ)單元1AH,首先在數(shù)據(jù)開(kāi)關(guān)置數(shù)05,然后把01賦給R0,然后找到地址[1BH],把R0的值賦給[1BH]
1AH→R0 //存數(shù)到R0,直接從數(shù)據(jù)開(kāi)關(guān)置數(shù)賦給
R0
把1A輸入內(nèi)存
把1AH送給地址寄存器,得到ram的值為1AH里面的值
=05H
R0→[1CH] //將R0內(nèi)容送到存儲(chǔ)器單元
[1CH]→BUS //顯示存儲(chǔ)單元1CH內(nèi)容,可以在LED燈上顯示04H。
五、設(shè)計(jì)體會(huì)與小結(jié)
本次實(shí)驗(yàn)經(jīng)歷了三大步驟。首先,連接電路;其次,裝載課程設(shè)計(jì)指導(dǎo)書(shū)上設(shè)計(jì)的程序并運(yùn)行,通過(guò)觀察運(yùn)行情況和數(shù)據(jù)在總線上的流動(dòng),了解各功能部件的工作原理。最后是自己設(shè)計(jì)程序并裝載運(yùn)行。對(duì)于自己要設(shè)計(jì)的程序首先根據(jù)題目要求寫(xiě)出它的匯編格式,再根據(jù)這個(gè)匯編格式寫(xiě)出機(jī)器指令并設(shè)計(jì)出微程序流程圖。最后根據(jù)所設(shè)計(jì)的微程序流程圖寫(xiě)出其微指令代碼。這些工作完成后把所設(shè)計(jì)的機(jī)器指令和微程序代碼改寫(xiě)成指定的格式裝載到實(shí)驗(yàn)機(jī)上運(yùn)行,觀察運(yùn)行過(guò)程和設(shè)計(jì)目的是否一致。如果不一致,要進(jìn)行適當(dāng)?shù)男薷闹钡揭恢聻橹埂?/p>
通過(guò)這次的課程設(shè)計(jì),我明白了機(jī)器指令和微指令之間的關(guān)系,機(jī)器指令為微指令提供入口以及操作數(shù)或操作數(shù)的地址,微指令具體實(shí)現(xiàn)機(jī)器指令所指定的功能。此外,通過(guò)這次實(shí)驗(yàn),我對(duì)微程序控制器的工作方式有了更進(jìn)一步的理解。
在整個(gè)實(shí)驗(yàn)過(guò)程中我們遇到了很多麻煩,其中最主要的有微程序的編寫(xiě),它需要和指令格式表中進(jìn)行嚴(yán)格的對(duì)照,尤其是在UA5~UA0的6位后續(xù)微地址,分別由6個(gè)控制位譯碼輸出多位。根據(jù)UA5~UA0所對(duì)應(yīng)的代碼進(jìn)行P測(cè)試,使微程序轉(zhuǎn)入相應(yīng)的微地址入口,從而實(shí)現(xiàn)微程序的順序、分支、循環(huán)。再者就是在調(diào)試程序中所遇到的困難,由于一個(gè)學(xué)期的使用實(shí)驗(yàn)的模擬機(jī)的某些部件可能存在問(wèn)題,尤其常見(jiàn)的是電源線的故障,所以我們?cè)谡{(diào)試程序的過(guò)程中首先遇到的就是排除機(jī)器故障的問(wèn)題。接下來(lái)便是將相應(yīng)的機(jī)器指令存入內(nèi)存,微指令存入控制存儲(chǔ)器中。這些都是一些比較瑣碎的工作所以稍微疏忽便會(huì)出錯(cuò)。
這次實(shí)驗(yàn)再次讓我們體會(huì)到了團(tuán)隊(duì)合作的快樂(lè),可以說(shuō)如果沒(méi)有大家齊心協(xié)力,我們就不能完成這個(gè)實(shí)驗(yàn).正是由于大家基本模型機(jī)設(shè)計(jì)與實(shí)現(xiàn)的團(tuán)隊(duì)精神,在討論時(shí)能各抒己見(jiàn),不斷的交流和學(xué)習(xí),我們才能依靠集體的力量,順利的完成了這個(gè)實(shí)驗(yàn)。
六、參 考 文 獻(xiàn)
1. 胡越明主編. 計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu). 電子工業(yè)大學(xué)出版社
2. 白中英. 計(jì)算機(jī)組成原理與應(yīng)用》 工業(yè)出版社 3. 王子齊著. 計(jì)算機(jī)組成原理. 科學(xué)技術(shù)出版社
七、附 錄
機(jī)器指令程序:
1.本實(shí)驗(yàn)要求實(shí)現(xiàn)以下指令流程:
指令執(zhí)行流程:輸入兩個(gè)數(shù)05,01分別送到存儲(chǔ)器地址單元1AH,1BH,
05→[1AH] //IN,STA
01→[1BH] //IN,STA
1AH→R0 //IN
[R0] →R0 //自己設(shè)計(jì)
R0-[1BH] →R0 //自己設(shè)計(jì)
R0→[1CH]
[1CH] →LED顯示存儲(chǔ)單元1CH內(nèi)容
2.相應(yīng)機(jī)器指令程序如下:
地 址(二進(jìn)制) 內(nèi) 容(二進(jìn)制) 助記符 說(shuō) 明 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
【基本模型機(jī)設(shè)計(jì)與實(shí)現(xiàn)】相關(guān)文章:
無(wú)人直升機(jī)模型體系設(shè)計(jì)04-27
高速矢量處理機(jī)的設(shè)計(jì)與實(shí)現(xiàn)04-28
基于SVG的網(wǎng)絡(luò)地圖預(yù)覽模型的設(shè)計(jì)和實(shí)現(xiàn)05-03
基于ArcGIS的城市人防數(shù)據(jù)模型的設(shè)計(jì)與實(shí)現(xiàn)05-01
面向設(shè)計(jì)、試驗(yàn)、制造過(guò)程的數(shù)據(jù)集成模型及實(shí)現(xiàn)技術(shù)04-27
線源擴(kuò)散模型的建立及算法實(shí)現(xiàn)05-02
航模直升機(jī)飛行控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)05-02
基于模型的設(shè)計(jì)思想快速實(shí)現(xiàn)二維DCT變換04-27