7系列FPGA中的POST_CRC错误检测与恢复策略

时间:2025-11-02  作者:Diven  阅读:0

注意:本博文介绍了利用 POST_CRC 试错的方法,但总体而言,赛灵思推荐在所有架构上使用 Soft Error Mitigation (SEM) IP。SEM IP 提供了可用于测试 SEU 检测与纠正能力的机制并提供了更强大的调试能力。

7系列FPGA中的POST_CRC错误检测与恢复策略

本博文中讨论的功能仅支持 7 系列器件。

功能7系列FPGAKintex UltraScale 和 Virtex UltraScaleKintex UltraScale+ 和 Virtex UltraScale+
Readback CRC/POST_CRC否,使用 SEM IP 替代否,使用 SEM IP 替代

 

赛灵思 FPGA 中循环冗余校验 (CRC) 的不同类型:

1) 一般 CRC 校验

在一般比特流加载过程中,CRC 校验利用 CRC 寄存器进行。该“CRC 寄存器”的描述详见《7 系列 FPGA 配置用户指南》(官网搜索 UG470)。

FPGA 在比特流被加载时计算 CRC 值,然后该值与在比特流加载结束时预期的 CRC 值进行比较。如果两个值匹配,则FPGA 成功加载。

一般情况下默认启用 CRC 校验。比特流属性为 BITSTREAM.GENERAL.CRC,其中有效选项包括“ENABLE”(启用)或“DISABLE”(禁用)。

2) 回读 CRC/POST CRC 校验

POST_CRC 校验在配置 FPGA 之后,设计运行过程进行。

一般情况下,比特流 CRC 校验是独立功能,具有其自己的 CRC 校验寄存器。POST_ CRC 校验具有用于存储校验值的不同以上比特流 CRC 的寄存器。

启用 POST_CRC 校验的目的

启用 POST_CRC 校验的目的是检测单粒子翻转 (SEU)。SEU 导致配置存储器中的数位翻转。POST_CRC 可与 FRAME_ECCE2 原语配合使用,以便提供针对此等错误的额外功能和更好的可见性。我们可利用 FRAME_ECCE2 的输出监控错误检查和纠正 (ECC) 和回读 CRC 电路的状态。

如需了解更多有关 FRAME_ECCE2 原语的详细信息,请参阅《Vivado Design Suite 7 系列 FPGA 和 Zynq-7000 SoC 库指南》(官网搜索 UG953)。

用户通常想要测试这种崩溃发生时的实例,以便确保此等错误被成功检测到。测试插入错误的方法是编辑 PRE_COMPUTED CRC 值。

测试插入错误的步骤

将以下设置放置在设计 XDC 中:

set_property POST_CRC ENABLE [current_design]

#Enables the Post CRC checking


set_property POST_CRC_SOURCE PRE_COMPUTED [current_design]

#Determines an expected CRC value from the bitstream
 

set_property POST_CRC_ACTION CONTINUE [current_design]

#Even if a CRC error is detected, continue CRC checking.

#Other options include HALT, CORRECT_AND_CONTINUE and CORRECT_AND_HALT

set_property POST_CRC_INIT_FLAG ENABLE [current_design]

#Leaves the INIT_B pin enabled as a source of the CRC error signal. Useful especially if FRAME_ECC is not used

如需了解更多有关这些设置的详细信息,请参阅《Vivado Design Suite 属性参考指南》(官网搜索 UG912)。

运行设计流程并生成比特流。在生成了比特流之后,PRE_COMPUTED CRC 的值可在 .bit 文件中校验。该值会是非零值。

若要确定 PRE_COMPUTED CRC 值在比特流中的哪个位置,可查阅《7 系列 FPGA 配置用户指南》(UG470) 中的示例 7 系列比特流。

若要测试插入错误,您就要禁用一般 CRC 校验,以便让比特流成功载入。切记,如果对位于正常 CRC 覆盖范围内的比特流进行了任何编辑,即会标注 CRC 错误并阻止比特流加载。

若要禁用一般 CRC 校验,您应使用以下设置:

set_property BITSTREAM.GENERAL.CRC DISABLE [current_design]

#Disables the general CRC checking


set_property POST_CRC ENABLE [current_design]

#Enables the Post CRC checking


set_property POST_CRC_SOURCE PRE_COMPUTED [current_design]

#Determines an expected CRC value from the bitstream


set_property POST_CRC_ACTION CONTINUE [current_design]

#Even if a CRC error is detected, continue CRC checking.

#Other options include HALT, CORRECT_AND_CONTINUE and CORRECT_AND_HALT


set_property POST_CRC_INIT_FLAG ENABLE [current_design]

#Leaves the INIT_B pin enabled as a source of the CRC error signal.Useful especially if FRAME_ECC is not used

再次运行设计流程并生成比特流。

在生成比特流之后,您应观察 PRE_COMPUTED CRC 的值是否为零。这是禁用 GENERAL.CRC 的结果,以便进行错误测试。

由于预计有前面的非零值,要配置器件并观察其行为。

INIT_B 引脚的监控应显示 CRC 错误。

FRAME_ECCE2 也可被用于接收连接到 ILA 上的 FRAME_ECCE2 发出的输出信号。然后将有可能观察到 CRCERROR。

下文的例化可被用于 FRAME_ECCE2 原语的连接:

然后输出可被传输给 ILA。

当器件被编程后,通过校验 ILA 上的信号,应有可能查看类似于以下示例的输出。例如,由于未找到预期的非零 PRE_COMPUTED 值,标注了 CRCERROR 错误。

可以理解的是,大部分用户都想要测试错误检测,以确定在此等错误被检测到时,将会以某种形式予以报告。该测试可让用户坚信,在真实的情景中,错误会被正确检测并报告。

如上文所述,由于 SEM IP 所提供的能力,赛灵思推荐使用 SEM IP,而不是 POST_CRC。POST_CRC 的功能在较新的架构中不受支持。

审核编辑:黄飞

 

猜您喜欢

插片插簧端子是电子连接器中常见的组件,根据不同的应用需求和设计特点,主要可以分为以下几类。根据结构形式,插片插簧端子可以分为直插型和弯插型。直插型端子适用于空间...
2015-06-29 00:00:00

保护电路安全尤为重要。威廉玛奇自恢复保险丝作为先进的保护元件,凭借其独特的设计和优异的性能,受到了关注和应用。本文将全面介绍威廉玛奇自恢复保险丝的特点与优势,帮...
2024-09-13 05:17:30

随着科技的不断发展,视觉检测设备已经逐渐代替了传统的人工品检,成为了工业生产中的一部分,在五金配件、塑胶件、橡胶件、电子配件等检测工业零部件表面外观缺陷尺寸方面...
2023-08-05 17:40:00

笔者在校的科研任务,需要用FPGA搭建OFDM通信系统,而OFDM的核心即是IFFT和FFT运算,因此本文通过Xilinx FFT IP核的使用总结给大家开个头...
2018-06-26 10:08:00

贴片电阻4704标识的是阻值,而不是电容。4704采用的是数字编码表示法,其中前三位数字470代表有效数字,最后一位数字4代表10的n次方,n就是最后一位数字的...
2024-11-29 10:26:27

1206贴片电阻是一种常用的电子元件,其功率过载能力是选择和使用过程中需要重点关注的参数。一般来说,标准1206贴片电阻的额定功率为1/4瓦 (0.25W)。这...
2025-04-14 15:02:23

贴片电阻精度并非越高越好,选择合适的精度才是关键。精度指的是电阻实际阻值与标称阻值之间的偏差范围。高精度电阻偏差小,但价格更高,制造难度也更大。多数应用场景中,...
2024-11-29 10:25:59

随着汽车电子技术的快速发展,隔离式CAN收发器逐渐成为重要的应用组件。应用于多个领域,首先是在汽车行业中,隔离式CAN收发器可以有效地减少电磁干扰,提高信号的稳...
2014-01-28 00:00:00

1、引言语音系统是电梯不可缺少的部分,用于楼层报数、方向提示、报警告示、消防对讲以及广告宣传等。传统语音系统绝大多数采用语音器件存储和播放语音,但存在比如外围...
2020-08-11 17:16:00

在选择工具箱时,了解其参数非常重要。工具箱的材质直接影响其耐用性和重量。常见的材质有塑料、铝合金和钢铁,塑料轻便但耐用性稍差,铝合金轻巧且抗腐蚀,钢铁则坚固但较...
2017-12-28 00:00:00