Main Content

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

FPGA データ キャプチャを使用した OFDM 送受信の検証

この例では、 で生成したワイヤレス HDL IP を検証する方法を示します。この例では、実際のハードウェアで FPGA データ キャプチャを使用して IP コアの内部信号を監視および分析する方法も示します。

FPGA データ キャプチャ ツールを使用して、デバッグ分析のために JTAG 経由でハードウェア信号をキャプチャします。FPGA データ キャプチャは、適切なトリガとキャプチャ条件を使用して対象の信号をキャプチャするための多くの機能を提供します。次の手順を実行して、 whdlOFDMRx Model zynqRadioHWSWOFDMAD9361AD9364SL サブシステムの動作を検証します。

  • キャプチャ コントロールを使用して、有効なデータ コンスタレーション ポイントをキャプチャします。

  • トリガー条件と複数のウィンドウを使用して、CRC が失敗したフレームのヘッダー コンスタレーション ポイントをキャプチャします。

  • トリガー条件とトリガー位置を使用して、ピーク検索用の同期シーケンス (SS) 相関データをキャプチャし、タイミング オフセットを検証します。

要件

この例を実行するには、Xilinx Zynq ZC706 評価キットと FMCOMMS2/3/4 無線送信機ハードウェアが必要です。

ハードウェア セットアップ

  • の手順に従って、ホスト コンピューターと ZC706 ボードを FMCOMMS2/3/4 無線ハードウェアで構成します。

  • JTAG ケーブルを使用してボードをホスト コンピューターに接続します。

Simulinkモデルのセットアップ

  1. zynqRadioHWSWOFDMAD9361AD9364SL モデルを開きます。

  2. データ キャプチャを通じて分析する信号をテスト ポイントとしてマークします。信号をテスト ポイントとしてマークするには、信号を右クリックし、プロパティ をクリックします。次の図に示すように、Signal Properties ダイアログ ボックスの Logging and accessibility タブで、Test point チェックボックスを選択します。

あるいは、 hOFDMTxRxAddTestPointsヘルパー関数を使用して必要なテスト ポイントをマークし、モデルをzynqRadioHWSWOFDMAD9361AD9364SLVerifyとして保存します。この関数はサポート ファイルとしてサンプルに添付されています。

hOFDMTxRxAddTestPoints

この図は、ヘッダーおよびデータ コンスタレーション ポイントをキャプチャするためにwhdlOFDMRx Modelサブシステムでマークされたテスト ポイントを示しています。

この図は、SS 相関信号とタイミング オフセット信号を捕捉するためにSync Signal Searchサブシステムでマークされたテスト ポイントを示しています。

データ キャプチャを使用して HDL IP コアを生成し、ビットストリームをロードする

  • OFDM HDLサブシステムを右クリックし、HDL コード > HDL ワークフロー アドバイザー を選択して、ターゲティング ワークフローを開始します。

  • ステップ 1.1 で、ターゲット ワークフローIP Core Generationに設定し、ターゲット プラットフォームZC706 and FMCOMMS2/3/4に設定します。

  • ステップ 1.2 で、リファレンス デザインReceive and Transmit pathに設定します。この例では、リファレンス デザインパラメーターのデフォルト値を使用できます。

  • ステップ 1.3 で、「テスト ポイントの HDL DUT 出力ポート生成を有効にする」を選択して、すべてのテスト ポイントでインターフェイス テーブルを更新します。次に、ターゲット プラットフォーム インターフェイス テーブル で、テスト ポイント信号をFPGA Data Captureにマッピングします。IO ポートのマッピングについては、 「 」を参照してください。

  • 例の「IP コアの生成」セクションに従って、ステップ 1.4 からステップ 3.1 を実行します。

  • ステップ 3.2 で、FPGA データ キャプチャ バッファ サイズ32768に設定し、FPGA データ キャプチャの最大シーケンス深度2に設定します。この図に示すように、「FPGA データ キャプチャにキャプチャ条件ロジックを含める」を選択して、生成された FPGA データ キャプチャ コンポーネントにキャプチャ制御ロジックを挿入します。

  • ステップ 4.1 を実行し、 サンプルの「ソフトウェア インターフェイス モデルとブロック ライブラリの生成」セクションのステップに従って、ソフトウェア インターフェイス モデルを生成します。

  • ビットストリームを生成してボードにダウンロードするには、 サンプルの「ビットストリームの生成とロード」セクションに従います。

あるいは、 hOFDMTxRxRunHDLWATasksヘルパー関数を実行して、ステップ 1.1 からステップ 4.3 までのタスクを実行します。この関数はサポート ファイルとしてサンプルに添付されています。

hOFDMTxRxRunHDLWATasks

IPコアからのデータのキャプチャと分析

生成された IP コアのテスト ポイントをキャプチャし、FPGA データ キャプチャにマッピングします。FPGA データ キャプチャがトリガを待っている間にソフトウェア インターフェイス モデルを実行するには、FPGA データ キャプチャ ツールをノンブロッキング モードで起動します。

cd(fullfile('hdl_prj','hdlsrc', ...
   'zynqRadioHWSWOFDMAD9361AD9364SLVerify','fpga_data_capture'));
fdc = FPGADataCapture;
fdc.CaptureMode = 'nonBlocking';
fdc.launchApp;

OFDM ソフトウェア インターフェイス モデルを開きます。モデルをMonitor & Tuneモードで実行して、 Simulinkモデルから構成を制御します。

open_system('zynqRadioHWSWOFDMAD9361AD9364SL_interface');

キャプチャデータコンスタレーションポイント

Channel and CPE Estimation and Correctionサブシステムからの周波数領域、チャネル等化、および共通位相誤差 (CPE) 補正されたデータ副搬送波を使用して、データ コンスタレーション ダイアグラムをプロットします。有効なデータ コンスタレーション ポイントのみをキャプチャするには、FPGA データ キャプチャ ツールの キャプチャ条件 タブで キャプチャ条件ロジックを有効にする を選択し、 tp_dataValid_1を値High の信号として追加します。 $$$、この図が示すように。「データのキャプチャ」をクリックします。

データのキャプチャが完了したら、ボードがキャプチャしたデータを使用してコンスタレーション ダイアグラムをプロットします。

ソフトウェア インターフェイス モデルのenableInternaLoopbackfalseの場合、無線ハードウェアは、Tx アンテナと Rx アンテナをそれぞれ介して OFDM 信号を送信および受信します。チャネル障害により、信号がリアルタイムで無線を通過する際に信号が変化します。このシナリオでは、コンスタレーション プロットを使用して受信信号の品質を分析します。ソフトウェア インターフェイス モデルのmodTypeを変更し、データ コンスタレーション ダイアグラムが期待どおりに表示されることを確認することもできます。

hOFDMTxRxPlotDataConstellationFDC

失敗した CRC のヘッダー コンスタレーション ポイントをキャプチャする

チャネルの信号対雑音比 (SNR) が低い場合、チャネル等化と CPE 補正後の有効なヘッダー データに CRC エラーが発生することがよくあります。ソフトウェア インターフェイス モデルを使用して、これらの条件をエミュレートできます。

ソフトウェア・インターフェース・モデルで、 enableInternalLoopbacktrueに設定し、 snrdB3に設定します。これらのトリガー設定を使用して、CRC が失敗したときに 2 つのヘッダー フレームの I/Q データをキャプチャします。

「データのキャプチャ」をクリックします。DSP System Toolbox™ライセンスをお持ちの場合、Logic Analyzer アプリは、キャプチャしたデータを複数の信号波形としてプロットします。キャプチャされたデータ内の信号tp_nSyncedFramesは、CRC が失敗したフレームの番号を示します。

Sync Signal Searchサブシステムの機能を検証する

Sync Signal Searchサブシステムは SS 相関を実装します。サブシステムは、受信信号と SS 信号を時間領域で継続的に相互相関させることによって SS 検出を実行します。さらに、サブシステムは各タイム ステップで相関器のスパン内の信号のエネルギーを計算し、その値をスケーリングしてしきい値を生成します。Max Peak Searcherサブシステムは、各 OFDM フレーム期間内の最大相関ピークを検索します。Sync Signal Searchサブシステムでは、 SearchHold信号は、搬送波周波数オフセットを推定するまで最大ピーク検索を無効にします。SSPeakSearchDone信号は、各 OFDM フレーム期間のピーク検索の完了後に High になります。FFT 長が 128 の場合、フレーム期間は 5760 サンプルです。フレーム期間の開始からの最大ピークの位置がタイミング オフセットを与えます。各 OFDM フレーム期間で相関の有効なサンプルをキャプチャして、相関データを視覚化し、タイミング オフセットを記録できます。

Trigger タブで、Trigger Stage 1 に値tp_searchHold_1を持つ信号としてHighを追加します。各フレーム期間の相関データをキャプチャするには、Trigger Stage 2 で値 tp_SSPeakSearchDone_1Highを追加し、Trigger Position をに設定します。 5759。これらの設定により、信号がこれらのトリガーを満たす前に、ツールが 5760 個の有効な相関サンプルをキャプチャすることが保証されます。サンプル 5761 ~ 11520 は、次の OFDM フレーム期間の相関関係などに対応します。

各フレーム期間で有効な相関データをキャプチャするには、キャプチャ条件 タブで キャプチャ条件ロジックを有効にする を選択します。この図に示すように、 tp_correlationValid_1 を値Highの信号として追加します。

「データのキャプチャ」をクリックします。《ロジック アナライザー》は、キャプチャしたデータを複数の信号波形として表示します。

hOFDMTxRxPlotSSCorrelationヘルパー関数を実行して、取得した相関としきい値をプロットすることでピークを視覚化します。フレーム期間の開始に対する各フレームのピークのインデックスがタイミング オフセットを与えます。

  hOFDMTxRxPlotSSCorrelation

結論

この例では、IP コアの内部信号を FPGA データ キャプチャにマッピングし、デザインを FPGA に展開した後に信号を視覚化する方法を示します。対象の信号をキャプチャするには、FPGA データ キャプチャ ツールのトリガーおよびキャプチャ コントロール構成を使用します。このアプローチを使用して、独自の HDL IP コアを分析およびデバッグできます。

参考

|

関連する例

詳細