串联配置逻辑 - 1.3 简体中文

UltraScale+ 器件 Integrated Block for PCI Express 产品指南 (PG213)

Document ID
PG213
Release Date
2022-11-16
Version
1.3 简体中文

核与设计示例包含“Tandem Configuration”(串联配置)专用的端口(信号)。这些信号可在阶段 1(核)与阶段 2(用户逻辑)之间提供握手。握手是核与用户逻辑之间进行交互所必需的。下表定义了核上的握手端口。

表 1. 握手端口
名称 方向 极性 描述
mcap_design_switch 输出 高电平有效

用于识别切换至阶段 2 用户逻辑的操作何时完成。

0:尚未加载阶段 2。

1:已加载阶段 2。

cap_req 输出 高电平有效 配置访问端口仲裁请求信号。此信号应用于对用户实现的多个配置接口之间的 FPGA 配置逻辑的使用进行仲裁。如果仅使用媒体配置访问端口 (MCAP) 作为用户实现的配置接口,那么此信号应保持处于未连接状态。
cap_rel 输入 高电平有效 配置访问端口仲裁释放请求信号。此信号应用于对用户实现的多个配置接口之间的 FPGA 配置逻辑的使用进行仲裁。如果仅使用 MCAP 作为用户实现的配置接口,那么此信号应绑定到低电平 (1'b0)。这样即可根据需要允许通过 MCAP 访问 FPGA 配置逻辑。
cap_gnt 输入 高电平有效 配置访问端口仲裁授权信号。此信号应用于对用户实现的多个配置接口之间的 FPGA 配置逻辑的使用进行仲裁。如果仅使用 MCAP 作为用户实现的配置接口,那么此信号绑定到高电平 (1'b1)。这样即可根据请求授权通过 MCAP 访问 FPGA 配置逻辑。
user_reset 输出 高电平有效 当 PCIe 核复位时,此信号可用于复位 PCIe 接口逻辑。与 user_clock 同步。
user_clk 输出 不适用 PCIe 接口逻辑使用的时钟。
user_lnk_up 输出 高电平有效 用于识别 PCIe Express 核是否正常链接至主机器件。
这些信号可在用户应用内协调事件,例如,释放输出三态缓冲器(如“串联配置详细信息”中所述)。以下是有关这些信号的部分附加信息:
  • 加载阶段 2 之后,即断言 mcap_design_switch 有效。加载阶段 2 之后,此输出由根端口系统控制。只要此信号断言无效,PCIe 解决方案 IP 就会与用户设计其余部分隔离,并且 TLP BAR 访问会返回“Unsupported Requests (URs)”(请求不受支持)。
  • cap_req 信号、cap_rel 信号和 cap_gnt 信号应用于对多个配置接口(例如,内部配置访问端口 (ICAP))之间的 FPGA 配置逻辑的使用进行仲裁。ICAP 可在其它 IP 核中使用,或者也可在用户设计中直接例化。要在 MCAP 与 ICAP 之间进行仲裁,必须创建逻辑,并使用 cap_* 信号按用户设计期望的方式允许访问每个接口。对于 MCAP,应始终为其授予对配置逻辑的专享访问权限,直至阶段 2 完全完成加载为止。这可通过断言 mcap_design_switch 输出有效来识别。初始阶段 2 设计完成加载后,MCAP 接口即可按系统级设计所期望的方式来使用。当根端口连接请求访问配置逻辑时,cap_req 断言有效。用户设计可通过在响应中断言 cap_gnt 有效来授权访问。随后,用户设计可通过断言 cap_rel 有效来请求 MCAP 释放配置逻辑的控制权。根端口连接可通过 deasserting cap_req(断言无效)来释放控制权。如果用户逻辑未断言 cap_gnt 有效,则不应访问 MCAP。同样,已向 MCAP 接口授予访问权时,其它配置接口不应尝试访问配置逻辑。
  • 核本身复位时,user_reset 同样可用于复位与该核通信的任何逻辑。
  • user_clk 仅作为 PCIe IP 核的内部主时钟。此时钟用于对与该核直接通信的任何用户逻辑进行同步。
  • user_lnk_up 正如其名,表示 PCIe 核当前正在运行已建立的链路。