欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

ARM的商业运作模式及其伙伴们的身影

最编程 2024-02-29 17:03:53
...

ARM的商业模式

简单来说,ARM的商业模式是卖IP。ARM专注于芯片的设计,并将一系列设计的产物卖给合作伙伴,本身并不做芯片的生产。
聊ARM的商业模式,得先看看能做ARM处理器的几家大厂。

ARM处理器厂商代表

  1. Apple
    前系列已经讲了Apple与ARM的渊源历史。在当今,Apple是ARM阵营里最靓的那个仔。为啥?Apple有ARM的架构授权(ARM architectural license)。通俗地说,Apple有ARM核心技术资料,可以进行魔改。结果就是,Apple的A系列处理器从iphone6s那年起成为地表最强ARM处理器,Android阵营的所有核心都再也难望其项背。
    如今,每一代Apple新处理器发布,大家关心的是与上代Apple相比领先了多少;而至于Android阵营的处理器?嗯,先跟上上一代Apple处理器比吧。几年前,是反过来的。嗯,现实就是如此魔幻。
  2. 高通
    高通的历史从维特比算法打下公司的根基那会说起来,又够说上好几章了。好在大家对这家公司很熟悉,前几年Android阵营里基本清一色的高端机都是高通的骁龙系列(Snapdragon
    )。高通能在Android阵营呼风唤雨,这“一哥”的称号很大程度上也是由于高通同样也有ARM的架构授权与架构定制授权(ARM Built on Cortex license,简称BoC授权),高通基于ARM的公版设计做了不少定制(比如扩充指令集,增加自己的GPU等)。
  3. 海思
    咱们华为海思家的芯片,绝对是近年来芯片界的黑马,而且后劲相当足。海思很早就有了ARM处理器的core级别授权(ARM core license),所以前几代产品海思都是集中于core级别的定制(通俗说,就是在外围蹭一蹭)。不过近几年,海思也拿到了与Apple、高通级别一样的架构授权,具备了魔改的基本条件。从目前麒麟980释放的资料来看,似乎还未看到架构授权带来的明显优势,不过厚积薄发的海思相信一定不会让国人失望。麒麟990有望给大家惊喜。
  4. 三星
    三星一直是芯片界的大玩家,传奇的猎户座在当年的Galaxy II上就震撼了想当一部分国内的玩机Boy。与海思一样,三星也是core和架构授权在握,而且三星还同时持有POP IP的授权,可以在轻度定制与魔改之间根据自己的情况来选择。只不过由于基带方面的弱势,猎户座处理器近几年逐渐式微,已经听不到太多的声音了。毕竟手机再强,你得先满足大家*打电话的需求啊。
    剩下的还有MTK、Realtek、台积电等大厂,就不一一介绍了。

ARM授权模式

从上面几家大厂,我们看到ARM与伙伴的几种合作模式:

  1. PoP IP
  2. IP Core
  3. BoC
  4. Architectural

从1到4授权费依次递增,可定制的深度依次递增,开发难度依次递增。想开箱即用,选POP IP。想要公版架构无法给与的极致性能与体验,上架构授权是不二选择。
而以上几种模式又与厂商芯片的设计与实现过程息息相关。

  1. 指令集ISA。芯片设计厂商在设计一款芯片的开始阶段,要确定这款芯片的指令集。一般来说,要么自己设计(Intel),要么基于现有的做定制(Apple、高通、华为等)。
  2. 指令集确认之后,写RTL,通过综合工具生成网表。网表在FPGA上做验证生成流片用的版图。而RTL、网表、版图一般在芯片设计领域分别称为软核、固核、硬核。

PoP IP一般来说,拿到的就是硬核。
IP Core目前来说是使用最广泛的一种授权方式。厂商拿到ARM的处理器部分的Core授权之后(Verilog-HDL形式的CPU设计源码,也就是上面的软核部分),结合厂商自身的外设和存储,在EDA工具的配合下进入固核的设计阶段。IP Core授权的内容不止包含处理器,还包含ARM公版的外设、内存控制器等,厂商有选择的余地。用一张图来清晰表达厂商如何使用IP Core来生产自己的处理器:

image.png

BoC授权目前看来只有高通一家在使用,骁龙系列高端处理器即是这种授权下的产物。这种授权模式介于IP Core与Architectural2种授权之间。历史上厂商一直觉得从IP Core到Architectural授权之间的跨度太大,很多场合只是希望公版架构做一些定制,不需要大改。但是只要改了原始设计,就必须要上Architectural授权。贵就不说了,从头设计一个CPU的Core的代价那可不是一般的大。怎么办呢,一方面是有市场,一方面帮助小伙伴创新也是推动整个ARM生态的创新。这种情况下,BoC授权应运而生。
难度最高的,当属炼狱模式的Architectural授权。有架构授权的厂家不少,但地表玩的最溜的,就只有Apple了。A4,A5用的还是公版加小定制,从A6开始,Apple就开始了自己的魔改进程(不得不说刚上位的库克是一位非常有远见的企业家)。64位的处理器+定制的指令集,也就是从iPhone5S起,Apple开始了对Android阵营的弯道超车。如果大家比较关注苹果和高通之间的一些恩怨,应该记得当年苹果发布64位处理器时高通惊慌失措的样子。到了A9(iPhone6s)那一年,Android阵营正式败下阵来,而且到了今天,距离越来越大。这其中的几年,Apple与ARM、高通、PowerVR、Intel之间的恩恩怨怨,又足够写几篇八卦文了。

ARM的授权模式,我尝试用大家更看得懂的来总结下这几种模式的区别。
我们将一个芯片的开发过程,用软件开发的过程来类比:
Architectural授权类似于芯片厂商拿到了软件架构中的架构设计与详细设计。整个软件的核心层次,各层之间的数据流,数据格式接口都定义好了。但是厂商可以基于这套设计做扩展,做改进,以便于在自己的生态内提供更好的体验,更炫酷的feature。但总体来说,还没到源码级别。
BoC和IP Core授权类似于拿到了整个软件的源码。不同在于BoC授权下,ARM可以配合厂商改动部分源码并辅助调试;而IP Core只能在现有源码上增加模块,不能对原有模块进行删改。为啥呢?一方面,出于对知识产权的保护(没交钱还想改?你这是盗版,小心老子告你);另一方面,芯片的源码经过了严格的时序验证,保证稳定不能乱改,改了要费牛劲重新验证。兄弟你没这个金刚钻,就不要瞎搞瓷器活了好不?
PoP IP直接拿到的就是编译好的库,哥们拿到了直接用就完事了。目标环境的编译都帮你搞定了。想有自己的芯片,又想省时省力省钱的,POP IP最合适了。

Android vs iOS

喜欢搞机(对芯片参数如数家珍,对Android原理有一定了解,喜欢魔改系统、刷机)的小伙伴们应该记得以前普遍对Android阵营的芯片评价是跑分很厉害,但是体验不那么好,简称高分低能。但是在2016年之后,风向全变了。不但手机体验没赶上苹果,连跑分也被Apple的A系列CPU给灭了。这咋回事?
根本原因,就是因为苹果构建了一个极其成功的封闭生态。
这咋理解?我们称苹果的生态,很大的因素是因为整个苹果体系涉及的方方面面的东西太多了。从生态链到OS,再到软件和云服务,从生产到售后再到销售终端,每一层都是有机的交错在一起。
跑分是硬件+OS作为一个整体体现的一个分数。
体验则是整个生态给用户带来的感受。

苹果的芯片研发历程

芯片作为苹果生态中极其重要的一环,苹果从来都没放弃自己主导设计的想法。2005年,苹果精简了自己的芯片设计团队,将这块工作交给合作伙伴Intel来承担。而当年在x86市场上叱咤风云的Intel在移动端显然是短视的:可以预见的移动端芯片的收入,远远不及x86芯片的零头。由于没有给苹果满意的答案,乔布斯逐渐意识到这个战略的错误性,慢慢就将战略转变为:开始打造自己的一流芯片设计团队,并利用合作伙伴的力量,制造最先进的芯片:

  • iPhone4之前的时期,苹果采取的都是PoP授权,交由三星合作代工的方式来生产芯片。这个时期的芯片主要供给初代 iPhoneiPhone 3GS以及同时期的iPod touch。从这个时期开始,乔布斯已经开始了重新自建芯片设计团队的宏大工程。
  • 划时代的A4,标志着Apple自建芯片团队的成熟。这次苹果仍然采用了ARM的公版架构,在ARM Cortex-A8的基础上增加了一颗PowerVR 的GPU。想想iPhone4刚面世时给所有人的震撼度吧。同等配置甚至稍强配置的下的Android机器的流畅度用呵呵来形容也不足以为过。
  • 2013年9月发布的Apple A7标致着Apple魔改芯片露出了自己虎牙的时刻,这是第一款移动端的64位ARM芯片。以高通为首的芯片设计大佬本来是对64位架构的ARM指令集不屑一顾的,认为必要性不大,现在的芯片已经能满足绝大多数应用。但是Apple竟然赶在自己之前发布了64位ARM芯片着实打了自己的脸,还能说哈?整个业界都赶紧跟进了啊。跟进是跟进,但当时几个大厂都反应过来,知道了Apple在64位芯片架构设计上的领先性。
  • 2015年9月Apple发布的A9芯片是Apple跟Android阵营一众芯片在跑分上Say goodbye的时候。从这个点起,A系列的处理器就变成了跑分、体验双压制的局面。
    说了这么多,是不是苹果的芯片牛逼是因为自建了个芯片设计团队,慢慢积累并超越了竞争对手?的确,苹果芯片这么出色,有一个超一流的芯片设计团队是最大的原因。但是高通和三星也有一流的芯片设计团队,同时也有多年处理器的设计经验,苹果怎么就能反超之后,就持续领先了?

冰山之下的部分

  1. 紧耦合的系统
    华丽的MacOS&iOS。MacOS属于Unix的一个分支,由Apple独立开发并维护。虽然说很多方面跟Linux都有差距,但在自家产品体系内给出的优秀体验却又让所有人都闭上了嘴。归根结底,这个系统姓苹果。
    这很重要么?相当重要。
    Apple能在iOS上针对A系列CPU不顾一切地做性能优化。试问其他阵营的同体量OS能做到么?
    Android和Linux可不是高通、三星、华为家的。
    脑补的一个厂商和谷歌之间的对话:

喂喂,我觉得Android这个实现不太好,有损效率,谷大哥你并了我这个PR呗?
擦,根本不鸟我。妈蛋,让副总裁去找他大姨的关系沟通一下。
靠,终于回复我们了。嗯,说我们设计理念还可以。建议合并到后年的Android新版本上。晕,黄花菜都凉了...

紧耦合,是苹果的一个执念:固定的硬件,固定的环境,固定的工具,固定的用法。没有例外,在这个世界里,请遵守我的规则。
苹果相信,只有紧耦合,才能提供无与伦比的体验。而苹果也确实做到了。

  1. 奢华的用料
    在芯片的世界里,寸土寸金。做过嵌入式的同学应该都了解,想要更大的片上ram,就需要付出更多的成本。手机芯片的Cache,就是我们说的sram。苹果芯片相比对手的芯片,Cache在容量方面的投入可谓土豪级。
    在Cortex-A75之前,ARM的芯片设计里是没有L3 Cache的。但苹果从A7开始,就已经在堆料上4MB L3 Cache了。
    不光L3 Cache,L2 Cache与System Level Cache也比同级别的高通处理器多。
    骁龙855超级核独占512KB L2 Cache,3个大核各有256KB,4个小核各有128KB。系统级Cache 3MB。
    对应苹果的A12,直接上了8MB的L2 Cache,8MB的系统级Cache,说吊打855多各位有意见么?这还怎么比?
  2. 桌面级的架构
    一般芯片设计在流水线的宽度上有2种思路:
  • 较窄的流水线宽度,较高的频率
  • 较宽的流水线宽度,较低的频率
    理论上来说,2者能够达到相同的吞吐(较高与较低的频率是相对的)。
    ARM的公版设计采用前者,桌面级CPU(Intel)采用后者。
    但苹果自从Swift架构(A4)开始,采用的都是“更宽”的芯片架构设计理念。到了A12已经达到了7发射的解码,6个整数ALU的宽度,远远超过了ARM A76的设计,甚至超过了Intel的8代U...
    国外的评测数据更是给出了结论,A12的性能堪比桌面处理器Intel i7-6700K的性能,而功耗只相当于其1/5。整个业界都在传言,MacBook Pro将会上苹果自家的A处理器,这真的不是空穴来风好么?
  1. 苹果在自家体系内的定价权
    以上所有的改进,都有一个负面的作用,这颗芯片变得更贵了。这也回答了另外一个问题,为啥高通做不出来媲美苹果A系列的芯片?是能力问题么?不,是模式问题。
    高通以什么为生?喂喂,那个说以收专利费,打官司的同学请坐下好么?我们先说卖芯片可不可以?
    高通做出来芯片是要卖给手机厂商的。高通想赚钱,卖出去的芯片就要上量。想要上量,就不能贵。想做超级芯片,没人买账啊?就这一点,就被苹果KO了。
    苹果的芯片只给自己的iPhone和iPad用。芯片贵点怕啥?来来,新的iPhone涨1000美金,果粉照样排队来买。不怕!
    记住,你在芯片里的每一分投入,都需要有一个坚固的支撑收回来,才能让这个过程持续、持久。

同学们,你说苹果的芯片神话,能被后来者打破么?
自己做芯片,有自己的系统,还能用在自己家的终端产品上,你说这样的厂商还有么?
那必须有啊!楼下的同学,请说出你们的答案!