Main Content

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

collectData

キャプチャしたデータをFPGAから非ブロッキングモードでホストに収集する

R2022a 以降

説明

capturedData = collectData(DC) は、非ブロッキング キャプチャ モードで FPGA からキャプチャされたデータをホスト マシンに返します。DC はカスタマイズされたデータ キャプチャ オブジェクトです。

メモ

collectData 関数はブロッキング キャプチャ モードではサポートされません。

すべて折りたたむ

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

この例では、データ キャプチャ用の 2 つの信号を定義する生成されたオブジェクト datacapture を使用します。信号 A は 16 ビットで、信号 B は 8 ビットです。両方の信号はトリガー条件でも使用できます。サンプル深度は 1024 サンプルです。

キャプチャ モードを非ブロッキング モードに変更します。

DC.CaptureMode = 'nonblocking';

データ キャプチャ オブジェクトの現在のステータスを確認します。

status = checkStatus(DC)
status = 

  struct with fields:

    CapturedWindows: 0
          RunStatus: 'Not started'
       TriggerStage: 0

信号 B が 10 に等しいときにデータをキャプチャするトリガー条件を定義します。

setTriggerCondition(DC,'B',true,10);

step 関数を使用して、指定されたトリガー イベントのデータをキャプチャします。

dataOut = step(DC);

データ キャプチャ オブジェクトの現在のステータスを確認します。

status = checkStatus(DC)
status = 

  struct with fields:

    CapturedWindows: 1
          RunStatus: 'Successfully captured data from FPGA'
       TriggerStage: 0

キャプチャしたデータを収集します。

capturedData = collectData(DC)
Captured 1 windows of data from FPGA.

capturedData = 

  struct with fields:

      Capture_Window: [1024×1 uint32]
    Trigger_Position: [1024×1 logical]
                   A: [1024×1 uint16]
                   B: [1024×1 uint8]

入力引数

すべて折りたたむ

hdlverifier.FPGADataReader System object として指定されたカスタマイズされたデータ キャプチャ オブジェクト。

出力引数

すべて折りたたむ

キャプチャされたデータは、Capture_Window 信号のフィールド、Trigger_Position 信号のフィールド、および FPGA データ キャプチャによって取得された各信号のフィールドを含む構造体として返されます。キャプチャされた信号フィールドは、生成時にデータキャプチャのために要求された各信号の Sample depth 値のベクトルです。構造体のフィールドには、これらの信号名があります。

  • Capture_Window — この信号は現在のキャプチャ ウィンドウを示します。

  • Trigger_Position — この信号は、キャプチャ バッファ内のトリガー検出クロック サイクルの位置を示します。

  • 残りのすべてのフィールド - 生成時に指定した信号名。

バージョン履歴

R2022a で導入