2016-10-14 9 views
0

私は同僚からの.svファイルの束を採用しており、 "globals.sv"というファイルに保存されている定義済みの環境変数がないため、コンパイルに失敗します。すべてのファイルの先頭に行すべてのシステムのVerilogファイルに自動的にファイルを含める

`include "globals.sv" 

を追加すると、動作しますが、私は自動的にコンパイル時にすべての.svため、このファイルを含めるために使用することができますModelSimのコマンド・ライン・タグがありますでしょうか?私は "globals2.sv"と "globals3.sv"でファイルを再実行する必要があり、一度にすべてのファイルを含めることがはるかに簡単です。

vlog -env_variables globals.sv -c *.sv 
vlog -env_variables globals2.sv -c *.sv 

globals.sv内の変数定義を持つ各.svファイルをコンパイルします。

ご迷惑をおかけして申し訳ございません。

+1

私はトップレベルのsystemverilogパッケージを使用することをお勧めします。次に、各ファイルにパッケージをインポートします。インポートされたパッケージは 'globals.svをインクルードします。 – noobuntu

答えて

2

すべての* .svファイルの先頭に`include globals.svを追加するスクリプトを作成することをお勧めします。その後、コードはどのシミュレータでも動作します。

vlogオプションがあり、それらが(M ulti F ILE C ompilation U NIT)一つの大きなファイルに含まれているかのようにすべてのファイルをコンパイルした-mfcuと呼ばれます。だからあなたは何かをすることができます

vlog -mfcu globals.sv rtl/*.sv 
vlog -mfcu globals2.sv tb/*.sv 
関連する問題