揭秘华为麒麟芯片是如何选择核和工艺的?

前几日,有位KOL大佬解读了华为芯片的发展历程,他认为华为芯片之所以能够从28nm跳过20nm,成功商用目前最先进的16nmFinFET+芯片设计工艺,是因为华为运气好、赌对了。
华为麒麟芯片
华为麒麟芯片
  长久以来,中国芯片设计公司仿佛都只能是芯片行业的追随者,但2015年11月发布的华为麒麟950却实现了多项业界第一,做到了技术上的超越。例如ARMA72的首商用,ARMMaliT880的首商用,业内首个商用16nmFinFET+顶尖生产工艺的SoC芯片等。如今,搭载麒麟950的华为Mate8手机发布并大卖,业界和消费者更是对麒麟950充分肯定。但麒麟芯片是如何做到超越的呢?前几日,有位KOL大佬解读了华为芯片的发展历程,他认为华为芯片之所以能够从28nm跳过20nm,成功商用目前最先进的16nmFinFET+芯片设计工艺,是因为华为运气好、赌对了。但笔者经过大量的调研和访谈,却有不一样的看法。今天笔者就试图解密华为麒麟芯片是如何进行核和工艺的选择的。

  暗硅陷阱何其“暗”?

  用户在选择手机时,往往会去比较一些显性规格如CPU、GPU的主频、核心数等,然而CPU规格并不是越高越好,盲目低追求高规格、高性能就会误入摩尔定律的误区。根据摩尔定律,芯片每18个月到24个月,芯片性能会提升一倍,那就意味着同样的面积下,晶体管数目会增加一倍。性能越高,晶体管数目就越多,现在的智能手机芯片上集成的晶体管数目已经达到20亿到30亿个。过去,芯片行业要考虑的是怎么把这些更多的晶体管放到芯片里面去;而现在的矛盾焦点,不只是在芯片内部放进更多的晶体管,还要考虑芯片外部的工作环境、是否有足够的电力、足够的散热条件。

  一个极限的情况是芯片里所有的电路同时工作,那么芯片里所有的晶体管就可能同时翻转,而晶体管翻转是需要消耗电能的,同时所有的电都变成热量散发出来。如果外部条件不足以供应这么多电能,或散掉这么多热量的话,就会导致芯片因为供电不足或者过热不能工作。这种情况下,只能被动地限制部分电路和晶体管的运行,这部分被限制的、永远无法发挥性能的电路就是暗硅。

揭秘:华为麒麟芯片是如何选择核和工艺的?
  高通骁龙810就“掉进”了暗硅的陷阱,采用20nm的骁龙810因发热问题而不得己采取限频策略,基本达不到其宣称的最高频率4A57@2.0G,无法获得持续性能。引用网络上某知名极客炮神测试的数据:“骁龙810标称的2.0GHz主频的A57只有在跑分白名单才能达到。2GHz的A57,在1分多钟的满载后,不降频,会达到105度以上,然后手机过热重启;如果是2个A57满载,5s核心就会超过105度,然后过热重启。在非跑分应用中,单线程(注意只是单线程)负载A57也只能跑到1.5-1.6GHz,并最终因为过热降频到1-1.2GHz。”在手机芯片有限的空间,过于追求性能,就会导致功耗和发热问题,并且功耗会随着温度增加而增加。功耗和热,互相影响,最终会产生恶性循环。

  暗硅陷阱如何解?先进工艺是关键

  然而,暗硅陷阱并非无解,想要使用最先进的CPU、获得更高的性能,关键是需要配合先进的工艺制程。我们再来看一看华为麒麟芯片的选择。从当时可选择的工艺看,2015年能够稳定成熟商用的还是28HPM,而20HPM、14/16FinFET等新工艺也有厂商选择,但还不够成熟。华为芯片上半年推出的是28HPM工艺搭配8核A53的芯片麒麟930。以28纳米为基础,20纳米用传统的晶体管架构走下去,集成度还OK,是28纳米的1.9倍,但是功耗只能降到75%,不够理想。这意味着同样的die面积,放进去将接近两倍数目的晶体管,功耗会上升42.5%。如果选20纳米,当时还是可以宣称业界领先的工艺,但可能无法提升用户体验,因为按照原来架构方式选择新工艺、增加更多的功能,却没有办法很短时间让手机散热能力提升40%,在热敏感、热保护情况下,芯片性能被限制住,性能有可能比上一代还要差。站在消费者角度,用户需要的是一个能带来好的体验的芯片和手机,并不在乎你选择的是什么样的工艺,这不仅仅是一个技术问题,更要从用户体验的角度去做选择。
华为麒麟芯片是如何选择核和工艺的?
  由此看来,16nmFinFET+工艺是最佳选择。
 
  CPU核心如何选择?重点看能效比,并踩准时间节奏

  前面说完了工艺的选择,下面再来看一看2015年上半年,可以选择的的CPU核心。ARM在同一时期推出了A57和A53两个64位新架构的处理器核心,A57主打高性能,A53主打高能效。然而A57虽然有着强大的性能,却并不是专门针对移动终端设备设计的处理器核心,只有高通和三星两家公司选择将A57用在手机上。高通骁龙810采用A57核心,搭配20nm工艺,大大超出3.5W的热设计功耗上限,出现了严重的发热问题,导致A57的高性能完全发挥不出来。同样采用A57核心的三星Exynos7420却没有这样的问题,7420使用自家14nmFinFET工艺,在性能和功耗上比20nm工艺都有提升,弥补了A57架构能效上的差距。相同的故事,结局却不同,原因就是高通急于推出产品,做出了错误的选择,让不该发生的错误发生,A57@20nm用在手机上就是一个悲剧。而三星选择了正确的工艺来搭配先进的CPU。2015年上半年,在14/16nm先进工艺尚未成熟商用的情况下,除了高通和三星两家使用A57核心,其他的手机方案基本全部选择了能效比更好的A53架构。

  性能与功耗完美平衡,带来更好体验,实现弯道超越

  由此,我们可以看出,不论是在先进工艺上,还是CPU核的选择的上,笔者认为华为的麒麟芯片都很好地遵循了从用户体验的角度做选择和做设计的思路,选择最佳能效比的工艺搭配最先进的CPU核心。16nmFinFET技术能够大大提升手机芯片的能效比,目前全球仅有2家公司率先实现16nm新技术的在手机上的商用:一家是苹果,使用自家的苹果A9在iPhone6S上商用;另一家就是华为,使用自家的麒麟950芯片,在Mate8上实现商用。其他使用16nm技术的芯片如高通和MTK等同类芯片的手机大约要半年左右才能上市了。但和苹果A9相比,实际上,麒麟950面临的挑战还更大一些,麒麟950SoC中除了集成了主要的CPU、GPU、Camera、ISP、audio、video、memory等子系统外,跟苹果最大的区别是,麒麟950还集成了Modem通信处理器模块,这意味着设计难度的增加、晶体管数目的增加、功耗控制难度的增加。麒麟950里放入了30亿的晶体管,30亿的晶体管放在一起,之间会互相干扰,设计规格更加复杂,设计规则多达4万条。华为芯片是第一家把16nmFinFET技术真正做到成熟商用的中国公司,在基础工艺上第一次跟业界同步——同步量产、同步提升良率,没有经验可以借鉴,这是很大的考验和挑战。

  随着手机芯片性能大战的升级,我们可以看到,不同的芯片厂商设计思路不一样,有些厂商一味追求最强性能,却忽视了这些最强性能对用户是否有意义、需要牺牲多少功耗代价来实现、是否会影响用户的实际体验。而华为麒麟芯片,从第一代开始就一直遵循性能与功耗最佳平衡的设计思路,值得称颂。用户不该为过剩的性能和发烧的手机买单,我们更希望看到,手机芯片厂商能够减少没有实际价值的比拼,把规格和性能比拼引导到用户实际体验上来。

  华为手机芯片的快速发展和超越确实让人吃惊,从2006年开始研发手机芯片,2009年推出第一代智能机应用处理器K3,初探市场;2012年推出第二代应用处理器K3V2,在高端手机市场获得了初步成功;2013年将通信处理器集成到应用处理器中,推出手机SoC芯片麒麟。经过几年的快速迭代,华为在2015年11月发布麒麟950,终于站到了顶级手机芯片的行列,完成了不可能完成的任务。

  从华为第一代SoC芯片麒麟910,到之后的麒麟920、麒麟930,再到现在这颗性能和体验登顶的麒麟950芯片,笔者看到了麒麟系列芯片背后的设计哲学,就是“平衡”二字。而平衡的关键,就是在正确的时机,做出正确的选择。 
读者们,如果你或你的朋友想被手机报报道,请狠戳这里寻求报道
相关文章
热门话题
推荐作者
热门文章
热门评论