硅谷:设计师借助生成式人工智能进行芯片辅助

硅谷之创新:设计师借助生成式人工智能为芯片设计添砖加瓦

今天发布的一篇研究论文描述了强化人工智能在设计半导体这一最复杂的工程领域中的应用方式。

该研究展示了高度专业领域的企业如何在其内部数据上训练大型语言模型(LLMs),以构建提高生产力的助手。

半导体设计是一项极具挑战性的工作。在显微镜下,一款像NVIDIA H100 Tensor Core GPU(上图)这样的尖端芯片看起来像是一个经过精心规划的大都市,由数百亿个晶体管组成,宽度是人类头发的万分之一。

多个工程团队需要持续协作长达两年的时间,才能构建起这样一个数字巨城。

其中一些团队负责定义芯片的整体架构,另一些则负责设计和布置各种超小型电路,还有其他团队负责进行测试。每个任务都需要专门的方法、软件程序和计算机语言。

LLMs的广泛应用前景

论文的主要作者、NVIDIA研究总监Mark Ren表示:“我相信随着时间的推移,大型语言模型将会在各个领域的流程中发挥作用。”

NVIDIA首席科学家Bill Dally在旧金山举行的国际计算机辅助设计会议上发表主题演讲,宣布了这篇论文。

Dally在活动中表示:“这项工作是将LLMs应用于复杂的半导体设计工作的重要第一步。它展示了即使是高度专业的领域也可以利用内部数据训练有用的生成AI模型。”

ChipNeMo应用

论文详细介绍了NVIDIA工程师们为内部使用创建的定制LLM模型ChipNeMo,该模型是通过公司内部数据进行训练,以生成和优化软件,并辅助人工设计。

从长远来看,工程师们希望将生成AI应用于芯片设计的每个阶段,有望在整体生产力方面获得显著的提升。论文的主要作者Mark Ren在电子设计自动化(EDA)领域已有20多年的从业经验。

在向NVIDIA工程师们征集潜在应用案例后,研究团队选择了三个实际应用场景:聊天机器人、代码生成器和分析工具。

初步应用案例

其中一个应用案例是一款自动化维护已知错误描述的工具,该工具可以节省大量耗时工作,因此获得了最广泛的认可。

在早期测试中,一个能回答关于GPU架构和设计问题的原型聊天机器人帮助许多工程师快速找到技术文件。

使用生成AI代码生成器的动画
代码生成器将帮助设计师编写芯片设计所需的软件。

正在开发中的代码生成器(如上所示)已经能够生成大约10-20行芯片设计专用语言的代码片段。它将与现有工具集成,使工程师们在设计过程中能够获得一个方便的助手。

借助NVIDIA NeMo定制AI模型

该论文主要关注于团队搜集设计数据并将其用于创建一个特定的生成AI模型的工作,该过程可适用于任何行业。

作为起点,团队选择了一个基础模型,并使用NVIDIA NeMo进行定制。NVIDIA NeMo是一个用于构建、定制和部署生成AI模型的框架,已包含在NVIDIA AI Enterprise软件平台中。所选的NeMo模型具有430亿个参数,它的能力在于理解模式。该模型是使用超过一万亿个令牌进行训练的,这些令牌包括文本和软件中的单词和符号。

训练自定义模型的ChipNeMo工作流程图
ChipNeMo提供了一个例子,展示了一个深度技术团队如何使用自己的数据来改善预训练模型。

团队随后进行了两轮模型训练的优化,第一轮使用了约240亿个标记数据的内部设计数据,第二轮使用了约130,000个对话和设计示例的混合数据。

这项工作是半导体行业中生成式人工智能的几个例子之一,这些例子刚开始从实验室中出现。

分享所学到的经验

Ren的团队最重要的一点经验是定制化LLM的价值。

在芯片设计任务中,具有只有130亿参数的定制ChipNeMo模型的性能可以与具有700亿参数的更大通用型LLM(如LLaMA2)匹敌甚至超过。在某些使用情况下,ChipNeMo模型表现得更好。

沿途中,用户需要谨慎处理收集的数据,并且要注意数据清洗的方式。

最后,Ren建议用户时刻关注能够加快和简化工作流程的最新工具。

NVIDIA研究部门拥有数百名科学家和工程师,致力于人工智能、计算机图形学、计算机视觉、自动驾驶汽车和机器人等领域。半导体领域的其他最近项目包括使用人工智能来设计更小更快的电路和优化放置大块元件。

企业想要创建自己的定制LLM可以从GitHub和NVIDIA NGC目录中获取NeMo框架,立即开始。