系统与设计
的意见

验证多循环路径的和错误的路径

单个钟的设计并不像它看起来那么简单。

受欢迎程度

所有芯片设计者知道他们必须要特别注意避免亚稳态问题有多个时,异步时钟域。相比之下,设计所有时钟是同步看起来简单。逻辑综合确保寄存器之间的最短路径没有种族和最长的路径适合目标周期时间。然而,单个钟的设计并不像它看起来那么简单。多循环路径和假路径增加设计过程的复杂性和合成必须正确处理它们。此外,这两种类型的路径必须在开发过程的早期验证静态分析。

多循环路径(MCP)发生在一个设计师故意包含逻辑功能,不能在一个时钟周期内完成。图1显示了一个MCP涉及两个同步时钟。源和目的地之间的逻辑需要三个目的地时钟周期产生一个有效的结果,因此目的寄存器必须加载这个结果三个时钟周期后新数据加载到注册来源。


图1:一个多循环路径的例子。

时发生一个错误的路径(FP)通过设计可追踪的路径是不启用。设计本身或设计用于确保路径的方式将不会执行。图2显示了设计的所有有效路径经过一段缓慢的逻辑和一段快速逻辑。通过缓慢的路径部分要花很长时间才能完成,所以这是一个外交政策。通过快速的路径部分可能导致持有时间违反,因此它也是错误的。


图2:一个设计错误路径的例子。

逻辑综合工具需要知道兆赫和FPs,例如,它不浪费时间试图适应three-cycle路径在图1或slow-to-slow路径如图2所示为一个时钟周期。在编译器设计的早期家庭,Synopsys对此介绍了设计约束指定时钟,时间、设置和检查,兆赫,FPs和其他有用的指导。three-cycle路径在图1和图2中的错误路径可以使用以下Synopsys对此表达了设计约束(署):

set_multicycle_path 3从顶部/ SRC -前/ DST端set_false_path通过S1 - S2 set_false_path通过F1通过F2

正确的合成结果取决于准确的提交。编译器设计NXT可以检测某些类型的提交错误,如参考信号和模块的设计。但规范错误比如指定图1包含一个四冲程路径将导致设计不像预期的那样工作。传统上,抓住这些问题的唯一办法是运行一个全职门电路级仿真(gl)。这种模拟是缓慢而很难调试。他们还在开发过程中发生的太迟了,长循环解决问题所需的时间。

MCP和FP署建筑特色,理想情况下应指定在RTL功能目的和验证阶段,之前任何back-annotated gl甚至被认为是。SpyGlass约束的解决方案提供了产品毛羽署的功能,包括那些与时间有关。它几类MCP和FP错误,否则逻辑合成才被发现。它还可以比较两组约束检查增量修正,有价值因为约束往往随着设计的发展变化。

SpyGlass约束还提取物MCP和FP的特性,可以通过其内部正式验证引擎。形式分析试图证明每个属性正确或提供一个反例显示如何违反了它。与仿真、形式验证是详尽的,所以这些结果是明确的。它为块级提供了更全面的分析设计。然而,正式的设计规模和复杂性和算法敏感不得扩展到兆赫,FPs穿越大芯片系统(SoC)设计。

对于任何不确定的结果,既不是一个完整的证据也不是一个反例,望远镜约束可以提取的MCP和FP数据库导出到风投公司使用RTL仿真验证。这种模拟可以包括嵌入式处理器上运行的软件模型,从而反映SoC的行为不属于正式的模型。

正确规范的错误路径和多循环路径是复杂芯片设计适当的合成结果的关键。早期分析望远镜约束,利用其内部正式引擎和由风险投资支持的模拟,提供高质素的正确性的信心在项目时间表。这是一个很大的“左移位”MCP和FP验证结果更好的芯片开发更快的用更少的资源。

风投公司还提供了一个新的和独特的解决方案来验证MCP和FP在RTL动态模拟。更多的信息,包括一个详细的例子,在一个是可用的白皮书



1评论

中V Dikramanjian 说:

大乔的文章。

留下一个回复


(注意:这个名字会显示公开)

Baidu