左图:动画显示 AlphaChip 在没有任何经验的情况下,将开源的 Ariane RISC-V CPU 置入。右图:动画显示 AlphaChip 在对 20 个 TPU 相关设计进行练习后,放置相同的块。
其实,设计芯片布局并不是一项简单的任务。
一般来说,计算机芯片有许多相互连接的模块、多层电路元件组成,所有这些部件都由纤细无比的导线连接起来。
此外,还有许多复杂且相互交织的设计约束,必须同时满足。
由于设计的复杂性,60 多年来,芯片设计工程师一直在努力自动化芯片布局规划过程。
谷歌表示,AlphaChip 的研发,从 AlphaGo 和 AlphaZero 中汲取了经验。
众所周知,通过深度学习和博弈论,AlphaGo 和 AlphaZero 逐渐从 0 掌握了围棋、国际象棋和将棋的潜在规则。
AlphaChip 同样是采用了,将芯片底层规划视为一种游戏的策略。
从空白栅格开始,AlphaChip 每次放置一个电路元件,直至放置完所有元件。
然后,根据最终布局的质量,给予模型奖励。
一种全新的「基于边」的图神经网络让 AlphaChip,能够学习相互连接的芯片元件之间的关系,并在芯片之间进行泛化,让 AlphaChip 在设计的每种布局中都有所改进。