上个月,在罗老师和OPPO高调召开发布会的时候,华为十分低调的在上海低调的召开了海思麒麟960的媒体沟通会。根据当时公布出来的参数来看,华为的海思麒麟960一改前作950的疲态,多处重要改进使得海思麒麟960正式步入了顶级SoC这一梯队。按照华为自己的宣传,海思麒麟960在一些项目上秒掉了高通最新的骁龙821,甚至极少数项目上超过了苹果最新的A10 Fusion。
不过由于当时华为仅仅只是介绍了海思麒麟960的性能和参数,但是并没有拿出商用产品供测试,加上之前海思麒麟系列SoC给人印象不佳,不少用户和业内人士都不是很看好海思麒麟960的实际体验结果。好在仅仅时隔一个月,华为就发布了首款使用海思麒麟960的Mate 9,此次小编就将带大家一起来看看华为低调发布的海思麒麟960能否能够被称为“顶级SoC”。
参数概况
架构详解
首先我们来看一下大家相对较熟悉的高通骁龙821的规格:骁龙821内置四颗Kryo四核架构,最高核心主频高达2.4GHz。而前作骁龙820的四颗Kryo四核架构,最高主频为2.2GHz。
相较骁龙820来说,骁龙821的CPU整体性能提升10%,其中骁龙821终端开机时间速度提升10%,应用启动速度提升10%,用户交互反馈响应更及时,用户实际体验体验更顺畅。
与高通骁龙采用的全定制版Kryo CPU不同,海思麒麟960选择了ARM最新推出的A73架构,该构架是ARM在今年年初才公布的全新构架,于A72构架差别较大,属于沉寂已久的A17系列的进化版。众所周知,ARM的A9-A12-A17这一系列产品,属于Mainstream Level,而A73的“让CPU持续提供高性能输出”这一设计理念,正是脱胎于此。
A73构架相对于A72来说一个重大变化就是发射宽度从3变成2,整理流水线变成和A17一样的11级,同时ARM还在以下地方做出了重大改进:
1.前段采用顺序结构,减少了指令拾取周期,并且大幅度优化编码效率。
2.去掉了多余的AMBA5借口和L1 Cache的ECC(数据错误检查与纠正,多用于商用及专业领域),更加专注于民用级领域。
3.L1 Cache的容量从48KB提升至64KB,Cache的吞吐量得到了提升的同时还降低了Cache的延迟。
4.后端全乱序执行,大幅度提高了分支预测性能。
按照ARM官方宣传的信息显示,10nm的A73 2.8GHz在持续高性能输出能力上比16nm的A72 2.5GHz高出30%。但是ARM很鸡贼的在宣传时耍了一个小聪明,在制程和频率都有区别的情况下大力宣传构架上的进步是多么多么大...
而按照华为的说法,麒麟960的频率提高了100MHz(Meta 9上实际并没有搭载高频版的麒麟960),单线程提升10%,多线程提升18%。如果ARM不像美国的某知名A开头厂商一样只会PPT做的好看(AMD别回头,说的就是你),那么麒麟960的CPU性能部分的宣传还是比较可信的。
全面升级的内部总线
在日常使用中,CPU自身的性能基本上可以决定一款手机整体性能等级,但是同一级别的CPU,硬件性能差异是如何产生的呢?以往媒体都习惯性的将关注点放在CPU构架差异、制程差异、GPU性能差异等因素,但是却忽略了一个至关重要的因素:内部总线。
总线的定义比较复杂,简单的说就是用于设备内各功能部件之间信息传输的通信干线,用途也很简单,就是用来联通设备内各功能部件。虽然总线很不起眼,功能也很单一,但是其重要性绝不低于设备内任何一个重要功能部件。
在麒麟960官方PPT中,有一个很不起眼的字体标注的了它所使用的内部总线:CCI-550。CCI-550是ARM在去年年底推出的全新总线构架,不过由于现如今高通和苹果采用全定制自主架构方案、三星和联发科产品迭代步伐与ARM有时间差等因素,导致麒麟960成为目前世界上第一个使用CCI-550总线架构的SoC产品。现在看来,正是ARM这套全新的CCI-550总线构架,成就了麒麟960非一般的性能体验。还是不相信总线那么重要?那我们就先来看看之前ARM产品的总线构架是啥样的。
这是与Cortex A57/A53同时推出的CCI-400总线架构,从示意图上可以看出,在一个设备当中,CPU并不是像一般人想象的那样直接管理一切设备,大小核之间都需要先经过GIC-400才能进行数据沟通,这也是导致初期某些CPU大小核无法同时工作的罪魁祸首;CPU与GPU之间也有ADB-400这个关卡,GPU到视频输出端口还有MMU-500挡路,CCI-400总线到内存之间竟然还有TZC-400和DMC-400,数据传输各种受阻,可以说,两年前的SoC内部,自己给自己设置个一堆阻碍。
举个栗子,CPU与内存之间隔着4层,CPU与GPU之间隔着4层,GPU与内存之间隔着5层,如果CPU想要访问内存和GPU中的数据,就得等整个系统构架内个部件均有空闲并且总线也相对空闲的情况下才能够突破各种限制成功获取数据。众所周知,CPU负载越高,其总线拥堵情况越严重,而正中间的CCI-400总线带宽仅仅只有可怜的12GB,并且常年保持满载状况,分之线路带宽也是小的可怜,即使硬件性能再强,也没法体现出来。╮(╯_╰)╭
到了与A72同时发布的CCI-500总线架构时代,可以看出ARM吸取了CCI-400上的教训,精简了CCI-500上的“拦路虎”,CPU和总线实现了直接连接,不过GPU部分并没有得到多大改善,而更加坑爹的是CCI-500使用的内存部分依然为DMC-400,只有通过添加第三方芯片才能做到识别DDR3和DDR4两种内存颗粒。结构优化的同时,内部总线带宽也得到了拓展,从12GB提升到了25GB,对于运行效率的提升效果甚至比核心升级来的更加明显。
但是,从实际结果来看,CCI-550总线架构应该依然存在很多问题,当年无论是高通、三星还是联发科均没有采用这种总线设计,而是不约而同的均选择了定制方案。而当年雄心勃勃的麒麟950,也放弃了CCI-500总线设计,最后应该是用回了CCI-400总线,这也就能解释为什么麒麟950使用DDR4内存颗粒却只有DDR3的成绩。
好在ARM又发布了全新的CCI-550总线构架,进一步的优化了内部个功能部件的连接方式。和CCI-500相比,CCI-550最直观的一点就是做到了GPU与总线直连,CPU访问GPU时终于仅需通过一根总线即可完成通讯了,DMC-500吃掉了TZC有效避免了性能损失,DDR4内存也终于可以在全工全速模式下被识别运行了。前前后后折腾了三代总线构架,ARM终于将SoC内影响性能的部分都去除了,通过一个CCI-550即可完成内部部件高效联通,释放出被总线禁锢已久的性能。
反观高通,虽然高通在一开始就选择全定制方案避开了CCI-400带来的困扰,现如今骁龙821所使用的定制版总线构架与CCI-550总线架构可以说是分庭抗礼之势,但是回想一下高通骁龙810和骁龙615,这种定制也是付出了相当大的代价的。
“超级”“玛丽”的崛起
今年5月,ARM发布了全新一代的Mali GPU:Mali-G71,在16nm FinFET的加持下,主频达到了850MHz,三角形填充率850Mtri/s,像素填充率27.2Gpix/s。与Mali-T880相比,G71的能效比提升20%、性能提升40%。
鉴于此次GPU提升比较明显,加上不知道是不是某A开头公司给予ARM的迷之自信(AMD别看了,说的还是你),ARM直接将G71的对手换成了中端级笔记本独立显卡,连压制自己多年的Adreno都不放在眼里了。
高通也不是吃素的,就在Mali-G71推出数月之后,高通推出了骁龙821,将其内建的Adreno 530 GPU的频率提升了5%,达到了653MHz,性能上也得到了一定程度的提升。稳住了自己商用移动版SoC内建GPU性能第一的宝座。
不过这个宝座并没有保住太久,近日正式商用的麒麟960所首发的Mail-G71 MP8,性能提升幅度达到了180%,能效比提升40%,在曼哈顿1080P离屏测试中轻松超越Adreno 530,仅次于苹果A10 Fusion。
为何此前一直被压制的Mali系列GPU突然崛起了呢?小编总结出了以下几个原因:
1.骁龙821所搭载的Adreno 530实际上就是骁龙820所搭载的Adreno 530的超频版,本质上并没有任何区别,自然性能上也不会出现太大差距。从发布时间上来看,骁龙820比麒麟960早了11个月,首次商用时间也早了9个月,Mail-G71打了这样一个时间差,从而在现在骁龙新一代产品未问世之前成功崛起,反超Adreno 530。
2.ARM将全新的第三代GPU架构命名为Bifrost(彩虹桥),面向高端市场的Mali-G71是该架构下的首款产品,随后的是面向中端市场的Mali-G51,两者相较于前一代均有明显进步。
指令组着色器(ClausedShader)将指令集分组到预先设置好的程序块,使指令组可以自动执行且不会中断,缓解了对寄存器文件的压力,显著降低功耗;通过简化执行单元的控制逻辑,GPU的面积也得以缩小。
Bifrost架构采用基于Quad的矢量化技术,最高支持四线程同步执行,共享控制逻辑,降低执行单元的填充难度,实现接近100%的使用率,深度匹配开发人员编写着色器代码的最新方法。
同时,Mail-G71还提供了1-32核的可拓展能力,GPU组合方式灵活多变。首次商用的Mali-G71就是采用了MP8的组合方式,其性能已经相当可观,难以想象MP32模式下的Mali-G71能够给我们带来怎样的性能表现。
3.Mali-G71特别加入了对于Vulkan的支持。Vulkan是Khronos推出的针对下一个20年的3D图形应用程序接口,作为OpenGL与OpenGL ES的继任者,设计时针对移动应用进行了大量优化。
通过游戏实时帧率可以看到,Vulkan提高了硬件的使用效率,使得CPU负载大幅降低,并增强处理器多线程计算能力,让GPU利用率保持在较高水平之上。
整合CDMA的全新基带
如果说,上面这些升级,只是让麒麟960在性能上得到了大幅度提升,那么整合了CDMA的Balong 750基带,代表的则是中国自主SoC成功打破高通对于内置CDMA基带的垄断,也代表着海思麒麟正式摆脱了需要外挂VIA 55nm CDMA基带的时代。
众所周知,一直以来CDMA制式的基带专利基本都是由高通所掌握(VIA同样也有CDMA专利,不过目前已经出售给了intel),以前高通还单独对外销售基带,近年来高通将基带整合进了SoC中,导致凡是涉及CDMA制式基带的产品,要么选择外挂CDMA基带,要么选择直接使用高通的SoC,(苹果是个例外)前几代海思麒麟系列SoC,就是选择了外挂的VIA 55nm CDMA基带,从而实现了对于“全球网络”的支持。不过外挂的基带终究还是不如全整合基带,VIA的外挂基带不论是制作工艺(制程)、使用功耗还是使用稳定性,均远远落后于高通所用的整合式基带。
此次正式商用的海思麒麟960,集成了全新自主研制的基带,支持四载波聚合(4CC CA)或双载波聚合+4流(2CC CA+4*4MIMO),支持Cat.12/Cat.13,理论下载峰值600Mbps,内嵌式基带有效保障网络信号,特别是CDMA制式的信号相比之前VIA外挂基带得到了飞跃性的提升。
不过比较可惜的是,华为并没有对于CDMA授权的来源做出具体说明,不过按照直播现场发布会负责人的口述,整个的CDMA基带属于自主研发且绕过高通专利,不过按照国外参加沟通会的记者所提供的记录(We spoke with HiSilicon to comfirm that this is a brand new custom CDMA solution,rather than a licensed platform.),因此小编更倾向于华为是用手中的4G专利和其他家CDMA码分多址底层专利(初步猜测是高通)进行了交叉授权,绕过了目前现存的框架和实现方式的专利,自主研发了一套自己的体系。
总结
我们很高兴能够看见,海思麒麟SoC一步步走向成熟,现如今的麒麟960,无论是从制造工艺、设计构架,还是性能功耗比控制、自主基带研发整合等方面,均可以称得上是一款旗舰级产品,并且是一款相对较成熟的旗舰级产品。虽然从某种意义上,麒麟960是借助时间差才做到部分测试项目超越骁龙821(麒麟960从构架和设计上看其对手理论上应该为下一代的骁龙835),但是即使抛开这个因素,麒麟960依然不失为一款旗舰级产品,而且是一款有国人自主研发基带专利的旗舰级SoC。