《计算机组成原理》实验报告——TEC-2实验系统——微程序控制器实验
| 實驗名稱: TEC-2機微程序控制器實驗 | 實驗地點:10-413 |
| 一.實驗?zāi)康?/p> 比較深入透徹地學(xué)懂計算機各種指令的執(zhí)行過程,以及控制器的組成、設(shè)計的具體知識。理解動態(tài)微程序設(shè)計的概念。 ? | |
| 二.實驗原理 1、TEC?-2機的控制器部件的關(guān)鍵內(nèi)容包括: (1)?7片LS6116RAM組成的56位字長的微程序控制存儲器 (2)?微指令寄存器PLR,由7片8位的寄存器芯片(6片LS374和1片LS273) (3)?微程序定序器AM2910芯片 (4)?程序計數(shù)器PC和當(dāng)前指令地址記憶寄存器IP (5)?指令寄存器IR (6)?AM2910輸入的配套線路,包括:
(7)?AM2910輸出的配套電路,包括:
(8)?2片LS2716ROM組成的固化微碼保存電路和讀寫控制電路 TEC-2機支持64條基本機器指令,已實現(xiàn)53條指令,保存在2片ROM芯片中。2片ROM組成一個2K-16位固定存儲器,每4個相鄰的字存放一條56字長的微指令,最高8位未用,用0填充。 每條微指令由56位組成,具體如圖: 18位微碼用于控制與給出每條微指令的下地址,供控制器使用,其中: B55-B46的10位微碼是下址字段;B45、B44備用;B43-40為CI3-0;B39-37、B36分別為3為SCC和一位SC。 提供給運算器的控制信號共26位,包括: A口地址、B口地址與對應(yīng)地址選擇控制信號SA、SB供10位; 3組3位的AM2910控制信號MI8-6、MI5-3、MI2-0共9位; 控制標(biāo)志寄存器寫入SST、最低位控制信號SCi、移位信號形成SSH三個字段共7位。 最后三位微碼/MI0、REQ和/WE控制內(nèi)存的讀寫、外設(shè)接口的讀寫與微碼的裝入。 2、TEC-2機微程序設(shè)計說明 (1)寫出要實現(xiàn)新指令的格式與功能。包括尋址方式、地址、字長,設(shè)計該指令的微操作執(zhí)行步驟。 (2)確定對應(yīng)的微指令字各字段的編碼。 (3)選擇操作碼(OP碼)和微程序入口地址時查看附錄1各條指令的操作碼及微程序入口地址表格。 (4)不對存儲器和IO端口操作時,MIO、REQ、/WE的編碼為10X。 (5)裝入微碼程序,使用特殊命令LDMC時,要求: R1為微程序在內(nèi)存中的始地址; R2為微程序指令長度; R3為微程序在控存中的入口地址。 3、裝入微指令到控制存儲器的兩種操作方法。 (1)在程序中用LDMC指令裝入微指令 具體方法見實驗步驟,本實驗用這種方法。 (2) 通過水平板_上開關(guān)手工撥入 此種方法不作要求,只作參考。 | |
| 三.實驗內(nèi)容: 選定指令操作碼,指令格式,設(shè)計一條指令,其功能是把用絕對地址表示的內(nèi)存單元 A中的內(nèi)容與內(nèi)存單元B中的內(nèi)容相加,結(jié)果存放在B單元中。 1、通過以下實例熟悉微指令的裝入、新指令的運行及測試。 例:用絕對地址表示的內(nèi)存單元ADDR1的內(nèi)容與內(nèi)存單元ADDR2中的內(nèi)容相加,結(jié)果存放到內(nèi)存單元ADDR2中。 確定指令格式: ⑴ 編寫微程序 PC→AR,PC+1→PC; ?0000 0E00 A0B5 5402 MEM→AR; ??????????0000 0E00 10F0 0002 MEM→Q; ???????????0000 0E00 00F0 0000 PC→AR,PC+1→PC; ?0000 0E00 A0B5 5402 MEM→AR; ?????????0000 0E00 10F0 0002 MEM+Q→Q; ????????0000 ?0E01 00E0 0000 Q→MEM,CC#=0;0029 0300 1020 0010 ⑵ 啟動TEC-2機,進入監(jiān)控程序狀態(tài),輸入微程序到內(nèi)存中。寫入微碼時,每條微指 令的前8位補全0,補齊64位。 ① 用“E”命令將微碼寫入內(nèi)存, 本例寫入0900H開始的內(nèi)存區(qū)域。 >E900↙ 屏幕顯示:(每個數(shù)值間空格鍵隔開,回車鍵結(jié)束。) 0900:? 0000? 0E00? A0B5 ?5402? ?0000 0E00? 10F0? 0002? 0000? ?0E00 00F0? 0000? 0000? 0E00 ??A0B5 5402? 0000? 0E00? 10F0? ?0002 0000? 0E01? 00E0? 0000? ?0029 0300? 1020? 0010↙ ② 用“D”命令檢查寫入是否正確 >D900↙ 屏幕顯示: 0900 0000? 0E00? A0B5 ?5402? 0000? 0E00? 10F0? 0002 0908 0000? 0E00? 00F0? 0000? 0000?? 0E00? A0B5 5402 0910 0000? 0E00? 10F0? 0002? 0000?? 0E01? 00E0 0000 0918 0029? 0300? 1020?? 0010 ?┉ ⑶ 裝入微碼 將內(nèi)存存放的微程序裝入到控制存儲器中,由專用指令LDMC完成。 ① 用“A”命令輸入用于裝入微程序的匯編程序 >A800↙ 0800:MOV???? Rl,900?? ;900:微碼在內(nèi)存的起始地址 MOV ????R2,7 ;7:微程序長度 MOV ????R3,100?? ;100:微程序在控存的起始地址(為什么是“100”) LDMC??? ;裝入微碼指令 RET ② 用“G”運行上述程序 >G800↙ 執(zhí)行后,微碼便裝入到起始地址為0100H的微程序控制存儲器中 ⑷ 輸入驗證程序,運行新指令 ① 用“A”命令輸入程序 >A820 0820:MOV???? R0,0023 MOV???? [A00],R0 MOV???? [A01],R0 0826:NOP NOP NOP 0829:RET ② 用“E”命令將 NOP填充位置改為新指令碼 >E826↙ 屏幕顯示: 0826: 之后輸入: D400 0A00 0A01↙ ③ 用“U”命令查看輸入的程序 >U820↙ 屏幕顯示: 0820: 2C00 0023 ??MOV ??R0,0023 0822: 3400 0A00 ??MOV?? [0A00],R0 0824: 3400 0A01 ??MOV?? [0A01],R0 0826: D400 ??????DW ????D400 0827: 0A00 ??????ADC ???R0,R0 0828: 0A01 ??????ADC R0,R1 0829: AC00 ??????RET ┇ ④ 用“G”命令執(zhí)行驗證程序 >G820↙ ⑸ 觀察運算結(jié)果 由“D”命令檢查? 0A00、0A01單元內(nèi)容 >DA00↙ 屏幕顯示: 0A00 0023 0046┉ 0A01單元內(nèi)容為? 0046,結(jié)果正確。 | |
| 四.? 實驗器材 1.??? TEC-2機一臺,電腦一臺 2.??? TEC-2模擬軟件一套 | |
| 五.? 實驗結(jié)果分析 一、將微碼輸入到由900H開始的內(nèi)存單元中 (一)用“E”命令輸入微碼 (二)用“D”命令查看輸入的微碼 ?????? 二、將微碼加載到微控存中 (一)用“A”命令輸入加載微碼的程序 (二)用“G”命令運行加載微碼的程序 三、輸入程序,運行新指令 (一)用“A”命令輸入程序 (二)用“E”命令輸入新指令 (三)用“U”命令查看輸入的程序 (四)用“G”命令運行程序 四、觀察運算結(jié)果 用“D”命令查看運行結(jié)果 ? ??????????????????????????? ? ? | |
| 六.? 實驗心得 本次實驗中,我跟著書上的步驟,在TEC-2機仿真軟件中學(xué)習(xí)了如何設(shè)計一條機器指令,設(shè)計所需的微指令與如何裝入微碼,運行自己編寫的指令。我學(xué)習(xí)了如何利用E命令在主存中寫入微指令,然后使用A命令編寫裝入微碼的程序,并執(zhí)行程序裝入微碼。裝入微碼后,又學(xué)習(xí)了如何編寫程序和指令,完成自己規(guī)定的操作。在本次實驗的操作中,我比較深入透徹地學(xué)懂計算機各種指令的執(zhí)行過程,以及控制器的組成、設(shè)計的具體知識。理解動態(tài)微程序設(shè)計的概念。 ? ? | |
參考文章
https://wenku.baidu.com/view/d234b70dba1aa8114431d9e6.html
總結(jié)
以上是生活随笔為你收集整理的《计算机组成原理》实验报告——TEC-2实验系统——微程序控制器实验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript + Thymele
- 下一篇: 《计算机组成原理》课程设计任务书——TE