工程師透露:英特爾本可在64位過渡中擊敗AMD 但卻錯誤地選擇了放棄
x86-64 指令集最初由AMD 於1999 年發布,為領先的PC 運算架構提供了重大升級。 事實證明,這項技術非常成功,英特爾不得不追趕競爭對手,這在x86 歷史上尚屬首次。 不過,事情本來可以大不相同。
英特爾公司已經準備好為”經典”的32 位元x86 ISA 添加64 位元功能的解決方案,但該公司卻選擇了推進Itanium(安騰)架構。 最近,一個新的技術歷史片段從一年前的Quora 討論中浮出水面。 英特爾前”首席x86 架構師”鮑勃-科威爾提供了一個以前不為人知的精彩花絮。
AMD 工程師Phil Park 在研究x86-64 過渡背後的歷史時,發現了這段對話。 科威爾透露,英特爾在奔騰4 晶片中嵌入了一個未啟動的x86-64 ISA 內部版本。 公司管理層強迫工程團隊”熔斷”這些功能。
功能是有了,但使用者無法存取。 英特爾決定把重點放在為Itanium 開發的64 位元本地架構上,而不是x86-64。 公司認為,64 位奔騰4 會損害Itanium 贏得PC 市場的機會。 據稱,管理層”不是一次,而是兩次”告訴Colwell,如果他想保住工作,就不要再談論x86 上的64 位演化。
工程師決定妥協,將與x86-64 功能相關的邏輯閘”隱藏”在硬體設計中。 科爾韋爾打賭英特爾需要追趕AMD 並迅速實現其版本的x86-64 ISA,他猜對了。 Itanium CPU 與16 位元和32 位元x86 軟體沒有提供向後相容性,因此該架構也成了英特爾歷史上最糟糕的商業(和技術)失敗之一。
x86-64 ISA 與”傳統”x86 程式碼完全相容,同時引入了新的64 位元模式,具有更強大的指令、更大的向量暫存器等。 與32 位元CPU 相比,它還能使用更大的虛擬和實體記憶體池。 AMD 首先透過基於K8 的Athlon 64 和Opteron 晶片實現了x86-64 指令集,最終迫使英特爾透過改進版的NetBurst 架構(奔騰4)”走向64 位元”。
鮑勃-科威爾為英特爾的歷史做出了重大貢獻,在2000 年退休前,他負責管理了奔騰Pro、奔騰II、奔騰III 和奔騰4 等流行PC CPU 的開發。 同時,今天英特爾和AMD 在市場上銷售的x86 晶片仍然與幾乎所有為x86 架構開發的程式保持完全向後的硬體相容性。