版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
課程設(shè)計(jì)任務(wù)書題目專業(yè)、班級(jí)學(xué)號(hào)姓名主要內(nèi)容、基本要求、主要參考資料等:完 成 期 限:指導(dǎo)教師簽名:課程負(fù)責(zé)人簽名:年 月 日目 錄第一章 程序設(shè)計(jì)概述1.1課程設(shè)計(jì)的教學(xué)目的1.2課程設(shè)計(jì)任務(wù)和基本要求第二章 指定應(yīng)用項(xiàng)目的設(shè)計(jì)實(shí)現(xiàn)3.1設(shè)計(jì)任務(wù)3.2任務(wù)分析及解決方案3.3設(shè)計(jì)原理3.4應(yīng)用項(xiàng)目設(shè)計(jì)實(shí)現(xiàn)操作步驟第三章 收獲、體會(huì)和建議參考文獻(xiàn)第一章 程序設(shè)計(jì)概述1.1 課程設(shè)計(jì)的教學(xué)目的本課程設(shè)計(jì)的教學(xué)目的是在掌握計(jì)算機(jī)系統(tǒng)組成及內(nèi)部工作機(jī)制、理解計(jì)算機(jī)各功能部件工作原理的基礎(chǔ)上,深入掌握信息流和控制信息流的流動(dòng)過程,進(jìn)一步加深計(jì)算機(jī)系統(tǒng)各模塊間相互關(guān)系的認(rèn)識(shí)和整機(jī)的概念,培養(yǎng)開發(fā)和調(diào)試計(jì)算機(jī)的技能。再設(shè)計(jì)實(shí)踐中提高應(yīng)用所學(xué)專業(yè)知識(shí)分析問題和解決問題的能力。1.2 課程設(shè)計(jì)任務(wù)和基本要求本課程設(shè)計(jì)以TDN-CM++計(jì)算機(jī)組成原理教學(xué)實(shí)驗(yàn)系統(tǒng)為平臺(tái)設(shè)計(jì)完成。按給定的數(shù)據(jù)格式和指令系統(tǒng),理解為程序控制器的設(shè)計(jì)原理。設(shè)計(jì)給定機(jī)器指令系統(tǒng)遺跡微程序流程圖,安慰指令格式寫出微程序的微指令代碼連接邏輯電路,完成啟動(dòng)、測試、編程、校驗(yàn)和運(yùn)行,并觀測運(yùn)行過程及結(jié)果。將微程序控制器模塊與運(yùn)算器模塊、存儲(chǔ)器模塊聯(lián)機(jī),組成一臺(tái)模擬計(jì)算機(jī)。用微程序控制器控制模型機(jī)的數(shù)據(jù)通路。通過在模型機(jī)上運(yùn)行由機(jī)器指令組成的簡單程序,掌握機(jī)器指令與微指令的關(guān)系,建立計(jì)算機(jī)的整機(jī)概念,掌握計(jì)算機(jī)的控制機(jī)制。按指定應(yīng)用項(xiàng)目進(jìn)行匯編指令格式及功能設(shè)計(jì),并設(shè)計(jì)相應(yīng)的機(jī)器指令代碼,按照模型及數(shù)據(jù)通路設(shè)計(jì)實(shí)現(xiàn)機(jī)器指令功能的微程序。在代碼到TDN-CM++實(shí)驗(yàn)系統(tǒng)并運(yùn)行,實(shí)現(xiàn)應(yīng)用要求。
PC
機(jī)上編輯機(jī)器指令和微程序,裝載第二章 指定應(yīng)用項(xiàng)目的設(shè)計(jì)實(shí)現(xiàn)3.1課程設(shè)計(jì)任務(wù)從輸入設(shè)備中讀取數(shù)據(jù)X并將其存入以K為直接地址的內(nèi)存單元,計(jì)算2X加X減1并將結(jié)果存入以N為間接地址的內(nèi)存單元。3.2課程設(shè)計(jì)思想及任務(wù)分析在進(jìn)行這一次設(shè)計(jì)之前當(dāng)我們看見我們的題目的時(shí)候,我們聯(lián)系到了最后的一次實(shí)驗(yàn)的機(jī)器運(yùn)行的過程聯(lián)系這次的的要求我們先明確的這次設(shè)計(jì)的大體過程,畫大體圖—匯編程序—流程圖—微指令代碼—檢查,然后我們進(jìn)行了下一步驟,觀察題目在進(jìn)行這一次的設(shè)計(jì)之時(shí)首先我們看見了在讀取與儲(chǔ)存時(shí)的兩種不同的尋址方式,想到了這兩種的不同,具體表示在流程圖上面就是間接尋址要通過地址先找地址再找數(shù)據(jù)所以要分兩次,然后我們又看了看我們的運(yùn)算所需要的過程,對(duì)照書本的49頁的代碼,我們決定了將2X通過一次X加X算術(shù)運(yùn)算來實(shí)現(xiàn),由于X的給予只需要做運(yùn)算即可,非運(yùn)算書上有,加法運(yùn)算書上有,減1運(yùn)算書上面也有,于是我們就決定在預(yù)算過程過程中通過4次來實(shí)現(xiàn),所以我們想到了先計(jì)算X加X然后在將2X求非再加X最后減1的運(yùn)算流程,于是一個(gè)初步的構(gòu)想于是就這樣形成了,在寫匯編程序時(shí)候我們也是忠實(shí)的按照這個(gè)構(gòu)想來寫的,由于設(shè)計(jì)不慎急于求成,將2x操作與非操作搞到一起了,雖然這樣可以實(shí)現(xiàn),但是在別的程序員閱讀是會(huì)產(chǎn)生很大的不便,經(jīng)過老師的講解,我們迅速的從新改變了整體的思路,然后迅速修改,由于需要修改多條偽指令的編號(hào)我們決定大體不變,刪除錯(cuò)的或者講錯(cuò)的變?yōu)檎_的,這樣導(dǎo)致了我們的微指令并不是那么的連續(xù),這樣是一個(gè)程序上面的瑕疵吧,好在不影響運(yùn)行與閱讀。設(shè)計(jì)順序大致如下:先畫出了程序的流程,然后寫出了匯編程序,并且寫出了機(jī)器指令,其次我們完成了總體的流程圖,然后根據(jù)流程圖寫出了微指令以及微指令代碼,將機(jī)器指令代碼與微指令代碼寫成了一個(gè)txt文檔用機(jī)器錄入,運(yùn)行程序,對(duì)照程序上面顯示的圖與我們畫的流程圖進(jìn)行對(duì)照,檢查來判斷這次試驗(yàn)的成功與否。到此我們這一次的設(shè)計(jì)過程到這里就結(jié)束了,我們充分的參與并且體會(huì)了設(shè)計(jì)一個(gè)程序的每一次的收獲,充分的體會(huì)了其中的設(shè)計(jì)的快樂與痛苦,對(duì)我們的專業(yè)只是也有很大的提升。3.3 設(shè)計(jì)原理在部件試驗(yàn)中,我們是人為用二進(jìn)制開關(guān)來模擬一些控制信號(hào)來完成數(shù)據(jù)通路的控制。而在本課程設(shè)計(jì)中,數(shù)據(jù)通路的控制將由微程序控制器來完成, 即一條機(jī)器指令對(duì)應(yīng)一個(gè)微程序。本設(shè)計(jì)的規(guī)定項(xiàng)目采用五條機(jī)器指令:IN(輸入)、MOV(將最終計(jì)算結(jié)果存入間接地址中)、ADD(二進(jìn)制加法)、NOT(給2X取非)、STA(將X存入直接地址中)、DEC(減1)、OUT(輸出)、HLT(保持執(zhí)行結(jié)束狀態(tài),不再執(zhí)行操作),其指令格式如下表1(前四位是操作碼):指令助記符操作碼地址碼功能說明IN0000000000000000“INPUTDEVICE”->R0ADD0010000000000011(DR1)+(DR2)->R00100000000000110NOT0011000000000101DR1->R0STA0011000000000101R0->RAMDEC0101000000001000R0-1->R0MOV0110000000001001R0->RAM,RAM->RAMOUT0100000000000111RAM->LEDHLT0101000000001001停機(jī)IN 為單字長指令,含義是將輸入設(shè)備輸入的數(shù)據(jù)放入 R0中ADD為雙字長指令,其含義是根據(jù)指令提供的地址將內(nèi)存中的數(shù)取出放入DR2,與DR1中的數(shù)相加,結(jié)果放在R0。NOT為單字長指令,含義是將 R0的內(nèi)容取非后放入 R0。STA為雙字長指令,第二個(gè)字是要存放的地址,含義是將R0中的內(nèi)容存儲(chǔ)到第二字為地址的內(nèi)存單元中。DEC 是單字長指令,含義是 R0的內(nèi)容減1后放入R0MOV是雙字長指令,第二字是要存放的間接地址,含義是將R0中的內(nèi)容存儲(chǔ)到第二字為間接地址的內(nèi)存單元中。OUT為雙字長指令,含義是根據(jù)指令提供的地址,將內(nèi)存中的數(shù)據(jù)取出由數(shù)碼管進(jìn)行顯示。HLT 為空轉(zhuǎn)指令,保持執(zhí)行結(jié)束狀態(tài),并不在執(zhí)行任何操作。本設(shè)計(jì)的機(jī)器指令如下:地址(二進(jìn)制)內(nèi)容(二進(jìn)制)助記符注釋0000000000000000INR0“INPUTDEVIECE”->R00000000100010000STAR0,[0FH]R0->[0FH]00000010000011110000001100100000ADD[0FH],R0R0+[0FH]->R000000100000011110000010100110000NOTR0R0->R00000011001000000ADD[0FH],R0R0+[0FH]->R000000111000011110000100001010000DECR0R0-1->R00000100101100000MOVR0,[[10H]]R0->[[10H]]00001010000100000000101101110000OUT[[10H]][[10H]]->LED00001100000100000000110110000000HLT停止000011100000111100000001000100000001000100010001結(jié)果為了向RAM中裝入程序和數(shù)據(jù),檢查寫入是否正確,并能啟動(dòng)程序執(zhí)行,還設(shè)計(jì)了三個(gè)控制臺(tái)操作微程序:存儲(chǔ)器讀操作(KRD):撥動(dòng)總清開關(guān)CLR后,當(dāng)控制臺(tái)開關(guān) SWB、SWA置為“00”時(shí),按START微動(dòng)開關(guān),可對(duì) RAM進(jìn)行連續(xù)手動(dòng)讀操作。存儲(chǔ)器寫操作(KWE):撥動(dòng)總清開關(guān)CLR后,當(dāng)控制臺(tái)開關(guān) SWB、SWA置為“01”時(shí),按START微動(dòng)開關(guān),可對(duì) RAM進(jìn)行連續(xù)手動(dòng)寫入。啟動(dòng)程序:撥動(dòng)總清開關(guān) CLR后,當(dāng)控制臺(tái)開關(guān) SWB、SWA置為“11”時(shí),按START微動(dòng)開關(guān),即可轉(zhuǎn)入到第 01號(hào)“取指”微指令,啟動(dòng)程序運(yùn)行。上述三條控制臺(tái)指令用兩個(gè)開關(guān) SWB、SWA的狀態(tài)來設(shè)置,其定義如表 2:SWB SWA 控制臺(tái)指令0 0 讀內(nèi)存(KRD)0 1 寫內(nèi)存(KRD)0 1 啟動(dòng)程序(RP)按照如下規(guī)定的格式,用聯(lián)機(jī)軟件在CMPP中建立將機(jī)器指令及微指令的二進(jìn)制代碼編輯成十六進(jìn)制的*.txt類型文件。(微指令格式中的微指令代碼為將表中的24位微代碼按從左到右費(fèi)城三個(gè)八位,將此三個(gè)八位二進(jìn)制代碼轉(zhuǎn)換為相應(yīng)的十六進(jìn)制數(shù)即可),并用聯(lián)機(jī)軟件的轉(zhuǎn)儲(chǔ)功能將該式文件裝載到試驗(yàn)系統(tǒng)中。機(jī)器指令格式說明: $PXXXX機(jī)器指令代碼十六進(jìn)制地址微指令格式說明: $MXXXXXXXX微指令代碼十六進(jìn)制地址啟動(dòng)程序:當(dāng)控制臺(tái)開關(guān)SWB、SWA置為“11”時(shí),按START微動(dòng)開關(guān),即可轉(zhuǎn)入到第01號(hào)“取指”微指令,啟動(dòng)程序運(yùn)行。根據(jù)以上要求設(shè)計(jì)數(shù)據(jù)通路框圖如圖 2所示:圖2數(shù)據(jù)通路框圖微指令格式如表3所示:242322212019181716151413121110987654321S3S2S1S0MCnWEA9A8ABCμA5μA4μA3μA2μA1μA0按照數(shù)據(jù)通路可畫出機(jī)器指令的微程序流程圖如圖 2所示。當(dāng)擬定“取指”微指令時(shí),該微指令的判別測試字段為 P(1)測試。由于“取指”微指令是所有微程序都使用的公用微指令,因此 P(1)的測試結(jié)果出現(xiàn)多路分支。本實(shí)驗(yàn)中共出現(xiàn)8路分支,分別對(duì)應(yīng) 8種機(jī)器指令。占用 8個(gè)固定的微地址單元。微程序流程圖根據(jù)流程圖寫出所有微指令代碼微指令代碼微地址S3S2S1S0MCNWEA9A8ABCμ1μ2μ3μ4μ5μ60000000001100000000001000001000000011110110110000010020000000011000000011000000300000000111000000000010004000000101000001000000001050000000011100000000001100600000000101100000000011107000000011010001000001111100000000011100000000011001100000000111000000000110112000000001010000000001011130000011100001010000000011400000010100000100000000115000000001110000000001010171001010110011010000000012000000001111011011001001021000000001110110110010100220000000010100000000101112300000001100000000000000124000000000010000000011000260000100110011010000000012700000111000010100001000030000001101000101000010001310000000011100000000110103200000000101100000001101133000000011010000000011100341001010110011010000000013611110101100110100000000137000000001110000000001000400000000000010000000000014100000001111011011000001142000000011110110110000101430000000110100010000101104400000001111011011001100145000000011010001000011110460000000111101101100111114700000001111011011000100150000000011000000000101000指令寄存器(IR)用來保存當(dāng)前正在執(zhí)行的一條指令。當(dāng)執(zhí)行一條指令時(shí),先把它從內(nèi)存取到緩沖寄存器中,然后再傳送至指令寄存器。指令劃分為操作碼和地址碼字段,由二進(jìn)制數(shù)構(gòu)成。為了執(zhí)行任何給定的指令,必須對(duì)操作碼進(jìn)行測試[P(1)],通過節(jié)拍脈沖T4的控制以便識(shí)別所要求的操作。“指令寄存器”(實(shí)驗(yàn)板上標(biāo)有“INSDECODE”的芯片)根據(jù)指令中的操作碼譯碼結(jié)果強(qiáng)置微控器單元的微地址,使下一條微指令指向相應(yīng)得微程序首地址。本系統(tǒng)使用兩種外部設(shè)備,一種是二進(jìn)制代碼開關(guān),它作為輸入設(shè)備(INPUTDEVICE);另一種是數(shù)碼管,它作為輸出設(shè)備(OUPUTDEVICE)。例如:輸入時(shí),二進(jìn)制開關(guān)數(shù)據(jù)直接經(jīng)過三態(tài)門送到總線上,只要開關(guān)狀態(tài)不變,輸入的信息也不變。輸出時(shí),將輸出的數(shù)據(jù)送到數(shù)據(jù)總線BUS上,當(dāng)寫信號(hào)(W/R)有效時(shí),將數(shù)據(jù)打入輸出鎖存器,并在數(shù)碼管顯示。2.4課程設(shè)計(jì)實(shí)現(xiàn)步驟 按照圖1接線圖連接線路。聯(lián)機(jī)寫入程序(微指令),按照實(shí)驗(yàn)要求的規(guī)定格式,將機(jī)器指令及微指令二進(jìn)制代碼表編輯成十六進(jìn)制的文件。機(jī)器指令$P0000$P0110$P020F$P0320$P040F$P0530$P0640$P070F$P0850$P0960$P0A10$P0B70$P0C10$P0D80$P0F01$P1011$P1100微指令$M00018110$M0101ED82$M0200C060$M0300E004$M04028201$M0500E006$M0600B007$M0701A20F$M0800E00C$M0900E00A$M0A00A00B$M0B070A01$M0C028201$M0D00E00A$M0F959A01$M1001ED92$M1100ED94$M1200A017$M13018001$M14002018$M16099A01$M17070A10$M18068A11$M1900E01A$M1A00B01B$M1B01A21C$M1C959A01$M1EF59A01$M1F00E008$M20001001$M2101ED83$M2201ED85$M2301A216$M2401ED99$M2501A21E$M2601ED7F$M2701ED89$M28018028 聯(lián)機(jī)運(yùn)行聯(lián)機(jī)運(yùn)行程序時(shí),進(jìn)入軟件界面,裝載機(jī)器指令及微指令后,選擇[運(yùn)行]→[通路圖]→[復(fù)雜模型機(jī)]功能菜單打開相應(yīng)的動(dòng)態(tài)數(shù)據(jù)通路圖,按相應(yīng)功能鍵即可聯(lián)機(jī)運(yùn)行、監(jiān)控、調(diào)試程序。3.5實(shí)驗(yàn)設(shè)計(jì)結(jié)果與分析在經(jīng)過運(yùn)行之后可以得出以下結(jié)果:輸入數(shù)值X=00000001(01H)直接地址K=00001111(0FH)中間結(jié)果2X=11111101(FDH)間接地址N=00010000(10H)間接地址所指直接地址00010001(11H)最終結(jié)果2X加X減1=11111101(FDH)經(jīng)檢驗(yàn),輸出結(jié)果與計(jì)算結(jié)果相符,證明實(shí)驗(yàn)設(shè)計(jì)正確3.6實(shí)驗(yàn)設(shè)計(jì)小結(jié)本次實(shí)驗(yàn)大體上分為三步。首先,是連接電路。其次,裝載課程設(shè)計(jì)指導(dǎo)書上設(shè)計(jì)的程序并測試運(yùn)行,通過觀察運(yùn)行情況和數(shù)據(jù)在總線上的流動(dòng),了解各功能部件的工作原理和工作機(jī)制以及流程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度公司車輛租賃協(xié)議樣本
- 2024道路安全員招聘協(xié)議樣本
- 2024年聘用協(xié)議規(guī)范化樣本
- 2023-2024學(xué)年鄭州市高三下學(xué)期5月月考數(shù)學(xué)試題(A卷)
- 2024安全生產(chǎn)與環(huán)保綜合管理協(xié)議
- 二手車交易過戶協(xié)議范本2024
- 2024年度專項(xiàng)宣傳品訂制協(xié)議
- 2024年項(xiàng)目實(shí)施階段服務(wù)協(xié)議范本
- 天津市河北區(qū)2024-2025學(xué)年高二上學(xué)期11月期中英語試題(無答案)
- 2024專業(yè)桃苗采購及種植服務(wù)協(xié)議
- 破產(chǎn)法PPT課件
- 金融衍生工具ppt課件
- 光電效應(yīng)測定普朗克常數(shù).ppt
- “讓學(xué)引思”高效課堂推進(jìn)策略的研究
- 《培訓(xùn)機(jī)構(gòu)教師薪酬制度》
- 點(diǎn)子圖方格紙合計(jì)
- 乘法的故事(小學(xué)二年級(jí)課前小故事).ppt
- 《骨盆重要性》PPT課件.ppt
- WHO癌痛的三階梯止痛的原則
- 第二節(jié)絡(luò)合物的分子軌道理論
- 高等電力系統(tǒng)分析
評(píng)論
0/150
提交評(píng)論