版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
西安郵電大學(xué)微電子系第三章
門級和數(shù)據(jù)流建模前言
Verilog模型可以是實(shí)際電路不同級別的抽象。這些抽象的級別和它們對應(yīng)的模型類型共有以下五種:
系統(tǒng)級(system)算法級(algorithmic)RTL級(RegisterTransferLevel):門級(gate-level):
開關(guān)級(switch-level)對于數(shù)字系統(tǒng)的邏輯設(shè)計(jì)工程師而言,熟練地掌握門級、RTL級、算法級、系統(tǒng)級是非常重要的。而對于電路基本部件(如門、緩沖器、驅(qū)動(dòng)器等)庫的設(shè)計(jì)者而言,則需要掌握用戶自定義源語元件(UDP)和開關(guān)級的描述。本章我們將通過實(shí)際的VerilogHDL模塊的設(shè)計(jì)來學(xué)習(xí)如何從門級抽象的角度來設(shè)計(jì)數(shù)字電路。
3.1門級結(jié)構(gòu)描述門級建模:電路是用表示門的術(shù)語來描述的。一個(gè)邏輯網(wǎng)絡(luò)是由許多邏輯門和開關(guān)所組成,因此用邏輯門的模型來描述邏輯網(wǎng)絡(luò)是比較直觀方法。VerilogHDL提供預(yù)定義的一些門類型的關(guān)鍵字(原語),可以用于門級結(jié)構(gòu)建模。1.與非門、或門和反向器等及其說明語法VerilogHDL中有關(guān)門類型的關(guān)鍵字共有26個(gè)之多,我們只介紹最基本的八個(gè)。有關(guān)其它的門類型關(guān)鍵字,讀者可以通過翻閱VerilogHDL語言參考書,在設(shè)計(jì)的實(shí)踐中逐步掌握。下面列出了八個(gè)基本的門類型(GATETYPE)關(guān)鍵字和它們所表示的門的類型:
and 與門 nand 與非門 nor 或非門 or 或門 xor 異或門 xnor 異或非門 buf 緩沖器 not 非門
門的說明語法可以用標(biāo)準(zhǔn)的聲明語句格式和一個(gè)簡單的實(shí)例引用加以說明。
門聲明語句的格式如下:
<門的類型>[<驅(qū)動(dòng)能力><延時(shí)>]<門實(shí)例1>,<門實(shí)例2>,…<門實(shí)例n>;
門的類型是門聲明語句所必需的,它可以是VerilogHDL語法規(guī)定的26種門類型中的任意一種。驅(qū)動(dòng)能力和延時(shí)是可選項(xiàng),可根據(jù)不同的情況選不同的值或不選。在verilog中通過“實(shí)例引用”這些邏輯門來構(gòu)造電路。具體的例子:
nand#10nd1(a,data,clock,clear);
這說明在模塊中引用了一個(gè)名為nd1的與非門(nand),輸入為data、clock和clear,輸出為a,輸出與輸入的延時(shí)為10個(gè)單位時(shí)間。2.門級結(jié)構(gòu)描述實(shí)例:D觸發(fā)器:
下例是用VerilogHDL語言描述的D型主從觸發(fā)器模塊
module
flop(data,clock,clear,q,qb);input data,clock,clear;output q,qb;
nand nd1(a,data,clock,clear),nd2(b,ndata,clock),nd4(d,c,b,clear),nd5(e,c,nclock),nd6(f,d,nclock),nd8(qb,q,f,clear);nand nd3(c,a,d),nd7(q,e,qb);not iv1(ndata,data),iv2(nclock,clock);
endmodule門級多路選擇器:moduletwomux(out,a,b,sl);inputa,b,sl;outputout;notu1(nsl,sl);andu2(sela,a,nsl);andu3(selb,b,sl);oru4(out,sela,selb);endmodule
超前進(jìn)位加法器和及進(jìn)位輸出方程:若定義:
則:推出3.2數(shù)據(jù)流建模門級建模非常直觀。但是如果電路功能比較復(fù)雜,使用門級描述不但繁瑣而且容易出錯(cuò)。需要設(shè)計(jì)者從更高的抽象層次進(jìn)行電路設(shè)計(jì)。將設(shè)計(jì)的重點(diǎn)放在功能的實(shí)現(xiàn)上。在目前的數(shù)字設(shè)計(jì)領(lǐng)域,數(shù)據(jù)流建模是RTL級描述的重要的組成部分。數(shù)據(jù)流建模:指根據(jù)數(shù)據(jù)在寄存器之間的流動(dòng)和處理過程對電路進(jìn)行描述。連續(xù)賦值語句(assign)是verilog數(shù)據(jù)流建模的基本語句。assign[delay]LHS_net=RHS_expression;半加器的例子moduleHalfAdder(A,B,Sum,Carry);inputA,B;outputSum,Carry;assignSum=A^B;assignCarry=A&B;endmodule連續(xù)賦值語句的特點(diǎn);1、assign語的左值必須是一個(gè)線網(wǎng)而不能是寄存器。2、assign語句總是處于激活狀態(tài),即:只要任意一個(gè)操作數(shù)發(fā)生變化,表達(dá)式就會(huì)被立即從新計(jì)算,并將結(jié)果賦給等號左邊的線網(wǎng)。3、操作數(shù)可以是線網(wǎng)型、寄存器型變量,也可以是函數(shù)調(diào)用。隱式連續(xù)賦值
//普通連續(xù)賦值wireout;assignout=in1&in2;//隱式賦值實(shí)現(xiàn)同樣功能
wireout=in1&in2;1、多路選擇器://用邏輯方程描述的多路選擇器moduletwomux(out,a,b,sl);inputa,b,sl;outputout;assignout=~sl&a|sl&b;endmodule數(shù)據(jù)流建模舉例//使用條件操作符描述的四選一多路選擇器
modulemux4_1(out,i0,i1,i2,i3,s0,s1);outputout;inputi0,i1,i2,i3;inputs0,s1;assignout=s1?(s0?i3:i2):(s0?i1:i0);endmodule2、四位全加器modulefulladder4(sum,cout,a,b,cin);output[3:0]sum;
outputcout;input[3:0]a,b;inputcin;assign{cout,sum}=a+b+cin;endmodule如何檢查上述例子其功能是否正確?需要有測試激勵(lì)信號輸入到被測模塊需要記錄被測模塊的輸出信號需要把用功能和行為描述的Verilog模塊轉(zhuǎn)換為門級電路互連的電路結(jié)構(gòu)(綜合)。需要對已經(jīng)轉(zhuǎn)換為門級電路結(jié)構(gòu)的邏輯進(jìn)行測試(門級電路仿真)。需要對布局布線后的電路結(jié)構(gòu)進(jìn)行測試。(布局布線后仿真)。
模塊的驗(yàn)證被測模塊激勵(lì)和控制信號輸出響應(yīng)和驗(yàn)證驗(yàn)證程序一般是指描述一個(gè)設(shè)計(jì)確定的輸入序列和期望輸出的響應(yīng)的代碼的集合。Testbench是完全封閉的,沒有輸入也沒有輸出。驗(yàn)證模塊常見的形式:`timescale時(shí)間單位/時(shí)間精度modulet;reg…;//聲明連接變量wire…;//聲明連接變量initialbegin…;…;…;end……//產(chǎn)生測試信號always#delaybegin…;end……//產(chǎn)生測試信號Testedmdm(.in1(ina),.in2(inb),.out1(outa),.out2(outb));//被測模塊的實(shí)例引用initialbegin….;….;….end//記錄輸出和響應(yīng)endmodule端口與外部信號的連接:1、順序端口連接連接到模塊實(shí)例的信號必須與模塊聲明時(shí)模塊端口列表中的位置保持一致。
modulefulladd4_tb;reg[3:0]A,B;
regC_IN;wire[3:0]SUM;wireC_OUT;fulladd4uut(SUM,C_OUT,A,B,C_IN);endmodulemodulefulladd4(sum,c_out,a,b,c_in);...endmodule2、命名端口連接:
在復(fù)雜的設(shè)計(jì)中,模塊可能具有很多個(gè)端口,在這種情況下,要記住列表中的順序是很困難的,而且容易出錯(cuò),verilog提供了另一種端口連接方式。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 解除房屋租賃合同集錦15篇
- 公司員工個(gè)人工作總結(jié)集合15篇
- 中學(xué)校長工作述職報(bào)告合集6篇
- 部編版四年級語文下冊全冊教案
- 電子巡查系統(tǒng)課程設(shè)計(jì)
- 小額貸款有限公司日常管理制度
- 汽車文化5 汽車史上的重大技術(shù)革新
- 湖南省郴州市2024-2025學(xué)年七年級上學(xué)期期末考試英語試卷(無答案)
- 職場篇-課件 項(xiàng)目八商品銷售溝通
- 2025年特種銅合金材料項(xiàng)目發(fā)展計(jì)劃
- 2023年全國中小學(xué)思政課教師網(wǎng)絡(luò)培訓(xùn)研修總結(jié)心得體會(huì)
- 老年人能力評估標(biāo)準(zhǔn)表
- 卷內(nèi)目錄及卷內(nèi)備考表
- 國開大學(xué)2023年01月11110《工程地質(zhì)》期末考試答案
- 模擬電子技術(shù)課程設(shè)計(jì)報(bào)告
- 成都市金牛區(qū)八年級上學(xué)期期末考試語文試題
- 部編版九年級語文上冊教科書(課本全冊)課后習(xí)題參考答案
- 水性建筑涂料企業(yè)風(fēng)險(xiǎn)點(diǎn)告知卡
- 涉詐風(fēng)險(xiǎn)賬戶審查表
- 水利二級建造師繼續(xù)教育試題及答案(江西)
- 天津市中小學(xué)生思想品德發(fā)展水平評價(jià)指標(biāo)(小學(xué)中高年級學(xué)段)
評論
0/150
提交評論