版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)組成原理實(shí)驗(yàn)報(bào)告 單周期處理器開發(fā) Q:10649503642015.05.12文檔目錄:1、 功能設(shè)計(jì)說明2、 模塊化和層次化設(shè)計(jì)說明3、 具體模塊定義4、 測試代碼及結(jié)果5、 實(shí)驗(yàn)完成時(shí)間安排6、 心得體會1、 功能設(shè)計(jì)說明1. 完成的指令集:a) add,sub,and,or,slt,lw,sw,beq 和J 指令。b) 不支持溢出。2. 處理器為單周期設(shè)計(jì)。3. 功能模塊統(tǒng)一采用書上201頁的圖4-24設(shè)計(jì),信號控制采用書上的193頁圖4-12和200頁圖4-22的真值表進(jìn)行化簡。2、 模塊化和層次化設(shè)計(jì)說明3、 具體模塊定義數(shù)據(jù)通路:1)PC模塊定義:(1) 基本描述PC 主要
2、功能是完成輸出當(dāng)前指令地址。復(fù)位后,PC指向0x0000_0000,此處為第一條指令的地址。(2) 模塊接口 信號名方向描述31:0addressI輸入的指令地址clkI時(shí)鐘信號rstI復(fù)位信號31:0outO輸出的指令地址(3)功能定義序號功能名稱功能描述1復(fù)位rst=1時(shí),將out置為0X0000_00002輸出指令地址時(shí)鐘信號到來時(shí),將address賦給out2)NPC模塊定義:(1) 基本描述NPC 主要功能是根據(jù)當(dāng)前指令是否為beq指令,輸出下一條指令的地址。該模塊調(diào)用了MUX模塊。(2) 模塊接口 信號名方向描述15:0imaddrI指令的低16位zeroIALU計(jì)算結(jié)果:1表示當(dāng)
3、前兩寄存器(rs,rt)值相等;0表示不相等。brI是否為beq指令。1是0否31:0pcI輸入當(dāng)前指令地址31:0npcO輸出下一條指令地址(3)功能定義序號功能名稱功能描述1輸出指令地址根據(jù)zero與br的值輸出下一條指令的地址。3)ALU模塊定義:(1) 基本描述實(shí)現(xiàn)加、減、與、或、小于則賦1五種計(jì)算。(2) 模塊接口 信號名方向描述2:0aluctrlIALU控制信號31:0AI rs寄存器的值31:0BIrt寄存器的值zeroOA- B=0,則zero=1;否則zero=0.31:0resultOAlu計(jì)算輸出的結(jié)果。(3)功能定義序號功能名稱功能描述1輸出計(jì)算結(jié)果根據(jù)alu控制信號
4、,輸出A與B的計(jì)算結(jié)果2輸出zero若result=0則輸出zero=1,否則輸出zero=0。4)MUX模塊定義:(1) 基本描述實(shí)現(xiàn)32位和5位二選一數(shù)據(jù)選擇器(2) 模塊接口信號名方向描述SIMUX控制信號31:0d0/4:0d0I MUX輸入31:0d1/4:0d1IMUX輸入31:0y/4:0yOMUX輸出(3)功能定義序號功能名稱功能描述1輸出d0,或d1的值S為0,y=d0;S為1,y=d1.5)EXT模塊定義:(1) 基本描述將輸入的16位地址按符號位擴(kuò)展為32位。(2) 模塊接口信號名方向描述15:0addrinI輸入的16位地址 31:0addroutO 輸出的32位地址(
5、3)功能定義序號功能名稱功能描述1輸出擴(kuò)展的32位地址.將addrin擴(kuò)展為32位的addrout.6)regfile模塊定義:(1) 基本描述 根據(jù)輸入的兩個(gè)寄存器地址,輸出相應(yīng)寄存器的值,根據(jù)寄存器寫信號和寄存器地址,將輸入的數(shù)據(jù)選擇寫入寄存器。 (2) 模塊接口信號名方向描述clkI時(shí)鐘信號4:0rreg1I Rs寄存器地址4:0rreg2IRt寄存器地址31:0rdata1ORs寄存器值31:0rdata2ORt寄存器值regwI寫寄存器信號4:0wregIRt寫寄存器地址31:0wdataI寫入寄存器的信號(3)功能定義序號功能名稱功能描述1讀寄存器數(shù)據(jù)讀rs、rt寄存器的數(shù)據(jù)2向寄
6、存器寫入數(shù)據(jù)根據(jù)寫信號向寄存器選擇寫入數(shù)據(jù)7)im_4k模塊定義:(1) 基本描述 指令內(nèi)存大小為4K,初始化從code.txt載入指令。根據(jù)輸入的指令地址,輸出當(dāng)前位置存儲的指令。 (2) 模塊接口信號名方向描述9:0addrI指令地址31:0doutO 指令(3)功能定義序號功能名稱功能描述1載入指令初始化載入code.txt中的指令2輸出指令根據(jù)輸入的指令地址,輸出當(dāng)前指令8)dm_4k模塊定義:(1) 基本描述 “數(shù)據(jù)內(nèi)存”大小為4K,根據(jù)輸入的地址讀出“數(shù)據(jù)內(nèi)存”中的數(shù)據(jù),并根據(jù)數(shù)據(jù)寫信號,將輸入的數(shù)據(jù)選擇寫入“數(shù)據(jù)內(nèi)存”中。 (2) 模塊接口信號名方向描述clkI時(shí)鐘信號9:0ad
7、drI 數(shù)據(jù)地址31:0dinI寫入的數(shù)據(jù) weI數(shù)據(jù)內(nèi)存寫信號31:0doutO讀出的數(shù)據(jù)(3)功能定義序號功能名稱功能描述1讀數(shù)據(jù)內(nèi)存數(shù)據(jù)根據(jù)輸入的數(shù)據(jù)地址,讀出數(shù)據(jù)內(nèi)存的數(shù)據(jù),讀出的數(shù)據(jù)不一定被使用,只有l(wèi)w指令才會使用。2向數(shù)據(jù)內(nèi)存寫入數(shù)據(jù)在時(shí)鐘信號到來時(shí),根據(jù)寫數(shù)據(jù)信號,將輸入的數(shù)據(jù)選擇寫入數(shù)據(jù)內(nèi)存中。9)Jump模塊定義:(1) 基本描述 將輸入的低26位指令左移兩位,高四位加上pc+4的高4位,組成32位地址輸出。 (2) 模塊接口信號名方向描述25:0addrinI低26位指令31:0pcI 當(dāng)前PC31:0addroutO計(jì)算出的32位地址(3)功能定義序號功能名稱功能描述1
8、輸出J跳轉(zhuǎn)地址輸出計(jì)算得到的32位地址,為J指令要跳轉(zhuǎn)的地址。10) ALUCtrl模塊定義:(1) 基本描述 根據(jù)指令的低6位(function字段)和輸入的aluop控制信號,利用真值表化簡輸出三位的ALU控制信號。真值表利用書上193頁圖4-12. (2) 模塊接口信號名方向描述5:0funcI指令低6位1:0aluopI Aluop控制信號2:0aluctrlO Alu控制信號(3)功能定義序號功能名稱功能描述1 輸出ALU控制信號利用真值表化簡輸出ALU控制信號。11) controller模塊定義:(1) 基本描述 根據(jù)輸入的指令高6位(Op字段),利用真值表化簡,輸出RegDst
9、,ALUSrc,MemtoReg,RegWrite,MemWrite,Branch,J,ALUOp控制信號。真值表采用書上200頁圖4-22,再加上J指令的輸入輸出。其中高阻狀態(tài)設(shè)為0。MemRead信號可以省略。 (2) 模塊接口信號名方向描述5:0OpI指令高6位 RegDstO Rd寄存器控制信號 ALUSrcO ALU數(shù)據(jù)來源控制信號 MemtoRegO 數(shù)據(jù)內(nèi)存數(shù)據(jù)寫入寄存器控制信號 RegWriteO 寄存器寫控制信號 MemWriteO 數(shù)據(jù)內(nèi)存寫控制信號 BranchO Beq指令控制信號JO J指令控制信號1:0ALUOp O ALUOp控制信號(3)功能定義序號功能名稱功能
10、描述1輸出各種控制信號根據(jù)輸入的OP,利用真值表化簡,輸出各種控制信號。4、 測試代碼及結(jié)果1) 測試代碼及結(jié)果:在regfile模塊初始化了17($s1),18($s2),20($s4)號寄存器的值分別為8、4、12.add $s3,$s2,$s1 /$s3=4+8=12sub $s5,$s4,$s3 /$s5=12-12=0beq $s3,$s4,LI /$s3=$s4,跳到LIsw $s2,1($s1)lw $s3,1($s1)LI:and $s5,$s4,$s3 /$s5=$s4 & $s3=12or $s5,$s3,$s1 /$s5=$s4 | $s3=12slt $s5,$
11、s3,$s1 /$s3>$s1,$s5=0sw $s2,1($s1) /存入4lw $s3,1($s1) /載入4到$s3j LI /跳轉(zhuǎn)2) 生成的16進(jìn)制文件(code.txt):02519820 / add $s3,$s2,$s10293a822 / sub $s5,$s4,$s312740002 / beq $s3,$s4,LIae320001 / sw $s2,1($s1)8e330001 /lw $s3,1($s1)0293a824 / LI:and $s5,$s4,$s30271a825 / or $s5,$s3,$s10271a82a / slt $s5,$s3,$s1a
12、e320001 / sw $s2,1($s1)8e330001 / lw $s3,1($s1)08100005 /j LI5、 實(shí)驗(yàn)完成時(shí)間安排1、 實(shí)驗(yàn)前2小時(shí)看了Verilog語法,并用ModelSim跑了PPT給的counter程序。2、 實(shí)驗(yàn)課上跟著老師寫了各個(gè)模塊,至此各個(gè)模塊已經(jīng)基本寫完。3、 中午用了不到1小時(shí)寫了控制信號及頂層模塊,只剩下測試工作。4、 中午用了大概半小時(shí)時(shí)間測試程序可以運(yùn)行,完成調(diào)試。5、 總體完成時(shí)間在10小時(shí)以內(nèi)。6、心得體會 通過該實(shí)驗(yàn),對硬件編程有了更深入的理解。之前參加學(xué)校的PLD比賽賽前培訓(xùn)(后來時(shí)間太緊,比賽放棄),使用過Vivado跑了一段測試程序,當(dāng)時(shí)對仿真一塊
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文化場館防水修繕合同
- 郊區(qū)倉庫租賃協(xié)議
- 橋梁施工平地機(jī)租賃合同
- 高速公路修建施工合同
- 電影院彩繪施工合同
- 證券交易所安保人員聘用協(xié)議
- 建筑施工合同:城市地下管網(wǎng)改造
- 城市公寓交易合同模板
- 紀(jì)念館真石漆修復(fù)合同
- Academic English智慧樹知到答案2024年杭州醫(yī)學(xué)院
- 國標(biāo)《電力儲能用鋰離子電池監(jiān)造導(dǎo)則》
- TSGD7004-2010壓力管道定期檢驗(yàn)規(guī)則-公用管道
- 上海教育版高中數(shù)學(xué)一年級上冊全冊教案
- 英語雅思詞匯表
- 2024年發(fā)供電分公司安全規(guī)程考試多選題庫及答案(共200題)
- 2024年青海省檢察機(jī)關(guān)聘用制書記員招聘筆試參考題庫附帶答案詳解
- 新概念英語第一冊課文
- MOOC 電磁場與電磁波-北京交通大學(xué) 中國大學(xué)慕課答案
- 2024年員工思想動態(tài)分析報(bào)告5篇
- 2024年三高共管基層慢病健康管理能力提升考試試題
評論
0/150
提交評論