Main Content

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

捕獲条件

キャプチャ条件とは何ですか?

キャプチャ条件は、FPGA からキャプチャするデータを制御する論理ステートメントです。キャプチャ条件は、次のような場合に使用します。

  • FPGA データ キャプチャを使用してカスタム デザインをデバッグするには、有効なデータのみをキャプチャします。

  • トリガー条件に基づいてキャプチャするデータをフィルタリングします。

  • FPGA データ キャプチャ バッファの使用を最適化します。

  • 対象となるキャプチャされたサンプルが少数の場合に、キャプチャされたデータを効率的に分析します。

キャプチャ条件は、1 つ以上の FPGA 信号に対する値比較テストで構成されます。次に例を示します。

counter == 100

すべてのキャプチャ比較は同期されます。ブール信号のエッジ条件を指定すると、IP コアは現在のサンプリング値と前のクロック サイクルのサンプリング値を比較します。

fifo_full == 'Rising edge' 

キャプチャ条件は、同じクロック サイクルで条件のすべての項が真である場合に満たされます。信号ごとに 1 つの値の比較のみ使用できます。

receiver_state == 3 OR message_detected == 'High'
fifo_cnt == 0 AND fifo_pop == 'High'

キャプチャ条件では、1 種類の論理演算子のみを使用できます。AND 条件と OR 条件を混在させることはできません。

fifo_empty == 'Rising edge' OR fifo_full == 'Rising edge' OR memctrl_state == 2
receiver_state == 3 AND message_addr == 148 AND pkt_type == 5

キャプチャ条件では複数の比較演算子を使用できます。

fifo_empty == 'Rising edge' OR fifo_full != 'LOW' OR memctrl_state == 2
receiver_state == 3 AND message_addr > 148 AND pkt_type >= 5

キャプチャ条件では、X または x (don't care 値) を使用できます。比較中、キャプチャ条件は X の位の値を無視します。キャプチャ条件が 0b1X1 の場合、可能なトリガー条件値は 0b101 または 0b111 です。

receiver_state == 3 AND message_addr == 148 AND pkt_type == 0b1X1

キャプチャ条件の設定

生成時に、キャプチャ条件で使用できるようにする信号を指定します。トリガーのみを含む信号、またはトリガーとキャプチャされたデータの両方を含む信号を使用できます。トリガーとして指定した任意の信号を使用して、キャプチャ時にキャプチャ条件を変更できます。また、生成時に、キャプチャ条件を使用するためのキャプチャ条件ロジックを組み込むこともできます。FPGA 上のデータ キャプチャ IP コアは、MATLAB® からキャプチャ定義を受信し、キャプチャ イベントを検出するためにオンチップ マルチプレクサを構成します。

FPGA Data Capture ツールまたは FPGA Data Reader ブロックを使用する場合は、Capture Condition タブで Enable capture condition logic パラメータを選択し、キャプチャ条件を設定します。表の各行は、1 つの信号の値の比較です。信号値を結合するには、キャプチャ条件結合演算子を使用します。このタブに信号を表示するには、生成時に信号をトリガーとして指定する必要があります。

FPGA Data Capture screen showing Capture Condition tab

hdlverifier.FPGADataReader System object™ の場合、EnableCaptureCtrl プロパティを使用してキャプチャ条件ロジックを有効にします。次に、setCaptureConditionsetCaptureConditionComparisonOperatorsetCaptureConditionCombinationOperator オブジェクト関数を使用してキャプチャ条件を構成します。構成を確認するには、displayCaptureCondition オブジェクト関数を呼び出します。

トリガーとキャプチャ条件の違い

トリガー条件は、FPGA からデータをキャプチャするタイミングを制御します。トリガー条件が満たされると、データ キャプチャ IP コアはそのトリガー イベントからデータをキャプチャします。キャプチャ条件は、キャプチャするデータを制御します。データ キャプチャ IP コアは、各クロック サイクルでキャプチャ条件を評価し、キャプチャ条件を満たすデータのみをキャプチャします。

FPGA データ キャプチャは、即時モードとトリガー モードの 2 つのモードで動作します。データ キャプチャ IP コアは、即時モードではトリガー条件をチェックせずに、トリガー モードではトリガー条件に基づいて FPGA からデータをキャプチャします。どちらのモードでもキャプチャ条件を指定できます。

キャプチャ条件を使用してキャプチャするデータをフィルタリングします。即時モードでは、キャプチャ条件を使用して、特定の条件が満たされた場合にのみデータをキャプチャします。トリガー モードでは、キャプチャ条件を使用して、トリガー条件を満たした後、特定の条件が満たされた場合にのみデータをキャプチャします。

データキャプチャモードトリガー条件のみキャプチャ条件のみトリガー条件とキャプチャ条件の両方
すぐに

すべてのトリガー条件を無視します

各クロックサイクルで即座にデータをキャプチャします

キャプチャ条件が真の場合にのみデータをキャプチャします

すべてのトリガー条件を無視します

キャプチャ条件が真の場合にのみデータをキャプチャします

トリガー

トリガー条件が真になるまで待機し、データをキャプチャします

サポートされていません。代わりに即時モードを使用してください

トリガー条件が真になるまで待機し、キャプチャ条件が真である場合にのみデータをキャプチャします。

参考

ツール

オブジェクト

ブロック

関連するトピック