用于 PCI Express* 的 Intel® FPGA R-tile Avalon® Streaming IP用户指南

ID 683501
日期 3/28/2022
Public

本文档可提供新的版本。客户应 单击此处 前往查看最新版本。

文档目录

4.4.7. Configuration Intercept接口

Configuration Intercept Interface (CII)允许应用逻辑检测链路上Configuration (CFG)请求的出现并修改其行为。为了提供更高的灵活性,R-Tile Intel FPGA IP for PCI Express允许您最多定义3个不同的PCIe配置空间范围,以使用该接口进行拦截(intercept)(请参阅IP Parameter Editor中的CII地址范围,其中允许的范围是0x - 0xFFF)。

注: 如果使能了VirtIO功能,则保留范围0x50-0x6E和0xC0-0xF7,并且只会公开一个范围。

应用逻辑应该在cii_req_o上升沿检测CFG请求。由于EMIB的延迟,因而在解除cii_halt_i置位后,可以将cii_req_o解除置位数个周期。

应用逻辑可以使用CII来进行以下操作:

  • 使用控制器延迟处理CFG请求。这样就允许应用程序先执行任何内务(housekeeping)处理。
  • 覆盖CfgWr请求的数据负载。应用逻辑还可以覆盖CfgRd Completion TLP的数据有效负载。
注: 在P-Tile Avalon® Streaming IP for PCIe中,Configuration Output Interface (tl_cfg) 提供了信息子集,存储在PCIe Configuration空间中。从R-Tile Avalon® Streaming IP for PCIe开始,应该使用CII接口替代类似功能。为此,Application逻辑应在枚举过程中拦截器(intercept)感兴趣的Configuration TLP。此外,Hard IP Reconfiguration Interface(Hard IP重配置接口)可用,也可使用该接口访问PCIe Configuration空间信息。

该接口允许您实现Intel Vendor Specific Extended Capability (VSEC)寄存器。针对Intel VSEC寄存器(addresses 0xD00到0xFFF)的所有配置接入都被自动映射到该接口,并且可通过该接口监控。

如果您未使用该接口,则请将cii_halt_p0/1连接到logic 0。

表 66.  Configuration Intercept Interface (CII) 信号
信号名称 方向 描述 EP/RP/BP 时钟域
pX_cii_req_o Output 表示CFG请求被拦截,其他CII信号都有效。 EP slow_clk
pX_cii_hdr_poisoned_o Output CII上接收的TLP头中的“出错”(poisoned)位。 EP slow_clk
pX_cii_hdr_first_be_o[3:0] Output CII上接收的TLP头中第一个双字(dword)字节使能的字段。 EP slow_clk
pX_cii_func_num_o[2:0] Output CII上接收的TLP头中的功能编号。 EP slow_clk
pX_cii_wr_o Output 表示cii_dout_p0/1有效。只会因为配置写请求而置位该信号。 EP slow_clk
pX_cii_wr_vf_active_o Output 表示接收的TLP以控制器中的虚拟功能(VF)为目标,通过cii_vf_num_o[10:0]来识别。 EP slow_clk
pX_cii_vf_num_o[10:0] Output 识别控制器中被作为目标的VF。 EP slow_clk
pX_cii_addr_o[9:0] Output CII上接收的TLP头中双字(double-word)寄存器的地址。 EP slow_clk
pX_cii_dout_o[31:0] Output 从link partner到您的应用程序客户端的已接收TLP负载数据。该数据采用小端(little endian)格式。第一个接收的有效负载字节在位[7:0]中。 EP slow_clk
pX_cii_override_en_i Input 启用覆盖。应用逻辑置位该输入后,PCIe Hard IP使用cii_override_din_i[31:0]上应用程序提供的数据覆盖CfgWr payload或者CfgRd completion。 EP slow_clk
pX_cii_override_din_i[31:0] Input 覆盖数据。
  • CfgWr:此总线包含应用逻辑提供的数据,用于覆盖写入PCIe Hard IP寄存器的数据。
  • CfgRd:该总线包含应用程序提供的数据,用于覆盖Completion TLP的数据有效负载。
EP slow_clk
pX_cii_halt_i Input 通信量控制输入信号。置位cii_halt_p0/1后,PCIe Hard IP 暂停处理对PCIe配置空间寄存器的CFG请求。 EP slow_clk
图 32. IP Parameter Editor中的CII地址范围