日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

verilog设置24进制计数器_阅读笔记:《Verilog HDL入门》第3章 Verilog语言要素

發(fā)布時(shí)間:2023/12/10 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 verilog设置24进制计数器_阅读笔记:《Verilog HDL入门》第3章 Verilog语言要素 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

3.1標(biāo)識(shí)符

1.Verilog中的Identifier是由任意字母、數(shù)字、下劃線和$符號(hào)組成的,第一個(gè)字符必須是字母或者下劃線。區(qū)分大小寫(xiě)。

2.Escaped Identifier是為了解決簡(jiǎn)單標(biāo)識(shí)符不能以數(shù)字和$符號(hào)開(kāi)頭的缺點(diǎn)。如下所示:

3.關(guān)鍵字。我的理解是保留字包括關(guān)鍵字,verilog中關(guān)鍵字都是小寫(xiě)的。

3.2注釋

  • /* */
  • 2. //

    3.3格式

    語(yǔ)句結(jié)構(gòu)既可以跨越多行編寫(xiě),也可以在一行內(nèi)編寫(xiě)。

    3.4系統(tǒng)任務(wù)和系統(tǒng)函數(shù)

    以$開(kāi)頭的標(biāo)識(shí)符被認(rèn)為是系統(tǒng)任務(wù)或者系統(tǒng)函數(shù)。任務(wù)可以返回0個(gè)或者多個(gè)值,函數(shù)只能返回一個(gè)值。函數(shù)的執(zhí)行不允許由任何延遲,任務(wù)可以有延遲。但是系統(tǒng)任務(wù)不能有延遲。簡(jiǎn)單做個(gè)測(cè)試,但是發(fā)現(xiàn)控制臺(tái)沒(méi)有輸出。

    3.5編譯器指令

    某些以`(反引號(hào))開(kāi)頭的標(biāo)志符是編譯器指令。

    1. `define和`undef指令:宏定義以及取消前面的宏。

    2.`ifdef、`ifndef、`else、`elseif和`endif:條件編譯。

    3.`default_nettype:該指令用于為隱式線網(wǎng)指定線網(wǎng)類(lèi)型。

    4.`include:可以包含其他文件的內(nèi)容(替換的方式)。絕對(duì)路徑和相對(duì)路徑都可以。

    5.`resetall:將所有的編譯指令重新設(shè)置為缺省值。

    6.`timescale:一般放在模塊聲明的外部,影響其后所有的延遲值。直到遇到另一個(gè)`timescale指令或者`resetall指令。

    3.6值集合

    Verilog中有四種基本值:0,1,x,z。其中x、z是不區(qū)分大小寫(xiě)的。這四種基本值構(gòu)成了Verilog語(yǔ)言中3種類(lèi)型的常數(shù):Integer、Real和String。下劃線可以自由地在整數(shù)中或者實(shí)數(shù)中使用,用來(lái)改進(jìn)常量的易讀性。

    3.6.1整數(shù)型

    1.簡(jiǎn)單的十進(jìn)制:+、-這兩個(gè)操作符只能作用于十進(jìn)制,不能作用于其他進(jìn)制。

    2.基數(shù)格式表示法:

    [size] '[signed] base value

    基數(shù)格式的數(shù)通常為無(wú)符號(hào)數(shù)。若某整型數(shù)的位寬沒(méi)有定義,則默認(rèn)是32位的。無(wú)符號(hào)數(shù)在左邊補(bǔ)零,有符號(hào)數(shù)在左邊補(bǔ)符號(hào)位。若數(shù)的最左邊是x或者z,則補(bǔ)x或z。

    base是必須要有的。

    3.6.2實(shí)數(shù)

    1.十進(jìn)制:小數(shù)點(diǎn)兩側(cè)必須有數(shù)字。

    2.科學(xué)計(jì)數(shù)法:23_5.1e2。

    Verilog將實(shí)數(shù)隱式地轉(zhuǎn)換成整數(shù)。

    3.6.3字符串

    字符串是雙引號(hào)括起的字符序列。字符串是8位ASCII值的序列。

    3.7數(shù)據(jù)類(lèi)型

    Verilog有兩大數(shù)據(jù)類(lèi)型:Net Type和Variable Type。

    3.7.1線網(wǎng)類(lèi)型

    關(guān)于這部分,多個(gè)激勵(lì)源驅(qū)動(dòng)的線網(wǎng),線網(wǎng)的值有效值由表決定。

    3.7.2未聲明的線網(wǎng)

    3.7.3向量線網(wǎng)和標(biāo)量線網(wǎng)

    3.7.4變量類(lèi)型

    1.reg變量類(lèi)型

    使用了關(guān)鍵詞signed的reg變量,會(huì)以補(bǔ)碼的形式保存。

    2.存儲(chǔ)器

    存儲(chǔ)器是由reg變量組成的數(shù)組。存儲(chǔ)器聲明格式如下:

    reg[[msb : lsb]] memory1[upper1 : lower1], ...;

    存儲(chǔ)器中的每一個(gè)元素被稱(chēng)為字,對(duì)存儲(chǔ)器賦值可以分別對(duì)存儲(chǔ)器中的每個(gè)字進(jìn)行賦值。文中提到了使用for循環(huán)對(duì)存儲(chǔ)器進(jìn)行賦值。還可以使用$readmemb和$readmemh這兩個(gè)函數(shù)對(duì)存儲(chǔ)器進(jìn)行賦值。

    3.整型變量

    整型變量的聲明格式如下所示:

    integer integer1, integer2, ... integerN[msb : lsb];

    [msb : lsb]指定了整型數(shù)組的范圍。一個(gè)整形數(shù)至少有32位。

    整型能被當(dāng)作向量處理。可以通過(guò)賦值將整數(shù)型轉(zhuǎn)換為位向量。

    4.time變量

    5.real和realtime變量

    3.7.5數(shù)組

    看一下二維數(shù)組的聲明:

    integer

    一維reg變量的數(shù)組也被稱(chēng)為存儲(chǔ)器。不能對(duì)整個(gè)數(shù)組進(jìn)行賦值。只能對(duì)數(shù)組的一個(gè)元素進(jìn)行賦值。

    3.8參數(shù)

    參數(shù)聲明語(yǔ)句的格式如下:

    parameter [signed][msb : lsb] param1 = const_expr,...;

    參數(shù)值在編譯的時(shí)候可以使用defparam進(jìn)行改變。參數(shù)是局部的,只能在其定義的模塊內(nèi)部其作用,而宏定義對(duì)同時(shí)編譯的多個(gè)文件起作用。

    創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

    總結(jié)

    以上是生活随笔為你收集整理的verilog设置24进制计数器_阅读笔记:《Verilog HDL入门》第3章 Verilog语言要素的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。