關(guān)于編制微程序控制簡單模型機(jī)的組成原理課程設(shè)計報告_第1頁
關(guān)于編制微程序控制簡單模型機(jī)的組成原理課程設(shè)計報告_第2頁
關(guān)于編制微程序控制簡單模型機(jī)的組成原理課程設(shè)計報告_第3頁
關(guān)于編制微程序控制簡單模型機(jī)的組成原理課程設(shè)計報告_第4頁
關(guān)于編制微程序控制簡單模型機(jī)的組成原理課程設(shè)計報告_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄一、 摘要二、 微程序控制器原理三、 總體設(shè)計(系統(tǒng)構(gòu)成)四、 詳細(xì)設(shè)計五、 測試六、 結(jié)論7、 參考文獻(xiàn)一、 摘要利用cpu與簡單模型機(jī)設(shè)計實驗中所學(xué)到的實驗原理以及編程思想,硬件設(shè)備,自擬編寫指令的應(yīng)用程序,用微程序控制器實現(xiàn)了一系列的指令功能。完成了各指令的格式以及編碼的設(shè)計,實現(xiàn)了各機(jī)器指令微代碼,形成具有一定功能的完整的應(yīng)用程序。在本設(shè)計中完成了基本的數(shù)據(jù)輸入輸出(in,out),帶左移的加法運算(add ri , rj , n; ri ß(ri)+(rj)<<n ,rj中內(nèi)容不變),存儲器到存儲器的傳送(mov memi , memj)以及call與ret

2、指令的實現(xiàn)。 關(guān)鍵詞:微程序控制器原理 微指令編碼 機(jī)器指令微代碼 設(shè)計流程圖2、 微程序控制器原理 1. 設(shè)計要求: 用微程序控制器實現(xiàn)以下指令功能,設(shè)計各指令格式以及編碼,并實現(xiàn)各機(jī)器指令微代碼,根據(jù)定義的機(jī)器指令,自擬編寫包含以下指令的應(yīng)用程序。參考實驗5.3、6.1,在此基礎(chǔ)上增加如下指令調(diào)用:calladdr ;指令功能與80x86相同,addr是8位二進(jìn)制地址 返回:ret ;存儲器到存儲器傳送:mov memi , memj; memi ß(memj), i<>j,memi內(nèi)存單元地址帶左移的加法運算:addri , rj , n; ri ß(ri

3、)+(rj)<<n ,rj中內(nèi)容不變 2、 設(shè)計原理及設(shè)計思想: 本設(shè)計的核心是一個簡單的cpu,cpu 由運算器(alu)、微程序控制器(mc)、通用寄存器(r0),指令寄存器(ir)、程序計數(shù)器(pc)和地址寄存器(ar)組成,如下圖所示。cpu 在寫入相應(yīng)的微指令后,就具備了執(zhí)行機(jī)器指令的功能,但是機(jī)器指令一般存放在主存當(dāng)中,cpu 必須和主存掛接后,才有實際的意義,所以還需要在該cpu 的基礎(chǔ)上增加一個主存和基本的輸入輸出部件,以構(gòu)成一個簡單的模型計算機(jī)。 這此次設(shè)計中用到了程序計數(shù)器,系統(tǒng)的程序計數(shù)器(pc)和地址寄存器(ar)集成在一片cpld 芯片中 。clr 連接至

4、con 單元的總清端clr,按下clr 按鈕,將使pc 清零,ldpc 和t3 相與后作為計數(shù)器的計數(shù)時鐘,當(dāng)load為低時,計數(shù)時鐘到來后將cpu 內(nèi)總線上的數(shù)據(jù)打入pc。 本模型機(jī)共有七條指令:in(輸入)、add(二進(jìn)制加法)、out(輸出)、,hlt(停機(jī)),call(調(diào)用)相當(dāng)于jmp(無條件轉(zhuǎn)移)、ret(返回)、shl(左移)其指令格式如下(高位為操作碼): 其中call指令為雙字節(jié)指令,其余均為單字節(jié)指令,*為addr 對應(yīng)的二進(jìn)制地址碼。根據(jù)以上要求,設(shè)計數(shù)據(jù)通路圖如下圖: 數(shù)據(jù)通路圖 三、總體設(shè)計(系統(tǒng)構(gòu)成)利用cpu的運算器(alu)、微程序控制器(mc)、通用寄存器(r

5、0)、指令寄存器(ir)、程序計數(shù)器(pc)、地址寄存器(ar)等的各項功能即這個簡單的模型機(jī),設(shè)計各指令格式以及編碼,并實現(xiàn)各機(jī)器指令微代碼,根據(jù)定義的機(jī)器指令,編寫滿足要求的應(yīng)用程序。通過以下幾大步驟完成所需設(shè)計。a. 通過分析cpu各個功能部件之間的相互關(guān)系,完成實驗所需電路圖設(shè)計,b. 規(guī)劃出整個應(yīng)用程序所需要的流程圖,為微代碼的編寫提供清晰的思路c. 利用流程圖所給思想,設(shè)計微代碼格式,編寫微指令以及機(jī)器指令微代碼d. 通過聯(lián)機(jī)操作方式完成測試,檢測是否能完成要求中的功能進(jìn)行分析總結(jié),策劃優(yōu)化方案4、 詳細(xì)設(shè)計 a 、系統(tǒng)涉及到的微程序流程見下圖所示,當(dāng)擬定“取指”微指令時,該微指令

6、的判別測試字段為p<1>測試。由于“取指”微指令是所有微程序都使用的公用微指令,因此p<1> 的測試結(jié)果出現(xiàn)多路分支。本設(shè)計用指令寄存器的高6 位(irir2)作為測試條件,出現(xiàn)七路分支,占用七個固定微地址單元,剩下的其它地方就可以一條微指令占用控存一個微地址單元隨意填寫,微程序流程圖上的單元地址為16 進(jìn)制。 begin nop 00 pc ->arpc+1->pc 01mem->ir 03 p<1> 30shlin add out htl mov call ret 39pc->arpc+1->pc 32 30 33 35 3

7、a 3c36a+b->r0r0-.>ab->pcio->ir nopro->ioio->ro20 06 0901 01 0b 01 a<<1->r0mem->r0r0->ar0->a 0epc->b01a<<1->r0io->ario->ro 07 0a0cmem->pc 0fr0->b 080dr0->mem 01 01 01 01b 、電路連接圖c 、設(shè)計微代碼格式,編寫微指令以及機(jī)器指令微代碼設(shè)計思想為:利用程序計數(shù)器(pc)作為每一小節(jié)程序段的開始,當(dāng)擬定“取指

8、”指令后,利用p<1>字段進(jìn)行判別測試。in, out, add, mov, call, ret, shl, ret作為并行的程序入口。in:完成需要相加的兩個數(shù)據(jù)i、j的輸入,并分別存入a、b中,等待運算。out:完成程序運行結(jié)果的輸出,在相應(yīng)的軟件out的單元以及硬件設(shè)施的out單元的數(shù)碼管中均有顯示。add:完成帶左移的加法操作,即addri , rj , n ; ri ß(ri)+(rj)<<n 。首先完成a+b的 操作,然后再利用指令編寫完成左移功能。mov: 完成存儲器到存儲器的傳送,先送出mem中地址到r0,繼而改變mem地址,再將r0的地址送回

9、mem,以達(dá)到存儲器到存儲器的傳送的要求。call:實現(xiàn)程序的調(diào)用。借鑒jmp指令思想,完成指令間的跳轉(zhuǎn),以實現(xiàn)調(diào)用的目的。在設(shè)計中,為使調(diào)用效果能有更直接的體現(xiàn),我們將shl(左移)操作嵌入到調(diào)用過程中,使結(jié)果更加具體的展現(xiàn)。ret: 返回call所調(diào)用時b中所存儲的pc值,達(dá)到返回的作用。shl:實現(xiàn)左移操作,作為call指令所調(diào)用的內(nèi)容,使call指令實現(xiàn)具體的功能,使結(jié)果更清晰直接。hlt:停機(jī)操作。 1、利用流程圖所給思想,設(shè)計微代碼格式,編寫微指令以及機(jī)器指令微代碼 a機(jī)器指令以及微指令格式說明如下: b .微代碼設(shè)計中微指令說明 微指令格式 s0-s3 的具體功能如下展示: c根

10、據(jù)以上指令格式以及流程圖的設(shè)計,將每條指令微代碼化,形成微代碼表,作為應(yīng)用程序代碼的依據(jù)。所設(shè)計的二進(jìn)制微代碼表如下: d最后形成的實驗程序如下:; /* start of main memory data * /$p 00 20 ; start: in r0 從in 單元讀入數(shù)據(jù)送r0$p 01 00 ; add r0,r0 r0 和自身相加,結(jié)果送r0 $p 02 30 ; out$p 03 e0 ; jmp 13地址$p 04 13 ; $p 05 a0 ; mov mem,mem$p 06 50 ; hlt 停機(jī)$p 13 90 ;shl$p 14 30 ;out ro$p 15 60

11、 ;ret; /* end of main memory data * /; /* start of microcontroller data * /;/取指令/$m 00 000001 ;nop$m 01 006d43 ;pc->ar pc加1$m 03 107070 ;mem->ir,p<1>/in$m 32 183007 ;in->ro$m 07 001408 ;r0->q$m 08 183004 ;in->r1$m 04 002401 ;r1->b;/out/$m 33 280401 ;r0->out;/call/$m 3c 006

12、d5d ; pc->ar,pc +1$m 1d 002c0c ;pc->b$m 0c 105141 ;mem->pc;/and(shl)/$m 30 04b205 ;a+b->r0$m 05 001406 ;r0->a$m 06 03b201 ;a<<1->r0;/shl/$m 39 00140d ;r0->a$m 0d 03b201 ;a<<1->r0;/ret/$m 36 00d341 ;b->pc;/mov/$m 3a 18600b ;in->ar$m 0b 10300a ;mem->r0$m 0a

13、 186015 ;in->ar$m 15 200401 ;r0->mem;/hlt/$m 35 000035 ;nop;/* end of microcontroller data * /五 .測試 將最后所形成的實驗程序裝載到聯(lián)機(jī)軟件中,刷新指令區(qū)域;將mc單元的編程開關(guān)檔以及mem單元的編程開關(guān)檔均置為“運行”;按動con單元總清零按鈕clr,然后通過軟件運行程序,觀察單步執(zhí)行結(jié)果,并進(jìn)行分析檢測正誤。各步的執(zhí)行結(jié)果如以下圖片所示: 1.程序開始運行 (2)從in單元讀入數(shù)據(jù)送到r0 (3)將r0中的數(shù)據(jù)送到a中保存 (4)讀入的第2個數(shù)據(jù)送入b中進(jìn)行保存 (5)進(jìn)行加法后的結(jié)

14、果左移一位操作 (6)將r0中保存的結(jié)果送交out單元進(jìn)行顯示輸出 (7)開始執(zhí)行call指令操作,將pc跳轉(zhuǎn)時的值暫存于b中 (8) 執(zhí)行call指令后進(jìn)行跳轉(zhuǎn) (9) 在調(diào)用過程中,實現(xiàn)左移操作 (10) 執(zhí)行ret操作,將暫存于b中的pc值返回到pc中 (11) 開始執(zhí)行mov操作,從in中讀入數(shù)據(jù)修改ar值達(dá)到修改mem單元作用 (12) 將mem單元值暫存與r0中 (13) 修改mem單元值 (14) 從r0中送回原mem單元值,完成存儲器到存儲器的傳送所有運行均正常。六、總結(jié): 通過本次課程設(shè)計,學(xué)會了綜合的運用所學(xué)的計算機(jī)組成原理知識來設(shè)計并實現(xiàn)一個基本的模型機(jī),并會利用該模型機(jī)

15、進(jìn)行應(yīng)用程序的編寫,實現(xiàn)一系列功能。1. 掌握了簡單cpu的組成原理。深刻掌握了cpu的各個組成部分,即運算器(alu)、微程序控制器(mc)、通用寄存器(r0),指令寄存器(ir)、程序計數(shù)器(pc)和地址寄存器(ar)的工作原理和協(xié)調(diào)方式。2. 學(xué)會利用編程思想設(shè)計出清晰的流程圖,特別注意到各個程序段入口選擇的方法。3. 掌握了指令的格式及編碼,會編寫所要實現(xiàn)的機(jī)器指令的微指令,并能通過設(shè)計的微程序流程,編寫出完整的指令程序。4. 能將所學(xué)的計算機(jī)組成原理知識融會貫通,設(shè)計出較好的模型機(jī)。掌握了微程序的編寫運用,模型計算機(jī)的數(shù)據(jù)路徑以及微程序控制器的工作原理利用微程序了解釋所需的機(jī)器指令,以達(dá)到設(shè)計的目的,完成課程設(shè)計的要求5. 理解了團(tuán)隊合作的力量。通過團(tuán)隊的分工合作,相互探討,相互幫組,整個課程設(shè)計才順利完成,也達(dá)到了我們預(yù)期的目的。通過本次課程設(shè)計,所取得收獲與暴露的不足如下:收獲:a) 能很好的分工合作,能很好的團(tuán)隊合作,保證了設(shè)計的順利完成;b) 各組員都積極參與,共享設(shè)計思想,學(xué)會清晰而準(zhǔn)確的設(shè)計流程圖、微代碼等;c) 在設(shè)計的過程中,能取長補(bǔ)短,在實踐中求真理,認(rèn)真改善設(shè)計方案;d) 整個設(shè)計思想有自己的方案,不局限于參考,能很好的達(dá)到各項標(biāo)準(zhǔn)要求;e)本設(shè)計最具特色的是不僅完

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論