中文 英语
18.luck新利
的意见

使用机器学习更快地捕获bug的方法

将智能引入回归空间,提高验证效率。

受欢迎程度

我们都同意验证和调试占用了大量的时间,可以说是芯片开发中最具挑战性的部分。模拟器的性能一直名列前茅,是验证过程中的关键组成部分。尽管如此,我们仍然需要超越模拟器速度,以实现最大的验证吞吐量和效率。

人工智能(AI)无处不在。机器学习(ML)及其相关的推理能力有望彻底改变从开车到做早餐的一切。虽然机器学习不是万能的,但将智能引入验证过程可以显著提高验证效率。

在设计中发现的所有错误中,模拟占了大约70%。让我们来谈谈每个设计和验证(DV)工程师今天面临的最大挑战:

  • 有任何RTL或代码更改时,都需要频繁地运行回归。如果回归有数百万个周期,这一步是耗时的。
  • 到达覆盖关闭的时间。
  • 缺乏对影响特定功能覆盖的输入刺激的知识/控制。
  • 在更偏远的场景中很难找到bug。
  • 调试/分流失败。

将智能引入回归空间可以通过检查回归和识别输入刺激与设计或功能覆盖之间的关系来提高验证效率,以了解感兴趣的状态。ml增强的应用程序可以开发随机化的向量,从而更有效地达到那些有趣的状态。ML可以使用覆盖率作为运行的功能行为的代理,因为它试图确定哪些行为是“有趣的”。Xcelium ML技术除了提供刺激分布诊断和根本原因分析外,还有助于增加难以命中和很少/未命中的箱子。我们都同意追踪长延迟的bug需要付出巨大的努力。任何能够将延迟从数百万个周期减少到几个或更少的方法都是非常棒的。

那么,当你可以在五分之一的时间内达到同样的覆盖率时,你该怎么办?答案很简单——80%的恢复时间都花在了寻找设计中的新bug上。这对验证工程师来说是个好消息。在tapeout之前找到bug是验证的全部内容。

与其他事物一样,ML已经找到了进入验证的方法。它几乎涉及到验证的各个方面——从静态验证到形式化验证,从模拟验证到调试验证。Cadence处于推动AI/ML在验证中所能做的边界的努力的最前沿。的Xcelium ML App是这样一个示例,它可以帮助您压缩回归并只执行有意义的模拟运行,暴露隐藏的错误,并增加罕见箱子的命中计数。如果您的环境是ml友好的(这意味着在输入状态空间中具有高度的随机化),您甚至可以享受到更好的结果,最高可达10倍。

如果你错过了我们之前的博客,“寻找bug -受约束随机困境”,请点击这里。



留下回复


(注:此名称将公开显示)

Baidu