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

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

9.2. MSI-X メモリースペース

MSI-X テーブルと PBA メモリーは、レジスター・アドレス・スペースの 2 番目の MB 空間にマップされます。割り当てられたメモリースペースは、関数に対して最大 2048 の MSI-X 割り込みをサポートできます。実際のメモリー量は、PCI Express コンフィグレーションのマルチチャネル DMA IP によって異なります。

MSI-X テーブル

各エントリー (ベクトル) は 16 バイト (4 DWORD) であり、下図に示すように、メッセージアドレス、データ、およびマスク (ベクトル制御) フィールドに分割されます。 2048 の割り込みをサポートするには、MSI-X テーブルに関数ごとに 32 KB のスペースが必要です。ただし、512 KB のスペースにマップされます。

図 52. MSI-X テーブルの構造

MSI-X PBA

MSI-X PBA (Pending Bit Array) メモリースペースは、512 KB の領域にマップされます。実際のメモリー量は、IP コンフィグレーションによって異なります。保留ビット配列には、MSI-X テーブルエントリーごとに 1 つの保留ビットが QWORD (64 ビット) の配列で含まれます。 PBA フォーマットを以下に示します。

図 53. MSI-X PBAの構造
各 DMA チャネルには、4 つの MSI-X ベクトルが割り当てられます。
  • 2’b00: H2D DMA Vector
  • 2’b01: H2D Event Interrupt
  • 2’b10: D2H DMA Vector
  • 2’b11: D2H Event Interrupt