PCI Expressのマルチチャネル DMA インテル® FPGA IPユーザー ガイド

ID 683821
日付 4/20/2022
Public
ドキュメント目次

8.1.2.3. ディスクリプターの完了ステータスの更新

ディスクリプターの完了ステータスを選択するには、MSI-X モードとライトバック モードの 2 つのモードがあります。デフォルトのモードはライトバックです。これは、次の C ヘッダー ファイルで変更できます。

Software/user/common/include/ifc_libmqdma.h

/* Set default descriptor completion */
#define IFC_CONFIG_QDMA_COMPL_PROC <Set with following method >

ディスクリプターの完了ステータスの更新方法

  1. Writeback mode: (CONFIG_QDMA_QUEUE_WB): このアプローチでは、MCDMA IP はホストメモリー内の完了したディスクリプター・インデックスを更新します。libmqdma は、PCIe 読み出しではなく、ローカル読み出しに使用されます。
  2. MSI-X interrupt mode: (CONFIG_QDMA_QUEUE_MSIX): このアプローチでは、トランザクションが完了すると、MCDMA IP がホストに割り込みを送信し、ホストメモリー内の完了したディスクリプター・インデックスを更新します。libmqdma は、割り込みの受信時に完了ステータスを読み出します。
  3. Register Mode (CONFIG_QDMA_QUEUE_REG): このアプローチでは、ドライバーは完了ヘッドレジスターをポーリングすることで完了ステータスを認識します。レジスターの読み出しはホストの観点から見るとコストがかかるため、このアプローチではペイロードが小さいほどパフォーマンスが低下します。