




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
2.5.1
Verilog語言的基本語法規(guī)則
2.5.2變量的數(shù)據(jù)類型
2.5.3運算符及其優(yōu)先級
2.5.4
Verilog內(nèi)部的基本門級元件
2.5.5
Verilog程序的基本結(jié)構(gòu)
2.5.6邏輯功能的仿真與測試2.5硬件描述語言VerilogHDL基礎(chǔ)硬件描述語言HDL(HardwareDescriptionLanguag)類似于高級程序設(shè)計語言.它是一種以文本形式來描述數(shù)字系統(tǒng)硬件的結(jié)構(gòu)和行為的語言,用它可以表示邏輯電路圖、邏輯表達式,復(fù)雜數(shù)字邏輯系統(tǒng)完成的邏輯功能。HDL是高層次自動化設(shè)計的起點和基礎(chǔ).2.5硬件描述語言VerilogHDL基礎(chǔ)計算機對HDL的處理:邏輯綜合
是指從HDL描述的數(shù)字邏輯電路模型中導(dǎo)出電路基本元件列表以及元件之間的連接關(guān)系(常稱為門級網(wǎng)表)的過程。類似對高級程序語言設(shè)計進行編譯產(chǎn)生目標代碼的過程.產(chǎn)生門級元件及其連接關(guān)系的數(shù)據(jù)庫,根據(jù)這個數(shù)據(jù)庫可以制作出集成電路或印刷電路板PCB。邏輯仿真是指用計算機仿真軟件對數(shù)字邏輯電路的結(jié)構(gòu)和行為進行預(yù)測.仿真器對HDL描述進行解釋,以文本形式或時序波形圖形式給出電路的輸出。在仿真期間如發(fā)現(xiàn)設(shè)計中存在錯誤,就再要對HDL描述進行及時的修改。2.5.1Verilog語言的基本語法規(guī)則為對數(shù)字電路進行描述(常稱為建模),Verilog語言規(guī)定了一套完整的語法結(jié)構(gòu)。1.間隔符:
Verilog的間隔符主要起分隔文本的作用,可以使文本錯落有致,便于閱讀與修改。間隔符包括空格符(\b)、TAB鍵(\t)、換行符(\n)及換頁符。2.注釋符:注釋只是為了改善程序的可讀性,在編譯時不起作用。多行注釋符(用于寫多行注釋):/*---*/;單行注釋符:以//開始到行尾結(jié)束為注釋文字。為了表示數(shù)字邏輯電路的邏輯狀態(tài),Verilog語言規(guī)定了4種基本的邏輯值。0邏輯0、邏輯假1邏輯1、邏輯真x或X不確定的值(未知狀態(tài))z或Z高阻態(tài)標識符:給對象(如模塊名、電路的輸入與輸出端口、變量等)取名所用的字符串。以英文字母或下劃線開始如,clk、counter8、_net、bus_A。關(guān)鍵詞:是Verilog語言本身規(guī)定的特殊字符串,用來定義語言的結(jié)構(gòu)。例如,module、endmodule、input、output、wire、reg、and等都是關(guān)鍵詞。關(guān)鍵詞都是小寫,關(guān)鍵詞不能作為標識符使用。4.邏輯值集合3.標識符和關(guān)鍵詞5.常量及其表示實數(shù)型常量十進制記數(shù)法如:0.1、2.0、5.67科學(xué)記數(shù)法如:23_5.1e2、5E-423510.0、0.0005Verilog允許用參數(shù)定義語句定義一個標識符來代表一個常量,稱為符號常量。定義的格式為:parameter參數(shù)名1=常量表達式1,參數(shù)名2=常量表達式2,……;如parameterBIT=1,BYTE=8,PI=3.14;6.字符串:字符串是雙撇號內(nèi)的字符序列常量十進制數(shù)的形式的表示方法:表示有符號常量例如:30、-2帶基數(shù)的形式的表示方法:表示常量格式為:<+/-><位寬>’<基數(shù)符號><數(shù)值>整數(shù)型例如:3’b101、5’o37、8’he3,8’b1001_0011
2.5.2變量的數(shù)據(jù)類型1線網(wǎng)類型:是指輸出始終根據(jù)輸入的變化而更新其值的變量,它一般指的是硬件電路中的各種物理連接.例:wireL;//將上述電路的輸出信號L聲明為網(wǎng)絡(luò)型變量wire[7:0]databus;//聲明一個8-bit寬的網(wǎng)絡(luò)型總線變量常用的網(wǎng)絡(luò)類型由關(guān)鍵詞wire定義wire型變量的定義格式如下:wire[n-1:0]變量名1,變量名2,…,變量名n;變量寬度例:網(wǎng)絡(luò)型變量L的值由與門的驅(qū)動信號a和b所決定,即L=a&b。a、b的值發(fā)生變化,線網(wǎng)L的值會立即跟著變化。寄存器型變量對應(yīng)的是具有狀態(tài)保持作用的電等路元件,如觸發(fā)器寄存器。寄存器型變量只能在initial或always內(nèi)部被賦值。2、寄存器類型寄存器類型功能說明reg常用的寄存器型變量integer32位帶符號的整數(shù)型變量real64位帶符號的實數(shù)型變量,time64位無符號的時間變量4種寄存器類型的變量例:regclock;//定義一個1位寄存器變量reg[3:0]counter;//定義一個4位寄存器變量抽象描述,不對應(yīng)具體硬件1.運算符2.5.3運算符及其優(yōu)先級類型符號功能說明類型符號功能說明算術(shù)運算符+--*/二進制加二進制減2的補碼二進制乘二進制除關(guān)系運算符(雙目運算符)><>=<===!=大于小于大于或等于小于或等于相等不相等位運算符(雙目運算符)~&|^^~或~^按位取反按位與按位或按位異或按位同或縮位運算符(單目運算符)&~&|~|^^~或~^縮位與縮位與非縮位或縮位或非縮位異或縮位同或邏輯運算符(雙目運算符)!&&||邏輯非邏輯與邏輯或移位運算符(雙目運算符)>><<右移左移位拼接運算符{,}{{}}將多個操作數(shù)拼接成為一個操作數(shù)條件運算符(三目運算符)?:根據(jù)條件表達式是否成立,選擇表達式運算符分為算術(shù)運算符、邏輯運算符、關(guān)系運算符、移位運算符等對同一個操作數(shù)的重復(fù)拼接還可以雙重大括號構(gòu)成的運算符{{}}例如{4{A}}=4’b1111,{2{A},2{B},C}=8’b11101000。作用是將兩個或多個信號的某些位拼接起來成為一個新的操作數(shù),進行運算操作。位拼接運算符設(shè)A=1’b1,B=2’b10,C=2’b00則{B,C}=4’b1000{A,B[1],C[0]}=3’b110{A,B,C,3’b101}=8’b11000101。位運算符與縮位運算的比較A:4’b1010、B:4’b1111,A~^B=1010A^B=0101A|B=1111A&B=1010~A=0101~B=0000位運算~^A=1~^B=1^A=0^B=0|A=1~|B=0~&A=1&B=1&A=1&0&1&0=0縮位運算2.運算符的優(yōu)先級優(yōu)先級的順序從下向上依次增加。類型符號優(yōu)先級別取反!~-(求2的補碼)最高優(yōu)先級算術(shù)*/+-移位>><<關(guān)系<<=>>=等于==!=縮位&~&^^~|~|邏輯&&||條件?:最低優(yōu)先級一般用法:condition_expr?expr1:expr2;條件運算符是三目運算符,運算時根據(jù)條件表達式的值選擇表達式。首先計算第一個操作數(shù)condition_expr的值,如果結(jié)果為邏輯1,則選擇第二個操作數(shù)expr1的值作為結(jié)果返回,結(jié)果為邏輯0,選擇第三個操作數(shù)expr2的值作為結(jié)果返回。基本門級元件模型元件符號功能說明元件符號功能說明and多輸入端的與門nand多輸入端的與非門or多輸入端的或門nor多輸入端的或非門xor多輸入端的異或門xnor多輸入端的異或非門buf多輸出端的緩沖器not多輸出端的反相器bufif1控制信號高電平有效的三態(tài)緩沖器notif1控制信號高電平有效的三態(tài)反相器bufif0控制信號低電平有效的三態(tài)緩沖器notif0控制信號低電平有效的三態(tài)反相器多輸入門多輸出門三態(tài)門2.5.4Verilog內(nèi)部的基本門級元件門級建模:將邏輯電路圖用HDL規(guī)定的文本語言表示出來。1、多輸入門只允許有一個輸出,但可以有多個輸入。andA1(out,in1,in2,in3);X-不確定狀態(tài)Z-高阻態(tài)
and真值表x0zx0xx10100000zX10輸入1and輸入2xxxxx調(diào)用名XX1XZXX1XX11111XX100ZX10輸入1or輸入2
or真值表輸入2XXXXZXXXXXXX011XX100ZX10輸入1xorxor真值表2、多輸出門允許有多個輸出,但只有一個輸入。notN1(out1,out2,…,in);xx10zx10輸入buf輸出buf真值表輸出xx01zx10輸入notnot真值表bufB1(out1,out2,…,in);out1inout2outN…out1inout2outN…bufif1真值表xxxzzxxxzx1/z1/z1z10/z0/z0z0zx10控制輸入bufif1數(shù)據(jù)輸入xxxzzxxxzx0/z0/z0z11/z1/z10zzx10控制輸入notif1數(shù)據(jù)輸入notif1真值表3、三態(tài)門有一個輸出、一個數(shù)據(jù)輸入和一個輸入控制。如果輸入控制信號無效,則三態(tài)門的輸出為高阻態(tài)z。2、每個模塊先要進行端口的定義,并說明輸入(input)和輸出(output),然后對模塊功能進行描述。2.5.5Verilog程序的基本結(jié)構(gòu)模塊是Verilog描述電路的基本單元。對數(shù)字電路建模時,用一個或多個模塊。不同模塊之間通過端口進行連接。1、每個模塊以關(guān)鍵詞module開始,以endmodule結(jié)束。3、除了endmodule語句外,每個語句后必須有分號。4、可以用/*---*/和//…..對程序的任何部分做注釋。5、邏輯功能的描述方式有三種不同風(fēng)格:結(jié)構(gòu)描述方式(門級描述方式)數(shù)據(jù)流描述方式,行為描述方式。模塊定義的一般語法結(jié)構(gòu)如下:端口類型說明電路結(jié)構(gòu)描述模塊名數(shù)據(jù)類型說明例用結(jié)構(gòu)描述方式建立門電路Verilog模型modulemux2to1(D0,D1,S,Y
);
inputD0,D1,S;//定義輸入信號outputY;//定義輸出信號wireSnot,A,B;//定義內(nèi)部節(jié)點信號數(shù)據(jù)類型//下面對電路的邏輯功能進行描述notU1(Snot,Sl);
andU2(A,D0,Snot);
andU3(B,D1,S);
orU4(Y,A,B);endmodule
modulemux2to1_dataflow(D0,D1,S,Y
);
inputD0,D1,S;outputY;wireY;//下面是邏輯功能描述assignY=(~S&D0)|(S&D1);//表達式左邊Y必須是wire型endmodule
端口類型說明電路結(jié)構(gòu)描述數(shù)據(jù)類型說明例用數(shù)據(jù)流描述方式建立模型注意,在assign語句中,左邊變量的數(shù)據(jù)類型必須是wire型。數(shù)據(jù)類型說明例用行為描述方式建立模型modulemux2to1_bh(D0,D1,S,Y
);
inputD0,D1,S;outputY;regY;//邏輯功能描述always@(S
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 深圳職業(yè)技術(shù)大學(xué)《燈光材質(zhì)渲染》2023-2024學(xué)年第一學(xué)期期末試卷
- 棗莊學(xué)院《音樂美學(xué)一》2023-2024學(xué)年第一學(xué)期期末試卷
- 湖北理工學(xué)院《中國傳統(tǒng)音樂Ⅲ》2023-2024學(xué)年第一學(xué)期期末試卷
- 上海歐華職業(yè)技術(shù)學(xué)院《生物質(zhì)科學(xué)與工程學(xué)科前沿》2023-2024學(xué)年第一學(xué)期期末試卷
- 聊城大學(xué)《人體寄生蟲學(xué)C》2023-2024學(xué)年第一學(xué)期期末試卷
- 甘肅農(nóng)業(yè)職業(yè)技術(shù)學(xué)院《學(xué)術(shù)交流英語》2023-2024學(xué)年第一學(xué)期期末試卷
- 吉林省長春市中學(xué)2025屆八上數(shù)學(xué)期末復(fù)習(xí)檢測試題含解析
- 山東省濰坊市峽山經(jīng)濟開發(fā)區(qū)2024年八年級數(shù)學(xué)第一學(xué)期期末學(xué)業(yè)水平測試模擬試題含解析
- 江蘇援外選派管理辦法
- 內(nèi)蒙社保基金管理辦法
- 2023年醫(yī)技類-康復(fù)醫(yī)學(xué)(副高)考試歷年真題薈萃帶答案
- 改進維持性血液透析患者貧血狀況PDCA
- 公司崗位職級管理制度
- 漏肩風(fēng)(肩周炎)中醫(yī)臨床路徑及入院標準2020版
- 光面爆破知識講座課件
- 高鐵站裝飾裝修方案
- DB4401-T 112.1-2021 城市道路占道施工交通組織和安全措施設(shè)置+第1部分:交通安全設(shè)施設(shè)置-(高清現(xiàn)行)
- 質(zhì)量整改通知單(樣板)
- 杭州市高級中學(xué)2022年高一新生素質(zhì)測試(分班考)模擬試卷
- 《碳纖維片材加固混凝土結(jié)構(gòu)技術(shù)規(guī)程》(2022年版)
- 智能建筑項目設(shè)計方案(模板)
評論
0/150
提交評論