版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基本模型機的設(shè)計與實現(xiàn)課程設(shè)計報告 收藏、實驗基本任務(wù)1、由基本單元電路構(gòu)成一臺基本模型機。2、設(shè)計五條機器指令,并編寫相應(yīng)的微程序。3、調(diào)試指令和模型機使其在微程序的控制下自動產(chǎn)生各部件單元的控制信號正常工作。1、硬件設(shè)計(1)設(shè)計微程序控制電路微程序控制器的組成:控制存儲器: EPROM2816*3 ,8D 觸發(fā)器 74ls273*2 ,4D 觸發(fā)器74ls74*3 ;微指令寄存器格式: 18 位微指令, 6 位微地址。(2)設(shè)計時鐘信號源和時序控制電路時鐘信號源的組成:時基電路555,可觸發(fā)單穩(wěn)態(tài)多諧振蕩器 74ls237*2 ,輸出頻率為 330-580Hz 的方波信號。時序控制電路:
2、 4D 觸發(fā)器 74ls175*1 組成移位寄存器電路。(3)設(shè)計主存儲器主存電路的組成:6264 存儲器 ( 8K*8 位)*3, 地址寄存器:74ls273*1 , 三態(tài)門:74ls245*1 。2、微控制設(shè)計(1)實現(xiàn)存儲器讀操作;撥動總清開關(guān)后, 置控制開關(guān) SWC、SWA 為“0 0”時,按要求連線后, 連續(xù)按動 “啟 動運行”開關(guān),可對主存儲器 RAM 連續(xù)手動讀操作。(2)實現(xiàn)存儲器寫操作;撥動總清開關(guān)后,置控制開關(guān) SWC、SWA 為“0 1”時,按要求連線后,再按動“啟 動運行”開關(guān),可對主存儲器 RAM 連續(xù)手動寫入。3)實現(xiàn)程序運行操作。撥動總清開關(guān)后,置控制開關(guān) SWC
3、、SWA 為“ 1 1”時,按要求連線后,再按動“啟 動運行”開關(guān),即可轉(zhuǎn)入到第 01 號“取址”微指令,啟動程序運行。3、機器指令設(shè)計(1)輸入指令:in ;輸入外部開關(guān)量的狀態(tài),送入寄存器R0。2)二進制加法指令:add addr;3)存數(shù)指令: staaddr;4)輸出指令: outaddr;5)無條件轉(zhuǎn)移指令:jmp addr;三、設(shè)計電路原理圖 (說明各器件的功能作用)設(shè)計電路原理圖如圖 1 所示:圖 l 數(shù)據(jù)通路框圖四、系統(tǒng)原理圖 (說明整機的工作過程)系統(tǒng)原理圖如附圖 1 所示。部件實驗過程中, 各部件單元的控制信號是認為模擬產(chǎn)生的, 而本次實驗將能在微程 序控制下自動產(chǎn)生各部件
4、單元控制信號, 實現(xiàn)特定指令的功能。 這里, 實驗計算機數(shù)據(jù)通路 的控制將由微程序控制器開完成, CPU 從內(nèi)存中取出一條機器只到指令執(zhí)行結(jié)束的一個指 令周期全部由微指令組成的序列來完成,即一條機器指令對應(yīng)一個微程序。1 、有關(guān)微控制器部分在算術(shù)運算實驗中以詳細介紹。2、處存儲器的讀、寫和運行根據(jù)以上要求設(shè)計數(shù)據(jù)通路框圖,如圖1 所示。微代碼定義如表 1 所示。為了想主存儲器的 RAM 中裝入程序或數(shù)據(jù),并且檢查寫入是否正確以及能運行主存 儲器中的程序,必須設(shè)計三個控制操作微程序。存儲器讀操作:撥動總清開關(guān)后,置控制開關(guān)SWC、SWA 為“0 0”時,按要求連線后,連續(xù)按動“啟動運行”開關(guān),可
5、對主存儲器 RAM 連續(xù)手動讀操作。存儲器寫操作:撥動總清開關(guān)后,置控制開關(guān)SWC、SWA 為“0 1”時,按要求連線后,再按動“啟動運行”開關(guān),可對主存儲器 RAM 連續(xù)手動寫入。運行程序:撥動總清開關(guān)后,置控制開關(guān)SWC、 SWA 為“ 1 1”時,按要求連線后,再按動“啟動運行”開關(guān),即可轉(zhuǎn)入到第 01 號“取址”微指令,啟動程序運行。上述三條控制指令用兩個開關(guān) SWC 、SWA 的狀態(tài)來設(shè)置,其定義如下:SWCSWA 控制臺指令001011 讀內(nèi)存寫內(nèi)存啟動程序表 1 基本模型機微指令結(jié)構(gòu)圖 微程序242322212019181716151413121110987654321控制信號S
6、3S2S1S0 M CN RD M17 M16 A B P uA5 uA4 uA3uA2uA1uA0A 字段B 字段P 字段151413 控制信號121110 控制信號987 控制信號000000000001LDRI001RS_G001P1010LDDR1010010011LDDR2011011100LDIR100100P401LOAD101ALU_G101110LDAR110PC_G110LDPC系統(tǒng)涉及到的微程序流程見圖 2,當(dāng)擬定“取指令”微指令時,該微指令的判別測試字段為P1 測試。由于“取指令”微指令是所有微程序都使用的公用微指令,因此 P1 的測試結(jié)果出 現(xiàn)多路分支。本機用指令寄存
7、器的高4 位( I7 I4 操作碼)作為測試條件,出現(xiàn) 5 路分支,占用 5 個固定微地址單元??刂婆_操作為 P4 測試,它以控制臺開關(guān) SWB、SWA 作為測試條件,出現(xiàn)了 3 路分支,占 用 3 個固定微地址單元。 當(dāng)分支微地址單元固定后, 剩下的其它地方就可以一條微指令占用 一個微地址單元隨意填寫。當(dāng)全部微程序設(shè)計完畢后, 應(yīng)將每條微指令代碼化, 表 2 即為圖 2 的微程序流程圖按微指令 格式轉(zhuǎn)化而成的“二進制微代碼表” 。圖 2 微程序流程圖表 2 二進制代碼表本系統(tǒng)有兩種外部 I/O 設(shè)備,一種是二進制數(shù)碼開關(guān),作為輸入設(shè)備( INPUT );另一種是 兩位十六進制數(shù) LED 數(shù)碼
8、管,作為輸出設(shè)備( OUTPUT UNIT )。在輸入時,二進制開關(guān)數(shù) 據(jù)直接經(jīng)過三態(tài)門送到總線上。 只要開關(guān)狀態(tài)不變,輸入的信息也不變。輸出時, 將輸出數(shù) 據(jù)送到數(shù)據(jù)總線上,當(dāng)寫信號( WE )有效時,將數(shù)據(jù)打入輸出鎖存器,驅(qū)動數(shù)碼塊顯示。3、指令寄存器介紹指令寄存器用來保存當(dāng)前正在執(zhí)行的一條指令。當(dāng)執(zhí)行一條指令時,先把它從內(nèi)存取 到緩沖寄存器, 然后再傳送到指令寄存器。 指令劃分為操作碼和地址碼字段, 由二進制構(gòu)成, 為了執(zhí)行任何一條給定的指令,必須對操作碼進行測試 P(1),通過節(jié)拍脈沖 T4 的控制以便 識別所要求的操作。“指令譯碼器” 根據(jù)指令的操作碼進行譯碼, 強置微控制單元的微地
9、址, 使下一條微指令指向相應(yīng)的微程序首地址。4、輸入 / 輸出設(shè)備本系統(tǒng)有兩種外部 I/O 設(shè)備,一種是二進制代碼開關(guān) KD0KD7 ,它作為輸入設(shè)備 INPUT ;另一種是數(shù)碼顯示塊,它作為輸出設(shè)備 OUTPUT 。例如:輸入時,二進制開關(guān)數(shù) 據(jù)直接經(jīng)過三態(tài)門送到外部數(shù)據(jù)總線上,只要開關(guān)狀態(tài)不變,輸入的信息也不變。輸出時, 將輸出數(shù)據(jù)送到外部數(shù)據(jù)總線上,當(dāng)寫信號( W/R )有效時,將數(shù)據(jù)打入輸入鎖存器,驅(qū)動 數(shù)碼塊顯示。5、設(shè)計指令根據(jù)基本模型機的硬件設(shè)計五條機器指令:外部輸入指令I(lǐng)N 、二進制加法指令 ADD 、存數(shù)指令 STA、輸出到外設(shè)指令 OUT、無條件轉(zhuǎn)移指令 JMP。指令格式入
10、下:助記符機器指令碼說明IN0000 0000;“外部開關(guān)量輸入” KD0KD7 的開關(guān)狀態(tài)TR0ADDaddr00010000XXXXXXXX;R0+addrTR0STAaddr00100000XXXXXXXX;R0TaddrOUTaddr00110000XXXXXXXX;addrTBUSJMPaddr01000000XXXXXXXX;ADDRTPC說明:指令 IN 為單字節(jié)指令,其余均為雙字節(jié)指令,xxxxxxxxaddr 對應(yīng)的主存儲 器二進制地址碼。6、基本模型機監(jiān)控軟件的設(shè)計本模型機監(jiān)控軟件設(shè)計主要完成從輸入設(shè)備讀入數(shù)據(jù),進行簡單算術(shù)運算后,將結(jié)果 存入內(nèi)存的某個單元,最后通過輸出設(shè)
11、備輸出結(jié)果。監(jiān)控軟件詳細如下:地址內(nèi)容助記符說明0000 00000000 0000IN;“INPUT DEVICE” TR00000 00010001 0000ADD0AH;R0+0AHtR00000 00100000 10100000 00110010 0000STA0BH;R0t0BH0000 01000000 10110000 01010011 0000OUT0BH;0BHtBUS0000 01100000 10110000 01110100 0000JMP00H;00HtPC0000 10000000 00000000 10010000 10100000 0001;自定義參加運算的數(shù)
12、0000 1011;求和結(jié)果存放單元五、實驗步驟1. 根據(jù)該模型機的指令系統(tǒng),編寫一段程序。這里給出兩個參考程序。參考程序一:本程序從輸入設(shè)備(數(shù)碼開關(guān))取入數(shù)據(jù),保存在內(nèi)存單元08,然后從 08 單元送到輸出設(shè)備( LED 數(shù)碼管)進行顯示。每次循環(huán)過程中,可以使輸入設(shè)備數(shù)據(jù)改變,考察輸出顯示 的結(jié)果 (請實驗者考慮: 如何修改程序, 使程序只執(zhí)行一次從輸入設(shè)備取出數(shù)據(jù), 送出輸出 設(shè)備顯示)。設(shè)計機器指令程序如下(機器碼和地址為十六進制數(shù)據(jù)) 。地址 內(nèi) 容 助記符 說 明0000IN;輸入開關(guān)數(shù)據(jù)TRO0120STA 08H;R0t080208;地址0330OUT 08H ;08HTBU
13、S0408;地址0540JMP 00H;00HtPC0600;跳轉(zhuǎn)地址參考程序二:本程序從輸入設(shè)備 (數(shù)碼開關(guān)) 讀入數(shù)據(jù), 與 0A 單元的數(shù)據(jù)相加, 然后送到輸出設(shè)備 ( LED 數(shù)碼管)進行顯示。本程序不斷地循環(huán)運行,在運行中可改變輸入開關(guān)( INPUT )的值,觀 察輸出顯示的變化。設(shè)計機器指令程序如下(機器碼和地址為十六進制數(shù)據(jù))地址內(nèi) 容 助記符說明0000IN;輸入開關(guān)數(shù)據(jù)TRO,米集數(shù)據(jù)0110ADD 0AH;R0+ OAHTRO,輸入數(shù)據(jù)與指定數(shù)據(jù)相加020A;地址0320STA 0BH;ROtOB040B;地址0530OUT 0BH;OBHTBUS,輸出顯示060B;地址0
14、740JMP 00H;OOHtPC0800;跳轉(zhuǎn)地址0A01;加數(shù),可自定0B;求和結(jié)果保存在 OB 單元2.連接實驗線路3. 寫程序 對于本實驗箱可以用兩種方法來寫入程序。方法一:聯(lián)機讀 /寫程序按照規(guī)定格式, 將機器指令及表 2-2 微指令二進制表編輯成十六進制的規(guī)定格式文件。 微指 令格式中的微指令代碼為將表 2-2 中的 24 位微代碼按從左到右分成 3 個 8 位,將此三個 8 位二進制代碼化為相應(yīng)的十六進制數(shù)即可。使用聯(lián)機軟件的文件裝載將實驗程序和微程序下載到實驗箱中, 并用軟件的讀出功能進行檢 查。其中參考程序一對應(yīng)的文件名為 “基本模型機 1.TXT ”,參考程序二對應(yīng)的文件名
15、為 “基 本模型機2.TXT ”(聯(lián)機軟件的使用方法參看附錄2)。方法二:手動寫入(1)先將機器指令對應(yīng)的微代碼正確地寫入28C16 中,由于在實驗 1.7 微程序控制器的組成與微程序設(shè)計實驗中已將微代碼寫入 E2PR0M 芯片中,對照表 2-5 校驗正確后就可使用。(2)使用控制臺 WRITE 和 READ 微程序進行機器指令程序的裝入和檢查,其操作如下:A. 使 SIGNAL UNIT 單元的 SP03 為 “STEP” 狀態(tài),SP04 為“ RUN ” 狀態(tài),CONTROLUNIT 的開關(guān) SP05 處于“ NORM ”狀態(tài),開關(guān) SP06 處于“ RUN ” 狀態(tài)。B. 撥動開關(guān)單元的
16、總清開關(guān) CLR (1 c0 況),微地址寄存器清零,程序計數(shù)器清零。然后使開關(guān)單元的 SWB、SWA 開關(guān)設(shè)置為“ 01”,按動一次控制臺單元的觸動開關(guān)START,微地址顯示燈顯示“ 010001 ”,再按動一次 START,微地址燈顯示“ 010100”,此時數(shù)據(jù)開關(guān)的 內(nèi)容(輸入單元)置為要寫入的機器指令的內(nèi)容,按動兩次START 鍵后,即完成該條指令的寫入。若仔細閱讀 WRITE 的流程,就不難發(fā)現(xiàn),機器指令的首地址總清后為零,以后每 個循環(huán) PC會自動加 1。所以,每次按動 START,只有在微地址燈顯示“ 010100”時,才設(shè) 置內(nèi)容,直到所有機器指令寫完。C. 校驗。撥動 SW
17、ITCH 單元的總清開關(guān) CLR (1C C),微地址清零。PC 程序計數(shù)器清零, 然后使 SWITCH 單元的開關(guān) SWB、 SWA 為“00”, 按動 CONTROL UNIT 的觸動 開關(guān)START,微地址燈將顯示“ 010000”,再按 START,微地址燈顯示為“ 010010”,第三 次按 START,微地址燈顯示為“ 010111”再按 START 后,此時 OUTPUT 單元的數(shù)碼管顯 示為該首地址中的內(nèi)容。不斷按動START,以后每個循環(huán) PC 會自動加 1,可檢查后續(xù)單元內(nèi)容。 每次在微地址燈顯示為“ 010000”時,是將當(dāng)前地址中的機器指令寫入到輸出設(shè)備中 顯示。參考程
18、序一的機器指令:$P0000 $P0120$P0208$P0330$P0408$P0540$P0600參考程序二的機器指令:$P0000$P0110$P020A$P0320$P040B$P0530$P060B$P0740$P0800 $P0A01微程序(以上兩程序公用)$M00018110$M0101ED82$M0200C048$M0300E004$M0400B005$M0501A206$M06959A01$M0700E00D$M08001001$M0901ED83$M0A01ED87$M0B01ED8E$M0C01ED96$M0D028201$M0E00E00F$M0F00A015$M100
19、1ED92$M1101ED94 $M1200A017$M13018001 $M14002018$M15070A01$M1600D181$M17070A10$M18068A114. 運行程序方法一:聯(lián)機運行程序首先使各個開關(guān)的狀態(tài)為: SIGNAL UNIT 中的 SP03 開關(guān)設(shè)置為“ STEP”狀態(tài),SP04 開關(guān) 設(shè)置為“ RUN ”狀態(tài);CONTROL UNIT 的開關(guān) SP05 處于“ NORM ”狀態(tài),SP06 處于“ RUN ” 狀態(tài);SWITCH 單元的開關(guān) SWB、SWA 為“ 11”。使 SWITCH 單元的總清開關(guān) CLR (1 c0 況)清零后,程序首址為 00H。通過聯(lián)
20、機軟件進入調(diào) 試界面(其操作方法參見附錄 2 系統(tǒng)聯(lián)機操作軟件說明) ,可以通過調(diào)試程序的操作界面控 制程序的運行,同時觀察運行過程和結(jié)果。方法二:手動運行程序( 1 )單步運行程序A. 使 CONTROL UNIT 的開關(guān) SP05 處于“ NORM ” 狀態(tài), SP06 處于“ RUN ” 狀態(tài), SIGNAL UNIT中的 SP03 為“STEP”狀態(tài),SP04 為“ RUN ”狀態(tài),SWITCH 單元的開關(guān) SWB、SWA 為“ 11”。B. 撥動 SWITCH 單元的總清開關(guān) CLR (1 c0d1),微地址清零,程序計數(shù)器清零,程序首址為 00H 。C. 單步運行微指令,每按動一次
21、 CONTROL UNIT 的 START 觸動開關(guān),即單步運行一條微 指令。對照微程序流程圖 2-2,觀察微地址顯示燈 MA5-MA0 是否和流程一致。D. 當(dāng)運行結(jié)束后,可檢查運行結(jié)果是否和理論值一致。如果運行結(jié)果保存在RAM 的某一個單元中,則可以使用手動寫入中的校驗方法將其讀出。2)連續(xù)運行程序A. 使 CONTROL UNIT 的開關(guān) SP05 處于“ NORM ” 狀態(tài), SP06 處于“ RUN ” 狀態(tài), SIGNAL UNIT中的 SP03 為“RUN ”狀態(tài),SP04 為“ RUN ”狀態(tài),SWITCH 單元的開關(guān) SWB、SWA 為“ 11”。B. 撥動 SWITCH 單
22、元的總清開關(guān) CLR (1 c0 況) ,微地址及程序計數(shù)器清零, 然后按動 CONTROL UNIT的 START 觸動開關(guān), 系統(tǒng)連續(xù)運行程序, 稍后將 SIGNAL UNIT 中的 SP04 撥至“ STOP”時,系統(tǒng)停機。C. 停機后,可檢查運行結(jié)果是否正確。如果運行結(jié)果保存在RAM 的某一個單元中,則可以使用手動寫入中的校驗方法將其讀出。六、實驗結(jié)果首先驗證微控制器的存儲特性。將編程開關(guān)置為“寫入”狀態(tài),寫入如表2 微地址為060D 的微代碼。 每寫入一條指令, 按一下 “啟動運行” 開關(guān)。 再將微地址和總清開關(guān)置 0, 編程開關(guān)置為“讀”狀態(tài),即可驗證是否存儲正確。若有錯誤,則需檢查連線或者是重新輸 入。經(jīng)實驗,成功顯示。 最后, 將編程開關(guān)置為 “運行” 狀態(tài), 即可運行我們寫入的微程序。 經(jīng)實驗,結(jié)果顯示正確。七、實驗心得通過緊張有序的兩天的課程設(shè)計實踐, 不僅讓我對計算機的基本組成、簡單運算器的數(shù)據(jù)傳送通路組成、靜態(tài)隨機存取存儲器 RAM 工作特性及數(shù)據(jù)的讀寫方法、時序信號發(fā)生電路組成原理、 微程序控制器的設(shè)計思想和組成原理、 微程序的編制、 寫入過程有了進一步的了解 也讓我覺得自己的動手能力有了很大的提高;自信心也增強了 ,在課程設(shè)計中自己動腦子解決遇到的問題,書本上的知識有了用武之地,這鞏固和深化了自己的知識結(jié)構(gòu)。起初第一次講解時 ,由于對計算機總體結(jié)構(gòu)不
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 15561-2024數(shù)字指示軌道衡
- 農(nóng)業(yè)副產(chǎn)品高值化利用趨勢
- 高一化學(xué)教案:專題第二單元第一課時化學(xué)反應(yīng)中的熱量變化(一)
- 2024高中化學(xué)第四章生命中的基礎(chǔ)有機化學(xué)物質(zhì)1油脂課時作業(yè)含解析新人教版選修5
- 2024高中地理課時作業(yè)8區(qū)域工業(yè)化與城市化-以我國珠江三角洲地區(qū)為例含解析新人教版必修3
- 2024高中語文第1單元論語蚜第1課天下有道丘不與易也練習(xí)含解析新人教版選修先秦諸子蚜
- 2024高中語文第五單元散而不亂氣脈中貫文與可筼筜谷偃竹記訓(xùn)練含解析新人教版選修中國古代詩歌散文欣賞
- 2024高中語文精讀課文一第2課3魯迅:深刻與偉大的另一面是平和三課堂練習(xí)含解析新人教版選修中外傳記蚜
- 2024高考地理一輪復(fù)習(xí)第七單元自然環(huán)境對人類活動的影響練習(xí)含解析
- 2025新人教版英語七年級下不規(guī)則動詞表
- 2025新北師大版英語七年級下單詞表
- 《智慧城市概述》課件
- 2024年北京市家庭教育需求及發(fā)展趨勢白皮書
- GB/T 45089-20240~3歲嬰幼兒居家照護服務(wù)規(guī)范
- 中建道路排水工程施工方案
- 拆機移機合同范例
- 智能停車充電一體化解決方案
- 化學(xué)驗室安全培訓(xùn)
- 天書奇譚美術(shù)課件
- GB/T 18916.15-2024工業(yè)用水定額第15部分:白酒
- 部編四年級道德與法治下冊全冊教案(含反思)
評論
0/150
提交評論