仅对英特尔可见 — GUID: mwh1410471242895
Ixiasoft
仅对英特尔可见 — GUID: mwh1410471242895
Ixiasoft
5.4.1.4.3. 添加线缆以“保持”
查看Estimated Delay Added for Hold Timing报告中指定寄存器路径以确定Fitter是否添加过多线缆以满足保持时序要求。
当数据传输从1x到2x时钟时,导致路由器为满足保持要求而添加线缆的错误约束示例。假设设计意图是允许每传输两个周期。而通过添加多周期建立约束,数据可在两个目标时钟周期内的任何时间达到,如范例中所示:
set_multicycle_path -from 1x -to 2x -setup -end 2
时序要求放松一个2x时钟周期,如图示波形中的黑色线条所示。
set_multicycle_path -from 1x -to 2x -setup -end 2 set_multicycle_path -from 1x -to 2x -hold -end 1
上图中橙色虚线代表保持关系,且无需额外线缆来延迟数据。
当数据在同一时钟域中传输时,布线程序也可添加线缆以保持时序要求,但各时钟分支之间使用不同缓冲。时钟网络类型间的传送常常发生在外设和内核之间。下图显示数据正进入器件,外设时钟驱动源寄存器,全局时钟驱动目标寄存器。全局时钟缓冲器的插入延迟大于外设时钟缓冲器。所以到目标寄存器的时钟延迟远大于到源寄存器的时钟延迟,因此数据路径上需要额外的延迟以确保满足其保持要求。
要确认路径中各种时钟网络类型,请在Timing Analyzer中查看路径,并沿源时钟路径和目标时钟路径检查节点。此外,检查源时钟频率和目标时钟频率以查看两者是否相同,或成倍数,以及路径上是否存在多周期异常。最后,请确保所有有意的跨域路径错误都有相关联的错误路径异常。
如果您怀疑已添加了修复实际保持问题的路径,则可禁用Optimize hold timing高级Fitter设置(Assignments > Settings > Compiler Settings > Advanced Settings (Fitter) > Optimize hold timing)。在禁用Optimize hold timing的条件下重新编译设计,然后重新运行分析以确认并更正不符合保持时间要求的路径。