久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 10677|回復(fù): 1
收起左側(cè)

Verilog中19種數(shù)據(jù)類型介紹

[復(fù)制鏈接]
ID:419599 發(fā)表于 2018-11-2 12:11 | 顯示全部樓層 |閱讀模式
Verilog中共有19種數(shù)據(jù)類型。
基本的四種類型: reg型、wire型、integer型、parameter型。
其他類型:large型、medium型、small型、scalared型、time型、tri型、trio型、tril型、triand型、trior型、trireg型、vectored型、wand型和wor型。
14中數(shù)據(jù)類型除time外都與基本邏輯單元建庫(kù)有關(guān)。

A、常
1)數(shù)
整數(shù),整型常量即整常數(shù)有以下4種進(jìn)制表示形式:1)二進(jìn)制(bB);2)十進(jìn)制(dD);3)十六進(jìn)制(hH);4)八進(jìn)制(oO)。
數(shù)字表達(dá)式分為三種:
1)<位寬><進(jìn)制><數(shù)字>,這是最完整的形式。
2)<進(jìn)制><數(shù)字>,數(shù)字的位寬采用默認(rèn)位寬(不同的機(jī)器系統(tǒng)不同,至少32位)。
3)<數(shù)字>,采用默認(rèn)進(jìn)制(十進(jìn)制)。
示例:(位寬指的是時(shí)間所占位數(shù),而不是指十六進(jìn)制有幾位。如示例二,每一位十六進(jìn)制數(shù)字需要4位二進(jìn)制數(shù)字表示,所以2位十六進(jìn)制的位寬為8
8'b10101100    //位寬為8的二進(jìn)制數(shù)字10101100
8'ha2               //位寬為8的十六進(jìn)制數(shù)字a2
x值和z值:在數(shù)字電路中,x代表不定值,z代表高阻值。一個(gè)x可以定義十六進(jìn)制的4位,八進(jìn)制的3位。z的表示方式同x相同,另外z亦可以用來(lái)表示。(case塊中用得較多)
4'b10x0            //位寬為4的二進(jìn)制數(shù)從低位數(shù)起第二位為不定值
4'b101z            //位寬為4的二進(jìn)制數(shù)從低位數(shù)起第一位為高阻值
12'dz               //位寬為1210進(jìn)制數(shù),其值為高阻值(形式一)
12'd?               //位寬為1210進(jìn)制數(shù),其值為高阻值(形式二)
8'h4x               //位寬為8的十六進(jìn)制數(shù),其低4位為不定值
負(fù)數(shù):在位寬前面加一個(gè)減號(hào),減號(hào)必須在數(shù)字定義表達(dá)式的最前面。
-8'd5               //代表5的補(bǔ)數(shù)(采用8位二進(jìn)制表示)
下劃線:用于區(qū)別開數(shù)字的表達(dá)式以提高程序的可讀性。不能用在位寬和進(jìn)制的地方,只能用在數(shù)字之間(數(shù)字前也不可以)。
16'b1010_1011_1111_1010    //合法形式
常量未加標(biāo)志時(shí),默認(rèn)為32位的十進(jìn)制數(shù),字母用八位的ASCII值表示。
"AB"=16'b01000001_01000010            //字符串AB,為十六進(jìn)制數(shù)16'h4142


2)參數(shù)型(parameter
parameter來(lái)定義一個(gè)標(biāo)志符代表一個(gè)常量,稱作符號(hào)常量,他可以提高程序的可讀性和可維護(hù)性。parameter是參數(shù)型數(shù)據(jù)的關(guān)鍵字,在每一個(gè)賦值語(yǔ)句的右邊都必須是一個(gè)常數(shù)表達(dá)式。即該表達(dá)式只能包含數(shù)字或先前已經(jīng)定義的參數(shù)。
parameter    msb=7;                 //定義參數(shù)msb=7
parameter    r=5.7;                   //定義r為一個(gè)實(shí)型參數(shù)5.7
parameter    byte_size=8,byte_msb=byte_size-1;        //利用常數(shù)表達(dá)式賦值
參數(shù)型常量經(jīng)常用于定義延遲時(shí)間和變量寬度。在模塊和實(shí)例引用時(shí),可以通過(guò)參數(shù)傳遞改變?cè)诒灰媚K或?qū)嵗幸呀?jīng)定義的參數(shù)。
本書(1)(p31)介紹了兩種方法:
1)引用實(shí)例時(shí),通過(guò)參數(shù)的傳遞來(lái)改變已經(jīng)定義的參數(shù)值。   Decode   #4,0 D1A4F16
2)在多層次的模塊中,改變參數(shù)需要使用defparam命令。     defparam  Test.T.B1.P=2        //TestTB1分別是高層模塊中的底層模塊實(shí)例。
B、變
  網(wǎng)絡(luò)數(shù)據(jù)類型表示結(jié)構(gòu)實(shí)體之間的物理連接。網(wǎng)絡(luò)數(shù)據(jù)類型的變量不能儲(chǔ)存數(shù)值,而且必須受到驅(qū)動(dòng)器(門或連續(xù)賦值語(yǔ)句assign)的驅(qū)動(dòng)。
1wire型,默認(rèn)為高阻值z
網(wǎng)絡(luò)數(shù)據(jù)類型包括 wire tri 數(shù)據(jù)。
wire用于表示單個(gè)門驅(qū)動(dòng)或者連續(xù)賦值語(yǔ)句驅(qū)動(dòng)的網(wǎng)絡(luò)數(shù)據(jù)類型;
tri型則用來(lái)表示多驅(qū)動(dòng)器驅(qū)動(dòng)的網(wǎng)絡(luò)型數(shù)據(jù)。
如果沒(méi)有定義wiretri的邏輯強(qiáng)度,在多驅(qū)動(dòng)元的情況下邏輯值會(huì)發(fā)生沖突,從而產(chǎn)生不確定值。(z的優(yōu)先級(jí)最低,x的優(yōu)先級(jí)最高)
  
  
  
wire / tri
  
  
0
  
  
1
  
  
x
  
  
z
  
  
0
  
  
0
  
  
x
  
  
x
  
  
0
  
  
1
  
  
x
  
  
1
  
  
x
  
  
1
  
  
x
  
  
x
  
  
x
  
  
x
  
  
x
  
  
z
  
  
0
  
  
1
  
  
x
  
  
z
  
wire經(jīng)常用來(lái)表示以assign為關(guān)鍵字的組合邏輯信號(hào)。Verilog程序模塊中輸入輸出的信號(hào)類型默認(rèn)時(shí)自動(dòng)定義為wire型。參數(shù)定義格式如下;
wire [n-1,0] 數(shù)據(jù)名1,數(shù)據(jù)名2...數(shù)據(jù)名i         //表示共有 i 條總線,每臺(tái)總線內(nèi)有n條線路。或者 wire [n,1] 數(shù)據(jù)名1,數(shù)據(jù)名2...數(shù)據(jù)名i
[n-1,0] [n,1] 表示該數(shù)據(jù)的位寬為n。如:
wire     a           //定義了1個(gè)1位的wire數(shù)據(jù)
wire   [7,0] b;       //定義了1個(gè)8位的wire數(shù)據(jù)
wire   [4,1] a,b;    //定義了2個(gè)4位的wire數(shù)據(jù)

2reg型,默認(rèn)為不定值x
寄存器是存儲(chǔ)單元的抽象,寄存器數(shù)據(jù)類型的關(guān)鍵字是reg。常用來(lái)表示always模塊內(nèi)的指定信號(hào),代表觸發(fā)器。在always模塊內(nèi)被賦值的每一個(gè)信號(hào)都必須定義成reg型。格式與wire型類似:
reg [n-1,0] 數(shù)據(jù)名1,數(shù)據(jù)名2...數(shù)據(jù)名i
reg [n,1]  數(shù)據(jù)名1,數(shù)據(jù)名2...數(shù)據(jù)名i
reg數(shù)據(jù)可以賦正值,也可以賦負(fù)值。但是當(dāng)一個(gè)reg數(shù)據(jù)是一個(gè)表達(dá)式的操作式時(shí),它的值被當(dāng)做無(wú)符號(hào)值,即正值。如:4位的reg被賦值為-1,在表達(dá)式中為+15.
reg型只是表示被定義的信號(hào)將被用在always模塊中,并不是說(shuō)reg型數(shù)據(jù)就一定是存儲(chǔ)器或觸發(fā)器的輸出。

3memory型(特殊的reg
Verilog中通過(guò)對(duì)reg數(shù)據(jù)建立數(shù)組來(lái)對(duì)存儲(chǔ)器進(jìn)行建模,用來(lái)買哦書RAMROMreg文件。verilog中沒(méi)有多維數(shù)組存在,memory型數(shù)據(jù)是通過(guò)擴(kuò)展reg型數(shù)據(jù)的地址范圍實(shí)現(xiàn)的。存儲(chǔ)器的地址索引必須是常數(shù)表達(dá)式(n-1m-1等必須是常量,符號(hào)常量也可以)。如:
reg     [n-1,0] 存儲(chǔ)器名[m-1,0];
reg     [n-1,0] 存儲(chǔ)器名[m,1];
在這里[n-1,0]定義了存儲(chǔ)器中每一個(gè)存儲(chǔ)單元的大小,即n位寄存器。存儲(chǔ)器名后面的[m-1,0],表示定義的存儲(chǔ)器中有多少個(gè)這樣的寄存器。
reg    [7,0] mem[255,0];           //256個(gè)8位寄存器的存儲(chǔ)器mem
reg    [n-1,0] rega;                   //一個(gè)n位的寄存器
reg    mema[n-1,0]                   //n個(gè)1位的寄存器形成的存儲(chǔ)器
rega = 0;                                //合法,對(duì)n位的寄存器賦值位0
mema = 0;                              //非法,不能對(duì)完整的存儲(chǔ)器直接賦值
mema[3] = 0;                        //合法,將mema中第三個(gè)存儲(chǔ)單元賦值為0


完整的Word格式文檔51黑下載地址:
新建 Microsoft Word 文檔 (4) - 副本.docx (21.51 KB, 下載次數(shù): 20)



回復(fù)

使用道具 舉報(bào)

ID:298593 發(fā)表于 2020-6-6 16:52 | 顯示全部樓層
數(shù)了數(shù),一共18種,還有一種是被吞了嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩av一区二区在线观看 | 一级做a爰片性色毛片16 | 久久久久久亚洲国产精品 | 亚洲精品一区二区网址 | 久草网址| 一级做a| 精品国产一区二区三区观看不卡 | 毛片免费视频 | 国产精品久久久久久久久久久久久久 | 在线一区二区国产 | 国产精品久久久久久吹潮 | 91在线视频播放 | 中文字幕在线观看av | 日本三级日产三级国产三级 | 国产亚洲一区二区三区 | 黄色在线观看 | 午夜影院网站 | 黄色大片免费网站 | 99久久久久久 | 国产电影一区二区 | 日日夜精品视频 | 亚洲欧美中文日韩在线v日本 | 久久亚洲精品视频 | 精品国产一区二区三区日日嗨 | 日韩欧美国产一区二区三区 | 成人国产精品久久 | 国产精品久久久爽爽爽麻豆色哟哟 | 精品一区二区三区四区外站 | 日本精品久久久一区二区三区 | 夜夜草导航 | 成人国产精品久久 | 蜜桃特黄a∨片免费观看 | 成人性视频在线 | 成人av免费 | 欧美成视频在线观看 | 色婷婷综合久久久中字幕精品久久 | 亚洲视频在线一区 | 欧美一区二区三区在线观看 | 国产一区二区三区在线 | 成人久久一区 | 婷婷色在线 |