Verilog HDL操作數(shù)
出處:ycool 發(fā)布于:2007-04-29 10:14:09
1) 常數(shù)
2) 參數(shù)
3) 線網(wǎng)
4) 寄存器
5) 位選擇
6) 部分選擇
7) 存儲器單元
8) 函數(shù)調(diào)用
4.1.1 常數(shù)
前面的章節(jié)已講述了如何書寫常量。下面是一些實例。
256,7 //非定長的十進(jìn)制數(shù)。
4'b10_11, 8'h0A //定長的整型常量。
'b1, 'hFBA //非定長的整數(shù)常量。
90.00006 //實數(shù)型常量。
"BOND" //串常量;每個字符作為8位ASCII值存儲。
表達(dá)式中的整數(shù)值可被解釋為有符號數(shù)或無符號數(shù)。如果表達(dá)式中是十進(jìn)制整數(shù),例如,12被解釋為有符號數(shù)。如果整數(shù)是基數(shù)型整數(shù)(定長或非定長),那么該整數(shù)作為無符號數(shù)對待。下面舉例說明。
12是01100的5位向量形式(有符號)
-12是10100的5位向量形式(有符號)
5'b01100是十進(jìn)制數(shù)12(無符號)
5'b10100是十進(jìn)制數(shù)20(無符號)
4'd12是十進(jìn)制數(shù)12(無符號)
更為重要的是對基數(shù)表示或非基數(shù)表示的負(fù)整數(shù)處理方式不同。非基數(shù)表示形式的負(fù)整數(shù)作為有符號數(shù)處理,而基數(shù)表示形式的負(fù)整數(shù)值作為無符號數(shù)。因此-44和-6'o54 (十進(jìn)制的44等于八進(jìn)制的54)在下例中處理不同。
integer Cone;
. . .
Cone = -44/4
Cone = -6'o54/ 4;
注意-44和-6'o54以相同的位模式求值;但是-44作為有符號數(shù)處理,而-6'o54作為無符號數(shù)處理。因此個字符中Cone的值為-11,而在第二個賦值中Cone的值為1073741813。
4.1.2 參數(shù)
前一章中已對參數(shù)作了介紹。參數(shù)類似于常量,并且使用參數(shù)聲明進(jìn)行說明。下面是參數(shù)說明實例。
parameter LOAD = 4'd12, STORE = 4'd10;
LOAD 和STORE為參數(shù)的例子,值分別被聲明為12和10。
4.1.3 線網(wǎng)
可在表達(dá)式中使用標(biāo)量線網(wǎng)(1位)和向量線網(wǎng)(多位)。下面是線網(wǎng)說明實例。
wire [0:3] Prt; //Prt 為4位向量線網(wǎng)。
wire Bdq; //Bbq 是標(biāo)量線網(wǎng)。
線網(wǎng)中的值被解釋為無符號數(shù)。在連續(xù)賦值語句中,
assign Prt = -3;
Prt被賦于位向量1101,實際上為十進(jìn)制的13。在下面的連續(xù)賦值中,
assign Prt = 4'HA;
Prt被賦于位向量1010,即為十進(jìn)制的10。
4.1.4 寄存器
標(biāo)量和向量寄存器可在表達(dá)式中使用。寄存器變量使用寄存器聲明進(jìn)行說明。例如:
integer TemA, TemB;
reg [1:5] State;
time Que [1:5];
整型寄存器中的值被解釋為有符號的二進(jìn)制補(bǔ)碼數(shù),而reg寄存器或時間寄存器中的值被解釋為無符號數(shù)。實數(shù)和實數(shù)時間類型寄存器中的值被解釋為有符號浮點(diǎn)數(shù)。
TemA = -10; //TemA值為位向量10110,是10的二進(jìn)制補(bǔ)碼。
TemA = 'b1011; //TemA值為十進(jìn)制數(shù)11。
State = -10; //State值為位向量10110,即十進(jìn)制數(shù)22。
State = 'b1011; //State值為位向量01011,是十進(jìn)制值11。
4.1.5 位選擇
位選擇從向量中抽取特定的位。形式如下:
net_or_reg_vector [bit_select_expr]
下面是表達(dá)式中應(yīng)用位選擇的例子。
State [1] && State [4] //寄存器位選擇。
Prt [0] Bbq //線網(wǎng)位選擇。
如果選擇表達(dá)式的值為x、z,或越界,則位選擇的值為x。例如State [x]值為x。
4.1.6 部分選擇
在部分選擇中,向量的連續(xù)序列被選擇。形式如下:
net_or_reg_vector [msb_const_expr:1sb_const_expr]
其中范圍表達(dá)式必須為常數(shù)表達(dá)式。例如。
State [1:4] //寄存器部分選擇。
Prt [1:3] //線網(wǎng)部分選擇。
選擇范圍越界或為x、z時,部分選擇的值為x。
4.1.7 存儲器單元
存儲器單元從存儲器中選擇一個字。形式如下:
memory [word_address]
例如:
reg [1:8] Ack, Dram [0:63];
. . .
Ack = Dram [60]; //存儲器的第60個單元。
不允許對存儲器變量值部分選擇或位選擇。例如,
Dram [60] [2] 不允許。
Dram [60] [2:4] 也不允許。
在存儲器中讀取一個位或部分選擇一個字的方法如下:將存儲器單元賦值給寄存器變量,然后對該寄存器變量采用部分選擇或位選擇操作。例如,Ack [2] 和Ack [2:4]是合法的表達(dá)式。
4.1.8 函數(shù)調(diào)用
表達(dá)式中可使用函數(shù)調(diào)用。函數(shù)調(diào)用可以是系統(tǒng)函數(shù)調(diào)用(以$字符開始)或用戶定義的函數(shù)調(diào)用。例如:
$time + SumOfEvents (A, B)
/*$time是系統(tǒng)函數(shù),并且SumOfEvents是在別處定義的用戶自定義函數(shù)。*/
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識介紹2025/8/29 16:58:56
- SQL核心知識點(diǎn)總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識2025/6/18 16:30:52
- 高速PCB信號完整性(SI)設(shè)計核心實操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計
- 連接器耐腐蝕性能測試方法
- PCB電磁兼容(EMC)設(shè)計與干擾抑制核心實操規(guī)范
- 用于相位噪聲測量的低通濾波器設(shè)計與本振凈化技術(shù)
- MOSFET在高頻開關(guān)中的EMI問題
- 電源IC在便攜式設(shè)備中的設(shè)計要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計常見問題分析









