計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)課程設(shè)計(jì)--單周期32位cpu的設(shè)計(jì)_第1頁
已閱讀1頁,還剩18頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  學(xué) 號(hào):</b></p><p>  計(jì)算機(jī)組成與系統(tǒng)結(jié)構(gòu)課程設(shè)計(jì)</p><p><b>  設(shè)計(jì)說明書</b></p><p>  起止日期: 2014 年 1 月 13 日 至 2014 年 1 月 17 日</p><p>  計(jì)算機(jī)與信息工程學(xué)院<

2、/p><p>  2014年1月17日</p><p> 單周期32位CPU的設(shè)計(jì)</p><p><b>  目錄</b></p><p>  1、 指令系統(tǒng)設(shè)計(jì)1</p><p>  2、 控制部件設(shè)計(jì)4</p><p>  3、 單周期中央處理器cpu設(shè)計(jì)9<

3、/p><p>  4、 計(jì)算機(jī)主機(jī)系統(tǒng)設(shè)計(jì)12</p><p>  5、 調(diào)試程序編制及主機(jī)系統(tǒng)調(diào)試12</p><p>  6、 心得體會(huì)16</p><p><b>  參考資料16</b></p><p><b>  指令系統(tǒng)設(shè)計(jì)</b></p>&l

4、t;p>  R型指令(op=0001)</p><p>  │←─━━━op────→│← rs →│← rt →│← rd →│ ←─━━━━func━━━────│ </p><p>  add(func=000001):將rs寄存器中的值和rt寄存器中的值相加,結(jié)果存入rd寄存器</p><p>  sub(func=000010):將r

5、s寄存器中的值和rt寄存器中的值相減,結(jié)果存入rd寄存器</p><p>  and(func=000011):將rs寄存器中的值和rt寄存器中的值相與,結(jié)果存入rd寄存器</p><p>  or(func=000100):將rs寄存器中的值和rt寄存器中的值進(jìn)行或運(yùn)算,結(jié)果存入rd寄存器</p><p><b>  I型指令</b><

6、/p><p>  │←─━━━op────→│← rs →│← rt →│←─━━━━━━━立即數(shù)━━━━────│ </p><p>  addi(op=1000):將rs寄存器中的值與(補(bǔ)零成32位的)立即數(shù)減,結(jié)果存入rt寄存器</p><p>  ori(op=0010):將rs寄存器中的值與(補(bǔ)零成32位的)立即數(shù)或,結(jié)果存入rt寄存器</p

7、><p>  lw(op=0011):將RAM中地址為[rs+立即數(shù)]單元的值寫入rt</p><p>  sw(op=0100):將rt中的值寫入RAM中地址為[rs+立即數(shù)]單元</p><p>  beq(op=0101):若rs中的值=rt中的值,則跳轉(zhuǎn)到(原本的下一個(gè)地址+立即數(shù))</p><p>  wr(op=0111):把(補(bǔ)零成

8、32位的)立即數(shù)寫入寄存器rt</p><p><b>  J型指令</b></p><p>  │←─━━━op────→│←─── invalid ──→│←─━━━━━━━地址━━━━━━────│ </p><p>  jump(op=0110):直接跳轉(zhuǎn)到目的地址(8位)開始執(zhí)行</p><p>  指令譯碼器

9、的作業(yè)是對取指令操作中得到的指令進(jìn)行譯碼,確定這條指令需要完成的操作。從而產(chǎn)生相應(yīng)的控制信號(hào),驅(qū)動(dòng)執(zhí)行狀態(tài)中的各種動(dòng)作。它是控制器的一個(gè)重要組成部分。在MIPS指令集中,根據(jù)操作碼OP和功能碼FUNC來區(qū)別指令。根據(jù)表3-3列出的20條指令編碼的邏輯表達(dá)式如下,其中,OP[5..0]為操作碼OP,F(xiàn)UNC[5..0]為功能碼FUNC,電路符號(hào)如圖9-4所示。</p><p>  圖5-2 指令執(zhí)行時(shí)序圖2<

10、/p><p><b>  仿真結(jié)果:</b></p><p><b>  控制部件設(shè)計(jì)</b></p><p>  控制器是計(jì)算機(jī)中 發(fā)號(hào)施令的部件,它控制計(jì)算機(jī)的各部件有條不紊的進(jìn)行工作。 更具體的講, 控制器的任務(wù)是從內(nèi)存中取出指令解題步驟加以分析,然后執(zhí)行某種操作。</p><p>  PCSOU

11、RCE是用于標(biāo)記下一條指令的地址,通過計(jì)算得到的下一條指令有下列4種情況:為0時(shí):下一條指令地址取PC+4(用于指令存儲(chǔ)器的地址是[7..2]);為1時(shí):下一條指令地址取分支跳轉(zhuǎn)(BEQ、BNQ指令);為2時(shí):下一條指令地址取跳轉(zhuǎn)(J指令);為3時(shí):下一條指令地址取跳轉(zhuǎn)變鏈接(JAL指令)。</p><p>  CALL(JAL)標(biāo)記31號(hào)寄存器,由于JAL指令要把分支延遲槽下一條指令的指令地址保存在寄存器31號(hào)

12、中,故需要設(shè)置一個(gè)控制信號(hào)CALL,當(dāng)CALL=1時(shí),選擇31號(hào)寄存器,為JAL跳轉(zhuǎn)指令提供寄存器,當(dāng)CALL=0時(shí),從32位的寄存器堆中根據(jù)地址選擇出一個(gè)32位的寄存器用于讀或?qū)憯?shù)據(jù)。M2REG(LW指令)標(biāo)記是將運(yùn)算的結(jié)果直接寫入寄存器堆,還是將數(shù)據(jù)存儲(chǔ)器的數(shù)據(jù)取出后寫入寄存器堆。ALUC運(yùn)算器的控制信號(hào),用于選擇做何種運(yùn)算。WMEM數(shù)據(jù)存儲(chǔ)器的讀寫信號(hào)。SHIFT標(biāo)記移位運(yùn)算,由于移位運(yùn)算的運(yùn)算數(shù)需要位數(shù)拓展。ALUIMM標(biāo)記立即

13、數(shù)運(yùn)算,由于有立即數(shù)參與運(yùn)算前需要位數(shù)拓展。SEXT標(biāo)記參加運(yùn)算的是有符號(hào)數(shù)。WREG寄存器堆的讀寫信號(hào)。REGRT標(biāo)記指令中的[20..16]或[15..11]中的哪一種作為運(yùn)算的目標(biāo)寄存器。它的電路符號(hào)如圖9-7。根據(jù)3.3節(jié)指令的執(zhí)行分析,可以得出這20條控制信號(hào)的邏輯表達(dá)式如圖所示:</p><p><b>  表3-1。</b></p><p><b&

14、gt;  仿真結(jié)果:</b></p><p><b>  、</b></p><p>  指令存儲(chǔ)器用于在計(jì)算機(jī)中保存指令。在本屆中使用LPM_ROM來實(shí)現(xiàn),它能保存64條指令字,如圖9-10所示。指令存儲(chǔ)器輸入:A[31..0](指令地址),實(shí)際使用的地址為A[7..2]。指令的輸出信號(hào):DO[31..0]。指令存儲(chǔ)器的元件符號(hào)如圖9-10所示。真值表如

15、9-3所示,DO表示在指令數(shù)據(jù)文件中地址A對應(yīng)的指令數(shù)據(jù)。</p><p>  波形分析。10.0ns~20.0ns這一段,A為00000004,CLK在10.0ns時(shí)刻有一個(gè)下降沿。故此時(shí)DO的值應(yīng)該變?yōu)榈刂?0000004對應(yīng)的指令數(shù)據(jù)為3C010000,然后直到20.0ns時(shí)刻之前都是上升沿,故一直保持不變?yōu)?C010000,直到20.0ns時(shí)刻來了一個(gè)下降沿,DO的值應(yīng)該變?yōu)榈刂?0000008對應(yīng)的指令

16、數(shù)據(jù)為34240050。圖9-20中此刻時(shí)段正好也為這樣,因此得證。</p><p>  最后,根據(jù)原理圖,按照第4.1.3小節(jié)中的方法生成元器件原理圖。</p><p><b>  仿真結(jié)果:</b></p><p>  ↑為上升沿。↓為下降沿</p><p>  數(shù)據(jù)存儲(chǔ)器的原理圖設(shè)計(jì)</p><

17、p>  (1)加法指令數(shù)據(jù)文件</p><p>  調(diào)用lpm_ram_dp宏設(shè)計(jì)數(shù)據(jù)存儲(chǔ)器</p><p><b>  仿真結(jié)果:</b></p><p><b> ?。?lt;/b></p><p>  波形分析。20.0ns~25.0ns這一時(shí)刻,A為00000060,CLK為0,WE為0,則

18、為讀信號(hào),MEMCLK此時(shí)此刻有一個(gè)上升沿,故獨(dú)處地址A對應(yīng)的數(shù)據(jù)DO位000000A3。30.0ns~35.0ns這一時(shí)刻,A為00000000,DI為00000300,CLK為0,WE為1,則寫為信號(hào)。MEMCLK此時(shí)此刻有一個(gè)上升沿,故將DI數(shù)據(jù)寫入到地址A對應(yīng)的位置DO為00000300。圖9-31中正是如此,只是整體有一個(gè)周期的時(shí)延,因此得證。</p><p>  單周期中央處理器cpu設(shè)計(jì)</p

19、><p>  通過調(diào)用前面編寫的一系列元器件來實(shí)現(xiàn)單周期CPU,它能處理MIPS中列出的20條常用指令。CPU輸入信號(hào):CLOCK為時(shí)鐘信號(hào),RESETN為設(shè)置0信號(hào),INSTR為指令數(shù)據(jù),MEM為運(yùn)算數(shù)據(jù)。CPU輸出信號(hào):PC是下一條要執(zhí)行指令在指令存儲(chǔ)器中的地址,DATA是運(yùn)算得到的要寫入數(shù)據(jù)存儲(chǔ)器的數(shù)據(jù)。</p><p>  根據(jù)控制器各控制信號(hào)的描述以及3.3節(jié)中CPU設(shè)計(jì)思路分析,可

20、綜合完整的CPU邏輯設(shè)計(jì),如圖9-33所示。最終得到CPU的原理圖</p><p><b>  計(jì)算機(jī)主機(jī)系統(tǒng)設(shè)計(jì)</b></p><p>  主機(jī)系統(tǒng)的設(shè)計(jì)與現(xiàn)實(shí)是離不開存儲(chǔ)器的,因?yàn)镃PU要從指令存儲(chǔ)器中取得指令,分析解釋后在從數(shù)據(jù)存儲(chǔ)器中取得用于計(jì)算的數(shù)據(jù),計(jì)算的接過可存放到數(shù)據(jù)存儲(chǔ)器中。故本杰將在9.6節(jié)的基礎(chǔ)上為CPU加上指令存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,得到一個(gè)計(jì)算

21、機(jī)主機(jī)系統(tǒng)。主機(jī)系統(tǒng)的電路圖</p><p>  分析CPU的設(shè)計(jì)描述及各端口描述,不難得出如圖所示的主機(jī)系統(tǒng)的原理圖</p><p><b>  原理圖:</b></p><p>  調(diào)試程序編制及主機(jī)系統(tǒng)調(diào)試</p><p><b>  加法程序調(diào)試仿真</b></p><p

22、>  在這里做一個(gè)加法163+39+121+277=600</p><p>  指令寄存器數(shù)據(jù)文件:</p><p><b>  仿真結(jié)果:</b></p><p><b>  心得體會(huì)</b></p><p>  在此次課設(shè)進(jìn)行前我們在老師幫助下提前做了幾章的實(shí)驗(yàn),所以對QuartusⅡ軟件

23、的操作有了一定基礎(chǔ)的了解,讓我們更好的去做這個(gè)課設(shè),經(jīng)過一個(gè)星期的努力,熟練地掌握了quartus的使用方法。在此次課設(shè)中,我們從最底層了解到了計(jì)算機(jī)的本質(zhì),對 CPU、寄存器、控制器登入到精簡指令計(jì)算機(jī),都有了一定程度上的了解。在課設(shè)當(dāng)中自己動(dòng)手實(shí)踐開發(fā)設(shè)計(jì)能力得到了極大地提高,為今后的相關(guān)硬件課程打下了堅(jiān)實(shí)的基礎(chǔ),硬件設(shè)計(jì)思維得到了進(jìn)一步的鍛煉和提升。</p><p><b>  參考資料</

24、b></p><p>  [1]朱子玉,李亞民.CPU芯片邏輯設(shè)計(jì)技術(shù)[M].北京:清華大學(xué)出版社,2005:31-110.</p><p>  [2] 王誠等.Altera FPGA/CPLD設(shè)計(jì)基礎(chǔ)篇[M].北京:人民郵電出版社,2005:1-28.</p><p>  [3] (美)Dominic Sweetman.MIPS處理器設(shè)計(jì)透視[M].北京:北

溫馨提示

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

最新文檔

評論

0/150

提交評論