Main Content

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

FPGA Data Capture

ライブFPGAからMATLABワークスペースに対話的にデータをキャプチャします

説明

FPGA データ キャプチャ ツールは、FPGA 上で実行されているデザインからデータをキャプチャし、 MATLAB®ワークスペースに返します。戻り値のデータ型を構成し、キャプチャ ウィンドウの数とトリガー ステージの数を指定し、データをキャプチャするタイミングを制御するトリガー条件を設定し、キャプチャするデータを制御するキャプチャ条件を設定できます。

FPGA Data Capture tool with two trigger stages

このツールを使用する前に、FPGA データ キャプチャ コンポーネント ジェネレーター ツールを使用して、カスタマイズされたデータ キャプチャ コンポーネントを生成しておく必要があります。また、生成された IP コードをプロジェクトに統合し、FPGA にデプロイする必要があります。このツールは、JTAG またはイーサネット ケーブルを介して FPGA と通信します。必要なケーブルがボードとホスト コンピュータの間に接続されていることを確認してください。

このツールは、生成されたhdlverifier.FPGADataReader System object™のラッパーです。FPGA データ キャプチャ ツールは、ワークスペースで変数fpgadc_objを定義します。この変数がすでに存在する場合、ツールは既存のオブジェクトを使用して開き、そのオブジェクトへの変更を保存します。

ワークフローの概要については、 「データキャプチャのワークフロー」を参照してください。

FPGA Data Capture を開く

  • MATLAB コマンド プロンプト: 「launchDataCaptureApp」と入力します。この関数は、他の生成されたデータ キャプチャ コンポーネントと同じフォルダーに生成されたスクリプトです。

パラメーター

すべて展開する

デフォルト設定のキャプチャImmediately、トリガー条件は無視され、 Capture Dataをクリックするとデータのバッファがキャプチャされます。FPGA ロジックの特定のイベントを含むデータをキャプチャするには、トリガー条件を構成し、 On triggerを選択します。この場合、データ キャプチャ ロジックはトリガー条件が true になるまで待機し、その後データのバッファをキャプチャします。

Capture Dataをクリックすると、 Stopボタンのあるウィンドウが開きます。キャプチャの試行をキャンセルしたい場合 (トリガー条件が発生しない場合など)、 Stopをクリックして制御をツールに戻します。キャプチャの試行を中止すると、 MATLABにはデータが返されません。

出力

キャプチャされたデータは、ベースMATLABワークスペースの構造体変数に返されます。各信号から返されるデータは、Sample depth値のベクトルです。各信号は構造体のフィールドになります。構造体のフィールド名はSignal Nameと同じです。

このオプションは、 DSP System Toolbox™ライセンスをお持ちの場合に表示されます。このオプションを選択すると、データ キャプチャの完了後、ツールは [ロジック アナライザ] ウィンドウを開き、キャプチャされたデータを表示します。時間軸はサンプル単位で測定されます。カーソルの位置は、トリガーが検出された時間を示します。

トリガー

このパラメーターは読み取り専用です。生成時に指定した値が反映されます。

キャプチャする繰り返しの数を指定します。この値は 2 のべき乗である必要があり、 Sample depthを超えることはできません。サンプルの深さを指定するときは、データを読み取るときに構成する予定のウィンドウの数を考慮してください。これは、これらのウィンドウが各キャプチャ ウィンドウのウィンドウの深さに影響を与えるためです。ウィンドウの深さは、 Sample depthNumber of capture windowsで割ったものです。FPGA データ キャプチャ コンポーネント ジェネレーター ツールでSample depthを指定します。

以下に例を示します。Sample depth4096で、 Number of capture windows4の場合、各キャプチャ ウィンドウのウィンドウ深度は1024

トリガーの段数を指定します。この値は 1 ~ Mの整数である必要があります。TG Mは、FPGA データ キャプチャ コンポーネント ジェネレーター ツールの [最大トリガー ステージ]パラメーターによって設定されます。Max trigger stagesパラメーターを指定する場合は、データをキャプチャするためのトリガー条件を構成する予定のトリガー ステージの最大数を考慮してください。

たとえば、 Max trigger stages4の場合、 Number of trigger stages1、 になります。 $23、または4

デフォルトでは、トリガが検出されたときのクロック サイクルはキャプチャ バッファの最初のサンプルです。キャプチャ バッファ内でのトリガ検出サイクルの相対位置を変更できます。デフォルト以外のトリガー位置は、トリガーが発生する前に一部のサンプルがキャプチャされることを意味します。このパラメーターは、 0 からwindow depth—1 までの任意の数値に設定できます。トリガ位置がwindow depth-1 に等しい場合、最後のサンプルはトリガが発生したときのサイクルに対応します。Number of capture windowsが 1 より大きい場合、同じトリガー位置がすべてのウィンドウに適用されます。詳細については、トリガーを参照してください。

このパラメーターは読み取り専用です。生成時に指定した信号名が、下部のドロップダウン メニューにリストされます。+ボタンをクリックして、トリガー条件に信号を追加します。

信号を比較するには、次の演算子のいずれかを選択します: ==!=<><=、または>=Xまたはx (ドントケア値) を含む信号を比較するには、 ==または!=を指定します。 $演算子。

トリガー条件は、1 つ以上の信号の値比較で構成できます。このパラメーターは、各信号に一致する値を指定します。

マルチビット信号の場合は、信号に関連付けられたデータ型の範囲内の 10 進数、2 進数、または 16 進数の値を指定します。16 進値または 2 進値を指定するときに、 Xまたはx (ドントケア値) を組み合わせて値を指定して、ビット マスキングを有効にすることができます。値を比較する際、トリガー条件はXまたはxの位の値を破棄し、出力を提供します。

読みやすくするためにビットのグループを分離するには、ビット間に_を使用できます。たとえば、32 ビットのバイナリ値を0b1010_XXXX_1011_XXXX_1110_XXXX_1111XXXXとして表し、32 ビットの 16 進値を0xAB_CDEXFXとして表すことができます。

boolean信号の場合、レベルまたはエッジ条件を選択します。詳細については、トリガーを参照してください。

このパラメーターは、ロジック ゲートのアイコンで示されます。[Change operator]ボタンをクリックして、 ANDORを切り替えます。

トリガー条件は、1 つ以上の信号の値比較で構成できます。これらの値の比較を 1 種類の論理演算子のみと組み合わせます。3 つの信号AB、およびCがトリガー条件を構成しているとします。次のオプションがあります。

A == 10 AND B == 'Falling edge' AND C == 0
または

A == 10 OR B == 'Falling edge' OR C == 0
組み合わせ演算子を組み合わせて使用​​することはできません。詳細については、トリガーを参照してください。

この多数のデータ キャプチャ IP コア クロック サイクル内で、このパラメーターを有効にしているトリガー ステージでトリガー条件が発生する必要があります。要件に応じて、1 ~ 65,536 の任意の整数値を指定できます。トリガーステージでトリガータイムアウトを有効にするには、このパラメーターを選択します。Trigger Stage 1ではトリガーのタイムアウトは許可されません。

捕獲条件

データ キャプチャ IP コアのキャプチャ条件ロジックを有効にするには、このパラメーターを選択します。キャプチャ条件ロジックを有効にして、キャプチャ条件を使用して FPGA からどのデータをキャプチャするかを制御します。データ キャプチャ IP コアは、クロック サイクルごとにキャプチャ条件を評価し、キャプチャ条件を満たすデータのみをキャプチャします。取得条件の詳細については、捕獲条件を参照してください。

依存関係

このパラメーターを有効にするには、FPGA データ キャプチャ コンポーネント ジェネレーター ツールでInclude capture condition logicを選択します。

このパラメーターは読み取り専用です。生成時にトリガーとして指定した信号名が、下部のドロップダウン メニューにリストされます。+ボタンをクリックして、キャプチャ条件に信号を追加します。

依存関係

このパラメーターを有効にするには、 Enable capture condition logicを選択します。

信号を比較するには、次の演算子のいずれかを選択します: ==!=<><=、または>=Xまたはx (ドントケア値) を含む信号を比較するには、 ==または!=を指定します。 $演算子。

依存関係

このパラメーターを有効にするには、 Enable capture condition logicを選択します。

キャプチャ条件は、1 つ以上の信号の値の比較で構成できます。このパラメーターは、各信号に一致する値を指定します。

マルチビット信号の場合は、信号に関連付けられたデータ型の範囲内の 10 進数、2 進数、または 16 進数の値を指定します。16 進値または 2 進値を指定する場合、 Xまたはx (ドントケア値) を組み合わせて値を指定して、ビット マスキングを有効にすることができます。値を比較する際、キャプチャ条件はXまたはxの位の値を破棄し、出力を提供します。

読みやすくするためにビットのグループを分離するには、ビット間に_を使用できます。たとえば、32 ビットのバイナリ値を0b1010_XXXX_1011_XXXX_1110_XXXX_1111XXXXとして表し、32 ビットの 16 進値を0xAB_CDEXFXとして表すことができます。

boolean信号の場合、レベルまたはエッジ条件を選択します。詳細については、捕獲条件を参照してください。

依存関係

このパラメーターを有効にするには、 Enable capture condition logicを選択します。

このパラメーターは、ロジック ゲートのアイコンで示されます。[Change operator]ボタンをクリックして、 ANDORを切り替えます。

キャプチャ条件は、1 つ以上の信号の値の比較で構成できます。これらの値の比較を 1 種類の論理演算子のみと組み合わせます。組み合わせ演算子を組み合わせて使用​​することはできません。詳細については、捕獲条件を参照してください。

依存関係

このパラメーターを有効にするには、 Enable capture condition logicを選択します。

データ型

このパラメーターは読み取り専用です。生成時に指定した値が反映されます。この名前は、構造体変数のフィールドの名前です。

このパラメーターは読み取り専用です。生成時に指定した値が反映されます。

Data Typeメニューには、キャプチャされた信号のビット幅に一致するデータ型の提案が表示されます。このサイズは、生成された IP 上のポートに指定した幅です。このフィールドに入力してカスタム データ型を指定できます。信号が 8、16、または 32 ビットの場合、デフォルトはuintです。信号が 1 ビットの場合、デフォルトはbooleanです。信号の幅が異なる場合、デフォルトはnumerictype(0,bitWidth,0)です。

このツールは、信号ビット幅に応じて、次のデータ型をサポートします: booleanuint8int8uint16int16halfuint32int32singleuint64int64double、およびnumerictype

バージョン履歴

R2017a で導入