初めてでも使えるVHDL文法ガイド ―― 文法ガイド編
tag: 半導体 ディジタル・デザイン
技術解説 2009年8月10日
5. その他の宣言
● 定数宣言
constant < 定数名 > , < 定数名 > , … : < サブタイプ指示子 > [ : = < 式 > ] ;
《 記述例 》 constant HALT : = " 00 " ; constant INIT : = " 01 " ; |
● 変数宣言
variable < 変数名 > , < 変数名 > , … : < サブタイプ指示子 > { : = < 式 > } ;
《 記述例 》 variable I : integer : = 0 ; |
● ファイル宣言
file < 変数名 > : < サブタイプ指示子 > is { < モード > } < 文字列式 > ;
《 記述例 》 file TEST_VECTOR : TEXT is in " pat_file.hex " ; |
6. コンフィグレーション
● コンフィグレーション宣言
configuration < コンフィグレーション名 > of < エンティティ名 > is
[ use < ライブラリ名 > . < アイテム > ; ]
< ブロック・コンフィグレーション >
end { < コンフィグレーション名 > } ;
《 記述例 》 configuration CFG_WATCH of WATCH is for SIM end for ; end ; |
● ブロック・コンフィグレーション
for < ブロック仕様 >
[ use < ライブラリ名 > . < アイテム > ; ]
[ < コンフィグレーション・アイテム > ]
end for ;
● ブロック仕様
< アーキテクチャ名 >
< ラベル名 >
< ラベル名 > { ( < インデックス仕様 > ) }
● インデックス仕様
< 離散レンジ > | < 式 >
● コンフィグレーション・アイテム
< ブロック・コンフィグレーション >
< コンポーネント・コンフィグレーション >
● コンポーネント・コンフィグレーション
for < インスタンシエーション・リスト > : < コンポーネント名 >
{ use < 結合指示 > ; }
{ < ブロック・コンフィグレーション > }
end for ;
● インスタンシエーション・リスト
< インスタンス名 > , < インスタンス名 > , …
others
all
● 結合指示
< エンティティ・アスペクト >
{ generic map ( < 結合リスト > ) }
{ port map ( < 結合リスト > ) }
● エンティティ・アスペクト
entity < エンティティ名 > { < アーキテクチャ名 > }
configuration < コンフィグレーション名 >
open