色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Verilog基本語法之數據類型

jf_GctfwYN7 ? 來源:IC修真院 ? 2023-06-18 10:52 ? 次閱讀

數據類型及常量、變量

數據類型

數據類型是用來表示數字電路中的數據存儲和傳送單元

4種基本的數據類型

integer(整形)

parameter類型

reg

wire(線網)

常量

在程序運行的過程中,其值不允許被改變

包括:

數字(包括整形,x和z值,負數)

parameter常量(或稱符號常量)

1. 整數型常量

二進制 (b/B)

十進制 (d/D)

十六進制 (h/H)

八進制 (o/O)

整常數的3種表達方式

<位寬>'<進制><數字> 完整的表達方式 8'11000101或 8'hc5
<進制><數字> 缺省位寬,有機器系統決定,至少32位 hc5
<數字> 缺省進制為十進制,位寬默認為32位 197
表達方式 說明 舉例

注:位寬表示二進制時的寬度

2.x和z值

x表示不定值(8'b1001xxxx或8’h9x);

z表示高阻值(8'b1001zzzz或8’h9z);

每個字符代表的二進制的寬度取決于所用的進制;

當用二進制表示時,以表明位寬的數若用x或者z表示某些位,則只有在最左邊的x或z具有擴展性例如:8'bzx = 8'bzzzz_zzzx 8'b1x = 8'b0000_001x

?是z的另一種表示符號,建議在case語句中使用?表示高阻態z。

casez (select)
    4'h???1: out=a;
    4'h??1?: out=b;
    4'h?1??: out=c;
    4'h1???: out=d;
endcase

3.負數

在位寬前邊加一個負號,表示負數;

如:-8’d5 //5的補數 =8'11111011

負號不能放在位寬和進制之間,也不能放在進制和數字之間

4.parameter常量(符號常量)

用parameter來定義一個標示符,代表一個常量,稱為符號常量

格式:

parameter 參數名1 = 表達式, 參數名2 = 表達式

parameter 參數型數據的確認符,后邊的為賦值語句表

每個賦值語句的右邊必須為常數表達式,且只能包含數字或先前定義過的符號常量:

parameter addrwidth =16; //合法

parameter addrwidth = addrwidth * 2 //非法

常用參數來定義延時時間和變量寬度

可用字符串表示的任何地方,都可用定義的參數來代替;

參數是本地的,其定義只在本模塊有效;

在模塊或實例例化時,可通過參數傳遞改變在被引用模塊或實例中已定義的參數

localparam 符號常量

格式:

localparam 參數名1 = 表達式, 參數名2 = 表達式;

localparam 參數型數據的確認符,后邊的為賦值語句表

parameter可作為在頂層模塊中例化底層模塊時傳遞參數的接口

localparam的作用域僅僅限于當前module,不能作為參數傳遞的接口;

實例:

module mod (out, ina, inb);
...
parameter cycle = 8, real_cinstant = 2.039;
...
endmodule 




module test;
...
mod #(6,3.19) mk(out,ain,bin); //對mod模塊的實例引用及參數的傳遞
...
endmodule

變量

在程序運行過程中,其值可以改變的量,稱為變量;

常用的有3種:

網絡型(nets)

寄存器型(register)

數組(memory)

1.net型變量

輸出始終隨輸入的變化二變化的變量(表示結構實體之間的物理連接)

常用的net變量為wire。

wire型變量

最常用的nets型變量,常用來表示以assign語句賦值的組合邏輯信號

模塊中的輸入/輸出信號類型缺省為wire型

可用做任何方程式的輸入,或“assign”語句和實例元件的輸出。

2.register 型變量

對應具有狀態保持作用的電路元件(如觸發器,寄存器)

常用來表示過程塊語句(initial always,task,function)內的指定信號

常用register型變量:

reg:常代表觸發器

integer:32位帶符號整數型變量

real:64位帶符號實數型變量

time:無符號時間變量

register變量與net變量的根本區別:register變量要被明確的賦值,并且在被重新賦值前一直保持原值

register變量必須通過過程語句塊賦值,不能使用assign語句塊賦值

在過程語句塊內賦值的每個信號必須定義成register型。

reg型變量

在過程塊中被賦值的信號,往往代表觸發器,但不一定就是觸發器(也可以是組合邏輯信號)

· reg與wire的區別:

//reg型變量既可以生成觸發器,也可以生成組合邏輯
//wire型變量只能生成組合邏輯


//用reg變量生成組合邏輯


module rw1(a,b,out1,out2);
input   a,b;
output  out1, out2;
reg     out1;
wireout2;


assign out2 = a;   //連續賦值語句
always @(b)        //電平觸發
       out1 <=~b;  //過程賦值語句
endmodule?


//用reg變量生成觸發器


module rw2(clk,d,out1,out2);
input   clk,d;
output  out1, out2;
reg     out1;
wire????out2;


assign out2 = d & ~out1;   //連續賦值語句
always @(posedge clk)        //邊沿觸發
     begin
       out1 <= d;  //過程賦值語句
 end
endmodule 

· 邊沿觸發和電平觸發的區別:

邊沿觸發:posedge定義為上升沿觸發,只有在后面信號由低變高的時候才觸發,negedge正好相反,為下降沿觸發。

電平觸發:當敏感信號發生變化是觸發

3.memory型變量——數組

有若干個相同寬度的reg向量構成的數組

Verilog 通過reg型變量簡歷數組來對存儲器建模

memory型變量可描述RAM,ROM和reg文件

memory型變量通過擴展reg型變量的地址范圍來生成

reg [n-1:0] 存儲器名[m-1:0]; 每個存儲單元位寬為n,共有m個存儲單元

例:

reg [n-1:0] rega; //一個n位的寄存器;

reg mema [n-1:0] ; //n個一位寄存器組成的存儲器

賦值方式不同:

一個n位的寄存器可用一條賦值語句賦值,一個完整的存儲器則不行,若要對某存儲器中的存儲單元進行讀寫操作,必須指明該單元在存儲器中的地址!

例:

rega=0; //合法賦值語句

mema=0; // 非合法賦值語句

mema[8]=1;//合法賦值語句

mema[1023:0]=0; //合法賦值語句





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    31

    文章

    5336

    瀏覽量

    120232
  • ROM
    ROM
    +關注

    關注

    4

    文章

    563

    瀏覽量

    85733
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1368

    瀏覽量

    114647
  • 觸發器
    +關注

    關注

    14

    文章

    2000

    瀏覽量

    61132
  • Verilog語言
    +關注

    關注

    0

    文章

    113

    瀏覽量

    8224

原文標題:IC學霸筆記 | Verilog基本語法之數據類型

文章出處:【微信號:IC修真院,微信公眾號:IC修真院】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    玩轉SQLite7:基本語法數據類型

    前面幾篇文章已經快速了解了SQLite的基本用法以及簡單的Pyhton與C語言的API函數的使用。本篇再來全面介紹下SQLite的基本語法數據類型
    的頭像 發表于 09-26 09:07 ?1774次閱讀
    玩轉SQLite7:基本<b class='flag-5'>語法</b>與<b class='flag-5'>數據類型</b>

    vhdl與verilog語法比較

    VHDL與verilog 的比較1vhdl語法要求嚴格 如賦值的數據類型必須一致, 左邊為整數,右邊必須也為整數, 左邊為矢量右邊必須也為矢量左右的數據的 位寬必須也一致,例如: li
    發表于 05-30 15:12

    【FPGA學習】Verilog HDL 語言的標識符和數據類型有哪些?

    例子:PieroPIERO / /與 Piero 不同。_a1_b2c00_68ABC$Verilog HDL 有兩大類數據類型:? 線網類型,表示 Verilog HDL 結構化元件
    發表于 09-19 09:36

    Verilog 變量聲明與數據類型

    Verilog 變量聲明與數據類型二上節介紹了wire,reg數據類型及其用法,并對變量定義中的向量的定義及使用做了說明。本節主要介紹其它幾種類型。常用的有如下幾種:整數integer
    發表于 08-06 09:21

    Verilog 變量聲明與數據類型

    Verilog 變量聲明與數據類型Verilog語法中最基本的數據類型有 線網(wire),寄存器(reg)和整數(integer)三種
    發表于 08-10 14:01

    ARM數據類型有哪些?

    ARM數據類型有哪些?GNU ARM匯編語法格式是什么?
    發表于 11-30 06:09

    vhdl數據類型

    VHDL中的標識符可以是常數、變量、信號、端口、子程序或參數的名字。VHDL中的數據類型可以分成四大類: 標量型(SCALAR TYPE):屬單元素的最基本的數據類型,通常用于描述一個單值數據對象
    發表于 03-30 15:59 ?11次下載

    KEIL-MDK和STM32的數據類型-入門篇pdf資料下載

    數據類型-入門篇
    發表于 04-14 10:50 ?7次下載
    KEIL-MDK和STM32的<b class='flag-5'>數據類型</b>-<b class='flag-5'>之</b>入門篇pdf資料下載

    Struct結構數據類型

    Struct類型是一種由多個不同數據類型元素組成的數據結構,其元素可以是基本數據類型,也可以是Struct、數組等復雜數據類型以及PLC
    的頭像 發表于 07-25 17:02 ?3012次閱讀

    結構數據類型(Struct)及應用案例

    Struct數據類型使用非常靈活,隨時可以使用,但是相對于PLC數據類型 (UDT) 有以下缺點,所以建議需要使用Struct類型時,可以使用PLC數據類型(UDT)代替。
    的頭像 發表于 07-27 16:10 ?1797次閱讀

    什么是數據類型轉換

    常用的3種數據類型:1、Python數據類型第一種:字符串(str)。 2、Python數據類型第二種:整數(int)。 3、Python數據類型第三種:浮點數(float)。
    的頭像 發表于 02-23 15:21 ?1773次閱讀

    定義數據類型

    在運算之前我們必須首先定義出數據類型,定義出腳本支持的數據類型,這是運算的基礎。 這一小節我們將定義出數據類型,在這里我們暫時定義四個數據類型:
    的頭像 發表于 03-03 10:10 ?937次閱讀

    Verilog中的基本數據類型

    本文將討論 verilog 中常用的數據類型,包括對數據表示、線網類型、變量類型和數組,分享一下使用方法和注意事項。
    的頭像 發表于 05-12 17:43 ?8950次閱讀
    <b class='flag-5'>Verilog</b>中的基本<b class='flag-5'>數據類型</b>

    Verilog最常用的2種數據類型

    Verilog 最常用的 2 種數據類型就是線網(wire)與寄存器(reg),其余類型可以理解為這兩種數據類型的擴展或輔助。
    的頭像 發表于 05-29 16:27 ?2312次閱讀
    <b class='flag-5'>Verilog</b>最常用的2種<b class='flag-5'>數據類型</b>

    plc數據類型怎么理解和應用

    PLC(可編程邏輯控制器)是一種工業自動化設備,用于控制機械和工業過程。在PLC編程中,數據類型是非常重要的概念,因為它決定了程序中數據的存儲和處理方式。正確理解和應用PLC數據類型是編寫有效、可靠
    的頭像 發表于 12-19 11:39 ?4202次閱讀
    主站蜘蛛池模板: 免费成年人在线视频| 日本漫画大全无翼乌| a视频免费看| 亚洲涩福利高清在线| 日本高清免费在线| 玖玖爱在线播放| 国内精品日本久久久久影院 | 国产午夜在线观看视频| 91精品国产色综合久久不| 亚洲精品视频区| 伊人AV一区二区三区夜色撩人| 亚洲精品拍拍央视网出文| 男人j进女人j一进一出| 麻豆区蜜芽区| 里番acg纲手的熟蜜姬训练场| 国产欧美日韩视频怡春院| 粉嫩极品国产在线观看| 被室友C哭调教双性| 北条麻妃快播| 俄罗斯女人Z0ZOZO| 把腿张开老子CAO烂你动态图 | 久草在在线免视频在线观看| 国产强奷伦奷片| 国产亚洲精品久久久久久一区二区| 国产SUV精品一区二区883| 成人国产精品免费网站| 岛国片在线看| 国产成人综合在线观看网站| 国产AV午夜精品一区二区入口| 成人小视频免费在线观看| 俄罗斯女人与马Z00Z视频| 国产高清精品国语特黄A片 | 野花日本大全免费高清完整版| 亚洲欧美日韩另类精品一区二区三区| 亚洲欧洲日韩天堂无吗| 在教室轮流被澡高H林萌| 成人在线免费观看| 国产精品久久人妻无码蜜| 夫外出被公侵犯日本电影| 99久久99久久久精品齐齐鬼色| 一级毛片皇帝 宫女|