計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告11_第1頁(yè)
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告11_第2頁(yè)
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告11_第3頁(yè)
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告11_第4頁(yè)
計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告11_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)組成原理課程設(shè)計(jì)報(bào)告實(shí)驗(yàn)項(xiàng)目:1、設(shè)計(jì)一個(gè)具有帶進(jìn)位加法和立即數(shù)尋址方式的模型機(jī)2、設(shè)計(jì)一個(gè)具有帶進(jìn)位加法和條件跳轉(zhuǎn)的模型機(jī)專(zhuān) 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) 班 級(jí): 10級(jí)37-4班 學(xué) 號(hào): 11003070407 姓 名: 何岑 指導(dǎo)教師: 王勇 實(shí)驗(yàn)時(shí)間: 20125.2527 實(shí)驗(yàn)一:設(shè)計(jì)一個(gè)具有帶進(jìn)位加法和立即數(shù)尋址方式的模型機(jī)1、問(wèn)題描述本題目設(shè)計(jì)的是一臺(tái)具有輸入、輸出、帶進(jìn)位加法、儲(chǔ)存和跳轉(zhuǎn)功能的模型計(jì)算機(jī),并寫(xiě)出工作程序和測(cè)試數(shù)據(jù)驗(yàn)證所設(shè)計(jì)的指令系統(tǒng)。2、設(shè)計(jì)目標(biāo)在設(shè)計(jì)完本程序后,所設(shè)計(jì)模型機(jī)能夠完成從一個(gè)外設(shè)輸入一個(gè)數(shù)到指定的寄存器中,另外輸入立即數(shù)并將其存入另一個(gè)、寄存器

2、中,兩數(shù)進(jìn)行進(jìn)位相加并將結(jié)果保存到第一個(gè)寄存器,輸出結(jié)果,并顯示。另外,實(shí)現(xiàn)無(wú)條件跳轉(zhuǎn)至開(kāi)始。3、指令格式助記符號(hào)機(jī)器指令碼功 能in0000 0000input - r0adc imm1110 0000 xxxx xxxxr0+imm+cy - r0sta addr0010 0000 xxxx xxxxr0 - addrout addr0011 0000 xxxx xxxxaddr - ledjmp addr0100 0000 xxxx xxxxaddr - pc4、設(shè)計(jì)微指令(1)定義指令碼,及定義一個(gè)下地址為08h指令指令編碼微地址in0000 000008adc0001 000009s

3、ta0010 000010out0011 000011jmp0100 000012 (2)設(shè)計(jì)微指令編碼表微地址s3s2s1s0mcnwea9a8abcua5-ua000000000011000000000000001010000000111101101100000100200000000110000000100100008000000000001000000000001090000000111101101100000110300000000101100000000010004000000011010001000000101051001000110011010000000010a0000000

4、1111011011000011006000000001110000000000111070000001010000010000000010b0000000111101101100011010d0000000011100000000011100e0000000010010000000011110f0000001100000010000000010c00000001111011011001000010000000001101000110000001(3)微程序流程圖(4)由編碼得到微程序根據(jù)以上編寫(xiě)的微程序,以及微指令代碼化的方法得到的微程序代碼為:$m00018001$m0101ed82$m0

5、200c048$m08001001$m0901ed83$m0300b004$m0401a205$m05919a01$m0a01ed86$m0600e007$m07028201$m0b01ed8d$m0d00e00e$m0e00900f$m0f030201$m0c01ed90$m1000d181(5)寫(xiě)工作程序$p0000$p0110$p0222$p0320$p0401$p0530$p0601$p0740$p0800(6)建立聯(lián)機(jī)操作文件為了從pc機(jī)下載工作程序和微程序,需要建立聯(lián)機(jī)操作文件,該文件是普通的文本文件,擴(kuò)展名為txt,可用記事本來(lái)建立的,要求:a、 測(cè)試用的工作程序排在文件的前面,

6、每個(gè)內(nèi)存地址及代碼占一行;b、 微指令代碼排在文件的后面,每個(gè)微地址及微指令代碼占一行;(7)按照實(shí)驗(yàn)電路圖連接實(shí)驗(yàn)線路實(shí)驗(yàn)采用復(fù)雜模型機(jī)系統(tǒng)連線圖,電路圖如下:(8)運(yùn)行(a)系統(tǒng)與pc機(jī)聯(lián)機(jī)實(shí)驗(yàn)系統(tǒng)安裝有一個(gè)標(biāo)準(zhǔn)的db型9針rs-232c串口插座,使用配套的串行通信電纜分別插在實(shí)驗(yàn)系統(tǒng)及pc機(jī)的串口,即可實(shí)現(xiàn)系統(tǒng)與pc機(jī)的聯(lián)機(jī)操作。(b)下載工作程序和微程序使用唐都軟件將工作程序和微程序下載到實(shí)驗(yàn)箱的內(nèi)存和控制存儲(chǔ)器中。其中,自帶電 線的實(shí)驗(yàn)箱用ncmp53軟件,啟動(dòng)軟件后使用f4裝載進(jìn)行下載;外接電源線的實(shí)驗(yàn)箱用cmpp軟件,啟動(dòng)軟件后在菜單中選擇轉(zhuǎn)儲(chǔ)/裝載進(jìn)行下載。(c)運(yùn)行實(shí)驗(yàn)原理圖

7、,及數(shù)據(jù)流程圖如下:(9)調(diào)試以及調(diào)試過(guò)程(把寫(xiě)好的程序下載到唐都實(shí)驗(yàn)箱,打開(kāi)軟件復(fù)雜模型機(jī)的原理圖,按步驟點(diǎn)擊單步運(yùn)行,查看運(yùn)行的指令和微指令的過(guò)程)調(diào)試發(fā)現(xiàn)問(wèn)題:a、 剛開(kāi)始時(shí)點(diǎn)擊時(shí),機(jī)器不運(yùn)行。b、 dr1與dr2相加結(jié)果不正確。c、 從r0到內(nèi)存sta存數(shù)指令的存數(shù)操作有誤,r0-b打開(kāi)的同時(shí)把a(bǔ)r的ldar也打開(kāi)了,造成指向內(nèi)存單元改變。也就造成輸出時(shí)的數(shù)據(jù)不正確和。d、 修改上一條錯(cuò)誤后,誤把r0數(shù)據(jù)存在01單元,覆蓋了原來(lái)的指令,當(dāng)跳轉(zhuǎn)指令跳轉(zhuǎn)回到原來(lái)程序的開(kāi)頭時(shí),執(zhí)行第二次就發(fā)生了錯(cuò)誤。所以針對(duì)以上問(wèn)題,都一一地找到相應(yīng)的錯(cuò)誤之處和解決方法:a1、連線有錯(cuò)誤,檢查后發(fā)現(xiàn)錯(cuò)誤之處

8、,并改正b2、改變s3到s0 ,改為1001(帶進(jìn)位加法)c3、由于疏忽造成,修改對(duì)應(yīng)的ldar開(kāi)關(guān)編碼d4、修改$p程序,存到?jīng)]用的內(nèi)存上述問(wèn)題解決之后,程序便可運(yùn)行出結(jié)果。(10)運(yùn)行結(jié)果在上圖中會(huì)執(zhí)行input到r0,然后從內(nèi)存中取出一個(gè)數(shù)放到dr2中,r0內(nèi)的數(shù)放到dr1中,dr1+dr2+cy放到r0中,再將r0內(nèi)的數(shù)顯示到led上。實(shí)驗(yàn)二:設(shè)計(jì)一個(gè)具有帶進(jìn)位加法和條件跳轉(zhuǎn)的模型機(jī)1、問(wèn)題描述本題目設(shè)計(jì)的是一臺(tái)具有輸入、輸出、數(shù)據(jù)傳送、帶進(jìn)位加法、條件跳轉(zhuǎn),停機(jī)功能的模型計(jì)算機(jī),并寫(xiě)出工作程序和測(cè)試數(shù)據(jù)驗(yàn)證所設(shè)計(jì)的指令系統(tǒng)。2、指令格式助記符號(hào)指令格式功 能movrs,rdxxxx

9、rs rdrs-rdadcrs,rdxxxx rs rdrs+rd+cy - r0bzcd00 00 00 00 d當(dāng)cy=1或z=1時(shí),d-pc否則,順序執(zhí)行。inrdxxxx 01 rdsw-rdoutrdxxxx 10 rdrd - ledhaltxxxx 0000停機(jī)3、設(shè)計(jì)微指令(1)定義一個(gè)下地址為20h指令指令編碼微地址in0011 000023mov0010 000022adc0001 000021bzcd0000 000020out0100 000024halt0101 000025(2)設(shè)計(jì)微指令微地址s3s2s1s0mcnwea9a8abcua5-ua0000000000

10、110000000000000010100000001111011011000001002000000001100000001100000200000000110000000110000011100000001111011011000001103000000001101000110000001210000000110100100000001000400000001101100100000010105100100011001101000000001220000000110010010000000012300000000000100000000000124000000010000001000000

11、00125000000011000000000100101(3)畫(huà)出微程序流程圖(4) 微程序代碼根據(jù)以上編寫(xiě)的微程序,以及微指令代碼化的方法得到的微程序代碼為:$m00018001$m0101ed82$m0200c060$m200180c1$m1101ed83$m0300d181$m2101a404$m0401b205$m05919a01$m22019201$m23001001$m24030201$m25018025(5)設(shè)計(jì)工作程序代碼,以測(cè)試微程序$p0035$p0124$p0235$p0314$p0444$p0500$p0607$p0750(6)按照實(shí)驗(yàn)一建立聯(lián)機(jī)文檔并按照書(shū)本計(jì)算機(jī)組

12、成原理課程設(shè)計(jì)的附錄2(系統(tǒng)連線參考圖)進(jìn)行連線。(7)運(yùn)行與調(diào)試把程序下載但唐都實(shí)驗(yàn)箱進(jìn)行運(yùn)行和調(diào)試。通過(guò)調(diào)試發(fā)現(xiàn)的問(wèn)題:a、 不知道r1、r2、r0三個(gè)寄存器的關(guān)系(請(qǐng)教老師解決)。b、 運(yùn)行第一條指令后便停滯,不再執(zhí)行下面的操作。c、 解決a后,從輸入模塊輸入到r1或r2都不能實(shí)現(xiàn)。d、 條件跳轉(zhuǎn)指令后,執(zhí)行非設(shè)計(jì)程序,程序跑飛了。通過(guò)前面的幾次實(shí)驗(yàn),已經(jīng)獲得部分解決方法的經(jīng)驗(yàn)b1、檢查連線未能發(fā)現(xiàn)問(wèn)題,估計(jì)可能是哪里接觸不良,故而棄之,換實(shí)驗(yàn)箱,重新調(diào)試,發(fā)現(xiàn)可以運(yùn)行的。c2、自己未能找出錯(cuò)誤所在,請(qǐng)教老師,指出連線上,我們?nèi)圆捎玫氖窃瓉?lái)電路圖,因而沒(méi)有把r1、r2寄存器連到電路中。d

13、3、未設(shè)置好跳轉(zhuǎn)的方向,最后使其跳轉(zhuǎn)到停機(jī)指令,使其處于停機(jī)狀態(tài)。(8)運(yùn)行結(jié)果程序會(huì)先從sw讀一個(gè)數(shù)放到r1中,然后將r1內(nèi)的數(shù)轉(zhuǎn)移到r0中,然后將r0內(nèi)的數(shù)放到dr1,r1中的數(shù)放到dr2,然后dr1+dr2+cy放到r0中,然后將r1內(nèi)的數(shù)顯示到led上,下一步就進(jìn)入了停機(jī)的死循環(huán)。實(shí)驗(yàn)總結(jié)與心得體會(huì)本次課程設(shè)計(jì)鞏固和實(shí)踐了本學(xué)期所學(xué)習(xí)的理論知識(shí)。我沒(méi)有單純的為設(shè)計(jì)指令而設(shè)計(jì)指令,而是采取了以所要實(shí)現(xiàn)的功能為驅(qū)動(dòng),進(jìn)而決定需要哪些指令,然后進(jìn)行設(shè)計(jì),這樣不僅達(dá)到了設(shè)計(jì)指令的目的,而且體驗(yàn)到了指令在實(shí)際編程中的工作方式,加深了對(duì)機(jī)器指令的理解。這次課程設(shè)計(jì)我設(shè)計(jì)指令實(shí)現(xiàn)了“一個(gè)具有帶進(jìn)位加

14、法和立即數(shù)尋址方式的模型機(jī)”,在指令設(shè)計(jì)的過(guò)程中,遇到了很多的問(wèn)題,我最初設(shè)想了三種方案,經(jīng)過(guò)跟同學(xué)討論否定了一種,后又在老師的指導(dǎo)下,分析了另外兩種方案,最終選擇了通過(guò)p3測(cè)試,在微程序內(nèi)部實(shí)現(xiàn)流程轉(zhuǎn)移。這種方法不僅使得指令系統(tǒng)簡(jiǎn)單,而且由于采用硬件實(shí)現(xiàn),速度很快,而我原來(lái)的那兩套方案都是用軟件實(shí)現(xiàn)類(lèi)似功能,速度慢,且邏輯復(fù)雜,不符合指令系統(tǒng)設(shè)計(jì)的目標(biāo)和要求。通過(guò)這個(gè)方案選擇的過(guò)程,我加深了指令系統(tǒng)性能要求的理解,對(duì)指令系統(tǒng)的工作方式有了更清晰的認(rèn)識(shí)。在本次課程設(shè)計(jì)之前,我對(duì)程序計(jì)數(shù)器pc的理解并不深刻,經(jīng)常會(huì)將其和微程序的地址控制邏輯弄混。通過(guò)這次課程設(shè)計(jì),我才真正理解:pc就是一個(gè)地址指針,只能指示內(nèi)存

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論