(本文编译自Semiconductor Engineering)
生成式EDA领域正取得一定进展,然而,训练数据的匮乏依然是制约其发展的首要难题,促使各界积极探索应对策略。
两年前,由大语言模型(LLM)引领的生成式人工智能技术风暴席卷全球,迅速渗透到我们的日常生活。对此,有人欣然接受,有人持保留意见,更有极端声音对机器智能的崛起发出可怕预警。相比之下,半导体行业——作为人工智能发展的基石,对这项新兴技术的采纳态度显得尤为审慎。
生成式EDA也在最近引起行业广泛关注,然后业界的普遍共识是其前行之路荆棘密布,核心挑战在于高质量训练数据的稀缺性。企业出于保护知识产权的考量,加之除非设计高度雷同,否则鲜少有企业能拥有足够的数据量以支撑有效的模型训练,这无疑为生成式EDA的广泛应用设置了重重障碍。
IC Manage总裁兼首席执行官Dean Drako此前曾言:“人工智能正被广泛应用于软件编程之中,它显著提升了编程人员的工作效率,因为它分担了许多繁琐冗长的任务。然而,在我们这个极度规避风险的行业中,人工智能如何具体发挥作用尚不明朗。展望未来,人工智能将辅助设计流程,其成果需经人类审核,并为人类提供一个基础框架,在此基础上,人们可以更加高效、迅速地推进工作。我们的行业渴求确定性。唯有当我们拥有经过充分训练的模型时,这份确定性方能得以实现,从而让我们获得所需的保证。”
在人工智能领域,两年是一段很长的时间,但在半导体行业,两年不过是弹指一挥间。从这一视角审视,当前正恰逢其时,应着手推进新的设计迭代、探索制造技术的新飞跃,乃至推出新一代的EDA工具。那么,在这个追求梦想的道路上,半导体行业目前究竟取得了何种程度的进展呢?
生产力增强器
在今年的DAC大会上,EDA公司及设计公司纷纷展示了多个“co-pilot”应用的实例。目前,co-pilot应用主要分为两大类:工具co-pilot与设计co-pilot。工具co-pilot是特定工具的生产力增强助手,而设计co-pilot则深入理解设计所使用的语言。
培训LLM对于工具和语言的掌握相较于设计而言更为容易,且培训需求也更低。Cadence产品管理组总监Rod Metcalfe指出:“co-pilot的一种应用模式是辅助工程师更有效地利用这些工具。我们具备这样的能力,因为我们正是这些工具的开发者。我们深知它们的工作原理,拥有详尽的文档及其他资源来训练系统。工具co-pilot是实现更宏大目标的基石。由于它们内置于工具中,且用户对用户界面也高度熟悉,他们只需通过新增的聊天机器人式界面,即可与他们日常使用的工具进行无缝交互。这意味着,他们现在可以向大语言模型提出疑问,开启全新的交互体验。”
任何具备充分文档支持的内容均可融入聊天机器人之中。“您无需翻阅文档寻找答案,只需利用搜索功能即可,”是德科技高级总监Alex Petr阐述道,“大语言模型能够即时提供答案。当它们与工具集成后,将助力工程师加速完成任务。这将繁琐的工作从工程师肩上卸下,使他们的能力得以升华,他们可以专注于‘他们想要达成的目标’,而非如何实现。”
这将为增量能力的提升开辟道路。“我们需要理解设计规范,”Cadence的Metcalfe强调,“实际上,多数设计规范采用高级英语语言表述。我们可以借助大语言模型解析这些高级规范,进而生成设计素材。或许,我们可以从RTL出发,而非LLM。RTL可能由人类工程师编写,随后我们利用大语言模型解析RTL。人们将迅速重视这一点,因为他们能够解释结果,开始在更高层次上理解RTL。”
还存在其他潜在的起点。西门子EDA电路板系统部门先进技术总监Chandra Akella提出:“思考创建设计所需的ECAD模型。当前,用户需手动查阅数据手册,提取信息,以创建符号、封装、3D模型、IBIS模型及仿真模型。相反,我们能否运用人工智能的力量,从数据手册中提取知识,自动驱动模型生成?这将极大减轻图书管理员的负担。他们需手动完成这些步骤,阅读300至500页的数据手册,然后将其转换为实用模型。通过人工智能的应用,他们的工作量将大幅减少,将原本需两天的任务缩短至两小时。”
凭空创建RTL并无太大意义。“我们皆知LLM能生成RTL代码,但若未将其融入设计和验证流程,对开发团队而言并无实用价值,”AMIQ EDA首席执行官Cristian Amitroaie指出,“LLM必须与设计和测试平台的知识协同,确保查询和结果的准确性。此外,需轻松实现对LLM生成代码的连续、增量检查,确保语法、语义正确,符合项目编码规范。最佳方法是让集成开发环境(IDE)与用户选择的LLM相连。此流程不仅适用于RTL设计,还适用于测试平台、断言、电源意图文件及LLM当前或未来生成的其他类型的设计和验证代码。”
在某些领域,工具生产力可能成为进入的壁垒。“在FPGA领域,提升工具易用性尤为重要,因为易用性至关重要,”Metcalfe表示,“使用FPGA时,并非追求极致效率,尤其是出于原型设计考虑时。易用性至关重要,而AI无疑能助力将RTL描述转换为FPGA上的映射。”
下一阶段是优化。“对于任何设计,我们均需运行SPICE模拟、EM模拟、电热模拟,”是德科技的Petr表示,“只要在设计流程中掌握这些信息,即可基于此做出决策。优化的最大挑战在于权衡。若能解释每种设计解决方案或决策的优势,使相关人员能够做出最终决定,这将是巨大进步。未来,我们可能进一步提升自动化水平,但这是一个逐步推进的过程。”
优化的另一种形式是设计空间探索。西门子的 Akella 问道:“创建原理图的方法有很多种,但考虑到一系列要求,哪种方法最好?”“如今,有些解决方案以蛮力的方式工作,以模拟和识别最佳方案。使用人工智能,我们可以通过识别最优解决方案、对已识别的潜在建议进行模拟,然后生成优化电路,从而大幅缩短该周期。”
优化的另一种体现是设计空间探索。西门子的Akella提问:“创建原理图的方法众多,但考虑一系列要求,哪种最佳?当前,部分解决方案采用蛮力方式,模拟并识别最优方案。利用人工智能,我们可以通过识别最优解、模拟潜在建议,然后生成优化电路,大幅缩短周期。”
多模式设计
尽管文本语言输入在设计领域的生成备受瞩目,设计的众多流程实则是高度图形化的。多模态功能作为新兴趋势,正逐渐崭露头角。“审视整个设计过程,不难发现其植根于极其复杂的设计环境之中,”Petr指出,“我们面对的数据形态多样,包括原理图与布局图。在模拟环境中,甚至无需编写代码,而是先绘制原理图,再据此衍生出布局图。这类信息亟需被传授给人工智能代理。LLM围绕词汇与Transformer架构构建,擅长理解讨论上下文。然而,在EDA的多数解决方案中,我们更多见到的是代理模型的应用。”
PCB设计亦遵循相似路径。“若能实现对PCB原理图的支持,便能从现有原理图中提取知识,”Akella阐述道,“此后,我们应能够凭借文本、草图或照片来驱动原理图的自动生成。一旦这一支持得以实现,复杂操作将迎刃而解。”
数字流程的许多方面同样离不开图形。“验证环节极度依赖对波形轨迹的分析,”Metcalfe强调,“赋予人工智能系统查询波形、发现异常并提示潜在错误的能力,其意义深远。这涉及图形信息的解读与异常搜寻,不必拘泥于文本形式。尽管当前它是以文本为基础,因这是我们的习惯使然——我们编写脚本、制定规范,但这绝非最佳方式。我在布线布局中也体会到了这一点,布线布局使用的是平面图。平面图以图形方式展现,是芯片的图形表达。借助平面图,我们能执行多项任务,如从质量角度检查拥塞情况,判断通道宽度是否适宜。所有这些均可基于图形完成。因此,多模态人工智能与EDA工作流程及传统的文本、聊天机器人界面高度相关,并展现出巨大潜力。”
训练数据
早期,高质量训练数据的匮乏被视为一个主要的制约因素,且这一挑战至今依旧存在。“我们所需的所有IP均属于特定公司所有,”Petr指出,“他们对此严加保护。你无法轻易地从某个地方搜集到这些信息并尝试进行模型训练。我们所处的领域数据稀缺,这为构建通用的基础模型带来了极大的难度。”
然而,在PCB领域,仍有一线曙光。“如果观察组件制造商,他们通常会发布两类资料:组件数据表和参考设计,”Akella说道,“这些参考设计并非大型设计,而是聚焦于特定功能的小型设计,旨在推广其产品(组件)。我们正探索是否能够从这些以PDF文档形式发布的参考设计中提取知识。如今,我已掌握这些构建模块,它们由多个组件构成的小规模电路和组件组成。组件在数据表中得到定义。通过整合这两个信息源(数据表和参考设计),我们正研究利用这些信息来训练模型的可能性。”
在IC设计流程中,这一方法却难以实施。“互联网上公开的RTL资源并不丰富,”Metcalfe指出,“从高级英语语言规范直接转换为Verilog可能跨度过大,且生成的RTL难以理解。另一种途径可能是采用中间格式,例如C语言。目前,C语言代码的数量已达数十亿行。如果你能从英语描述转换为C语言模型,再从C语言模型转换为RTL,将获得相同的结果。这种方法更易于控制,因为你可以利用工具从高级SystemC描述转换为RTL表示,从而使设计人员能够更好地控制生成的RTL类型。”
在企业内部,可用的训练数据可能更为丰富。“内部专家在其设计和模型中融入了他们所有积累的知识,”Akella说道,“这些知识蕴含在他们所创建的设计和模型中。如果我们能从这些已完成且质量上乘的设计和模型中提取这些知识,那么我们将能够轻松助力那些仅有一两年经验的行业新人。这些工具将变得更加智能,并帮助新用户做出正确的选择。”
超越人类
AI有可能提出超越人类的解决方案吗?设计是一个随时间演进的过程,它建立在多层决策之上,其中部分决策可追溯至几十年前,且已被视为不容置疑的基石。然而,AI具备独立承担多项设计任务、探索优化策略、对比设计方案及持续学习的能力。它不应像当前的设计团队那样,受限于过往的桎梏。
“若将人工智能与大语言模型仅视为辅助工程师沿用现有流程的工具,那便是对它们潜力的极大限制,也束缚了我们今天设计芯片的方式,”Metcalfe强调,“这或许并非最高效的途径。未来,这种探索的边界将更加宽广。”
在训练机器人踢足球的过程中,我们也见证了类似策略的成功应用。相较于被明确告知如何执行特定动作的机器人,那些获得自由学习机会、通过试错与行为校正来自我提升的机器人,往往能创造出更为出色的动作。“学术文献中常提及的一个案例是匹配网络,其中会出现看似奇怪的二维码或生成的奇怪图案,”Petr 介绍道,“人类绝不会设计出这样的作品,它看似毫无逻辑。但从机器的视角来看,这一切却合情合理。我们仍需验证这些形状与形式在实际生产中的应用价值。”
人类的大脑在任何时刻都只能承载有限的细节信息。“芯片设计的传统方式或将迎来变革,”Metcalfe预测,“这未必是一场颠覆性的革命,而是设定最终目标后,放手让机器去探寻实现路径。然而,审视当今芯片设计的现状,不难发现其过去几十年间并未发生根本性变化。设计师们依然采用分层的模块化方法,先设计单个模块,再将其组合成系统。另一种设想是让机器全权负责所有模块的设计。既然每位工程师每次只能设计一个模块,为何我们不利用人工智能来规划整个片上系统的蓝图呢?”
结论
尽管在提升设计师工作效率的辅助工具方面取得了显著进步,但在EDA领域的生成式AI方面却鲜有突破。这主要归因于训练数据的匮乏。
同时,将人工智能局限于人类进化过程中的既有模式,可能会制约其最终潜能的发挥。倘若有人构建了一个支持自我学习的系统,且计算机的学习速度仅为人类的10倍(这在没有相同商业限制的情况下,应是轻而易举之事),那么计算机将在大约四年内追上人类的水平。至于此后将发生何种变革,无人能准确预测。