AI驱动的设计应用
如今,在先进人工智能(AI)和5G应用的推动下,Multi-Die系统正在帮助我们实现又一次的重大飞跃。为了满足不断增长的计算资源的需求,原先通过部署本地服务器的方法因其费用昂贵且安装耗时耗力已不可行。面对成本压力、不断缩小的市场窗口以及市场对更高性能和更多功能的需求,本地存储已经成为许多企业再也无法承受的负担。在云端进行IC设计并通过弹性调整满足计算资源需求的时代已然到来。作为台积公司开放创新平台(Open Innovation Platform®,OIP)生态系统的一部分,新思科技最近与台积公司和微软合作开展了一项测试,使用新思科技IC Validator™物理验证在Microsoft Azure云中对台积公司N3E工艺执行设计规则检查(DRC)。
我们为何选择DRC作为测试用例?因为DRC可以确保设计正确运行并能在代工厂中制造。但使用传统的本地计算资源执行DRC会占用许多时间,尤其是在设计变得越来越大和越来越复杂的情况下。同时,工艺规则的数量往往会随着设计的规模变大,逐步增加。如今许多设计中的工艺规则可能多达数千条,增加的设计复杂性导致验证步骤数以百计。对于拥有数十亿个晶体管的Multi-Die系统,DRC或电路布局验证(LVS)作业可能要运行数天时间,并要用到数百个CPU内核。因此,在算力集群的超算中心里,先进芯片和先进算力之间并不是划等号的,算力芯片只是提供了算力,而要高效利用算力还需要依赖光模块、存储等芯片的支持。由于上市时间(TTM)窗口日益缩小,需要的算力进一步增加,且随着制程节点从7nm发展到5nm、3nm甚至更小,进行物理验证愈来愈有挑战性。例如,在3nm工艺中,一个运行集就可能包含超过15,000条复杂规则,而执行这些规则需要10倍于此数量的DRC计算操作。因此,全芯片DRC签核仅一次迭代就可能需要数万CPU小时。虽然物理验证一直是计算密集型工作,但当今设计的规模和复杂性将这一挑战提升到了一个全新的高度。运行DRC和LVS作业存在串行依赖性,这意味着购买更多算力并不一定能保证运行时间更短。IC验证需要一定的计算规模,因此在串行操作期间,一些算力有时会闲置。如果不想办法针对这种情况并优化计算资源,开发者就得为那些未使用的资源付费,甚至影响到最终的利润。使用云计算进行IC验证可以帮助开发者避免这种情况。通过云端验证,开发者可以有效地调整规模——从数百个本地CPU内核到数千个云端CPU内核。这种弹性为开发者提供了灵活性、敏捷性和扩展性,让开发者可以仅在需要时使用所需的计算资源。运行集内的DRC可以分布到多个内核上并行运行,从而优化计算资源,节省时间和成本。
通过本次新思科技、台积公司与微软之间的合作,我们对照本地验证评估了云端验证。我们将台积公司的工艺设计套件(PDK)和DRC上传到了Synopsys Cloud环境中来启动测试,同时根据新思科技IC Validator(Synopsys Cloud环境中一个用于物理验证的独立应用程序)中的设计类型选择了不同的、且带有预先选择计算选项的资源。通过上传运行测试用例所需的脚本,并选择Microsoft Azure实例——FX和Mdsv2计算以及用于共享存储的Azure Netapp文件(ANF),然后点击几下,包含数百个CPU内核的虚拟机(VM)集群就创建好了。只需几个小时,我们的实验流程就已准备好执行。我们快速执行了一个大型测试用例,以便比较使用台积公司N3E工艺的作业在云端运行与在台积公司本地运行的结果。所有结果(云端和本地)都使用异或运算保存在GDSII文件中,两次运行的任何错误必须完全匹配才能得到清晰的结果。本地作业的实时运行时间为大约50小时,而云端作业时间减少到20小时以下,改善幅度为65%。此外,与在本地运行测试相比,云端测试运行的CPU小时数和成本降低了25%。对于台积公司N3E工艺,云端IC设计使运行时间减少65%。
(图源:台积公司)
新思科技IC Validator是一款物理验证工具,可以在数千个CPU内核之间分配作业。这项技术的核心是调度器,它将每个内核的命令排队,以使用DRC序列优化文件位置。它还能估计和平衡所有内核的内存需求,尽可能地降低峰值磁盘使用率,动态监控每个内核的负载,并调整系统以提高内核和内存的利用率。它采用异构配置并具有容错功能和真实延迟,所以它能检测主机重启、网络和套接字故障、机器崩溃以及磁盘空间限制,并恢复文件。IC Validator的动态弹性CPU管理能够与Load Sharing facility(LSF)和Sun Grid Engine(SGE)等常见作业排队系统无缝协作。它可用于各种不同类型的计算网络,例如本地和云。它能够加速时序收敛以满足流片计划,同时还会对资源和成本进行优化。与传统DRC和LVS作业相比,它只需最多40%的计算资源,就能保持相似的性能。在资源和存储按时间计费的云环境下,这样操作也可以节约成本。除了以上优势外,IC Validator不需要等到所有资源都可用后才开始作业。它能够以最少的资源开始运行,并在其余资源可用时再进行使用。通过单根I/O虚拟化(SR-IOV) 技术,Azure的软件定义网络堆栈将能够大比例地由CPU分流至FPGA智能网络接口卡(NIC)完成处理。综合Microsoft Azure CycleCloud和加速网络技术的支持,针对虚拟机和更高的数据吞吐量的优化资源扩展将得到有效保障。
除了时间和成本上的所有优势,开发者还可以采取措施来确保系统得到适当保护,从而保证云端EDA安全无虞。开发者应及时了解最新标准,并确保及时更新网络安全系统。拥有管理良好且隔离的虚拟网络(VNET)是其中的关键。