在为 PCI Express® IP 内核使用 Stratix® V 或 Arria V GZ 硬核 IP 时出现问题,因为该链接不一致地出现。 如果内核被配置为本机第二代内核,则会出现此问题。 此问题与 PCIe® 硬重置控制器 (HRC) 相关联。
表明 PERST 或本地重置有助于启动链接。 重新编程FPGA可能会允许打开该链接,但这也不一致。
要在 Quartus® II 软件版本 12.1 SP1 中解决此问题,请通过以下程序更改为软重置控制器 (SRC):
对于 MegaWi™ 流程:
1) 编辑/>版本>/合成/.v 文件
2) 搜索字符串,"hip_hard_reset_hwtcl"
3) 设置参数 hip_hard_reset_hwtcl = 0
4) 保存变体.v
5) 转到第 7 步
对于 Qsys 流程:
1) 使用文本编辑器编辑 .qsys 文件
2) 搜索字符串"force_src"
3) 确保以下参数如下所示:
4) 将更改保存到 .qsys 文件
5) 重新生成 Qsys 系统,将所做的更改应用于底层设计文件
6) 转到第 7 步
通用步骤:
7) Open //submodules/sv_xcvr_pipe_native.sv 文件
8) 搜索"cal_offset_mode"
9) 如果以下行与sv_xcvr_pipe_native.sv 文件中的行匹配,执行步骤 10 中所示的更改,否则继续执行步骤 11
.cal_offset_mode(protocol_version== "第二代") ?"MODE_ACCUMULATION_MIDSWEEP":"MODE_INDEPENDENT"),
.cal_oneshot(protocol_version== "第二代") ?"ONESHOT_ON" :" ONESHOT_OFF"),
.rx_dprio_sel(protocol_version== "第二代") ?"RX_CALIBRATION_SEL" :" RX_DPRIO_SEL"),
10)
.cal_offset_mode (" MODE_INDEPENDENT"),
.cal_oneshot (" ONESHOT_OFF"),
.rx_dprio_sel (" RX_DPRIO_SEL"),
11) 重新编译设计
12) 搜索地图报告文件 (eg.top.map.rpt) 以获取hip_hard_reset_hwtcl,并确保值设置为 0
请注意,对 Qsys 系统或 PCIe 内核进行更改以及重新生成可能会消除某些或所有更改。
Quartus® II 软件的 v13.1 解决了此问题。