這個公司帶來的十年CPU輝煌
如果有人現(xiàn)在想為自己的臺式電腦購買一個新的 CPU,幾乎只能使用 AMD 或 Intel 處理器。但四十年前,CPU 市場截然不同,而且更加多樣化,提供來自多家公司的眾多產(chǎn)品。
本文引用地址:http://butianyuan.cn/article/202303/444664.htmNexGen 就是一個這樣的例子,它得到了大量資金和一支優(yōu)秀工程師團隊的支持。NexGen 也有一些絕妙的點子讓他們脫穎而出。但是,為什么他們只堅持了十年呢?
40 年前模仿是常態(tài)
要開始我們的故事,我們必須回到 20 世紀 80 年代中期,那時中央微處理器仍然是相對較新的發(fā)明。英特爾的第一個 CPU 4004 已于十年前發(fā)布,但到 1978 年 8086 推出時,市場上充斥著競爭型號,其中許多基本上是克隆產(chǎn)品。
其中一些衍生產(chǎn)品是在許可下生產(chǎn)的,另一些是逆向工程的,在少數(shù)情況下,公司挖走了設(shè)計團隊的工程師來制造新芯片。例如,Zilog Z80 是由 Intel 4040 團隊的一些成員創(chuàng)建的,事實證明它比它所基于的 8080 更快、更便宜。
AMD 和許多其他公司克隆了英特爾的設(shè)計
Intel i386(也稱為 80386)也不例外。Intel 的第一款 32 位處理器于 1985 年推出,功能強大且價格昂貴,隨后受到 AMD、Cyrix、IBM 和其他公司的注意。
同年,擁有電子工程博士學位的半導體企業(yè)家 Thampy Thomas 創(chuàng)辦了一家名為 NexGen 的新無晶圓廠處理器設(shè)計公司。他與另一位備受推崇的工程師尼克·特雷登尼克 (Nick Tredennick) 共同創(chuàng)立了 NexGen,他雄心勃勃地想要擊敗英特爾和其他公司——而無需求助于設(shè)計模仿。
在 Compaq(美國)和 Olivetti SpA(意大利)、軟件發(fā)行商 ASCII Corp(日本)和風險投資公司 Kleiner Perkins 等公司的資助下,Tredennick 利用他在行業(yè)和學術(shù)界的人脈培養(yǎng)了一些優(yōu)秀的工程師。
NexGen 架構(gòu)的性能目標。
Thomas 在斯坦福大學期間迷上了 RISC(精簡指令集計算機),并認為在當時處理器設(shè)計中可用的晶體管預算有限的情況下,這種方法才是未來。
RISC 與 CISC:處理數(shù)字的兩種方法
RISC 本質(zhì)上涉及讓硬件在盡可能快的時間內(nèi)執(zhí)行所有指令——通常只是一個時鐘周期。為實現(xiàn)這一點,執(zhí)行任務(wù)的部分僅使用最簡單的固定長度命令。例如,將兩個值相乘,需要向處理器發(fā)出至少 4 條指令來加載這兩個數(shù)據(jù),將它們相乘,然后將結(jié)果存儲在某處。
復雜指令集計算機 (CISC) 設(shè)計則采用另一種方式——可以向處理器發(fā)出可變長度的命令,芯片本身將這些命令分解為所需的所有各種指令。上面的乘法示例只需要一個命令就可以完成。這樣做的不利之處在于,處理器設(shè)計中的相當一部分晶體管預算必須花在處理轉(zhuǎn)換的硬件上。
來源:Erik Engheim
與 CISC 處理器相比,RISC 處理器最終更簡單、更小且制造成本更低,但它們需要適當?shù)能浖С帧僮飨到y(tǒng)和編譯器需要管理指令處理,因為基于 RISC 的 CPU 無法真正做到這一點。
在 i386 時代,主流計算機行業(yè)使用的軟件主要是為 CISC 架構(gòu)開發(fā)的,其中大部分是 16 位和 32 位 x86 處理器。如果英特爾真的要改變方向,Compaq 需要做好準備在競爭中保持領(lǐng)先地位。
因此,由于其支持者熱衷于能夠切換到新范例的設(shè)計,IBM 預訂制造芯片,NexGen 配備設(shè)計它,一切都準備就緒。
Nx586:有前途的第一個模型
在 NexGen 上真正賣給 Compaq 的是它的 CPU 理念——最終以 RISC86 的形式銷售,該架構(gòu)將包含一個快速高效的 RISC 內(nèi)核,但帶有可以轉(zhuǎn)換 CISC 指令的硬件,使它們與基于 x86 的軟件完全兼容。換句話說,工程師們的目標是兩全其美。
將產(chǎn)品推向市場并非一帆風順。在所謂的 F86 項目上花費了相當多的時間,第一次修訂包括 8 個獨立的芯片,使其在財務(wù)上不可行。這項工作直到 1994 年才取得成果,也就是公司成立將近 8 年之后,在此期間英特爾確定了 RISC,并致力于 x86 架構(gòu),并發(fā)布了 i486(1986 年)和第一代 Pentium,1993 年代號為 P5。
來源:x86-guide
NexGen 的第一個商用處理器 Nx586 與 i486、Pentium 和大量克隆產(chǎn)品明顯不同。該芯片與市場上的任何主板都不兼容,因此 NexGen 不得不設(shè)計和生產(chǎn)自己的芯片組 ( NxVL )——操作系統(tǒng)最初也難以正確識別 Nx586 和主板。
幸運的是,新貴 CPU 足以讓它在競爭中脫穎而出。由 IBM 使用其 500 nm 工藝節(jié)點制造,時鐘速度與 Intel 一樣好,范圍從 70 到 110 MHz。緩存系統(tǒng)特別強大,分別具有 16 kB 的 L1 指令和數(shù)據(jù)緩存,與 P5 不同的是,L2 緩存控制器內(nèi)置于 CPU 中,減少了所有重要的延遲。
NxVL 芯片是這款主板的中心舞臺。
與 Pentium 一樣,Nx586 本質(zhì)上是超標量的(三向執(zhí)行),同時處理兩個整數(shù)數(shù)學和一個地址指令;它還有一個不錯的分支預測器單元和 64 位寬的數(shù)據(jù)總線。
由于 AMD 的 P5 競爭對手(AMD K5 直到 1996 年才推出)和 Cyrix 的 6x86 性能欠佳才進入市場,NexGen 憑借比英特爾更便宜且性能更佳的產(chǎn)品在 CPU 競爭中大放異彩。
戰(zhàn)斗變得更加艱難
雖然 NexGen Nx586 在整數(shù)計算方面很強大,但在浮點數(shù)學方面無法與奔騰競爭,因為它沒有對此類數(shù)字的物理支持。這對于 DOS 商業(yè)世界來說是可以接受的,但 PC 愛好者(尤其是那些喜歡玩游戲的人)必須等到 1995 年底,NexGen 才能對此有所了解。
延遲阻止了 Nx587 浮點協(xié)處理器與 Nx586 同時準備就緒,最終,兩者將合并為一個封裝(同一 CPU 板上的兩個芯片)。
正如當時常見的那樣,NexGen 使用 P 評級系統(tǒng)來標記其產(chǎn)品——例如,Nx586-P80 的運行頻率為 75MHz,但其性能相當于英特爾的 80MHz Pentium。具有浮點協(xié)處理器的模型被賦予了 PF 綽號(例如 Nx586-PF100)。
不幸的是,盡管 Compaq 對該項目做出了財務(wù)承諾,但該公司并未在其 PC 中廣泛使用新芯片。多芯片 PF 處理器對定制主板的需求和更高的生產(chǎn)成本使 NexGen 的成就黯然失色。
英特爾在其奔騰模型方面取得的快速進展也無濟于事。到 1996 年初,P5 達到了 166MHz,并且有一些版本的架構(gòu)可以向后兼容舊的 i486 時代的芯片組。
NexGen 還沒有結(jié)束,它已經(jīng)在 1995 年 10 月展示了其第二代 RISC86 處理器 Nx686。該公司承諾修復所有阻礙第一個的問題。
首先,新芯片將是單個芯片,尺寸更小,時鐘頻率更高。在布局方面,L1 數(shù)據(jù)緩存大小以及整數(shù)流水線和 x86 指令解碼器的數(shù)量都將翻倍。Nx686 甚至會提供新的多媒體指令擴展,并可用于帶有 NxVL 芯片組的主板。簡而言之,這是對當前 Nx586 用戶的完美更新,也是一個更好的產(chǎn)品,可以讓客戶遠離英特爾。
后者尤為重要,因為在 NexGen 的新聞發(fā)布會后一個月,英特爾發(fā)布了其全新的 P6 架構(gòu),命名為 Pentium Pro。就像 Nx586 一樣,它也將 x86 命令動態(tài)解碼為更小的指令,從而更容易提高整個處理器的效率。
遺憾的是,Nx686 從未進入市場,至少不是作為 NexGen 產(chǎn)品。
被 AMD 收購
十多年來,AMD 擁有兩個主要的處理器設(shè)計團隊:一個致力于 x86 克隆,另一個為嵌入式市場開發(fā) RISC 芯片。大約在 NexGen 宣布其第二代 CPU 的同時,AMD 推出了 Am5x86 處理器。
這將是 AMD 最后一款源自英特爾的芯片,因為該公司的管理層決定在臺式機和工作站市場上利用其 RISC 設(shè)計的優(yōu)勢。因此,為什么 Am5x86 的繼任者 K5 會采用與 NexGen 相同的方法——一個基于 RISC 的內(nèi)核,帶有 x86 指令解碼器。
從理論上講,K5 是超越奔騰的設(shè)計,但事實證明,制造這種芯片比 AMD 所希望的更具挑戰(zhàn)性和耗時。第一批 K5 模型直到 1996 年 3 月才準備就緒,并且不同尋常地發(fā)布了新的架構(gòu)。
K5 的后期修訂版比初始版本好得多。
這些芯片標有代號 SSA/5,完全禁用了分支預測單元(由于不穩(wěn)定的分支目標緩沖區(qū)),某些操作的處理等待狀態(tài)更長,并且由于是在較舊的 500 上制造的,所以熱量輸出很高。
AMD 最終會在 8 個月內(nèi)解決這些問題,但損害已經(jīng)造成。為了避免在他們的下一個架構(gòu)中犯同樣的錯誤,該公司做出了一個相當令人驚訝的決定。1995 年 10 月,AMD 以 8.57 億美元的股票收購了 NexGen。
大公司收購小型半導體公司并不罕見,即使在當時也是如此,但通過這次代價高昂的收購,AMD 公開承認它沒有能力與英特爾直接競爭。
AMD 的 K6 處理器幾乎完全是 NexGen Nx686。來源:Fritzchens Fritz
很快就發(fā)現(xiàn)這筆錢花得很值。AMD 采用了 NexGen 的 Nx686 設(shè)計并重新調(diào)整了一些元素——例如,調(diào)整了引腳布局和相關(guān)布線以與英特爾的 Socket 7 格式兼容,結(jié)果放棄了用于 L2 緩存的專用 64 位總線。
修改后的設(shè)計于 1997 年 4 月作為廣泛成功的 AMD K6 系列 CPU 發(fā)布,新芯片的性能與更新的奔騰處理器一樣好,除了在需要大量浮點計算的應(yīng)用程序中。自然地,它的購買成本低于同等的 Pentium,因為這是英特爾競爭對手的標準營銷方式。
AMD 將繼續(xù)進一步修改基于 Nx686 的架構(gòu),擴展多媒體支持,并為 K6 之后發(fā)布的每個 x86 CPU 使用 CISC 前端和 RISC 執(zhí)行概念(英特爾也是如此)。
一家創(chuàng)新公司的永恒終結(jié)
這就是 NexGen 的終結(jié)。任何仍在貨架上或工作計算機中的剩余 Nx586 芯片將迅速消失,取而代之的是 AMD 版本,而這個名稱本身將很快成為微處理器歷史上的一個注腳。
所有現(xiàn)代 x86 CPU,Intel 和 AMD,都歸功于 NexGen 的架構(gòu)設(shè)計方法。Core 和 Ryzen 處理器的基本執(zhí)行階段本質(zhì)上是 RISC,運動前端裝有巧妙設(shè)計的指令解碼器以轉(zhuǎn)換 CISC 類型的命令。因此,雖然公司本身早已不復存在,但它的影響仍然很強大,而且不會被遺忘。
評論