toms.log
2020/01/09
SystemVerilogのパッケージ宣言
verilog HDLにはpackageないんだそうな.
なぜかパッケージファイルの定義の後にパッケージ宣言しても, 問題なくコンパイルできる. ただし, `include`は必要. おそらく一つのファイルにpackageとmoduleを記述すれば, `include`は必要ないはず. サンプルは以下のリポジトリ. Makefileを書き換えれば動く. https://github.com/toms74209200/systemverilog_package_sample
[デザイン向け(論理合成可能)SystemVerilog記述 - Qiita](https://qiita.com/vega77/items/398a343ae616bd618f22) >又、importはmodule外のグローバル領域で宣言する事も可能だが、その場合はすべてのmoduleでそのpackageないのリソースを参照可能になってしまうのでお勧めしない。何故お勧めしないかと言うと、package内のリソースとmodule内のリソースの名前の競合を気にしなくてはならないからである。せっかくC++のnamespaceの様にpackageで名前の競合を避けたのに意味がなくなってしまう。だったら初めからpackageを使わずにグローバル領域に置けばいいのである。やはりimportを使うのはmoduleの中でのみにした方が良いだろう。 なんだそうな. はぇー. なるほど.
0 件のコメント:
コメントを投稿
次の投稿
前の投稿
ホーム
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿