計算機組成原理實驗報告_微控制器_第1頁
計算機組成原理實驗報告_微控制器_第2頁
計算機組成原理實驗報告_微控制器_第3頁
計算機組成原理實驗報告_微控制器_第4頁
計算機組成原理實驗報告_微控制器_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、西北工業(yè)大學(xué)計算機組成原理實驗報告計算機組成原理實驗報告 題目: 微程序控制器實驗 一、 實驗?zāi)康模?1) 理解時序產(chǎn)生器的原理,了解時鐘和時序信號的波形。(2) 掌握微程序控制器的功能、組成知識。(3) 掌握微指令格式和各字段功能。(4) 掌握微指令的編制、寫入、觀察微程序的運行二、 實驗設(shè)備PC機一臺,TDCM3+實驗系統(tǒng)一套。三、 實驗內(nèi)容及要求:(一) 實驗原理: 微程序控制電路與微指令格式 (A) 微程序控制電路 微程序控制器的組成見圖10,其中控制存儲器采用3片2816的E2PROM,具有掉電保護功能,微命令寄存器18位,用兩片8D觸發(fā)器(74273)和一片4D(74175)觸發(fā)器

2、組成。微地址寄存器6位,用三片正沿觸發(fā)的雙D觸發(fā)器(7474)組成,它們帶有清“0”端和預(yù)置端。在不判別測試的情況下,T2時刻打入微地址寄存器的內(nèi)容即為下一條微指令地址。當(dāng)T4時刻進行測試判別時,轉(zhuǎn)移邏輯滿足條件后輸出的負脈沖通過強置端將某一觸發(fā)器置為“1”狀態(tài),完成地址修改。 在該實驗電路中設(shè)有一個編程開關(guān)(位于實驗板右上方),它具有三種狀態(tài):PROM (編程)、READ(校驗)、RUN(運行)。當(dāng)處于“編程狀態(tài)”時,實驗者可根據(jù)微地址和微指令格式將微指令二進制代碼寫入到控制存儲器2816中。當(dāng)處于“校驗狀態(tài)”時,可以對寫入控制存儲器中的二進制代碼進行驗證,從而可以判斷寫入的二進制代碼是否正

3、確。當(dāng)處于“運行狀態(tài)”時,只要給出微程序的入口微地址,則可根據(jù)微程序流程圖自動執(zhí)行微程序。圖中微地址寄存器輸出端增加了一組三態(tài)門,目的是隔離觸發(fā)器的輸出,增加抗干擾能力,并用來驅(qū)動微地址顯示燈。微程序控制器原理圖 圖10(B) 微指令格式微指令字長共24位,其控制位順序如圖所示。2322212019181514121198650M23M22WRRDIOMS3S0A字段B字段C字段MA5MA0圖11 微指令格式A字段 B字段 141312選擇/000NOP001LDA010LDB011LDR0100保留101保留110保留111LDIR11109選擇000NOP001ALU-B010R0-B01

4、1保留100保留101保留110保留111保留 876選擇000NOP001P<1>010保留011保留100保留101保留110保留111保留C字段MA5-MA0為6位的后續(xù)微地址,A,B,C為三個譯碼字段,分別由三個控制位譯碼出多個微命令。C字段中的P(1)是測試字位。其功能是根據(jù)機器指令及相應(yīng)微代碼進行譯碼,使微程序轉(zhuǎn)入相應(yīng)的微地址入口,從而實現(xiàn)微程序的順序、分支、循環(huán)運行,。圖中I7一I2為指令寄存器的第7-2位輸出,SE5SE0為微程序控制器單元微地址鎖存器的強置端輸出。(C)二進制代碼表二進制微代碼表地址十六進制高五位S3S0A字段B字段C字段MA5-MA00000 0

5、0 010000000000000000000000010100 70 700000000001110000011100000400 24 050000000000100100000001010504 B2 010000010010110010000000013000 14 040000000000010100000001003218 30 010001100000110000000000013328 04 010010100000000100000000013500 00 35000000000000000000110101將全部微程序按照指令格式變成二進制微代碼 可得上表(二) 實驗內(nèi)容1

6、. 按照實驗接線圖連接好實驗線路,并且檢查線路,確保無誤。2. 對微控器的讀寫操作(1)手動讀寫 (2)聯(lián)機讀寫 3.運行微程序(1)本機運行 (2)聯(lián)機運行這次實驗安排了四條機器指令,分別為 ADD(0000 0000)、IN(0010 0000)、OUT(0011 0000)和 HLT(0101 0000),括號中為各指令的二進制代碼,指令格式如下: 助記符 機器指令 說明 IN 00100000 INR0 ADD 00000000 R0+R0 R0 OUT 00110000 R0 OUT HLT 01010000 停機 實驗中機器指令由 CON 單元的二進制開關(guān)手動給出,其余單元的控制信

7、號均由微控制器自動產(chǎn)生,為此可以設(shè)計出相應(yīng)的數(shù)據(jù)通路圖,見圖 3-2-8 所示。 幾條機器指令對應(yīng)的參考微程序流程圖如圖 3-2-9 所示。圖中一個矩形方框表示一條微指令,方框中的內(nèi)容為該指令執(zhí)行的微操作,右上角的數(shù)字是該條指令的微地址,右下角的數(shù)字是該條指令的后續(xù)微地址,所有微地址均用 16 進制表示。向下的箭頭指出了下一條要執(zhí)行的指令。P<1>為測試字,根據(jù)條件使微程序產(chǎn)生分支。 先手動將微指令輸入到CM中,然后利用存儲好的微程序驗證00100011(23)自加,并輸出結(jié)果。思考題:設(shè)計并修改電路,編寫用微程序?qū)崿F(xiàn)存儲器中兩個單字節(jié)十六進制數(shù)的加法運算,結(jié)果輸出至OUT單元。要

8、求:操作數(shù)由IN單元 R0 MEM MEM R0 ALU ALU R0 結(jié)果 OUT單元輸出(三) 實驗要求(1) 按照實驗步驟連接好電路,按照要求內(nèi)容進行實驗(2) 記錄本次實驗的所有運行結(jié)果,故障現(xiàn)象及排除過程(3) 在要求實驗的基礎(chǔ)上試解決思考題的問題(4) 記錄本次實驗的收獲和想法四、 實驗步驟、觀察與思考:(一)幾條機器指令對應(yīng)的參考微程序流程圖如下NOP00指令譯碼A+B->R0RO->BNOPR0->OUTIN->R0RO->AP<1>0130ADDINHLTOUT303235333501010405011. 連接實驗線路:仔細查線無誤后

9、接通電源。如果有滴報警聲,說明總線有競爭現(xiàn)象,應(yīng)關(guān)閉電源,檢查接線,直到錯誤排除。2對微控器進行讀寫操作,分兩種情況:手動讀寫和聯(lián)機讀寫。 1) 手動讀寫 (1) 手動對微控器進行編程(寫) 將時序與操作臺單元的開關(guān) KK1 置為停止檔,KK3 置為編程檔,KK4 置為控存檔,KK5 置為置數(shù)檔。 使用 CON 單元的 SD05SD00 給出微地址,IN 單元給出低 8 位應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān) ST,將 IN 單元的數(shù)據(jù)寫到該單元的低 8 位。 將時序與操作臺單元的開關(guān) KK5 置為加 1檔。 IN 單元給出中 8 位應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān) ST,

10、將 IN 單元的數(shù)據(jù)寫到該單元的中 8 位。IN 單元給出高 8 位應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān) ST,將 IN 單元的數(shù)據(jù)寫到該單元的高 8 位。 重復(fù)、四步,將表 3-2-2 的微代碼寫入 2816 芯片中。 (2) 手動對微控器進行校驗(讀) 將時序與操作臺單元的開關(guān) KK1 置為停止檔,KK3 置為校驗檔,KK4 置為控存檔,KK5 置為置數(shù)檔。 使用 CON 單元的 SD05SD00 給出微地址,連續(xù)兩次按動時序與操作臺的開關(guān) ST,MC 單元的指數(shù)據(jù)指示燈 M7M0 顯示該單元的低 8 位。 將時序與操作臺單元的開關(guān) KK5 置為加 1檔。 連續(xù)兩次按動時序與操作臺

11、的開關(guān) ST,MC 單元的指數(shù)據(jù)指示燈 M15M8 顯示該單元的中 8 位,MC 單元的指數(shù)據(jù)指示燈 M23M16 顯示該單元的高 8 位。 重復(fù)、四步,完成對微代碼的校驗。如果校驗出微代碼寫入錯誤,重新寫入、校驗,直至確認微指令的輸入無誤為止。 2) 聯(lián)機讀寫 (1) 將微程序?qū)懭胛募?聯(lián)機軟件提供了微程序下載功能,以代替手動讀寫微控器,但微程序得以指定的格式寫入到以 TXT 為后綴的文件中,微程序的格式如下:$M XX XXXXXX十六進制地址微指令微指令代碼標(biāo)志如$M 1F 112233,表示微指令的地址為 1FH,微指令值為 11H(高)、22H(中)、33H(低),本次實驗的微程序如

12、下,其中分號;為注釋符,分號后面的內(nèi)容在下載時將被忽略掉。 (2) 寫入微程序 用聯(lián)機軟件的“【轉(zhuǎn)儲】【裝載】”功能將該格式(*.TXT)文件裝載入實驗系統(tǒng)。裝入過程中,在軟件的輸出區(qū)的結(jié)果欄會顯示裝載信息,如當(dāng)前正在裝載的是機器指令還是微指令,還剩多少條指令等。 (3) 校驗微程序 選擇聯(lián)機軟件的“【轉(zhuǎn)儲】【刷新指令區(qū)】”可以讀出下位機所有的機器指令和微指令,并在指令區(qū)顯示。檢查微控器相應(yīng)地址單元的數(shù)據(jù)是否和表 3-2-2 中的十六進制數(shù)據(jù)相同,如果不同,則說明寫入操作失敗,應(yīng)重新寫入,可以通過聯(lián)機軟件單獨修改某個單元的微指令,先用鼠標(biāo)左鍵單擊指令區(qū)的微存TAB 按鈕,然后再單擊需修改單元的

13、數(shù)據(jù),此時該單元變?yōu)榫庉嬁?,輸?6 位數(shù)據(jù)并回車,編輯框消失,并以紅色顯示寫入的數(shù)據(jù)。;/*/;/ /;/ 指令文件 /;/ /;/*/ ;/* Start Of MicroController Data*/ $M 00 000001 ; NOP $M 01 007070 ; CON(INS)->IR, P<1> $M 04 002405 ; R0->B $M 05 04B201 ; A 加 B->R0 $M 30 001404 ; R0->A $M 32 183001 ; IN->R0 $M 33 280401 ; R0->OUT $M 35

14、 000035 ; NOP ; /* End Of MicroController Data * / 3. 運行微程序 運行時也分兩種情況:本機運行和聯(lián)機運行。1) 本機運行 將時序與操作臺單元的開關(guān) KK1、KK3 置為運行檔,按動 CON 單元的 CLR 按鈕,將微地址寄存器(MAR)清零,同時也將指令寄存器(IR)、ALU 單元的暫存器 A 和暫存器 B 清零。 將時序與操作臺單元的開關(guān) KK2 置為單拍檔,然后按動 ST 按鈕,體會系統(tǒng)在 T1、 T2、T3、T4 節(jié)拍中各做的工作。T2 節(jié)拍微控器將后續(xù)微地址(下條執(zhí)行的微指令的地址)打入微地址寄存器,當(dāng)前微指令打入微指令寄存器,并產(chǎn)

15、生執(zhí)行部件相應(yīng)的控制信號;T3、T4 節(jié)拍根據(jù) T2 節(jié)拍產(chǎn)生的控制信號做出相應(yīng)的執(zhí)行動作,如果測試位有效,還要根據(jù)機器指令及當(dāng)前微地址寄存器中的內(nèi)容進行譯碼,使微程序轉(zhuǎn)入相應(yīng)的微地址入口,實現(xiàn)微程序的分支。 按動 CON 單元的 CLR 按鈕,清微地址寄存器(MAR)等,并將時序與單元的開關(guān) KK2 置為單步檔。 置 IN 單元數(shù)據(jù)為 00100011,按動 ST 按鈕,當(dāng) MC 單元后續(xù)微地址顯示為 000001 時,在 CON 單元的 SD27SD20 模擬給出 IN 指令 00100000 并繼續(xù)單步執(zhí)行,當(dāng) MC 單元后續(xù)微地址顯示為 000001 時,說明當(dāng)前指令已執(zhí)行完;在 CO

16、N 單元的 SD27SD20 給出 ADD 指令 00000000,該指令將會在下個 T3 被打入指令寄存器(IR),它將 R0 中的數(shù)據(jù)和其自身相加后送 R0;接下來在 CON 單元的 SD27SD20 給出 OUT 指令 00110000 并繼續(xù)單步執(zhí)行,在 MC 單元后續(xù)微地址顯示為 000001 時,觀查 OUT 單元的顯示值是否為 01000110。 2) 聯(lián)機運行 聯(lián)機運行時,進入軟件界面,在菜單上選擇【實驗】【微控器實驗】,打開本實驗的數(shù)據(jù)通路圖,也可以通過工具欄上的下拉框打開數(shù)據(jù)通路圖,數(shù)據(jù)通路圖如圖 3-2-8 所示。 將時序與操作臺單元的開關(guān) KK1、KK3 置為運行檔,按

17、動 CON 單元的總清開關(guān)后,按動軟件中單節(jié)拍按鈕,當(dāng)后續(xù)微地址(通路圖中的 MAR)為 000001 時,置 CON 單元 SD27SD20,產(chǎn)生相應(yīng)的機器指令,該指令將會在下個 T3 被打入指令寄存器(IR),在后面的節(jié)拍中將執(zhí)行這條機器指令。仔細觀察每條機器指令的執(zhí)行過程,體會后續(xù)微地址被強置轉(zhuǎn)換的過程,這是計算機識別和執(zhí)行指令的根基。也可以打開微程序流程圖,跟蹤顯示每條機器指令的執(zhí)行過程。 按本機運行的順序給出數(shù)據(jù)和指令,觀查最后的運算結(jié)果是否正確。4.思考題解答對于思考題還需要運用到前面的靜態(tài)存儲器的知識,需要將實驗系統(tǒng)上的控制單元的(IOW/IOR)位置與存儲器上對應(yīng)的(IOW/I

18、OR)位置連上。然后編寫聯(lián)機文件如下:;/*/;/ /;/ 指令文件 /;/ /;/*/ ;/* Start Of MicroController Data*/$M 00 000001 ; NOP $M 01 007070 ; CON(INS)->IR, P<1> $M 38 081001 ;IO->AR $M 36 200401 ; Ro->M $M 37 103001 ; M->Ro $M 04 002405 ; R0->B $M 05 04B201 ; A 加 B->R0 $M 30 001404 ; R0->A $M 32 183001 ; IN->R0 $M 33 280401 ; R0->OUT $M 35 000035 ; NOP ; /* End Of MicroController Data * /五、 結(jié)論:第一個實驗輸入:R0 00100011(23) 理論輸出:R0 01000110(46) 實際輸出:R0 01000110(46) 思考題實驗輸入:R0 00100011(23) MEN 00000011(3) 理論輸出:R0 00100011+00000011=00100110(26) 實際輸出:R0 00100110(26)六、 實驗心得:本次實驗是計

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論