芯片设计上云——路径篇
2021-11-12
来源:开云棋牌官网在线客服行业观察
引言:
临渊羡鱼, 不如退而结网。
—— 《淮南子 · 说林训》
在前面的芯片设计上云系列文章中,我们曾经详细阐述了芯片上云的动力和趋势(《芯片上“云”的动力》)。从今年下半年起,我们就切实地感受到这一波芯片设计上云大潮正扑面而来,国内也渐渐出现了一批上云的芯片设计公司。
在上云初期阶段,这些公司主要分布在行业的两端:一部分是顶端的大公司,他们上云的动力偏向于弹性算力和敏捷运维;另一部分是尾部的初创小型企业,他们上云的动力则偏向于快速获取标准完整的芯片设计环境从而灵活高效地开始进行芯片开发工作。可以预见,2022年将会是国内芯片设计上云的第一个小高潮,“数字化转型”已经在芯片设计行业悄然拉开了序幕。
如上所述,不同类型的芯片设计公司对芯片上云的原动力决定了他们将会采用不同的EDA云计算方案。因此采用什么云计算方案以及如何上云是很多芯片设计公司现在面临的最直接问题,我们通过这几年的研究,建议大家参照下图的上云路径来进行:
芯片设计上云的方法论和传统的芯片设计平台建设方法论类似,都是“调研&规划-->建设&执行-->运营&优化”的这样一个可持续发展和优化的流程,不同之处在于“芯片设计上云”在前期的“调研&规划”中对各种需求评估和方案制定会涉及到更多的“云计算”技术和“公有云”商务条款,因此,芯片设计公司或者芯片设计上云服务商需要具备这些技术和商务知识,我们此文也着重讲述如何“调研&规划”。
无论是行业顶端的大公司还是start-up的小型设计公司,都希望借着“芯片设计上云”的东风在云端获得成本优化的高效安全设计环境,但是正如之前《芯片设计上云-挑战篇》所述,“安全”、“效率”和“成本”这三个要素不可兼得,在“调研&规划”阶段必须深入了解设计上云原因给出适合的EDA云计算方案,使得上述三个因素达到最佳平衡。
EDA上云的用户视角
芯片设计环境是个复杂的软硬结合+资源管理的系统,其技术方案必须从各个角度出发,满足不同用户和管理的要求。
EDA云计算方案决定因素
从用户视角来看,设计公司内部不同的用户对上云的关注点有所不同:
芯片设计团队对这五大因素的诉求直接决定了最终的EDA云计算方案。
总体来说,目前主流EDA云计算方案分为:混合云方案和全云方案,分别适用于中大型设计公司和start-up小型设计企业。
中大型设计公司的最优选择 - 混合云方案
大部分中大型设计公司都已经建好了本地数据中心,本地资源满足了设计项目大部分时间的算力和存储要求,但是当设计资源需求高峰来临的时候(例如:后端验证高峰时),本地数据中心资源不足往往成为项目推进的瓶颈,公司的设计部门和ITCAD部门在这个时候大部分时间都用在资源协调和扩容上,因此在最大化利用本地数据中心资源的前提下,“芯片设计上云”混合云方案的弹性算力和快速交付成为解决这个痛点的最优选择。
对于中大型设计公司来说,一个完整芯片设计环境上云项目,需要IT部门、CAD部门和研发部门密切配合,通过调研规划、建设执行、运营优化三个阶段来实现。所谓“谋定而后动”,在做出芯片设计环境上云的决策前,最为核心的问题是:该如何选择最适合上云的场景?
我们曾与很多设计团队进行了广泛的交流和深入调研,下面就针对这个问题展开分析。
EDA设计环境上云的场景分析
图片
以一个典型的数字IC设计项目为例(14nm通信芯片设计),我们将会从上述的上云五大因素进行展开阐述。
1- 高弹性
芯片设计上云的主要动力之一就是高弹性,通过计算集群的弹性伸缩来满足芯片开发过程中的短周期的大计算需求,并能迅速在需求满足后释放算力资源,以控制成本。
此案例中,设计流程中各个阶段的设计作业和设计数据特征如下:
由此可见SOC设计后端工作环节(PR、STA、后端仿真、功耗分析,PV等)的数据量大,运行时间长,需要大量的仿真计算和存储资源。根据已有经验,上述环节的资源需求占据了整体资源需求的50%-60% 。其中,在STA和PV等环节,还需使用专用的大内存服务器(1.5TB以上)。“芯片设计上云”方案必须提供弹性算力技术满足设计高峰需求。
关于弹性计算的详细介绍,请参考前文:芯片设计上云 ---弹性计算篇
2- 低敏感
实际上我们经常与IC设计工程师探讨上云话题的时候,他们的第一反应往往是:“上云安全吗?” 安全这个问题需要从IT和用户视角分开来看:从IT安全角度来看,无论是在技术的领先性和投入的资源来看,公有云无疑是比企业自建环境更加安全的。
公有云平台上运行着大量企业的系统,每天会面临全球数以百万计的网络攻击,公有云提供商雇佣大量信息安全工程师和利用各种监控、防病毒、防攻击系统来保证公有云平台的数据安全;而企业的自建IT环境的安全感是因为此环境没有受到全球网络爱好者的“关注”,不会时常面临这种安全的“考验”,但是一旦自建IT环境遇到这种网络攻击,往往不堪一击,从目前报道的勒索病毒案例就可见一斑。
从IC用户的角度,他们关心的并不是IT意义上的安全--网络安全,而是设计数据的安全,设计数据的“敏感性”决定了安全级别,例如将RTL数据放到云上,用户就会有心理上的不确定性,用户需要绝对安全的“保险箱”来确保此类高敏感性的数据安全;而Netlist数据,则相对来说敏感性低了很多,存放位置可以相对更灵活。
以RTL数据为主的前端数据敏感性最高,其次为IP和工艺文件数据,以Session、过程波形、归档数据和Report为主的过程数据安全性最低。
显然,选择数据敏感性较低的设计节点上云可以作为设计上云的第一步。
3- 低交互
公有云平台需要企业用户从网络远端进行接入,从企业到公有云数据中心的网络带宽是重要的考虑因素。在EDA计算场景中,会有大量的实时海量小文件读取同步发生,因此跨数据中心的实时计算数据传递几乎是不可行的。
另外,从目前公有云对数据传输的收费策略来看,虽然数据“上传”基本免费,但是数据“下载”需要按照下载数据大小支付数据流量费,因此,如何减少云上和云下数据“交互”,也是实现成本优化的最重要的手段。
从这点来说,“芯片设计上云”混合云方案的基本原则是要找到“零交互”的设计节点并优先上云。
表1和表2中也体现了此例中数字IC设计流程中各个节点的数据交互类型以及数据交互量,从而可以分析每个场景下需要通过远程网络进行数据交互的情况。一般来说,后端流程中的STA场景是比较典型的低交互场景,大量计算生成的过程波形文件,是不需要下载到本地的。
4- 易协同
大规模芯片开发往往需要多地团队的协同作业,分散的数据中心和集中的数据中心一直是一个值得探讨的问题。相对来说,集中的数据中心对于数据版本同步的要求要少很多,也更容易进行平台维护和项目进程控制,更容易实现项目多地协同的需求。
但是对于中大型设计公司来说,一个集中数据中心容量有限,当碰到项目资源需求高峰和利用先进制程进行产品升级设计时,将设计流程中的部分设计节点迁移到云上,利用公有云资源和“芯片设计上云”混合云方案的弹性算力实现集中数据中心的无缝扩展依然能很好的满足项目组协同的需求。
目前比较有趣的一个现象是开云棋牌官网在线客服行业非常火热,很多公司的后端都利用外部资源来完成,这种情况下,“芯片设计上云”混合云方案可以为这种设计公司的协作方快速提供一个可连通、相对数据隔离、并可控的设计环境,在保证协同效率的情况下还兼顾了数据安全。
5- 用户使用习惯
开云棋牌官网在线客服行业是一个IT技术相对保守的行业,这个行业采用了20多年的LSF来管理计算集群的方式,早已是行业主流,大部分可并行的EDA工具也原生集成了LSF,对大都数有经验的IC工程师来说,通过LSF的方式下提交作业也是最习惯的工作方式。行业内绝大多数的本地计算集群,都优选采用的LSF进行作业调度和集群管理。
前文中(《芯片设计上云-弹性计算篇》)我们阐述过LSF如何与公有云构成一个自动化的弹性算力池的方法,尤其是CAD环境的6个方面,都与LSF有着深度的集成。
“CAD管理内容的其他几个方面,往往也都是基于这样的底层架构来进行定制化管理,包括设计流程自动化、EDA工具与调度工具的集成、设计环境标准化、设计数据管理的标准化、License管理和调度等。”
保持透明的用户习惯,对于初次上云的用户来说,非常重要,否则会增加额外的成本和阻力。
1- STA上云
2018年起,我们接触到了行业内的一个大型企业的上云案例,针对这个案例进行了深入的调研,尤其是对STA上云场景进行了深入分析。在整个SOC设计流程中,STA的应用场景,能最好地满足以上五个关键因素。
高弹性:STA属于可高并发的并行作业场景,例如,在STA中需要通过大量计算任务去校验设计的各种结果,根据芯片规模大小,往往会达到上万次的并行计算,而在本地计算环境内,受到物理容量的限制,是无法无限扩展瞬间算力的,因此传统的项目管理模式下,往往需要通过在有限的本地计算集群中排队处理。假如跑一次STA需要1小时,一万个STA job在10台服务器上需要排队跑1000个小时。而在云上,可以充分利用弹性方法,开出更多台机器,在最短的时间内并发跑完所有的job。
低敏感:如表2中设计流程的输入输出文件的分析,STA在整个IC设计流程里面来说,数据敏感性偏低,把STA的相关数据放在云端对于传统的研发用户来说,是更容易接受的。
低交互:STA是比较满足低交互的特征的,STA的输入文件和输出文件,可以单节点在云端进行独立的计算,而不需要大量的以及实时的线上线下数据交换,从而使得网络带宽的压力几乎没有。而且STA的计算结果是波形文件,绝大多数情况下是不需要下载到本地的。
易协同:如前所述,集中的设计平台对于多团队的协同研发场景是最为简便的基础架构方法,云端的超大算力池空间为集中的设计平台提供了更为简便的选择。
使用习惯:如前面发布的弹性算力文章,在云端的芯片设计平台,跟本地的设计环境可以做到完全相同架构,对计算集群的管理统一通过LSF作业调度来进行。对于研发用户来说,在云上和本地,是完全无感透明的用户体验,通过bsub去统一提交作业,LSF可以自行来进行Multi-Cluster的调度管理。
从这5大因素分析来看,此次这个大厂选择STA这个设计节点上云正是一个最为稳妥安全的选择。
2- Start-up设计公司的最优选择 - 全云方案
如本文开始所说,大量start-up的设计公司也会选择“芯片设计上云”,其动力主要来自于成本和效率两个方面。现在很多的start-up小型公司呈现出这样一些特征:
人员规模不大,但是站点较多,有些可能还有国外的设计人员
启动资金有限,自建机房负担较重
需要马上开始芯片设计,芯片设计平台交付周期紧
没有专职的IT/CAD人员,对设计平台如何搭建缺乏专业知识
公司初期办公地点不定,可能会经常搬家
“芯片设计上云”全云方案就能非常好的满足以上需求。以下是一个初创公司的全云方案:
此全云方案提供了完整的行业三层网络安全架构,并包含可扩展的弹性算力集群+存储以及成熟的数据传输方案,对于终端用户来说使用习惯和之前完全保持了一致,用户可以从各个地方通过internet连接进入“云端”的设计平台进行设计工作。
此方案使得用户可以在每年十几万基础设施投资的情况下,并在不到一周的时间拿到设计环境,这对于很多start-up设计公司来讲是非常有帮助的,此方案也将“云计算”的精髓-- “万物皆服务”发挥得淋漓尽致。
当然,EDA云计算方案和上云场景的对应关系也不是绝对的,还是要根据企业的整体芯片项目规划来综合进行决策,因此大量而细致的调研工作和详细的上云规划是“芯片设计上云”是否能够成功的关键,对于每个芯片设计公司来说,其上云路径和方案都是需要量身定做的,比如:在计算节点的选型上,方案需要根据芯片类型和作业特征来选择云上最合适的机型。在这里,摩尔精英IT/CAD设计平台事业部总结了这几年提供的“芯片设计上云”服务的经验并进行分享,希望给行业上云提供一些有用的参考。