ARM与x86之1--Wintel帝国

ARM 173浏览

The world is changed. I feel it in the water. I feel it in
the earth. I smell it in the air.

1978年开始的PC帝国,以Intel最终战胜AMD为标志,正式步入后PC时代。这个帝国的成员们各司其职,在可预料的未来中这个帝国并无大事。Intel会一代又一代代推出新的PC处理器,Tick-Tock计划[i]将如期而至。每一年都是平淡的一年。

在半导体领域,Intel继续一览众小。Intel依然无奈。半导体领域霸主的无奈在于只要PC依然重要,罗伯特·诺伊斯所创建的这个公司就不会有太大的忧虑;半导体领域霸主的无奈在于对手并不在半导体领域,或者说对手是剩余的所有。

ARM处理器的崭露头角正在开创一个属于更多参与者的帝国。在不远的将来这个新的帝国与PC帝国间必有一战[ii]。我们无法预知x86或是ARM获胜,却可以感受这个世界正在发生的变化。世间最可怕的事,莫过于等待。有些人愿意去预测,去揣度,去逃避无休止的等待,结果即便是上帝不经意间的偶然,也依然执着,愿意为逼近明天而重温历史。也许已经发生的和正在发生的事情,揭示了未来。

Wintel帝国

Wintel[2]WindowsIntel的合成词。Wintel指使用x86处理器[iii]并运行着Windows的处理器系统。在Wintel这个词汇中,Intel占有更多的字符,也是Wintel的主体。

Wintel诞生是一个自然的过程。几十年前,一个富有朝气的公司选择了另外一个富有朝气的公司。在他们所涉及的应用领域中,打遍天下无敌手,创建了令所有对手望而生畏的时代,一个只属于这两个公司的时代,Wintel帝国时代。帝国有着铁血般纪律,组成部件各司其职,互不渗透,有功必赏,有过必罚。帝国没有衰退的前兆,也没有太多不和谐的声音。

PC帝国中,Intel是处理器的最重要的供货商,AMD占据着为数不多的市场份额,更少的一部分份额留给了台湾的VIA[iv]PC处理器大多使用Windows操作系统,也有些PC安装着其他操作系统,如LinuxBSD。在中国,预装Linux系统的这些PC机,在购买后,基本上会被重新安装。在国外,使用Linux系统的也不过是一些爱好者。LinuxWintel帝国的运行制造了一些困难,却没有触及帝国的根本。

帝国的日常经营由一些OEM(Original Equipment Manufacture)厂商、ODM(Original Design
Manufacture)
厂商和BIOS厂商协助打理。因为Linux的存在,还出现了一些OSV(OS Vendor),如RedhatUbuntu(Canonical)SuSE。这些OSV将来自开源社区的代码与Linux内核集成为Linux发布包,提供给OEM使用。

帝国的OEM也都是一些知名公司,如DellHPAcerLenovoAsus等。ODM多集中在台湾。BIOS厂商数量并不多,却也能及时地为这些OEM/ODM服务。整个PC帝国协调有序发展。

帝国内也有些出人意料之外的事件。第一个尝试AMD处理器,昔日的OEM霸主Compaq悄然离去。Dell从一个网络直销商,一夜间横空出世。IBMPC业务转移给了LenovoAcer日益壮大。新人来,旧人去,PC帝国依然是铁打的营盘。

Intel的领导人进行了多次更替,先是罗伯特·诺伊斯,后是戈登·摩尔,安迪·格罗夫,克雷格·贝瑞特,到现在的保罗·欧德宁。诺伊斯和摩尔无论是技术还是商业都有领袖才能。诺伊斯是集成电路的发明者。摩尔创造的定律至今尚不过时,这个定律更是一个商业定律,引导着Intel一代又一代的工程师为捍卫理想,奋勇向前。

格罗夫是Intel的第一个员工,特殊的经历决定了他独特的性格。有人说如果他母亲碍着了他,他也会把她解雇。Intel的前两代领导人恐怕不会这么做。也有人说诺伊斯过于慈善,这使得格罗夫的闪亮登场成为必然。帝国需要有人苛刻一些,严厉一些。

严明的纪律使Intel度过了1986年的寒冬。Intel从存储器领域过渡到处理器领域,甩脱了在其后紧随,随时可将之超越的日本人[3]。这个决策拯救了Intel。多年之后,更加拼命,更加执着的韩国人在存储器领域战胜了日本人。格罗夫留给Intel的“唯偏执狂才能生存”是许多员工的座右铭,当然真正的偏执狂并不认同这句话。前三界领导人的性格互补,使得Intel渡过难关,日益壮大。

1984年,Intel遇到了创建以来的第一次危机,存储器危机。在上世纪七十年代,Intel是存储器芯片的主要提供商。在那个年代Intel在存储器领域的市场占有率几乎是100%,远超过Intel今天在PC领域的市场占有率。

从上世纪80年代起,Intel的存储器危机初露端倪。日本人迅速掌握了存储器设计与生产这个门槛并不是很高的技术核心,借助其特有的高效与后发优势,在短短的两三年时间,大肆吞噬着Intel在存储器领域的市场份额。Intel几乎从一个存储器领域的统治者沦落为二流存储器芯片供应商。

1984年,Intel的存储器芯片在库房里堆积如山。1986年,Intel迎来了自公司创建以来的第一次亏损。格罗夫与摩尔对此早已先知先觉。

1985年,格罗夫在一次公司会议中问摩尔,“如果我们无法渡过这次危机,被迫下台,下一届领导人将怎么做?”。

“他们将抛弃存储器业务。”摩尔回答着。

“我们为什么不自己动手?”[3]

也许格罗夫在科技的前瞻性上无法与摩尔相比,但是他如岩石的执着,如烈火的果敢,化解了Intel面临的第一场危机,PC开始进入寻常百姓家。从Intel今天在PC领域的领袖地位上看,格罗夫这个决策似乎顺理成章。而只有将历史回溯到1985年时,我们才能更加容易地体会到格罗夫的艰难与不得已。

在那个年代,中小型机大行其道。DEC公司的VAX机是所有处理器厂商难以逾越的高峰,Motorola半导体的68K处理器如日中天。很少有人相信Intel能在处理器领域有所作为。在那个年代,Intel推出的每款处理器都是学术界奚落的对象。1986Intel推出的386处理器遭到了整个学术界的诟病。这些学者的这些技术观点多数是对的。从技术的角度上看,386处理器并不成熟,也给Intel留下了向前兼容[v],这个堪称伟大的包袱。

技术并不是早期x86处理器的长处。在上世纪80年代至90年代,几乎全部处理器都被技术上绝对领先,绝对强势的Alpha系列处理器[vi]压得喘不过气来。竞争对手每推出一个处理器芯片,DEC都会推出另外一个强大到令人放弃追赶的新一代Alpha

Intel真正的优势是格罗夫虽百折而不挠,我行我素,笼罩当世的大气魄。

1987年,格罗夫成为Intel的第三任CEO,与另外一个耀眼的企业领袖比尔·盖茨联手创建了Wintel这个事实上的铁血联盟。无论是Intel还是Microsoft都不承认Wintel联盟的存在,却无法否认这个词汇在整个处理器行业制造的恐慌与肃杀[vii]。在那个时代,对于在帝国之外妄图涉足PC领域的厂商,Wintel这个词汇本身就是一个魔咒,使之望而却步。

1978年,23岁的比尔·盖茨与42岁的格罗夫第一次见面,当时的Microsoft仅有11名员工,Intel已经推出8086处理器,员工已过万人。公司间的不对等很难给比尔·盖茨带来荣誉,两个人在个性中的共同点使得争吵时有发生。在某个晚宴上,两个人的争吵引起了所有人的关注,包括在厨房工作的服务人员。格罗夫能够有条不紊地尽享美餐,而盖茨却吃饱了一肚子气[3]

在许多情况下,公司间的合作与领导人的恩怨无关。格罗夫与盖茨间的不和谐并不影响IntelMicrosoft在各自的领域成为巨人,也不影响Wintel这个事实联盟的不断前行。从工作划分上看,Intel领导着OEM/ODM提供底层硬件平台,Microsoft提供操作系统和上层软件,彼此互不干扰,也没有太多的直接冲突。Wintel帝国的各个成员也相安无事。这是一段属于PC帝国的美好年代。Wintel联盟双方相互间存在的依赖,相互成就了对方的事实,维持着Wintel帝国的稳定。

如同所有联盟,合作和冲突永远并存。只有面对强敌时,两个弱者间的联盟才最为可靠,弱者一定程度的上的妥协是维护联盟的必要条件。随着Wintel帝国的前行,Microsoft不再弱小,市值逐渐超过了Intel,也更加富有。掌控着底层硬件平台的IntelOEM/ODM却有着最大的话语权。

这一切使得Wintel帝国内部的冲突愈发频繁。Microsoft率先发难。Windows NT[viii]开始支持x86处理器的竞争对手,RISC处理器,包括MIPS R3000/R4000, AlphaPowerPCMicrosoft多次断言RISC处理器替代Intelx86是大势所趋[4]

面对这场危机,Intel开始动摇,着手研发抗衡RISC处理器的产品,安腾(Itanium)Pentium Pro处理器[ix]。采用向前兼容的Pentium Pro处理器在CISC vs. RISC的战争中大获全胜,放弃了向前兼容的安腾最终被遗忘。Pentium Pro的胜利和安腾的失败化解了Wintel帝国面临的最大的一场危机。对“向前兼容”的依赖,使帝国的这两个重要成员重归蜜月期。1996年,比尔·盖茨在公开场合承认,“最近的两年内,英特尔与微软在合作方面所花的时间比前十年加在一起还要多”。

新贵对盟主地位的追求永不休止。19971120日,Joachim Kempin[x]在给盖茨的Email中明确地提出微软应该收购AMD或者Cyrix[xi]
(Nsemi)
以对抗来自Intel的威胁[5]。格罗夫在卸任时也承认自己犯下的最大错误就是使Intel过分地依赖Microsoft[3]。近些年发生的事件[xii]更加表明Wintel联盟虽然没有分崩离析,却已貌合神离。在IT这个激烈竞争的行业里,只有后浪推前浪,没有永远的合作,更没有永远的联盟。

格鲁夫之后,材料学出身的克雷格·贝瑞特于19975月成为Intel的第四任CEO[6]。在并不长的8年任期中,他带给Intel的影响超越了多数评论家的想象。并不夸张地说,如果在未来的某一天Intel走向衰退,贝瑞特将是始作俑者。

贝瑞特给Intel留下了“Copy Exactly”的成产哲学。如果Intel将来要走一条富士康或者台积电的道路,“Copy Exactly”是必须的,而且需要更加强烈的,更加令人窒息的纪律。这个哲学一经推出就饱受质疑。连Intel的员工也在质疑着贝瑞特,既然您坚持“Copy Exactly”,为什么还要我们“Innovate”?

在“Copy Exactly”的大背景下,Intel有史以来最失败的处理器Pentium IV诞生了。过分迷信工艺的力量,使得Pentium IV一再挑战着CPU主频的极限。这并没有改变Pentium IV高频低能的结局。AMDx86
64
与多核处理器几乎摧毁了Intel2006年,Intel业绩步入谷底,这也改变了贝瑞特向互联网进军的蓝图。

贝瑞特接任后,开始了预谋已久的“互联网”计划。1997DECStrongARM内核正式出售给Intel[7]StrongARM内核基于ARM V4 ISA(Instruction Set Architecture),由DECARM联合开发。Intel使用这个内核替代了自己的i860i960处理器,在此基础上创建了基于ARM V5 ISAXScale架构。

XScale架构得Intel正式进入了嵌入式领域。随后Intel大手笔推出基于XScale架构的一系列处理器,用于手持领域的处理器PXA210, PXA25X, PXA26X,
PXA27X
PXA3XX,用于网络存储的I/O处理器IOP31X, IOP32X, IOP33XIOP34X

XScale构架的所有处理器中,IXP网络处理器令思科,爱立信和华为这些通信厂商至今还在心痛[xiii]IXP网络处理器的技术源自DECIntel保留了DEC网络处理器的整个研发团队,以XScale架构为核心,设计了第一颗芯片IXP1200[8]IXP1200芯片中含有一个类“StrongARM SA1100”的处理器和6个微引擎ME(Micro Engine)

这颗芯片的亮点是6个微引擎,许多研究资料[9][10][11]表明IXP1200确有较强的网络报文处理能力。一时间网络处理器也成为通信半导体厂商的宠儿,Motorola半导体(Freescale)IBM也分别收购了几个刚刚Start-up的公司,主推网络处理器[xiv]

XScale构架没有获得预想中的成功。2006627日,IntelPXA系列手持处理器作价$600M出售给了Marvell[12]20071112日,IntelIXP1200IXP2400IXP2800这些网络处理器转交给了Netronome这个刚刚Start-up的公司,并向已有的客户承诺将继续生产这些网络处理器,并持续到2012[13]I/O处理器无疾而终。

XScale构架并不是贝瑞特“互联网”计划中最重要的一环。20071019日,ITU接纳WiMAX作为3G标准[14][15]3G领域增加了一个新成员,这个新成员至今还活跃在通信领域。只是这个新成员在推广过程中的举步维艰,使得更多的人相信“在美国的某个城市需要贴钱才能卖出去的房产,并不是最糟糕的资产,一个产品最大的悲哀并不是消亡,而是僵而不死”。

遍览整个IT史册,只有摩托罗拉的铱星计划能与贝瑞特的“互联网”计划媲美。铱星计划的失败已经成为MBA的经典案例。IntelWiMAX仍在持续,只是更多的客户开始质疑Intel的耐心,质疑IntelWintel帝国之外的坚忍与能力。

贝瑞特卸任前留给Intel有价值的是“Tick-Tock”计划。“Tick-Tock”是一个象声词,如果将正弦时钟波形在音箱中播放时,可以听到连续不断的“Tick-Tock”。Intel200615日使用已经成型的65nm技术推出“Core Microarchitecture”,这也标志着Tick-Tock计划的开始[16]

Tick-Tock中,Tick指工艺的提高,从65nm45nm32nm22nm16nm11nm。数学功底稍微好些的人不难发现,相邻的两个数字之间的倍数大约是1.414[xv]Intel继续延续着摩尔提出的“集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也将提升一倍”的定律。TockCPU内核的进步,工艺的提高使得之前只能出现在经典论文中出现的技术得以实现。Tick-Tock计划规划了Intel x86处理器直到2016年的Roadmap

 

1 IntelTick-Tock计划[17]

 

体系结构的变化

工艺

发布时间

Tock

Core
Microarchitecture

65nm

2006-07-27

Tick

Penryn

45nm

2007-11-11

Tock

Nehalem
Microarchitecture

2008-11-17

Tick

Westmere

32nm

2010-01-04

Tock

Sandy Bridge Microarchitecture

expected 2010

Tick

Ivy Bridge

22nm

expected 2011

Tock

Haswell
Microarchitecture

likely 2012

Tick

Rockwell

16nm

expected 2013

Tock

New
Microarchitecture

likely 2014

Tick

Shrink/Derivative

11nm

likely 2015

Tock

New
Microarchitecture

likely 2016

 

IntelTick-Tock计划已经执行到Westmere处理器,Sandy Bridge处理器将很快如期而至。Intel将以庞大的人力,充实的物力继续着这个计划。所有这一些都是贝瑞特留给Intel的第五任CEO保罗·欧德宁的。欧德宁必须有所作为。

PC领域再无对手的Intel,目光重新锁定在嵌入式领域,Atom处理器应运而生。这颗芯片上承载着Intel的希望,所有人都在关注Atom能否解开Intel在嵌入式领域的无奈,嵌入式领域的另一个处理器巨头ARM也在枕戈待旦。

Wintel帝国的另一个主角Microsoft已完成政权更替。比尔·盖茨于2008628日正式离任[18]。虽然比尔·盖茨强调将一如既往地关心着Microsoft的一切,并尽可能地提供帮助,Microsoft的股东们也应该双手合十,祈祷盖兹永远不要归来。因为那时的微软,处境绝对不会比苹果请回乔布斯时更好。

死灰复燃的苹果,咄咄逼人的谷歌,是微软挥之不去的梦魇。而最为IntelMicrosoft担忧的是Wintel联盟的生死。Intel已经提前做好准备,率先研制基于LinuxMoblin操作系统[19],在2010年与Nokia,将MoblinMaemo合并为Meego[20]

对于MicrosoftWindowsARM何时走到一起的讨论从Windows 7诞生以来,从来都没有停息过。Microsoft明确表示Windows 7不会支持ARM-based的上网本(Smart Book)[21]之后,却带来了更多有关WindowsARM的传言。更多的人想知道Windows 8或者9是否支持ARM[22]处理器。对于ARM,这些期待已经不再重要。WebOSAndriod的异军突起,使得Microsoft更加尴尬。此时的ARM还需要Windows吗?




[i] Tick-Tock计划是Intel2007年开始的一项计划,Tick指工艺的进步,而Tock指处理器内核的革新[1]

[ii] ARMx86处理器之间的战争早已打响。许多预测家声称,这场战争最终会彻底消灭其他处理器内核,如PowerPCMIPS,只留下x86ARM处理器。

[iii]
x86处理器的芯片提供商除了Intel,还有AMDVIA

[iv] 1998年,VIA收购了Cyrix的大部分资产,进入x86处理器领域。

[v] 英文是backward compatible。我个人认为翻译成向前兼容好些,因为是后续的产品需要兼容之前的产品,应该着眼于现在,而不是过去,是“以前”而不是“前进”。

[vi] Alpha处理器也是我第一次接触的第一个高端处理器,那是一个充满激情的岁月。

[vii] 今天的Microsoft正在被Google欺负。在盖茨年轻的时候,Microsoft是不可战胜的。有一个工程师向盖茨提了这样一个问题,“我不愿意加入微软,但是我所加入的其他公司,不是被您收购,就是被您挤垮。我需要买一个带花园的小房子,需要一份工作。请问在软件领域,有哪些方面是您不愿意涉足的?”。

[viii]
Windows NT19937月正式发布。Windows NTDave
Culter
率领的团队开发完成,Dave Culter也是VMS系统的设计者。

[ix] Pentium ProIntel一颗具有里程碑意义的处理器。这颗处理器将复杂的CISC指令分解成为μops指令(一种RISC指令),之后采用了RISC指令流水线,加大提高了x86处理器的性能。在某种意义上说,这颗处理器拯救了Intel

[x] Joachim Kempin当时是Microsoft的高级副总裁。

[xi] AMDCyrixIntel当时的主要竞争对手。从今天AMDCyrix的状况上看,盖茨没有采纳Joachim的意见无比正确。

[xii]
2010723日,Microsoft正式宣布与ARM展开战略级合作[23]IntelNokia联手开发用于手机的Meego操作系统。

[xiii] 这些网络通信厂商在Intel网络处理器上投入了大量的人力物力,而Intel却却中断了该产品的后续研发。

[xiv] 网络处理器没有一个得到善终。IBM将网络处理器卖给了Hifn,不过近期IBM发布了一颗16核的Wire-Speed网络处理器。Motorola半导体从C-Port手中收购了网络处理器,却无法阻挡IntelIXP网络处理器的低价格策略。

[xv] 1.414约等于sqrt(2)Intel使用这些数字的主要原因是继续捍卫摩尔定律。