国产精品免费无遮挡无码永久视频-国产高潮视频在线观看-精品久久国产字幕高潮-国产精品99精品无码视亚

自學FPGA:Verilog基本語法規則(一)

發布時間:2020-3-15 14:54    發布者:dameihuaxia
1.詞法規定
  1.1間隔符
  (類似于C語言

  1.2標識符和關鍵詞
      標識符:英文字母、數字、$符和下劃線組成(首字符必須為英文字母或下劃線)。

      轉義標識符:如:\***。

2.四種邏輯值
0        邏輯0、邏輯假
1        邏輯1、邏輯真
x或X        不確定值(未知邏輯狀態)
z或Z        高阻態
3.八種強度值
                                                                        最強————>最弱
強度等級名稱        supply        strong       
pull

large        weak        medium        small        highz
類型        驅動        驅動        驅動        存儲        驅動        存儲        存儲        高阻抗
4.常量及其表示
  4.1整數型表示
    格式:   

<+/- size>'
  例如:

3'b101          //3位二進制數101
5'o37           //5位八進制數37
8'b1001_1100    //八位二進制數,等同于8'b10011100
  注意:在這里的‘_’無實際意義,可以隨便在整數或實數中使用,方便讀數。



  4.2實數型常量
(實數通過四舍五入轉換為整數)

  例如:

  42.45轉換為整數42; 92.5,92.699轉化為93;-15.62轉換為-16.  



  4.3字符串常量
(每個字符串包括空格都被看做8位的ACSII值序列)

  例如:

  存儲字符串"FPGA"就需要定義一個8*4位的變量。

reg [8*4:1] messsage;
initial begin
    message = "FPGA";
end
  對于初學者來說,reg、initial這些請無視掉,只用了解這個格式就行。



  4.4參數語句
  格式:

parameter
    param1 = xxxx,
    param2 = xxxx,
    ......;
  parameter聲明的符號常量常量通常出現在module(模塊)內部,參數常用于指令yan'延遲、變量的wei'位寬和狀態值de等(類似于C語言的局部參數)

  補:define是宏定義,通常放在module外部,改常量是一個全局變量。

  localparam(局部參數)是模塊內部參數(無傳遞,類似于C語言的函數內部參數)。

  5.數據類型
  5.1線網類型
  wire、tri(wire為一般連線;tri為驅動的線網);

  wor、trior(一個線網被多個信號驅動qing情況);

  wand、triand(一個線網被多個信號驅動qing情況);

  trireg(電荷保持特性);

  tri1(上拉電阻);

  tri0(下拉電阻);

  supply1(電源建模、高點平);

  supply0(對地建模、低電平)。



  線網變量聲明:

<[msb:lsb]>變量1,2,3,...,n;
  例如:

wire A,B;                //兩個1位wire類型的變量
wire [7:0] Databus;      //Databus位8位向量的wire變量
supply0 logic_0,vss;     //‘地’
supply1 logic_1,vdd;     //‘電源線’
  建議別對同一變量多次賦值。



  5.2寄存器類型
(只能在initial或always塊內部被賦值)

  reg、integer、time未賦值前為x;

  real、realtime默認值是0.

  reg:寄存器變量,默認值是x

  格式

reg <[msb:lsb]> 變量1,2,3,...,n;
  例如:

reg clock,a;      //1位的reg型變量clock,a;
reg [3:0] cnt;    //4位的reg型變量cnt,等效于:cnt[3],cnt[2],cnt[1],cnt[0];
  integer:整數型寄存器變量

  (變量保持的是整數值)

  格式:

integer 1,2,3,...,n<[msb:lsb]>;
  例如:

integer A,B,C;         //3個整數型變量;
integer HINT[3:0];     //一個由四個整數變量組成的數組;
  tiem型變量主要用于存儲和處理仿真時間

time 1,2,3,...,n [msb:lsb]
  reale和realtime變量通產用于對實數型產量常量進行存儲和運算,實數不能定義范圍,默認值是0

real 1,2,3,...,n;          //實型變量聲明
realtime 1,2,3,...,n;      //實型時間變量聲明
  參考文獻
  1.《FPGA自學筆記——設計與驗證》

  2.《可編程邏輯電路設計基礎教程》

  3.《Verilog HDL與FPGA數字系統設計》

  4.《Verilog HDL入門》
————————————————
版權聲明:本文為CSDN博主「JaysonRen」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/JaysonRen/article/details/82179137

本文地址:http://www.4huy16.com/thread-579067-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • Microchip第22屆中國技術精英年會上海首站開幕
  • Microchip第22屆中國技術精英年會——采訪篇
  • 常見深度學習模型介紹及應用培訓教程
  • 技術熱潮席卷三城,2025 Microchip中國技術精英年會圓滿收官!
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表