chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

Verilog HDL語言的數(shù)據(jù)類型和運算符

FPGA之家 ? 來源:FPGA之家 ? 作者:FPGA之家 ? 2022-07-04 10:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、標(biāo)志符

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

2、數(shù)據(jù)類型

1、wire型

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

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

wire[n-1:0] 數(shù)據(jù)名1,數(shù)據(jù)名2,。..數(shù)據(jù)名N;

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

2、reg型

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

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

wire[n-1:0] 數(shù)據(jù)名1,數(shù)據(jù)名2,。..數(shù)據(jù)名N;

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

3、memory型

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

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 參數(shù)名1=數(shù)據(jù)名1;

3、模塊端口

1、input:模塊從外界讀取數(shù)據(jù)的接口,在模塊內(nèi)不可寫。

2、output:模塊往外界送出數(shù)據(jù)的接口,在模塊內(nèi)不可讀。

3、inout:可讀取數(shù)據(jù)也可送出數(shù)據(jù),數(shù)據(jù)可雙向流動。

4、常量集合

Verilog HDL有四種基本數(shù)值:

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

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

(3)x:未知;

(4)z:高阻。

1、整數(shù)

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

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

eg:45 -46

負數(shù)以補碼表示。

(2)基數(shù)表示格式

基數(shù)表示的整數(shù)格式為:

[長度]‘基數(shù) 數(shù)值

eg:6’b9 5‘o9 9’d6

2、實數(shù)

(1)十進制計數(shù)法

eg:2.0 16539.236

(2)科學(xué)計數(shù)法

eg:235.12e2 5e-4

其中,e與E相同。

3、字符串

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

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

Char=“counter”

5、運算符和表達式

1、基本算術(shù)運算符

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

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

2、賦值運算符

賦值運算分為連續(xù)賦值和過程賦值兩種。

(1)連續(xù)賦值

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

I.對標(biāo)量線網(wǎng)型賦值

wire a,b;

assign a=b;

II.對矢量線網(wǎng)型賦值

wire [7:0] a,b;

assign a=b;

III.對矢量線網(wǎng)型中的某一位賦值

wire [7:0] a,b;

assign a[3]=b[1];

IV.對矢量線網(wǎng)型中的某幾位賦值

wire [7:0] a,b;

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

V.對任意拼接的線網(wǎng)型賦值

wire a,b;

wire [1:0] c;

assign c={a,b};

(2)過程賦值

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

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

3、關(guān)系運算符

關(guān)系運算符共8種:》、》=、《、《=、==(邏輯相等)、!=(邏輯不相等)、===(實例相等)、!==(實例不相等)。

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

4、邏輯運算符

(1)&& 邏輯與

(2)|| 邏輯或

(3)!邏輯非

5、條件運算符

三目運算符,格式如下:

y = x ? a : b;

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

6、位運算符

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

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

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

7、移位運算符

左移《《一位相當(dāng)于乘2,右移一位相當(dāng)于除2.

s《《N表示左移N位,且都用0來填補移出的空位。

8、一元約簡運算符

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

eg:reg [3:0] s1;

reg s2;

s2=&s1;

原文標(biāo)題:Verilog HDL語言(1) : Verilog HDL語言的數(shù)據(jù)類型和運算符

文章出處:【微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5587

    瀏覽量

    128984
  • 運算符
    +關(guān)注

    關(guān)注

    0

    文章

    173

    瀏覽量

    11935
  • Verilog HDL
    +關(guān)注

    關(guān)注

    17

    文章

    126

    瀏覽量

    51320

原文標(biāo)題:Verilog HDL語言(1) : Verilog HDL語言的數(shù)據(jù)類型和運算符

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    C語言自動類型轉(zhuǎn)換

    是通過定義類型轉(zhuǎn)換運算來實現(xiàn)的。其一般形式為: (數(shù)據(jù)類型) (表達式) 其作用是把表達式的運算結(jié)果強制轉(zhuǎn)換成類型說明
    發(fā)表于 11-25 08:04

    C語言強制類型轉(zhuǎn)換

    強制類型轉(zhuǎn)換是通過定義類型轉(zhuǎn)換運算來實現(xiàn)的。其一般形式為: (數(shù)據(jù)類型) (表達式) 其作用是把表達式的運算結(jié)果強制轉(zhuǎn)換成
    發(fā)表于 11-24 06:32

    C語言宏拼接運算符典型使用

    在C語言中,##運算符(稱為[size=16.002px]標(biāo)記拼接運算符)用于宏定義中將兩個標(biāo)記(token)拼接成一個新的標(biāo)記。它在預(yù)處理階段處理,常用于動態(tài)生成變量名、函數(shù)名或類型
    發(fā)表于 11-20 08:27

    復(fù)雜的軟件算法硬件IP核的實現(xiàn)

    中的運算符有對應(yīng)關(guān)系。 結(jié)構(gòu)域負責(zé)將功能域中的各個基本功能單元按特定的順序和方式連接起來,通常被實現(xiàn)為一個由有限狀態(tài)機控制的數(shù)據(jù)通路,該結(jié)構(gòu)與C 語言的流程控制語句相對應(yīng)。 以一個簡單的加法組合邏輯為例
    發(fā)表于 10-30 07:02

    第4章 C語言基礎(chǔ)以及流水燈的實現(xiàn)(4.3 4.4)

    4.3 C語言基本運算符 小學(xué)數(shù)學(xué)學(xué)過加、減、乘、除等運算符號以及四則混合運算,而這些運算符號在C語言
    的頭像 發(fā)表于 10-29 15:30 ?170次閱讀

    使用Simulink自動生成浮點運算HDL代碼(Part 1)

    引言 想要實現(xiàn)浮點運算功能,如果自己寫Verilog代碼,需要花費較多的時間和精力。好在Simulink HDL Coder工具箱提供了自動代碼生成技術(shù)。下圖展示了HDL Coder如
    發(fā)表于 10-22 06:48

    SQL 通用數(shù)據(jù)類型

    SQL 通用數(shù)據(jù)類型 數(shù)據(jù)庫表中的每個列都要求有名稱和數(shù)據(jù)類型。Each column in a database table is required to have a name and a
    的頭像 發(fā)表于 08-18 09:46 ?564次閱讀

    《ESP32S3 Arduino開發(fā)指南》第三章 C/C++語言基礎(chǔ)

    基礎(chǔ),由于篇幅有限,在此僅對C/C++語言基礎(chǔ)進行簡單介紹。本章將分為如下9個小節(jié):3.1 數(shù)據(jù)類型3.2 運算符3.3 表達式3.4 數(shù)組3.5 字符串3.6 注釋3.7 順序結(jié)構(gòu)3.8 選擇結(jié)構(gòu)
    發(fā)表于 06-10 09:20

    新概念51單片機C語言教程入門、提高、開發(fā)、拓展全攻略

    1.6 單片機的C51基礎(chǔ)知識介紹 1.6.1 利用C語言開發(fā)單片機的優(yōu)點 1.6.2 C51中的基本數(shù)據(jù)類型 1.6.3 C51數(shù)據(jù)類型擴充定義 1.6.4 C51中常用的頭文件 1.6.5 C51
    發(fā)表于 04-15 13:57

    FPGA Verilog HDL語法之編譯預(yù)處理

    Verilog HDL語言和C語言一樣也提供了編譯預(yù)處理的功能。“編譯預(yù)處理”是Verilog HDL
    的頭像 發(fā)表于 03-27 13:30 ?1072次閱讀
    FPGA <b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>語法之編譯預(yù)處理

    一文詳解Verilog HDL

    Verilog HDL(Hardware Description Language)是一種硬件描述語言,用于從算法級、門級到開關(guān)級的多種抽象設(shè)計層次的數(shù)字系統(tǒng)建?!,F(xiàn)實生活中多用于專用集成電路
    的頭像 發(fā)表于 03-17 15:17 ?3730次閱讀
    一文詳解<b class='flag-5'>Verilog</b> <b class='flag-5'>HDL</b>

    必看!15個C語言常見陷阱及避坑指南

    ? C語言雖強大,但隱藏的“坑”也不少!稍不留神就會導(dǎo)致程序崩潰、數(shù)據(jù)異常。本文整理15個高頻陷阱,助你寫出更穩(wěn)健的代碼! ? 陷阱1:運算符優(yōu)先級混淆? 問題:運算符優(yōu)先級不同可能導(dǎo)
    的頭像 發(fā)表于 03-16 12:10 ?1356次閱讀

    全套C語言培訓(xùn)資料—PPT課件

    全套C語言培訓(xùn)資料,共427頁,13個章節(jié):C語言概述、程序的靈魂—算法、數(shù)據(jù)類型 & 運算符與表達式、順序程序設(shè)計、選擇結(jié)構(gòu)程序設(shè)計、循環(huán)控制、數(shù)組、函數(shù)、預(yù)處理命令、指針、
    發(fā)表于 03-12 14:50

    labview數(shù)據(jù)類型與PLC 數(shù)據(jù)類型之間的轉(zhuǎn)換(來自于寫入浮點數(shù)到匯川 PLC中的數(shù)據(jù)轉(zhuǎn)換關(guān)鍵的修改)

    為32位無符號整型U32 2、將U32拆分為兩個U16,分高低位寫入PLC 3、在PLC中,將低位寄存器設(shè)置為浮點數(shù)數(shù)據(jù)類型 4、結(jié)果:PLC中一直無法正確轉(zhuǎn)換。 原因及解決方法: 1、labview
    發(fā)表于 02-24 19:01

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

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