流水線實(shí)驗(yàn)報(bào)告詩(shī)_第1頁(yè)
流水線實(shí)驗(yàn)報(bào)告詩(shī)_第2頁(yè)
流水線實(shí)驗(yàn)報(bào)告詩(shī)_第3頁(yè)
流水線實(shí)驗(yàn)報(bào)告詩(shī)_第4頁(yè)
流水線實(shí)驗(yàn)報(bào)告詩(shī)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

5段流水CPU設(shè)計(jì)詩(shī)Verilog在quartus20條MIPS指令的5段流水CPUI/OI/O地址空間,作為數(shù)據(jù)存取空間的一部分,實(shí)現(xiàn)CPU與外部設(shè)備的輸入輸出端口設(shè)計(jì)。實(shí)驗(yàn)中可采用高端地址。I/OlwDE2實(shí)驗(yàn)板上的按鍵等輸入設(shè)備信息。即將外部設(shè)備狀態(tài),讀到CPU內(nèi)部寄存器。利用設(shè)計(jì)的I/O端口,通過(guò)sw指令,輸出對(duì)DE2實(shí)驗(yàn)板上的LED燈等輸出設(shè)備的控制信號(hào)(或數(shù)據(jù)信息。即將對(duì)外部設(shè)備的控制數(shù)據(jù),從CPU內(nèi)部的寄存器,寫入態(tài)輸入,并將判別或處理結(jié)果,利用板載LED燈或7段LED數(shù)碼管顯示出來(lái)。4bit4bit2個(gè)LED10LED10進(jìn)制MIPS20令集(MIPS和Y86)應(yīng)用功能的程序設(shè)計(jì)代碼,并提供程序主要流程圖。本次5段流水線CPU設(shè)計(jì)的頂層文件為 個(gè)程序計(jì)數(shù)器模塊。這10個(gè)模塊間由定義為wire型的多路數(shù)據(jù)連接信號(hào)線通過(guò)各模塊的輸 puter puter resetn,mem_clock=~clock;和 in_port0, output[31:0]out_port0,out_port1, bpc,jpc, //WBwire

//ID向EXEaluc控制信號(hào) //CU向IFPC選擇信號(hào) dwreg,dm2reg,dwmem,daluimm,dshift,djal;//id ewreg,em2reg,ewmem,ealuimm,eshift,ejal;//exemwreg,mm2reg,mwmem;//mem //wbpipe_ift,wpcir,clock,resetn,pc(,pc4,ins,mem_clock);//IFpipe_irinst_reg(pc4,ins,wpcir,clock,resetn,dpc4,instIF/IDpipe_idid_stage(mwreg,mrn,ern,ewreg,em2reg,mm2reg,dpc4,inst, //ID pipe_deregde_reg( pipe_exeexe_stage(ealuc,ealuimm,ea,eb,eimm,eshift,ern0,epc4,ejal,ern,ealu//EXEpipe_emregem_reg( pipe_memmem_stage( //MEMpipe_mwregmw_reg(mux2x32wb_stage(walu,wmo,wm2reg,wdi//MEM/WB//WB程序計(jì)數(shù)器模塊與各流水線寄存器模塊的主要功能是將上一段流水段產(chǎn)生的數(shù)據(jù)傳到下一段流水段(程序計(jì)數(shù)器模塊可以認(rèn)為是最前面一級(jí)流水段的輸入流水線寄存器和D入r據(jù)理中再作闡述module ewreg,em2reg, clock, mwreg,mm2reg, mwreg,mm2reg, always@(always@(posedge mwreg<=mm2reg<= mwmem<=malu<= mrnmrn<=mwreg<= mm2reg<=mwmem<= malu<=mb<= mrn<=器跳轉(zhuǎn)地址、無(wú)條件跳轉(zhuǎn)地址當(dāng)中選擇。輸入的指令器的同步信號(hào)為時(shí)鐘信號(hào)clock同modulepipe_ifoutputlpm_rom_iromiromassignpc4=pc+mux4x32assignpc4=pc+mux4x3214.14.ID級(jí)的主要功能為指令譯碼,主要包括控制單元、寄存器堆、符號(hào)擴(kuò)展及多個(gè)多路選clock,因此對(duì)寄存器堆的讀寫操作應(yīng)在clock的下降沿發(fā)生。(暫不考慮數(shù)據(jù))module outputoutput output output output z rs=rt=inst[20:16];rd=sa={27'b0,func=ra,imm={16{e}};offset={imm[13:0],inst[15:0],1'b0,assignjpc=assigndimm={imm,assignbpc=dpc4+assignda_tmp=dshift?sa:assigndrn=dregrt?rt:pl_cupl_cucu(op,func,z,dwmem_tmp,dwreg_tmp, regfilerf ea,eb,ealuimm, outputealu, assignern=ern0|{5{ejal}};//jal:r31<-- mux2x32alu_b alual_unit mux2x32linkMEM級(jí)主要功能為數(shù)據(jù)存取,主要包括數(shù)據(jù)器單元。輸入給該同步RAM的時(shí)鐘信號(hào)也是clock的反相信號(hào)。實(shí)現(xiàn)I/O擴(kuò)展時(shí),通過(guò)判斷地址的第7位來(lái)判斷是否I/Omodulepipe_mem( datain,write_mem_enable,write_io_enable); in_port0, out_port0,out_port1,mmo,assigndatain=lwsw?wmo:assignaddr=lwsw?ealu:assignwrite_mem_enable=(mwmem|lwsw)&assignwrite_io_enable=(mwmem|lwsw)& mux2x32WB出,并在頂層文件中將輸出通過(guò)譯碼模塊轉(zhuǎn)換為7位LED數(shù)碼管輸出。 先進(jìn)行數(shù)據(jù)的檢測(cè)。forwarda[0]=forwarda[0]= |assignforwarda[1]=|assignforwardb[0]=assignassignforwardb[1]=|mux4x32 mux4x32行轉(zhuǎn)發(fā),需要使裝載指令的MEM/WB寄存器中存在的數(shù)據(jù)能夠及時(shí)地提供給指令在MEM級(jí)使用。這個(gè)轉(zhuǎn)發(fā)可以在MEM流水段實(shí)現(xiàn)。 assignlwsw=em2reg&dwmem&assigndatain=lwsw?assigndatain=lwsw?wmo:assignaddr=lwsw?ealu:assignwrite_mem_enable=(mwmem|lwsw)&assignwrite_io_enable=(mwmem|lwsw)&了。此時(shí)發(fā)生裝載-使用型數(shù)據(jù),需要通過(guò)阻塞的方式使流水線停頓一個(gè)時(shí)鐘周期,才則此時(shí)保持PC寄存器和IF/IDID/EX流水線寄存器的EXMEM、和WB級(jí)的控制信號(hào)都置為0。 assignwpcir=~(em2reg&((ern==rs)|(ern==rt))&~dwmem_tmp);assigndwreg wpcir?dwreg_tmp:assigndm2reg wpcir?dm2reg_tmp: assigndwmem wpcir?dwmem_tmp:assigndaluimm wpcir?daluimm_tmp: assigndshift wpcir?dshift_tmp:assign wpcir? : assigndaluc wpcir?daluc_tmp: pc<= dpc4<=dpc4<=inst<= 選擇信號(hào)。計(jì)算分支目標(biāo)可以利用在IF/ID流水線寄存器中的PC的值和立即數(shù)字段。否需要清除IF/ID流水線寄存器中預(yù)取到的指令。 assignins= assignins=pcsource[0]?32'h0:assignassignoffset={imm[13:0],inst[15:0],1'b0,assignbpc=dpc4+ 0:;%addi#% 1;%addi#% 2:;%addi#%3:%(0c)lo

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論