杭電計(jì)組實(shí)驗(yàn)3_多功能ALU設(shè)計(jì)實(shí)驗(yàn)_第1頁
杭電計(jì)組實(shí)驗(yàn)3_多功能ALU設(shè)計(jì)實(shí)驗(yàn)_第2頁
杭電計(jì)組實(shí)驗(yàn)3_多功能ALU設(shè)計(jì)實(shí)驗(yàn)_第3頁
杭電計(jì)組實(shí)驗(yàn)3_多功能ALU設(shè)計(jì)實(shí)驗(yàn)_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、電子科技大學(xué)計(jì)算機(jī)學(xué)院實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)項(xiàng)目:課程名稱:計(jì)算機(jī)組成原理與系統(tǒng)結(jié)構(gòu)課程設(shè)計(jì):學(xué)號(hào):同組:學(xué)號(hào):實(shí)驗(yàn)位置(機(jī)號(hào)) :實(shí)驗(yàn)日期:指導(dǎo)教師:一、實(shí)驗(yàn)?zāi)康模?1)學(xué)習(xí)多功能 ALU的工作原理,掌握運(yùn)算器的設(shè)計(jì)方法。( 2)掌握運(yùn)用 Verilog HDL 進(jìn)行數(shù)據(jù)流描述與建模的技巧和方法,掌握運(yùn)算器的設(shè)計(jì)方法。二、實(shí)驗(yàn)儀器實(shí)驗(yàn)ISE 工具軟件容三、步驟、方法(算( 1)啟動(dòng) XilinxISE 軟件,選擇 File-NewProject, 輸入工程名 shiyan2,默認(rèn)選擇后,法、點(diǎn)擊 Next 按鈕,確認(rèn)工程信息后點(diǎn)擊Finish按鈕,創(chuàng)建一個(gè)完整的工程。程( 2)在工程管理區(qū)的任意位置右

2、擊,選擇New Source 命令。彈出 New Source Wizard 對(duì)序、話框,選擇 VerilogModule, 并輸入 Verilog文件名 shiyan3 ,點(diǎn)擊 Next 按鈕進(jìn)入下一步,步驟點(diǎn)擊 Finish 完成創(chuàng)建。和方( 3)編輯程序源代碼,然后編譯,綜合;選擇Synthesize-XST 項(xiàng)中的 Check Syntax 右法)擊選擇 Run 命令,并查看 RTL 視圖;如果編譯出錯(cuò),則需要修改程序代碼,直至正確。( 4)在工程管理區(qū)將 View 類型設(shè)置成Simulation ,在任意位置右擊,選擇New Source命令,選擇 VerilogTest Fixtu

3、re 選項(xiàng) , 輸入實(shí)驗(yàn)名 shiyan3_test 。點(diǎn)擊 Next ,點(diǎn)擊 Finish ,完成。編寫激勵(lì)代碼,觀察仿真波形,如果驗(yàn)證邏輯有誤,則修改代碼,重新編譯,仿真,直至正確。( 5)由于實(shí)驗(yàn)三并未實(shí)驗(yàn)板,所以后面的實(shí)驗(yàn)板的步驟此處沒有。一,操作過程實(shí)驗(yàn)過程和描述:module shiyan3(ALU_OP,AB_SW,OF,ZF,F);reg 31:0A,B;input 2:0ALU_OP;input 2:0AB_SW;操作wire OF;過程reg ZF;及結(jié)reg 31:0F;果output OF;output ZF;output F;reg C32;always(*)begi

4、ncase(AB_SW)3b000: begin A=32h0000_0000; B=32h0000_0000; end3b001: begin A=32h0000_0003; B=32h0000_0607; end3b010: begin A=32h8000_0000; B=32h8000_0000; end3b011: begin A=32h7FFF_FFFF; B=32h7FFF_FFFF; end3b100: begin A=32hFFFF_FFFF; B=32hFFFF_FFFF; end3b101: begin A=32h8000_0000; B=32hFFFF_FFFF; end

5、3b110: begin A=32hFFFF_FFFF; B=32h8000_0000; end3b111: begin A=32h1234_5678; B=32h3333_2222; enddefault: begin A=32h9ABC_DEF0; B=32h1111_2222; endendcaseendalways(*)begincase(ALU_OP)3b000: F=A&B;3b001: F=A|B;3b010: F=AB;3b011: F=AB;3b100: C32,F=A+B;3b101: C32,F=A-B;3b110: begin if(AB) F=32h0000_0001

6、; else F=32h0000_0000; end3b111: beginF=BA; enddefault: F=32h0000_0000;endcaseendalways(*)beginif(F=32h0000_0000)ZF=1;elseZF=0;endassign OF=C32F31A31B31;endmodule仿真代碼module shiyan3_test;/ Inputsreg 2:0 ALU_OP;reg 2:0 AB_SW;/ Outputs wire OF;wire ZF;wire 31:0 F;/ Instantiate the Unit Under Test (UUT)

7、 shiyan3 uut (.ALU_OP(ALU_OP),.AB_SW(AB_SW),.OF(OF),.ZF(ZF),.F(F);initial begin/ Initialize InputsALU_OP = 0;AB_SW = 0;/ Wait 100 ns for global reset to finish #100;/ Add stimulus here#100;ALU_OP = 001;AB_SW = 001;#100;ALU_OP = 010;AB_SW = 010;#100;ALU_OP = 011;AB_SW = 011;#100;ALU_OP = 100;AB_SW =

8、100;#100;ALU_OP = 101;AB_SW = 101;#100;ALU_OP = 110;AB_SW = 110;#100;ALU_OP = 111;AB_SW = 111;endendmoduleRTL圖二、結(jié)果思考題:(2) 經(jīng)過分析,該 ALU不能實(shí)現(xiàn) MIPS核心指令集的所有指令。它還需要:帶進(jìn)位的加法運(yùn)算、帶進(jìn)位的減法運(yùn)算、位清除指令、負(fù)數(shù)比較、位測(cè)試指令、比較指令、相等測(cè)試指令等。(3) 通過本實(shí)驗(yàn),無法得出: slt 操作中的“ AB”是對(duì)有符號(hào)數(shù)的比較還是無符號(hào)數(shù)的比較,這個(gè)結(jié)論。若A=32 b0,B=32 bFFFF_FFFF,則所得到的答案是F=0000_00

9、01.這個(gè)問題應(yīng)該再設(shè)置一個(gè)變量SIGctr信號(hào),控制ALU 是執(zhí)行“帶符號(hào)整數(shù)比較小于置于 1”還是“無符號(hào)數(shù)比較小于置1”功能,當(dāng)SIGctr=0 ,則執(zhí)行“無符號(hào)數(shù)比較小于置 1”,當(dāng) SIGctr=1 ,則執(zhí)行“帶符號(hào)整數(shù)比較小于置1”。(6)在做這個(gè)實(shí)驗(yàn)的時(shí)候,我遇到的問題是,F(xiàn) 的輸出是決定著ZF 的輸出,當(dāng)F 全零時(shí), ZF 輸出 1, ;否則 ZF 輸出 0。解決方法:運(yùn)用if.else.。根據(jù)F 的假設(shè)值, 對(duì) ZF 進(jìn)行賦值運(yùn)算。 以及八種運(yùn)算的表示方法不太熟悉進(jìn)行了查閱實(shí)驗(yàn)指導(dǎo)書。在這個(gè)多功能ALU設(shè)計(jì)實(shí)驗(yàn)中,這個(gè)實(shí)驗(yàn)做的時(shí)候忘記了不需要連實(shí)驗(yàn)板,老師驗(yàn)收的時(shí)候說不需要連接實(shí)驗(yàn)板,所以臨時(shí)修改了代碼,取消了LED的設(shè)置。后來不知道怎么回事,怎么看都沒有錯(cuò)誤,但是就是運(yùn)行出錯(cuò)。于是就剪切了代碼,重新生成了文件,粘貼后再次運(yùn)行時(shí)結(jié)果出其醫(yī)療的成功了??偨Y(jié)一下估計(jì)是之前哪里的東西被我刪掉了才導(dǎo)致了錯(cuò)誤。又再次設(shè)置了ZF 與 F 以及 OF的輸出。最后驗(yàn)證了仿真波形,實(shí)驗(yàn)成功。通過做這個(gè)多功能

溫馨提示

  • 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)論