外部メモリー・インターフェイス Agilex™ 7 FシリーズおよびIシリーズFPGA IPユーザーガイド

ID 683216
日付 3/29/2024
Public
ドキュメント目次

11.8. デフォルトのトラフィック・ジェネレーターの使用

Traffic Generator (TG) IPインスタンスは、すべてのEMIFデザイン例に存在します。その目的は、EMIF IPインスタンスをctrl_amm_*ポートを介して接続し、サンプル・トラフィック (書き込みと読み出し) をEMIF経由でメモリーに送信することです。TGのトラフィック・パターンはパラメーター化が可能です。また、TGがリセットを終了すると開始するようにコンフィグレーションされています。

トラフィック・ジェネレーターはまた、書き込まれたデータと読み出されたデータを比較し、次のステータスビットのいずれかを設定します。

  • traffic_gen_pass (TGP ISSP): 書き込みおよび読み出しコマンドがすべてEMIFに送信され、すべての読み出し応答を受信しており、すべての書き込みおよび読み出しが想定どおりに一致することを示します。
  • traffic_gen_fail (TGF ISSP): 書き込みおよび読み出しコマンドがすべてEMIFに送信され、すべての読み出し応答を受信していますが、1つ以上の書き込みと読み出しの不一致が発生していることを示します。
  • traffic_gen_timeout (TGT ISSP): 想定されている読み出し応答を1つ以上受信していないことを示します。
図 207. EMIFデザイン例の概要

生成されるEMIFデザイン例の一般的な情報に関しては、External Memory Interfaces Intel Agilex® 7 F-Series and I-Series FPGA IP Design Example User Guideを参照してください。

トラフィック・ジェネレーターによって生成されるそれぞれの操作は、単一の書き込みまたは書き込みのブロックです。その後同じアドレスに単一の読み出しまたは読み出しのブロックが続きます。これにより、ドライバーで、メモリー・インターフェイスが読み出しデータを戻す際に想定されるデータを正確に特定することができます。

トラフィック・ジェネレーターは、トラフィック生成ブロック、 Avalon® メモリーマップド・インターフェイス、読み出し比較ブロックで構成されます。トラフィック生成ブロックでアドレスと書き込みデータを生成し、それを Avalon® メモリーマップド・インターフェイスで送信します。読み出し比較ブロックは、 Avalon® メモリーマップド・インターフェイスから受信した読み出しデータと、トラフィック・ジェネレーターからの書き込みデータを比較します。受信したデータが想定しているデータではない場合は常に、読み出し比較ブロックにエラーが記録されます。すべてのデータの読み出しが完了すると、エラーがあったことを通知し、トラフィック・ジェネレーターは失敗状態になります。すべてのパターンが正常に生成されて比較された場合、トラフィック・ジェネレーターは合格状態になります。

図 208. トラフィック・ジェネレーターのデフォルトの動作

トラフィック・ジェネレーター内の主な状態は次のとおりです。

  • 個別の読み出しおよび書き込みの生成
  • ブロックでの読み出しおよび書き込みの生成
  • 合格状態
  • 失敗状態

それぞれの生成状態には、次のサブ状態があります。

  • シーケンシャル・アドレス生成
  • ランダムアドレス生成
  • シーケンシャル・アドレス生成とランダムアドレス生成の混在

読み出しと書き込みの生成

トラフィック・ジェネレーターは、個別またはブロックの読み出しおよび書き込みを生成することができます。トラフィック・ジェネレーターの個別の読み出しおよび書き込み生成状態時の個別の読み出しと書き込み生成では、トラフィック生成ブロックで個別の書き込み Avalon® メモリーマップド・インターフェイス・トランザクションを生成し、それに続いて個別の読み出し Avalon® メモリーマップド・インターフェイス・トランザクションを生成します。トランザクションのアドレスは特定のサブ状態に応じて選択されます。

ブロック読み出しと書き込みの生成

トラフィック・ジェネレーターのブロックでの読み出しおよび書き込み生成状態時に、トラフィック・ジェネレーター・ブロックでは、パラメーター化が可能な数の書き込み操作と、それに続いて同じ数の読み出し操作を生成します。ブロックに対して生成される特定のアドレスは、特定のサブ状態に応じて選択されます。

トラフィック・ジェネレーターは、さまざまな解析およびデバッグ・アプリケーションに使用することができます。次に例を示します。

  • シミュレーションおよびハードウェアで、外部メモリー・インターフェイスが正しくコンフィグレーションされて機能していることを確認します。
  • インターフェイスの安定性とキャリブレーション結果を評価します。Driver Marginingタブの項を参照してください。
  • 単一ピンの障害などのハードウェアの問題を分離します。
  • 読み出しの失敗と書き込みの失敗を区別します。
  • ハードウェアのデバッグに向けた無限トラフィックを実行します。
  • インターフェイスの効率を測定します。