このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
matlabtb
インスタンス化された HDL モジュールのMATLABテストベンチ セッションをスケジュールします
説明
メモ
このコマンドは、 MATLAB®ではなく、HDL シミュレーターに入力します。
matlabtb
は次のアクションを実行します。 instance
HDL Verifier™ソフトウェアの HDL シミュレーター クライアント コンポーネントを開始します。
HDL シミュレーターで作成された HDL デザインの指定されたインスタンスをMATLAB関数に関連付けます。
指定されたMATLAB関数の呼び出しをスケジュールするプロセスを作成します。
同じインスタンスを指定した前の
matlabtb
コマンドによってスケジュールされた保留中のイベントをすべてキャンセルします。たとえば、コマンドmatlabtb
(たとえばfoo
)を発行すると、matlabtb
は、matlabtb
によって開始された以前にスケジュールされたイベントをすべてキャンセルします。foo
の$$ 。このコマンドは HDL シミュレーターで発行されます。
MATLABテストベンチ関数は、HDL モデル内のエンティティに渡される刺激を模倣します。MATLABまたは
matlabtb
でスケジュールされた HDL からの強制刺激。メモ
matlabtb
に指定する通信モードは、サーバー接続を確立したときにhdldaemon
に指定した通信モードと一致する必要があります。ソケット通信の場合、HDL シミュレータで
hdldaemon
コマンドでリンク要求を発行するときに、matlabtb
に選択したポート番号を指定します。
matlabtb
は、指定されたMATLAB関数をスケジュールするための時間指定を追加します。instance
time-specs
matlabtb
は、有効な仕様名とその値で構成されるペアとして 1 つ以上の追加仕様を指定します。たとえば、 instance
___ pair1 ... pairN
-mfunc vlogmatlabc
は、 MATLAB関数vlogmatlabc
が指定された HDL モジュールに関連付けられることを指定します。これらのペアは、 time-specs
の有無にかかわらず指定できます。
例
matlabtb
を-socket
引数および時間パラメーターとともに使用する
HDL Verifierの HDL シミュレーター クライアント コンポーネントを開始し、エンティティmyfirfilter
のインスタンスをMATLAB関数myfirfilter
に関連付けます。 $、TCP/IP ポート 4449 を使用してローカル TCP/IP ソケットベースのテストベンチ セッションを開始します。指定されたテストベンチ刺激に基づいて、 myfirfilter.m
は現在時刻から 5 ナノ秒後に実行され、その後 10 ナノ秒ごとに繰り返し実行されます。
hdlsim> matlabtb myfirfilter 5 ns -repeat 10 ns -socket 4449
立ち上がりエッジクロックと状態変化を適用する
HDL Verifierの HDL シミュレーター クライアント コンポーネントを開始します。MATLABという名前のリモートcomputer123
ホスト コンピューターと TCP/IP ポート 4449 を使用して、リモート TCP/IP ソケット ベースのセッションを開始します。指定されたテストベンチ刺激に基づいて、 myfirfilter.m
は、信号/top/fclk
が立ち上がりエッジを経験するたび、および信号が上昇するたびに、現在時刻から 10 ナノ秒後に実行されます。 $/top/din
は状態を変更します。
hdlsim> matlabtb /top/myfirfilter 10 ns -rising /top/fclk -sensitivity /top/din -socket 4449@computer123
MATLAB関数名と感受性シグナルを指定します
HDL Verifierソフトウェアの HDL シミュレータ クライアント コンポーネントを起動します。-mfunc
オプションは接続先のMATLAB関数を指定し、 -socket
ペアはソケット接続モードのポート番号を指定します。-sensitivity
ペアは、テストベンチ セッションが信号sine_out
に敏感であることを示します。
hdlsim> matlabtb osc_top -sensitivity /osc_top/sine_out -socket 4448 -mfunc hosctb
入力引数
instance
— MATLABテストベンチ関数に関連付けられた HDL モジュールのインスタンス
文字ベクトル | string スカラー
MATLAB関数に関連付けられた HDL モジュールのインスタンス。HDL モジュール インスタンスを示す文字ベクトルまたは文字列スカラーとして指定します。デフォルトでは、 matlabtb
コマンドは、インスタンスを、インスタンスと同じ名前を持つMATLAB関数に関連付けます。たとえば、インスタンスがmyfirfilter
の場合、 matlabtb
はインスタンスをMATLAB関数myfirfilter
に関連付けます。このコマンドは階層名を無視します。たとえば、インスタンスがtop.myfirfilter
の場合、 matlabtb
コマンドはmyfirfilter
のみをMATLABに関連付けます。関数。指定したインスタンスをインスタンス名とは異なるMATLAB関数に関連付けるには、 -mfunc
引数と同様にpair1 ... pairN
指定を使用します。
メモ
すでにMATLAB関数に関連付けられている HDL モジュールのインスタンスを指定した場合 ( matlabcp
またはmatlabtb
経由)、新しい関連付け既存のものを上書きします。
データ型: char
| string
time-specs
— MATLAB関数の実行をスケジュールする
1 つ以上の時間指定のスペース区切りのリスト
1 つ以上の時間指定のスペース区切りのリスト。この表にリストされている 1 つ以上の時間指定のスペース区切りのリストとして指定します。
時間指定 | 説明 |
---|---|
time_1 time_2 ... time_n | HDL シミュレーターが指定されたMATLAB関数を呼び出す 1 つ以上の離散時間を指定します。指定された時間は、現在のシミュレーション時間を基準としています。時間を指定しない場合、HDL シミュレーターはシミュレーションの開始時にMATLAB関数を 1 回呼び出します。各time_iは、時間値を示す数値と、次のオプションの時間単位で構成されます。
時間単位を指定しない場合、コマンドは時間値を HDL シミュレーション ティックの値として扱います。各 time_i をスペースで区切ります。 たとえば、次のコードは、 MATLAB関数 matlabtb vlogmodel_top 10 ns, 10 ms, 10 sec |
-repeat <time> | HDL シミュレーターが指定された回数に基づいてMATLAB関数を繰り返し呼び出すように指定します。時間値は、HDL シミュレーターが最初にtnow MATLABの値を基準としています。 |
-cancel <time> | 指定したMATLAB関数の実行を停止する時刻を 1 回指定します。時間値は、HDL シミュレーターが最初に メモ
|
メモ
時間の指定は、 matlabtb
インスタンスの後、追加のコマンド引数の前に配置します。それ以外の場合、時間指定は無視されます。
pair1 ... pairN
— 追加仕様
1 つ以上の仕様ペアのスペース区切りのリスト
追加の仕様。1 つ以上の仕様ペアのスペース区切りのリストとして指定します。仕様のペアは、名前と値で構成されます。この表は、これらのペアの有効なオプションを示しています。
仕様のペア
名前 | 値 | 説明 |
---|---|---|
-socket | hdldaemon コマンドで発行された通信モードと一致する通信モード | HDL シミュレーターとHDL Verifier間の通信に TCP/IP ソケットを使用するには、 MATLABを指定します。共有メモリはデフォルトの通信モードであり、 TCP/IP ソケット ポートの選択の詳細については、 「 TCP/IPソケットポート 」を参照してください。 メモ
|
-rising | 1 つ以上の信号名のカンマ区切りのリスト | ロジック タイプとして定義された 1 つ以上の信号のパス名を使用して
メモ
|
-falling | 1 つ以上の信号名のカンマ区切りのリスト | ロジック タイプとして定義された 1 つ以上の信号のパス名を指定します ( 以下の信号遷移を決定する場合:
メモ
|
-sensitivity | 1 つ以上の信号名のカンマ区切りのリスト | 1 つ以上の信号のパス名を指定します。このペアは、指定された信号のいずれかが状態を変更するたびに、アプリケーションが指定されたMATLAB関数を呼び出すことを示します。任意のタイプの信号を感度リストに表示でき、HDL モデル階層の任意のレベルに配置できます。 メモ
|
-mfunc | MATLAB 関数名 | MATLABに指定する HDL モジュール インスタンスに関連付けられた |
-use_instance_obj | -use_instance_obj フィールドの表に記載されているフィールドを含む構造体 | このペアは、引数 |
-argument | HDL インスタンス引数 | HDL 側の |
-use_instance_obj
フィールド
フィールド | 読み取りまたは書き込みアクセス | 説明 |
---|---|---|
tnext | 書き込み専用 | 設定した時間内にコールバックをスケジュールします。このフィールドは、古い hdl_instance_obj.tnext = hdl_instance_obj.tnow + 5e-9 |
userdata | 読み取りまたは書き込み | 現在のmatlabtb インスタンスの状態変数を保存します。次回このインスタンスのコールバックがスケジュールされるときに変数を取得できます。 |
simstatus | 読み取り専用 | HDL シミュレータのステータスを保存します。HDL Verifierソフトウェアは、この特定のインスタンスの最初のコールバック中にこのフィールドを >> hdl_instance_obj.simstatus ans= Init |
instance | 読み取り専用 | コールバックに関連付けられたVerilogまたはVHDLインスタンスのフル パスを格納します。 HDL シミュレータでは次のようになります。 hdlsim> matlabtb osc_top -mfunc oscfilter use_instance_obj MATLAB で、以下を実行します。 >> hdl_instance_obj.instance ans= osc_top |
argument | 読み取り専用 |
matlabtb osc_top -mfunc oscfilter -use_instance_obj -argument foo -argument ペアで使用される場合にのみ、 -use_instance_obj オプションをサポートします。それ以外の場合、コマンドは引数を無視します。 argument は読み取り専用のプロパティです。 >> hdl_instance_obj.argument ans= foo |
portinfo | 読み取り専用 | このインスタンスに関連付けられているVHDLおよびVerilogポートに関する情報を保管します。 hdl_instance_obj.portinfo.field1.field2.field3
メモ
|
tscale | 読み取り専用 | HDL シミュレーターの解像度制限 (ティック) を秒単位で保存します。 >> hdl_instance_obj.tscale ans= 1.0000e-009 メモ
|
tnow | 読み取り専用 | 現在時刻を保存します。 hdl_instance_obj.tnext = hld_instance_obj.tnow + fastestrate; |
portvalues | 読み取りまたは書き込み |
>> hdl_instance_obj.portvalues ans = Read Only Input ports: clk_enable: [] clk: [] reset: [] Read/Write Output ports: sine_out: [22x1 char] |
linkmode | 読み取り専用 | コールバックのステータスを保存します。 HDL Verifier は、コールバックが >> hdl_instance_obj.linkmode ans= component |
バージョン履歴
R2008a で導入
参考
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)