Main Content

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

データキャプチャのワークフロー

FPGA での設計の実行中に、FPGA データ取得を使って設計からの信号を観察します。この機能は、FPGA から信号データのウィンドウをキャプチャし、そのデータを JTAG またはイーサネット インターフェイス経由でMATLAB®またはSimulink®に返します。

メモ

JTAG 接続を介した FPGA データ キャプチャは、Intel®およびXilinx® FPGA ボードで利用できます。イーサネット接続を介した FPGA データ キャプチャは、Xilinx FPGA ボードでのみ使用できます。

2 つのワークフローのいずれかを使用して、FPGA ボードからデータをキャプチャし、 MATLABまたはSimulinkに送信できます。

  • HDL Coder™ワークフロー — HDL Coderで HDL IP を生成する場合、HDL ワークフロー アドバイザー ツールを使用してデータ キャプチャ IP を生成し、デザインに統合します。

  • 既存の HDL デザイン - 既存の HDL デザインがある場合は、 HDL Verifier™ツールを使用してデータ キャプチャ IP を生成します。次に、生成された IP を FPGA デザインに手​​動で統合します。

どちらのワークフローでも、デザインから信号をキャプチャするために、 HDL Verifier はMATLABと通信する IP コアを生成します。HDL Coderワークフローを使用して、データ キャプチャ IP コアをデザインに自動的に統合します。それ以外の場合は、この IP コアを HDL プロジェクトに手動で統合し、デザインの残りの部分とともに FPGA にデプロイします。次に、次のいずれかの方法を使用してデータをキャプチャします。

  • データをキャプチャしてMATLABに送信します – HDL Verifier は、キャプチャされた信号データを返すカスタマイズされたツールを生成します。あるいは、生成されたSystem object™を使用して、プログラムでデータをキャプチャすることもできます。

  • データをキャプチャしてSimulinkに送信します – HDL Verifier は、キャプチャした信号に対応する出力ポートを持つブロックを生成します。

どちらの場合も、キャプチャされたデータのデータ型、キャプチャするウィンドウの数、データをいつキャプチャするかを制御するトリガー条件、およびどのデータをキャプチャするかを制御するキャプチャ条件を指定できます。

デザインが FPGA 上で実行されている場合、生成された IP コアはまず、指定されたトリガー条件を待ちます。1 つ以上の信号に一致する特定の値によってトリガー条件を定義します。トリガーが検出されると、ロジックは指定された信号をバッファーにキャプチャし、JTAG またはイーサネット インターフェイス経由でデータをホスト マシンに返します。これらの信号をMATLABワークスペースまたはSimulinkモデルで解析して表示できます。

バッファ サイズを最大限に活用して有効なデータのみをキャプチャするために、キャプチャ条件を定義することもできます。トリガー条件を定義するのと同じ方法でキャプチャ条件を定義します。トリガーが検出され、キャプチャ条件が満たされた場合、ロジックは指定された信号の有効な値のみをキャプチャします。

HDL ワークフロー アドバイザーを使用したデータ キャプチャ IP の生成と統合

HDL ワークフロー アドバイザー ツールを使用して HDL デザインを生成する場合は、まず対象となる信号をSimulinkのテスト ポイントとしてマークします。HDL ワークフロー アドバイザー ツールを使用してデザインを構成すると、次のことが可能になります。

  • TG Set Target Reference DesignFPGA Data Capture (HDL Verifier required)パラメーターを設定して、接続チャネルのタイプを選択します。詳細については、ターゲットのリファレンス設計を設定 (HDL Coder)を参照してください。

  • Set Target InterfaceEnable HDL DUT port generation for test pointsパラメーターを選択して、テスト ポイントの生成を有効にします。詳細については、ターゲット インターフェイスを設定 (HDL Coder)を参照してください。

  • テスト ポイント信号をFPGA Data CaptureタスクのSet Target Interfaceインターフェイスに接続します。

  • Generate RTL Code and IP Coreタスクでデータ収集のバッファ サイズと最大シーケンス深さを設定します。IP コアにキャプチャ条件ロジックを含めるには、 Include capture condition logic in FPGA Data Captureを選択します。詳細については、RTL コードと IP コアの生成 (HDL Coder)を参照してください。

次に、残りの手順を実行してデザイン用の HDL を生成し、FPGA をプログラムします。データ キャプチャ IP コアは、生成されたデザインに統合されます。これで、 データのキャプチャを実行する準備ができました。

既存の HDL デザインの IP コアの構成と生成

FPGA データをキャプチャする前に、まずキャプチャする信号と返すサンプルの数を指定します。FPGA データ キャプチャ コンポーネント ジェネレーターを使用して、これらの設定およびその他の設定を構成し、HDL IP コアを生成します。IP コアには以下が含まれます。

  • キャプチャまたはトリガー条件の一部として使用する各信号のポート

  • 各信号に対して要求したサンプル数をキャプチャするためのメモリ

  • MATLABと通信するための JTAG またはイーサネット インターフェイス ロジック

  • 実行時に構成可能なトリガーおよびキャプチャ条件ロジック

  • FPGA からのデータ フローを制御するためのすぐに取り込める信号

このツールは、カスタマイズされた FPGA データ キャプチャ ツールSystem objectと、FPGA と通信するモデルも生成します。

IPをFPGAに統合

MATLAB がFPGA と通信するには、生成された HDL IP コアを FPGA デザインに統合する必要があります。HDL ワークフロー アドバイザー ツールを使用してデータ キャプチャ IP を生成した場合、この手順は自動化されます。この場合、データ キャプチャ IP は、テスト対象デバイス (DUT) のプライマリ クロックであるシングル クロック レートで動作します。HDL ワークフロー アドバイザー ツールを使用しなかった場合は、デバイス ファミリに基づいて生成レポートの指示に従ってください。

IntelまたはXilinxVersalデバイス

以下の手順に従って、datacapture HDL IP コアを、IntelまたはXilinx非をターゲットとする FPGA デザインに統合します。 Versal®デバイス。

  1. Quartus®またはVivado®プロジェクトを作成します。

  2. hdlsrcフォルダーに移動します。

  3. 接続の種類に応じて、次のいずれかの手順に従います。

    • JTAG — hdlsrcフォルダーに生成された HDL ファイルをQuartusまたはVivadoプロジェクトに追加します。次に、HDL コード内で HDL IP コアdatacaptureをインスタンス化します。datacapture を、キャプチャとトリガーのために要求した信号に接続します。

    • イーサネット (Xilinxのみ) - insertEthernet Tcl コンソールでこのコマンドを実行して、 Vivadoスクリプトを実行します。

      source ./insertEthernet.tcl

Xilinx Versalデバイス

以下の手順に従って、 datacapture HDL IP コアをXilinx Versalデバイスをターゲットとする FPGA デザインに統合します。

メモ

Versalデバイスの FPGA データ キャプチャ サポートは、JTAG 接続でのみ利用できます。

  1. Vivadoでブロック デザインを開きます。

  2. hdlsrcフォルダーに移動します。

  3. datacapture IP をブロック デザインに挿入し、これを実行して、その IPを Xilinx Versalプラットフォーム CIPS IP の BSCAN_USER2 インターフェイスに接続します。 Vivado Tcl コンソールのコマンド。

    source ./insertVersalFPGADataCaptureIP.tcl
    BSCAN_USER2 インターフェイスを有効にするには、CIPS IP で PL BSCAN1 インターフェイスを有効にします。

  4. clkclk_enable、およびデータ キャプチャ IP の入力データ ポートを接続して、ブロック デザインを完成させます。

    Vivado block design showing the data capture IP connected to the BSCAN_USER2 interface of the CIPS IP

プロジェクトをコンパイルし、JTAG ケーブルを介して新しいイメージを使用して FPGA をプログラムします。

データのキャプチャ

FPGA データ キャプチャ IP コアは、FPGA ボードとホスト コンピューターの間で JTAG またはイーサネット ケーブルを介して通信します。必要なケーブルが接続されていることを確認してください。データを取り込む前に、取り込むデータのデータ型を設定したり、データを取り込むタイミングを指定するトリガー条件を設定したり、取り込むデータを指定する取り込み条件を設定したりできます。これらのオプションを構成してデータをキャプチャするには、次のことができます。

  • FPGA データ キャプチャ ツールを開きます。トリガー、キャプチャ条件、データ型パラメーターを設定し、データをMATLABワークスペースにキャプチャします。

  • System objectから派生して生成されたhdlverifier.FPGADataReaderを使用します。System objectのメソッドとプロパティを使用してデータ型、トリガー条件、キャプチャ条件を設定し、オブジェクトを呼び出してデータをキャプチャします。

  • Simulinkで、生成されたモデルを開き、 FPGA Data Readerブロックのパラメーターを構成します。次に、モデルを実行してデータをキャプチャします。

データをキャプチャしてMATLABワークスペースまたはSimulinkモデルにインポートした後、データを分析、検証、表示できます。

参考

| | |

関連するトピック