2017-11-23 14 views
0

私は基本的な `include" filename.v "コマンドを知っています。しかし、別のフォルダにあるモジュールを追加しようとしています。現在、そのモジュールは、同じフォルダに存在する他のモジュールをさらに含みます。しかし、最上位レベルでモジュールを実行しようとすると、エラーが発生します。icarus verilogにファイルを含めるには?

​​

ここでは、ファイル "mips.v"に含まれているMIPSプロセッサを作成しようとしています。このファイルの最初のステートメントは "include" IF/stage_if.v "です。また、IFフォルダには、stage_if.vに含まれているファイルが多数あり、そのうちの1つは" instruction_memory_if.v "です。ディレクトリレベルの図である

-IF 
    instruction_memory_if.v 
    stage_if.v 
+ID 
+EX 
+MEM 
+WB 
mips.v 
+0

通常、すべてのRTLファイル(およびパス)をリストするファイルを作成したいが、あなたのデザインに使用されるツールにこのファイルを渡します。迅速なGoogleの検索では、これもこのツールの場合であることが明らかになりました。 – RaZ

+0

あなたは助力のために '-h'修飾子を試しましたか?もしあなたがそうしたなら、あなたは '-I includedir'これを見たはずです。コマンドラインでインクルードファイルを検索するディレクトリを指定することができます。 – Serge

答えて

0

あなたはどこ-Iフラグを使用して見てするiverilogを指示する必要がありtop.v

:。。

`include "foo.v" 

program top; 
    initial begin 
     foo(); 
    end 
endprogram 

foo/foo.vで:

コマンドを使用して実行することができ
task foo; 
    $display("This was printed in the foo module"); 
endtask 

iverilog -g2012 top.v -I foo/ 
vvp a.out 

>>> This was printed in the foo module 
関連する問題