芯片设计进入机器学习时代,从RTL到GDS实现更完美的PPA表现
扫描二维码
随时随地手机看文章
在近日Cadence召开的 Cerebrus™智能芯片设计工具发布会上,Cadence公司数字与签核事业部产品工程资深群总监刘淼先生对于EDA工具的人工智能化发展以及第一款完全基于机器学习引擎的EDA工具Cerebrus™的细节进行了精彩的分享。
芯片设计自动化发展历程——走向机器学习
EDA的全称叫Electronic design automation,从名称上就可以知道高度的自动化是其对于芯片设计的追求。据刘淼分享,60年代早期的芯片全部都需要人来手工画,都是完全定制的,采用完全自定义布局,这时只能做几十个几百个小的器件。后面等到芯片规模逐渐变大,一些常用的东西就被做成了标准单元库,通过原理如网表来实现,到这时已经可以做到几百个几千个器件。后面随着芯片复杂度的进一步提升,芯片上的功能要求 更多,性能要求更高,这时候 就出现了RTL综合语言。一个8位加法器手动去写,原理图要做到800~1000个小的器件,但是如果用RTL综合语言可能十几行就写完了,因此RTL综合语言的出现是芯片设计上非常大的进步。RTL综合之后EDA工具的下一个进步就是自动化布局与布线的出现。
从刘总的分享中我们不难发现,虽然芯片设计方法、EDA工具都在不断地推陈出新,但由于芯片的复杂度作为驱动其发展先决因素,所以工具的发展并不可能领先于芯片设计,尽管过去的几十年间芯片设计在自动化上取得了巨大进步,但芯片设计的过程仍然是高度手动化的,design-in之后的设计工作仍是趋于劳动密集型的。芯片的复杂化使得设计输入之后的可调整项高度复杂,每一个输入的调整又会进行产生更多可能。设计者需要不段地地来调整各种输入,直到达到他们想要的PPA目标,但其实这个PPA目标中也能也已经在一些指标上做出了妥协。从RTL到GDS的这一过程,其实可以看作是一个简单的类似于下国际象棋的宏放置问题,而这一过程,机器学习就可以发挥其巨大价值。
概率论式的增强型自学习实现完美芯片PPA
Cerebrus是Cadence的Intelligent System Design(智能系统设计)战略下的一款全新工具,主要面向数字芯片设计,通过机器学习的方式来实现RTL-to-GDS全流程自动优化,实现最完美的PPA输出。据刘淼介绍,Cerebrus的目标是实现生产效率曲线的一个优化,目前可以带来大概有10倍生产力提升和20%性能提升。Cerebrus包含了从RTL综合、到设计实现、到签核三个主要过程中的三个不同的工具,分别是Genus、Innovus和Tempus,每一个环节都有多个设计步骤 ,加起来一共有十多步。从一个采用5nm工艺、性能为3.5GHz的芯片设计的实例来看,采用Cerebrus可以将数名设计工程师数月的手动开发流程缩减到一名工程师10天的工作量。而且参考下图的数据,在性能、漏电功耗、总功耗和密度上均有显著改善。
另一个例子是在自动布线环节上,一个12nm工艺2GHz主频的CPU,在采用了Innovus的自动布局优化之后, 性能提升了200MHz,总失效时序改进了83%,漏电功耗降低了17%。
据刘淼分享,人工智能分为推理和训练两个流派,而Cerebrus采用的是概率论的方式,属于增强型的自学习。因此在实际芯片设计的运行过程中,并不需要把所有的可能都跑一遍,而是每一步都可以通过概率论找到一个最优解,让几千上万种可能实现快速地收敛,这样才计算的过程中,可以节省计算资源,提高整体的流程效率。在EDA领域不少软件都已经具备机器学习赋能,但Cadence在这一点上要领先于其他厂商。另外,对于PPA的最优解的追求,Cerebrus也支持设计者的定制化的输入。例如如果对于芯片性能有极致的要求,Cerebrus可以按照这个方向去做,然后得到更高性能表现的PPA结果。
###
目前Cerebrus已经获得了合作伙伴实践认可:瑞萨表示借助Cerebrus工具将设计性能提高了10%以上;三星代工厂使用Cerebrus进行自动布局规划电源分配网络选型,将最终设计时序提高50%以上。并且在一些最关键的模块上,之前需要人工数月实现的操作,在Cerebrus加持下仅仅几天 就可以将芯片功耗降低8%以上。刘淼表示,Cerebrus命名取自拉丁语的‘大脑’的意思,它是Cadence在EDA软件人工智能化方向一个重要成果。通过对于工作人员繁琐工作负担的释放,设计者可以专注于更有价值的更高层次的设计工作:“Cerebrus带来芯片设计生产力的性能革命创新,用我们的工具解放人,让人做更加有意义的事情。”