什么是错误路径时序约束?

电器工程 FPGA 定时 高密度脂蛋白
2022-01-07 00:18:54

在 FPGA 世界中,HDL 编译器的错误路径约束到底是什么?为什么它们有用?

3个回答

错误路径是在最终设计中永远不会真正使用的时序路径。假设您正在设计一个 4 位计数器,结果发现从 12 递增到 13 时延迟路径非常慢。如果您的设计总是在计数等于 9 时重置计数器,那么该慢路径将永远不会出现在实际设计。您将慢速路径标记为错误路径,以便编译器不会花费任何时间或添加任何额外的逻辑,以使错误路径运行得更快。

错误路径是设计中确实存在但不参与操作的路径,因此没有必要将其包含在时序分析中。
出现这种情况可能有多种原因,但由于时序分析工具通常不知道(尽管有一些工具可以检测到它们)可能使用或不使用哪些路径,所以您必须告诉它。它类似于多循环路径,您可以告诉它允许使用多个循环来完成某条路径。

(错误路径)的一个例子是一个寄存器,它可能在上电时被写入一次,但随后保持在相同的状态。

简单地说,错误路径是您希望从检查中排除的逻辑路径,以查看它是否符合时序分析期间的时序。排除路径有两个原因,首先是因为错误路径会使工具更努力地满足该信号的时序,这反过来会影响合法信号路径,可能导致额外的时序错误,并且因为它会导致时序检查报告失败可能会分散设计人员对合法时序错误的注意力。

错误路径是由不相关的异步时钟或相同频率但具有未知相位关系的时钟之间的逻辑路径或在正常电路操作期间永远不会激活的路径引起的。告诉工具忽略路径并不会使时序工作,只是因为时序没有被检查。由设计人员手动确保将正确的同步逻辑用于这些被忽略的信号路径。