注意:本文所有内容皆来源于Xilinx工程师,如需转载,请写明出处作者及赛灵思论坛链接并发邮件至cncrc@xilinx.com,未经Xilinx及著作权人许可,禁止用作商业用途。
BY Hemang Divyakant Parikh
有多种类型的时序违例可归类为脉冲宽度违例。
- 最大偏差违例(本文详解之重点)
- 最小周期违例(详见此处)。
- 最大周期违例
- 低脉冲宽度违例
- 高脉冲宽度违例
如需了解脉冲宽度违例的详情,请参阅“报告时序汇总”的“TPWS”部分。
最严重的脉冲宽度违例在报告中显示为最差脉冲宽度时序裕量 (WPWS)。
如需了解脉冲宽度违例的详情,请在 Vivado GUI 中打开脉冲宽度违例报告(单击“Reports”->“Timing”->“Report Pulse Width”)或使用以下 Tcl 命令打开此报告:
report_pulse_width
最大偏差违例
本文仅介绍“最大偏差违例”相关内容。
最大偏差违例示例:
以下截屏显示了出现负裕量的最大偏差违例。
在上述示例中,实际最大偏差 (Actual Max Skew) 值即最大偏差 (Max Skew) 中工艺 corner 为 Fast 的 CLK 的到达时间与最小偏差 (Min Skew) 中工艺 corner 为 Fast 的 CLKDIV 的到达时间之差。
您可通过时序报告来检查该值,以了解特定路径类型。
注意:应在同一 corner (Slow/Fast) 中报告时序,但必须在“Min/Max”中报告这两个引脚。
如需了解预期值 (Required) 与实际值 (Actual) 计算方式的详细说明,请参阅(赛灵思答复记录 72121)。
请根据以下检查表来解析最大偏差违例:
① 首先,检查报告路径故障的时钟树路径拓扑。
其中一条时钟路径将被称为“参考路径”,另一条路径的偏差将高于规范值。
② 检查您当前使用的是否是最优化时钟拓扑。用户可查阅 DRC 报告和方法报告,以查看是否存在有关次优化时钟拓扑问题的消息。《时钟拓扑建议》 (UG949) 对于了解赛灵思建议的时钟拓扑很有帮助。
③ 请确保时钟缓存都置于相同时钟区域内。时钟树同样应保持平衡。
最好避免时钟树跨多个 SLR。
④ 您还可以添加 CLOCK_DELAY_GROUP 属性以查看能否避免此违例。
如需了解更多信息,请参阅(赛灵思答复记录 67885)。
⑤ 请确保缓存中用于驱动引脚的时钟根同样分配至该时钟区域。
如需手动设置时钟根值,可使用 USER_CLOCK_ROOT 约束。
来源:赛灵思论坛