版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
會計學1Verilog設計初步與入門4.1組合電路的Verilog描述4.1.12選1多路選擇器及其Verilog描述第1頁/共44頁4.1.12選1多路選擇器及其Verilog描述4.1組合電路的Verilog描述第2頁/共44頁1.模塊表達2.端口語句、端口信號名和端口模式4.1組合電路的Verilog描述4.1.12選1多路選擇器及其Verilog描述moduleMUX21a(a,b,s,y); inputa,b,s; outputy; assigny=(s?a:b);endmodule 第3頁/共44頁3.賦值語句和條件操作符4.關鍵字5.標識符6.規(guī)范的程序書寫格式7.文件取名和存盤4.1組合電路的Verilog描述4.1.12選1多路選擇器及其Verilog描述moduleMUX21a(a,b,s,y); inputa,b,s; outputy; assigny=(s?a:b);endmodule 第4頁/共44頁4.1.24選1多路選擇器及其case語句表述方式4.1組合電路的Verilog描述moduleMUX41a(a,b,c,d,s1,s0,y); inputa,b,c,d; inputs1,s0; outputy; regy; always@(a,b,c,d,s1,s0) begin case({s1,s0}) 2'b00:y<=a; 2'b01:y<=b; 2'b10:y<=c; 2'b11:y<=d; default:y<=a; endcase endendmodule第5頁/共44頁4.1.24選1多路選擇器及其case語句表述方式4.1組合電路的Verilog描述第6頁/共44頁1.reg型變量定義4.1組合電路的Verilog描述4.1.24選1多路選擇器及其case語句表述方式(1)Verilog中最常用的兩種變量:寄存器型和網(wǎng)線型(2)模塊中涉及的信息必須定義其類型;(3)默認的變量類型為網(wǎng)線型(wire);(4)過程語句中被賦值的變量必須為寄存器型;第7頁/共44頁選擇正確的數(shù)據(jù)類型moduletop;wirey;rega,b; DUTu1(y,a,b); initialbegin a=0;b=0; #5a=1;endendmodulemoduleDUT(Y,A,B);outputY;inputA,B;wireY,A,B; and(Y,A,B);endmodule輸入端口可以由net/register驅(qū)動,但輸入端口只能是net輸出端口可以是net/register類型,輸出端口只能驅(qū)動net在過程塊中只能給register類型賦值若Y,A,B說明為reg則會產(chǎn)生錯誤。in1in2OABY雙向端口輸入/輸出只能是net類型4.1組合電路的Verilog描述第8頁/共44頁2.過程語句4.1組合電路的Verilog描述4.1.24選1多路選擇器及其case語句表述方式(1)可用or連接所有敏感信號;(2)可用逗號(,)區(qū)分或連接所有敏感信號;(3)可用通配符*省略形式給出所有敏感信息;注:試圖通過選擇性地列出敏感信號來改變邏輯設計是無效的。第9頁/共44頁3.塊語句begin_end4.case條件語句和4種邏輯狀態(tài)4.1組合電路的Verilog描述4.1.24選1多路選擇器及其case語句表述方式第10頁/共44頁case語句使用事項:case語句是測試表達式與另外一系列表達式分支是否匹配的一個多路條件語句。Case語句進行逐位比較以求完全匹配(包括x和z)。Default語句可選,在沒有任何條件成立時執(zhí)行。此時如果未說明default,Verilog不執(zhí)行任何動作。多個default語句是非法的。重要內(nèi)容:使用default語句是一個很好的編程習慣,特別是用于檢測x和z。Casez和casex為case語句的變體,允許比較無關(don‘t-care)值。case表達式或case項中的任何位為無關值時,在比較過程中該位不予考慮。在casez語句中,?和z被當作無關值。在casex語句中,?,z和x被當作無關值。case<表達式><表達式>,<表達式>:賦值語句或空語句;
<表達式>,<表達式>:賦值語句或空語句;
default:賦值語句或空語句;case語法:4.1組合電路的Verilog描述第11頁/共44頁5.并位操作和數(shù)字表達4.1組合電路的Verilog描述4.1.24選1多路選擇器及其case語句表述方式<位寬>’<進制><數(shù)字>(1).B二進制;O:八進制;H:十六進制;D:十進制。(不區(qū)分大小)(2).Verilog中只要標明了數(shù)制才能確定其二進制位數(shù);(3).Verilog-2001可定義有符號二進制數(shù);(4’b1010與4’sb1010為不同)第12頁/共44頁4.1.34選1多路選擇器及其數(shù)據(jù)流描述方式4.1組合電路的Verilog描述第13頁/共44頁1.按位邏輯操作符4.1組合電路的Verilog描述4.1.34選1多路選擇器及其數(shù)據(jù)流描述方式2.等式操作符第14頁/共44頁3.a(chǎn)ssign連續(xù)賦值語句4.1組合電路的Verilog描述4.1.34選1多路選擇器及其數(shù)據(jù)流描述方式注:assign連續(xù)賦值語句中不允許有不同的數(shù)據(jù)賦給同一變量;(如下將出現(xiàn)錯誤)。第15頁/共44頁4.wire定義網(wǎng)線型變量4.1組合電路的Verilog描述4.1.34選1多路選擇器及其數(shù)據(jù)流描述方式(1)用wire定義的網(wǎng)線型變量可以在任何類型的表達式或賦值語句中用作輸入信號;第16頁/共44頁4.1組合電路的Verilog描述4.1.34選1多路選擇器及其數(shù)據(jù)流描述方式moduleMUX41a(a,b,c,d,s1,s0,y); inputa,b,c,d; inputs1,s0; outputy; wireAT=s0?d:c; wireBT=s0?a:b; wirey=s1?AT:BT;endmodule用wire定義描述4選1語句第17頁/共44頁4.1.44選1多路選擇器及其if語句描述方式4.1組合電路的Verilog描述第18頁/共44頁1.if_else條件語句2.過程賦值語句(1)阻塞式賦值(2)非阻塞式賦值4.1組合電路的Verilog描述4.1.44選1多路選擇器及其if語句描述方式moduleMUX41a(a,b,c,d,s1,s0,y); inputa,b,c,d; inputs1,s0; outputy; reg[1:0]SEL; regy; always@(a,b,c,d,SEL) begin SEL={s1,s0}; if(SEL==0) y=a; elseif(SEL==1) y=b; elseif(SEL==2) y=c; else y=d; endendmodule用=作為阻塞式賦值語句;執(zhí)行完畢立即更新數(shù)據(jù);多條阻塞語句將阻塞后面語句;用<=作為非阻塞式賦值語句;在塊語句執(zhí)行完畢后才更新數(shù)據(jù);其他語句處于并行執(zhí)行;第19頁/共44頁4.1.5加法器及其Verilog描述1.半加器描述4.1組合電路的Verilog描述第20頁/共44頁4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述moduleh_adder(a,b,so,co); inputa,b; outputso,co; assignso=a^b; assignco=a&b;endmodule1.半加器描述第21頁/共44頁1.半加器描述4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述moduleh_adder(a,b,so,co); inputa,b; outputso,co; regso,co; always@(a,b) begin case({a,b}) 0:beginso=0;co=1‘b0;end//使用塊語句 1:beginso=1;co=1'b0;end 2:beginso=1;co=1'b0;end 3:beginso=0;co=1'b1;end default:beginso=0;co=1'b0;end endcase endendmodule第22頁/共44頁1.半加器描述4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述moduleh_adder(a,b,so,co); inputa,b; outputso,co; assign{co,so}=a+b;endmodule第23頁/共44頁2.全加器描述4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述第24頁/共44頁2.全加器頂層文件設計和例化語句4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述modulef_adder(ain,bin,cin,cout,sum); inputain,bin,cin; outputcout,sum; wiree,d,f; h_adderu1(ain,bin,e,d);//位置關聯(lián) h_adderu2(.a(e),.so(sum),.b(cin),.co(f));//端口關聯(lián) or2au3(.a(d),.b(f),.c(cout));endmodule第25頁/共44頁2.全加器頂層文件設計和例化語句4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述h_adderu1(ain,bin,e,d);//位置關聯(lián)
h_adderu2(.a(e),.so(sum),.b(cin),.co(f));//端口關聯(lián)or2au3(.a(d),.b(f),.c(cout));第26頁/共44頁4.8位加法器描述4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述moduleADDER8B(A,B,CIN,COUT,DOUT); input[7:0]A,B; inputCIN; output[7:0]DOUT; outputCOUT; wire[8:0]DATA; assignDATA=A+B+CIN; assignCOUT=DATA[8]; assignDOUT=DATA[7:0];endmodulemoduleADDER8B(A,B,CIN,COUT,DOUT); input[7:0]A,B; inputCIN; output[7:0]DOUT; outputCOUT; assign{COUT,DOUT}=A+B+CIN;endmodule 第27頁/共44頁3.8位加法器描述4.1組合電路的Verilog描述4.1.5加法器及其Verilog描述第28頁/共44頁4.2時序模塊及其Verilog表述4.2.1邊沿觸發(fā)型觸發(fā)器及其Verilog表述moduleDFF1(CLK,D,Q); inputCLK,D; outputQ; regQ; always@(posedgeCLK) Q<=D;endmodule第29頁/共44頁4.2.2電平觸發(fā)型鎖存器及其Verilog表述4.2時序模塊及其Verilog表述moduleLATCH1(CLK,D,Q); inputCLK,D; outputQ; regQ; always@(D,CLK) if(CLK) Q<=D;elseQ<=Q;endmodule第30頁/共44頁4.2.3含異步復位/時鐘使能型觸發(fā)器及其Verilog表述4.2時序模塊及其Verilog表述moduleDFF2(CLK,D,Q,RST,EN);inputCLK,D,RST,EN;outputQ;regQ;always@(posedgeCLK,negedgeRST)begin if(!RST) Q<=0; elseif(EN) Q<=D; endendmodule第31頁/共44頁4.2.4同步復位型觸發(fā)器及其Verilog表述4.2時序模塊及其Verilog表述moduleDFF2(CLK,D,Q,RST); inputCLK,D,RST; outputQ; regQ; always@(posedgeCLK) begin if(RST==1) Q<=0; elseif(RST==0) Q<=D; else Q<=Q; endendmodule第32頁/共44頁4.2.5異步復位型鎖存器及其Verilog表述4.2時序模塊及其Verilog表述第33頁/共44頁4.2.5異步復位型鎖存器及其Verilog表述4.2時序模塊及其Verilog表述moduleLATCH3(CLK,D,Q,RST);inputCLK,D,RST;outputQ;assignQ=(!RST)?0:(CLK?D:Q);endmodulemoduleLATCH4(CLK,D,Q,RST); inputCLK,D,RST; outputQ; regQ; always@(D,CLK,RST) if(!RST) Q<=0; elseif(CLK) Q<=D;endmodule
第34頁/共44頁4.2.6Verilog的時鐘過程表述的特點和規(guī)律4.2時序模塊及其Verilog表述1、如果將某信號A定義為邊沿敏感時鐘信號,則必須在敏感信號表中給出對應的表述;但在always過程結(jié)構(gòu)中不能在出現(xiàn)信號A;2、如果將某信號B定義為對應于時鐘的電平敏感的異步控制信號,則除了在敏感信號表中給出對應的表述外;在always過程結(jié)構(gòu)中必須明示信號B的邏輯行為;3、如果將某信號定義為對應于時鐘的同步控制信號,則絕不能以任何形式出現(xiàn)在敏感信號表中;4、敏感信號表中一旦出現(xiàn)邊沿表述形式,則不允許出現(xiàn)其他非敏感信號的表述;第35頁/共44頁4.2.7異步時序模塊的Verilog表述4.2時序模塊及其Verilog表述moduleAMOD(D,A,CLK
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)產(chǎn)品電商平臺代理商服務合同4篇
- 2025年度智慧農(nóng)業(yè)場承包經(jīng)營合同示范文本4篇
- 二零二四年度醫(yī)院康復科醫(yī)師聘用合同及康復治療服務協(xié)議3篇
- 2025版全新原材料供應合同模板下載與應用指南2篇
- 2025年度窗簾電商平臺開發(fā)與運營合同2篇
- 臨時工雇傭合同(2024版)
- 龔廷賢香療應用研究
- 2025年度出租車車輛保險服務合同4篇
- 過程體裁法在初中英語寫作教學中的行動研究
- 2025年度砂石廠礦山設備維修養(yǎng)護用工合同2篇
- 南通市2025屆高三第一次調(diào)研測試(一模)地理試卷(含答案 )
- 2025年上海市閔行區(qū)中考數(shù)學一模試卷
- 2025中國人民保險集團校園招聘高頻重點提升(共500題)附帶答案詳解
- 重癥患者家屬溝通管理制度
- 法規(guī)解讀丨2024新版《突發(fā)事件應對法》及其應用案例
- IF鋼物理冶金原理與關鍵工藝技術1
- 銷售提成對賭協(xié)議書范本 3篇
- 勞務派遣招標文件范本
- EPC項目階段劃分及工作結(jié)構(gòu)分解方案
- 《跨學科實踐活動4 基于特定需求設計和制作簡易供氧器》教學設計
- 信息安全意識培訓課件
評論
0/150
提交評論