聚焦SoC设计关键点
拟人智芯科技李润华:
从五个途径实现低功耗设计
我先举两个关于芯片设计中功耗的例子。我们的一家IC设计客户,采用0.18微米工艺设计出图形显示卡高端芯片,但当这一芯片插入PC工作三四秒后,PC图形就不稳定了,原来是因为芯片的工作温度太高,影响了它的性能。为了散热,他们在芯片上不得不加上风扇,但这样就大幅增加了芯片的成本:原来芯片的成本是15美元,而要加的风扇成本约为5美元。我们另一家IC设计客户采用0.13微米工艺设计开发了通信DSL局端芯片。当他们把芯片放在设备架子上时,发现电源的供应已经不够,原来芯片的漏电太多,而且产生了大量的热量。 从上述例子可以看出,所有电子设备,都需要低功耗设计。
那么功耗都消耗到哪里去了?一般功耗包括动态功耗和静态功耗。动态功耗是器件在工作时消耗的功率。今天,当器件的主频越来越高,动态功耗也相应提高了。静态功耗是漏电引起的。而当制造工艺进入深亚微米时,由于氧化层越来越薄,漏电也会越来越多,这些漏电流变成了热量,对工作没有任何帮助,如果处理不好,还会影响芯片的性能。
怎样注册新公司
为了实现低功耗设计,从设计角度出发,我们有五大解决方法,分别是:早期分析、降低漏电、多电压值设置、降低动态功耗及整个芯片的Sign-off验证
进行低功耗SoC设计,要在芯片设计之初,就评估各部分的耗电量,到其中功耗最大的部分,对这部分要采取相应的措施。例如,芯片中有处理器IP,这个IP一直在工作,频率很高,这可能就是芯片的“热点”,我们需要在这个IP周边多做处理,使它更好地散热和工作。
在解决漏电流方面,代工厂会提供两种库,一种是高阈值库,另一种是低阈值库。对于时序比较高,翻转比较快的IP部分,它们需要被很容易地打开,就采用低阈值库,而对于其他时序要求比较低,翻转不太快的部分采用高阈值库。以我的设计经验来看,85%~90%的设计不需要低阈值库,这样就可以降低漏电。
在降低动态功耗方面,因为只要闸在不断翻转,就在耗电。我们可以看到,一个设计中,时钟树上的闸是在不断翻转的,会造成耗电,我们就在时钟树前加一个逻辑,如果不需要时钟翻转,就让它不工作,这是在不影响整个设计工作时,最简单的降低动态功耗的办法。
多电压设置是现在比较常见的一种方法。我们可以看到,手机就有工作模式和待机模式等。如果某个处理工作的元器件目前没有工作,我们就可以设置它进入睡眠状态,给它断电,这样就可以节省漏电功耗。
最后,在整个设计完成后,我们要对整个芯片设计进行验证,看看芯片中还有没有“热点”,进行一些后续的处理。
从这五个方面入手,我们可以大大降低芯片的动态和静态功耗。
2021年儿童节大唐微电子技术有限公司通信集成电路设计部经理彭虹:
验证工作是SoC成功关键
大唐微电子推出的COMIP SoC芯片,在两年多的时间中,采用0.18微米工艺多次流片,每一次都一次性成功,我们认为完善的验证方法在这中间起到了非常重要的作用。我们推出的第二代芯片是600万门,主频100MHz,时钟域50个,从设计到投片的时间为8个月,而其中验证时间达到了6个月,这一产品达到了稳定而且不错的良率。目前每个月向用户发货几十万片。从该芯片上我们得到了很多验证的经验,我想谈谈要做一个成功的SoC,验证
工作要注意哪些问题。
SoC目前面临着来自验证方面的挑战。传统的验证是根据需求写出SPEC(参数指标),基于SPEC做前端和后端设计,然后进行动态验证。动态验证是采用一个仿真器,通过运行上百万甚至上千万的验证向量,去保证设计的成功。那么做完动态验证,就能保证SoC成功吗?其实不然。首先,我们不能够验证一个SoC的全部设计,因为SoC设计太复杂了,有几百万甚至上千万门,即使Intel拥有全球半数的IC验证工程师,也不能保证对芯片设计进行完整验证,它的CPU仍然会存在这样或那样的问题。这就是我们遇到的第一个挑战:验证真的能够保证设计完全实现了SPEC吗?其次是SPEC就真的反映了市场的需求吗?这个产品真的能被市场接受吗?答案是也不能。因为SPEC是一个文字描述文档,传统验证方法并没有对SPEC的确认过程。
因此,传统的动态验证无法保证SoC的正确设计,并最终被市场接受。
SEMATECH的调查显示,虽然设计的复杂程度在不断增长,但验证工作量的增长速度超过了设计复杂度的增长。从1981年到2009年,一颗芯片上平均晶体管数量的年复合增长率为21%,而验证工作量的年复合增长率达到58%。因此,要解决这个问题,我们要借助于新
的验证方法学。该方法学如下:
首先,在确定SPEC之前要做系统级分析,保证SPEC的正确性。其次,要采用多种验证手段,不仅仅采用仿真器做动态验证,还要做静态验证,并采用一些可重用技术,以保证验证能按时收敛。
表示时间短的词在做系统级验证方面,我们要把用不规范语言描述的SPEC抽象为规范化语言,例如用系统C语言。这一验证实现两个目标:一是看功能是否真正反映了需求;二是看我们的设计是否可以真正实现SPEC的要求。
在做动态验证方面的要点包括三方面,一是采用随机向量进行验证,这些向量的覆盖率必须达到我们的要求;二是基于VIP的自检;三是分层次的验证。在静态验证方面包括两方面的内容:一是验证RTL和网表是否一致;二是Property验证,这种方法工业上的工具还不多,用得很少,主要是对关键模块进行验证。一个设计模块是否正确与环境激励有关,我们会采用VIP验证。要有可靠的可重用方法保证设计的正确性。
总之,虽然一个SoC验证需要投入大量的人力、物力以及时间成本,但它可以确保SoC流
片的一次成功率,并使产品能够真正地符合市场的需求。在做验证时,我们有四点经验:一是验证是个系统性工作,我们不仅要验证设计能否实现SPEC,还要验证SPEC是否能真正反映市场需求;二是验证的投入是非常高的,需要配备专门的资源;三是虽然有许多专门的验证工具,但工具只提供了一种方法,需要有专门的、有经验的人去做验证;四是验证不仅仅是IC设计工程师的事,需要有相当数量的软件工程师参与进来。台湾艺人makiyo
北京中电华大电子设计有限责任公司设计部项目主管周建锁:
基于IP的混合信号SoC设计与产品化挑战
最早的SoC包括CPU、存储及逻辑等部分,而现在的SoC除了上述三部分外,还包括DSP、模拟/混合信号功能块及RF功能块等。一个实现了复杂功能的芯片必将要求芯片与外部真实世界进行接口,那么就不可避免地需要模拟/混合信号IP,如数据转换器、滤波器和PLL等。混合信号SoC的应用也将越来越成为趋势,也将越来越具有挑战性。
混合信号SoC用IP有几大方面:数字IP(包括CPU、DSP、安全算法IP及接口协议IP)、模拟或混合信号IP(包括ADC、DAC、PLL、RF 收发器、USB收发器、Bandgap、电源管理、
ESD保护IP、Filter及Sensor)、存储器IP(包括EEPROM、ROM、RAM及eFLASH)以及专用I/O。由于混合信号SoC复杂性高,目前,世界上很少有公司能够单独开发一个SoC芯片,因此,混合信号IP的发展趋势是基于IP平台的SoC设计。
目前,混合信号SoC设计遇到了三方面的挑战:首先是系统级设计。这主要涉及到IP核间的互连性。其次是IP核设计。这主要是IP核的可重用性问题。目前,模拟IP一般是硬IP,它的优点是开发周期短,器件尺寸得到了优化,版图不用人为设计,文档实现了自动化,但可重用性成了问题,如果要转换工艺需要重新购买IP。三是制造技术。由于模块上集成了模拟、数字和RF等不同功能模块,通常这些制造工艺是不完全相同的。此外,国内公司还面临时序收敛、设计验证、IP集成、IP获取、低功耗设计、算法优化及软硬件协同设计等挑战。不仅如此,混合信号SoC还面临产品化挑战。
那么我们如何去应对这些挑战?我个人认为应该从如下几方面着手:
首先是人才培养和招聘。混合信号SoC需要系统设计和IP设计人才,我们可以通过从海外招聘、专业培训和实际锻炼等几方面来培养人才。其次是建立IP联盟。IP联盟的工作应该包括建立IP核库、提供IP核测试评估工具、进行IP交易、提供帮助和法律咨询等。目前北
京集成电路设计园的IP服务中心正着手建立用SoC设计的IP平台,上海设计园也在规划中。第三是建立IP标准化体系,例如设计重用标准、IP核转让标准、IP核交易和规范标准及IP核质量标准。第四是商业模式的选取。目前,代工、Fabless、IP供应商、IP销售商构成了SoC的四类公司,他们分工不同,互惠互利。而只有合理利用资源,才能最终实现共赢。退休工资如何计算