两岸的IC设计公司在先进制程节点晶片设计和其复杂度的进展令全球半导体界瞩目。于此同时,对EDA工具的需求也持续上升。
Cadence在今年上半年推出了Innovus设计实现系统,称其为新一代的实体设计实现解决方案,使系统开发人员能够在先进的16/14/10奈米FinFET制程以及其他成熟的制程节点上交付功耗、性能和面积(PPA)指标的设计。
2015年10月中旬,我拜访了Cadence位于美国矽谷的总部,与Cadence公司设计实作产品事业部的产品管理总监Vinay Patwardhan就如何进一步加速IC上市并同时提高PPA指标进行了面对面的交流。
Patwardhan于2013年加入Cadence,他积极参与了为市场带来新的Signoff及数位实现工具的工作。在加入Cadence之前,他曾
在Synopsys、Magma、Sun Microsystems以及Texas
Instruments任职,担任支援并设计高性能微处理器和ASIC的不同管理角色。
作者与Vinay Patwardhan在Cadence美国总部
为什么Cadence要投资新的数位实现工具?
在过去的4~5年里,我们见证了产业中数位IC技术的巨大变化。关于周转时间(turnaround time)、功耗、性能和面积化都具有更严峻的挑战,而这些挑战使设计EDA工具变得越来越复杂。
我们收到一些客户的回馈,他们很努力的在寻找解决方案以说明其设计新的晶片系统。Cadence已经具有一些基础架构的工具,我们如何才能真正的创新并且把其发展到下一个解决客户实际需求的工具?这对我们确实是个挑战。
我们看到对资料中心、物联网、汽车、通讯设备、尤其是行动运算领域的晶片需求在不断增长。为了适应上述市场的变化,我们把开发工具在应用环境和技术上作了
改进,来解决诸如周转时间、面积和功耗方面的挑战。同样的,晶片在制造环节的每个技术节点变得越来越小也是一个挑战,必须关注每一个不同制程节点的设计。
这就是Cadence为什么要开发新的数位实现软体工具的原因。因为在这个过程中我们看到了市场在不断扩大,并且我们的解决方案可以真正的服务我们的客
户。Cadence传统上有一系列很好的模拟设计工具,投资于数位实现技术使得我们得以强化这些模拟工具,并且提供一套完整的解决方案来因应那些挑战。
设计挑战引发对新工具的需求
采用FinFET设计的晶片规模会很大,Cadence将如何应付更大、更复杂的晶片设计?
几年前,工程师在设计IC时会用2,000至3,000万闸(gate)。现在如果使用FinFET,尺寸会变得更小,速度变得更快,能够放在一个晶片上的配置显着增加。现在,SoC设计已进入到1亿至1.2亿闸的时代。当采用FinFET制程时,设计规模将变得更大。
以前,一个分区模组(partition)的容量通常为0.7百万到1百万的闸。但是现在,在晶片整体具有1.2亿闸的情况下,你需要上百个分区模组,而且管理也变得非常复杂。所以我们需要更大的容量,以及能够承载更大容量的先进技术。
我们要做的就是设计一个能够大规模平行运算的架构使它能够处理尽可能多的分区模组或闸,并且将它们聚集到至少一个分区模组里以同步运作。晶片变得越来越智慧并且需求量越来越大,我们有技能、技术和多种方式来处理容量很大的分区模组。
我们必须在核心演算法上做改变,因为这些FinFET晶片的特性跟以前大不相同,比如闸的结构、密度等。为了运算功率或FinFET晶片的面积,以前的一些核心演算法也增加它的功能来支持平行运算。
平行运算需要多执行绪、多核心和分布处理能力。其中,分散式处理(distributed parallel
solution)可以采用不同的计算设备,可具备数百个CPU,我们就可以同时处理大量的分区模组。实际上,我们看到一些客户正在推动5百万以上
instance的分区模组。事实上,Cadence已可以支援具有16个CPU、分区密度达1千万
instance的模组。这就是我们所介绍的核心技术以及其的主要不同点。
Innovus系统概念图
FinFET制程也许可以推动PPA。那么,Cadence的工具又如何提升PPA?在动态功耗方面又如何化?
通常来说,当制程由平面转移到FinFET时,你必须化PPA中的功耗性能和面积。而FinFET元件本身就有面积优势以及更快更好的转换速率。
初推出FinFET的动机有两个:一是节省晶片30%的功耗,二是减小面积,进而提高性能。所以FinFET晶片的功耗化跟以往的平面制程晶片有显
着的差别。以前我们必须要化两个部分:动态功耗和漏电功耗,尤其是漏电功耗,因为沟道变得越来越小。但现在FinFET本身就解决了漏电功耗的问题,
动态功耗就变成一个非常重要的问题。
易用性高的设备有多种多样的模式。比如手机有待机模式,那时漏电功耗就成为主要的问题,而当动态功耗变得越来越重要时,它就成为主要的模式。所以,现在不能再仅仅只是化动态功耗或者漏电功耗,你必须要化整个功耗。
当化整个功耗时你需要一些智慧工具来识别晶片的状态,然后才能做出化动态功耗或者漏电功耗的正确决定。
动态功耗对于FinFET变得十分重要。我们在Innovus数位工具中特别提供一个平滑的节点控制(node control)来化漏电,同时化动态功耗,并贯穿整个过程。这就是Innovus采用的功耗化技术。
上面提到了功耗部分。就性能和面积而言,Cadence也有一些特别的产品。功耗化是一方面,另一方面Innovus和Genus合成解决方案可分享
一个共同的布局引擎(GigaPlace
engine)。同时,slack可用来驱动布局引擎以改善PPA。另外,slack驱动布线演算法(slack driven
routing)能尽早处理讯号完整性并改善布线前后的关联性。这些布线引擎是全新重写的,并且可以同时应用于Innovus和Genus。
Genus是一个RTL合成和实体合成工具。结合Genus的工作,Innovus已经有一个非常好的起点,设计人员可以在Innovus中更好地进行布线工作。这时,由于前期已做了很多的决策,就对后端的布线、化等工作带来巨大的益处。
Innovus所采用技术的总结
除了功耗化和布线技术以外,第三个提升PPA的关键新技术是时脉同步化(CCOpt)。它所做的工作是同步化时脉和资料通路,这是一个十分关
键的时序技术。对于FinFET和更先进的制程节点来说,相关性变得非常重要。这项技术将会?明你提升晶片上不同Process
Corner的时序性能,改善PPA中的功耗和面积性能。
作为一个总结,Innovus以及Genus等工具的特性包括它们可以共用引擎与紧密相关。
同时,对比市场上其他工具,透过结合使用前面提及的三个主要新技术,Innovus可以提供10%至20%的PPA性能提升。
Cadence将如何更好地帮助两岸的半导体公司?
在过去的3~4年里,据我所知,在行动设备和IoT设备领域里,两岸的半导体公司取得了显着的进步,这些应用对控制功耗、面积的经验都有非常高的要求,比如手机核心、处理器等,也需要能够解决提升晶片PPA的工具。
Cadence与众多晶圆代工厂紧密合作。晶圆代工厂对工具的认可具有严格的要求,我们与晶圆厂有标准的确认程式。理想情况下,IC设计公司在需要使用一款工具之前,Cadence已经和晶圆厂完成了工具的认证工作和参考设计流程。
我们和晶圆厂合作夥伴拥有共同的客户。我们确定半导体公司,尤其是两岸的半导体公司,透过这些工具能获取一些更有价值的资讯和经验,并且在短期内可以生产
出具有竞争力的产品。我想我们与两岸的IC设计公司一样正在面对一些相似的问题:合并在不断发生,有能力的公司变得更加强大,一些初创公司就面临着要在短
期内迅速发开出有竞争力的产品的挑战。Cadence的工具,无论从类比、数位以及先进的技术,都适用于新公司或已成熟的公司。