版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第二講如何編寫和驗(yàn)證簡單的純組合邏輯模塊
數(shù)字邏輯系統(tǒng)設(shè)計(jì)是一個(gè)非常細(xì)致、嚴(yán)密和費(fèi)時(shí)的復(fù)雜過程,做這項(xiàng)工作的人員必須具有極其認(rèn)真負(fù)責(zé)的工作態(tài)度、敏捷的頭腦、頑強(qiáng)的毅力和細(xì)致踏實(shí)的作風(fēng)2.1加法器
在數(shù)字電路課程里我們已學(xué)習(xí)過一位的加法電路,即全加器。它的真值表很容易寫出,電路結(jié)構(gòu)也很簡單僅由幾個(gè)與門和非門組成。表2.2.1一位全加器的真值表
表中Xi、Yi
表示兩個(gè)加數(shù),Si
表示和,Ci-1
表示來自低位的進(jìn)位、Ci
表示向高位的進(jìn)位。從真值表很容易寫出邏輯表達(dá)式如下:
Ci=XiYi+YiCi-1+XiCi-1Si=XiCi+YiCi+Ci-1Ci+XiYiCi-12.1加法器
用VerilogHDL來描述加法器是相當(dāng)容易的,只需要把運(yùn)算表達(dá)式寫出就可以了。
moduleadd_4(X,Y,sum,C);input[3:0]X,Y;output[3:0]sum;outputC;assign{C,Sum}=X+Y;endmodule在數(shù)字信號(hào)處理的快速運(yùn)算電路中常常用到多位數(shù)字量的加法運(yùn)算,這時(shí)需要用到并行加法器。并行加法器比串行加法器快得多,電路結(jié)構(gòu)也不太復(fù)雜。2.1加法器
而16位加法器只需要擴(kuò)大位數(shù)即可:
moduleadd_16(X,Y,sum,C);input[15:0]X,Y;output[15:0]sum;outputC;assign{C,Sum}=X+Y;endmodule
這樣設(shè)計(jì)的加法器在行為仿真時(shí)是沒有延時(shí)的。借助綜合器,可以根據(jù)以上VerilogHDL源代碼自動(dòng)將其綜合成典型的加法器電路結(jié)構(gòu)。2.2乘法器則X和Y的乘積Z有2n位,并且式中YiX稱為部分積,記為Pi,顯然,兩個(gè)一位二進(jìn)制數(shù)相乘遵循如下規(guī)則:0×0=0;0×1=0;1×0=0;1×1=1因此YiXj可用一個(gè)與門實(shí)現(xiàn),記Pi.j=YiXj設(shè)兩個(gè)n位二進(jìn)制正數(shù)X和Y:X:Xn-1···X1X0Y:Yn-1···Y1Y02.2乘法器圖2.2.3逐位進(jìn)位并行乘法器快速乘法器常采用網(wǎng)格形式的迭帶陣列結(jié)構(gòu),圖2.2.3示出兩個(gè)四位二進(jìn)制數(shù)相乘的結(jié)構(gòu)圖。2.2乘法器圖2.2.5進(jìn)位節(jié)省乘法器
為了提高乘法運(yùn)算速度可以改為圖5.5所示的進(jìn)位節(jié)省乘法器(Carry-SaveMultiplier)2.2乘法器
用VerilogHDL來描述乘法器是相當(dāng)容易的,只需要把運(yùn)算表達(dá)式寫出就可以了modulemult_4(X,Y,Product);input[3:0]X,Y;output[7:0]Product;assignProduct=X*Y;endmodule
而8位乘法器只需要擴(kuò)大位數(shù)即可
modulemult_8(X,Y,Product);input[7:0]X,Y;output[15:0]Product;assignProduct=X*Y;endmodule
這樣設(shè)計(jì)的乘法器在行為仿真時(shí)是沒有延時(shí)的。借助綜合器,可以根據(jù)以上VerilogHDL源代碼自動(dòng)將其綜合成典型的乘法器電路結(jié)構(gòu)。2.3比較器
數(shù)值大小比較邏輯在計(jì)算邏輯中是常用的一種邏輯電路,一位二進(jìn)制數(shù)的比較是它的基礎(chǔ)。XY(X>Y)(X>=Y)(X=Y)(X<=Y)(X<Y)(X!=Y)00011100010001111011000111011100從真值表很容易寫出一位二進(jìn)制數(shù)比較電路的布爾表達(dá)式如下:(X>Y)=X·(~Y)(X<Y)=(~X)·Y(X=Y)=(~X)·(~Y)+X·Y也很容易畫出邏輯圖。2.3比較器modulecompare_n(X,Y,XGY,XSY,XEY);input[width-1:0]X,Y;outputXGY,XSY,XEY;regXGY,XSY,XEY;parameterwidth=8;always@(XorY)//每當(dāng)X或Y變化時(shí)beginif(X==Y)XEY=1;//設(shè)置X等于Y的信號(hào)為1elseXEY=0;if(X>Y)XGY=1;//設(shè)置X大于Y的信號(hào)為1elseXGY=0;if(X<Y)XSY=1;//設(shè)置X小于Y的信號(hào)為1elseXSY=0;endendmodule用VerilogHDL來設(shè)計(jì)比較電路是很容易的。
綜合工具能自動(dòng)把以上源代碼綜合成一個(gè)八位比較器2.4多路器moduleMux_8(addr,in1,in2,in3,in4,in5,in6,in7,in8,Mout,nCS);input[2:0]addr;input[width-1]in1,in2,in3,in4,in5,in6,in7,in8;output[width-1]Mout;parameterwidth=8;always@(addrorin1orin2orin3orin4orin5orin6orin7orin8)beginif(!nCS)case(addr)3’b000:Mout=in1;3’b001:Mout=in2;3’b010:Mout=in3;3’b011:Mout=in4;3’b100:Mout=in5;3’b101:Mout=in6;3’b110:Mout=in7;3’b111:Mout=in8;endcaseelseMout=0;endendmodule
多路器是一個(gè)多輸入、單輸出的組合邏輯電路,在數(shù)字系統(tǒng)中有著廣泛的應(yīng)用。它可以根據(jù)地址碼的不同,從多個(gè)輸入數(shù)據(jù)中選取一個(gè),讓其輸出到公共的輸出端。
綜合工具能自動(dòng)把以上源代碼綜合成一個(gè)數(shù)據(jù)位寬為8的八路選一數(shù)據(jù)多路器2.5總線和總線操作總線是運(yùn)算部件之間數(shù)據(jù)流通的公共通道。moduleSampleOfBus(DataBus,link_bus,write);inout[11:0]DataBus;//總線雙向端口inputlink_bus;//向總線輸出數(shù)據(jù)的控制電平reg[11:0]outsigs;assignDataBus=(link_bus)?outsigs:12‘hzzz;
//當(dāng)link_bus為高電平時(shí)通過總線把存在outsigs的計(jì)算結(jié)果輸出always@(posedgewrite)//每當(dāng)write信號(hào)上跳沿時(shí)begin//接收總線上數(shù)據(jù)并乘以五outsigs<=DataBus*5;//把計(jì)算結(jié)果存入outsigsendendmodule
上面是一個(gè)簡單的與總線有接口的模塊是如何對總線進(jìn)行操作的例子通過以上例子我們可以理解使這個(gè)總線連接模塊能正常工作的最重要的因素是與其他模塊的配合2.6流水線流水線(pipe-line)設(shè)計(jì)技術(shù):
流水線的設(shè)計(jì)方法已經(jīng)在高性能的、需要經(jīng)常進(jìn)行大規(guī)模運(yùn)算的系統(tǒng)中得到廣泛的應(yīng)用,如CPU(中央處理器)等。
流水線設(shè)計(jì)的概念:
所謂流水線設(shè)計(jì)實(shí)際上就是把規(guī)模較大、層次較多的組合邏輯電路分為幾個(gè)級(jí),在每一級(jí)插入寄存器組暫存中間數(shù)據(jù)。采用流水線設(shè)計(jì)的優(yōu)勢在于它能提高吞吐(throughput)流水線設(shè)計(jì)在性能上的提高是以消耗較多的寄存器資源為代價(jià)的2.6流水線組合邏輯設(shè)計(jì)轉(zhuǎn)化為流水線設(shè)計(jì)第一級(jí)的延遲是T1和T3兩個(gè)延遲中的最大值第二級(jí)的延遲等于T2的延遲
為了通過這個(gè)組合邏輯得到穩(wěn)定的計(jì)算結(jié)果輸出,需要等待的傳播延遲為[max(T1,T3)+T2]個(gè)時(shí)間單位。寄存器的T
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中班音樂雪花課件
- 主題班會(huì)活動(dòng)策劃與實(shí)施
- 西南民族大學(xué)2026年人才引進(jìn)考試筆試模擬試題及答案解析
- 2025版神經(jīng)性耳聾引起的病征分析及護(hù)理建議
- 星外來客課件
- 《客戶關(guān)系管理》課件-2.2.2 客戶分級(jí)方法及管理策略
- 兒童口才訓(xùn)練商業(yè)模式
- 時(shí)間積累財(cái)富課件
- 《機(jī)械創(chuàng)新設(shè)計(jì)》課件-三維零件設(shè)計(jì)
- 人教版2024年小學(xué)數(shù)學(xué)考試試卷匯編
- 2026屆八省聯(lián)考(T8聯(lián)考)2026屆高三年級(jí)12月檢測訓(xùn)練地理試卷(含答案詳解)
- 2025民生銀行總行資產(chǎn)經(jīng)營管理部社會(huì)招聘筆試題庫帶答案解析
- 公益性公墓建設(shè)項(xiàng)目竣工驗(yàn)收報(bào)告
- 2026年上海工程技術(shù)大學(xué)單招職業(yè)傾向性測試題庫參考答案詳解
- 2025黑龍江大興安嶺地區(qū)韓家園林業(yè)局工勤崗位人員招聘40人備考考點(diǎn)試題及答案解析
- 2025年陜煤澄合礦業(yè)有限公司招聘(570人)筆試備考題庫附答案解析
- 2025年保密觀知識(shí)競賽題庫(含參考答案)
- 2025山西朔州市兩級(jí)法院司法輔助人員招聘16人筆試考試備考試題及答案解析
- 危險(xiǎn)化學(xué)品應(yīng)急救援員崗位招聘考試試卷及答案
- 物業(yè)餐飲安全協(xié)議書
- 生物統(tǒng)計(jì)學(xué)期末復(fù)習(xí)題庫及答案
評(píng)論
0/150
提交評(píng)論