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

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

3.5.2.2. ドライバーのサポート

次の表は、MCDMAデザイン例のバリアントに対するドライバーのサポートをまとめたものです。次の頭字語を使用しています。
  • User Space I/O (UIO): カーネルのベースモジュールです。PCIeデバイスで使用され、リソースをユーザースペースに公開します。
  • Virtual Function I/O (VFIO) ドライバー: IOMMU/デバイスに依存しないフレームワークで、安全なIOMMUで保護された環境でユーザースペースへの直接デバイスアクセスを提供します。
  • データプレーン開発キット (DPDK): ライブラリーで構成され、さまざまなCPUアーキテクチャーで実行されるパケット処理ワークロードを高速化します。
注: ソフトウェア・ディレクトリーは、選択しているハードIPモード (1x16、2x8、または4x4) に応じて複数回作成されます ( インテル® Quartus® Primeプロ・エディションのバージョン23.3以降)。
  • p0_softwareフォルダーは1x16ハードIPモードに生成されます。
  • p1_softwareフォルダーは2x8ハードIPモードに生成されます。
  • p2_softwareおよびp3_softwareフォルダーは、4x4ハードIPモードの場合にのみ生成されます。
注: 各IPポートに対応するソフトウェア・フォルダーを使用する必要があります。
表 40.  MCDMAデザイン例のドライバーサポート
パラメーター カスタムドライバー DPDKドライバー カーネルモードNetdevドライバー
詳細 ユーザーモード・ドライバーとも呼ばれるこのドライバーは、UIOとVFIOの両方のベース・カーネル・モジュールに対応するように作成されています。このドライバーはカスタムAPIを提供しており、フレームワークに依存せずに使用することができます。 このDPDK Poll Mode Driver (PMD) では、DPDKフレームワークを使用します。PMDはデバイスをイーサネット・デバイスとして公開します。UIOとVFIOの両方のベース・カーネル・モジュールをサポートします。既存のDPDKのアプリケーションは、MCDMA PMDと統合することができます。 カーネルモードNetdevドライバーは、MCDMA IPをネットワーク・デバイスとして公開し、標準アプリケーションがLinuxネットワーク・スタックを使用してネットワーク・データ転送を実行できるようにします。
ディレクトリー/ドライバーパス <example_design>/pX_software/user <example_design>/pX_software/dpdk <example design>/pX_software/kernel/
SR-IOVのサポート あり あり あり
マルチチャネルDMA、Avalon-MM DMAデザイン例 あり (最大2Kチャネル) あり (最大2Kチャネル) なし
マルチチャネルDMA、Avalon-MM DMAデザイン例 (SRIOV使用) あり (最大2Kチャネル) あり (最大2Kチャネル) なし
BAM+BAS+MCDMA、Avalon-MM DMAデザイン例 あり (最大2Kチャネル) あり (最大2Kチャネル) なし
BAM+BAS+MCDMA、Avalon-MM DMAデザイン例 (SR-IOV使用) あり (最大2Kチャネル) あり (最大2Kチャネル) なし
マルチチャネルDMA、Avalon-MM、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
マルチチャネルDMA、Avalon-ST 1ポート、MQDMAバイパスモードを使用するPIOデザイン例 あり あり あり
BAM+BAS+MCDMA、Avalon-MM、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
BAM+BAS+MCDMA、Avalon-ST 1ポート、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
バーストマスター、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
バーストスレーブ、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
BAM+BAS、MQDMAバイパスモードを使用するPIOデザイン例 あり あり なし
データムーバー専用、MQDMAバイパスモードを使用するPIOデザイン例 あり なし なし
マルチチャネルDMA、Avalon 1ポート、デバイス側のパケット・ループバック・デザイン例 あり あり (256チャネル) あり (4つのPFをサポート、各PFは64チャネル)
マルチチャネルDMA、Avalon 1ポート、デバイス側のパケット・ループバック・デザイン例 (SRIOV使用) あり なし なし
マルチチャネルDMA、Avalon 1ポート、パケット生成/チェック・デザイン例 あり あり (256チャネル) なし
マルチチャネルDMA、Avalon 1ポート、パケット生成/チェック・デザイン例 (SR-IOV使用) あり なし なし
BAM+BAS、トラフィック・ジェネレーター/チェッカー・デザイン例 あり あり なし
データムーバー専用、外部記述子コントローラー・デザイン例 あり なし なし