UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 23448

10.1 XST - 「ERROR:HDLCompilers:87 - ''<Verilog file name>'' line <###> Could not find module/primitive <module name>'」というエラー メッセージが表示される

説明

キーワード : HDL, compilers, 87, error, ifdef, include, define, remote, Tcl, xfile, Project Navigator, コンパイラ, エラー, 定義

Verilog デザインを合成すると、次のようなエラー メッセージが表示されます。

"ERROR:HDLCompilers:87 - "<Verilog file name>" line <###> Could not find module/primitive <module name>'"



"ERROR:HDLCompilers:87 - "my_verilog.v" line 129 Could not find module/primitive my_mod1'"

ソリューション

1

これは、プロジェクトに読み込んだ HDL ファイルが、デザインに明示的に含まれていない別の HDL ファイルの定義を参照している場合に発生する、Project Navigator 特定の問題が原因である可能性があります。

デザインをどのように解析するかを Verilog の include 文を使用して制御する場合があります。たとえば、include を使用して defines を定義し、defines によりモジュールのインスタンスをイネーブルまたはディスエーブルにします。

例 :

my_mod1 #(`PNAME1,`PNAME0) my_mod2

ここで、PNAME1 および PNAME0 は、現在の作業ディレクトリに含まれていないファイルで定義されています。

Verilog の include パスを指定しない限り、XST で 'include ファイルが検索されるのは現在の作業ディレクトリ (.ise ファイルが保存されているディレクトリ) のみです。include ファイルが別のディレクトリにある場合は、ファイルが見つけられず、'ifdefs が正しく認識されません。合成を実行すると、ヘッダがないためにエラー メッセージが表示されます。

これには、次の 3 つの回避策があります。
- include ファイルをプロジェクト ディレクトリ (.ise ファイルが保存されているディレクトリ) に移動します。デザインに含まれる include ファイルを参照するすべてのファイルで何かの操作を実行すると、階層が正しくアップデートされるはずです。階層がアップデートされない場合は、ファイルを一度削除してから再度追加してください。
- include ファイルへのパスを、プロジェクト ディレクトリからの相対パスで指定します。
- 次の手順に従って、Project Navigator の [Verilog include directories] プロパティ (合成およびシミュレーション オプション) でパスを指定します。

1. [Sources] タブで最上位ファイルを選択します。
2. [Synthesize - XST] を右クリックし、[Properties] をクリックします。
3. [Verilog Include Directories] プロパティで、定義ファイルが含まれているディレクトリを指定します。このプロパティを表示するには、[Property display level] を [Advanced] に設定する必要があります。必要に応じて [Advanced] に設定してください。
4. [OK] をクリックします。

メモ : コマンド ラインを使用している場合は、コンパイル リストにヘッダ ファイルを追加するため、この問題は発生しません。Project Navigator では、include ファイルをプロジェクトに追加できません。

2

ISE 10.1 では、別のディレクトリの Verilog ファイルが Tcl コマンド xfile add を使用して追加されると、このエラー メッセージが表示されます。Project Navigator から XST に渡された Verilog の include ディレクトリ設定は、プロジェクトをいったん閉じて開き直すまでアップデートされません。

このエラーはブラック ボックス モジュールを間違ってインスタンシエートした場合にも発生します。 『XST ユーザー ガイド』の「ブラック ボックスのコード例」を参照してください。http://www.xilinx.com/itp/xilinx10j/books/docs/xst/xst.pdf
AR# 23448
日付 02/26/2009
ステータス アクティブ
種類 一般
このページをブックマークに追加