Active-HDLにおける相対パスでのファイル管理
Active-HDLのファイル構造
Active-HDLでは、ワークスペースとデザインフォルダを作成してプロジェクトを管理します。各デザインディレクトリには3つのフォルダSRC、COMPILEおよび LOGフォルダが生成されます。SRCフォルダはVHDL/Verilogファイル、ブロックダイアグラム、ステートダイアグラムのようなソースファイルを含みます。COMPILEフォルダは、デザインのコンパイル情報を記録するファイルと、ブロック図やステートマシンから生成されたHDLファイルを含んでいます。LOG フォルダには、コンソールログが保存されます。また、コンピュータ上のファイルは何でもActive-HDLのデザインに追加することが可能です。ファイル追加時に次のどちらかのオプションを選択します。下図1のMake local copyにチェックを入れてデザインへコピーするか、チェックをはずしてファイルが物理的に保存されているフォルダをリンクします。
図 1: Add Filesウィンドウの Make local copy チェックボックス
Make local copyにチェックを入れると、ファイルはカレントデザインのSRCフォルダにコピーされます。カレントデザインフォルダを示す変数$dsn を使って、SRC フォルダを参照することができます。
$dsn/src/
デザインに追加したファイルのコピーが作成されたか、リンク参照であるかはDesign Browser で確認できます。Design Browserに表示される階層構造はデザインに基づいたもので、ファイルがコンピュータのどこに保存されているかを示してはいません。
リンクファイルの相対パス
デザインファイルのコピーを作成しなかった場合、そのファイルはリンク参照されます。リンクファイルは図2のようにDesign Browser上に、矢印付きのアイコンで表示されます。
図 2: Design Browser のリンクファイルアイコン
インタラクティブな方法で、 Design Browser にて、ファイルを右クリックし、コンパイルオプションを選択することにより、リンクファイルをコンパイルすることができます。Active-HDL デザインにリンクファイルをコンパイルするには、次のようにコマンドでも実行できます。
-
絶対パスのファイルをコンパイルする場合:
acom C:/My_Designs/FIFO_8BIT/FIFO_CORE/src/fifo.vhd
-
リンクを使ってコンパイルする場合:
acom top.vhd
注意: リンクファイルへのパス($dsn/src/..)は、省略してください。コンパイラはデザインデータからパスを探します。 同じデザイン内での同一のファイル名は避けてください。
-
マクロファイル使用例: 下記のようなコマンドとあわせて、マクロファイルmacro.do を用意します:
opendesign /my_design.adf --注意: $designs等の任意の変数も使用可能 quiet on set path echo $path addfile $path/ quiet off ----次の行でdoファイルを実行 Avhdl.exe -do /macro.do --リンク情報を自動で更新
環境変数設定の追加情報
環境変数を使って、パスを指定することが可能です。環境変数を設定するには、コンソールにて set コマンドを使います。複数の変数の設定が可能です。
set path C:/My_Designs/FIFO_8BIT/FIFO_CORE/src set # aldec="C:/Aldec/Active-HDL 8.3" # ...... # path="C:/My_Designs/FIFO_8BIT/FIFO_CORE/src" # .....
パスを設定することにより、リンクファイルを複数のソースから容易に処理することができます。例えば上記で定義した変数を使って、デザインにファイルを追加することができます:
addfile -vhdl $path/fifo.vhd # Adding file C:/My_Designs/FIFO_8BIT/FIFO_CORE/src/fifo.vhd ... Done addfile -vhdl $path/fifo_tb.vhd # Adding file C:/My_Designs/FIFO_8BIT/FIFO_CORE/src/fifo_tb.vhd ... Done
図 3: Design Browser での追加リンクファイルの表示