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

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

3.4. コンフィギュレーション・スレーブ

このインターフェイスは、ルート ポート・モードでのみ適用されます。 Config Slave (CS) は、AVMM 非バースト・インターフェイスであり、基本的にシングル サイクルの Avalon-MM 読み出しおよび書き込みトランザクションを、PCIe ハード IP (PCIe リンク経由で)に送信される PCIe コンフィグレーション TLP の AVST 読み出しおよび書き込みに変換します。このモジュールは、受信した完了 TLP (Cpl および CplD) も処理します。

CS モジュールは、AVMM リクエストを固定の TAG 値 (10 進数 255) が割り当てられたコンフィグレーション TLP に変換し、スケジューラに送信します。複数の未処理のトランザクションをサポートしないため、一意の TAG は 1 つあれば十分です。この一意の TAG は、補完を CS モジュールに再ルーティングするのに役立ちます。

完了の再ルーティングはトップ レベルで処理されます。必要な NP は 1 つだけなので、TLP RX スケジューラは完了フィールドを解析して固定タグの完了をデコードし、トランザクションを CS にルーティングします。

図 10. Avalon-MMコンフィギュレーション・スレーブのモジュール

Config Slave AVMM アドレス

Config Slaveインターフェイスは、 インテル® Quartus® Prime プロ・エディション v21.1 および インテル® Quartus® Prime プロ・エディション v21.2では 29 ビット・フォーマットをサポートし、 インテル® Quartus® Prime プロ・エディション v21.3 以降では14 ビット・フォーマットをサポートします。

図 11. 29ビットのアドレスバス
図 12. 14ビットのアドレスバス

CS AVMM アドレスは、以下に示すように 14 ビットに制限されており、MSB の 2 ビット [13:12] は、アドレスの [11:0] の内容が Cfg TLP を形成するために使用されるか、CS ローカル レジスターへの書き込み/読み出しに使用されるかを区別します。

表 22.  
CSローカル・アドレスのオフセット フィールド名 アクセス コメント
0x0000 Scratch Pad Register RW  
0x0004 BDF Register RW {Bus [7:0], Device [4:0], Function [2:0]}
0x0008 Error Register RW1C  
表 23.  29 ビットおよび 14 ビット・アドレッシングにおけるコンフィギュレーション・アクセス・メカニズム
アクセス 29 ビット・アドレス 14 ビット・アドレス
EP Config Space Write Single Write: 実際のデータを含むEPレジスター・アドレス (AVMM アドレスにはBDF+ Registerが含まれる) へのAVMM 書き込み Two Writes:
  • BDF 情報を 0x0004 に書き込みむ (13番目のビットを1に設定する)
  • AVMM 実際のデータを含む EP レジスタ ーアドレス (13 番目のビットが0に設定)への書き込み
EP Config Space Read
  • AVMM read to EP Register アドレス (AVMM アドレスには BDF+Register が含まれる)
  • 28ビット目によるType1/Type0
  • CplD データは AVMM 読み出しデータ バスで利用可能
  • 0x0004 への BDF 情報の 1 つの AVMM 書き込み (13番目 ビットを1に設定する)
  • EP レジスター アドレスへの 1 つの AVMM 読み出し (13 を使用)番目 ビットを0に設定する)
  • 12ビット目によるType1/Type0
  • CplD データは AVMM 読み出しデータ バスで利用可能