
Acorn的无奈选择
如今统治移动计算的Arm,其诞生源于一次“被逼无奈”。
1980年代初,英国电脑公司Acorn(橡子)在为BBC Micro电脑寻找下一代处理器时,首先考虑的是摩托罗拉68000。
然而,该芯片成本高达100美元,占整机成本的25%,这对主打教育市场的Acorn来说难以承受。他们转而向Intel寻求80286的设计资料,希望进行定制合作,却遭到断然拒绝。
正是这次拒绝,间接催生了后来的Arm帝国。
简陋到极致的初代设计
1985年诞生的ARM1处理器,其设计简朴得令人惊讶。
这颗32位RISC处理器仅包含30,000个晶体管——作为对比,同时期摩托罗拉的68000拥有70,000个晶体管。更关键的是,ARM1没有微码(microcode),也没有任何缓存。这种极简设计并非出于美学追求,而是受限于当时Acorn有限的资源和紧迫的时间。
然而,正是这种“简陋”奠定了Arm低功耗的基因:更少的晶体管意味着更低的静态功耗和更简单的控制逻辑。
12人团队与谷仓办公室
1990年Arm从Acorn分拆独立时,整个公司只有12名工程师,启动资金仅150万英镑。首任CEO罗宾·萨克斯比(Robin Saxby)甚至将办公室设在剑桥郊外的一座谷仓里。
在半导体这个资本密集的行业,这种开局堪称“寒酸”。萨克斯比做出了一个在当时看来近乎疯狂的决定:Arm不制造芯片,只出售IP授权。这一模式后来被证明是革命性的,但在当时,连说服第一个大客户德州仪器都异常艰难。
全指令条件执行的兴衰
在Armv7及之前的32位架构中,有一个极为独特的设计:几乎每条指令都可以条件执行。指令编码的最高4位[31:28]是条件码字段,处理器根据程序状态寄存器(CPSR)中的标志位(N、Z、C、V)决定是否执行该指令。例如ADDEQ R0, R1, R2仅在Z=1(相等)时执行加法。
这种设计能消除短分支的跳转开销,减少分支预测失败的风险,提高代码密度。研究表明,典型C代码中约30%的条件块长度≤3条指令,条件执行在这些“小决策”场景中优势明显。
然而,在Armv8-A的64位架构(AArch64)中,这一特性被大幅削减——只有分支、比较和选择等少数指令支持条件执行。原因在于,随着流水线越来越深,条件执行带来的硬件复杂度(需要每个执行阶段都检查条件)与收益不再匹配。保留完整的条件执行会限制时钟频率的提升,而现代处理器更依赖强大的分支预测器来隐藏控制依赖。
被“隐藏”的桶形移位器
Arm早期处理器的另一个巧妙设计是桶形移位器(Barrel Shifter),它被集成在ALU的数据通路中,允许第二个操作数在执行周期内完成零延迟的移位操作。例如指令ADD R0, R1, R2, LSL #3可在单周期内完成“R2左移3位后与R1相加”的操作,无需额外的移位指令。
这种设计在CISC架构中常见,但在RISC中较为特殊。它反映了Arm设计哲学中的实用主义:在保持RISC核心原则的同时,通过有限的硬件增强来提升常见操作的效率。
Thumb指令集的“妥协艺术”
为应对嵌入式市场对代码密度的高要求,Arm在1995年推出了Thumb指令集,采用16位固定长度编码。但Thumb并非简单的“压缩版ARM指令”——它是一套独立的指令集,有自己的编码格式和有限的寄存器访问能力。
更有趣的是Thumb-2技术的引入。它并非简单地混合16位和32位指令,而是通过“指令对”的概念,让16位和32位指令无缝交织,解码器需要智能识别指令边界。这种设计在代码密度和性能之间找到了精妙的平衡,但也增加了硬件复杂度。
早期的悲壮尝试
Arm进军服务器市场的历史,是一部充满挫折的编年史:
Calxeda的“微服务器”梦想(2011年):
这家初创公司基于Cortex-A9推出EnergyCore ECX-1000,主打高密度、低功耗的“微服务器”。一个2U机箱可容纳12块主板,每板4颗芯片,共480个ARM核心。然而,它生不逢时——正值32位向64位过渡前夕,且缺乏稳定的资金支持,于2013年底倒闭。
AMD的“三心二意”:
2013年,AMD宣布基于Cortex-A57的服务器芯片“Seattle”(Opteron A1100)。但这款8核芯片在2016年进入“量产”阶段后不久即被取消,从未真正上市。AMD当时的主要精力仍在x86服务器市场,Arm项目更像是技术储备。
高通的“功败垂成”:
2017年,高通推出Centriq 2400——48核、10nm工艺,采用自研的Falkor核心。性能测试显示,其SPECint_rate2006成绩比同期Intel 24核Skylake 8160高7%,能效比更是高出46%。微软的Olympus项目曾是其重要客户。然而,2018年博通试图收购高通,为优化财务数据,高通裁撤了整个数据中心部门,Centriq项目戛然而止。
DEC的“幽灵遗产”
鲜为人知的是,将Arm从“低端嵌入式”推向“高性能计算”的关键推手,并非Arm自己,而是DEC(数字设备公司)。1990年代,DEC在开发StrongARM处理器时,证明了Arm架构也能实现高性能。DEC的工程师们为Arm注入了大量高性能设计经验,这些经验后来通过设计团队的人员流动,间接影响了苹果A系列芯片乃至整个Arm高性能生态的发展。
DEC的StrongARM团队中包括后来成为Arm首席架构师的Mike Filippo,他主导了Cortex-A57、Neoverse N1/V1的设计,2019年加入苹果,2022年又转投微软Azure,据信参与了微软自研服务器芯片Cobalt的开发。这种技术传承的隐秘网络,构成了半导体行业人才流动的暗线。
早期的五级流水线与“PC+8”之谜
在Arm7的三级流水线(取指、译码、执行)和Arm9的五级流水线中,有一个让许多初学者困惑的特性:程序计数器(PC)总是指向当前执行指令地址加8字节(Thumb状态下加4字节)。这是因为在经典的五级流水线中,当指令处于执行阶段时,取指阶段已经在获取两条指令后的指令(ARM指令为4字节,两条即8字节)。
这种设计导致直接读取PC寄存器的值会得到“未来”的地址,在计算相对跳转时需要特别处理。虽然现代乱序执行处理器已通过更复杂的机制解决这一问题,但这一特性仍是早期Arm汇编编程中常见的“坑”。
多寄存器传输指令的硬件优化
Arm的LDM(加载多个)和STM(存储多个)指令能在单条指令中传输最多16个寄存器。硬件实现上,这并非简单的循环,而是有专门的地址生成器和数据通路优化。在函数调用和中断处理中,这些指令能显著减少代码大小和提高上下文切换速度。
但有趣的是,这种设计在更复杂的微架构中反而可能成为负担。当支持乱序执行和内存重排序时,处理多寄存器传输需要更复杂的逻辑来确保内存一致性。这也是为什么在一些高性能设计中,编译器更倾向于生成多条单寄存器加载/存储指令。
授权模式的“双刃剑”
Arm的IP授权模式被誉为商业模式的创新,但其内部一直存在张力。
2021年,Arm与高通爆发法律纠纷,核心争议在于Nuvia架构的授权归属。Arm声称,高通收购Nuvia后,需要重新谈判授权条款,因为初创公司的授权条件与大客户不同。
这暴露了Arm授权体系的复杂性:不同客户、不同产品、不同时间点的授权协议可能存在巨大差异。
更深远的影响是,Arm近年来试图推行“全栈捆绑”策略——如果客户使用Arm的公版CPU,就必须同时使用其GPU、NPU、ISP等组件。
这直接触动了高通等拥有自研GPU(Adreno)的厂商的利益,加速了它们转向完全自研CPU架构的步伐。
RISC-V的“影子挑战”
虽然RISC-V常被描述为Arm的“开源挑战者”,但两者的竞争在特定领域已十分激烈。在汽车电子领域,博世、大陆、英飞凌等Tier 1供应商已开始评估RISC-V车规芯片。特斯拉、高通也在探索RISC-V在自动驾驶和智能座舱的应用。
更微妙的是,一些中国芯片企业转向RISC-V并非完全出于技术考量。Arm架构的授权费约为芯片售价的2.5%,而RISC-V完全免费。对于价格敏感的物联网和消费电子市场,这2.5%可能就是盈利与亏损的分界线。
苹果的收购与放弃
1990年,苹果投资150万英镑获得Arm公司43.3%的股份,初衷是为Newton PDA寻找低功耗处理器。
Newton项目失败后,乔布斯回归苹果,于1998年卖掉了Arm股份,套现约8亿美元——投资回报超过500倍。
更具戏剧性的是2010年,苹果提出以85亿美元收购Arm,但被Arm CEO断然拒绝。拒绝的理由颇具远见:“买家展开收购的唯一理由是消灭竞争对手,我们保持独立会更有价值。”
试想,如果当时收购成功,今天的移动芯片格局将完全不同——可能不会有高通骁龙、三星Exynos与苹果A系列的激烈竞争。
Intel的“ARM往事”
鲜为人知的是,Intel曾拥有自己的Arm架构处理器产品线——XScale,源于1998年从DEC收购的StrongARM团队。
XScale在嵌入式市场一度表现不俗,但Intel在2006年将其出售给Marvell,专注于x86。这一决策在当时看来合理,但回头看,Intel可能错过了一个时代。
更讽刺的是,当年拒绝向Acorn授权80286的Intel,最终在移动时代被基于Arm架构的处理器击败。历史充满了这样的“蝴蝶效应”。
Arm的成功常被归因于其低功耗特性和灵活的授权模式。但深入历史的细节,我们会发现更多偶然因素:一次拒绝授权的商业决策、一座谷仓里的12人团队、Newton PDA的失败、DEC的技术遗产、甚至是一场未成功的收购谈判。
技术演进从来不是线性、必然的过程。那些被放弃的设计选择(如全指令条件执行)、那些失败的市场尝试(如早期Arm服务器)、那些隐秘的技术传承(如DEC到苹果的架构师流动),共同编织了今天我们所知的Arm生态。
在追求更高性能、更低功耗、更强AI能力的今天,回顾这些“冷门知识”或许能给我们新的启示:
最优雅的技术解决方案,往往诞生于约束与偶然的交汇处;而一个生态系统的韧性,不仅在于其核心设计的优越,更在于其容纳多样性、适应变化的能力。Arm的故事,正是这种技术哲学的最佳注脚。

扫码添加课程小助理
#Arm架构# #CPU# #芯片设计# #计算机# #硬件科普# #半导体# #指令集# #微架构# #RISC# #低功耗#