第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)_第1頁
第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)_第2頁
第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)_第3頁
第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)_第4頁
第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第六節(jié)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)CPU組成與機(jī)器指令執(zhí)行實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?)將微程序控制器同執(zhí)行部件(整個(gè)數(shù)據(jù)通路)聯(lián)機(jī),組成一臺(tái)模型計(jì)算機(jī);(2)用微程序控制器控制模型機(jī)數(shù)據(jù)通路;3)經(jīng)過CPU運(yùn)轉(zhuǎn)九條機(jī)器指令(消除中止指令)組成的簡單程序,掌握機(jī)器指令與微指令的關(guān)系,牢固建立計(jì)算機(jī)的整機(jī)觀點(diǎn)。二、實(shí)驗(yàn)電路本次實(shí)驗(yàn)用到前面四個(gè)實(shí)驗(yàn)中的全部電路,包含運(yùn)算器、儲(chǔ)藏器、通用寄存器堆、程序計(jì)數(shù)器、指令寄存器、微程序控制器等,將幾個(gè)模塊組合成為一臺(tái)簡單計(jì)算機(jī)。所以,在基本實(shí)驗(yàn)中,這是最復(fù)雜的一個(gè)實(shí)驗(yàn),也是最能獲得收獲的一個(gè)實(shí)驗(yàn)。在前面的實(shí)驗(yàn)中,實(shí)驗(yàn)者自己作為“控制器”,完成數(shù)據(jù)通路的控制。而在本次實(shí)驗(yàn)中,數(shù)據(jù)通路的控制將由微程序控制器來完成。CPU從內(nèi)存拿出一條機(jī)器指令到執(zhí)行指令結(jié)束的一個(gè)機(jī)器指令周期,是由微指令組成的序列來完成的,即一條機(jī)器指令對(duì)應(yīng)一個(gè)微程序。三、實(shí)驗(yàn)設(shè)備1)TEC-4計(jì)算機(jī)組成原理實(shí)驗(yàn)系一致臺(tái)(2)雙蹤示波器一臺(tái)(3)直流萬用表一只(4)邏輯測(cè)試筆一支四、實(shí)驗(yàn)任務(wù)(1)對(duì)機(jī)器指令系統(tǒng)組成的簡單程序進(jìn)行譯碼。將下表的程序按指令格式手工匯編成十六進(jìn)制機(jī)器代碼,此項(xiàng)任務(wù)應(yīng)在預(yù)習(xí)時(shí)完成。2)依據(jù)下邊框圖,參照前面實(shí)驗(yàn)的電路圖完成連線,控制器是控制部件,數(shù)據(jù)通路(包含上邊各模塊)是執(zhí)行部件,時(shí)序產(chǎn)生器是時(shí)序部件。連線包含控制臺(tái)、時(shí)序部分、數(shù)據(jù)通路和微程序控制器之間的連接。此中,為把操作數(shù)傳達(dá)給通用寄存器組RF,數(shù)據(jù)通路上的RS1、RS0、RD1、RD0應(yīng)分別與IR3至IR0連接,WR1、WR0也應(yīng)接到IR1、IR0上。開關(guān)控制控制臺(tái)時(shí)序發(fā)生器開關(guān)控制指示燈信號(hào)控制信號(hào)時(shí)序信號(hào)控制信號(hào)微程序控制器數(shù)據(jù)通路指令代碼、條件信號(hào)模型計(jì)算機(jī)連線表示圖3)將上述任務(wù)(1)中的程序機(jī)器代碼用控制臺(tái)操作存入內(nèi)存中,并依據(jù)程序的需要,用數(shù)碼開關(guān)SW7―SW0設(shè)置通用寄存器R2、R3及內(nèi)存相關(guān)單元的數(shù)據(jù)。注意:因?yàn)樵O(shè)置通用寄存器時(shí)會(huì)破壞內(nèi)存單元的數(shù)據(jù),所以一般應(yīng)先設(shè)置寄存器的數(shù)據(jù),再設(shè)置內(nèi)存數(shù)據(jù)。(4)用單拍(DP)方式執(zhí)行一遍程序,列表記錄通用寄存器堆RF中四個(gè)寄存器的數(shù)據(jù),以及由STA指令存入RAM中的數(shù)據(jù)(程序結(jié)束后從RAM的相應(yīng)單元中讀出),與理論解析值作比較。單拍方式執(zhí)行時(shí)注意察看微地址指示燈、IR/DBUS指示燈、AR2/AR1指示燈和判斷字段指示燈的值,以追蹤程序中取指令和執(zhí)行指令的詳細(xì)過程(可察看到每一條微指令)。(5)以單指(DZ)方式重新執(zhí)行程序一遍,注意察看IR/DBUS指示燈、AR2/AR1指示燈的值(可察看到每一條機(jī)器指令)。執(zhí)行結(jié)束后,記錄RF中四個(gè)寄存器的數(shù)據(jù),以及由STA指令存入RAM中的數(shù)據(jù),與理論解析值作比較。注意:單指方式執(zhí)行程序時(shí),四個(gè)通用寄存器和RAM中的原始數(shù)據(jù)與第一遍執(zhí)行程序的結(jié)果相關(guān)。6)以連續(xù)方式(DB、DP、DZ都設(shè)為0)再次執(zhí)行程序。這類狀況相當(dāng)于計(jì)算機(jī)正常運(yùn)轉(zhuǎn)程序。因?yàn)槌绦蛑杏型C(jī)指令STP,程序執(zhí)行到該指令時(shí)自動(dòng)停機(jī)。執(zhí)行結(jié)束后,記錄RF中四個(gè)寄存器的數(shù)據(jù),以及由STA指令存入RAM中的數(shù)據(jù),與理論解析值作比較。同理,程序執(zhí)行前的原始數(shù)據(jù)與第二遍執(zhí)行結(jié)果相關(guān)。五、實(shí)驗(yàn)步驟和實(shí)驗(yàn)結(jié)果1)對(duì)機(jī)器指令系統(tǒng)組成的簡單程序進(jìn)行譯碼。2)接線本實(shí)驗(yàn)的接線比很多,需仔細(xì)。1.將跳線開關(guān)J1用短路子短接。時(shí)序發(fā)生器的輸入TJI接控制儲(chǔ)藏器的輸出TJ。控制器的輸入C接運(yùn)算器ALU的C。控制器的輸入IR7、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ù)通路的對(duì)應(yīng)信號(hào)連接。共

27條線。

3.指令寄存器

IR的輸出

IR0接雙端口寄存器堆的

RD0、WR0,IR1接RD1、WR1,IR2接

RS0,IR3接

RS1。共

6條線。合上電源。按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)處于初始狀態(tài)。3)存程序機(jī)器代碼,設(shè)置通用寄存器R2、R3及內(nèi)存相關(guān)單元的數(shù)據(jù)。設(shè)置通用寄存器R2、R3的值。在本操作中,我們打算使R2=60H,R3=61H。1.令DP=0,DB=0,DZ=0,使實(shí)驗(yàn)系統(tǒng)處于連續(xù)運(yùn)轉(zhuǎn)狀態(tài)。令SWC=0、SWB=1、SWA=1,使實(shí)驗(yàn)系統(tǒng)處于寄存器加載工作方式KLD。按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)處于初始狀態(tài)。2.在SW7―SW0上設(shè)置一個(gè)儲(chǔ)藏器地址,該儲(chǔ)藏器地址供設(shè)置通用寄存器使用。該儲(chǔ)藏器地址最好是不常用的一個(gè)地址,省得設(shè)置通用寄存器操作破壞重要的儲(chǔ)藏器單元的內(nèi)容。比方可將該地址設(shè)置為0FFH。按一次QD按鈕,將0FFH寫入AR0和AR1。3.在SW7―SW0上設(shè)置02H,作為通用寄存器R2的寄存器號(hào)。按一次QD按鈕,則將02H寫入IR。4.在SW7―SW0設(shè)置60H,作為R2的值。按一次QD按鈕,將60H寫入IR指定的R2寄存器。5.在SW7―SW0上設(shè)置03H,作為通用寄存器R3的寄存器號(hào)。按一次QD按鈕,將03H寫入IR。6.在SW7―SW0設(shè)置61H,作為R3的值。按一次QD按鈕,將61H寫入R3。7.設(shè)置R2、R3結(jié)束,按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)恢復(fù)到初始狀態(tài)。存程序機(jī)器代碼。本操作中,我們從00地址開始存10個(gè)機(jī)器代碼:58H,5DH,04H,95H,3EH,1BH,4BH,24H,60H,84H。在60H存入24H,用于給R0置初值;在61H存入83H,用于給R0置初值。1.令DP=0,DB=0,DZ=0,使實(shí)驗(yàn)系統(tǒng)處于連續(xù)運(yùn)轉(zhuǎn)狀態(tài)。令SWC=0、SWB=1、SWA0,使實(shí)驗(yàn)系統(tǒng)處于寫雙端口儲(chǔ)藏器工作方式KWE。按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)處于初始狀態(tài)。

2.置

SW7―SW0

為00H,按

QD

按鈕,將

00H

寫入

AR1。

3.置

SW7―SW0

為58H,按

QD

按鈕,將

58H

寫入儲(chǔ)藏器

00H

單元。

AR1

自動(dòng)加1,變成01H。4.置SW7―SW0為5DH,按QD按鈕,將5DH寫入儲(chǔ)藏器01H單元。AR1自動(dòng)加1,變成02H。5.按QD按鈕,使AR1+1。AR1此時(shí)為02H。6.重復(fù)進(jìn)行下去,向到達(dá)將84H寫入儲(chǔ)藏器09H單元。按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)恢復(fù)到初始狀態(tài)。7.置SW7―SW0為60H,按QD按鈕,將60H寫入AR1。8.置SW7―SW0為24H,按QD按鈕,將24H寫入儲(chǔ)藏器60H單元。AR1自動(dòng)加1,變成61H。9.置SW7―SW083H,按QD按鈕,將83H寫入儲(chǔ)藏器61H單元。按CLR#按鈕,使實(shí)驗(yàn)系統(tǒng)恢復(fù)到初始狀態(tài)。用單拍(DP)方式執(zhí)行一遍程序。在單拍執(zhí)行過程中,第一要隨時(shí)監(jiān)測(cè)AR2的值和IR的值,以判斷程序執(zhí)行到哪處,正在執(zhí)行哪條指令。監(jiān)測(cè)微地址指示燈和判斷字段指示燈,比較微程序流程圖,可以判斷出微指令的地址和正在進(jìn)行的微操作。程序執(zhí)行的結(jié)果以下:初值:R0不決,R1不決,R2=60H,R3=61H。儲(chǔ)藏器60H單元的內(nèi)容是24H,61H單元的內(nèi)容是83H。1.LDAR0,[R2]執(zhí)行結(jié)果R2=60H,R0=24H。2.LDAR1,[R3]執(zhí)行結(jié)果R3=61H,R1=83H。3.ADDR0,R1執(zhí)行結(jié)果R0=0A7H,R1=83H,C=0。4.JC+5執(zhí)行結(jié)果轉(zhuǎn)移到03H,因?yàn)镃=0。5.ANDR2,R3執(zhí)行結(jié)果R2=60H,R3=61H。6.SUBR3,R2執(zhí)行結(jié)果R2=60H,R3=01H7.STAR3,[R2]執(zhí)行結(jié)果R2=60H,R3=01H,儲(chǔ)藏器60單元的內(nèi)容為01H。8.MULR0,R1執(zhí)行結(jié)果R0=15H,R1=83H9.STP執(zhí)行結(jié)果:無變化10.JMP[R1]執(zhí)行結(jié)果轉(zhuǎn)移到83H。第一遍執(zhí)行結(jié)束。執(zhí)行結(jié)果是

R0=15H,R1=83H

,R2=60H,R3=01H,儲(chǔ)藏器60H單元的內(nèi)容是01H,61H單元的內(nèi)容是83H。(5)用單指(DZ)方式執(zhí)行一遍程序。初值:R0=15H,R1=83H,R2=60H,R3=01H,儲(chǔ)藏器60H單元的內(nèi)容是01H,61H單元的內(nèi)容是83H。1.LDAR0,[R2]執(zhí)行結(jié)果R2=60H,R0=01H。2.LDAR1,[R3]執(zhí)行結(jié)果R3=01H,R1=5DH。3.ADDR0,R1執(zhí)行結(jié)果R0=5EH,R1=5DH,C=04.4.JC+5執(zhí)行結(jié)果轉(zhuǎn)移到03H,因?yàn)镃=0。5.ANDR2,R3執(zhí)行結(jié)果R2=00H,R3=01H。6.SUBR3,R2執(zhí)行結(jié)果R2=00H,R3=01H7.STAR3,[R2]執(zhí)行結(jié)果R2=00H,R3=01H,儲(chǔ)藏器00單元的內(nèi)容為01H。8.MULR0,R1執(zhí)行結(jié)果R0=0B6H,R1=5DH9.STP執(zhí)行結(jié)果:無變化10.JMP[R1]執(zhí)行結(jié)果轉(zhuǎn)移到

5DH第二遍執(zhí)行結(jié)束。執(zhí)行結(jié)果是

R0=B6H,R1=5DH,R2=00H,R3=01H,儲(chǔ)藏器

60H

單元的內(nèi)容是

01H,61H

單元的內(nèi)容是

83H,00H

單元的內(nèi)容為

01H。(6)用連續(xù)方式執(zhí)行一遍程序因?yàn)?0單元的內(nèi)容已被更正,所以在執(zhí)行前應(yīng)第一恢復(fù)00H單元的內(nèi)容58H。初值:R0=0B6H,R1=5DH,R2=00H,R3=01H,儲(chǔ)藏器60H單元的內(nèi)容是01H,61H單元的內(nèi)容是83H,00H單元的內(nèi)容為58H。1.LDAR0,[R2]執(zhí)行結(jié)果R2=0

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論