如何使用post place'n'路径和/或后期综合模拟跟踪FPGA / ASIC开发中的错误?

时间:2017-08-02 18:21:23

标签: simulation fpga synthesis asic

我对后PnR和/或后合成仿真对FPGA / ASIC开发的有用性感到困惑。如果综合或PnR过程在设计流程中成功完成,那么相应的“后期”模拟是否有可能揭示设计中的错误?有人可以举个例子吗?

4 个答案:

答案 0 :(得分:1)

后PnR模拟不仅验证功能,还验证时序。电路的时序信息可以多种格式转发到仿真中,但最常用的是标准延迟格式(SDF),发布为IEEE 1497

我们可以捕获哪些错误?

  • 在RTL模拟中很难发现一些不必要的故障。如果某些输出是由组合逻辑生成的,那么后PnR模拟比以往任何时候都更重要。

  • 合成和/或PnR约束可能存在一些错误。仔细检查一切总是更好。

  • 综合/ PnR工具可能有错误。逻辑等效性检查(LEC)也可以捕获错误,但它仅用于功能。

答案 1 :(得分:1)

在典型设计流程中,合成和/或后PnR模拟有用,目标应该是避免它们。

后期综合模拟只能发现合成工具中的错误,这些错误在已建立的FPGA工具中极为罕见。检查这些不应该是任何设计流程的组成部分。

尽管PnR工具可能会出现一些非常罕见的情况,例如:技术映射错误或未能通过设计规则违规发出警告,至少99%的情况显示Post PnR模拟中的问题是由于设计错误,最典型的是时钟域交叉,内存访问竞争条件好,但已经非常罕见,第二。

因此,重点应该是坚持设计规则并采用严格的设计方法来避免问题,而不是试图在后PnR模拟中捕获它们。

对于你的问题 - 如果没有负面松弛且设计规则检查没问题,那么任何一个后期模拟都不应该显示出来。

后PnR仿真的一个实际用途是当您的复杂设计由于外部组件的时序变化或I / O约束中的错误而偶尔失败时,但您对错误机制没有任何线索。集成逻辑分析仪和后PnR仿真的组合可以帮助最棘手的情况找出根本原因。

答案 2 :(得分:1)

PnR后模拟是工业中所谓的门级模拟。这有两种类型的定时和非定时。这种模拟用于检测

  1. 定时路径,未经STA或时序收敛检查。
  2. 作为HFNS(高扇出网络合成)和CTS(时钟树合成)的电源和复位操作中的错误可能导致一些可复位触发器的复位不正常,导致它们将x传递到路径中的下一个逻辑,从而导致x -propagation。
  3. DFT逻辑中的错误,在RTL模拟期间未检查,可能在PnR期间被删除。
  4. 由于STA跳过的时钟域交叉路径的可靠性问题,
  5. x在逻辑路径上

答案 3 :(得分:0)

在将逻辑从映射转换为PAR方面,大多数是稳定的过程。但是,当然,如果迂腐,你可以使用LEC同时进行syn-> map和map-> PAR。

如果您在实验室中遇到问题,那么发布PAR Sims可能会很有用,可能是因为您没有完全限制您的设计进行计时,并且需要像上面提到的其他人一样使用反标注的SDF进行模拟。当然,这对你来说没有帮助,如果你没有在你的TB中创建具有计时的模型和/或如董事会设计师提供的那样正确地限制你的IO,那么这就没有用。

我认为最好的做法是使用带有反标注的SDF对PAR网表至少运行一次回归套件。它不需要任何费用,并提供一个更有信心的数据点。