xsi_open - 2022.1 日本語

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

Document ID
UG900
Release Date
2022-04-21
Version
2022.1 日本語
typedef struct t_xsi_setup_info {
    char* logFileName; 
    char* wdbFileName;
} s_xsi_setup_info, *p_xsi_setup_info;
xsiHandle xsi_open(p_xsi_setup_info setup_info); 
void Xsi::Loader::open(p_xsi_setup_info setup_info);
bool Xsi::Loader::isopen() const;

この関数は、シミュレーション用に HDL デザインを開きます。この関数を使用するには、まず関数に渡す s_xsi_setup_info 構造体を初期化する必要があります。シミュレーション ログ ファイルの名前には logFileName を使用し、ログをディスエーブルにするには、NULL を使用します。波形トレース機能がオンになっている場合 (xsi_trace_allを参照)、wdbFileName は出力 WDB (波形データベース) ファイルの名前になります。NULL のデフォルト名には xsim.wdb を使用します。波形トレース機能がオフの場合は、Vivado シミュレータにより wdbFileName フィールドは無視されます。

ヒント: ザイリンクスでは、XSI API が今後変更されないようにプログラムを保護するには、xsi_open に示すように、フィールドに挿入する前に s_xsi_setup_info 構造体を 0 にすることをお勧めします。

この関数の標準形式は、デザインのプロセス ステート情報を含む C オブジェクト xsiHandle を返します。これは、ほかのすべての標準形式 XSI 関数で使用できます。ローダー形式のこの関数は値を返しませんが、isopen メンバー関数をクエリすることにより、デザインを開いたかどうかをチェックできます。このメンバー関数は、open メンバー関数が呼び出された場合に true を返します。

#include "xsi.h"
#include "xsi_loader.h"
...
Xsi::Loader loader("xsim.dir/mySnapshot/xsimk.so","librdi_simulator_kernel.so");
s_xsi_setup_info info;
memset(&info, 0, sizeof(info));
info.logFileName = NULL;
char wdbName[] = "test.wdb"; // make a buffer for holding the string "test.wdb"
info.wdbFileName = wdbName;
loader.open(&info);