1. PCI Express向けRタイル Avalon® Streamingインテル FPGA IPについて
2. IPアーキテクチャーおよび機能の説明
3. 高度な機能
4. インターフェイス
5. パラメーター
6. トラブルシューティング/デバッグ
7. PCI Express* 向けRタイル Avalon® StreamingインテルFPGA IPユーザーガイドのアーカイブ
8. PCI Express向けRタイル Avalon® Streaming インテルFPGA IPユーザーガイドの文書改訂履歴
A. コンフィグレーション・スペース・レジスター
B. ルートポートの列挙
C. エンドポイント・モードでのアドレス変換サービス (ATS) の実装
D. TLPバイパスモードでのユーザー・アプリケーションへのパケット転送
3.2.2.5.1. VirtIO Common Configuration Capability Register (アドレス: 0x012)
3.2.2.5.2. VirtIO Common Configuration BAR Indicator Register (アドレス: 0x013)
3.2.2.5.3. VirtIO Common Configuration BAR Offset Register (アドレス: 0x014)
3.2.2.5.4. VirtIO Common Configuration Structure Length Register (アドレス: 0x015)
3.2.2.5.5. VirtIO Notifications Capability Register (アドレス: 0x016)
3.2.2.5.6. VirtIO Notifications BAR Indicator Register (アドレス: 0x017)
3.2.2.5.7. VirtIO Notifications BAR Offset Register (アドレス: 0x018)
3.2.2.5.8. VirtIO Notifications Structure Length Register (アドレス: 0x019)
3.2.2.5.9. VirtIO Notifications Notify Off Multiplier Register (アドレス: 0x01A)
3.2.2.5.10. VirtIO ISR Status Capability Register Register (アドレス: 0x02F)
3.2.2.5.11. VirtIO ISR Status BAR Indicator Register (アドレス: 0x030)
3.2.2.5.12. VirtIO ISR Status BAR Offset Register (アドレス: 0x031)
3.2.2.5.13. VirtIO ISR Status Structure Length Register (アドレス: 0x032)
3.2.2.5.14. VirtIO Device Specific Capability Register (アドレス: 0x033)
3.2.2.5.15. VirtIO Device Specific BAR Indicator Register (アドレス: 0x034)
3.2.2.5.16. VirtIO Device Specific BAR Offset Register (アドレス0x035)
3.2.2.5.17. VirtIO Device Specific Structure Length Register (アドレス: 0x036)
3.2.2.5.18. VirtIO PCI Configuration Access Capability Register (アドレス: 0x037)
3.2.2.5.19. VirtIO PCI Configuration Access BAR Indicator Register (アドレス: 0x038)
3.2.2.5.20. VirtIO PCI Configuration Access BAR Offset Register (アドレス: 0x039)
3.2.2.5.21. VirtIO PCI Configuration Access Structure Length Register (アドレス: 0x03A)
3.2.2.5.22. VirtIO PCI Configuration Access Data Register (アドレス: 0x03B)
4.3.1. Avalon® Streamingインターフェイス
4.3.2. 精密時間測定インターフェイス (エンドポイントのみ)
4.3.3. 割り込みインターフェイス
4.3.4. ハードIPリコンフィグレーション・インターフェイス
4.3.5. エラー・インターフェイス
4.3.6. コンプリーション・タイムアウト・インターフェイス
4.3.7. コンフィグレーション・インターセプト・インターフェイス
4.3.8. パワー・マネジメント・インターフェイス
4.3.9. ハードIPステータス・インターフェイス
4.3.10. ページ・リクエスト・サービス (PRS) インターフェイス (エンドポイントのみ)
4.3.11. ファンクション・レベル・リセット (FLR) インターフェイス (エンドポイントのみ)
4.3.12. SR-IOV VFエラー・フラグ・インターフェイス (エンドポイントのみ)
4.3.13. 汎用VSECインターフェイス
5.2.3.1. Deviceの機能
5.2.3.2. VirtIOのパラメーター
5.2.3.3. Linkの機能
5.2.3.4. Legacy Interrupt Pin Register
5.2.3.5. MSI機能
5.2.3.6. MSI-Xの機能
5.2.3.7. Slotの機能
5.2.3.8. Latency Tolerance Reporting (LTR)
5.2.3.9. Process Address Space ID (PASID)
5.2.3.10. Device Serial Numberの機能
5.2.3.11. Page Request Service (PRS)
5.2.3.12. Access Control Service (ACS)
5.2.3.13. Power Management
5.2.3.14. Vendor Specific Extended Capability (VSEC) Register
5.2.3.15. TLP Processing Hints (TPH)
5.2.3.16. Address Translation Services (ATS) の機能
5.2.3.17. Precision Time Management (PTM)
4.3.7. コンフィグレーション・インターセプト・インターフェイス
コンフィグレーション・インターセプト・インターフェイス (CII) を使用すると、アプリケーション・ロジックにより、リンク上のコンフィグレーション (CFG) リクエストの発生を検出し、そのビヘイビアを変更することが可能です。さらに柔軟性を持たせるために、PCI Express向けRタイルインテルFPGA IPを使用すると、このインターフェイスを使用して、インターセプトするPCIeコンフィグレーション・スペース範囲を最大3つ定義することが可能です ( IP Parameter EditorのCIIアドレス範囲を参照してください。許可される範囲は0x ~ 0xFFFです)。
注: VirtIO機能がイネーブルされている場合、0x50-0x6Eおよび0xC0-0xF7の範囲が予約されています。1つの範囲のみが有効化されます。
アプリケーション・ロジックによるCFGリクエストの検出は、cii_req_o の立ち上がりエッジでされます。EMIBのレイテンシーのため、cii_req_o のデアサートは、cii_halt_i のデアサートの何サイクルも後にされる可能性があります。
アプリケーション・ロジックでは、CIIを使用して次のことを実行可能です。
- コントローラーによるCFGリクエストの処理を遅らせます。これにより、アプリケーションでは、最初にハウスキーピング・タスクを実行できます。
- CfgWrリクエストのデータペイロードを上書きします。アプリケーション・ロジックでは、CfgRdコンプリーションTLPのデータペイロードの上書きもできます。
注: PCIe向けPタイル Avalon® Streaming IPでは、Configuration Output Interface (tl_cfg) によって、PCIeコンフィグレーション・スペースに格納されている情報のサブセットが提供されていました。PCIe向けRタイル Avalon® Streaming IPからは、同様の機能の代わりとして、CIIインターフェイスを使用します。これを実現するには、アプリケーション・ロジックによって、対象となるコンフィグレーションTLPのインターセプトを列挙プロセス中に行うことが必要です。さらに、ハードIPリコンフィグレーション・インターフェイス (ハードIPリコンフィグレーション・インターフェイス) が用意されています。これを使ってPCIeコンフィグレーション・スペース情報にアクセスすることもできます。
このインターフェイスを使用すると、Intel Vendor Specific Extended Capability (VSEC) レジスターを実装することもできます。Intel VSECレジスター (アドレス0xD00から0xFFF) をターゲットとするすべてのコンフィグレーション・アクセスは、このインターフェイスに自動でマッピングされ、このインターフェイスを介して監視できます。
このインターフェイスを使用していない場合は、cii_halt_p0/1 をロジック0に接続します。
| 信号名 | 方向 | 説明 | EP/RP/BP | クロックドメイン |
|---|---|---|---|---|
| pX_cii_req_o | 出力 | CFGリクエストがインターセプトされ、他のすべてのCII信号が有効であることを示します。 | EP | slow_clk |
| pX_cii_hdr_poisoned_o | 出力 | CIIで受信したTLPヘッダーの有害なビットです。 | EP | slow_clk |
| pX_cii_hdr_first_be_o[3:0] | 出力 | CIIで受信したTLPヘッダーの最初のdwordバイト・イネーブル・フィールドです。 | EP | slow_clk |
| pX_cii_func_num_o[2:0] | 出力 | CIIで受信したTLPヘッダーのファンクション番号です。 | EP | slow_clk |
| pX_cii_wr_o | 出力 | cii_dout_p0/1 が有効であることを示します。この信号は、コンフィグレーション書き込みリクエストに対してのみアサートされます。 | EP | slow_clk |
| pX_cii_wr_vf_active_o | 出力 | 受信したTLPがコントローラー内の仮想ファンクション (VF) をターゲットにしていることを示します。これは、cii_vf_num_o[10:0] によって識別されます。 | EP | slow_clk |
| pX_cii_vf_num_o[10:0] | 出力 | ターゲットになったコントローラー内のVFを識別します。 | EP | slow_clk |
| pX_cii_addr_o[9:0] | 出力 | CIIで受信したTLPヘッダーのダブルワード・レジスター・アドレスです。 | EP | slow_clk |
| pX_cii_dout_o[31:0] | 出力 | リンクパートナーからアプリケーション・クライアントへの受信TLPペイロードデータです。データはリトル・エンディアン形式です。最初に受信したペイロードバイトはビット [7: 0] にあります。 | EP | slow_clk |
| pX_cii_override_en_i | 入力 | オーバーライド・イネーブルです。アプリケーション・ロジックによってこの入力をアサートすると、PCIeハードIPでは、CfgWrペイロードまたはCfgRdコンプリーションをオーバーライドします。このとき使用するデータは、cii_override_din_i[31:0] のアプリケーション・ロジックによって提供されます。 | EP | slow_clk |
| pX_cii_override_din_i[31:0] | 入力 | オーバーライド・データです。
|
EP | slow_clk |
| pX_cii_halt_i | 入力 | フロー・コントロール入力信号です。cii_halt_p0/1 がアサートされると、PCIeハードIPでは、PCIeコンフィグレーション・スペース・レジスターに対するCFGリクエストの処理を停止します。 | EP | slow_clk |
図 36. IP Parameter EditorのCIIのアドレス範囲