シミュレーション ファイルとスクリプトのエクスポート - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: ロジック シミュレーション (UG900)

Document ID
UG900
Release Date
2023-10-18
Version
2023.2 日本語

ビヘイビアー シミュレーションまたはタイミング シミュレーションをコマンド ラインから実行するには、次の手順を実行する必要があります。

  1. デザイン ファイルの識別と解析。
  2. 実行可能なシミュレーション スナップショットのエラボレートと生成。
  3. 実行可能なスナップショットを使用したシミュレーションの実行。

Vivado Design SuiteExport Simulation コマンドを使用すると、シミュレーションに必要なデザイン ファイルをすばやく集めて、最上位 RTL デザインまたは下位デザインのシミュレーション スクリプトを生成できます。export_simulation コマンドでは、サポートされるサードパーティ シミュレータすべて、またはユーザーの選択したターゲット シミュレータのスクリプトが生成されます。

Vivado IDE で File > Export > Export Simulation をクリックし、次の図に示す Export Simulation ダイアログ ボックスを開きます。

図 1. Export Simulation ダイアログ ボックス

Export Simulation コマンドは、サポートされるすべてのシミュレータまたは指定したターゲット シミュレータに対してシミュレーション スクリプト ファイルを生成します。生成されるスクリプトには、デザインをコンパイル、エラボレート、およびシミュレーションするシミュレータ コマンドが含まれます。

Export Simulation ダイアログ ボックスには、次のオプションが含まれます。

  • Target simulator: コマンド ライン スクリプトを生成するシミュレータを指定します。Vivado シミュレータまたはサポートされているサードパーティ シミュレータを選択できます。詳細は、サードパーティ シミュレータを使用したシミュレーション を参照してください。
    注記: Windows OS の場合は、Windows で実行されるシミュレータに対してのみスクリプトが生成されます。
    注記: コマンド ライン モードでは、同等のオプション -simulator に all を指定することで、サポートされているすべてのシミュレータのスクリプトが生成されます。これはコマンド ラインでのみサポートされ、GUI では利用できません。
  • Compiled library location: Export Simulation コマンドで生成されるスクリプトを使用してシミュレーションを実行するには、compile_simlib Tcl コマンドを使用してシミュレーション ライブラリをコンパイルする必要があります。生成されるスクリプトでは、コンパイル ライブラリ ディレクトリからターゲット シミュレータに必要なセットアップ ファイルが自動的に含まれます。詳細は、シミュレーション ライブラリのコンパイル を参照してください。
    ヒント: Export Simulation を実行する際は、常に Compile library location にパスを指定しておくことをお勧めします。これにより、スクリプトが常に正しいシミュレーション ライブラリをポイントするようになります。
  • Export directory: Export Simulation で生成されるスクリプトの出力ディレクトリを指定します。デフォルトでは、シミュレーション スクリプトが現在のプロジェクトのローカル ディレクトリに出力されます。
  • Overwrite files: export ディレクトリに同じ名前のファイルが既に存在している場合に、上書きします。
  • Use absolute paths: デフォルトでは、生成されたスクリプトのソース ファイルとディレクトリ パスは、スクリプトで定義された基準ディレクトリに対する相対パスになります。このオプションを使用すると、スクリプト内のファイル パスは相対パスではなく絶対パスになります。
  • Copy source files to export directory: デザイン ファイルを出力ディレクトリにコピーします。これにより、シミュレーション ソース ファイルと生成されたスクリプトがコピーされ、シミュレーション フォルダー全体が移植しやすくなります。
  • Command: Export Simulation ダイアログ ボックスで指定したさまざまなオプションおよび設定により実行される export_simulation コマンドの Tcl コマンド構文を表示します。
  • Help: Help ボタンで Export Simulation Files ダイアログ ボックスのさまざまなオプションの説明を表示します。

Export Simulation コマンドでは、プロジェクトと非プロジェクトの両方のデザインがサポートされます。Verilog の ‘defines および ‘include ディレクトリのクエリには現在のプロジェクトからのプロパティは読み込まれず、ダイアログ ボックスまたは export_simulation コマンド オプションから指示子が取得されます。必要な結果を取得するには、適切なオプションを指定する必要があります。また、最上位デザインで使用されるすべての IP およびブロック デザインの出力ファイルが必要です。

重要: IP およびブロック デザインの出力ファイルがない場合、export_simulation コマンドでは自動的に生成されず、エラー メッセージが表示されるか、実行が停止します。

Export Simulation ダイアログ ボックスで OK をクリックすると、指定したデザイン オブジェクト (最上位デザイン、階層モジュール、IP コア、Vivado IP インテグレーターからのブロック デザイン、または複数 IP を含む Manage IP プロジェクト) をシミュレーションするのに必要なデザイン ファイルすべてのシミュレーション コンパイル順が取得されます。必要なデザイン ファイルのシミュレーション コンパイル順は、ターゲット シミュレータのコンパイラ コマンドおよびオプションを含めてシェル スクリプトにエクスポートされます。

シミュレーション スクリプトは [Export Simulation] ダイアログ ボックスで指定したエクスポート ディレクトリの個別フォルダーに生成されます。指定したシミュレータごとに個別のフォルダーが作成され、そのシミュレータ用の compileelaborate、および simulate スクリプトが記述されます。

Export Simulation コマンドで生成されたスクリプトでは、3 段階のプロセス (解析/コンパイル、エラボレート、シミュレーション) が使用されます。これは、Vivado シミュレータを含め、多くのシミュレータに共通しています。ModelSim および Riviera では、生成されたスクリプトでツールが必要とする 2 段階のプロセス (コンパイルとシミュレーション) が使用されます。

ヒント: Questa シミュレータで 2 段階のプロセスを使用するには、ModelSim 用に生成されたスクリプトを必要に応じて変更してください。

この Export Simulation コマンドでは、ファイルセットからのデータ ファイル (存在する場合) も指定したエクスポート ディレクトリにコピーされます。デザインに Verilog ソースが含まれる場合は、生成されるスクリプトにより glbl.vVivado ソフトウェア インストール パスから出力ディレクトリにコピーされます。

export_ip_user_filesexport_simulation -no_script -force -directory "C:/Data/project_wave1" -simulator all

ダイアログ ボックスから Export Simulation コマンドを実行すると、Vivado IDE でエクスポートされたスクリプトのベース ディレクトリを定義するコマンド シーケンスが実際に実行され、IP ユーザー ファイルがエクスポートされてから、export_simulation コマンドが実行されます。

Vivado IDE で export_ip_user_files コマンドが自動的に実行され、コア コンテナーおよびコア コンテナー以外の IP 両方のシミュレーションをサポートするのに必要なすべてのファイルとブロック デザインが使用可能になります。詳細は、 『Vivado Design Suite ユーザー ガイド: IP を使用した設計』 (UG896)このセクションを参照してください。export_ip_user_filesExport Simulation ダイアログ ボックスを使用すると自動的に実行されますが、export_simulation コマンドを使用する場合は実行前に必ず手動で実行するようにしてください。

ヒント: Vivado IDE で export_ip_user_files コマンドが自動的に実行される際、-no_script オプションが指定されます。これは、最上位デザインで使用される個別の IP およびブロック デザインに対してシミュレーション スクリプトが生成されるとコマンドの実行時間がかなり長くなるので、生成されないようにするためです。個別の IP およびブロック デザインのシミュレーション スクリプトを生成する場合は、特定のオブジェクト (export_ip_user_files) に対して -of_objects を実行するか、-no_script オプションを使用しないようにします。

export_ip_user_files コマンドでシミュレーションおよび合成に必要な IP およびブロック デザインのユーザー ファイル環境が設定され、インスタンシエーション テンプレート、サードパーティ合成ツールで使用するスタブ ファイル、ラッパー ファイル、メモリ初期化ファイル、およびシミュレーション スクリプトを含む ip_user_files というフォルダーが作成されます。

export_ip_user_files コマンドでは、プロジェクト内のすべての IP およびブロック デザインで共有されるスタティック シミュレーション ファイルも統合され、ipstatic フォルダーにコピーされます。プロジェクト内の複数の IP およびブロック デザイン間で共有される IP ファイルの多くは、特定のカスタマイズ IP 用に変更されることはありません。これらのスタティック ファイルは ipstatic ディレクトリにコピーされます。シミュレーション用に作成されたスクリプトは、このディレクトリの共有ファイルを必要に応じて参照します。カスタマイズ IP に特有のダイナミック シミュレーション ファイルは、IP フォルダーにコピーされます。詳細は、 『Vivado Design Suite ユーザー ガイド: IP を使用した設計』 (UG896) の「IP ユーザー ファイル」を参照してください。

重要: export_simulation コマンドで生成されるスクリプトおよびファイルでは ip_user_files ディレクトリのファイルが指定されます。export_ip_user_files コマンドよりも前に export_simulation を実行しないと、シミュレーション エラーが発生する可能性があります。