Multi Channel DMA Intel® FPGA IP for PCI Express* デザイン例のユーザーガイド

ID 683517
日付 10/06/2023
Public
ドキュメント目次

2.6. Avalon-MM DMA

図 11. Avalon-MM DMA

このデザイン例では、Avalon-MMメモリーマップド・インターフェイスを介してH2DおよびD2HのマルチチャネルDMAを実行します。Multi Channel DMA for PCI Express IPコアは、1つのAvalon-MM書き込み/読み出しマスターポートを提供します。このデザイン例を生成する際は、最大2KのDMAチャネルを割り当てることができます。

このデザイン例にはオンチップメモリーが含まれており、PIOおよびH2D/D2H DMAの動作をサポートします。

H2D (Tx) DMAでは、ホストは記述子リングを設定し、Txパケットバッファーをホストメモリーに割り当て、事前定義されているパターンでTxバッファーを満たします。アプリケーションでQueue Tail Pointerレジスター (Q_TAIL_POINTER) が更新されると、MCDMA IPはH2D DMAを開始し、受信データをオンチップメモリーに書き込みます。

D2H (Rx) DMAでは、ホストは事前定義されているパターンでFPGAオンチップメモリーを初期化します。MCDMA IPは、オンチップメモリーからパケットデータを読み出し、ホストメモリーに送信します。

双方向DMAの場合、H2DがD2Hの前に開始し、その後両方のDMAが同時に動作します。

さらに、このデザイン例では、Avalon-MM PIOマスターを有効にしてDMAパスをバイパスします。これにより、アプリケーションではオンチップメモリー・ブロックで単一の非バーストレジスター読み出し/書き込み操作を実行できるようになります。

このデザイン例には、指定したパラメーターを備えるMulti Channel DMA for PCI Express IPコアと次のコンポーネントが含まれています。
  • resetIP – リセットリリースIPで、FPGAファブリック全体がユーザーモードになるまでマルチチャネルDMAをリセット状態に保ちます。
  • MEM_PIO - PIOの動作に向けたオンチップメモリーです。PCIe BAR2にマッピングされるMCDMA Avalon-MM PIO Master (rx_pio_master) ポートに接続します。
  • MEM – デュアルポート・オンチップメモリーです。1つのポートをAvalon-MM書き込みマスター (h2ddm_master) に接続し、別のポートをAvalon-MM読み出しマスター (d2hdm_master) に接続します。
テスト・アプリケーション・ソフトウェア (perfq_app) コマンドラインでサポートされる転送モードオプション
  • PIOテスト: -o
  • DMAテスト: -t (Tx)、-r (Rx)

このデザイン例で使用するドライバーに関しては、ドライバーのサポート を参照してください。

注: ユーザーFLRインターフェイスは、AVMM DMAのデザイン例では利用できません。