VHDLのデータ型

図1に示すように、事前に定義されたデータ・タイプ

ライブラリパッケージコレクション標準のstdは:ビット(BIT)、ブール(Boolean)を、整数(整数)と実数(実)データ型を定義します。

std_logic_1164パッケージコレクションライブラリIEEE:STD_LOGICとstd_ulogic定義のデータ・タイプ。

std_logic_arithパッケージコレクションライブラリIEEE:定義符号付きと符号なしのデータ型。またconv_integer(P)、conv_unsigned(P、B)とconv_signedを定義する(P、B)

そしてconv_std_logic_vector(P、B)データ型変換機能などが挙げられます。

ライブラリIEEE std_logic_signedとstd_logic_unsignedパッケージセット:データ・タイプstd_logic_vectureを作る機能が含まれています

符号付きおよび符号なしの動作データの同じタイプとして。

ビット(ビット)とビットベクトル(bit_vector):ビット値「0」または「1」を有します。

例:

信号は、x:少し。

Xは信号の1ビットタイプのビット幅として宣言されます。

信号y(0とdownto 3)bit_vector。

Yは、左端のビットが最上位ビット(:最上位ビットMSB)であり、4ビットベクトルのビット幅として宣言されます。

信号W:bit_vector(7とdownto 0);

- wは8ビット幅のベクトルビット、最もMSBの右側となっているものとして宣言されるであろう。

以下のように後の信号の定義に(もし信号の割り当てに「<=」演算子を使用しなければならない)信号の割り当てのために使用されてもよいです。

X <= '1';

-X-信号値「1」、1ビット幅です。なお、ときに単一引用符内の1ビット値のビット幅。

Y <= "0111"。

yはビット幅が4であり、値 "0111"(MSB = '0')信号。注ビット幅が1より大きい場合、すなわち、二重引用符内のビットベクトルの値。

W <= "01111001"

図8は、値 "01111001"(MSB = '1')信号Wビット幅です。

導入された1164系、IEEE標準論理値である8:STD_LOGICとSTD_LOGIC_VECTOR。ビット・データ・タイプとは異なり、それは「0」、「1」、および状態変数を取ることができます

ハイインピーダンス状態などの8つの異なる値。

「X」「強い」不確かな値(合成が未定義された後)

'0' "強い" 0(合成後0)

(総合的なポスト1)1 ' '1'' 強いです

「Z」ハイインピーダンス(合成後トライステートバッファ)

「W」「弱い」未定義

'L' "弱い" 0

'H' "弱い" 1

「 - 」の状況はそう表示されます

例:

信号は、x:STD_LOGIC。

- XはSTD_LOGICタイプ1ビット幅の信号として宣言されます。

信号y:STD_LOGIC_VECTOR(3 0とdownto):= "0001"。

ステートメントは、左端のビットがMSBであるベクトルy 4のためのビット幅です。

信号Yが「0001」(オプション)の初期値を割り当てます。

 

 

 

 std_ulogicとstd_ulogic_vector:IEEE 1164規格で定義されたデータ型の9種類の論理値を有します

おすすめ

転載: www.cnblogs.com/lhkhhk/p/11845169.html