ALU的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
ALU的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
ALU的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
ALU的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
ALU的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、計(jì)算機(jī)組成原理實(shí)驗(yàn)實(shí)驗(yàn)四 ALU的設(shè)計(jì)與實(shí)現(xiàn)專業(yè)班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)學(xué)號(hào): 姓名:馮帆學(xué)號(hào): 姓名:張琪實(shí)驗(yàn)地點(diǎn): 理工樓901 實(shí)驗(yàn)四 ALU的設(shè)計(jì)與實(shí)現(xiàn)一、實(shí)驗(yàn)?zāi)康?1、理解ALU的功能和其在處理器中的地位。2、掌握ALU的結(jié)構(gòu)化(分模塊、分層次)的設(shè)計(jì)方法。 3、掌握ALU的Verilog語(yǔ)言描述方法。二、實(shí)驗(yàn)內(nèi)容1、學(xué)習(xí)ALU的設(shè)計(jì)方法。2、用Verilog語(yǔ)言采用行為描述的方法完成74181的邏輯設(shè)計(jì)。3、用Verilog語(yǔ)言采用結(jié)構(gòu)描述的方法完成74181的邏輯設(shè)計(jì)。4、學(xué)習(xí)用宏模塊的方法定制并調(diào)用 ALU 。三、實(shí)驗(yàn)儀器及設(shè)備:PC機(jī)+ Quartus 9.0 + DE2-70

2、四、實(shí)驗(yàn)步驟:1打開Quartus軟件,新建工程,并新建一個(gè)verilog文件。2編寫verilog程序。首先,查找74181的功能表,用always模塊和case語(yǔ)句實(shí)現(xiàn)其功能。然后,設(shè)計(jì)ALU的過程中,利用p函數(shù)和g函數(shù)實(shí)現(xiàn)超前進(jìn)位功能。3附程序代碼如下:module ALU_74181 (input 3:0 a, input 3:0 b, input 3:0 s, /選擇信號(hào) input m, /m=1執(zhí)行邏輯運(yùn)算,反之執(zhí)行算術(shù)運(yùn)算 input cn, /低位的進(jìn)位或者是高位的借位 output 3:0 f, output aeqb, /輸出,當(dāng)a=b時(shí)輸出1,當(dāng)a!=b時(shí),輸出0 ou

3、tput c4, /對(duì)應(yīng)74181的Cn+4 output p, /p函數(shù) output g /g函數(shù));reg 3:0 result; /定義中間變量result存放結(jié)果wire 4:0temp; /定義中間變量temp存放選擇變量s和mwire p0,p1,p2,p3; /進(jìn)位產(chǎn)生信號(hào)wire g0,g1,g2,g3; /進(jìn)位傳遞信號(hào)assign temp=s,m; always(temp or a or b) begin case (temp) /case語(yǔ)句實(shí)現(xiàn)74181的 32種功能 5b00000: result=a; 5b00001: result=!a; 5b00010: re

4、sult=a|b; 5b00011: result=(!a|b); 5b00100: result=(a|!b); 5b00101: result=!a&b; 5b00110: result=4b1111;/補(bǔ)碼運(yùn)算,-1的補(bǔ)碼是1111 5b00111: result=0; 5b01000: result=a+(a&!b); 5b01001: result=!(a&b); 5b01010: result=!b; 5b01011: result=(a|!b)+(a&!b); 5b01100: result=ab; 5b01101: result=a-b+4b1111; 5b01110: res

5、ult=a&(!(b+4b1111); 5b01111: result=a&!b; 5b10000: result=a+a&b; 5b10001: result=(!a)|b; 5b10010: result=a+b; 5b10011: result=!(ab); 5b10100: result=(a|!b)+a&b; 5b10101: result=b; 5b10110: result=a&b+4b1111; 5b10111: result=a&b; 5b11000: result=a+a; 5b11001: result=1; 5b11010: result=(a|b)+a; 5b1101

6、1: result=(a|!b); 5b11100: result=(a|!b)+a; 5b11101: result=(a|b); 5b11110: result=a+4b1111; 5b11111: result=a; default : result = 4b0000; /默認(rèn)情況,給result賦值為0 endcase endassign f=result; /將中間變量result的值賦給f/片與片之間的超前進(jìn)位assign g0=a0&b0; /g函數(shù)是a與b的與assign g1=a1&b1;assign g2=a2&b0;assign g3=a3&b0;assign p0=a0

7、b0; /p函數(shù)是a和b的異或assign p1=a1b1;assign p2=a2b2;assign p3=a3b3;assign c4=g3|(g2&p3)|(g1&p2&p3)|(g0&p0&p1&p2)|(cn&p0&p1&p2&p3);/g3 + p3g2 + p3p2g1 + p3p2p1g0 + p3p2p1p0cnassign p=p0&p1&p2&p3; assign g=g3+g2&p3+g1&p2&p3+g0&p1&p2&p3;assign aeqb=(a=b)?1b1:1b0;endmodule4編譯并仿真得出結(jié)果。仿真結(jié)果如下圖:五、實(shí)驗(yàn)思考。1. ALU的功能是什么

8、,它在整機(jī)系統(tǒng)中的地位如何?答:ALU是多功能算數(shù)邏輯運(yùn)算單元,不僅能進(jìn)行多種算術(shù)運(yùn)算和邏輯運(yùn)算,如與、或、非、異或循環(huán)、移位、求補(bǔ)、清零、加、減、乘、除等,而且具有先行進(jìn)位邏輯,從而能實(shí)現(xiàn)高速運(yùn)算。ALU是CPU的核心部分,也是CPU的重要組成部分。一臺(tái)計(jì)算機(jī)最主要的功能就是指向運(yùn)算的功能,而ALU恰恰具有這樣的功能,可以說多功能運(yùn)算時(shí)據(jù)算計(jì)的靈魂,沒有運(yùn)算,計(jì)算機(jī)將不會(huì)具有如此強(qiáng)大的功能。2. ALU是典型的組合邏輯,為什么在P157的實(shí)現(xiàn)中要加入時(shí)鐘信號(hào),其目的是什么?答:處于整機(jī)同步的需要,這樣可以保證ALU產(chǎn)生的結(jié)果能夠適時(shí)的送到總線,以便數(shù)據(jù)進(jìn)行正確的讀寫。3. 74181 ALU

9、內(nèi)部加法運(yùn)算用的是超前進(jìn)位算法嗎?答:是。74181的設(shè)計(jì)在內(nèi)部的實(shí)現(xiàn)是通過超前進(jìn)位,而后又利用了p函數(shù)和g函數(shù)實(shí)現(xiàn)了片與片之間的超前進(jìn)位功能。4位之間采用先行進(jìn)位公式,每一位的進(jìn)位公式可遞推如下:G = A and B P = A xor Bc1= g0 + p0c0c2= g1 + p1c1= g1 + p1(g0 + p0c0)= g1 + p1g0 + p1p0c0c3= g2 + p2c2= g2 + p2(g1 + p1g0 + p1p0c0)= g2 + p2g1 + p2p1g0 + p2p1p0c0c4= g3 + p3c3= g3 + p3(g2 + p2g1 + p2p1g0 +

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論