云计算在IC设计中的应用

时间:2022-10-01 04:47:47

云计算在IC设计中的应用

云计算是分布式计算、并行计算和网格计算的发展,或者说是这些计算机科学概念的商业实现。通俗地讲,云计算是一种商业计算模型,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务,通俗意义上包括云、端和管道,是虚拟化、效用计算、基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SAAS)等概念混合演进并跃升的结果。

2009年4月24日。美国标准局(NIST)专家给出了云计算定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。

自1997年Chellappa提出云计箕的第一个学术定义至今,云计算在各行业的应用如火如荼,在中国却是新兴事物,其发展仍处于起步阶段。按照IT(信息产业)产业发展的一般规律,在IT产品或者解决方案的生命周期中,处于萌芽阶段的中国云计算应用仍然以偏硬件为主,应用于EDA(电子设计自动化)工作看起来仍然是遥不可及。实际上,IC(集成电路)设计先前是采用大型主机来计算设计参数和设计出相应的芯片,如今是使用大量的服务器,对硬件的应用只是规模的增加而已,IC设计使用的云计算也是laaS和Saas相结合的服务模式。

国家集成电路设计深圳产业化基地(SZICC)孵化的公司规模较小,最优先考虑的是基础设施的成本和效率以及开始产品设计的时间,以孵化器为平台的云计算服务模式最适合其需求;而且,小公司的起步阶段设计规模一般不大,Internet的带宽相对而言比较容易满足孵化器提供的云计算服务。同时,随着跨国公司研发中心向中国的转移,大的商业公司在向中国探索研发市场时,基地的云计算服务可以为这些公司提供更为便捷的选择。最后,以IC基地为主导的产学研合作及IC基地众多分园要求频繁便利的IC设计相关培训,云计算是解决培训的最好选择。

如何将云计算应用到IC设计I域?本文以IC基地与国家超级计算深堋中心(简称超算中心)合作建立EDA云为例,探讨利用云计算完成IC设计工作。

将云计算服务应用于IC设计,最大的应用I域是那些需要大量计算资源的项目,这些项目对CPu数量,内存大小和存储空间都有着巨大的需求,这是云计算的强项。纵观IC设计流程,从最开始的想法实现(也就是我们常说的前端),到最终的物理实现(也就是我们常说的后端),在纷繁复杂的设计流程中,对运算能力和存储空间最为依赖的是仿真验证和设计规则一致性检查两个步骤、将超算中心强大的计算能力应用到这两个环节。即采用云计算来完善IC基地既有的IC设计流程,能提升整个IC设计的效率。

因此,云计算的主要应用对象是大型的设计项目,越大的设计项目将会耗费越大的计算资源,云计算提升的设计效率也就会越明显。有统计数据显示,在整个设计过程中,仿真验证和设计规则一致性检查大约占整个设计周期的40%-50%左右的时间,不同的设计类型和电路规模,应用云计算能将效率提升2-10倍,整个设计周期则有20%-45%左右的压缩,明显能减短产品面市时间,达到提升产品经济效益的目的。

IC基地主要承担中小型企业产品大规模上市之前的孵化和成长,而中小企业的企业规模普遍不大,为了减小风险,其芯片的规模通常也不是太大、在IC基地所有孵化的企业中、绝大部分芯片的规模在1000万门以下,超过1000万门的项目不到20%、当前IC基地的计算资源能够满足企业绝大部分的需求。但是云计算作为一门新兴的应用技术,我们坚信它将会成为未来的发展方向。Gartner的统计表明在未来的5―10年中,25%的IC设计将会基于云计算应用平台开发设诗。

IC设计的整个流程错综复杂,任何质量和进程管理过程中的疏忽都会造成最终的流片失败。因此,作为IC企业的服务单位,如何将超算中心的优良计算资源引入到目前的设计流程中,IC基地已经完成了内部的可行性论证。在目前IC基地成熟的设计基础上,以IC基地为中心,配合当前的管理体系,在仿真验证和设计规则一致性检查环节,对可以支持并行计算的设计步骤,引入超算中心的云计算服务,提过设计效率,加大产品竞争力。

在提高设计效率的同时,设计的私密性和安全性也是IC设计企业最为关心和关注的内容,因为IC产品设计的最大成果就是数据。数据是由若干二进制代码组成的文件,与编译完成的软件产品类似,也是IC设计公司的最大财富。要实现云计算在IC设计方面的应用,首先要解决的是云计算的数据安全(包括数据传输安全、数据隔离和数据残留)问题。根据目前云计算安全技术特点,采取相应的防范措施:在数据传输安全方面,用建立专线的方式避免数据频繁加密给用户带来的麻烦并能保证数据的完整性;针对数据隔离和数据残留,则可在超算中心专门划出部分专用区域供IC设计用户使用,避免与其他公共通用数据混杂,同时建议用户只将需要大运算量的任务在云中运算,进一步保护了用户数据安全。

综合以上因素,并结合IC基地和超算中心的特点,云计算在IC设计中的应用可分为IC产品设计和IC培训两种使用方式。图2是使用IC基地软件资源的设计公司利用云计算完成IC产品设计,即云计算在IC设计中的应用。

图2中左边部分的区域代表SZICC的IC设计客户端和lICense(许可)服务器,他们同时连接到VPN(VirtualPrivate Network,虚拟专用网络),通过专线与超算中心的VPN连接、并接入到广大服务器。当然,这一过程需要云用户管理软件配合来完成。

SZICC的用户使用本地资源将IC设计任务按计算量大小分解,计算量小的例如代码编辑、物理版图编辑等工作使用本地资源,同时也能满足这类工作需要人机交互频繁的特点。当仿真、物理验证等运算量大的工作需要使用大量计算资源时,用户利用云用户管理软件发出资源使用请求,云端根据用户请求自动分配计算资源,并从SZICC服务器上取得所需软件lICense(许可),开始后台处理,工作完成时,返回仿真或验证结果到SZICC本地机供用户使用。

另一个应用是IC设计培训。相对于IC产品设计而言,IC培训过程的数据安全问题就不值一提,当然也无需将实验过程分解,因此,培训的所有上机实验都可以利用云计算完成。

图3清晰地描述了培训实验利用云计算的情况。SZICC提供学员使用终端和软件(许可),软件及其使用环境和实验数据都放在超算中心的云端,学员利用云用户管理交互界面(图4“云计算用户界面”所示)在云端完成的实验过程。

如此,虽然某些EDA工具类培训的实验数据很大(布局布线的实验数据可达2G以上),运算资源消耗大,szICc培训室也无需配置高端工作站,只需一般的用户终端即可满足需求,这样也减少了实验室用户和软件维护的大量日常工作。

其实,上述方案对超算中心资源的使用还不能称为严格意义上的云计算,随着人们对云计算的认识以及初步试用,在网络、EDA软件、云计算服务提供商进一步完善的基础上,在不远的将来,IC设计应用必然会成为云计算的重要一环。

上一篇:飞思卡尔i.MX系列延续辉煌,推出新一代i.MX53处... 下一篇:基于GPS模块与单片机的语音播报系统设计