浙江理工大學計算機組成原理課程設計報告_第1頁
浙江理工大學計算機組成原理課程設計報告_第2頁
浙江理工大學計算機組成原理課程設計報告_第3頁
浙江理工大學計算機組成原理課程設計報告_第4頁
浙江理工大學計算機組成原理課程設計報告_第5頁
已閱讀5頁,還剩6頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、計算機組成原理課程設計報告(2013/2014第二學期第19周)指導教師:許建龍張芳班級:12計科2班姓名:學號:計算機組成原理大型實驗任務書(計算機12級1、2、3班和實驗班)一、實驗目的:深入了解計算機各種指令的執(zhí)行過程,以及控制器的組成,指令系統(tǒng)微程序設計的具體知識,進一步理解和掌握動態(tài)微程序設計的概念;完成微程序控制的特定功能計算機的指令系統(tǒng)設計和調試。二、實驗說明:要進行這項大型實驗,必須清楚地懂得:(1) TEC-2機的功能部件及其連接關系;(2) TEC-2機每個功能部件的功能與具體組成;(3) TEC-2機支持的指令格式;(4) TEC-2機的微指令格式,AM2910芯片的用法

2、;(5)已實現(xiàn)的典型指令的執(zhí)行實例,即相應的微指令與其執(zhí)行次序的安排與銜接;(6)要實現(xiàn)的新指令的格式與功能。三、實驗內容:選定指令格式、操作碼,設計如下指令:(1)把用絕對地址表示的內存單元A中的內容與內存單元B中的內容相加,結果存于內存單元C中。指令格式:D4XADDR1,ADDR2,ADDR3四字指令(控存入口100H)功能:ADDR3=ADDR1+ADDR2(2)將一通用寄存器內容減去某內存單元內容,結果放在另一寄存器中。指令格式:E0DRSR,ADDR(SR,DR源、目的寄存器各4位)雙字指令(控存入口130H)功能:DR=SR-ADDR(3)轉移指令。判斷兩個通用寄存器內容是否相等

3、,若相等則轉移到指定絕對地址,否則順序執(zhí)行。指令格式:E5DRSR,ADDR雙字指令什存入口140H)功能:ifDR=SRgotoADDRelse順序執(zhí)行。設計:利用指令的CND字段,即IRio8,令IRio8=101,即CC=Z則當DR=SR時Z=1,微程序不跳轉,接著執(zhí)行MEMPC(即ADDR-PCT而當DR!=SR時Z=0,微程序跳轉至A4。四、實驗要求:(1)根據(jù)內容自行設計相關指令微程序;(務必利用非上機時間設計好微程序)(2)設計測試程序、實驗數(shù)據(jù)并上機調試。(3)設計報告內容:包括1、設計目的2、設計內容3、微程序設計(含指令格式、功能、設計及微程序)4、實驗數(shù)據(jù)(測試所設計指令

4、的程序及結果)。(具體要求安最新規(guī)范為準)(4)大型實驗報告必須打印成冊,各班班長收齊大型實驗報告于19周星期五前,交張芳老師辦公室。五、上機時間安排:2014計算機組成原理課程設計安排如下:(第十九周)(地點:10-413和414機房)時間星期9:00-12:001:00-4:0017:3020:30備注星期三6月25日12計算機(1)12計算機(2)12計算機(3)電信實驗班星期四6月26日12計算機(1)12計算機(2)12計算機(3)電信實驗班12計算機(1)12計算機(2)12計算機(3)電信實驗班星期五6月27日12計算機(1)12計算機(2)12計算機(3)電信實驗班12計算機(

5、1)12計算機(2)12計算機(3)電信實驗班備注:1.各班每2人一組,可自由組合彳!要固定,各班班長將各組組號及學生名單于第一次上機時上報指導教師;2.各班學生須嚴格按照規(guī)定的時間上機,不得無故缺席、遲到早退,指導教師會嚴格考勤。指導教師:許建龍、張芳2014年6月18日計算機組成原理課程設計實驗報告一、目的和要求深入了解計算機各種指令的執(zhí)行過程,以及控制器的組成,指令系統(tǒng)微程序設計的具體知識,進一步理解和掌握動態(tài)微程序設計的概念;完成微程序控制的特定功能計算機的指令系統(tǒng)設計和調試。二、實驗環(huán)境PC機與TEC-2機模擬程序三、具體內容(一)把用絕對地址表示的內存單元A中的內容與內存單元B中的

6、內容相加,結果存于內存單元C中。指令格式:D4XADDR1,ADDR2,ADDR3四字指令(控存入口100H)功能:ADDR3=ADDR1+ADDR21 .微程序:(1)PCHAR,PC+PC00000E00A0B55402當前程序計數(shù)器內容送地址寄存器,為讀取第一個操作數(shù)地址做準備;程序計數(shù)器指向下一單元地址B55B00000000000001110I00000000101000001011|01010101010000000010CI3-CI0(B43-B40)為1110,功能為順序執(zhí)行;SCC(B39-B37)為000,CC#=1,不發(fā)生轉移;SST(B34-B32)為000,標志位不發(fā)

7、生改變;MIO#(B31)REQ(B27)WE#(B23)為101,表示不操作;B口地址(B15-B12)為0101,BI8-BI6(B30-B28為010,MI5-MI3(B26-B24)為000,MI2-MI0(B22-B20)為011,SCI(B11-B10為01,SA(B7為0,SB(B3為0,表示5號通用寄存器R5,即PC通過B口實現(xiàn)加1,再通過B口寫回到PC(B+0+CizB);(2)MEMAR00000E0010F00002從主存讀取第一個操作數(shù)地址,為讀取第一個操作數(shù)做準備B55B00000|0000|0000|1110|0000|0000|000100001111000000

8、00|0000|0000|0010MIO#REQWE#為001,表示從主存儲器讀入數(shù)據(jù)(地址);B口地址為0000,BI8-BI6為001,MI5-MI3為000,MI2-MI0為111,SCI為00,表示AM2901不做運算;(3)MEMfQ00000E0000F00000從主存讀取第一個操作數(shù)B55B0000000000000111010000000000000000111100000000000000000000MIO#REQWE#(B2助001,表示從主存儲器讀入數(shù)據(jù)(地址);I8-6為000,MI5-3為000,MI2-0為111,表示將主存中讀出的數(shù)據(jù)加上0,再將結果回送到Q寄存器

9、;(4)P8AR,PC+PC00000E00A0B55402當前程序計數(shù)器內容送地址寄存器,為讀取第二個操作數(shù)地址做準備;程序計數(shù)器指向下一單元地址B55B000000000000011100000000010100000101101010101010000000010(5)MEMfAR00000E0010F00002從主存讀取第二個操作數(shù)地址,為讀取第二個操作數(shù)做準備B55B000000000100001110I0000000000010000111100000000000000000010(6)MEM+QfQ00000E0000E00000從主存讀取第一個操作數(shù)B55B0000000001

10、00001110|0000000000000000111000000000000000000000MIO#REQWE媯001,BI8-6為000,MI5-3為000,MI2-0為110,表示將第二個操作數(shù)從主存讀出并且加上Q寄存器的內容,再將結果回送到Q寄存器;PCHAR,PC+PC00000E00A0B55402當前程序計數(shù)器內容送地址寄存器,為讀取計算結果存儲單元地址做準備;程序計數(shù)器指向下一單元地址(8)MEMf AR0000 0E00 10F0 0002B55B000000000000011100000000010100000101101010101010000000010從主存讀取結

11、果存儲單元地址B55B0000000001000011100000000000010000111100000000000000000010(9)QfMEM,CC#=00029030010200010計算結果送結果存儲單元B55B0001010011000000110000000000010000001000000000000000010000MIO#REQWE媯000,BI8-6為001,MI5-3為000,MI2-0為010,表示將Q寄存器里面的內容存到AR存儲的單元地址對應的存儲單元;2 .輸入微碼>E90009000000:00000000:0E000000:A0B50000:54

12、020000:000009050000:0E000000:10F00000:00020000:00000000:0E00090A0000:00F00000:00000000:00000000:0E000000:A0B5090F0000:54020000:00000000:0E000000:10F00000:000209140000:00000000:0E010000:00E00000:00000000:000009190000:0E000000:A0B50000:54020000:00000000:0E00091E0000:10F00000:00020000:00290000:03000923

13、0000:0010;將微程序的16進制代碼輸入到從900H開始的內存單元中3.查看微碼0000:1020>D900090000000E00A0B5540200000E0010F00002090800000E0000F0000000000E00A0B55402091000000E0010F0000200000E0100E00000091800000E00A0B5540200000E0010F00002092000290300;查看單元內容是否正確4.加載微碼>A8000800:MOVR1,9000802:MOVR2,90804:MOVR3,1000806:LDMC0807:RET08

14、08:>G800102000100000000000000000;微碼在內存中的首地址為900H;微程序一共有9條微指令;微碼加載到微控存中的首地址;加載微碼指令;返回;執(zhí)行加載微碼程序5.輸入程序,測試新指令>A8200820: MOV R0,00230822: MOV A00,R00824: MOV A01,R00826: NOP0827: NOP0828: NOP0829: NOP082A: RET082B:>E826將操作數(shù)放到寄存器R0, 這里兩個操作數(shù)都是將 R0 存放的操作數(shù)放到A00 地址單元將 R0 存放的操作數(shù)放到A01 地址單元編輯 0826 開始到 0

15、829 單元內容,將新指令輸入23H0000:D4000000:0A000000:0A010000:0A02>U820查看0820: 2C00 0023MOVR0,00230822: 3400 0A00MOV0A00, R00824: 3400 0A01MOV0A01, R00826: D400DWD4000827: 0A00ADCR0,R00828: 0A01ADCR0,R10829: 0A02ADCR0,R2082A: AC00RET>G820運行08266.運算結果>DA000A0000230023004600000000000000000000;0A00單元和0A01

16、單元內容為操作數(shù),相加后結果為0046,存在0A02單元,正確(二)將一通用寄存器內容減去某內存單元內容,結果放在另一寄存器中。指令格式:E0DRSR,ADDR(SR,DR源、目的寄存器各4位)雙字指令(控存入口130H)功能:DR=SR-ADDR1 .微程序PCHAR,PC+PC00000E00A0B55402當前程序計數(shù)器內容送地址寄存器,為讀取操作數(shù)地址做準備;程序計數(shù)器指向下一單元地址000000001000011100000000010100000101101010101010000000010(2)MEMAR00000E0010F00002從主存讀取第一個操作數(shù)地址,為讀取操作數(shù)做

17、準備B55B0000000001000011100000000000010000111100000000000000000010(3)SR-ADDRfDR0029030131D00088寄存器SR存放的操<減去ADDR單元內容,并存入DRB55B0001010011000000110000000100110001110100000000000010001000B55-B0MIO#REQWE的000,BI8-6為011,MI5-3為001,MI2-0為101,SA(B7)=1,SB(B3)=1,表示將寄存器SR(A口)存放的操作數(shù)減去ADDR單元內容,并存入DR(通過B口);2 .輸入微碼

18、>E90009000000:00000000:0E000000:A0B50000:54020000:000009050000:0E000000:10F00000:00020000:00290000:0301090A0000:31D00000:0088;將微程序的16進制代碼輸入到從900H開始的內存單元中3 .查看微碼>D900090000000E00A0B5540200000E0010F0000209080029030131D000880000000000000000;查看單元內容是否正確4 .加載微碼>A8000800: MOV R1,9000802: MOV R2,30

19、804: MOV R3,1300806: LDMC0807: RET0808:>G8005.輸入程序,測試新指令;微碼在內存中的首地址為900H;微程序一共有9條微指令;微碼加載到微控存中的首地址;加載微碼指令;返回;執(zhí)行加載微碼程序>A8200820: MOV R0,00230822: MOV R3,00270824: MOV A00,R00826: NOP0827: NOP0828: RET0829:>E826將減數(shù)放到通用寄存器R0將被減數(shù)放到通用寄存器R3將R0中減數(shù)放到0A00單元編輯0826開始到0827單元,將新指令輸入,其中SR為R3,DR為R20826000

20、0:E0230000:0A00>U820查看0820:2C000023MOVR0,00230822:2C300027MOVR3,00270824:34000A00MOV0A00,R00826:E023DWE0230827:0A00ADCR0,R00828:AC00RET>G820運行6 .運算結果>RR0=0023R1=090CR2=0004R3=0027SP=FFFFPC=0820IP=0828R7=0000R8=0000R9=0000R10=0000R11=0000R12=0000R13=0000R14=0000R15=0000F=000011110820:2C00002

21、3MOVR0,0023;源寄存器為R3,目的寄存器為R2,被減數(shù)為0023,減數(shù)為0027,結果為0004存放于R2,正確(三)轉移指令。判斷兩個通用寄存器內容是否相等,若相等則轉移到指定絕對地址,否則順序執(zhí)行。指令格式:E5DRSR,ADDR雙字指令什存入口140H)功能:ifDR=SRgotoADDRelse順序執(zhí)行。設計:利用指令的CND字段,即對08,令IRio8=101,即CC=Z則當DR=SR時Z=1,微程序不跳轉,接著執(zhí)行MEMPC(即ADDR-PCT而當DR!=SR時Z=0,微程序跳轉至A41 .微程序(1) SR-DR00000E0191900088SR內容減DR內容,若相等

22、,則標志符Z=1,否則Z=0B55B00000000000001110I0000000110010001100100000000000010001000SST=01表示接收運算結果設置標志位狀態(tài)(2) PCHAR,CC#=CND,PC+1PC002903E0A0B55402當前程序計數(shù)器內容送地址寄存器,條件轉移信號CC#=CND即判斷Z是否為1,若為1則中斷條件成立;程序計數(shù)器指向下一單元地址B55B0001010011000000111110000010100000101101010101010000000010SCCJ0111,表示CC般置條件(CND)源來自指令寄存器(即IR10-8為

23、0101,CND=Z)MEMfPC0029030030F05000取內存單元ADDR中的地址送PCB55B000101001|0000001110000000000110000111100000101000000000000MIO#REQWE的001,B口地址為0101,表示將主存地址單元ADDR中的地址送至地址寄存器2 .輸入微碼>E90009000000:00000000:0E010000:91900000:00880000:002909050000:03E00000:A0B50000:54020000:00290000:0300090A0000:30F00000:50003 .查看

24、微碼>D900090000000E0191900088002903E0A0B55402).T.9080029030030F050000000000000000000.).0.P4 .加載微碼>A8000800:MOVR1,9000802:MOVR2,30804:MOVR3,1400806:LDMC0807:RET0808:>G8005 .輸入程序,測試新指令兩數(shù)相等時;>A8200820:MOVR1,00260822:MOVR2,00260824:NOP0825:NOP0826:MOVR1,00230828:RET0829:>E82408240000:E51200

25、00:0828>U8200820:2C100026MOVR1,00260822:2C200026MOVR2,00260824:E512DWE5120825:0828ADCR2,R80826:2C100023MOVR1,00230828:AC00RET0829:0011NOP082A:AC00RET082B:0000NOP082C:0000NOP082D:0000NOP082E:0000NOP082F:0000NOP0830:0000NOP0831:0000NOP0832:0000NOP>G820兩數(shù)不相等時:>A8200820:MOVR1,00250822:MOVR2,002

26、40824:NOP0825:NOP0826:MOVR1,00230828:RET0829:>E82408240000:E512 0000:08280820: 2C10 0025 MOV R1,0025;不相等時執(zhí)行 MOV R1,0023;該運算結果正確四.課程設計答辯題目設計一個新指令E0 X DR,實現(xiàn)功能設計:微指令:(1) POAR,PC+ePC(2) MEIM>AR DR+SQ(4) Q-MEM -DR(5) PCAR,PC+eAR(6) MEM>AR(7) DFHMEM,CC#=0二進制微碼:>U8200820:2C100025MOVR1,00250822:

27、2C200024MOVR2,00240824:E512DWE5120825:0828ADCR2,R80826:2C100023MOVR1,00230828:AC00RET>G8206 .運算結果相等時:>RR0=0000R1=0026R2=0026R3=0011SP=FFFFPC=0820IP=0828R7=0000R8=0000R9=0000R10=0000R11=0000R12=0000R13=0000R14=0000R15=0000F=010011110820:2C100026MOVR1,0026而等時轉移到0828執(zhí)行RET,不執(zhí)行MOVR1,0023;該運算結果正確不相等時:>RR0=0000R1=0023R2=0024R3=0011SP=FFFFPC=0820IP=0828R7=0000R8=0000F=00001111R9=0000R10=0000R11=0000R12=0000R13=0000R14=0000R15=0000ADD2DR-ADD1指令格式E0XDRADD1ADD2ADD1地址送地址寄存器取ADD1地址Q存被減數(shù)計算結果回送DR取ADD2地

溫馨提示

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

評論

0/150

提交評論