当前位置:   article > 正文

时序违例的解决思路_不同时钟 时序违例

不同时钟 时序违例

参考UG906.

• 逻辑延迟百分比过高(逻辑延迟 (Logic Delay))
○ 逻辑层次是否过多? (逻辑级数 (Logic Levels))
○ 是否存在阻碍逻辑最优化的任何约束或属性? (Don't Touch 或 Mark Debug)
○ 路径是否包含具有高逻辑延迟的单元, 例如 RAMB 或 DSP 等?
○ 当前路径拓扑结构的路径要求是否过于苛刻? (要求 (Requirement))
• 高信号线延迟百分比(信号线延迟 (Net Delay))
○ 在路径中是否有任何高扇出信号线? (“高扇出 (High Fanout)”或“累积扇出 (Cumulative Fanout)” )
○ 分配给多个 Pblock 的单元布局能否拉开距离? (PBlock)
○ 单元布局能否拉开距离? (“边框大小 (Bounding Box Size)”或“时钟区域距离 (Clock Region Distance)” )
○ 对于 SSI 器件, 是否存在跨 SLR 边界的信号线? (SLR 交汇 (SLR Crossings))
○ 在布局看似正确的情况下, 是否有 1 个或多个信号线延迟值远高于预期? 请参阅拥塞 (Congestion) 部分。
• RAMB 或 DSP 单元中缺少流水线寄存器(而路径中存在此寄存器)
○ 检查路径, 确认针对 RAMB 或 DSP 单元是否已启用流水线寄存器
• 高偏差(建立 <-0.5 ns, 保持 > 0.5 ns)(时钟偏差 (Clock Skew))
○ 此路径是时钟域交汇路径吗? (“起点时钟 (Start Point Clock)”和“端点时钟 (End Point Clock)” )
○ 时钟是同步时钟还是异步时钟? (时钟关系 (Clock Relationship))
○ 此路径是否跨多个 I/O 列? (IO 交汇 (IO Crossings))

常在实际工作中遇到如下两种时序违例:

1.同时钟域中寄存器到寄存器间的组合逻辑延迟过大,导致下一级寄存器的建立时序违例。

解决方法:通过时序报告,在延迟大的组合逻辑间加入一级寄存器。

2.不同时钟域间的时序违例。

解决方法:跨时钟域的数据传输可以用异步fifo,或者用目的时钟打拍,至少两拍,并在约束文件中set_flase_path。
 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/762322
推荐阅读
相关标签
  

闽ICP备14008679号