|
1.詞法規(guī)定 1.1間隔符 (類似于C語言) 1.2標(biāo)識符和關(guān)鍵詞 標(biāo)識符:英文字母、數(shù)字、$符和下劃線組成(首字符必須為英文字母或下劃線)。 轉(zhuǎn)義標(biāo)識符:如:\***。 2.四種邏輯值 0 邏輯0、邏輯假 1 邏輯1、邏輯真 x或X 不確定值(未知邏輯狀態(tài)) z或Z 高阻態(tài) 3.八種強(qiáng)度值 最強(qiáng)————>最弱 強(qiáng)度等級名稱 supply strong pull large weak medium small highz 類型 驅(qū)動 驅(qū)動 驅(qū)動 存儲 驅(qū)動 存儲 存儲 高阻抗 4.常量及其表示 4.1整數(shù)型表示 格式: <+/- size>' 例如: 3'b101 //3位二進(jìn)制數(shù)101 5'o37 //5位八進(jìn)制數(shù)37 8'b1001_1100 //八位二進(jìn)制數(shù),等同于8'b10011100 注意:在這里的‘_’無實際意義,可以隨便在整數(shù)或?qū)崝?shù)中使用,方便讀數(shù)。 4.2實數(shù)型常量 (實數(shù)通過四舍五入轉(zhuǎn)換為整數(shù)) 例如: 42.45轉(zhuǎn)換為整數(shù)42; 92.5,92.699轉(zhuǎn)化為93;-15.62轉(zhuǎn)換為-16. 4.3字符串常量 (每個字符串包括空格都被看做8位的ACSII值序列) 例如: 存儲字符串"FPGA"就需要定義一個8*4位的變量。 reg [8*4:1] messsage; initial begin message = "FPGA"; end 對于初學(xué)者來說,reg、initial這些請無視掉,只用了解這個格式就行。 4.4參數(shù)語句 格式: parameter param1 = xxxx, param2 = xxxx, ......; parameter聲明的符號常量常量通常出現(xiàn)在module(模塊)內(nèi)部,參數(shù)常用于指令yan'延遲、變量的wei'位寬和狀態(tài)值de等(類似于C語言的局部參數(shù)) 補(bǔ):define是宏定義,通常放在module外部,改常量是一個全局變量。 localparam(局部參數(shù))是模塊內(nèi)部參數(shù)(無傳遞,類似于C語言的函數(shù)內(nèi)部參數(shù))。 5.數(shù)據(jù)類型 5.1線網(wǎng)類型 wire、tri(wire為一般連線;tri為驅(qū)動的線網(wǎng)); wor、trior(一個線網(wǎng)被多個信號驅(qū)動qing情況); wand、triand(一個線網(wǎng)被多個信號驅(qū)動qing情況); trireg(電荷保持特性); tri1(上拉電阻); tri0(下拉電阻); supply1(電源建模、高點平); supply0(對地建模、低電平)。 線網(wǎng)變量聲明: 例如: wire A,B; //兩個1位wire類型的變量 wire [7:0] Databus; //Databus位8位向量的wire變量 supply0 logic_0,vss; //‘地’ supply1 logic_1,vdd; //‘電源線’ 建議別對同一變量多次賦值。 5.2寄存器類型 (只能在initial或always塊內(nèi)部被賦值) reg、integer、time未賦值前為x; real、realtime默認(rèn)值是0. reg:寄存器變量,默認(rèn)值是x 格式 reg 例如: reg clock,a; //1位的reg型變量clock,a; reg [3:0] cnt; //4位的reg型變量cnt,等效于:cnt[3],cnt[2],cnt[1],cnt[0]; integer:整數(shù)型寄存器變量 (變量保持的是整數(shù)值) 格式: integer 1,2,3,...,n<[msb:lsb]>; 例如: integer A,B,C; //3個整數(shù)型變量; integer HINT[3:0]; //一個由四個整數(shù)變量組成的數(shù)組; tiem型變量主要用于存儲和處理仿真時間 time 1,2,3,...,n [msb:lsb] reale和realtime變量通產(chǎn)用于對實數(shù)型產(chǎn)量常量進(jìn)行存儲和運算,實數(shù)不能定義范圍,默認(rèn)值是0 real 1,2,3,...,n; //實型變量聲明 realtime 1,2,3,...,n; //實型時間變量聲明 參考文獻(xiàn) 1.《FPGA自學(xué)筆記——設(shè)計與驗證》 2.《可編程邏輯電路設(shè)計基礎(chǔ)教程》 3.《Verilog HDL與FPGA數(shù)字系統(tǒng)設(shè)計》 4.《Verilog HDL入門》 ———————————————— 版權(quán)聲明:本文為CSDN博主「JaysonRen」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/JaysonRen/article/details/82179137 |