芯行纪此前推出布局规划工具AmazeFP以解决后端工程师们手动摆放宏单元费时又费力这个痛点。AmazeFP基于其强大并完全内置的 Placer + Global Route + Timer 等核心引擎, 配以Timing Driven +Dataflow Driven等技术,在极短时间内完成Floorplan,媲美甚至超越了以往用数周乃至数月手工摆放才达到的PPA,大大地提升了Floorplan效率。AmazeFP-ME将最新的AI技术引入到AmazeFP的解空间探索中,在AmazeFP的基础上进一步显著地提升了PPA。
AmazeFP利用算法得到一个Memory/IP等宏单元位置的最优解,并且会基于时序以及拥塞评估,同时考虑到用户习惯、流片需求以及Bump位置等因素将这些Memory/IP对齐成为一个可签收的Floorplan ( Pack过程)。在整个过程中,有不少的参数会影响最优解及Pack后的形状从而影响最后的PPA。这些参数组成的解空间巨大,尤其是Hard Block数量众多时,Pack的解空间尤其巨大。怎样在调参的基础上,利用机器学习在最短时间内得到全局的理论最优解?AmazeFP-ME的方案能在短时间内自我学习,同时探索巨大的解空间,成功地得到更优的全局解。
实际使用案例
此案例是一个图形编解码模块,Memory所占比例较高。图一是用了数周时间手动调出来的Floorplan;图二是AmazeFP在2个小时内得到的Floorplan。图三为两者在P&R工具里的PPA对比。
图一:User Floorplan
图二:AmazeFP Floorplan
图三: User/AmazeFP Floorplan QoR对比
可以看到,使用AmazeFP本身在不到2个小时,得到的Floorplan方案已经优于手工摆放数周的结果。那还存不存在更优解?
在AmazeFP的基础上,测试AmazeFP-ME的结果:
图四: AmazeFP-ME QoR趋势图
图四是ME的QoR趋势图,此图最好是一个逐步收敛的图,横坐标是run(运行)AmazeFP的次数,纵坐标是每个run的分数(打分机制是分数越低QoR越好)。可以看到,随着run数目的增加,ME可以得到更多的更优解,并在第26个run得到了整个搜索的最优解。在此过程中,由于自带可分布式计算,AmazeFP-ME跑完所有的尝试所花时间也非常可控。
图五: AmazeFP-ME评判分数图(局部)
从具体的评判指标来看, ME找到了10多个比Baseline(AmazeFP默认跑出来的结果)更好的Floorplan。其中最好的分数是73.6分 (Baseline的分数是100分),相比于Baseline,Overflow改进了70%,Wirelength改进了8%,TNS改进了20%。
图六:ME分数最高的Floorplan
考虑到用户更关心最终的布局布线流程的结果,以下是上面的几个FP在跑完AmazeSys整个P&R(布局布线)流程的最终结果。
图七:User/AmazeFP/ME Floorplan的P&R QoR对比
可以看到,ME分数最高的Floorplan,继续在P&R中显示出了最好的PPA (ME > Baseline > User Floorplan)。与ME里看到的趋势非常一致,AmazeFP以及AmazeFP-ME产生的Floorplan结果得到了最终布局布线结果的证明。
进一步验证AmazeFP和P&R工具的PPA一致性:我们随机选择10个ME的结果,对比ME和P&R工具的一致性(Congestion/Wirelength/TNS)。从下图可以看到,整个趋势非常一致。
图八:AmazeFP-ME/AmazeSys Overflow对比
图九:AmazeFP-ME/AmazeSys TNS对比 (归一化)
下图是更多的ME产生的Floorplan,可以看到,AmazeFP-ME一直在不同的方向上探索,以找到更好的PPA的方案。
图十:ME探索出来的更多的Floorplan(部分)
芯行纪正在实现AI赋能EDA,落地的方案给客户带来真实的价值。