CPU與簡單模型機設(shè)計實驗_第1頁
CPU與簡單模型機設(shè)計實驗_第2頁
CPU與簡單模型機設(shè)計實驗_第3頁
CPU與簡單模型機設(shè)計實驗_第4頁
CPU與簡單模型機設(shè)計實驗_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗項目CPU與簡單模型機設(shè)計實驗實驗時間2015年11月7日實驗(1)掌個簡單CPU的組成原理。(2)在掌握部件單元電路的基礎(chǔ)上,進(jìn)一步將其構(gòu)造一臺基本模型計算機。(3)為其定義五條機器指令,編寫相應(yīng)的微程序,并上機調(diào)試掌握整機概念。目的實PC機一臺,TD-CMA實驗系A(chǔ)套設(shè)備實驗原理的基礎(chǔ)上,繼續(xù)構(gòu)建一個簡單的模型計算機。,并且在此CPUCPU本實驗要實現(xiàn)一個簡單的)、程序),指令寄存器(IRCPU由運算器(ALU)、微程序控制器(MC)、通用寄存器(R0在寫入相應(yīng)的微指令后,就CPUARPC)和地址寄存器()組成,如圖5-1-1所示。這個計數(shù)器(具備了執(zhí)行機器指令的功能,但是機器指令一般

2、存放在主存當(dāng)中,CPU必須和主存掛接后,才有以構(gòu)成一個簡實際的意義,所以還需要在該CPU的基礎(chǔ)上增加一個主存和基本的輸入輸出部件,單的模型計算機。構(gòu)成原理圖CPU5-1-1圖基本除了程序計數(shù)器(PC),其余部件在前面的實驗中都已用到,在此不再討論。系統(tǒng)的程序計數(shù)器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR連接至CON單元的總4青端CLR,按下CLR按鈕,將使PC清零,LDPC和T3相與后作為計數(shù)器的計數(shù)時鐘,當(dāng)LOAD為低時,計數(shù)時鐘到來后將CPU內(nèi)總線上的數(shù)據(jù)打入PC。如圖5-1-2所示。圖5-1-2程序計數(shù)器(PC)原理圖本模型機和前面微程序控制器實驗相比,新增加一條跳轉(zhuǎn)

3、指令JMP,共有五條指令:IN(輸入)、ADD(二進(jìn)制加法)、OUT(輸出)、JMP(無條件轉(zhuǎn)移),HLT(停機),其指令格式如下(高4位為操作碼):其中JMP為雙字節(jié)指令,其余均為單字節(jié)指令,*為addr對應(yīng)的二進(jìn)制地址碼。微程序控制器實驗的指令是通過手動給出的,現(xiàn)在要求CPU自動從存儲器讀取指令并執(zhí)行。根據(jù)以所示。本實驗在前一個實驗的基礎(chǔ)上增加了三個部件,一5-1-3上要求,設(shè)計數(shù)據(jù)通路圖,如圖是PC(程序計數(shù)器),另一個是AR(地址寄存器),還有就是MEM(主存)。因而在微指令中應(yīng)增加相應(yīng)的控制位,其微指令格式如表5-1-1所示。圖5-1-3數(shù)據(jù)通路圖表5-1-1微指令格式系統(tǒng)涉及到的微

4、程序流程見圖5-1-4所示,當(dāng)擬定“取指”微指令時,該微指令的判別測試字段為P<1>測試。指令譯碼原理見圖3-2-3所示,由于“取指”微指令是所有微程序都使用的公用微指令,因此P<1>的測試結(jié)果出現(xiàn)多路分支。本機用指令寄存器的高6位(IR7IR2)作為測試條件,出現(xiàn)5路分支,占用5個固定微地址單元,剩下的其它地方就可以一條微指令占用控存一個微地址單元隨意填寫,微程序流程圖上的單元地址為16進(jìn)制。圖5-1-4簡單模型機微程序流程圖當(dāng)全部微程序設(shè)計完畢后,應(yīng)將每條微指令代碼化,表5-1-2即為將圖5-1-4的微程序流程圖按微指令格式轉(zhuǎn)化而成的“二進(jìn)制微代碼表”。表5-1-2

5、二進(jìn)制微代碼表設(shè)計一段機器程序,要求從IN單元讀入一個數(shù)據(jù),存于R0,將R0和自身相加,結(jié)果存于R0,再將R0的值送OUT單元顯示。根據(jù)要求可以得到如下程序,地址和內(nèi)容均為二進(jìn)制數(shù)。實驗步驟1 .按圖5-1-5連接實驗線路。2 .寫入實驗程序,并進(jìn)行校驗,分兩種方式,手動寫入和聯(lián)機寫入。1)手動寫入和校驗(1)手動寫入微程序?qū)r序與操作臺單元的開關(guān)KK1置為停止檔,KK3置為編程檔,KK4置為控置為置數(shù)'檔。KK5存檔,位應(yīng)寫入的數(shù)據(jù),連續(xù)單元給出低給出微地址,一一使用CON單元的SD05SD00IN8單元的數(shù)據(jù)寫到該單元的低IN8位。,將兩次按動時序與操作臺的開關(guān)ST將時序與操作臺單

6、元的開關(guān)KK51'檔。置為'加單元的IN,將ST位應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān)8單元給出中IN.數(shù)據(jù)寫到該單元的中8位。IN單元給出高8位應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān)ST,將IN單元的數(shù)據(jù)寫到該單元的高8位。重復(fù)、四步,將表5-1-2的微代碼寫入2816芯片中。(2)手動校驗微程序?qū)r序與操作臺單元的開關(guān)KK1置為停止檔,KK3置為校驗'檔,KK4置為控存檔,KK5置為置數(shù)檔。使用CON單元的SD05SD00給出微地址,連續(xù)兩次按動時序與操作臺的開關(guān)ST,MC單元的指數(shù)據(jù)指示燈M7M0顯示該單元的低8位。 將時序與操作臺單元的開關(guān)KK5置

7、為加1'檔。 連續(xù)兩次按動時序與操作臺的開關(guān)ST,MC單元的指數(shù)據(jù)指示燈M15M8顯示該單元的中8位,MC單元的指數(shù)據(jù)指示燈M23M16顯示該單元的高8位。重復(fù)、四步,完成對微代碼的校驗。如果校驗出微代碼寫入錯誤,重新寫入、校驗,直至確認(rèn)微指令的輸入無誤為止。(3)手動寫入機器程序?qū)r序與操作臺單元的開關(guān)KK1置為停止檔,KK3置為編程'檔,KK4置為主存檔,KK5置為置數(shù)檔。使用CON單元的SD07SD00給出地址,IN單元給出該單元應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān)ST,將IN單元的數(shù)據(jù)寫到該存儲器單元。將時序與操作臺單元的開關(guān)KK5置為加1'檔。IN單元

8、給出下一地址(地址自動加1)應(yīng)寫入的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān)ST,將IN單元的數(shù)據(jù)寫到該單元中。然后地址會又自加1,只需在IN單元輸入后續(xù)地址的數(shù)據(jù),連續(xù)兩次按動時序與操作臺的開關(guān)ST,即可完成對該單元的寫入。亦可重復(fù)、兩步,將所有機器指令寫入主存芯片中。(4)手動校驗機器程序置為主KK4置為校驗檔,KK3置為停止檔,KK1將時序與操作臺單元的開關(guān).存檔,KK5置為置數(shù)檔。使用CON單元的SD07SD00給出地址,連續(xù)兩次按動時序與操作臺的開關(guān)ST,CPU內(nèi)總線的指數(shù)據(jù)指示燈D7D0顯示該單元的數(shù)據(jù)。 將時序與操作臺單元的開關(guān)KK5置為加1'檔。 連續(xù)兩次按動時序與操作臺的

9、開關(guān)ST,地址自動加1,CPU內(nèi)總線的指數(shù)據(jù)指示燈D7D0顯示該單元的數(shù)據(jù)。此后每兩次按動時序與操作臺的開關(guān)ST,地址自動加1,CPU內(nèi)總線的指數(shù)據(jù)指示燈D7D0顯示該單元的數(shù)據(jù),繼續(xù)進(jìn)行該操作,直至完成校驗,如發(fā)現(xiàn)錯誤,則返回寫入,然后校驗,直至確認(rèn)輸入的所有指令準(zhǔn)確無誤。亦可重復(fù)、兩步,完成對指令碼的校驗。如果校驗出指令碼寫入錯誤,重新寫入、校驗,直至確認(rèn)指令碼的輸入無誤為止。2)聯(lián)機寫入和校驗聯(lián)機軟件提供了微程序和機器程序下載功能,以代替手動讀寫微程序和機器程序,但是微程序和機器程序得以指定的格式寫入到以TXT為后綴的文件中,微程序和機器程序的格式如下:本次實驗程序如下,程序中分號;&#

10、39;為注釋符,分號后面的內(nèi)容在下載時將被忽略掉:選擇聯(lián)機軟件的“轉(zhuǎn)轉(zhuǎn)儲】一【裝載】”功能,在打開文件對話框中選擇上面所保存的文件,軟件自動將機器程序和微程序?qū)懭胫付▎卧?。選擇聯(lián)機軟件的“轉(zhuǎn)轉(zhuǎn)儲】一【刷新指令區(qū)】"可以讀出下位機所有的機器指令和微指令,并在指令區(qū)顯示,對照文件檢查微程序和機器程序是否正確,如果不正確,則說明寫入操作失敗,應(yīng)重新寫入,可以通過聯(lián)機軟件單獨修改某個單元的指令,以修改微指令為例,先用鼠標(biāo)左鍵單擊指令區(qū)的微存'TAB按鈕,然后再單擊需修改單元的數(shù)據(jù),此時該單元變?yōu)榫庉嬁?,輸?位數(shù)據(jù)并回車,編輯框消失,并以紅色顯示寫入的數(shù)據(jù)。3.運行程序方法一:本機運

11、行將時序與操作臺單元的開關(guān)KK1、KK3置為運行檔,按動CON單元的總?t按鈕CLR,、A,程序可以從頭開始運行,暫存器00H和微程序地址為AR、地址寄存器PC將使程序計數(shù)器.B,指令寄存器IR和OUT單元也會被清零。將時序與操作臺單元的開關(guān)KK2置為單步檔,每按動一次ST按鈕,即可單步運行一條微指令,對照微程序流程圖,觀察微地址顯示燈是否和流致。每運行完一條微指令,觀測一次CPU內(nèi)總線和地址總線,對照數(shù)據(jù)通路圖,分析總線上的數(shù)據(jù)是否正確。當(dāng)模型機執(zhí)行完JMP指令后,檢查OUT單元顯示的數(shù)是否為IN單元彳t的2倍,按下CON單元的總?t按鈕CLR,改變IN單元的值,再次執(zhí)行機器程序,從OUT單

12、元顯示的數(shù)判別程序執(zhí)行是否正確。方法二:聯(lián)機運行將時序與操作臺單元的開關(guān)KK1和KK3置為運行檔,進(jìn)入軟件界面,選擇菜單命令“實驗】一【簡單模型機】",打開簡單模型機數(shù)據(jù)通路圖。按動CON單元的總?t按鈕CLR,然后通過軟件運行程序,選擇相應(yīng)的功能命令,即可聯(lián)機運行、監(jiān)控、調(diào)試程序,當(dāng)模型機執(zhí)行完JMP指令后,檢查OUT單元顯示的數(shù)是否為IN單元彳t的2倍。在數(shù)據(jù)通路圖和微程序流中觀測指令的執(zhí)行過程,并觀測軟件中地址總線、數(shù)據(jù)總線以及微指令顯示和下位機是否一致。圖5-1-5實驗接線圖實驗結(jié)果輸入數(shù)據(jù)助記符機器指令代碼結(jié)果備注IN單元讀入數(shù)據(jù)到R0中從0010000000010001I

13、NR0=11R0中R0和自身相加結(jié)果送到ADD00000000R0=22OUT把OUT=22R0OUT的數(shù)據(jù)傳送到00110000單元顯示JMP跳轉(zhuǎn)到00H地址01010000停機操作HLT實驗結(jié)果如圖所示:結(jié)果分析在IN單元中輸入數(shù)據(jù)00010001,使用CON單元的SD27SD20ST,觀察電腦中的數(shù)據(jù)通路圖記錄數(shù)據(jù)。(1)當(dāng)CON單元輸入指令代碼00100000時,數(shù)據(jù)通路圖中IN中的數(shù)據(jù)傳送到R0中,R0中顯示R0=11,實現(xiàn)了從IN單元讀入數(shù)據(jù)傳送到R0中過程。(2)當(dāng)CON單元輸入指令代碼00000000時,數(shù)據(jù)通路圖中A=11、B=11通過ALU運算器實現(xiàn)自加后把結(jié)果傳送給R0,R0中顯示R0=22,實現(xiàn)了R0和自身相加結(jié)果送到R0中的過程。中,OUT的數(shù)據(jù)傳送到R

溫馨提示

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

評論

0/150

提交評論