版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、14.6 用用VerilogHDL描述組合邏輯電路描述組合邏輯電路4.6.1 組合邏輯電路的門級建模組合邏輯電路的門級建模4.6.2 組合邏輯電路的數(shù)據(jù)流建模組合邏輯電路的數(shù)據(jù)流建模4.6.3 組合邏輯電路的行為級建模組合邏輯電路的行為級建模24.6 用用VerilogHDL描述組合邏輯電路描述組合邏輯電路用用VerilogHDL描述組合邏輯電路有三種不同抽象級別:描述組合邏輯電路有三種不同抽象級別:組合邏輯電路的組合邏輯電路的門級描述門級描述、組合邏輯電路的、組合邏輯電路的數(shù)據(jù)流描述數(shù)據(jù)流描述、組合邏輯電路的組合邏輯電路的行為級描述行為級描述。 VerilogHDL描述的電路就描述的電路就是
2、該電路的是該電路的VerilogHDL模型。模型。3行為描述方式:行為描述方式: 一般使用下述語句描述,可以對組合、時序邏輯電路建模。一般使用下述語句描述,可以對組合、時序邏輯電路建模。 1)initial 語句語句 2)always 語句語句數(shù)據(jù)流描述方式:數(shù)據(jù)流描述方式: 一般使用一般使用assign語句描述,主要用于對組合邏輯電路建模。語句描述,主要用于對組合邏輯電路建模。門級描述:門級描述: 一般使用一般使用Primitive(內部元件)、自定義的下層模塊對電(內部元件)、自定義的下層模塊對電路描述。主要用于層次化設計中。路描述。主要用于層次化設計中。4end基本門級元件模型基本門級元
3、件模型 元件符號元件符號功能說明功能說明元件符號元件符號功能說明功能說明andand多輸入端的與門多輸入端的與門nandnand多輸入端的與非門多輸入端的與非門oror多輸入端的或門多輸入端的或門nornor多輸入端的或非門多輸入端的或非門xorxor多輸入端的異或門多輸入端的異或門xnorxnor多輸入端的異或非門多輸入端的異或非門bufbuf多輸出端的緩沖器多輸出端的緩沖器notnot多輸出端的反相器多輸出端的反相器bufif1bufif1控制信號高電平有效的三態(tài)緩沖控制信號高電平有效的三態(tài)緩沖器器notif1notif1控制信號高電平有效的控制信號高電平有效的三態(tài)反相器三態(tài)反相器bufi
4、f0bufif0控制信號低電平有效的三態(tài)緩沖控制信號低電平有效的三態(tài)緩沖器器notif0notif0控制信號低電平有效的控制信號低電平有效的三態(tài)反相器三態(tài)反相器多輸入門多輸入門多輸出門多輸出門三態(tài)門三態(tài)門4.6.1 組合邏輯電路的門級建模組合邏輯電路的門級建模門級建模門級建模:將邏輯電路圖用將邏輯電路圖用HDL規(guī)定的文本語言表示出來。規(guī)定的文本語言表示出來。5 and n-input AND gate nand n-input NAND gate or n-input OR gate nor n-input NOR gate xor n-input exclusive OR gate xnor
5、 n-input exclusive NOR gate buf n-output buffer not n-output inverter bufif0 tri-state buffer; Io enable bufif1 tri-state buffer; hi enable notif0 tri-state inverter; Io enable notif1 tri-state inverter; hi enable61 1、多輸入門、多輸入門只允許有一個輸出,但可以有多個輸入。只允許有一個輸出,但可以有多個輸入。 and A1(out,in1,in2,in3);); 輸輸入入2xxx1
6、zxxx1xxx01111110zx10 輸入輸入1nand nand真值表真值表X- 不確定狀態(tài)不確定狀態(tài)Z- 高阻態(tài)高阻態(tài) and真值表真值表x0zx0 xx10100000zX10 輸入輸入1and輸輸入入2xxxxx調用名調用名7XX1XZXX1XX11111XX100ZX10輸入輸入1or輸輸入入2 or真值表真值表輸輸入入2XXXXZXXXXXXX011XX X1 10 00 0ZX X1 10 0輸入輸入1 1xorxorxor真值表真值表82 2、多輸出門、多輸出門允許有多個輸出,但只有一個輸入。允許有多個輸出,但只有一個輸入。 not N1(out1,out2,in););x
7、x10zx10輸輸 入入buf輸輸 出出 buf真值表真值表 輸輸 出出xx01zx10輸輸 入入notnot真值表真值表 buf B1(out1,out2,in););out1inout2outNout1inout2outN9bufif1真值表真值表xxxzzxxxzx1/z1/z1z10/z0/z0z0zx10控制輸入控制輸入bufif1數(shù)數(shù)據(jù)據(jù)輸輸入入xxxzzxxxzx0/z0/z0z11/z1/z10zzx10控制輸入控制輸入notif1數(shù)數(shù)據(jù)據(jù)輸輸入入notif1真值表真值表3、三態(tài)門、三態(tài)門有一個輸出、一個數(shù)據(jù)輸入和一個輸入控制。有一個輸出、一個數(shù)據(jù)輸入和一個輸入控制。如果輸入控
8、制信號無效,則三態(tài)門的輸出為高阻態(tài)如果輸入控制信號無效,則三態(tài)門的輸出為高阻態(tài)z。 圖圖 4.6.3 三三態(tài)態(tài)門門元元件件模模型型 (a)bufif1 (b)notif1 (a) (b) in out ctrl in out ctrl 104、設計舉例、設計舉例/Gate-level description of a 2-to-4-line decoder module _2to4decoder (A1,A0,E,Y); input A,B,E; output 3:0Y; wire A1not,A0not,Enot; not G1 (A1not,A1), G2 (A0not,A0), G3 (
9、Enot,E); nand G4 (Y0,A1not,A0not,Enot), G5 (Y1,A1not,A0,Enot), G6 (Y2,A1,A0not,Enot), G7 (Y3,A1,A0,Enot);endmodule 1 A1 1 1 A0 & & & & E 0Y 1Y 2Y 3Y 試用試用Verilog語言語言的門級的門級元件描述元件描述2線線-4線譯碼器線譯碼器. . 說明說明部分部分功能功能描述描述11例例2 用用Verilog的門級元件進行的門級元件進行描述由三態(tài)門構成的描述由三態(tài)門構成的2選選1數(shù)據(jù)數(shù)據(jù)選擇器選擇器 。 B L A SEL
10、 /Gate-level description of a 2-to-1-line multiplexer module _2to1muxtri (A,B,SEL,L); input A,B,SEL; output L; tri L; bufif1 (L,B,SEL); bufif0 (L,A,SEL);endmodule 125、分層次的電路設計方法簡介、分層次的電路設計方法簡介 4位全加器的層次結構框圖位全加器的層次結構框圖分層次的電路設計分層次的電路設計:在電路設計中,將兩個或多個模塊組在電路設計中,將兩個或多個模塊組合起來描述電路邏輯功能的設計方法。合起來描述電路邏輯功能的設計方法。設
11、計方法:設計方法:自頂向下和自底向上兩種常用的設計方法自頂向下和自底向上兩種常用的設計方法 4 4 位位全全加加器器 1 1 位位全全加加器器 1 1 位位全全加加器器 1 1 位位全全加加器器 1 1 位位全全加加器器 半半加加器器 或或門門 半半加加器器 或或門門 . . . . . . . . . . . . 13 A B =1 & C=AB BAS module halfadder (S,C,A,B); input A,B; output S,C;/Instantiate primitive gates xor (S,A,B); and (C,A,B);endmodule/Ga
12、te-level hierarchical description of 4-bit adder / Description of half adder14/Description of 1-bit full addermodule fulladder (S,CO,A,B,CI); input A,B,CI; output S,CO; wire S1,D1,D2; /內部節(jié)點信號內部節(jié)點信號/Instantiate the halfadder halfadder HA1 (S1,D1,A,B); halfadder HA2 (S,D2,S1,CI); or g1(CO,D2,D1);endmo
13、dule S A B Ci Co BA iCBA A B i)(CBA 1 C O C O D1S1D215/Description of 4-bit full addermodule _4bit_adder (S,C3,A,B,C_1); input 3:0 A,B; input C_1; output 3:0 S; output C3; wire C0,C1,C2; /內部進位信號內部進位信號/Instantiate the fulladder fulladder FA0 (S0,C0,A0,B0,C_1), FA1 (S1,C1,A1,B1,C0), FA2 (S2,C2,A2,B2,C
14、1), FA3 (S3,C3,A3,B3,C2);endmodule 164.6.2 組合邏輯電路的數(shù)據(jù)流建模組合邏輯電路的數(shù)據(jù)流建模數(shù)據(jù)流建模能在較高的抽象級別描述電路的數(shù)據(jù)流建模能在較高的抽象級別描述電路的邏輯功能。通過邏輯綜合軟件,能夠自動地邏輯功能。通過邏輯綜合軟件,能夠自動地將數(shù)據(jù)流描述轉換成為門級電路。將數(shù)據(jù)流描述轉換成為門級電路。 17Verilog HDL的運算符的運算符類型類型符號符號功能說明功能說明類型類型符號符號功能說明功能說明算術運算符算術運算符(雙目運算(雙目運算符)符)+-*/%二進制加二進制加二進制減二進制減二進制乘二進制乘二進制除二進制除求模求模關系運算符關系運
15、算符(雙目運算符)(雙目運算符)=右移右移左移左移18位運算符與縮位運算的比較位運算符與縮位運算的比較 A:4b1010 、B:4b1111,AB= 1010 AB= 0101A|B= 1111 A&B= 1010A = 0101B = 0000 位運算位運算A=1B=1A=0B=0|A=1|B=0&A=1&B=1&A=1&0&1&0=0 縮位運算縮位運算19對同一個操作數(shù)的重復拼接還可以雙重大括號構成的運算符對同一個操作數(shù)的重復拼接還可以雙重大括號構成的運算符例如例如4A=4b1111,2A,2B,C=8b11101000。作用是將兩個
16、或多個信號的某些位拼接起來成為一個新的操作數(shù),作用是將兩個或多個信號的某些位拼接起來成為一個新的操作數(shù),進行運算操作。進行運算操作。位拼接運算符位拼接運算符設設A=1b1,B=2b10,C=2b00則則B,C4b1000A,B1,C03b110A,B,C,3b101=8b11000101。20一般用法:一般用法:condition_expr?expr1:expr2;條件運算符條件運算符是三目運算符,運算時根據(jù)條件表達式的值選擇表達式。是三目運算符,運算時根據(jù)條件表達式的值選擇表達式。首先計算第一個操作數(shù)首先計算第一個操作數(shù)condition_expr的值,如果結果為邏輯的值,如果結果為邏輯1,
17、則選擇第二個操作數(shù)則選擇第二個操作數(shù)expr1的值作為結果返回,結果為邏輯的值作為結果返回,結果為邏輯0,選擇第三個操作數(shù)選擇第三個操作數(shù)expr2的值作為結果返回。的值作為結果返回。212、數(shù)據(jù)流建模舉例、數(shù)據(jù)流建模舉例連續(xù)賦值語句的執(zhí)行過程是:只要邏輯表達式右邊變量連續(xù)賦值語句的執(zhí)行過程是:只要邏輯表達式右邊變量的邏輯值發(fā)生變化,則等式右邊表達式的值會立即被計算的邏輯值發(fā)生變化,則等式右邊表達式的值會立即被計算出來并賦給左邊的變量。出來并賦給左邊的變量。注意,在注意,在assign語句中,左邊變量的數(shù)據(jù)類型必須是語句中,左邊變量的數(shù)據(jù)類型必須是wire型。型。 數(shù)據(jù)流建模使用的基本語句是連
18、續(xù)賦值語句數(shù)據(jù)流建模使用的基本語句是連續(xù)賦值語句assign ,該,該語句用于對語句用于對wire型變量進行賦值,型變量進行賦值,它由關鍵詞它由關鍵詞assign開始,后面跟著由操作數(shù)和運算符組成的開始,后面跟著由操作數(shù)和運算符組成的邏輯表達式。邏輯表達式。 2選選1數(shù)據(jù)選擇器的連續(xù)賦值描述是:數(shù)據(jù)選擇器的連續(xù)賦值描述是: wire A,B,SEL,L; /聲明聲明4個連線型變量個連線型變量assign L=(A & SEL)|(B & SEL); /連續(xù)賦值連續(xù)賦值22/Dataflow description of a 2-to-4-line decoder,module
19、decoder_df (A1,A0,E,Y); input A1,A0,E; output 3:0 Y; assign Y0 = (A1 & A0 & E); assign Y1 = (A1 & A0 & E); assign Y2 = (A1 & A0 & E); assign Y3 = (A1 & A0 & E); endmodule 1 A1 1 1 A0 & & & & E 0Y 1Y 2Y 3Y 23/Dataflow description of 2-to-1-line multiple
20、xermodule mux2x1_df (A,B,SEL,L); input A,B,SEL; output L; assign L = SEL ? A : B;endmodule 下面用條件運算符描述了一個下面用條件運算符描述了一個2選選1的數(shù)據(jù)選擇器。的數(shù)據(jù)選擇器。在連續(xù)賦值語句中,如果在連續(xù)賦值語句中,如果SEL1,則輸出,則輸出LA;否則;否則LB。數(shù)據(jù)流建模根據(jù)電路的邏輯功能進行描述,不必考慮電路的組成以及元件數(shù)據(jù)流建模根據(jù)電路的邏輯功能進行描述,不必考慮電路的組成以及元件之間的連接,是描述邏輯電路常用的一種方法。之間的連接,是描述邏輯電路常用的一種方法。244.6.3 組合邏輯電路
21、的行為級建模組合邏輯電路的行為級建模 行為級建模就是描述數(shù)字邏輯電路的功能和算法。行為級建模就是描述數(shù)字邏輯電路的功能和算法。一般使用一般使用always結構,后面跟著一系列過程賦值語句,結構,后面跟著一系列過程賦值語句,給給reg類型的變量賦值。類型的變量賦值。 25或或if (condition_expr1) true_statement1; else if (condition_expr2) true_statement2; else if (condition_expr3) true_statement3; else default_statement;1、條件語句(、條件語句( if
22、語句)語句)條件語句就是根據(jù)判斷條件是否成立,確定下一步的運算。條件語句就是根據(jù)判斷條件是否成立,確定下一步的運算。if (condition_expr) true_statement;或或 if (condition_expr) true_statement; else fale_ statement;Verilog語言中有語言中有3種形式的種形式的if語句:語句:if后面的條件表達式一般為邏輯表達式或關系表達式。執(zhí)行后面的條件表達式一般為邏輯表達式或關系表達式。執(zhí)行if語句時,首先計算表達式的值,若結果為語句時,首先計算表達式的值,若結果為0、x或或z,按,按“假假”處理;若結果為處理;若
23、結果為1,按,按“真真”處理,并執(zhí)行相應的語句。處理,并執(zhí)行相應的語句。 26是一種多分支條件選擇語句,一般形式如下:是一種多分支條件選擇語句,一般形式如下:case (case_expr) item_expr1: statement1; item_expr2: statement2; default: default_statement; /default語句可以省略語句可以省略2、多路分支語句(、多路分支語句(case語句)語句)27/Behavioral description of 2-to-1-line multiplexermodule mux2to1_bh(A, B, SEL,
24、L); input A, B, SEL; output L; reg L; /define register variable always (SEL or A or B) if (SEL = 1) L = b; /也可以寫成也可以寫成 if (SEL) L=B; else L = A;endmodule 例例 always (SEL or A or B) / 語句中括號內為敏語句中括號內為敏感變量,當感變量,當括號內的任意一個敏感變量發(fā)生變化括號內的任意一個敏感變量發(fā)生變化時,下面的過程賦值語句就被執(zhí)行一次。時,下面的過程賦值語句就被執(zhí)行一次。 28/Behavioral description of 4-to-1-line multiplexermodule mux4to1_bh(A,SEL,E,L); input 3:0 A; input 1:0 SEL;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度網(wǎng)絡安全咨詢與管理服務合同范本
- 2025版電子信息產(chǎn)業(yè)零配件綠色供應鏈管理合同4篇
- 2025年度互聯(lián)網(wǎng)金融服務合同6篇
- 年度水解彈性蛋白產(chǎn)業(yè)分析報告
- 年度皮膚科醫(yī)院市場分析及競爭策略分析報告
- 2024-2025學年新教材高中政治第3單元經(jīng)濟全球化第7課第1框開放是當代中國的鮮明標識課時分層作業(yè)含解析新人教版選擇性必修1
- 何謂二零二五年度合同履行的擔保專項審計與報告合同3篇
- 二零二五版毛竹山承包及竹林農(nóng)業(yè)科技示范合同3篇
- 速寫線性課程設計
- 2024金融服務合同范本大全
- 河南省信陽市浉河區(qū)9校聯(lián)考2024-2025學年八年級上學期12月月考地理試題(含答案)
- 火災安全教育觀后感
- 農(nóng)村自建房屋安全協(xié)議書
- 快速康復在骨科護理中的應用
- 國民經(jīng)濟行業(yè)分類和代碼表(電子版)
- ICU患者外出檢查的護理
- 公司收購設備合同范例
- 廣東省潮州市2023-2024學年高二上學期語文期末考試試卷(含答案)
- 2024年光伏發(fā)電項目EPC總包合同
- 子女放棄房產(chǎn)繼承協(xié)議書
- 氧化還原反應配平專項訓練
評論
0/150
提交評論