メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

MATLAB-HDL シミュレータ接続の設定

MATLAB サーバーを起動

HDL シミュレータとの協調シミュレーション用に MATLAB® サーバーを起動します。シミュレーションは共有 DLL を使用して単一のプロセスとして実行されるため、Vivado® シミュレータ ユーザーには必要ありません。

MATLAB サーバーを次のように起動します。

  1. MATLAB を起動します。

  2. MATLAB コマンド ウィンドウで、HDL Verifier™ ソフトウェアが次のタスクを実行するかどうかを指定するプロパティ名とプロパティ値のペアを使用して hdldaemon 関数を呼び出します。

    • 共有メモリまたはTCP/IPソケット通信を使用する

    • 時間値を秒単位または64ビット整数で返します

プロパティ名とプロパティ値のペアを指定するタイミングと方法、および hdldaemon の使用例の詳細については、hdldaemon リファレンス ドキュメントを参照してください。

指定する通信モード (共有メモリまたは TCP/IP ソケット) は、matlabtb または matlabcp 関数を使用して MATLAB コシミュレーション セッションで使用するために HDL シミュレータを初期化するときに通信モードに指定したものと一致する必要があります。また、TCP/IP ソケット モードを指定する場合、hdldaemonmatlabtb または matlabcp で指定するソケット ポートが一致している必要があります。詳細については、TCP/IP ソケット ポートを参照してください。

MATLAB サーバーは、複数の HDL シミュレータ モジュールとクライアントを同時に処理できます。ただし、コードでは各エンティティまたはクライアントに関連付けられた I/O を追跡する必要があります。

メモ

MATLAB から MATLAB と HDL シミュレータ間の HDL Verifier トランザクションを開始することはできません。MATLAB サーバーは、HDL シミュレータから受信した関数呼び出し要求に応答するだけです。

このコマンドは、ポート 4449 でソケット通信を設定し、MATLAB 関数の出力ポートに 64 ビットの時間解像度形式を指定します。

hdldaemon('socket',4449,'time','int64')

HDLシミュレータを起動する

HDL Verifier 関数 vsim または nclaunch を呼び出して、MATLAB から直接 HDL シミュレーターを起動します。

>>vsim

追加のパラメータを指定して vsim または nclaunch を呼び出すことができます。詳細についてはリファレンス ページを参照してください。

HDL シミュレータ実行可能ファイル (vsim (ModelSim®) および nclaunch (Cadence® Xcelium™) とも呼ばれる) がシステム パス上にあることを確認する必要があります。環境変数の設定手順については、システムのドキュメントを参照してください。

Linux ユーザー

シェルが MATLAB から起動された後、HDL シミュレータ実行可能ファイルがシステム パス上にまだ存在することを確認します。そうでない場合は、シェルの起動ファイルがパス環境変数からそれを削除していないことを確認してください。

検証のためにHDLデザインをロードする

vsim または nclaunch を呼び出して MATLAB から HDL シミュレーターを起動した後、関数 vsimmatlab または hdlsimmatlab を使用して検証または視覚化用の HDL モジュールのインスタンスをロードします。この時点で、HDL モデルをコーディングしてコンパイルしているはずです。共同シミュレーションするモデル内のエンティティまたはモジュールの各インスタンスに対して、関数 vsimmatlab または hdlsimmatlab を発行します。たとえば(Xcelium で使用する場合):

hdlsimmatlab work.osc_top

このコマンドは、HDL Verifier ライブラリをロードし、osc_top のシミュレーション ワークスペースを開き、シミュレータがエンティティをロードするときに HDL シミュレータ コマンド ウィンドウに一連のメッセージを表示します (残りのコードの例を参照)。