人工智能在 EDA 工具中的作用的局限性

世界受到 ChatGPT 等生成式 AI 模型的启发。这些非常适用于副驾驶和代理 AI 等,但将这些模型采用到 EDA 工具中并不那么明显。什么是合适的,人工智能能否使 EDA 工具更快或更好?

在过去的 40 年里,EDA 一直在支持摩尔定律,这需要突破许多已经开发的算法和技术的极限(见图 1)。在某些情况下,算法可能已经存在,但可用的计算能力不足以使其实用。基于人工智能的解决方案也是如此。

“这对 EDA 来说并不是一个新的旅程,”Cadence 战略和新企业集团总监 Rob Knoth 说。“这是我们几十年来一直在努力的事情。随着技术的每一项进步,工程师们都在渴望拥抱自动化。如果没有这个,他们永远无法回家与家人共进晚餐。每一代人的工作量和复杂性都在呈指数级增长。

人工智能在 EDA 工具中的作用的局限性

图1:EDA和算法的演变。来源:Cadence

在 EDA 中使用 AI 并不新鲜。早期的开发商之一是 Solido Solutions(现为西门子 EDA 的一部分),成立于 2005 年,远早于生成式人工智能首次亮相。该公司使用了机器学习技术,其他几个例子也基于强化学习。“早期的工具侧重于我们如何做一些事情,例如与暴力破解技术相比,我们如何在更少的模拟中获得更好的设计覆盖率,”西门子 EDA 定制 IC 部门副总裁兼总经理 Amit Gupta 说。“这些都是工具内部有意义的东西。”

许多其他工具紧随其后。“想想我们在过去五年中推出的所有技术,”新思科技高级总监兼人工智能产品管理主管 Anand Thiruvengadam 说。“这始于基于强化学习的优化技术。”

每家公司都利用了有意义的技术。“我们利用了规划算法,”Breker Verification Systems 首席执行官 Dave Kelf 说。“这是一种广泛使用的代理方法,它为国家空间探索添加了智能,以生成测试,而不是简单的随机决策。”

但就在两年多前,由于计算能力的爆炸式增长,人工智能的感知能力发生了巨大飞跃。生成式人工智能变得易于使用,最近推出了支持代理人工智能的工具和平台(见图 2)。没有立即迹象表明计算能力的增长会放缓,尽管可能存在与之相关的经济性问题。

人工智能在 EDA 工具中的作用的局限性

图 2:人工智能的类别及其用例。来源:西门子 EDA

然而,这些进步并不意味着每一项新技术都优于现有的技术。“不要忘记基本的数学,”Cadence 的 Knth 说。“人工智能是一项了不起的技术,但真空中的人工智能并不总是获得答案的最有效或最有效的方式。如果您有数学和物理学来描述一个系统,那么计算答案是一种非常有效、准确的方法来完成工作。人工智能可以帮助加速这一进程。人工智能可以从我们的计算中学习。但你不能放弃这些第一原则。你不能放弃这种对该领域的真正了解,因为它确实是一种超级大国。如果你考虑一下他们如何互相加强和帮助,那才是真正的魔力所在。

大多数 EDA 工具仍然是基于规则的。“你仍然有一些最终目标和最终限制正在处理,”Arteris 首席营销官 Michal Siwinski 说。“有了这个框架,你就会有人工智能在里面,人工智能在外面。两者都是需要的,但它们的行为会有所不同。鉴于内部已经采用人工智能的工具数量,并显示出一致且可信的良好结果,关于人工智能的问题在本世纪之交得到了解答。从那时起,它只是在完善它并使其变得更好。

EDA

的独特需求对于任何芯片设计来说,故障成本都很高,这意味着准确性和可验证性是 EDA 工具中两个非常受推崇的功能。“他们不希望人工智能成为一个黑匣子解决方案,会给出答案,然后你不确定它是否正确,”西门子的古普塔说。“你希望它如何提出解决方案的透明度和可见性,从而使其可验证。它需要处理广泛的设计问题,不是针对特定情况,而是针对一般的稳健性。

在处理优化时,正确性是一个更容易解决的问题。“基于强化学习的优化技术本质上是为了帮助解决这个问题,”Synopsys 的 Thiruvengadam 说。“一般来说,在芯片设计中,你要面对一个非常大的设计空间、一个优化空间,你必须有一种有效的方式来探索这个空间,以提出正确的解决方案、最佳答案或一组最佳答案。这是一个非常棘手的问题。这就是人工智能可以提供帮助的地方。

设计优化使工程师的工作效率更高。“这正在帮助一名工程师在子系统级别变得非常有效,”Knoth 说。“这有助于将一个在一个区块上有效的配方移植到另一个区块。这是关于在短时间内提供更好的购电协议的艰苦工作,而无需大量的新工程投资。这不使用大型语言模型。它正在使用强化学习。你不能只是被最新的闪亮的东西分散注意力。这是关于建立和拥有你几十年来积累的令人敬畏的东西。

将错误的模型应用于问题是麻烦的开始。“现有企业感到沮丧的许多人工智能技术基本上只是围绕通用 GPT 模型的普通 LLM 调用,”Normal Computing 产品经理 Hanna Yip 说。“他们不了解设计验证工程师作的特定上下文和代码库。这会导致幻觉和错过上下文,这在芯片验证中是致命的。人工智能需要利用的不仅仅是这些基本模型。代码库中的正式建模和代理方法是处理它的正确方法。

问题的规模超出了某些商业产品。“我们不仅仅是使用现成的人工智能、开源算法并将其应用于 EDA,”Gupta 说。“相反,我们考虑的是我们正在处理的问题的规模。我们谈论的是代工厂的每台设备有七个工艺参数。我们谈论的是数百万台设备。我们谈论的是巨大的维度问题。工具还必须能够理解 EDA 中存在的不同模式。有原理图、波形、Excel 电子表格,他们必须了解芯片设计和电路板设计。

目标没有改变,即使有新的方法来实现它们。“每项技术中仍然有决策树,”Arteris 的 Siwinski 说。“在其中,你可以取代一些愚蠢的启发式方法。你能在强化训练方面做得更好,或者使用 AI 技术做一些更好的聚类和分类来预先做一些分析吗?有愚蠢的分析方法,也有聪明的分析方法。有没有办法从根本上确保所有技术中的启发式方法变得更好并继续变得更好?简短的回答是肯定的。几乎每个现代工具都有某种程度的这一点,因为你只是在改变算法的类型和你用来执行任务的数学类型。无论是设计、验证还是实现,你只是在改变算法。

好事伴随着坏事。“你需要数据来训练模型,”Ansys(现为新思科技的一部分)的总监Rich Goldman说。“这为现有的 IC 设计公司和现有的 EDA 公司带来了巨大的优势。这将使初创公司更难参与 EDA 工具的创建。他们更难从模型中获得这种优势。将提供通用模型,以及他们可以利用的法学硕士,但不会达到老牌公司能够利用的程度,因为他们拥有数据。

获得信心 最大的问题

之一是确保使用 AI 的工具可以被信任。“签字就是信任,”诺斯说。“准确性在其中起着巨大的作用,但它确实是随着时间的推移、几代人建立起来的信任,证明当我从系统中获取这个数字时,我可以安全地根据它做出决定。这是真正重要的部分。计算、计算构成了这种信任的基础,也是对工具如何工作的粗略了解,这样你就知道当你扔给它时,它以前从未见过的东西。

这需要透明度。“当前的人工智能解决方案只是黑匣子,”Normal Computing 的产品经理 Prashant 说。“需要的是一种产生抵押品的方法,使人工智能的推理可见。这可以通过正式模型、本体和链接的测试计划来实现,使设计验证工程师能够准确地看到工具的输出如何映射回规范。这种可解释性是建立对人工智能信心的原因,尤其是在芯片设计这样的高信任环境中,你需要相信这不仅仅是一个黑匣子输出。

工具需要解释它们在做什么。“在处理四西格玛、五西格玛或六西格玛问题时,我们绘制了一条人工智能收敛曲线,”古普塔说。“然后用户可以看到人工智能在做什么。它对模型进行一些训练,然后开始寻找六西格玛点。它预测最坏的情况,并针对该点运行模拟以验证它。然后它会得到第二差点,第三差点。在某些情况下,它可能是错误的,但随后它会在幕后重新运行一些训练以构建更准确的模型。这是一种不断改进的自适应模型训练方法,直到它有足够的信心找到所有这些异常值。尽管如此,在某些情况下,它可能会发现一两个异常值,但它比手动执行此作的方式要好得多,即进行数百次模拟和推断。它越来越接近了,几乎和蛮力方法一样好。

一个行业关注点是幻觉。“当我听到人们谈论人工智能产生幻觉时,我只是将其视为一个垃圾进出的问题,”西温斯基说。“这只是数学。当我们在行业中这样做时,当我们利用这项技术时,我们肯定必须确保为其提供正确的数据集进行训练。否则,我们最终可能会得到错误的答案。它需要制衡。你不应该随便给它任何东西。在企业对消费者的世界中,您可以告诉人工智能根据任何东西创建疯狂的图像。这是一个极其不受约束的问题。使用人工智能时,我们不太容易在树林里产生幻觉。

期望任何工具都能在一个块中解决整个问题是错误的。“硬件需要完整的系统一致性,”Normal Computing 的产品工程主管 Arvind Srinivasan 说。“你不能只是孤立地创作一篇文章,并希望它总体上是有意义的。这与语言非常不同,在语言中,您可以写一个独立工作的段落。最重要的是,没有足够的数据。我们没有数万亿个例子。知识产权被锁定在孤岛中,甚至在公司内部也是如此。你不能只做监督学习。您需要包含有关系统约束的先前数据的算法,同时仍从该数据中学习。标签很昂贵。你不能付给芯片工程师六位数的费用来注释训练集。如果没有基本事实,验证人工智能结果需要深厚的行业专业知识,这使得评估比在消费领域更难。

你并不总是想限制问题。“人工智能技术使我们能够解决更加模糊的问题,”弗劳恩霍夫 IIS 自适应系统工程部高级混合信号自动化组经理 Benjamin Prautsch 说。“但与此同时,结果会更加模糊。因此,必须仔细检查/测试它们。用户的积极体验和看到的证据确实是关键。例如,验证工具被视为”黄金工具“,这就是市场的看法。只有拥有良好的业绩记录才能说服人们,这一点仍有待证明。

但您可能希望人工智能跳出显而易见的框框。“人工智能在检查或取消检查偏见方面非常出色,你可以给它更多的自由度,”Siwinski 说。“它仍然需要遵守一些规则,你仍然需要打出一些性能,所以你不能随便做任何事情。但是,只要你这样做,你能让人工智能给你一个与专家创造的答案不同的答案吗?在某些限制下,你想要这种创造力。你想探索更广泛的设计空间,有时它会找到一个不同的、更好的答案,因为工程师正在根据过去最有效的方法做出一些假设。它们是有效的假设,但这并不意味着这是实现这一目标的唯一途径。

价值可以通过多种方式创造。“人们不使用人工智能工具,因为它们总是正确的,”Normal 的 Yip 说。“他们使用它们是因为与传统方法相比,它们节省了大量时间。真正的挑战是确保工程师不会浪费时间审查不良输出,并为他们提供正确的工具来检查和修复它们。框架应该是,“它为工程师节省的时间是否多于审查成本?如果是,它就会赢得信任。

甚至一些现有的 EDA 工具也尚未获得这种信任。“除了非常基本的功能之外,硅工程师对现有的 EDA 设计工具没有内在的信任,”Normal 的硅主管 Marc Bright 说。“我们花了很多时间运行其他工具并编写自己的工具来检查他们的输出质量。当人工智能工具减少生成这些输出的工作量和时间时,我们就可以花更多时间评估和完善可能更好的解决方案。

部分问题是人工智能没有很多例子可以借鉴。“低倾向语言是缺乏足够数据和资源来进行有效自然语言处理的语言,”Knoth 说。“如果你让人工智能用英语编写文档,它已经接受了大量英语的训练。因此,如果您要求它生成技术规范,人工智能已经拥有大量数据可供借鉴。如果您要求大型语言模型生成 C 代码,那也是值得信赖的。它训练的数据较少,但仍有很多公开可用的 C 代码以及验证生成代码的方法。让我们继续往下走。在 Verilog 上训练的公开可用数据量只是 C 代码的一小部分。再往下走——技能、TCL、UPF。我们的行业充斥着这些语言,用于训练模型的高质量、公开数据的数量具有挑战性。在每家部署此功能的公司内部,他们都有一个相当大的宝库,但弄清楚如何以计算高效的方式将专有 IP 应用到大型语言模型中,这并非易事。

上一篇
下一篇