計(jì)算機(jī)組成原理課程設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)_第1頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)_第2頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)_第3頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)_第4頁
計(jì)算機(jī)組成原理課程設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、學(xué) 號(hào): 0120810340113課 程 設(shè) 計(jì)課程名稱計(jì)算機(jī)組成原理題 目帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)學(xué) 院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院專 業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí)姓 名指導(dǎo)教師2010年1月10日目 錄課程設(shè)計(jì)任務(wù)書11、設(shè)計(jì)原理11.1 實(shí)驗(yàn)原理11.2 實(shí)驗(yàn)?zāi)康?1.3 模型機(jī)的邏輯框圖21.4 指令類型及格式31.5 微指令與微程序介紹41.6 后續(xù)微地址的產(chǎn)生及微程序入口地址的形成52、調(diào)試過程與數(shù)據(jù)記錄52.1 源程序代碼5 2.2 指令碼6 2.3 微程序6 2.4 微單步運(yùn)行過程7 2.5 時(shí)序圖103、設(shè)計(jì)心得114、參考文獻(xiàn)12課程設(shè)計(jì)任務(wù)書學(xué)生姓名: 趙旭林 專業(yè)班級(jí): 計(jì)算機(jī) 指導(dǎo)

2、教師: 馬保才 工作單位:計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院題 目: 基本模型機(jī)的設(shè)計(jì)帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)初始條件: 理論:學(xué)完“電工電子學(xué)”、“數(shù)字邏輯”、“匯編語言程序設(shè)計(jì)”、和“計(jì)算機(jī)組成原理”課程,掌握計(jì)算機(jī)組成原理實(shí)驗(yàn)平臺(tái)的使用。實(shí)踐:計(jì)算機(jī)學(xué)院科學(xué)系實(shí)驗(yàn)中心提供計(jì)算機(jī)、實(shí)驗(yàn)的軟件、硬件平臺(tái),在實(shí)驗(yàn)中心硬件平臺(tái)驗(yàn)證設(shè)計(jì)結(jié)果。要求完成的主要任務(wù): (包括課程設(shè)計(jì)工作量及其技術(shù)要求,以及說明書撰寫等具體要求)1、基本模型機(jī)系統(tǒng)分析與設(shè)計(jì),利用所學(xué)的計(jì)算機(jī)組成原理課程中的知識(shí)和提供的實(shí)驗(yàn)平臺(tái)完成設(shè)計(jì)任務(wù),從而建立清晰完整的整機(jī)概念。2、根據(jù)課程設(shè)計(jì)題目的要求,編制實(shí)驗(yàn)所需的程序,上機(jī)測(cè)試并分析所設(shè)計(jì)的程

3、序。3、課程設(shè)計(jì)的書寫報(bào)告應(yīng)包括: (1)課程設(shè)計(jì)的題目。 (2)設(shè)計(jì)的目的及設(shè)計(jì)原理。 (3)根據(jù)設(shè)計(jì)要求給出模型機(jī)的邏輯框圖。 (4)設(shè)計(jì)指令系統(tǒng),并分析指令格式。 (5)設(shè)計(jì)微程序及其實(shí)現(xiàn)的方法(包括微指令格式的設(shè)計(jì),后續(xù)微地址的產(chǎn)生方法以及微程序入口地址的形成)。 (6)模型機(jī)當(dāng)中時(shí)序的設(shè)計(jì)安排。 (7)設(shè)計(jì)指令執(zhí)行流程。 (8)給出編制的源程序,寫出程序的指令代碼及微程序。 (9)說明在使用軟件hkcpt的聯(lián)機(jī)方式與脫機(jī)方式的實(shí)現(xiàn)過程(包括編制程序中帶進(jìn)位運(yùn)算指令的時(shí)序分析,累加器a和有關(guān)寄存器、存儲(chǔ)器的數(shù)據(jù)變化以及數(shù)據(jù)流程)。(10)課程設(shè)計(jì)總結(jié)(設(shè)計(jì)的特點(diǎn)、不足、收獲與體會(huì))。時(shí)

4、間安排: 周一:熟悉相關(guān)資料。 周二:系統(tǒng)分析,設(shè)計(jì)程序。 周三、四:編程并上實(shí)驗(yàn)平臺(tái)調(diào)試 周五:撰寫課程設(shè)計(jì)報(bào)告。指導(dǎo)教師簽名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日計(jì)算機(jī)組成原理課程設(shè)計(jì) - 帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)1設(shè)計(jì)原理1.1 實(shí)驗(yàn)原理在以往各個(gè)模塊實(shí)驗(yàn)中,各模塊的控制信號(hào)都是由實(shí)驗(yàn)者手動(dòng)產(chǎn)生的。而在真正的實(shí)驗(yàn)系統(tǒng)中,模擬機(jī)的運(yùn)行是在微程序的控制下,實(shí)現(xiàn)特定指令的功能。在本實(shí)驗(yàn)平臺(tái)中,模型機(jī)從內(nèi)存取出、解釋、執(zhí)行機(jī)器指令都將由微指令和與之相配合的時(shí)序來完成,即1條機(jī)器指令對(duì)應(yīng)1個(gè)微程序。本次實(shí)驗(yàn)完成,依靠判斷進(jìn)位位cy是否溢出,若低位位運(yùn)算有溢出,則將結(jié)果存入低地址,并且在兩

5、高位運(yùn)算時(shí),將低位的進(jìn)位值也參與運(yùn)算,若高位運(yùn)算溢出,則不在主存ram中給予保存。實(shí)驗(yàn)提供了四條帶進(jìn)位的運(yùn)算指令:rrc a 將a寄存器中的內(nèi)容帶進(jìn)位位一起循環(huán)右移rlc a 將a寄存器的的內(nèi)容帶進(jìn)位位一起循環(huán)左移add a, ri 將a寄存器的內(nèi)容與ri的內(nèi)容相加,如果加法溢出將進(jìn)位到cyjc addr 條件跳轉(zhuǎn)指令,如果進(jìn)位位cy溢出,跳轉(zhuǎn)到addrjmp addr 無條件跳轉(zhuǎn)指令,跳轉(zhuǎn)到addr1.2設(shè)計(jì)目的 1. 掌握了各個(gè)單元模塊的工作原理,進(jìn)一步將其組成完整的系統(tǒng),構(gòu)成一臺(tái)基本的模型計(jì)算機(jī)。 2. 在本實(shí)驗(yàn)中,我們將規(guī)劃讀寫內(nèi)存、寄存器、數(shù)值計(jì)算等功能,并且編寫相應(yīng)的微程序。請(qǐng)具體

6、上機(jī)調(diào)試各個(gè)模塊單元以便進(jìn)一步掌握整機(jī)的概念。 3. 本實(shí)驗(yàn)是為了實(shí)驗(yàn)一組4位16進(jìn)制數(shù)的運(yùn)算,例如r1r0,將其中保存的數(shù)據(jù)作為一組表示一個(gè)整體的數(shù),來參與運(yùn)算,如r1=55h, r0=66h。則認(rèn)為r1r0為5566h來參與與其它4位16進(jìn)制數(shù)的運(yùn)算。并將得出的結(jié)果存在主存中兩個(gè)連續(xù)的單元中,高位存高地址,低位存低地址。1.3 模型機(jī)的邏輯框圖1.4 指令類型及格式1. 指令類型1.算術(shù)/邏輯運(yùn)算類指令: 如:加法,減法,取反,邏輯運(yùn)算 add a, ri sub a, ri2.移位操作類指令:帶進(jìn)位或不帶進(jìn)位的移位指令 rrc a3.數(shù)據(jù)傳送類指令:cpu內(nèi)部寄存器之間數(shù)據(jù)傳遞mov a

7、,rimov ri,a4.程序跳轉(zhuǎn)指令:跳轉(zhuǎn)指令分為無條件跳轉(zhuǎn)和有條件跳轉(zhuǎn)指令 jmp addr 無條件跳轉(zhuǎn) jc addr cy=1 時(shí)跳轉(zhuǎn)5. 存儲(chǔ)器操作類指令:存儲(chǔ)器讀/寫指令。把內(nèi)存某單元內(nèi)容寫入寄存器中或把寄存器的內(nèi)容寫入存儲(chǔ)器,如: lda addr sta addr sta addr (a)- addr2. 指令類型1.直接地址尋址: 雙字節(jié)指令: lda addr (addr)- a sta addr (a)- addr1716151413121110第1字節(jié) 操作碼 a7a6a5a4a2a2a1a0第2字節(jié) 操作數(shù)地址addr 2.寄存器直接尋址:指令字節(jié)中含有寄存器選擇碼,

8、決定選擇哪個(gè)寄存器進(jìn)行操作。如:?jiǎn)巫止?jié)指令 : mov a,ri (ri)-a1716151413121110 單字節(jié) 操作碼與ri選擇碼如:雙字節(jié)指令: mov ri,#data data- ri1716151413121110第1字節(jié) 操作碼與ri選擇碼第2字節(jié) datad7d6d5d4d2d2d1d0 3.寄存器間接尋址:如:?jiǎn)巫止?jié)指令: mov a,ri (ri)-a 1716151413121110 操作碼 ri選擇碼 4.立即數(shù)尋址: 如: mov a,#data data- a mov ri,#data data- ri1716151413121110第1字節(jié) 操作碼與ri選擇碼

9、d7d6d5d4d2d2d1d0第2字節(jié) data1.5 微指令與微程序介紹 在計(jì)算機(jī)中,一條指令功能是由控制部件通過控制線向執(zhí)行部件發(fā)出各種控制命令,執(zhí)行部件接受命令時(shí),按一定的次序執(zhí)行一系列最基本操作完成。這些控制命令通常稱為微命令,而最基本的操作稱為微操作。1. 微指令在微操作控制的計(jì)算機(jī)中,將在cpu周期中使計(jì)算機(jī)實(shí)現(xiàn)一定操作功能的一組微命令的集合稱為微指令。微指令是為實(shí)現(xiàn)某個(gè)操作功能而發(fā)出的控制信號(hào)的有關(guān)信息形成的。一條指令通常分為若干條微指令,按次序執(zhí)行這些微指令,就可以實(shí)現(xiàn)指令的功能。微程序2. 微程序計(jì)算機(jī)的程序由指令序列構(gòu)成。而計(jì)算機(jī)每條指令的功能均由指令序列解釋完成,這些微

10、指令序列的集合稱為微程序。 1.6 后續(xù)微地址的產(chǎn)生以及微程序入口地址的形成微地址的運(yùn)行順序?yàn)橄碌刂反_定法,即采用計(jì)數(shù)增量方法,每條微指令執(zhí)行過后微地址自動(dòng)加1,指向下一條微指令地址。例如:確定了一條程序的微程序入口地址為01h,那么當(dāng)執(zhí)行完01h這條微指令后微地址加1,指向02h微地址。微地址寄存器由2片74ls161組成,當(dāng)模型機(jī)在停止?fàn)顟B(tài)下,微地址被清零。當(dāng)實(shí)驗(yàn)平臺(tái)開始運(yùn)行時(shí),微地址從00h開始運(yùn)行。且00h放置一條取指指令,根據(jù)程序開始地址從內(nèi)存中讀出第一條指令。2、 數(shù)據(jù)記錄2.1 源程序代碼帶進(jìn)位運(yùn)算指令的實(shí)現(xiàn)mov a,#81rrc amov a,#18mov r0,#40mov

11、 a,#18rlc aadd a,r0jc 10jmp 0asta 20halt2.2 指令碼 圖表2 源程序中每條指令對(duì)應(yīng)的指令碼內(nèi)存地址指令助記符指令碼說明00hmov a, #815fh立即數(shù)81h-a01h81h無效02hrrc a9fha103hmov a,#185fh立即數(shù)18h-a04h18h05hrlc aafha寄存器r007h40h08hmov a,#185fh立即數(shù)18h-a09h18h0ahrlc aafhaa0chjc 10b7hcy有進(jìn)位,跳轉(zhuǎn)到0fh0dh10h0ehjmp 0abfh跳轉(zhuǎn)到0ah0fh0ah10hsta 208fh將a的內(nèi)容寫入ram地址20h1

12、1h20h12hhaltffh停機(jī)2.3 微程序微程序的執(zhí)行過程:0000 4d ,ff ,ff 取指指令 0017 dd ,fb ,ff dbusa 0018 4d ,ff ,ff 0027 ff ,f1 ,ef a1 0028 4d ,ff ,ff 取指指令 0017 dd ,fb ,ff dbusa0018 4d ,ff ,ff 002b ff ,e9 ,ff ari001c 4d ,ff, ff ridbusa0017 dd ,fb ,ff dbusa0018 4d ,ff ,ff002b ff ,e9 ,ff abus-dr10006 4d ,ff, ff 取指002f d4, ff

13、 ,ff dbus-ir20030 4d, ff, ff ir2-abus002f d4 ,ff ,ff dbuspc003f ff ,df ,ff 停機(jī)2.4 微單步運(yùn)行過程 圖表3 微單步運(yùn)行過程微地址數(shù)據(jù)流程指令碼數(shù)據(jù)總線地址總線操作數(shù)寄存器ooh取指微指令ram-bus-ir15fh00hir1 = 5fhmov a, #8117hbus-a81h01ha=81h18h取指微指令 ram-bus-ir19fh02hir1=9fhrrc a27ha140ha=40,cy溢出28h取指微指令 ram-bus-ir15fh03hir1=0chmov a,#1817hbus-a18h04ha=

14、18h18h取指微指令 ram-bus-ir1afh05hir1=afhrlc a2bhabus-ir16ch06hir1=6chmov a,#401bhbus-寄存器r040h07hr0=40h1ch取指微指令 ram-bus-ir15fh08hir1=5fhmov a,#182bhbus-a18h09ha=18h2ch取指微指令 ram-bus-ir1afh0ahir1=afhrlc a2bhabus-ir10ch0bhir1=0chadd a, r003ha-dr130hdr1=30h04hr0-dr240hd32=40h05halu-a70halu=70 cy無溢出06h取指微指令 r

15、am-bus-ir1b7h0chir1=b7hjc 0f2fhram-bus-ir210h0dhir2=10h30h取指微指令 ram-bus-ir1bfhoehcy無溢出jmp 0a2fhram-bus-ir20ah0fhir2=oah30h取指微指令 ram-bus-ir1afh0ah跳轉(zhuǎn)到oah2bhabus-ir10ch0bhir1=0chadd a, r003ha-dr1e0hdr1=e0h04hr0-dr240hdr2=40h05halu-a20halu=70 cy無溢出06h取指微指令 ram-bus-ir1bfh0chir1=b7hjc 0fjc 0f2fhram-bus-ir

16、210h0dhir2=10h30h取指微指令 ram-bus-ir18fh10hcy有溢出sta 2023hram-busir220h11hir2=20h24ha-ram(20h)20h20hram(20)=2025h取指微指令 ram-bus-ir18fh10hcy有溢出halt3fh停機(jī)停機(jī)2.5 時(shí)序圖pls1: 微地址寄存器的工作脈沖,用來設(shè)置微程序的首地址及微地址加1.pls2: pc計(jì)數(shù)器的工作脈沖,根據(jù)微指令的控制實(shí)現(xiàn)pc計(jì)數(shù)器的首地址及微地址和重置pc計(jì)數(shù)器(跳轉(zhuǎn)指令)等功能。pls3: 把24位微指令打入3片微指令鎖存器。pls4: 把當(dāng)前總線上的數(shù)據(jù)打入微指令選通的寄存器中

17、。典型代碼的時(shí)序圖如下:0018 微指令(取指微指令 ram-bus-ir1)的時(shí)序圖如下:0003 微指令(a-dbus-鎖存器dr1)的時(shí)序圖如下3、設(shè)計(jì)心得1. 次的課程設(shè)計(jì)是當(dāng)場(chǎng)完成當(dāng)場(chǎng)驗(yàn)收,所以時(shí)間比較緊。由于之前的準(zhǔn)備不足,導(dǎo)致了剛開始做的時(shí)候出現(xiàn)了很多問題,包括最基本的連線,軟件操作都出現(xiàn)了一些基本錯(cuò)誤。這讓我充分意識(shí)到在做課程設(shè)計(jì)之前要做好充分的準(zhǔn)備工作,包括了解原理、流程、操作步驟等等。這樣在做實(shí)驗(yàn)的時(shí)候就不會(huì)手忙腳亂而出現(xiàn)很多基本的錯(cuò)誤了。2. 在上計(jì)算機(jī)組成原理課程的時(shí)候都是學(xué)習(xí)原理方面的知識(shí),而課程設(shè)計(jì)需要運(yùn)用平時(shí)學(xué)過的知識(shí)來實(shí)踐。這次課程設(shè)計(jì)讓我明白了平時(shí)不應(yīng)該死讀書,而是應(yīng)該多把學(xué)到的知識(shí)運(yùn)用到實(shí)踐當(dāng)中,活學(xué)活用才能最根本的掌握知識(shí)。3.

溫馨提示

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

評(píng)論

0/150

提交評(píng)論