在每个设计阶段进行确认 - 2023.2 简体中文

Versal 自适应 SoC 硬件、IP 和平台开发方法指南 (UG1387)

Document ID
UG1387
Release Date
2023-11-15
Version
2023.2 简体中文

Versal 自适应 SoC 设计方法强调对设计预算(例如,面积、功耗、时延和时序)进行监控以及尽早采取如下措施更正设计的重要性:

  • 尽可能多加利用 Versal 自适应 SoC 集成块,使用片上网络 (NoC) 实现高带宽连接并在模块框图级别确认设计性能。

    由于围绕块之间的器件进行高效数据移动至关重要,因此必须通过 NoC 或可编程逻辑 (PL) 来探索各种块连接选项的作用。尽可能利用 NoC 即可释放 PL 资源,并降低后续布局规划或实现难度。

  • 利用 AMD 模板创建最佳 RTL 结构,并在执行细化后进行综合前采用方法 DRC 来确认 RTL。

    由于 Vivado 工具从始至终使用时序驱动的算法,设计必须从设计流程开始就加以正确约束。

  • 在综合后开展时序分析。

    要指定正确的时序,您必须分析设计中每个主时钟与相关的生成时钟之间的关系。在 Vivado 工具中,每次时钟交互都必须满足时序要求,除非显式声明为异步时钟交互或伪路径 (false path)。

  • 通过运行非关联综合和实现来确认每个主要 PL IP 或模块框图的时序收敛可行性。

    如果待到分析完整设计时才尝试通过更改设计或流程选项来解决时序、性能或功耗问题,则问题复杂性会明显提升。通过确认设计的每个小部分,可以降低设计周期后续的收敛风险。AMD 建议在非关联实现期间对设计时钟进行过约束(不超过 10%),如果可能,还可添加 Pblock 以建立高使用率场景模型。

  • 在继续执行下一个设计阶段前采用正确的约束满足时序要求。

    您可遵循如下建议并使用 Vivado Design Suite 的交互式分析环境来加速总体时序与实现收敛。

    提示: 您还可通过结合上述方法以及本指南中的 HDL 设计指南进一步加速收敛过程。

下图展示了这一推荐的设计方法。

图 1. 实现快速收敛的 RTL 设计方法

如能够通过正时序裕度 (positive margin) 或相对较小的负时序裕度 (negative timing margin) 满足设计目标,那么综合即可视为完成。例如,如果综合后未能满足时序要求,那么布局布线结果也不太可能满足时序要求。然而,即便时序得不到满足,您仍然可以继续开展流程其余部分。如果实现工具能为失效的路径分配最佳资源,则可能能够收敛时序。此外,继续执行此流程可以更准确理解负时序裕量的量级,这有助于您确定综合后最差负时序裕量 (WNS) 所需的提升程度。改进 HDL 和约束后返回综合阶段时即可利用此信息。