|
變量即在程序運行過程中其值可以改變的量,在Verilog HDL中變量的數(shù)據(jù)類型有很多種,這里只對常
用的幾種進(jìn)行介紹。
網(wǎng)絡(luò)數(shù)據(jù)類型表示結(jié)構(gòu)實體(例如門)之間的物理連接。網(wǎng)絡(luò)類型的變量不能儲存值,而且它必需受到
驅(qū)動器(例如門或連續(xù)賦值語句,assign)的驅(qū)動。如果沒有驅(qū)動器連接到網(wǎng)絡(luò)類型的變量上,則該變
量就是高阻的,即其值為z。常用的網(wǎng)絡(luò)數(shù)據(jù)類型包括wire型和tri型。這兩種變量都是用于連接器件
單元,它們具有相同的語法格式和功能。之所以提供這兩種名字來表達(dá)相同的概念是為了與模型中所
使用的變量的實際情況相一致。wire型變量通常是用來表示單個門驅(qū)動或連續(xù)賦值語句驅(qū)動的網(wǎng)絡(luò)型
數(shù)據(jù),tri型變量則用來表示多驅(qū)動器驅(qū)動的網(wǎng)絡(luò)型數(shù)據(jù)。如果wire型或tri型變量沒有定義邏輯強度
(logic strength),在多驅(qū)動源的情況下,邏輯值會發(fā)生沖突從而產(chǎn)生不確定值。下表為wire型和
tri型變量的真值表(注意:這里假設(shè)兩個驅(qū)動源的強度是一致的,關(guān)于邏輯強度建模請參閱附錄:
Verilog語言參考書)。
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
|
|