Vivado Incremental(增量)是Xilinx FPGA设计工具中的一种功能,它允许对设计的一部分进行修改和重新编译,而不需要对整个设计进行重新编译。这种增量式的方法可以显著减少编译时间,特别是在进行小的修改或迭代开发时。
一、Incremental Implementation(增量实现)
增量实现是指增量编译设计流程中的实现阶段,它具有以下特点:
• 通过重用参考设计的先前布局和布线来保持质量和性能(QoR)的可预测性。
• 加快布局和路由的运行时间,或尝试在最后阶段实现时序闭合。
以下图中提供了增量实现设计流程的示意图。
1、Incremental Implementation Flow Designs(增量实现流程设计)
增量实现流程设计允许在现有设计的基础上进行修改和扩展,可以针对特定的设计目标或约束进行局部优化,而不是从头开始重新进行整个设计流程。通过重用先前的布局和布线信息,增量实现可以显著提高设计效率,减少设计周期,并有助于保持设计的质量和性能。这对于需要频繁迭代和修改的设计项目来说尤为有用。
如图2-31所示,增量运行需要一个参考检查点(checkpoint)作为起点来启动增量布局和布线。使用read_checkpoint -incremental .dcp命令可以启动增量流程,并且必须在place_design之前执行。
2、参考设计
参考设计通常是一个来自先前迭代或增量设计的不同变体的完全路由检查点。如果使用不同的变体或设计,重要的是确保参考设计中的层次结构名称与增量设计相匹配。当需要较低级别的重用时,例如仅重用RAM和DSP块的布局,参考检查点中只需包含这些单元的布局信息即可。参考设计必须与设备匹配。虽然建议工具版本也匹配,但这并不是必须的。