近日,谷歌DeepMind在Nature上正式公布了其最新的芯片设计算法AlphaChip,该方法致力于加速和优化计算机芯片的开发,已经历经多款TPU的产品考验,可在短短数小时内完成人类专家需要数周甚至数月的芯片布局设计。
虽然近年来各大EDA公司都在积极将AI引入到自己的芯片设计工具当中,但是早在2020年,谷歌发表了一篇具有里程碑意义、题为《Chip Placement with Deep Reinforcement Learning》预印本论文,首次向世界展示了其采用新型强化学习方法设计的芯片布局。随后在2021年,谷歌又在Nature上发表了论文并将其开源了。
2022年,谷歌进一步开源了该论文中描述的算法代码,使得全球的研究人员都能够利用这一资源对芯片块进行预训练。
如今,这一由AI驱动的学习方法已经经历了TPU v5e、TPU v5p和Trillium等多代产品的考验,并在谷歌内部取得了显著成就。更令人瞩目的是,谷歌DeepMind团队最近在Nature上发表了该方法的附录,详细介绍了其用于芯片设计布局的强化学习方法,并将该模型命名为“AlphaChip”。据称AlphaChip有望大大加快芯片布局规划的设计,并使它们在性能、功耗和面积方面更加优化。目前AlphaChip已发布在Github上与公众共享,同时谷歌还开放了一个在20个TPU模块上预训练的检查点。
谷歌TPU发展历程
据介绍,AlphaChip在设计谷歌的张量处理单元(TPU) 方面发挥了重要作用,并已被包括联发科(MediaTek)在内的其他公司采用。同时,谷歌还开放了一个基于20个TPU模块预训练的检查点,分享了模型权重。
谷歌首席科学家Jeff Dean表示,开放预训练AlphaChip模型检查点以后,外部用户可以更容易地使用AlphaChip来启动自己的芯片设计。
AlphaChip的问世,不仅预示着AI在芯片设计领域的应用将变得更加广泛,也标志着我们正迈向一个由“芯片设计芯片”的全新时代。
从数月缩短至数小时
通常芯片设计布局或平面图是芯片开发中时间最长、劳动强度最高的阶段。近年来,EDA三巨头之一新思科技(Synopsys)开发了AI辅助芯片设计工具,可以加速开发并优化芯片的布局规划。但是,这些工具非常昂贵。谷歌希望在一定程度上使这种AI辅助芯片设计方法大众化。
如今,如果由人类来为GPU等复杂芯片设计平面图大约需要24个月。不太复杂的芯片的平面规划可能也至少需要几个月的时间,而这意味着数百万美元的成本,因为维持一个设计团队通常需要一大笔费用。
谷歌表示,AlphaChip加快了这一时间表,可以在短短几个小时内创建芯片布局。此外,据说它的设计非常出色,因为它们优化了电源效率和性能。谷歌还展示了一张图表,显示与人类开发人员相比,各种版本的 TPU 和 Trillium 的平均线长(wirelength)都有所减少。
上图展示了AlphaChip在三代Google张量处理单元 (TPU) 中的平均线长(wirelength)减少量,并与TPU物理设计团队生成的位置进行了比较
作为谷歌DeepMind的巅峰之作,AlphaChip正以其在芯片设计领域的革命性进展,捕获全球科技界的瞩目。
芯片设计是一项位于现代科技之巅的领域,其复杂性在于将无数精密元件通过极其细微的导线巧妙连接。作为首批应用于解决现实世界工程问题的强化学习技术之一,AlphaChip能够在短短数小时内完成与人类相媲美甚至更优的芯片布局设计,无需耗费数周或数月的人力劳动。这一划时代的进展,为我们打开了超越传统极限的想象之门。
AlphaChip是如何工作的?
芯片设计难度极大,部分原因在于计算机芯片由许多相互连接的块组成,这些块具有多层电路元件,所有元件都通过极细的导线连接。此外,芯片还有很多复杂且相互交织的设计约束,设计时必须同时满足所有约束。由于这些复杂性,芯片设计师们在 60 多年来一直在努力实现芯片布局规划过程的自动化。
与AlphaGo和AlphaZero类似,谷歌构建AlphaChip时,也将芯片的布局规划视为一种博弈。
AlphaChip的秘诀在于其采用的强化学习原理,将芯片布局设计视为一场游戏。从一个空白的网格出发,AlphaChip一次放置一个电路元件,直至全部就位。随后,根据布局的优劣,系统会给予相应的奖励。
更重要的是,谷歌创新性地提出了一种“基于边”的图神经网络,使得AlphaChip能够学习芯片元件之间的相互关系,并将其应用于整个芯片的设计中,从而在每一次设计中实现自我超越。与AlphaGo类似,AlphaChip可以通过「游戏」学习,掌握设计卓越芯片布局的艺术。
左图:AlphaChip在没有任何经验的情况下放置开源处理器Ariane RISC-V CPU的电路元件;右图:AlphaChip在对20个TPU相关设计进行练习后放置相同的电路元件
在设计TPU布局的具体过程中,AlphaChip首先会在前几代芯片的各类模块上进行预训练,包括芯片上和芯片间的网络模块、内存控制器和数据传输缓冲区等。这一预训练阶段为AlphaChip提供了丰富的经验。随后,谷歌利用AlphaChip为当前TPU模块生成高质量的布局。
与传统方法不同,AlphaChip通过解决更多的芯片布局任务,不断优化自身,如同人类专家不断通过实践提升技能一样。正如DeepMind联合创始人兼CEO Demis Hassabis所言,谷歌已经围绕AlphaChip建立了一个强大的反馈循环:首先,训练先进的芯片设计模型 (AlphaChip);其次,使用AlphaChip设计更优秀的AI芯片;然后,利用这些AI芯片训练更出色的模型;最后,利用这些模型再去设计更出色的芯片。
如此反复,实现了模型与AI芯片的同步升级,Demis Hassabis表示,“这正是谷歌TPU堆栈表现如此好的部分原因。”
谷歌TPU及联发科均已采用
自2020年以来,AlphaChip一直被用于设计谷歌自己的TPU AI加速器,这些加速器驱动着谷歌的许多大规模AI模型和云服务。这些处理器运行基于Transformer的模型,为谷歌的Gemini和Imagen提供支持。
为了设计TPU布局,AlphaChip首先在前几代的各种芯片块上进行练习,例如片上和芯片间网络块、内存控制器和数据传输缓冲区。这个过程称为预训练。然后谷歌在当前的TPU块上运行AlphaChip以生成高质量的布局。与之前的方法不同,AlphaChip解决了更多芯片布局任务实例,因此变得更好、更快,就像人类专家所做的那样。
到目前为止,AlphaChip已被用于开发各种处理器,包括谷歌的TPU和联发科旗舰级天玑5G SoC芯片,这些处理器广泛用于各种智能手机。此外,还包括谷歌首款基于Arm的通用数据中心CPU Axion。因此,AlphaChip能够在不同类型的处理器中进行泛化。
可以说AlphaChip改进了每一代TPU的设计,包括最新的第6代Trillium芯片,确保了更高的性能和更快的开发。尽管如此,谷歌和联发科目前仍都只是依赖AlphaChip来制作芯片当中有限的一些区块,而人类开发人员仍然承担了大部分的设计工作。不过,随着持续AlphaChip的持续迭代,其所承担的区块也越来越多,已经从TPU v5e的10个区块提升到了Trillium的25个区块。
谷歌最近三代张量处理单元 (TPU)(包括v5e、v5p和Trillium)中AlphaChip设计的芯片块的数量
谷歌表示,AlphaChip已经在各种芯片模块上进行了预训练,这使得AlphaChip能够在实践更多设计时生成越来越高效的设计布局。虽然人类专家可以学习,而且许多人学得很快,但机器的学习速度要高出几个数量级。与人类专家相比,AlphaChip不仅放置的模块数量更多,而且布线长度也大大减少。随着每一代新TPU的推出,AlphaChip设计出了更优秀的芯片布局,提供了更完善的整体平面图,从而缩短了设计周期并提升了芯片性能。
扩展AI在芯片开发中的应用,探索全流程自动化
AI在芯片设计领域的深度介入,引发了一个大胆的设想:我们能否用AI设计一颗完整的芯片?事实上,英伟达已经在这一领域进行了尝试。通过深度强化学习代理设计电路,英伟达的H100中就有近13,000条电路由AI设计。中国科学院计算所也利用AI在5小时内生成了一个名为“启蒙一号”的RISC-V处理器芯片,拥有400万个逻辑门,性能与Intel 80486相当。
谷歌表示,AlphaChip的成功激发了一波新的研究浪潮,将人工智能用于芯片设计的不同阶段。这包括将AI技术扩展到逻辑综合、宏选择和时序优化等领域,Synopsys和Cadence已经提供了这些技术,尽管需要很多钱。据谷歌称,研究人员还在探索如何将AlphaChip的方法应用于芯片开发的更进一步阶段。
“AlphaChip激发了芯片设计强化学习的全新研究路线,跨越了从逻辑综合到布局规划、时序优化等的设计流程,”谷歌的一份声明中写道。
展望未来,谷歌看到了AlphaChip彻底改变整个芯片设计生命周期的潜力:从架构设计到布局再到制造,人工智能驱动的优化可能会带来更快的芯片、更小(即更便宜)和更节能的芯片。虽然目前谷歌的服务器和基于联发科天玑5G的智能手机受益于AlphaChip,但未来应用程序可能会扩展到几乎所有领域。
AlphaChip的未来版本已经在开发中,因此或许未来在AI的驱动下,芯片设计将会变得更加的简单。在不断的研究和迭代中,AlphaChip有望覆盖芯片设计的每一个阶段,从架构设计到制造工艺。这样的技术发展将为行业带来更多机会,同时也为工程师和开发者们提供了全新的工具,使得芯片设计的门槛不断降低,鼓励更多创新的涌现。
当前,AI设计完整芯片的能力依然有限,但这无疑是未来芯片发展的一个重要机遇。随着技术的不断进步,AI在芯片设计领域的潜力必将得到进一步挖掘和利用,并最终改变整个芯片的设计过程。