文章 ID: 000080843 内容类型: 故障排除 上次审核日期: 2021 年 08 月 27 日

为什么适用于 PCI Express* 事务层的英特尔® Arria® 10 和 英特尔® Cyclone® 10 Avalon®-ST 接口配置空间访问不稳定?

环境

    英特尔® Quartus® Prime Pro Edition
    英特尔® Quartus® Prime 标准版
    面向 PCI Express* 的英特尔® Arria® 10 Cyclone® 10 硬核 IP
BUILT IN - ARTICLE INTRO SECOND COMPONENT
说明

由于配置空间寄存器访问时间的 UG-01145_avst 2017.05.15 - 6.12.1 错误的参考代码,英特尔® Arria® 10 和 英特尔® Cyclone® 10 PCIe* 事务层配置空间访问将不稳定。这是因为 tl_cfg_* 接口受多周期限制,但代码与它不匹配。

代码如下:

始终 @(coreclkout_hip)

开始

检测地址更改

cfg_addr_reg[3:0]

cfgctl_addr_change

...

结束

解决方法

要解决此问题,请将参考代码升级为 UG-01145_avst |2019.05.22 - 5.12.1,用于配置空间寄存器访问时序。

添加了一条管道,以避免多周期时序风险。

代码如下:

始终 @(coreclkout_hip)

开始

tl_cfg_add_reg

tl_cfg_add_reg2

结束

检测地址更改以生成一个选择以采样输入 32 位数据

始终 @(coreclkout_hip)

开始

cfgctl_addr_change

cfgctl_addr_change2

cfgctl_addr_strobe

结束

相关产品

本文适用于 2 产品

英特尔® Cyclone® 10 GX FPGA
英特尔® Arria® 10 FPGA 和 SoC FPGA

1

本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。