計算機組成原理一臺模型計算機設計與測試_第1頁
計算機組成原理一臺模型計算機設計與測試_第2頁
計算機組成原理一臺模型計算機設計與測試_第3頁
計算機組成原理一臺模型計算機設計與測試_第4頁
計算機組成原理一臺模型計算機設計與測試_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、遼 寧 工 業(yè) 大 學 計算機組成原理 課程設計(論文) 題目: 一臺模型計算機設計與測試院(系): 電子與信息工程學院 專業(yè)班級: 計算機082 學 號: 學生姓名: 指導教師: 教師職稱: 教授 助教 起止時間: 2011.1.6-2011.1.10 課程設計(論文)任務及評語院(系): 電子與信息工程學院 教研室:計算機組成原理教研室 學 號學生姓名劉強專業(yè)班級計算機082課程設計(論文)題目一臺模型計算機設計與測試減法指令流程課程設計(論文)任務1. 將微程序控制器同執(zhí)行部件(整個數(shù)據(jù)通路)聯(lián)機,組成一臺模型計算機2. 用微程序控制器控制模型機數(shù)據(jù)通路3. 通過CPU運行機器命令組成的

2、簡單程序,掌握機器指令與微指令的關系,牢固建立計算機的整機概念4. 用實驗箱上連線,并實現(xiàn)所寫程序段的功能。用單拍(DP)方式、單指(DZ)連續(xù)方式各執(zhí)行一遍程序。并將結(jié)果進行比較,分析。指導教師評語及成績成績: 指導教師簽字: 2011 年 1 月10日目 錄第1章課程設計簡介11.1課題介紹11.2 減法指令流程11.3 課程設計設備11.4 減法指令流程設計任務1第2章數(shù)據(jù)通路設計32.1 運算器ALU32.2 存儲器32.3 輸入與輸出62.4 數(shù)據(jù)通路結(jié)構(gòu)6第3章微程序控制器設計73.1 機器指令格式73.2 控制臺7第4章機器語言程序設計114.1 機器語言程序及其存儲器位置、編碼

3、和數(shù)據(jù)初值的設計114.2 程序執(zhí)行過程及預測結(jié)果11第5章指令流程與測試125.1 接線方法125.2設置通用寄存器R1,R0的值125.3 存程序機器代碼135.4用單拍(DP)方式執(zhí)行一遍程序135.5用單指(DZ)方式執(zhí)行一遍程序135.6用連續(xù)方式執(zhí)行一遍程序14第6章總結(jié)15參考文獻16第1章 課程設計簡介1.1課題介紹將微程序控制器同執(zhí)行部件(整個數(shù)據(jù)通路)連機,組成一臺模型計算機;用微程序控制器控制模型機數(shù)據(jù)通路;通過CPU運行就跳機器指令(排除終端指令)組成的簡單程序,掌握機器指令與偽指令的關系,牢固建立計算機的政績概念。1.2 減法指令流程本次課程設計用到得電路包括運算器、

4、存儲器、通用寄存器堆、程序計數(shù)器、指令寄存器、微程序控制器等,將幾個模塊組成為一臺簡單計算機。計算機模型采用了數(shù)據(jù)總線和指令總線雙總線體質(zhì)能實現(xiàn)流水控制??刂破饔形⒊绦蚩刂破骰蛘哂膊季€控制器兩種類型,每種類型又有流水和非流水兩種方案。寄存器堆由1片ispLS11016zu組成,運算器由1片ispLS11024組成。實驗臺上包括了1片系統(tǒng)編程芯片ispLS11032,可用它實現(xiàn)硬件布線控制1.3 課程設計設備(1)TEC4計算機組成原理實驗系統(tǒng)一臺(2)雙蹤示波器一臺(3)直流萬能表一只(4)邏輯測試筆一只1.4 減法指令流程設計任務1利用機器指令系統(tǒng)編制簡單程序,要求至少使用其中五條指令,對自

5、己編制的簡單程序進行譯碼,手工會變成十六進制機器代碼。學生根據(jù)老師指定完成不同的子標題,即程序中必須包含標題類型的指令。2按圖,參考組成原理實驗的電路圖完成連線,控制器是控制部件,數(shù)據(jù)通路是執(zhí)行部件,時序產(chǎn)生器是時序部件。連線包括控制臺、時序部分、數(shù)據(jù)通路和微程序控制器之間的鏈接。其中,為把操作數(shù)傳給通用寄存器組RF,數(shù)據(jù)通路上的RS1、RS0、RD1、RD0應分別于IR3至IR0連接,WR1、WR0也應該接到IR1、IR0上。3.將上述任務1中的程序機器代碼用控制臺操作存入內(nèi)存中,并根據(jù)程序的需要,用數(shù)碼開關SW7SW0設置通用寄存器及內(nèi)存相關單元的數(shù)據(jù)。4.用單拍(DP)方式執(zhí)行一遍程序,

6、列表記錄通用寄存器堆RF中寄存器的數(shù)據(jù),以及RAM中的數(shù)據(jù),與理論分析值做對比。單拍方式執(zhí)行是注意觀察微地址指示燈、IR/DBUS指示燈、AR2/AR1 指示燈和判斷字段指示燈的值,以跟蹤程序中取指令和執(zhí)行指令的詳細過程。5.以單指(DZ)方式重新執(zhí)行程序一遍,注意觀察IR/DBUS指示AR2/AR1指示燈的值。執(zhí)行結(jié)束后,記錄RF中四個寄存器的數(shù)據(jù),以及RAM中的數(shù)據(jù),與理論分析之作對比。以連續(xù)方式(DB、DP、DZ都設為0)再次執(zhí)行程序。折中情況相當于計算機正常運行程序。由于程序中有停機指令STP,程序執(zhí)行到該指令時自動停機。執(zhí)行結(jié)束后,記錄RF中四個寄存器的數(shù)據(jù),以及RAM中的數(shù)據(jù),與理

7、論分析值做對比。第2章 數(shù)據(jù)通路設計2.1 運算器ALU運算器ALU由一片ispLS1024(U47)組成,在選擇端S2、S1、S0控制下,對數(shù)據(jù)A和B進行加、減、與、直通、乘五種運算,功能如下: 選 擇 操 作 S2 S1 S0 0 0 0 A & B 0 0 1 A & A(直通) 0 1 0 A + B 0 1 1 A - B 1 0 0 A(低4位) X B(低4位)圖2-1 操作功能表進位C只在加法和運算和減法運算時產(chǎn)生。加運算中,C表示進位;減運算中,C代表借位。加、減運算產(chǎn)生的進位(借位)在T4的上升沿送入C寄存器保存。與、乘、直通操作不影響進位C的狀態(tài),即進位C保持不變。當AL

8、U_BUS=1,運算結(jié)果送往數(shù)據(jù)總線DBUS。加、減運算產(chǎn)生的進位(借位)C與控制臺的C指示燈相連。2.2 存儲器1.DR1和DR2DR1和DR2是運算操作數(shù)寄存器,DR1和ALU的B數(shù)據(jù)口相連,DR2和ALU的A數(shù)據(jù)口相連。DR1和DR2各由2片74HC298(U23、U24、U21、U22)組成。U23是DR1的低4位,U24是DR1的高4位;U21是DR2的低4位,U22是DR2的高4位。當M1=0 且LDDR1=1 時,在T3的下降沿,DR1接收來自寄存器堆B端口的數(shù)據(jù);當M1=1 且LDDR1=1 時,在T3的下降沿,DR1接收來自數(shù)據(jù)總線D_BUS的數(shù)據(jù)。當M2=0 且LDDR2=

9、1 時,在T3的下降沿,DR2接收來自寄存器堆A端口的數(shù)據(jù);當M2=1 且LDDR2=1 時,在T3的下降沿,DR2接收來自數(shù)據(jù)總線DBUS的數(shù)據(jù)。2.多端口通用寄存器堆RF多端口通用寄存器堆RF由1片ispLSI1016(U32)組成,它的功能和MC14580類似。寄存器堆中包含4個8位寄存器(R0、R1、R2、R3),有三個控制端口。其中兩個端口控制讀操作,一個端口控制寫操作,三個端口可同時操作。RD1、RD0選擇從A端口讀出的寄存器,RS1、RS0選擇從B端口讀出的寄存器,WR1、WR0選擇被寫入的寄存器。WRD 控制寫操作。當WRD = 0時,禁止寫操作;當WRD = 1 時,在T2的

10、上升沿將來自ER寄存器的數(shù)據(jù)寫入由WR1、WR0 選中的寄存器。A端口的數(shù)據(jù)直接送往操作數(shù)寄存器DR2,B端口的數(shù)據(jù)直接送往操作數(shù)寄存器DR1。除此之外,B端口的數(shù)據(jù)還通過1片74HC244(U15)送往數(shù)據(jù)總線DBUS。當RS_BUS# = 0時,允許B端口的數(shù)據(jù)送到數(shù)據(jù)總線DBUS上;當RS_BUS# = 1時,禁止B端口的數(shù)據(jù)送到數(shù)據(jù)總線DBUS。3.暫存寄存器ER暫存寄存器ER(U14)是1片74HC374,主要用于暫時保存運算器的運算結(jié)果。當LDER = 1時,在T4的上升沿,將數(shù)據(jù)總線DBUS上的數(shù)據(jù)打入暫存寄存器ER。ER的輸出送往多端口通用寄存器堆RF,作為寫入數(shù)據(jù)使用。4.開

11、關寄存器SW_BUS開關寄存器SW_BUS(U38)是1片74HC244,用于將控制臺開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS。當SW_BUS# = 1時,禁止開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS;當SW_BUS# = 0時,允許開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS。5.雙端口存儲器RAM雙端口存儲器由一片IDT7132(U36)及少量附加控制電路組成。IDT7132是2048字節(jié)的雙端口靜態(tài)隨機存儲器,本機實際使用256字節(jié)。IDT7132兩個端口可同時進行讀、寫操作。在本機中,左端口的數(shù)據(jù)連接數(shù)據(jù)總線DBUS,可進行讀、寫操作,右端口數(shù)據(jù)和指令總線INS連接,輸出到指令寄存器

12、IR,作為只讀端口使用。存儲器IDT7132有6個控制引腳:CEL#、LRW、OEL#、CER#、RRW、OER#。CEL#、LRW、OEL#控制左端口讀、寫操作,CER#、RRW、OER#控制右端口讀、寫操作。CEL#為左端口選擇引腳,低有效,為高時禁止左端口操作;LRW為高時,左端口進行讀操作,LRW為低時,左端口進行寫操作;OER#為低時,將左端口讀出的數(shù)據(jù)放到數(shù)據(jù)總線DBUS上。CER#、RRW、OER#控制右端口讀、寫操作的方式與CEL#、LRW、OER#控制左端口讀、寫操作的方式類似,不過右端口讀出的數(shù)據(jù)放到指令總線上而不是數(shù)據(jù)總線上。本機設計中,OER#已固定接地,RRW固定接高

13、電平,CER#由CER反相產(chǎn)生。當CER=1 時,右端口讀出數(shù)據(jù),并放到指令總線INS上;當CER=0 時,禁止右端口操作。左端口的OEL#由LRW經(jīng)反相產(chǎn)生,不需單獨控制。當CEL#=0且LRW=1時,左端口進行讀操作;當CER#=0且LRW=0時,在T3的上升沿開始進行寫操作,將數(shù)據(jù)總線DBUS上的數(shù)據(jù)寫入存儲器。6.地址寄存器AR1和AR2地址寄存器AR1(U37)和AR2(U27、U28)提供雙端口存儲器的地址。AR1是1片GAL22V10,具有加1功能,提供雙端口存儲器左端口的地址。AR1從數(shù)據(jù)總線DBUS接收數(shù)據(jù)。AR1的控制信號是LDAR1和AR1_INC。當AR1_INC =

14、1 時,在T4的上升沿,AR1的值加1;當LDAR1 = 1時,在T4的上升沿,將數(shù)據(jù)總線DBUS的數(shù)據(jù)打入地址寄存器AR1。AR2由2片74HC298組成,有兩個數(shù)據(jù)輸入端,一個來自程序計數(shù)器PC,另一個來自數(shù)據(jù)總線DBUS 。AR2的控制信號是LDAR2和M3。M3選擇數(shù)據(jù)來源,當M3 = 1 時,選中數(shù)據(jù)總線DBUS;當M3 = 0 時,選中程序計數(shù)器PC。LDAR2控制何時接收地址,當LDAR2 = 1時,在T2的下降沿將選中的數(shù)據(jù)源上的數(shù)據(jù)打入AR2。7.程序計數(shù)器PC、地址加法器器ALU2、地址緩存器R4程序計數(shù)器PC、地址加法器器ALU2、地址緩存器R4聯(lián)合完成三種操作:PC加載

15、,PC+1,PC+D。R4是一個由2片74HC298(U25、U26)構(gòu)成的具有存儲功能的兩路選擇器。當M4 = 1時,選中數(shù)據(jù)總線DBUS;當M4 = 0,從指令寄存器IR的低4位IR0IR3接收數(shù)據(jù)。當LDR4 = 1時,在T2的下降沿將選中的數(shù)據(jù)打入R4。ALU2由1片GAL22V10(U17)構(gòu)成,當PC_ADD = 1 時,完成PC 和IR低4 位的相加,即PC加D。程序計數(shù)器PC是1片GAL22V10(U18),當PC_INC =1時,完成PC+1;當PC_ADD =1 時,與ALU2一起完成PC+D的功能;當LDPC=1時, 接收從ALU2 和 R4來的地址,實際是接收來自數(shù)據(jù)總

16、線DBUS的地址,這些新的程序地址在T4的上升沿打入PC寄存器。8.指令寄存器IR指令寄存器IR是一片74HC374(U20)。它的數(shù)據(jù)端從雙端口存儲器接收數(shù)據(jù)(指令)。當LDIR = 1時,在T4的上升沿將來自雙端口存儲器的指令打入指令寄存器IR保存。指令的操作碼部分送往控制器譯碼,產(chǎn)生各種所需的控制信號。大多數(shù)情況下,指令的操作數(shù)部分應連到寄存器堆(用戶自己連接),選擇參與運算的寄存器。在某些情況下,指令的操作數(shù)部分也參與新的PC的計算。本實驗系統(tǒng)設計了12條基本的機器指令,均為單字長(位)指令。指令功能及格式如表2所示。表2中的X代表隨意值,RS1、RS0指的是寄存器堆的B端口選擇信號R

17、S1、RS0,RD1、RD0指的是寄存器堆的A端口選擇信號RD1、RD0,不過由于運算結(jié)果需寫回,因此它也同時指WR1、WR0,用戶需將它們對應連接。另一點需說明的是,為了簡化運算,指令JC D中的D是一個4 位的正數(shù),用D3 D2 D1 D0表示。實驗系統(tǒng)雖僅設計了12條基本的機器指令,但代表了計算機中常用的指令類型。必要時用戶可擴充到16條指令或者重新設計指令系統(tǒng)。9.中斷地址寄存器IAR中斷地址寄存器IAR(U19)是一片74HC374,用于保存中斷發(fā)生時的斷點地址。它直接使用LDIAR信號作為時鐘脈沖。當IAR_BUS# = 0時,它將斷點地址送到數(shù)據(jù)總線DBUS上,2.3 輸入與輸出

18、開關寄存器SW_BUS(U38)是1片74HC244,用于將控制臺開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS。當SW_BUS#=1時,禁止開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS;當SW_BUS#=0時,允許開關SW7SW0的數(shù)據(jù)送往數(shù)據(jù)總線DBUS。通過SW7SW0輸入數(shù)據(jù),把數(shù)據(jù)輸入到ER中,然后分別RF中的R0R3中,然后通過選擇,分別通過A、B端口送入DR1和DR2。然后送入ALU進行相應的運算,再把結(jié)果通過DBUS送入RAM進行存儲,并把指令通過INS送入IR,在送入控制器中,然后經(jīng)過一系列的傳送通過數(shù)據(jù)指示燈顯示出來。2.4 數(shù)據(jù)通路結(jié)構(gòu) 數(shù)據(jù)通路的設計師TEC-4計算機組成原理

19、實驗系統(tǒng)最有特色的部分。首先它采用了數(shù)據(jù)總線和指令總線雙總線形式。它還使用了大規(guī)模在系統(tǒng)可編程器件作為運算器和寄存器堆,使得設計簡單,可修改性強。數(shù)據(jù)通路位于試驗系統(tǒng)的中部。圖2-2 數(shù)據(jù)通路圖第3章 微程序控制器設計3.1 機器指令格式 根據(jù)下列表的代碼格式。產(chǎn)生不同的功能,完成各個任務。名稱助記符功能指令格式R7 R6 R5 R4R3 R2R1 R0加法ADD Rd,RsRd+Rs-Rd0 0 0 0RS1 RS0RD1 RD0減法SUB Rd,RsRd-Rs-Rd0 0 0 1RS1 RS0RD1 RD0乘法MUL Rd,RsRd*Rs-Rd0 0 1 0RS1 RS0RD1 RD0邏輯

20、與AND Rd,RsRd&Rs-Rd0 0 1 1RS1 RS0RD1 RD0存數(shù)STA Rd,RsRd-Rs0 1 0 0RS1 RS0RD1 RD0取數(shù)LDA Rd,RsRs-Rd0 1 0 1RS1 RS0RD1 RD0無條件轉(zhuǎn)移JMP RsRs-PC1 0 0 0RS1 RS0X X條件轉(zhuǎn)移JC D若C=1則PC+D-PC1 0 0 1D3 D2D1 D0停機STP暫停運行0 1 1 0X XX X中斷返回IRET返回斷點1 0 1 0X XX X開中斷INTS允許中斷1 0 1 1X XX X關中斷INTC禁止中斷1 1 0 0X XX X圖3-1機器指令格式3.2 控制臺控制臺位于

21、TEC4計算機組成原理實驗系統(tǒng)的下部,主要由若干指示燈和若干撥動開關組成,用于給數(shù)據(jù)通路置數(shù)、設置控制信號、顯示各種數(shù)據(jù)使用。1.SW7SW0 數(shù)據(jù)開關,直接接到數(shù)據(jù)通路部分的數(shù)據(jù)總線DBUS上,用于向數(shù)據(jù)通路中的器件置數(shù)。開關撥到上面位置時輸出1,撥到下面位置時輸出0。SW7是最高位,SW0是最低位。2.K15K0雙位撥動開關。開關撥到上面位置時輸出1,撥到下面位置時輸出0。實驗中用于模擬數(shù)據(jù)通路部分所需的電平控制信號。例如,將K0與LDDR1連接,則K0向上時,表示置LDDR1為1;K0向下時,表示置LDDR1為0。3.數(shù)據(jù)指示燈D7D08個紅色發(fā)光二極管,用于顯示數(shù)據(jù)總線DBUS或者指令

22、寄存器IR的狀態(tài)。D7是最高位,D0是最低位。雙位開關IR/DBUS撥到IR位置時,顯示指令寄存器IR的狀態(tài);雙位開關IR/DBUS撥到DBUS位置時,顯示數(shù)據(jù)總線DBUS狀態(tài)。4.地址指示燈A7A08個綠色發(fā)光二極管,用于顯示雙端口存儲器的地址寄存器內(nèi)容。A7是最高位,A0是最低位。雙端口存儲器IDT7132有兩個地址端口,地址寄存器AR1提供左端口地址A7LA0L,地址寄存器AR2提供右端口地址A7RA0R。當雙位開關AR2/AR1撥到AR1位置時,顯示地址寄存器AR1的內(nèi)容;當雙位開關AR2/AR1撥到AR2位置時,顯示地址寄存器AR2的內(nèi)容。5.微地址指示燈m_A5m_A06個黃色發(fā)光

23、二極管,用于顯示控制存儲器的地址m_A5m_A0。m_A5是最高位,m_A0是最低位。其他指示燈P3、P2、P1、P0、IE、C6個黃色發(fā)光二極管用于顯示P3、P2、P1、P0、IE、C的值。P3、P2、P1、P0是控存的微代碼位,用于條件分支產(chǎn)生下一個微地址。C是加、減運算時產(chǎn)生的進位值。IE是中斷允許標志。當IE = 1時,允許中斷;當IE = 0時,禁止中斷。7.微動開關CLR#、QD、INTR這三個微動開關用于產(chǎn)生CLR#、QD、INTR單脈沖。按一次按鈕CLR#,產(chǎn)生一個負的單脈沖CLR#,對全機進行復位,使全機處于初始狀態(tài),微程序地址置為B。CLR#到時序和控制器的連接已在印制板上

24、實現(xiàn),控制存儲器和數(shù)據(jù)通路部分不使用復位信號CLR#。按一次QD按鈕,產(chǎn)生一個正的QD啟動脈沖。QD和時序部分的連接已在印制板上實現(xiàn)。按一次INTR按鈕,產(chǎn)生一個正的單脈沖,可用于作為中斷請求信號。INTR到時序部分的連接已在印制板上實現(xiàn)。這三個單脈沖都有插孔對外輸出,供用戶設計自己的控制器和時序電路時使用。8.單步、單拍、單指開關DB、DP、DZDB(單步)、DP(單拍)、DZ(單指)是三種特殊的非連續(xù)工作方式。當DP = 1時,計算機處于單拍方式,按一次QD按鈕,每次只執(zhí)行一條微指令,發(fā)送一組T1、T2、T3、T4時序脈沖。當DZ = 1時,計算機處于單指方式。單指方式只對微程序控制器適用

25、。在單指方式下,按一次QD按鈕,計算機執(zhí)行一條指令。當DB = 1時,機器處于單步方式。單步方式只對硬布線控制器適用。在單步方式下,按一次啟動按鈕QD,發(fā)送一組W1、W2、W3、W4時序脈沖。在使用硬布線控制器時,每條指令需要一組W1、W2、W3、W4時序脈沖,因此單步方式實際上是硬布線控制器下的單指方式。DB、DP、DZ這三個雙位開關,任何時刻都只允許一個開關置1,決不允許兩個或三個開關同時置1。當DB=0 且DP=0 且DZ=0時,機器處于連續(xù)工作方式。9.控制臺方式開關SWC、SWB、SWA控制臺方式開關SWC、SWB、SWA定義了TEC4計算機組成原理實驗系統(tǒng)的五種工作方式。在出廠時提

26、供的標準控存中,五種工作方式定義如下:SWCSWBSWA工作方式000PR,啟動程序001KRD,讀雙端口存儲器010KWE,寫雙端口存儲器011KLD,加載寄存器堆100KRR,讀寄存器堆圖3-2控制臺指令格式表在按CLR#按鈕復位后,根據(jù)SWC、SWB、SWA選擇工作方式。PR是啟動程序方式。在此方式下,首先在SW7SW0指定啟動地址,按啟動按鈕QD后,啟動程序運行。KRD是讀雙端口存儲器方式。在此方式下,(1)首先在SW7SW0置好存儲器地址;按QD按鈕,則將此地址打入地址寄存器AR1,并讀出該地址存儲器內(nèi)容到數(shù)據(jù)總線DBUS。(2)每按一次QD按鈕,地址寄存器AR1加1,并讀出新地址存

27、儲器內(nèi)容到數(shù)據(jù)總線DBUS。依次進行下去,直到按復位按鈕CLR#為止。KWE是寫雙端口存儲器方式。在此方式下,(1)首先在SW7SW0置好存儲器地址;按QD按鈕,則首先將此地址打入地址寄存器AR1,然后等待輸入數(shù)據(jù)。(2)在SW7SW0置好數(shù)據(jù),按QD按鈕,首先寫數(shù)據(jù)到AR1指定的存儲器單元,然后地址寄存器AR1加1,等待新的輸入數(shù)據(jù)。依次進行下去,直到按復位按鈕CLR#為止。KLD是加載寄存器堆方式。此方式用于對寄存器堆加載。(1)首先在SW7SW0置好存儲器地址,按QD按鈕,則將此地址打入地址寄存器AR1和地址寄存器AR2。(2)在SW7SW0置好數(shù)據(jù),數(shù)據(jù)的低2位D1、D0為寄存器堆中的

28、寄存器號,按一次QD按鈕,則寫數(shù)據(jù)到AR1指定的存儲器單元;然后將寫入的數(shù)據(jù)從右端口讀出,并送入指令寄存器IR。10.控制器控制器位于本實驗系統(tǒng)的中上部,產(chǎn)生數(shù)據(jù)通路操作所需的控制信號。出廠時,提供了一個微程序控制器,使用戶能夠進行基本的計算機組成原理實驗。在進行硬連線控制器實驗,流水微程序控制器實驗和流水硬連線控制器實驗等課程設計時,用戶可設計自己的控制器,部分或者全部代替出廠時提供的控制器。圖3-3控制器框圖第4章 機器語言程序設計4.1 機器語言程序及其存儲器位置、編碼和數(shù)據(jù)初值的設計 程序功能:例如將寄存器R2中的內(nèi)容和R0中的內(nèi)容相減,將所得的差值送入到寄存器R2中。程序?qū)崿F(xiàn)表:地址

29、指令機器代碼10HSUB R2, R012H11HSUB R3, R117H12HSUB R2,R31EH4.2 程序執(zhí)行過程及預測結(jié)果首先設置通用寄存器R0、R1、R2、R3的值,使R0=10H,R1=12H,R2=14H,R3=16H。然后從10H地址開始存3個機器代碼:12H,17H,1EH。用單指的方式執(zhí)行程序。初值:R0=10H,R1=12H,R2=14H,R3=15H。1. SUB R2, R0 執(zhí)行結(jié)果:R0=10H,R2=04H。2. SUB R3, R1執(zhí)行結(jié)果:R1=12H,R3=03H3. SUB R2,R3執(zhí)行結(jié)果:R2=01H,R3=15H第5章 指令流程與測試5.1

30、 接線方法1.將跳線開關J1用短路子短接。時序發(fā)生器的輸入TJI接控制存儲器的輸出TJ??刂破鞯妮斎隒接運算器ALU的C??刂破鞯妮斎隝R7、IR6、IR5、IR4依次指令寄存器IR的輸出IR7、IR6、IR5、IR4。共6條線。2.控制器的輸出LDIR(CER)、LDPC(LDR4)、PC_ADD、PC_INC、M4、LDIAR、LDAR1(LDAR2)、AR1_INC、M3、LDER、IAR_BUS#、SW_BUS#、RS_BUS#、ALU_BUS、CEL#、LRW、WRD、LDDR1(LDDR2)、M1(M2)、S2、S1、S0依次與數(shù)據(jù)通路的對應信號連接。共27條線。3.指令寄存器IR

31、的輸出IR0接雙端口寄存器堆的RD0、WR0,IR1接RD1、WR1,IR2接RS0,IR3接RS1。共6條線。合上電源。按CLR#按鈕,使實驗系統(tǒng)處于初始狀態(tài)。5.2設置通用寄存器R1,R0的值在本操作中,我們打算使R0=08H,R1=06H。1.令DP = 0,DB = 0,DZ =0,使實驗系統(tǒng)處于連續(xù)運行狀態(tài)。令SWC = 0、SWB = 1、SWA = 1,使實驗系統(tǒng)處于寄存器加載工作方式KLD。按CLR#按鈕,使實驗系統(tǒng)處于初始狀態(tài)。2.在SW7SW0上設置一個存儲器地址,該存儲器地址供設置通用寄存器使用。該存儲器地址最好是不常用的一個地址,以免設置通用寄存器操作破壞重要的存儲器單

32、元的內(nèi)容。例如可將該地址設置為0FFH。按一次QD按鈕,將0FFH寫入AR0和AR1。3.在SW7SW0上設置00H,作為通用寄存器R0的寄存器號。按一次QD按鈕,則將00H寫入IR。4.在SW7SW0設置10H,作為R0的值。按一次QD按鈕,將10H寫入IR指定的R0寄存器。5.在SW7SW0上設置10H,作為通用寄存器R2的寄存器號。按一次QD按鈕,將10H寫入IR。6.在SW7SW0設置14H,作為R2的值。按一次QD按鈕,將14H寫入R2。7.設置R0、R2結(jié)束,用同樣的方法設置R1、R38.按CLR#按鈕,使實驗系統(tǒng)恢復到初始狀態(tài)。5.3 存程序機器代碼 本操作中,我們從10地址開始

33、存。3個機器代碼:12H,17H,1EH。1.令DP = 0,DB = 0,DZ =0,使實驗系統(tǒng)處于連續(xù)運行狀態(tài)。令SWC = 0、SWB = 1、SWA = 0,使實驗系統(tǒng)處于寫雙端口存儲器工作方式KWE。按CLR#按鈕,使實驗系統(tǒng)處于初始狀態(tài)。2.置SW7SW0為10H,按QD按鈕,將10H寫入AR1。3.置SW7SW0 為12H,按QD按鈕,將12H寫入存儲器10H單元。AR1自動加1,變?yōu)?1H。4.置SW7SW0為17H,按QD按鈕,將17H寫入存儲器11H單元。AR1自動加1,變?yōu)?2H。5.重復進行,將1EH寫入存儲器12H單元。按CLR#按鈕,使實驗系統(tǒng)恢復到初始狀態(tài)。5.4

34、用單拍(DP)方式執(zhí)行一遍程序 在單拍執(zhí)行過程中,首先要隨時監(jiān)測AR2的值和IR的值,以判定程序執(zhí)行到何處,正在執(zhí)行哪條指令。監(jiān)測微地址指示燈和判斷字段指示燈,對照微程序流程圖,可以判斷出微指令的地址和正在進行的微操作。程序執(zhí)行的結(jié)果如下:初值:R0=10H,R1=12H,R2=14H,R3=15H。1. SUB R2, R0 執(zhí)行結(jié)果:R0=10H,R2=04H。2. SUB R3, R1執(zhí)行結(jié)果:R1=12H,R3=03H3.SUB R2,R3執(zhí)行執(zhí)行結(jié)果:R2=01H,R3=15H5.5用單指(DZ)方式執(zhí)行一遍程序初值:R0=10H,R1=12H,R2=14H,R3=15H。2. SU

35、B R2, R0 執(zhí)行結(jié)果:R0=10H,R2=04H。2. SUB R3, R1執(zhí)行結(jié)果:R1=12H,R3=03H3.SUB R2,R3執(zhí)行執(zhí)行結(jié)果:R2=01H,R3=15H5.6用連續(xù)方式執(zhí)行一遍程序初值:R0=10H,R1=12H,R2=14H,R3=15H。3. SUB R2, R0 執(zhí)行結(jié)果:R0=10H,R2=04H。2. SUB R3, R1執(zhí)行結(jié)果:R1=12H,R3=03H3.SUB R2,R3執(zhí)行執(zhí)行結(jié)果:R2=01H,R3=15H第6章 總結(jié)一周的組成原理課設在忙忙碌碌中過去了,通過本次課設,不僅深入的學習了減法指令流程的設計涉及到微程序控制,數(shù)據(jù)通路,雙端口存儲器以

36、及減法運算的內(nèi)容,更使我對計算機組成原理有了更加實際應用的了解,加強了我動手、思考和解決問題的能力。實驗中讓我感覺到自己對課本上的知識理解還不是很好,還有很多知識點沒有掌握,即使有的知識點自己認為在書本上講自己完全明白,但是一旦落實到動手實踐上,才發(fā)現(xiàn)自己有很多盲點,這不僅讓我認識到自己的不足這是因為開始時我對課程題目的理解不夠深刻,再加上自己實際動手能力有限,經(jīng)驗有限,做起來比較困難。但通過老師細心的教導,同學的幫助,和自己的努力,終于取得成功,通過此次課程設計,使我對組成原理有了更加深刻的了解,更深刻的認識。總是,此次組成原理課程設計使我受益匪淺,在這要非常感謝我的指導老師王昊老師。相信在今后的學習,我會更加努力。參考文獻1 張代元.計算機組成原理教程.北京:清華大學出版社,2009年11月.2 李學干. 計算機系統(tǒng)結(jié)構(gòu). 西安電子科技大學出版社 ,2006.05.3 王保恒. 計算機原理與設計. 高等教育出版社 200

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論