




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、北京建筑大學2015/2016 學年 第 二 學 期課程設計課程名稱 計算機組成原理綜合實驗設計題目 微程序控制器設計與實現系 別 電信學院計算機系 班 級 計 141 學生姓名 艾尼瓦爾·阿布力米提 學號完成日期 二一六年七月八日星期五成績指導教師(簽名) 計算機組成綜合實驗任務書指導教師姓 名王懷秀系計算機任務微程序控制器的設計與 實現人數32學時1周實驗目的1融合貫通計算機組成原理課程, 加深對計算機系統各模塊 的工作原理及相互聯系(寄存器堆、運算器、存儲器、控制 臺、微程序控制器) 。2理解并掌握微程序控制器的設計方法和實現原理, 具備初 步的獨立設計能力; 3掌握較復雜微程
2、序控制器的設計、調 試等基本技能;提高綜合運用所學理論知識獨立分析和解決 問題的能力。實驗任務? 基于 TEC-9 教學實驗平臺基于原有指令集的基礎上設計或擴展 48 條指令。首先在原微程序控制器指令系統的基礎上進 行原指令集的微指令編碼的測試,然后利用上端軟件,編寫 用戶設計的微指令,實現指令預定的功能。實驗步驟? 1、進行原實驗平臺指令集的微程序控制器下指令運行測試;? 2、記錄每一條機器指令的指令的執行流程和微命令編碼;? 3、畫出每一條指令的指令微程序執行流程圖;? 4、在原有指令集基礎上自行設計或擴展 48 條指令。畫出擴展指令的指令執行流程圖;? 5、利用上端軟件, 把所編寫的微程
3、序控制器內容寫入實驗臺中控制器中。? 6、利用單拍測試控制器與編程的要求是否一致。 如果有錯誤重新修改后再寫入控制器中7、 編寫一段測試程序,測試控制器運行是否正確? 實驗目的1融合貫通計算機組成原理課程, 加深對計算機系統各模塊的 工作原理及相互聯系(寄存器堆、運算器、存儲器、控制臺、 微程序控制器)。2理解并掌握微程序控制器的設計方法和實現原理, 具備初步 的獨立設計能力; 3掌握較復雜微程序控制器的設計、 調試等 基本技能;提高綜合運用所學理論知識獨立分析和解決問題的 能力。? 實驗電路1. 微指令格式與微程序控制器電路2. 微程序控制器組成仍然使用前面的 CPU組成與機器指令執行實驗的
4、電路圖, 但本次 實驗加入中斷系統。 這是一個簡單的中斷系統模型, 只支持單級中斷、 單個中斷請求,有中斷屏蔽功能,旨在說明最基本的原理。中斷屏蔽控制邏輯分別集成在 2片 GAL22V(10TIMER1 和TIMER2)中。其 ABEL語言表達式如下:INTR1 := INTR;INTR1.CLK = CLK1;IE := CLR & INTS # CLR & IE & !INTC;IE.CLK= MF;INTQ = IE & INTR1;其中, CLK1是 TIMER1產生的時鐘信號 , 它主要是作為 W1W4的 時鐘脈沖,這里作為 INTR1的時鐘信號, I
5、NTE 的時鐘信號是晶振產 生的 MF。INTS 微指令位是 INTS機器指令執行過程中從控制存儲器讀 出的,INTC微指令位是 INTC 機器指令執行過程中從控制存儲器讀出 的。INTE 是中斷允許標志,控制臺有一個指示燈 IE 顯示其狀態,它 為 1 時,允許中斷,為 0 時,禁止中斷。當 INTS = 1 時,在下一個 MF的上升沿 IE 變 1,當 INTC = 1時,在下一個 MF的上升沿 IE 變 0。 CLR信號實際是控制臺產生的復位信號 CLR#。當 CLR = 0時,在下一 個 CLK1的上升沿 IE 變 0。當 CLR=1 且 INTS = 0 且 INTC = 0 時,
6、IE 保持不變。INTR 是外部中斷源,接控制臺按鈕 INTR。按一次 INTR 按鈕,產 生一個中斷請求正脈沖 INTR。INTR1是 INTR 經時鐘 CLK1同步后產生 的,目的是保持 INTR1與實驗臺的時序信號同步。 INTR 脈沖信號的 上升沿代表有外部中斷請求到達中斷控制器。 INTQ 是中斷屏蔽控制 邏輯傳遞給 CPU的中斷信號,接到微程序控制器上。當收到 INTR 脈 沖信號時,若中斷允許位 INTE,則中斷被屏蔽, INTQ仍然為; 若 INTE ,則 INTQ 。為保存中斷的斷點地址, 以便中斷返回, 設置了一個中斷地址寄 存器 IAR。第二節圖 4 中的 IAR(U19
7、)就是這個中斷地址寄存器,它 是一片 74HC374,有 LDIAR和 IAR_BUS#兩個信號輸入端, 均連接至微 程序控制器。 LDIAR信號的上升沿到達時,來自程序計數器 PC 的地 址會置入 IAR 中。IAR_BUS#為時,保存在 IAR 中的斷點地址會輸出 到數據總線 DBUS上。由于本實驗系統只有一個斷點寄存器而無堆棧, 因此僅支持一級中斷而不支持多級中斷。中斷向量即中斷服務程序的入口地址, 在本實驗儀中由位數碼 開關 SW7 SW0提供。3. 中斷的檢測、執行和返回過程微程序控制器每執行一條機器指令之后, 執行下一條機器指令之 前,先轉到微地址 0F處(見圖 12 微程序流程圖
8、),在條件位 P1=1時 判斷是否有中斷請求 INTQ。如果沒有 INTQ,則繼續正常的機器指令 執行。若檢測到中斷請求 INTQ,首先發出關中斷信號 INTC、保存斷 點信號 LDIAR,并且發出停機信號 TJ,等待手動設置中斷向量。設置 好 SW7SW0后,按 QD 按鈕啟動,機器將中斷向量讀入程序計數器 PC中,從而轉到中斷服務子程序去執行。執行一條機器指令 IRET,從中斷服務子程序返回時,發出 IAR_BUS#信號,從中斷地址寄存器 IAR 向數據總線 DBUS輸出斷點地 址,再從 DBUS依次寫入到 R4、PC中,恢復執行被中斷的程序。發生中斷時,關中斷由硬件負責,而中斷現場 (
9、寄存器堆中的寄 存器,進位標志 C)的保存和恢復由中斷服務程序來處理。? 實驗任務(1)了解中斷系統中每個信號的意義和變化條件,并將下面的 主程序和中斷服務程序手工匯編成十六進制機器代碼, 此項任務應在 預習時完成。主程序:地址指令機器代碼20HINTS21HLDA R0,R222HADD R0,R023HADD R0,R024HADD R0,R025HADD R0,R026HADD R0,R027HADD R0,R028HADD R0,R029HJMP R1中斷服務程序:地址指令機器代碼0A0HAND R0,R00A1HIRET( 2)參考 CPU組成與機器指令執行實驗,再加上中斷系統,完
10、成本次實驗的線路連接。接通電源之前應仔細檢查接線,確認無誤。(3)將上述任務( 1)的程序代碼存入內存中,并根據需要設置 通用寄存器組和內存相關單元的數據。其中,寄存器R1 的值應置為21H,以便程序循環執行。4)從地址 20H執行程序,在程序運行中,按一次控制臺的 INTR。進入中斷后,用單拍( DP)方式執行,直到返回主程序為止。列表記錄中斷系統中有關信號的變化情況,特別要紀錄好斷點地址和 R0 的 值。(5)重復執行( 4)兩次。(一共執行 3 次)(6)將 RAM中 20H單元的內容由指令 INTS 改為 INTC,重作(4), 記錄發生的現象。六、實驗步驟和實驗結果1、實驗程序主程序
11、:地址指令機器代碼20HINTS0BH21HLDA R0,R258H22HADD R0,R000H23HADD R0,R000H24HADD R0,R000H25HADD R0,R000H26HADD R0,R000H27HADD R0,R000H28HADD R0,R000H29HJMP R184H中斷服務程序:地址指令機器代碼0A0HAND R0,R030H0A1HIRET0A0H2、接線 微程序控制器與數據通路之間的線可以通過選擇開關直接選擇。將開關設置為“微程 序”。只需連接數據通路部分的線。a 、數據通路的 LDIR 接 CER、LDPC接 LDR4、 LDDR1接 LDDR、2 M
12、1 接 M2、 LDAR1接 LDAR2。b、指令寄存器 IR 的輸出 IR0 接雙端口寄存器堆的 RD0、 WR,0IR1 接 RD1、 WR,1 IR2 接 RS0, IR3 接 RS1。C、單脈沖 DMC接 中斷 INTR選擇開關拔至“微程序”3、存程序機器代碼, 設置通用寄存器 R1、R2及內存相關單元的數據。(1)、設置寄存器 R1、R2 的值根據要求,設置 R1 = 21H,R2的值由實驗者自定,假定為 10H。1)、令 DP = 0,DB = 0,DZ =0,使實驗系統處于連續運行狀態。 令 SWB = 1, SWA = 1,使實驗系統處于寄存器加載工作方式 KLD。按 CLR#
13、按鈕,使實驗系統處于初始狀態。1)、在 SW7SW0上設置一個存儲器地址,該存儲器地址供設置通用寄存器使用。 該存儲器地址最好是不常用的一個地址, 以免 設置通用寄存器操作破壞重要的存儲器單元的內容。 例如可將該 地址設置為 0FFH。按一次 QD按鈕,將 0FFH寫入 AR1和 AR2。2)在 SW7 SW0上設置 01H,作為通用寄存器 R1 的寄存器號。按 一次 QD按鈕,將 01H寫入 IR 。3)在 SW7 SW0設置 21H,按一次 QD按鈕,將 21H 寫入 IR 指定 的 R1 寄存器。4)在 SW7 SW0上設置 02H,作為通用寄存器 R2 的寄存器號。按 一次 QD按鈕,
14、將 02H寫入 IR 。5)在 SW7 SW0設置 10H,作為 R2的值。按一次 QD按鈕,將 10H 寫入 IR 指定的 R2寄存器。6)設置 R1、R2結束,按 CLR#按鈕,使實驗系統恢復到初始狀態。( 2)、存程序機器代碼。本操作中,我們在 10H 單元存入 01H(也可以是其他值) ,從 20 地址開始存 10個機器代碼: 0B0H,58H,00H,00H,00H,00H,00H, 00H,00H,84H。從 0A0H存入 2個機器代碼 :30H,0A0H。1)令 DP = 0,DB = 0,DZ =0,使實驗系統處于連續運行狀態。令 SWB= 1,SWA= 0,使實驗系統處于寫雙
15、端口存儲器工作方式 KWR。D 按 CLR#按鈕,使實驗系統處于初始狀態。2)置 SW7 SW0為 10H,按 QD按鈕,將 10H寫入 AR1。3)置 SW7SW0 為 01H,按 QD按鈕,將 01H寫入存儲器 10H單元。 寫主程序1)按 CLR#按鈕,使實驗系統恢復初始狀態。2)置 SW7 SW0為 20H,按 QD按鈕,將 20H寫入 AR1。3)置 SW7SW0 為 0B0H,按 QD按鈕,將 0B0H寫入存儲器 20H單 元。 AR1自動加 1,變為 21H。4)置 SW7 SW0為 58H,按 QD按鈕,將 58H寫入存儲器 21H單元。 AR1自動加 1,變為 22H。5)重
16、復進行下去,一直到將 84H寫入存儲器 29H 單元。按 CLR# 按鈕,使實驗系統恢復到初始狀態。寫中斷程序1)置 SW7 SW0為 0A0H,按 QD按鈕,將 0A0H寫入 AR1。2)置 SW7 SW0為 30H,按 QD按鈕,將 30H寫入存儲器 0A0H單 元。3)置 SW7 SW0 0A0H,按 QD按鈕,將 0A0H寫入存儲器 0A1H單 元。4)按 CLR#按鈕,使實驗系統恢復到初始狀態。 或用實驗臺監控系統或系統上端軟件直接寫入內容(3)從地址 20H連續執行程序從地址 20H連續執行程序,在程序運行中,按一次控制臺的 INTR。 進入中斷后,用單拍( DP)方式執行,直到返
17、回主程序為止。列表記 錄中斷系統中有關信號的變化情況,特別要紀錄好斷點地址和R0 的值。1)令 DP = 0,DZ = 0,DB = 0,使實驗系統處于連續運行狀態。2)置 SW7 SW0為 20H,作為程序的起始地址。按 QD按鈕,啟動 程序從 20H 地址運行。中斷允許指示燈亮。3)按 INTR 按鈕,發出一個 INTR中斷脈沖,請求中斷。中斷后硬 件自動將中斷地址存入中斷地址寄存器 IAR。微程序地址應為 25H。4)置 SW7 SW0為 0A0H,這是中斷程序的入口地址。將 DP由置 0 改為置 1。按一次 QD按鈕,將 0A0H送入程序計數器 PC。微程序地 址應為 26H。5)按一
18、次 QD按鈕,進行取指微操作。微程序地址應為 05H。6)按一次 QD按鈕,進行置數微操作。微程序地址應為 13H。7)按一次 QD按鈕,進行 R0 & R0 操作, 這時微程序地址應為 38H。 觀察 DBUS總線的值,即為 R0 的值。8)按一次 QD按鈕,進行寫回微操作。微程序地址應為 34H。9)按一次 QD按鈕,進行判定有無中斷請求 INTQ微操作。微程序 地址應為 0FH。10)按一次 QD按鈕,進行取指微操作。微程序地址應為 05H。11 )按一次 QD按鈕,進行從中斷程序返回主程序微操作。微程序 地址應為 1AH。這時觀察 PC地址, 即中斷地址。12)按一次 QD 按
19、鈕,進行判有無新的中斷操作。微程序地址為 0FH。13)按一次 QD按鈕,進行取指微操作。 微程序地址為 05H。此刻, 程序已返回主程序。由于按下 INTR按鈕的時間對主程序而言, 是隨機的, 具有不確定 性,因此各次中斷地址、 R0會具有不同的值。將 RAM中 20H單元的內容由指令 INTS改為 INTC,重作( 4),記錄發生的現象。由于 INTC 是關中斷指令,因此將不會發生中斷4)控制存儲器代碼表1. 微程序控制器信號表指令當前指令CM4CM3CM2CM1CM0LDA R0,R207H10H00H81H20H05H05H10H00H04H91H10H15H10H01H04H00H3
20、6H36H10H0CH20H00H34H34H00H12H00H00H0FHLDA R1,R307H10H00H04H00H05H05H10H00H04H91H10H15H10H01H04H00H36H36H10H0CH20H00H34H34H00H12H00H00H0FHADD R0,R107H10H00H04H00H05H05H10H00H04H91H10H10H10H20H00H00H3BH3BH14H82H20H00H34H34H00H12H00H00H0FHJC +507H10H00H04H00H05H05H10H00H04H91H10H19H10H00H00H00H0FHAND R
21、2,R307H10H00H04H00H05H05H10H00H04H91H10H13H10H20H00H00H38H38H0DH82H20H00H34H34H00H12H00H00H0FHSUB R3,R207H10H00H04H00H05H05H10H00H04H91H10H11H10H20H00H00H3AH3AH03H02H20H00H34H34H00H12H00H00H0FHSTA R3,R207H10H00H04H00H05H05H10H00H04H91H10H14H10H21H04H00H35H35H10H06H00H00H0FHSTP07H10H00H04H00H05H05H10
22、H00H04H91H10H16H30H00H00H00H0FHJMP R107H10H00H04H00H05H05H10H00H04H91H10H18H10H01H01H20H0FHINTS00H30H00H02H08H26H07H10H00H81H20H05H05H10H00H04H91H10H1AH10H20H00H00H3AH3AH03H02H20H00H34H34H00H12H00H00H0FHIRET07H10H00H04H00H05H05H10H00H04H91H10H1BH10H00H41H20H0FH2. 拓展控制器信號表指令CM4CM3CM2CM1CM0XOR Rd,Rs10
23、H10H04H00H05H10H00H04H91H10H10H20H00H00H31H0BH02H20H00H34H00H12H00H00H0FHINC Rd,Rs10H00H04H00H05H10H00H04H91H10H10H20H00H00H32H00H02H20H00H34H00H12H00H00H0FH? 流程圖2.拓展程序流程圖XOR Rd,RsF=121HM1S2,S110H00H04H00H05H10H00H04H91H10H10H20H00H00H33H17H82H20H00H34H00H12H00H00H0FH10H00H04H00H05H10H00H04H91H10H10H20H00H00H24H0EH02H20H00H34H00H12H INT0 0HOF H00H0FHDEC Rd,RsF=A+BR d,RsLDAR2KT00
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 1《我們的好朋友》 公開課一等獎創新教學設計(第一課時)
- 七年級地理上冊 1.1 地球和地球儀教學設計 新人教版
- 藏族民間舞蹈的風格特點
- 美術四年級上冊7.飛天(二)教案
- 人教版小學二年級上冊數學 2.3.3 加減混合 課時練
- 專業合同勞務派遣服務 - 香港勞務指南
- 2025年新員工入職銷售崗位勞動合同電子版模板
- 2025家具采購合同模板
- 2025年公有土地有償使用合同
- 2025租房合同范本:房屋租賃合同格式
- 灌漿作業安全操作規程(3篇)
- 房屋市政工程生產安全重大事故隱患排查表(2024版)
- 2025年廣西南寧市殘疾人勞動就業服務指導中心招聘歷年高頻重點提升(共500題)附帶答案詳解
- 藥品追回管理制度內容
- 專題16 書面表達技巧-2023年江蘇中考英語一輪復習牛津譯林版
- 危險化學品安全管理知識培訓課件
- 房屋市政工程生產安全重大事故隱患判定標準(2024版)宣傳畫冊
- 二戰時期的中國抗日戰爭
- 35kv變電站設備安裝工程施工設計方案
- 城市公益性公墓建設項目施工組織設計
- CQI-30中文審核表格資料
評論
0/150
提交評論