广告

为什么都是基于Arm的芯片,高通和苹果却存在差距?

2020-11-20 17:16:36 赵明灿 阅读:
随着历年智能手机的推出,基于高通CPU的手机在性能和价格方面始终和苹果有所差距,那有小伙伴就想问了,为什么同为基于Arm的芯片,高通的骁龙处理器却和苹果的A系列有所差距呢?今天EDN就围绕这个话题跟大家讨论讨论。

随着历年智能手机的推出,基于高通CPU的手机在性能和价格方面始终和苹果有所差距,那有小伙伴就想问了,为什么同为基于Arm的芯片,高通的骁龙处理器却和苹果的A系列有所差距呢?今天EDN就围绕这个话题跟大家讨论讨论。GU2ednc

历史背景

有报道指出,高通和苹果的差距从第一批64位处理器就开始了。GU2ednc

大家知道,Arm在2012年10月首次公布64位处理器内核Cortex-A57。但是,高通则是在2014年发布自己的第一批64位处理器骁龙810和骁龙808。而苹果2013年推出的iPhone 5s手机,其A7处理器就已用上64位Arm内核了。2014年时苹果又发布了第二代64位处理器A8,并将其用在iPhone 6上。从此,苹果和高通就产生了差距。GU2ednc

由于2013年苹果就推出了第一批64位手机CPU,高通紧随其后在2014年祭出自己的首款高端64位CPU骁龙810。但是由于当时技术不是太成熟,骁龙810刚投发市场就出现很多问题。比如,由于骁龙810发热严重,温度一高就锁核,性能大打折扣…GU2ednc

为了追赶苹果,高通再次发力,2015年高通把810的8核砍掉4个核换上自主架构Kryo,于是820诞生了!不过还是还是和苹果的A9有差距。这可怎么办呢?高通又在2016年推出820的"小改款",那就是高通821,但此时苹果又推出了A10。然后在2018年,高通835处理器隆重登场,其综合性能和苹果A10打成平手。可是苹果又推出了仿生处理器A11…GU2ednc

问题分析

有网友解释说,苹果和高通的CPU设计策略不同,就好比有两个人都想要盖房子。A买了一块空地,而Q买了一幢老房子。GU2ednc

A从头开始建造的房子看上去很普通。Q把老房子装修后得到的房子看上去高大上,但是内部结构仍然是那个老房子。GU2ednc

A制造的房子是按需设计,因此总体上得到了更好的设计、更好的通风、更多的阳光,还有独立的车库。Q受限于老房子的基本结构,而不得不在某些装修上做出让步。GU2ednc

这样来看问题就比较明朗了:GU2ednc

苹果是购买Arm指令集架构(ISA)的授权(空地)而设计SoC,指令集是设计芯片的最低要求。而高通则是购买Arm内核(房子)的授权,这上面已经包含了指令集并进行了一定修改。这样虽然更加有效,但是也让修改的空间变得有限——如果从一开始就自己来干,那就不会有这个问题。GU2ednc

苹果芯片的内核具有更多缓存,并且其内核本身是每年定制的。苹果采用的是2+4 big.LITTLE设计,而不是高通的1+3+4方法,这样能够实现更低功耗。A系列中的两个大核能够实现更高性能,而其余的四个小核由于是定制而不是通用解决方案,因此能够实现更高能效。与此相比,通用解决方案需要适配多个品牌的多款手机,其RAM、摄像头类型、屏幕分辨率和刷新率等等不一。GU2ednc

此外,苹果公司的一些芯片工程师来自世界各地,非常优秀,比如有些就曾在英特尔、IBM等公司工作过。苹果这些年在台积电等芯片代工厂方面也一直在大力投入,这也使得其先进工艺芯片的代工能够获得优先安排。GU2ednc

这里再对缓存这一影响处理器性能的重要因素具体展开下:GU2ednc

在Cortex-A75之前,Arm的Cortex处理器都没有支持L3缓存。但苹果自从A7以来,一直在使用L3缓存。Apple A7和A8拥有1 MB L2高速缓存和4 MB L3高速缓存。A9和A10具有3 MB L2缓存和4 MB L3缓存。Intel i5处理器的缓存也不过如此,A11更是把二级缓存提升到8MB。GU2ednc

虽然Cortex-A75支持L3缓存,最多4 MB L2和4 MB L3缓存,但是这些都是由高通的芯片制造商决定是否使用的。GU2ednc

也有网友522008认为:单从处理器角度而言,高通的高端处理器(8XX系列)和苹果A系列处理器综合比较,性能差不多。GU2ednc

下面是在网上找的骁龙835和A10的性能评测数据:GU2ednc

在单核性能方面苹果占优,主要是因为苹果A10单核面积要比骁龙大,集成的晶体管数量占优。GU2ednc

苹果A10是四核心,骁龙是8核心(最新的苹果A11是六核心)。在多核性能对比中,骁龙占优。实际上,我们应用程序大部分场景下都是单核运行,所以苹果的A10在用户实际体验中还是占优的。GU2ednc

GPU部分骁龙占优。GU2ednc

综合比较而言,骁龙还稍稍有点优势。GU2ednc

但为什么在实际体验中,苹果手机比安卓手机要明显流畅呢?这其实和操作系统架构有很大关系。GU2ednc

谷歌的Android系统,是以Linux为核心,在此基础上增加了Java虚拟机,所有的应用实际上是在这个虚拟机上运行的。这保证了应用程序的跨平台性。同时使用JAVA语言作为开发语言的程序员是全球数量最多的。谷歌也充分利用了这部分资源,使Android平台迅速聚集了最多开发者为其开发应用。GU2ednc

问题也就出在这个Java虚拟机。了解Java虚拟机的朋友们都知道,虚拟机的好处是,程序员在开发程序的过程中,程序员不必关心内存资源回收的问题,虚拟机的内存回收机制会帮你处理这些问题,这样极大的减轻了程序员的开发负担。但缺点也同时存在,那就是虚拟机再运行过程中,占用系统资源很大。GU2ednc

这也就是为什么安卓旗舰手机内存比苹果手机内存大,但运行效果远不如苹果手机的主要原因。GU2ednc

苹果iOS系统是在其私有的Unix基础上演变过来的,它不存在虚拟机机制,同时iOS是一个闭源系统,苹果对其硬件和iOS系统做了大量的优化和适配。保证了iOS应用高效的运行。而Android系统是一个开源系统,系统版本碎片化,导致硬件和软件都有很多兼容性问题,最终使得运行效率降低。GU2ednc

所以,典型的以三星为代表,就用堆硬件来解决Android的运行效率问题。GU2ednc

长此以往,使人们认为,安卓手机性能不如苹果手机,进而认为高通不如苹果A处理器。GU2ednc

苹果iOS系统响应优先级中,屏幕响应为最高级别。这也是人们认为苹果运行快的一个原因。GU2ednc

总结

综上,小编认为,高通骁龙CPU与苹果A系列存在差距的原因,可以归纳为以下几点:GU2ednc

1. 苹果有经济能力可以制造更贵的SoC,而可以从iPhone的最终售价中收回这笔钱。而Arm和高通却不能。GU2ednc

2. 苹果CPU具有很大的缓存。芯片要花钱,而对于某些芯片制造商来说,哪怕节省0.5mm2芯片面积,最终都决定了盈亏。因此,就芯片成本而言,苹果可以制造更大的芯片,其中就包含大容量缓存。GU2ednc

3. 高通必须提高芯片的性价比,其他公司才会有兴趣购买,因此,高通制造昂贵的芯片组行不通。GU2ednc

除非有以下情况发生,否则我们不太可能看到高通、三星或华为的SoC能够胜过苹果:GU2ednc

- 苹果生产出一款SoC败笔,这也意味着它将失去与其他OEM的竞争优势;GU2ednc

- 有领先的芯片制造商不惜成本,决定设计一款大面积、大缓存的CPU。GU2ednc

本文为电子技术设计原创文章,未经授权禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 感谢分享,分享的内容太有用了
  • 作者有一个关键理解错误,为芯片面积付钱的是高通不是芯片制造商,当然最终付钱的是手机制造商直到用户。总之芯片制造商巴不得你芯片面积越大越好而不是越小越好。
赵明灿
赵明灿是EDN China的产业分析师/技术编辑。他在电子行业拥有10多年的从业经验。在加入ASPENCORE之前,他曾在电源和智能电表等领域担任过4年的工程师。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了