本文来自微信公众号“半导体行业观察”,编译自xda-developers。
过去几十年来,英特尔的x86架构统治着计算领域,为从最基础的笔记本电脑到最强大的数据中心设备等各种设备提供动力。然而,一场静悄悄的革命正在幕后悄然发生:Arm。Arm架构在智能手机时代真正开始站稳脚跟,如今正在主流计算领域占据重要地位,而这在以前是不可想象的。如此之多,以至于x86的统治地位似乎已成定局。
有很多理由可以相信这一点,而且与几年前相比,现在想想也并非难以想象。苹果公司通过其M系列Apple Silicon SoC向Arm的重大转变无疑开启了一股潮流,而微软再次推动基于Arm的Windows操作系统,表明微软再次看到了它的价值。而这两项行业变革仅仅是冰山一角。
Arm的行业支持很有说服力
Arm崛起的最明显指标之一是芯片制造商,以及这些芯片的创造者群体在过去十年中如何不断壮大。在x86领域,只有两家主要生产商:英特尔和AMD。相比之下,Arm生态系统拥有众多芯片设计公司。一些科技界巨头正在打造基于Arm的高性能处理器:苹果用其自主研发的M系列芯片取代了Mac中的英特尔CPU,高通正在基于Arm为Windows开发自己的“X”系列芯片,甚至亚马逊也在为云计算打造自己的基于Arm的“Graviton”芯片。
事实上,除了英特尔和AMD之外,几乎所有大型芯片制造商都在生产基于Arm的芯片。就连英伟达(Nvidia)也早已在打造基于Arm的Tegra芯片。尽管英伟达最近收购了英特尔约5%的股份,并向该公司投资50亿美元,承诺将推出搭载RTX芯片组的x86 SoC,但英伟达也早已在打造基于Arm的Tegra芯片。别忘了,英伟达几年前甚至还试图收购Arm,并且一直在其面向服务器的“Grace”芯片中使用基于Arm的CPU。
甚至游戏机也反映出这种差异,这多少有些说明问题。虽然任天堂的Switch和Switch 2都得益于英伟达的支持而基于Arm架构,但任天堂自Game Boy Advance以来就一直在其掌机上使用Arm芯片。DS、DS Lite和3DS均采用Arm架构,其中一些由其他公司制造,一些则直接从Arm获得授权。与此同时,PlayStation和Xbox仍然运行在定制的x86 CPU上,但不久前,游戏机甚至苹果的老款Mac都改用PowerPC架构。

x86的问题在于它本质上是一个封闭的俱乐部。相比之下,Arm的授权模式允许大量公司进入并基于Arm的ISA设计自己的芯片。苹果的举动尤其令人震惊,但对于x86来说,这就像煤矿里的金丝雀。需要注意的是:苹果是Arm的联合创始人,在Arm IP的授权协议谈判中可能拥有相当大的权力,而且它不再需要向英特尔支付CPU费用,但这还远不止于此。
当苹果在2005年WWDC上首次宣布计划从PowerPC迁移到x86时,PowerPC的处境有点奇怪。除了苹果之外,它的使用几乎仅限于2000年代初期到中期的游戏机,以及有趣的是,好奇号和毅力号火星探测器。然而,苹果的转变是整个行业趋势的结果,因为当时所有其他个人计算平台都基于x86。
这一次有所不同:苹果没有落后于时代,而是决定先发制人。转向Arm带来了显著的优势,例如能效、散热和性能。目前,苹果的每条主要产品线都至少有一款基于Arm的芯片可供选择。随后,高通以14亿美元收购了由前苹果芯片设计师创立的初创公司Nuvia,这表明一些顶尖人才和芯片设计师现在都进入了Arm领域。而不是x86。
最后,由于x86的授权状态,想要自研芯片的公司甚至不可能使用它。相反,所有努力都集中在Arm(或在某些情况下是RISC-V)上,这意味着计算和芯片开发的前沿正在Arm上进行。
软件不再是曾经的问题
开发人员编译软件时,必须定义一个“目标”。这个目标指的是代码预期运行的平台,因为你编写的代码仅仅是代码执行架构所理解的汇编语言的抽象。Arm的CPU指令并不适用于x86,反之亦然。当Windows on Arm随着Windows 10首次流行起来时,许多最流行的应用程序根本无法原生运行,而且“翻译”过程(解释为x86构建的指令并动态转换为Arm指令)速度很慢,并且仅支持32位应用程序。
微软早期的尝试Windows RT甚至更糟糕。它与Windows 8一同发布,旨在面向基于Arm的设备,并与Microsoft Surface RT一同发布。然而,它只能运行来自Microsoft Store的应用程序,并且完全没有翻译功能。应用程序通常不是为Arm构建的,那么它的意义何在?
苹果的做法明显更好,虽然这其中肯定有行业时机的因素,因为微软之前的尝试实在太早,但苹果的做法也与众不同。苹果的Rosetta 2翻译器在第一天就面向基于M1的Mac推出,并由硬件加速支持,可将x86指令翻译成Arm指令,从而带来完全无缝的体验。应用程序很快就能为Arm构建,即使是那些并非Arm的应用程序也常常运行顺畅。
微软对Windows on Arm的重新关注取得了显著进展,显著改进了翻译功能,并增加了64位支持。诸如完整的Microsoft Office套件、Adobe Photoshop和Lightroom、Chrome和Firefox等众多关键应用程序现在都已推出Arm原生版本。甚至一些游戏平台也在尝试,Windows on Arm改进的仿真功能可以填补许多领域的空白。当然也存在一些极端情况,例如某些驱动程序和非常老旧的软件,但这些问题通常可以通过某种方式规避或解决。
Arm落地的最大障碍之一,一直是“先有鸡还是先有蛋”的问题。开发者需要一个理由,在没有用户的情况下为Arm构建和维护应用程序,而用户之所以没有,很大程度上是因为软件的匮乏。即使是游戏,主要的障碍也可能是用户心仪的热门游戏缺乏反作弊支持。然而,缺乏反作弊支持并非像Linux那样是固有限制;相反,这与截然不同的硬件有关,因为许多反作弊解决方案会更靠近硬件工作,以便扫描内存并监控进程。
所有行业道路都通向Arm
似乎每个主流厂商都至少尝试过Arm,而有些则全力投入其中。苹果大举转向Arm令人震惊,证明了该架构作为PC级架构的可行性。与此同时,微软回归Arm上的Windows,并对其进行了完善,提高了兼容性,甚至推出了首款搭载高通基于Arm的骁龙X Elite处理器的“Copilot+”电脑。
说到高通,他们对基于Arm的Windows押注颇丰。高通和Arm的首席执行官去年都预测,五年内高达50%的计算机出货量将基于Arm架构。这无疑是一个雄心勃勃的计划,但也展现了他们的信心。此外,据报道,微软与高通曾签署过一份关于基于Arm的Windows的独家协议,该协议将于2024年到期。
Nvidia最近与英特尔的合作,虽然给这方面的工作带来了一些阻碍,但也证明了即使在x86领域,集成高效的SoC也是不可避免的。Nvidia仍然可以设计自己的Arm芯片,尽管传闻中针对Windows on Arm的N1X芯片的未来可能悬而未决,但Nvidia一直在使用其Arm CPU搭配GPU技术构建专注于AI的服务器级机器,而且这种模式不太可能在一夜之间消失。
然而,还有一家公司在Arm领域默默活跃,这可能会让人感到意外,那就是AMD。尽管目前是一家主流的x86芯片生产商,AMD也时不时地与Arm进行合作。其基于Arm Cortex-A57内核的Opteron A处理器于2016年发布,AMD也早在2014年就宣布了K12项目,但最终在2023年正式取消了该项目。Jim Keller曾是AMD Zen架构的首席开发人员,他经常被誉为AMD芯片组业务复兴的关键人物,他称K12项目“愚蠢地被取消了”。“此外,他表示模块化Zen架构和K12 Arm芯片组之间的主要区别在于解码器,因为芯片的大多数其他元素都是相同的。
不过,最近的报道表明,Arm可能已重回AMD的阵营。虽然距离Keller的Zen架构工作已过去好几代,但他关于从x86到Arm的转换会非常简单的断言,在今天可能仍然成立——即使Zen 5是一次重大的架构重制。此外,联发科一直公开与英伟达合作开发GB10 Grace Blackwell项目,据报道,他们私下也在合作开发之前提到的N1X。如果Arm代表着未来(许多公司似乎都这么认为),AMD肯定不想在Windows和Arm的竞争中被淘汰.
长期以来,计算领域一直在发生重大变革,而且随着时间的推移,变革的步伐只会越来越快。这场变革也已酝酿了二十多年。Arm从游戏掌机到智能手机,再到后来的笔记本电脑和数据中心,其应用已使其成为一个平台,几乎所有不使用x86的产品都转而使用Arm。亚马逊的Graviton、特斯拉的信息娱乐和自动驾驶汽车,甚至LG的冰箱都在使用Arm。
需要明确的是,我认为x86不会很快消失,也永远不会真正消失。即使在今天,你仍然会发现IBM几十年前的大型机架构在一些公司的服务器机房深处。而且,x86已经如此庞大且长期存在,因此不太可能就此消失。
Arm在各个领域都取得了进展,消费级桌面处理器的趋势也往往不会落后于其他行业。我们已经看到了英特尔和AMD对Arm的回应,他们试图最大限度地提高功耗效率,虽然公平地说,这种方法确实有效,但仍然无法与基于Arm的Apple Silicon令人瞠目的电池续航和散热性能相媲美。
目前,竞争正迫使英特尔和AMD加大投入。无论如何,这对消费者来说总是好事,未来我们甚至可能会看到更多定制设计的内核。此外,我们甚至还没有讨论过RISC-V,这种开源指令集架构仍然可能构成威胁,但目前面临着碎片化和缺乏采用的问题。十年后,我们可能会谈论RISC-V、Arm和x86之间的三方架构之争。x86在大规模数字运算方面仍然占有一席之地,但Arm已经在几乎所有可以想象到的计算领域,作为一种可行、强大且高效的替代方案,铺平了道路。
正如科技界的历史经验所表明的那样,一旦势头转变,几乎不可能逆转。而目前的势头无疑对Arm有利。
参考链接
https://www.xda-developers.com/arm-future-desktop-computing-writing-wall-x86/
