x86-64指令集最初由AMD于1999年发布,为领先的PC计算架构提供了重大升级。事实证明,这项技术非常成功,英特尔不得不追赶竞争对手,这在x86历史上尚属首次。不过,事情本可以大不相同。
J@<f* {:_*P
TVk 英特尔公司已经准备好为"经典"的32位x86 ISA添加64位功能的解决方案,但该公司却选择了推进Itanium(安腾)架构。最近,一个新的技术历史片段从一年前的Quora讨论中浮出水面。英特尔前"首席x86架构师"鲍勃-科威尔提供了一个以前不为人知的精彩花絮。
T95FoA j1->w8 AMD工程师Phil Park在研究x86-64过渡背后的历史时,发现了这段对话。科威尔透露,英特尔在奔腾4芯片中嵌入了一个未激活的x86-64 ISA内部版本。公司管理层强迫工程团队"熔断"这些功能。
<vV"abk ecH7") 功能是有了,但用户无法访问。英特尔决定把重点放在为Itanium开发的64位本地架构上,而不是x86-64。公司认为,64位奔腾4会损害Itanium赢得PC市场的机会。据称,管理层"不是一次,而是两次"告诉Colwell,如果他想保住工作,就不要再谈论x86上的64位演化。
5Rw2/J
L 4G;KT~Cgb 工程师决定妥协,将与x86-64功能相关的逻辑门"隐藏"在硬件设计中。科尔韦尔打赌英特尔需要追赶AMD并迅速实现其版本的x86-64 ISA,他猜对了。Itanium CPU与16位和32位x86软件没有提供向后兼容性,因此该架构也成了英特尔历史上最糟糕的商业(和技术)失败之一。
Lk$Mfm5"M \8\TTkVSq x86-64 ISA与"传统"x86代码完全兼容,同时引入了新的64位模式,具有更强大的指令、更大的矢量寄存器等。与32位CPU相比,它还能使用更大的虚拟和物理内存池。AMD首先通过基于K8的Athlon 64和Opteron芯片实现了x86-64指令集,这最终迫使英特尔通过改进版的NetBurst架构(奔腾4)"走向64位"。
>$CNR*}@ JgP%4)]LV 鲍勃-科威尔为英特尔的历史做出了重大贡献,在2000年退休前,他负责管理了奔腾Pro、奔腾II、奔腾III和奔腾4等流行PC CPU的开发。与此同时,今天英特尔和AMD在市场上销售的x86芯片仍然与几乎所有为x86架构开发的程序保持完全向后的硬件兼容性。
HA}q.L]#