Xilinx Vivado 2017.4以降でActive-HDLをデフォルトシミュレータとして起動

はじめに

このドキュメントでは、Xilinx Vivado™ から Active-HDL シミュレーターを起動してビヘイビア シミュレーションおよびタイミング シミュレーションを実行する方法について説明します。このアプリケーションノートは、Active-HDL 11.1、Xilinx Vivado 2019.2、および Vivado へのActive-HDL Simulator 1.18 アドオンで検証しています。この統合により、ユーザーはActiv-HDLをデフォルトのシミュレータとして使用してVHDL、Verilog、混在言語、SystemVerilog (デザイン) シミュレーションを実行することができます。

Active-HDLアドオンの設定

  1. VivadoのFlow Navigatorペインから起動可能な、Settingsウィンドウの3rd Party SimulatorsカテゴリのActive-HDLインストールディレクトリへのパスを設定します。または、Active-HDLインストールディレクトリをPATH環境変数に追加します。Vivado環境からの設定は、環境変数で指定されたパスよりも優先されます。

    注意:PATH環境変数を変更中にVivadoが既に起動している場合は、Vivado内で新しいPATH変数を有効にするためにVivadoを再起動する必要があります。

  2. ToolsメニューからXilinx Tcl Storeオプションを選択し、Installedタブに切り替え、Active-HDLシミュレータプラグインがインストールされていることを確認します。インストールされていない場合は、Allタブでプラグインを検索し、Installボタンをクリックします。プラグインが既に
    インストールされている場合は、最新バージョンにアップデートすることができます。そのためには、Refreshボタンでリポジトリを更新した後、Updateボタンをクリックします。

Active-HDLへXilinxライブラリをインストール

シミュレーションを正常に実行するために、Xilinx Vivadoのバージョンに対応したVHDL、Verilog、デザインによっては両方のライブラリがActive-HDLにインストールされている必要があります。Active-HDLに現在インストールされているライブラリは、Library Managerツールを使用して確認する
ことができます。このツールは、ViewメニューからLibrary Managerオプションを選択して使用できます。ライブラリは、シミュレーションに使用しているActive-HDLバージョンに合わせてコンパイルする必要があります。

ライブラリは複数の方法で入手できます:

  1. Xilinxライブラリは、Vivado ToolsメニューのCompile Simulation Librariesオプション、またはcompile_simlib -simulator activehdlコマンドを使用してソースからコンパイルすることができます。

    注意:Xilinxでコンパイル済みライブラリを生成後、それらをActive-HDL環境に設定する必要があります。 詳細は、「Xilinx Vivado シミュレーションライブラリをActive-HDL 用にコンパイルする方法」を参照してください。

    コンパイル済みのライブラリをインストールすることもできます:

  2. Active-HDLをダウンロードするためのWebサイトリンクを受け取った場合、同じページにXilinxライブラリをダウンロードするためのリンクがあります。

  3. Update Centerにアクセスして、最新のザイリンクスライブラリをhttp://www.aldec.com/jp/downloadsからいつでもダウンロードできます。

下記は一般的なVivadoからActive-HDLを実行するための手順です:

  1. Xilinx VivadoのProject Managerでプロジェクトを作成または開きます。

  2. Flow NavigatorペインからSettingsタブを選択します。

  3. SettingsウィンドウのSimulationカテゴリで、Target SimulatorActive-HDL Simulatorに変更します。

  4. プロジェクトで使用するライブラリは、Active-HDLまたはVivado環境で指定する必要があります。詳細に関しましては、「Xilinx Vivado シミュレーションライブラリをActive-HDL 用にコンパイルする方法」を参照してください。

  5. Compilationタブでは、カバレッジ解析やデバッグ・モードなどのVerilogおよびVHDLコンパイラの機能の有効化や、generics/parametersに値を割り当てることができます。generics/parametersは、Generics/Parametersオプションフィールドで設定することが可能で、各種機能に関しては利用可能なコンパイラオプションのリストから選択できます。

    注意:VHDLファイルをコンパイルする際は、いくつかのLRM要求を緩和するためにactivehdl.compile.vhdl_relaxチェックボックスを選択する必要がある場合があります。

  6. ElaborationSimulationタブでは、たとえばシミュレーションデータベースへの全信号のロギング、信号波形のアクセス権、シミュレーションの実行時間などのシミュレーションに関連する引数を設定することができます。

  7. すべてのオプションを必要に応じて設定後、OKをクリックします。

    注意:シミュレーション実行中にActive-HDLのバージョンを更新した場合Simulation カテゴリのAdvancedタブにあるEnable incremental compilationオプションをオフにし、旧バージョンのActive-HDLでコンパイルされたファイルを削除する必要があります。

  8. 次にFlow NavigatorペインのRun Simulation項目をクリックし、実行するシミュレーションのタイプを選択します。これにより、GUIモードでシミュレーションが実行されます。

    または、コンソール(VSimSA)モードを使用してシミュレーションを実行することもできます。そのためには、Vivado Tcl Consoleウィンドウに次のコマンドを入力します:

    launch_simulation -batch -install_path <path>

  9. Vivado は上記の手順で入力した設定をベースにコンパイルおよびシミュレーション用のDOマクロスクリプトを生成し、<project_dir><project_name>.sim¥<simulation_set><simulation_type>activehdl ディレクトリに保存します。

    • コンパイルマクロ (<name>_compile.do) は、デザインをコンパイルするワーキングライブラリの設定、Xilinx Vivadoライブラリのマップ、Project Settings | Simulation | Compilationで指定したオプションでコンパイルを実行します。

    • シミュレーションマクロ(<name>_simulation.do) は、シミュレーションセッションを初期化して実行し、シミュレーションデータベース(ASDB) に信号履歴を記録します。

  10. アルデックのコンパイラは、選択されたモードに関係なくコンソールでコンパイルマクロを実行します。コンパイラの出力は、Vivado Tcl Console ウィンドウにリダイレクトされます。

  11. コンパイルが正常に終了するとActive-HDLが起動し、シミュレーションマクロが実行されます。このマクロは、シミュレーションセッションを初期化し、信号の履歴をシミュレーションデータベース(ASDB)に記録しながらシミュレーションを実行します。シミュレーションを初期化する前のGUIモードで、マクロはデザインを作成して開き、Vivado Settings ウィンドウの General カテゴリで指定されたデフォルトのライブラリをマップします。シミュレーションが完了すると、波形ビューアに信号の履歴が表示されます。この時点で矢印キーを使用し、Consoleウィンドウの履歴をナビゲートし、シミュレーションマクロの任意のコマンドを再度実行することができます。デザインソースを参照するには、Design BrowserウィンドウのStructureタブのコンテキストメニューから、View source: <item>Generated Code、またはView Declarationオプションを使用します。一方、バッチモードでは、デザインの作成やデフォルトのライブラリマッピングはありません。シミュレータの出力はVivado Tcl Consoleにリダイレクトされ、シミュレーション完了後に VSimSA は閉じられます。

export_simulationコマンド

export_simulationコマンドを使用すると、Vivadoで生成されたコンパイルおよびシミュレーションマクロを-run_dir引数で指定したディレクトリにエクスポートできます。エクスポートするマクロは、-modeおよび-type引数で指定します。

Syntax

tclapp::aldec::activehdl::export_simulation -run_dir [-lib_map_path] [-mode] [-type] [-quiet] [-verbose]

Arguments

-run_dir

-mode、および-type引数で選択されたマクロをエクスポートするディレクトリを指定します。

-lib_map_path

コンパイル済みシミュレーションライブラリを格納するディレクトリを指定します。

-mode

シミュレーションモードを設定します。 次のモードが許可されています:behavioral、post-synthesisおよびpost-implementationの各パラメータで選択されたビヘビア、ポストシンセシス、ポストインプリメンテーション

-type

ネットリストの種類を指定します。指定できる値は、functionalとtimingです。この引数は選択されたシミュレーションモードがポストシンセシスまたはポストインプリメンテーション(post-synthesis、またはpost-implementationが-modeで設定された場合)の場合にのみ適用されます。

-quiet

コマンドで報告されたエラーメッセージの表示を停止します。

-verbose

コマンド実行中にコンソールに表示されるメッセージの制限を停止します。

Ask Us a Question
x
Ask Us a Question
x
Captcha ImageReload Captcha
Incorrect data entered.
Thank you! Your question has been submitted. Please allow 1-3 business days for someone to respond to your question.
Internal error occurred. Your question was not submitted. Please contact us using Feedback form.
We use cookies to ensure we give you the best user experience and to provide you with content we believe will be of relevance to you. If you continue to use our site, you consent to our use of cookies. A detailed overview on the use of cookies and other website information is located in our Privacy Policy.