​iPhone芯片前传:苹果与Arm的那段过往

黄烨锋 电子工程专辑 今天

图片


作者:黄烨锋

EET电子工程专辑原创


上个月月底,Arm宣布推出ARMv9,在AI安全方面针对Arm家族IP有了未来10年的新规划。传言苹果即将发布的A15芯片很有可能会率先采用ARMv9指令集。这个消息的可信度虽然一般,但苹果率先抢跑Arm的新版指令,已经不是什么新鲜事了。


不光是近代苹果A14、A15这样的芯片,相较高通这类竞争对手都更早从Arm手中拿到ARMv8.4a/8.5a这种新规格,更具代表性的一件事还是在2011年10月,ARMv8首度亮相——Arm的64位时代正式开启。当年许多分析师认为,移动设备暂时用不着64位处理器,且基于桌面市场的经验,32到64位在移动设备上的迁移需要很久。


事实证明电子科技行业的历史经验往往并不靠谱,在Android阵营32位“真八核”搞得如火如荼的年代,苹果于2013年以令人惊讶的速度推出A7芯片,这是颗64位处理器,令当时的高通大乱阵脚。所以即便前不久Arm宣称联发科已经在准备ARMv9芯片,苹果大概率也是不会错过前期抢发的。


借此机会,本文期望谈一谈苹果与Arm的那段过往,是早在iPhone 4的A4(2010年)之前的一段历史,称其为“前iPhone时代”大致上也就是这个意思了。从中也多少能够看到苹果在芯片设计上的历史积累。


图片


80年代:苹果的Aquarius计划


苹果芯片团队广为人知的历史,应该是自苹果收购P.A. Semi之后。不过实际上,早在上世纪80年代,苹果就开始组建自家的定制芯片队伍了,谈苹果与Arm的关系也可以从这段历史开始讲起。


1986年前后,苹果对摩托罗拉的68K处理器始终是不满意的,当时苹果内部有管理团队(主要是Jean-Louis Gassée和Sam Holland)告诉公司CEO John Sculley,苹果在CPU方面应该掌握自己的命运。那个年代,以MIPS R2000为代表的RISC也才刚刚兴起。Aquarius计划在这样的历史背景下诞生了。(此前探讨苹果Mac转向Arm的文章曾谈到,苹果一度放弃摩托罗拉68K)


图片


John Sculley前期也非常支持Aquarius计划,分拨人才和超级计算机(著名的花费了1500万美元的Cray超算)资源做支持。Aquarius计划的负责人是工程师Sam Holland。从1989年公布的文档来看[1],这颗名为Scorpius的CPU在规划上比较独特和激进,包括4核心、SIMD支持,还有多处理器互联通讯特性——这在那个年代显得如此“与众不同”。这项计划在苹果内部充满争议,一方面是因为投入巨大,另一方面则是公司内部许多人都认为苹果并不具备这样的技术实力。


一直到1988年,Aquarius计划也没搞出一颗实际的芯片。Sculley失去耐心,项目主管也换了人。该项目新上任的Al Alcorn当时是业界传奇——在雅达利设计出Pong游戏的大佬。Alcorn在拿下这个项目后,找到了微处理器专家Hugh Martin,询问苹果的Aquarius计划是否靠谱。Martin看完之后就表示,这个目标简直就是“ridiculous”。


这也算是苹果最初CPU计划的搁浅时刻了,Cray超算最终也被拿去做Macintosh的工业设计了。不过这项计划的资源储备后续也为Power Mac及配套的不少ASIC芯片设计奠定了基础。


90年代初:苹果与Arm的历史渊源


Arm自身的历史应该是众所周知的了:同在80年代Acorn RISC Machine项目(最初Arm全拼)开启,一种性能不怎么样但功耗很低、能效很高的架构问世。与Aquarius计划算是同期或前后脚,苹果开始与Acorn合作。并且在1990年11月27日,苹果、Acorn以及当时的芯片制造商VLSI Technologies共同组建了新公司,名为Advanced RISC Machines Ltd.。


这个时候ARM这三个字母,全拼就已经发生变化了。当时苹果出资获得新公司43%的股份。维基百科中提到,这个名字是苹果要求的;其前身Acorn其实并不希望用这个名字[2]。


图片

1993年发布的苹果Newton MessagePad 100


后来苹果著名的失败产品“私人数字助理”Newton,就选择了Acorn的处理器。1993年Newton MessagePad问世,应该就是苹果的首款Arm设备了——虽然Arm真正改名叫做ARM Ltd.是在1998年IPO之时。值得一提的是,1993年Arm在业务方向上有比较大的变化,Arm开始做技术授权。这在当时还是相当罕见的。


那一年,TI(德州仪器)很快就成为了Arm芯片设计的授权客户。TI也说服了当时下游客户诺基亚登上Arm这艘船(1994年,诺基亚6110手机的发布应该是Arm IP授权在消费电子领域开推的重要标志)。这两个时期,无论是苹果自身在芯片领域的试错(包括1991年苹果、IBM、摩托罗拉共同组建的AIM联盟,基于Power指令集构建计算标准),还是苹果出资Arm,都是苹果与Arm产生联系的开始。


图片


不过后来,当时间调拨到乔布斯重回苹果公司(2001年),为了让苹果渡过艰难期,乔布斯不仅撤销了不少产品线,而且选择了出售Arm股份。虽然并不知道当时有多少属于苹果的Arm股份被售出,不过到1999年2月,苹果手上实际持有Arm的股份是14.8%,大约值11亿美元。


Arm联合创始人Hermann Hauser此前曾在公开场合提过,乔布斯不在苹果的那段时间(90年代),苹果其实就已经出售了大量Arm股份[3]。出售的原因似乎也是当年苹果财务状况不佳,且出售时间处在Arm股价低点,算是不得已为之。当然我们现在知道,Arm如今的归属已与过去大不相同。


90年代中期:苹果与StrongARM


即便如此,90年代的苹果与Arm之间也始终存在着某种奇特的关联。当时美国一家颇具传奇色彩的芯片公司DEC(Digital Equipment Corporation)期望做低功耗处理器,不过DEC的工程师认为要基于DEC Alpha指令集来开发能够达到低功耗预期的处理器是不现实的。所以90年代中期,DEC开始对专注于低功耗的Arm产生兴趣。(Jim Keller大神1982-1998年就供职于DEC)


当时基于Arm的苹果Newton设备已经推向市场,所以DEC就主动接触了苹果,询问对于高性能Arm是否感兴趣。苹果工程师回复:“Phhht, yeah. You can’t do it, but, yeah, if you could we'd use it.”(你们做不来,不过要是你们能做的话,我们可能会用。)


于是DEC与Arm合作款、传说中的StrongARM就诞生了。StrongARM定位于对性能有更高要求,但仍在低功耗范畴内的嵌入式设备;所以StrongARM微架构之上出现了不少Arm架构不曾有的东西。StrongARM基于ARMv4指令集,利用DEC自家工具和制造工艺(DEC位于麻省的Hudson工厂0.35微米工艺),实现了性能至多5倍增长。后续苹果MessagePad 2000/2100、惠普Jornada掌上电脑、Psion 7系列等都有采用StrongARM处理器


DEC特别在Palo Alto开设的设计中心,为StrongARM项目做出了重要支持。尤为值得一提的是,DEC从Arm获得的架构授权,令其能够基于Arm指令集设计自己的微架构,才有了StrongARM。在此之前Arm只提供核心IP授权,是不允许芯片厂商开发属于自己的微架构设计的[4]。这和现如今的苹果倒是十分相似。


图片


1996年StrongARM微架构首款产品SA-110问世。这颗芯片曾一度为移动设备的最高性能微处理器代表。参与SA-110设计的有Daniel W. Dobberpuhl这样的大牛。


StrongARM和DEC的传奇在于,它后来对Intel产生了影响,技术层面又很大程度反哺了Arm,与此同时可一定程度认为是苹果当代芯片资源的早期储备。这些还将在后文中提到。1997年,DEC财务表现不佳,外界开始质疑StrongARM生产能力,选择StrongARM的客户因此减少。另外这一年,DEC和Intel打起了专利官司。法庭宣判两家公司签署10年的交叉授权协议。不过最终Intel以7亿美元收购了DEC的一部分,包括Hudson工厂以及两处开发业务(位于奥斯汀和耶路撒冷;另外DEC主体被Compaq收购)。


Intel也因此收获了StrongARM。很快Intel以StrongARM替代当时旗下的RISC处理器产品线。这段时间应算是Intel与Arm的蜜月期了,双方称得上互有补益。但步入21世纪以后,2003年Intel宣布以XScale取代StrongARM;2006年,XScale也被Marvell接手。


当年Intel对移动市场似乎始终不是很瞧得上眼,StrongARM/XScaleIntel看来,赚钱能力远不如PC平台的x86芯片。但这是另外一个故事了,后话是据Intel前CEO Paul Otellini所说,在苹果iPhone问世之前,Intel曾探讨过为其打造移动芯片的可行性。Intel不清楚苹果所需的芯片数量,而且认为苹果能给的价格过低。[5]


图片


世纪交替:芯片团队成形


1999年6月,一家叫做PortalPlayer的公司成立。这家公司最初针对软件MP3解码表现,评估了不同的RISC架构,包括MIPSArm等,最终他们选择了Arm。PortalPlayer当时设计的PP5001芯片,采用0.25微米工艺,集成了音频播放核心、LCD驱动、USB接口等。2000年,IBM索尼都相中过这颗芯片。只是这颗芯片的性能实在不怎么样,而且存在一些影响产能的缺陷。


不久,PortalPlayer与eSilicon合作重新设计出了PP5002,采用双核90MHz ARM7TDMI(基于ARMv4,诺基亚历史上的大量手机都采用这个核心架构[6]),台积电0.18微米工艺制造。据说当时苹果为iPod选择芯片时,对9款不同的MP3芯片做了评估,包括Cirrus Logic、意法、TI等的产品,最终选择了PortalPlayer的PP5002。2001年10月,iPod发布大受好评。


图片


以iPod当时软件方面的出彩设计、操控体验和续航表现,Arm芯片应该算是开启新苹果时代的见证者了,毕竟在此之前苹果正处在垂死挣扎的边缘。两个月12.5万台的iPod销量把苹果拉回到了正轨。PortalPlayer当时说苹果下的订单,是原本预期的100倍。2004年PortalPlayer随着iPod热销,公司也在纳斯达克上市了。


不过2006年4月的某一天,三星突然宣布替代PortalPlayer成为未来iPod处理器供应商——当然同样是Arm架构。PortalPlayer方面十分懵圈地表示,苹果改换芯片供应商“没跟我们谈过”。虽然PortalPlayer有考虑过起诉苹果,但很快在这一年的11月,PortalPlayer被英伟达收购。而PortalPlayer也成为英伟达后来相当出名的Tegra移动处理器的起源,现在我们也知道Arm本身即将归属英伟达,那又是另一个故事了。


图片


苹果与PortalPlayer合作同期,2003年美国一家fabless半导体公司P.A. Semi成立。这家公司正是前文提到的DEC公司大牛、StrongARM微架构领衔设计人员Daniel W. Dobberpuhl创办的。事实上,DEC此前被收购后,其半导体业务遗产也算是四处开花了,P.A. Semi是其中的一个。


P.A. Semi专注的方向是Power指令集处理器。当时曾一度有传言说,苹果可能会成为P.A. Semi所推处理器的重要买家,毕竟苹果此前是AIM联盟的一员。2005年乔布斯在开发者大会上宣布Mac从PowerPC转往Intel处理器,这一传言自然也就被扔进历史垃圾堆了。


但是2008年4月,苹果宣布收购P.A. Semi。如前所述这一时间点,其实苹果已经抛弃Power ISA处理器了,旗下全线产品都已经转往x86和Arm。这一年的WWDC开发者大会上,乔布斯表示P.A. Semi的工程师们会和苹果一起,为iPod、iPhone以及未来的移动设备打造芯片。(另外在2008年年初,Jim Keller加入了P.A. Semi,即随后也就成为了苹果的一员)[7]


这是苹果当代芯片梦之队构建的最初阶段。此番兜兜转转,苹果最终还是和Arm走在了一起。从乔布斯回到苹果,并在iPod设备之上采用Arm芯片就已经开始。苹果80年代的芯片设计团队、90年代初促成Arm创立(以及与摩托罗拉、IBM共同组成AIM联盟)、90年代中期与StrongARM的关联,和21世纪收购P.A. Semi,始终与Arm有着千丝万缕的联系。


在这个过程中苹果自己早期的芯片团队也始终有表现,比如说Newton上的ASIC芯片,以及Mac设备上与IBM合作打造的北桥部分。只不过到收购P.A. Semi,苹果打造一颗完整处理器的意愿也才有了机会。


前iPhone时代:苹果芯片问世


后面的故事,大部分人就应该都知道了。不过在P.A. Semi全面发挥作用之前,三星与苹果之间的合作也当属苹果芯片问世之前重要的过渡事件。三星最早为2007年问世的iPhone提供了S5L8900处理器(APL0098)。这颗芯片采用90nm工艺,412MHz ARM1176JZF-S核心,外加Imagination的PowerVR MBX Lite GPU


在iPhone 4之前,苹果用Arm处理器IP和三星的库做RTL级的SoC设计三星按照苹果的RTL规格,总共给苹果做了3款处理器,包括两款面向iPhone的处理器和一款面向iPod Touch的处理器。


到第四款SoC芯片之时,苹果就打算做完整的SoC设计了。苹果准备让原有的逻辑芯片设计团队,外加收购的P.A. Semi一起来设计属于自己的Arm芯片。不过自2008年苹果与Arm签署授权协议,让原P.A. Semi团队开发一款基于ARMv7的芯片,通常需要2-3年甚至更久的时间。


图片


因此,苹果在2010年相当低调地收购一家名为Intrinsity的公司,来加速Arm芯片设计[8]。2009年Intrinsity宣布基于Arm Cortex-A8的Hummingbird核心,基于三星45nm工艺及Intrinsity自己的Fast14方法。Intrinsity宣称其半定制方法能够在最快4个月的时间里产出SoC设计。2010年初,苹果果然宣布推出应用了苹果A4芯片的iPad平板问世。


也是自iPad初代和iPhone 4问世,苹果就正式踏上了Arm芯片设计之路;并且有了自iPhone 5开始,在微架构层面与Arm同期“公版设计”差异越来越大,并将其他芯片设计厂甩在身后的新发展;最终直到今年,将自研Arm指令集的芯片应用到包括Mac在内的全线产品之上。回看这番折腾,苹果M1芯片如今的传说实在不是一朝一夕达成的,苹果与芯片之间至少磨合了几十年。


推荐阅读:Arm的十年PC征程,和微软的“暧昧”


参考来源

[1] Apple's Scorpius CPU (Aquarius project) - 1989, Apple Computer

https://archive.org/details/scorpius_architecture

[2] Arm Ltd., Wikipedia

https://en.wikipedia.org/wiki/Arm_Ltd.

[3] This Is How ARM Saved Apple From Going Bust in the 90s, John Brownlee, Cult of Mac

https://www.cultofmac.com/97055/this-is-how-arm-saved-apple-from-going-bust-1990s/

[4] StrongARM - Microarchitectures - DEC , WikiChip

https://en.wikichip.org/wiki/dec/microarchitectures/strongarm

[5] How Apple Became a Force in the Semiconductor Industry, Daniel Nenni, SemiWiki

https://semiwiki.com/ip/arm/7960-how-apple-became-a-force-in-the-semiconductor-industry/

[6] ARM7, Wikipedia

https://en.wikipedia.org/wiki/ARM7

[7] P.A. Semi, Wikipedia

https://en.wikipedia.org/wiki/P.A._Semi

[8] Intrinsity likely powers Apple's A4 iPad processor,AppleInsider

https://appleinsider.com/articles/10/04/21/intrinsity_likely_powers_apples_a4_ipad_processo


↓ 扫描图片,报名参加 ↓↓


图片