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

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

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

3天內不再提示

Verilog HDL語言的數據類型和運算符

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-05-18 10:34 ? 次閱讀

1、標志符

標識符可以是一組字母、數字、下劃線和$符號的組合,且標識符的第一個字符必須是字母或者下劃線。另外,標識符區分大小寫。要注意的是Verilog HDL定義了一系列保留字作為關鍵字,但只要小寫的關鍵字才是保留字,所以對于不確定是否為保留字,可以將標識符首字母大寫。

2、數據類型

1、wire型

Verilog程序模塊中輸入、輸出信號類型默認時自定義為wire型。

wire型信號的定義格式如下:

wire[n-1:0] 數據名1,數據名2,...數據名N;

總共定義了N條線,每條線的位寬為n。

2、reg型

reg是寄存器數據類型的關鍵字,是數據存儲單元的抽象,通過賦值語句可以改變寄存器存儲的值。reg型數據常用來表示always模塊內的指定信號,在always塊內被賦值的每一個信號都必須定義為reg型。

reg型信號的定義格式如下:

wire[n-1:0] 數據名1,數據名2,...數據名N;

總共定義了N個寄存器變量,每條線的位寬為n。

3、memory型

Verilog通過對reg型變量建立數組來對存儲器建模,memory型通過擴展reg型數據的地址范圍來達到二維數組的效果。其定義的格式如下:

reg[n-1:0] 存儲器名 [m-1:0];

其中,reg[n-1:0]定義了每一個存儲器中每一個存儲單元的大小;存儲器后面的[m-1:0]則定義了存儲器的大小。

eg:reg [15:0] ROMA [7:0];

即定義了一個存儲位寬為16位,存儲深度為8的一個存儲器。

要注意的是,一個n位的寄存器可以在一條賦值語句中直接進行賦值,而一個完整的存儲器則不行。如果要對memory型存儲單元進行讀寫,則必須要指明地址。

4、parameter型

在Verilog HDL中用parameter來定義常量。

parameter型信號的定義格式如下:

parameter 參數名1=數據名1;

3、模塊端口

1、input:模塊從外界讀取數據的接口,在模塊內不可寫。

2、output:模塊往外界送出數據的接口,在模塊內不可讀。

3、inout:可讀取數據也可送出數據,數據可雙向流動。

4、常量集合

Verilog HDL有四種基本數值:

(1)0:邏輯0或“假”;

(2)1:邏輯1或“真”;

(3)x:未知;

(4)z:高阻。

1、整數

整數型可以按如下兩種方式書寫:簡單的十進制數格式及基數表示格式。

(1)簡單的十進制數格式

eg:45 -46

負數以補碼表示。

(2)基數表示格式

基數表示的整數格式為:

[長度]'基數 數值

eg:6'b9 5'o9 9'd6

2、實數

(1)十進制計數法

eg:2.0 16539.236

(2)科學計數法

eg:235.12e2 5e-4

其中,e與E相同。

3、字符串

字符串是雙引號內的字符序列,字符串不能分成多行書寫。字符串是8位ASCLL值的序列。

eg:reg[1:8*7]Char;

Char="counter"

5、運算符和表達式

1、基本算術運算符

包含:+、-、*、/、%

其中,取模運算(%)結果的符號位和模運算的第一個操作數的符號保持一致(按照無符號進行運算,再對結果添加符號)。

2、賦值運算符

賦值運算分為連續賦值和過程賦值兩種。

(1)連續賦值

連續賦值語句只能用來對線網型變量進行賦值,而不能對寄存器變量進行賦值,在實際使用時,有以下幾種應用:

I.對標量線網型賦值

wire a,b;

assign a=b;

II.對矢量線網型賦值

wire [7:0] a,b;

assign a=b;

III.對矢量線網型中的某一位賦值

wire [7:0] a,b;

assign a[3]=b[1];

IV.對矢量線網型中的某幾位賦值

wire [7:0] a,b;

assign a[3:0]=b[3:0];

V.對任意拼接的線網型賦值

wire a,b;

wire [1:0] c;

assign c={a,b};

(2)過程賦值

過程賦值主要用于兩種結構化模塊(initial模塊和always模塊)中的賦值語句,在過程塊中只能使用過程賦值語句,不能出現連續賦值語句。其中,賦值操作符有兩種:“=”和“<=”,分別代表阻塞賦值和非阻塞賦值。

過程賦值語句只能對寄存器類型的變量(reg、integer、real和time)進行操作。對于存儲器類型,只能對指定地址單元的整個字進行賦值,不能對其中某些位單獨賦值。

3、關系運算符

關系運算符共8種:>、>=、<、<=、==(邏輯相等)、!=(邏輯不相等)、===(實例相等)、!==(實例不相等)。

實例算子===和!==可以比較含有X和Z的操作數。

4、邏輯運算符

(1)&& 邏輯與

(2)|| 邏輯或

(3)!邏輯非

5、條件運算符

三目運算符,格式如下:

y = x ? a : b;

若第一個操作數y=x為True,算子返回第二個操作數a,否則返回第三個操作數b。

6、位運算符

按位進行邏輯運算,共有7中邏輯運算符:

~非、&與、|或、^異或、^~同或、~&與非、|~或非。

如果兩個操作數的長度不相等,將會對較短的數高位補零,使輸出結果的長度與位寬較長的操作數的長度保持一致。

7、移位運算符

左移<<一位相當于乘2,右移一位相當于除2.

s<

8、一元約簡運算符

單目運算符。其運算過程為:首先將操作數的第一位與第二位進行與、或、非運算;然后再將結果和第三位進行與、或、非運算,以此類推,直至最后一位。

eg:reg [3:0] s1;

reg s2;

s2=&s1;

審核編輯 :李倩

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

    關注

    31

    文章

    5336

    瀏覽量

    120232
  • Verilog
    +關注

    關注

    28

    文章

    1351

    瀏覽量

    110077

原文標題:Verilog HDL語言(1) : Verilog HDL語言的數據類型和運算符

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Verilog與VHDL的比較 Verilog HDL編程技巧

    理解。 VHDL :VHDL 的語法更接近于 Ada 語言,它是一種更正式的語言,具有豐富的數據類型和結構。VHDL 支持數據流、行為和結構化三種描述方式。 2. 可讀性和可維護性
    的頭像 發表于 12-17 09:44 ?119次閱讀

    邏輯異或運算符在Python中的用法

    在Python編程語言中,邏輯異或運算符并不直接作為一個內置的操作存在,因為Python更側重于高級編程和可讀性,并沒有直接提供異或運算符的簡寫形式用于邏輯
    的頭像 發表于 11-19 09:46 ?165次閱讀

    C語言指針運算符詳解

    在C語言中,當你有一個指向數組中某個元素的指針時,你可以對該指針執行某些算術運算,例如加法或減法。這些運算可以用來遍歷數組中的元素,如ptr[i]等價于*(ptr + i)。然而,如果你的操作使得指針指向了數組以外的位置(除了數
    的頭像 發表于 10-30 11:16 ?241次閱讀

    Verilog語法中運算符的用法

    verilog語法中使用以下兩個運算符可以簡化我們的位選擇代碼。
    的頭像 發表于 10-25 15:17 ?604次閱讀
    <b class='flag-5'>Verilog</b>語法中<b class='flag-5'>運算符</b>的用法

    FPGA編程語言的入門教程

    編程基礎 基本結構 Verilog程序的基本結構包括模塊(module)和端口(port)定義。每個模塊都有輸入(input)、輸出(output)和可能的雙向(inout)端口。 數據類型
    的頭像 發表于 10-25 09:21 ?238次閱讀

    Verilog HDL的基礎知識

    本文繼續介紹Verilog HDL基礎知識,重點介紹賦值語句、阻塞與非阻塞、循環語句、同步與異步、函數與任務語法知識。
    的頭像 發表于 10-24 15:00 ?340次閱讀
    <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>的基礎知識

    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運算符與優先級

    在C語言的學習過程中,運算符的使用是不可忽視的重要環節。本文將繼續深入探討C語言中的運算符,重點介紹位運算符、賦值
    的頭像 發表于 10-13 08:09 ?246次閱讀
    技術干貨驛站 ▏解鎖C<b class='flag-5'>語言</b>高效編程秘訣:深入解析<b class='flag-5'>運算符</b>與優先級

    技術干貨驛站 ▏深入理解C語言:編程高手必備,全方位解析運算符的核心技能!

    在C語言的編程領域中,運算符是實現數據處理與邏輯操作的關鍵工具。無論是在處理簡單的數值計算,還是在構建復雜的邏輯結構時,運算符的使用貫穿始終。作為編程
    的頭像 發表于 09-18 15:56 ?349次閱讀
    技術干貨驛站 ▏深入理解C<b class='flag-5'>語言</b>:編程高手必備,全方位解析<b class='flag-5'>運算符</b>的核心技能!

    c語言從右到左的運算符有哪些

    以下是一些主要的從右到左運算的C語言運算符: 函數調用運算符 ( () ):當您調用一個函數時,參數列表是從右到左進行求值的。 后置遞增運算符
    的頭像 發表于 08-20 11:39 ?903次閱讀

    TestStand表達式中常用的語法規則和運算符使用

    TestStand也有自己的語言嘛?在回答這個問題之前大家可以想一下在使用TestStand時有一個和語言密切相關的屬性。沒錯那就是表達式(Expressions),在這篇文章中,小編將以Q&A的方式來帶著大家來理解并熟悉TestStand表達式中較為常用的一些語法規則以
    的頭像 發表于 08-15 18:10 ?1355次閱讀
    TestStand表達式中常用的語法規則和<b class='flag-5'>運算符</b>使用

    技術干貨驛站 ▏深入理解C語言:基本數據類型和變量

    在C語言中,數據類型和變量是編程的基礎,也是理解更復雜概念的關鍵。數據類型決定了變量的內存分配、存儲范圍和操作方式,而變量則是存儲數據的容器。本篇文章將從基本
    的頭像 發表于 07-26 17:53 ?2094次閱讀
    技術干貨驛站 ▏深入理解C<b class='flag-5'>語言</b>:基本<b class='flag-5'>數據類型</b>和變量

    Golang為何舍棄三元運算符

    golang中不存在?:運算符的原因是因為語言設計者已經預見到三元運算符經常被用來構建一些極其復雜的表達式。雖然使用if進行替代會讓代碼顯得更長,但這毫無疑問可讀性更強。
    的頭像 發表于 04-03 15:13 ?693次閱讀

    鴻蒙TypeScript入門學習第5天:【TypeScript 運算符

    運算符用于執行程序代碼運算,會針對一個以上操作數項目來進行運算
    的頭像 發表于 04-01 16:18 ?486次閱讀
    鴻蒙TypeScript入門學習第5天:【TypeScript <b class='flag-5'>運算符</b>】

    C語言數據類型有哪些

    在 C 語言中,數據類型指的是用于聲明不同類型的變量或函數的一個廣泛的系統。變量的類型決定了變量存儲占用的空間,以及如何解釋存儲的位模式。
    發表于 03-20 10:56 ?469次閱讀
    C<b class='flag-5'>語言</b><b class='flag-5'>數據類型</b>有哪些

    西門子博途的算術表達式

    算術表達式既可以是一個數字值,也可以是由帶有算術運算符的兩個值或表達式組合而成。 算術運算符可以處理當前 CPU 所支持的各種數據類型。如果在該運算中有 2 個操作數,那么可根據以下條
    的頭像 發表于 01-24 11:36 ?1000次閱讀
    主站蜘蛛池模板: 亚洲精品理论电影在线观看| 在线精品视频成人网| 岛国大片在线观看免费版| 两百磅美女| 夜夜草导航| 国产一区免费在线观看| 天天躁日日躁狠狠躁AV麻豆| 朝鲜黄色录像| 欧美片内射欧美美美妇| 94色94色永久网站| 久久99热狠狠色一区二区| 亚洲 欧美 清纯 校园 另类| 97在线精品视频| 免费在线视频成人| 亚洲国产黄色| 大桥未久与黑人中出视频| 九九热国产视频| 午夜勾魂曲| 亚洲精品成人A8198A片漫画| 中文字幕视频在线观看| 芭乐视频免费资源在线观看| 国产露脸无码A区久久| 久久99re7在线视频精品| 免费精品国产人妻国语| 亚洲AV午夜精品麻豆AV| 蜜臀AV熟女人妻中文字幕| 久久re这里视频只精品首页| 亚洲高清一区二区三区电影| 国产亚洲欧美日韩综合综合二区| 天天插天天舔| 国产99久久九九免费精品无码| 日产精品久久久久久久蜜殿| 成人性视频全过程| 同房交换4p好爽| 国产色婷亚洲99精品AV在| 偷窥 亚洲 色 国产 日韩| 国产成人精品在视频| 无遮18禁在线永久免费观看挡| 国产亚洲精品成人a在线| 国产人妻人伦精品熟女麻豆| 亚洲国产精品久久精品成人网站|