前面有的回答既不专业,还很笼统,所以我就来插一嘴了。iPhone的cpu之所以强大,原因主要如下:
起步时,苹果就有专业芯片设计团队。为搭建团队,苹果公司先后收购了P.A.Semi公司和Intrinsity公司,两家公司都是专业芯片设计公司,其创始人都是芯片设计界的大牛级人物,都有实际开发经验,Intrinsity公司曾帮助三星公司开发Hummingbird移动处理器。
通过收购,苹果不仅得到了人才,还获得芯片设计程序,使其可以魔改ARM公版架构,同时不受专利许可束缚手脚。
但这两条还不是iPhone的cpu吊打高通骁龙CPU的根本原因,毕竟上述两条,高通也具备。
最根本的原因是,商业模式的不同导致iPhone的cpu能吊打骁龙。
高通自己不做手机,只负责把骁龙芯片卖给手机厂商,而手机厂商分为一二三线等三六九等,必须考虑它们的价位承受能力,设计芯片时不能任性堆料。
苹果则相反,A12芯片为iPhone专用,iPhone又是高端手机,价格完全可以覆盖芯片设计堆料提升的成本。
A12芯片X光透视图中,缓存(Cache)占了相当大的面积,使其晶体管数量达到69亿,比高通骁龙845的55亿多出约25.5%。讲到这里,需要说一说堆料对CPU性能提升的重要性。我们以苹果A12和高通骁龙845为例说明。
两款芯片的CPU都来自ARM公司定制或授权,两家公司都有较强的魔改能力,因此两款芯片的性能差距其实就是苹果和高通的魔改程度(如何堆料)。
A12芯片的CPU相对于A11,最大的改进在于数据缓存和指令缓存(两者简称高速缓存)。A12芯片的CPU大核的L1缓存(指令缓存)为128KB,L2缓存为8MB;小核的L1缓存为32KB,L2缓存为2MB。
相比之下,高通骁龙845的L1缓存数量不明,但官方公布了L2缓存数据,分别为:大核L2缓存是1MB,为A12的12.5%,小核L2缓存为512KB,为A12小核的25%。
系统缓存方面,A12芯片CPU的为8MB,骁龙845则为3MB,差距1倍有余。
具体数据比较见下面两图。
高速缓存内置于SOC芯片内,是CPU和主存(通常说的内存)之间的桥梁,容量越大,提高CPU的运算速度效果越明显。
在缓存上堆料,是提高CPU性能的重要方法之一,有时比提升CPU时钟速度带来的效果更明显。但缓存非常昂贵,增大缓存的设计会抬升芯片成本,iPhone作为高端手机,可以轻松覆盖这一成本。骁龙845虽为安卓旗舰芯片,但大多数安卓旗舰手机(比如国产手机)的售价不到iPhone一半,如骁龙845像苹果A12芯片那样堆缓存,价格可能会高到手机厂商无法承受,因此,高通需要在性能和价格之间寻找平衡。
总之,iPhone的CPU如此强大,根本原因在于苹果和高通的商业模式不同,可以任性堆料。
参考资料:《计算机科学导论》,作者贝赫鲁兹.佛罗赞
原创回答,请勿搬运。
图片来自互联网,如有侵权,请即联系删除。