PCI Express*向け F-タイル Avalon® ストリーミングのインテル® FPGA IPユーザーガイド

ID 683140
日付 4/27/2023
Public
ドキュメント目次

7.5. ルートポートBFM

基本的なルートポートBFMは、PCI Expressリンクで発行するトランザクションを要求するためのVerilog HDLタスクベースのインターフェイスを提供します。 ルートポートBFMは、PCI Expressリンクから受信した要求も処理します。 次の図は、ルートポートBFMの最も重要なモジュールを示しています。

図 68. ルートポートBFM

これらのモジュールは、次の機能を実装します。

  • BFM Log Interface (altpcietb_g3bfm_log.v): BFMログ機能は、一般的にフォーマットされたメッセージをシミュレーター標準出力およびオプションでログファイルに書き込むためのルーチンを提供します。エラー時にシミュレーションを停止するコントロールも提供します。このプロシージャーの詳細については、BFMログおよびメッセージ・プロシージャーを参照してください。
  • BFM読み出し/書き込み要求関数、 altpcietb_bfm_rp_gen3_x8.sv:これらの関数は、PCI Expressの読み出しおよび書き込み要求に対する基本的なBFM呼び出しを提供します。
  • BFMコンフィグレーション関数、altpcietb_g3bfm_configure.v:これらの関数は、PCI Expressリンクおよびエンドポイント・コンフィグレーション・スペース・レジスターのコンフィグレーションを要求するためのBFM呼び出しを提供します。 これらの手順と機能の詳細については、BFMコンフィグレーション手順を参照してください。
  • BFM共有メモリー、altpcietb_bfm_shmem.v: このメモリーは、次の機能を実装します。
    • TX書き込み動作のデータを提供します。
    • RX読み出し動作のデータを提供します。
    • RX書き込み動作のデータを受信します。
    • 受信したコンプリーションのデータを受信します。
  • BFM要求インターフェイス、altpcietb_g3bfm_req_intf.v:このインターフェースは、altpcietb_g3bfm_rdwrおよびaltpcietb_g3bfm_configureプロシージャーまたは関数と、ルートポートRTLモデルとの間の低レベルのインターフェースを提供します。 このインターフェイスは、エンドポイントのBARレジスターにプログラムされたサイズと値を含む書き込み保護されたデータ構造を格納します。 また、内部BFM管理に使用されるその他の重要なデータも保存されます。
  • altpcietb_g3bfm_rdwr.v:このモジュールには、低レベルの読み出しおよび書き込みタスクが含まれています。
  • Avalon‑STインターフェイス、altpcietb_g3bfm_vc_intf_ast_common.v:これらのインターフェイスモジュールは、ルートポートインターフェイスモデルを処理します。 BFM要求インターフェイスから要求を受け取り、必要なPCIExpressトランザクションを生成します。 PCI Expressリンクから受信した完了を処理し、要求が完了するとBFM要求インターフェイスに通知します。 さらに、PCI Expressリンクから受信したすべての要求を処理し、必要な補完を生成する前に共有メモリからデータを保存またはフェッチします。

PIOのデザイン例では、 apps_type_hwtcl パラメーターは3に設定されています。このパラメーター値で実行されるテストは、次のように定義されています。 ebfm_cfg_rp_ep_rootportfind_mem_barダウンストリームループ

関数 ebfm_cfg_rp_ep_rootport で説明されています altpcietb_g3bfm_configure.v。この機能は、リンク上のルートポートとエンドポイントを設定するために必要な手順を実行します。含まれるもの:
  • ルートポートのメモリー割り当て
  • ルート・ポート・コンフィグレーション・スペース(ベース制限、バス番号など)
  • エンドポイントコンフィグレーション(BAR、バスマスターの有効化、maxpayloadサイズなど)

altpcietb_bfm_rp_gen3_x8.svの関数find_mem_barおよびdownstream_loopは、実装されたBARを返し、それぞれBARへのメモリ書き込みおよび読み取りアクセスを実行します。