深度解析ug1292(2)

2019-10-30 19:31:27 浏览数 (1)

ug1292第二页的主题是时序收敛基线流程。该流程如下图所示。可以看到该流程要求在实现(Implementation)过程中的每一个子步骤结束之后都要检查WNS是否大于0,只有当WNS大于0时,才可以进行下一个子步骤。同时,在布局之后,还要检查WHS是否大于-0.5ns。此外,只有当WNS小于0时,执行phys_opt_design才有意义,毕竟phys_opt_design的目的是修复建立时间违例。由此可见,在实现的前期,更多关注的是建立时间违例。

图片来源page 2, ug1292

基线流程是UltraFast设计方法学的重要组成部分,其目的是尽可能早地发现设计存在的问题,并在早期解决这些问题。对于opt_design生成的dcp,如果发现WNS小于0,则要根据设计初期检查结果找出原因(具体操作看这里);对于place_design生成的dcp,如果WNS小于0,可能的原因包括过高的资源利用率、过重的逻辑互联导致的布局拥塞、逻辑级数不合理、过高的时钟歪斜或时钟不确定性。可尝试执行phys_opt_design(-directive设置为Explore或AgressiveExplore),如果无效,则要将焦点放在改善布局质量上;对于route_design生成的dcp,通过report_route_status可检查是否有布线错误。如果WNS或WHS依然小于0,则需进一步分析(后续会介绍)。如果WNS小于0且大于-0.2ns,可尝试执行phys_opt_design。

基线流程的一个重要方面是设计分析。这里列出常用的用于设计分析的Tcl命令:

  • report_timing_summary
  • report_design_analysis
  • report_methodology
  • report_failfast (需要在Xilinx Tcl Store中先安装)

这些命令的具体使用方法可参考ug835或在Vivado Tcl Console中执行<命令名 -help>查看。同时,也可采用图形界面方式。

0 人点赞