×
×

臺灣處理器拾遺:超級摳門的Centaur造就了威盛x86

2020-05-10 12:22:39 來源:EETOP綜合整理

嚴格說來,中國臺灣廠商至今仍從未在 x86 處理器市場缺席,即使這塊領域早已被 Intel 和 AMD 牢牢的支配著,少有其他廠商的生存空間。

在2019 年11 月18 日,位于美國德州奧斯丁的Centaur(中文翻譯為「半人馬」),發布了x86 世界首款內建人工智能輔助處理器的「服務器級SOC」CHA,原生八核心,四通道DDR4,可雙處理器組態,并支持連AMDZen2 都尚未提供的AVX-512 指令集。繼 2008 年 5 月 29 日發布的 Nano(凌瓏)系列處理器后,相隔超過十年,總算催生出全新的微架構與處理器產品。

這家已成立25年的公司Centaur,早在1999年9月16日,被威盛電子(VIA)以5,100萬美元的價碼,從IDT所收購,成為威盛的子公司,并構成威盛旗下x86處理器的技術基礎。

值得注意的是,威盛電子也在當年8月3日,從國家半導體(National Semiconductor),以足足超過3倍的價格(1億6,700萬美元),買下了Cyrix。但其技術血脈,卻徹底絕滅,還在Cyrix III處理器上演了「貍貓換太子」、從Cyrix轉為Centaur技術的戲碼。Cyrix唯一留下的貢獻,僅限于從Intel取得的交互技術授權,如Socket 370使用到的P6系統總線(可能還得加上一些跟Cache設計有關的知識),確保威盛不會被Intel的法務部門找麻煩。

不過當歷史上如過江之鯽的x86 處理器廠商,一家家的消失在歷史的洪流,一個一個逐漸被眾人所遺忘,Centaur 可存活至今的理由,源自于公司創辦人Glenn Henry 對于成本「斤斤計較」的堅持,可說到了走火入魔的程度,包含威盛x86處理器曾經讓人「津津樂道」的「半速浮點運算」。

在了解Centaur 的產品設計哲學:簡單(Simple)、迅速(Fast)、便宜(Cheap)之前,我們得先瞧瞧現已高齡77 歲、但仍以半退休狀態延續職場生涯的Glenn Henry,究竟是何方神圣,會如此偏執的將1980 年代RISC的誕生初衷,貫徹于x86處理器產品設計,并開辟出一條遠離x86 雙雄激戰區的「精巧低廉」發展路徑──盡管下場好像也不是太好看。

出身自IBM 院士的Glenn Henry

Centaur 創辦人兼前任總裁Glenn Henry 生于1942 年7 月26 日,在IBM 展開其職業生涯,并在1985 年因RISC 的先驅研究成果(IBM RT PC, PowerPC 的前身),得到了IBM 院士( Fellow)的頭銜,擁有汗多達三百份的專利。

但他本人后來興趣轉向于「將RISC 的精神,引入高度普及的x86 指令集相容處理器」,而IBM 高層對此并不感興趣,所以他在1988 年離開了任職21 年的IBM,轉戰Dell ,成為該公司歷史上第一位研發部門副總裁,并在1993 年升任管理產品線的資深副總裁。

那時Glenn Henry 注意到一個問題:他無法在市面上買到售價低于160 美元的個人電腦處理器,這也變成降低個人電腦零售價格的最大障礙。如果沒經歷過1990年代初期,各位可能很難想像那時的x86 處理器有多昂貴:在1994年第一季,連486DX2 66MHz 都要440 美元,更不用講793 美元的Pentium 60MHz 了。

有鑒于此,Glenn Henry 在1994 年離開Dell,重操舊業,投入于x86 指令集相容處理器的研究。有趣的是,當時在MIPS 工作的某位「前IBM 人」Tom Whiteside,希望Glenn Henry 可打造出同時兼容于MIPS 與x86 指令集的處理器,將MIPS 推入個人電腦市場,這也是Centaur 此名的由來:半人半馬。

無獨有偶的,在那時,IBM 也提出了通吃PowerPC 與x86 的PowerPC615。大家都想「滲透」個人電腦市場,設法分一杯羹,特別當銷售x86 處理器的利潤還是極為豐厚的時候。

令人難以置信的超低研發費用與超短開發時程

不過他們拿著這個混合式處理器架構的提案,繞了眾多研發MIPS指令集兼容處理器的廠商們(那時很多人做MIPS)一大圈后,最后只剩下一間公司愿意買單:IDT,然后Centaur 就在1995年成立了。

但Glenn Henry 和他的老板IDT CEO Len Perham,很快的承認殘酷的現實:MIPS 沒有機會進入個人電腦市場,專注于x86 會更有價值,Centaur 就開始以極度拮據的預算,在x86 處理器踏出了第一步,因為以MIPS 兼容處理器和SRAM 做為主要業務的IDT,并不是什么有錢的大公司,支付不起像Intel 和AMD 那樣巨大的研發團隊。

Glenn 只能采取精兵政策,從擺明放棄研制x86 處理器的IBM 和TI,挖來對x86 有經驗的工程師,在德州奧斯丁的Somerset PowerPC 研發中心弄來PowerPC 工程師,并從前東家Dell 找來個人電腦專家,組成了大約40 人的研發團隊。

接著奇跡就降臨了:Centaur 僅用不到一年的時間,就Tape Out初代的C6 處理器(第一代WinChip)設計,并在1996 年7月,首次Windows 操作系統開機成功。更駭人聽聞的是,研發經費僅1,000 萬到1,500 萬美元,很可能連Intel P6(Pentium Pro)的十分之一都沒有。

開發成本縮減至此,就算Centaur 只吃下1% 的x86 處理器市場占有率,都足以養肥自己了。況且這筆錢還有一半是由日本的MIPS 處理器廠商NKK 所分擔的,他們在當時被當作IDT 部分產品的替代來源。

Centaur 如何打造如此夸張的世界奇觀?在AMD 的K5 創造者Mike Johnson 口中「毫無道理可循」的x86 指令集不是出了名的難搞嗎?這就跟他們堅守的三原則:簡單(Simple)、迅速(Fast)、便宜(Cheap)密不可分了。

成本至上,揚棄超標量流水線和動態分支預測

1990 年代初期,「一個指令跑不夠,你可以執行兩個」的超標量處理器(Superscalar)流水線,與「以古鑒今」預測分支是否發生、確保指令流水線不會停擺的動態分支預測(Dynamic Branch Prediction),是奠定高效能處理器的重要技術指標,也激增了處理器的結構復雜度。

信奉精簡教條的Glenn Henry 卻不吃這套,吃了砰陀鐵了心,要用最短的時間、最低的成本,做出最便宜的產品,所有的晶體管預算都要砸在刀口上,不允許任何一絲一毫的贅肉。

就這點來看,Centaur 的理念,和同時期的Rise 與同年成立的Transmeta,完全如出一轍,并不打算跟Intel 硬拼,而是希望在低價電腦和筆電市場開拓一片全新的藍海。唯一的差別只有Rise認清時勢急流勇退,Transmeta 如同蠟炬般的燒盡資金,資源消耗最少的Centaur 卻依舊幸存至今。

Centaur 揚棄超標量流水線的主因很簡單:有效率的超標量流水線,須搭配大量的配套措施(像可讓指令解碼器同時擷取兩個指令的雙通道指令Cache),太過復雜,遲至2000年揭露的C5X,才算邁進超標量流水線的世界,只是C5X 也因成本因素,默默的不見,直到2008 年的Nano(CN)才重現曙光。

關于不做動態分支預測,就是純粹的精算了,Centaur 預估在C6 引進類似Intel Pentium 的動態分支預測功能,會提升5% 效能,但將明顯增大芯片面積,得不償失。

Centaur 將極為有限的資源,集中在認定的效能瓶頸,如便于提高主頻速率、集中加速最經常被執行簡單指令的微指令轉譯,用較高容量的Cache、位址轉譯后備緩沖區(Translation Lookaside Buffer,TLB)和分頁表目錄Cache(Page Directory Cache,PDC),設法彌補缺少超標量流水線和動態分支預測的不足。所有的努力,僅局限于一款「最高效益的表露處理器」。

也難怪微處理器報導(MicroprocessorReport)主編曾戲稱:Centaur 做的不是「超標量(Superscalar)」,而是「超級標量(Super “Scalar”)」處理器。

所以Centaur 那神奇般的超低研發成本和超短開發時間,并不是沒有代價的。你就知道Glenn Henry 這個人有多摳,完全的「臺式中小企業經營法」。

順便一題,為何這時所有Intel 競爭者的產品命名,從Cyrix 6×86 / 6x86MX、NexGenNx686、AMD K6、Rise mP6 等,通通都要用到「6」?道理很簡單,因為要象征追的上Intel Pentium Pro(P6)的「第六世代x86 處理器微架構」。

但1997 年10 月13 日問世的WinChip(C6),本質上根本是一顆「導入先進技術的80486」,別說超標量流水線,連動態分支預測也付之闕如,甚至連效能測試項·目,只有未對超標量最佳化的Winstone97 才勉強可搬的上臺面,那個「C6」,實在是受之有愧。

奇謀而短、小步快跑的閃擊式產品研發路線

反過來說,天下武功,唯快不破,極短的產品開發時程,也帶來更密集的產品更迭,盡速修正前代產品的弱點,并縮短進入市場的時間(Time To Market),迎合市場需求。初代WinChip 才剛上市沒多久,1997 年11 月Centaur 就宣布微幅改良版的C6+ 計劃,并在1998 年5 月19 日就公開樣品,當年9 月WinChip 2 產品就登場,速度相當驚人。

在1998 年,Centaur 大約每季銷售25 萬顆WinChip系列處理器,推算一年約100 萬顆,主要客戶都在美國以外的市場。按照當時個人電腦年度出貨量,Centaur 的確有達到1% 市占率的目標。在1999 年被威盛購并時,初代WinChip(C6)在兩年半的時間,累積了150 萬顆的銷售量,這并不包含WinChip 2 和WinChip 3(C6+)的數字。

奇謀而短、小步快跑的打「機遇戰」,看不見的副作用,莫過于混亂的產品時程表,親身體驗過某些「老板導向」企業文化的科技產業工作者,都會有一股強烈的即視感。

以C6+ 來說,根據倍頻比例、制程、核心/ IO 分離式電壓和Cache容量,就可分成WinChip 2、WinChip 2A、WinChip 2B 和WinChip 3 這4 種產品線。在Centaur 被威盛購并后的5 年內,更是毫無邏輯可言,連筆者都有點同情威盛的產品行銷人員,看了二十幾年的處理器產品時程表,還沒見過這么夸張的案例。

C6+ 改進C6 的兩個主要缺點:缺少動態分支預測(4096 個單位元分支歷史表),和貧弱的浮點/ MMX 效能(將其管線化并可同時執行兩個指令),并新增AMD 3DNow ! 指令集。

其實為了改善3D 應用的效能,Centaur 原先計劃自行定義53 個SIMD浮點指令(耗用12 個x86 運算碼)與22 個可直接定址(有別于80×87 的愚蠢堆疊架構)的80 位元浮點暫存器,并完全符合IEEE 754 浮點數規范,看似非常的前瞻,也明顯優于AMD 的3DNow! 與Cyrix 的MMX-FP。

看在微軟希望所有x86 處理器廠商,統一采用相同SIMD 浮點指令的份上,與當時AMD CEO Jerry Sanders 很大方的愿意開放3DNow! 讓業界共襄盛舉,Centaur 就拋棄了這念頭,投奔AMD的懷抱,況且假若謠傳中的Intel MMX2 使用到重復的運算碼,屆時將會對Centaur 帶來莫大的麻煩。

在1997 年底透露的「C6 強化方案」還有一項未能實行:新增256kB 二級Cache,這檔事倒是對Centaur 的母公司IDT 相當有意義,畢竟IDT 的本業除了MIPS 相容處理器,還有SRAM。

但經過Centaur 仔細盤算后,評估在0.25µm 制程時,加掛256kB 二級Cache,將幾乎倍增芯片面積(58 mm²→113 mm²),而加倍一級Cache的效果相去無幾,但面積成長不多(58 mm²→75 mm²),自然著毋庸議的在WinChip 3 選擇了后者。

低價電腦一直是Centaur的大好機會,Cyrix 在1997 年3 月,發布x86 處理器史上第一顆整合繪圖和音效的系統單芯片MediaGX,促使Centaur 在產品時程表擺上了如法泡制的WinChip 2+NB(整合北橋),也與威盛(VIA)、矽統(SiS)和揚智(ALi)等臺灣芯片組廠商,洽談北橋芯片的技術授權,預定在1999 年第一季量產。

但WinChip 2+ 和WinChip 2+NB 在1998 年底即無疾而終,死因不明,但可合理判斷原因不外乎「談不攏芯片組授權」、「研發能量不足」,或著「可能有買家快要來購并了」。而WinChip3 的表訂時脈,就更加遙不可及了。

「半速浮點運算器」的傳奇

在21 世紀初期經歷過Cyrix III 和早期C3/Eden(C5A/B/C/N 核心)處理器的個人電腦玩家,或多或少聽聞「威盛處理器的浮點運算頻率只有主頻一半」的傳奇故事,而坊間謠傳的解釋多半是「為了提高良率」,這說法完全大錯特錯。

Intel Pentium Pro 三位總工程師之一的Robert Colwell,在其回憶錄《The Pentium Chronicles》的第五章「產品量產階段(TheProduction Phase)」,引用了一段冷笑話,突顯在這個跟時間賽跑的「死線期」,工程團隊到底在想些什么。

兩個男性工程學系的學生,騎車穿過校園。其中一人好奇的問「你這臺綠色腳踏車是怎么來的?」另一人回答「我昨天獨自散步,一邊走一邊想著我的作業時,有位漂亮女孩騎著這臺腳踏車,在我面前停下,一下車,馬上脫個一絲不掛,要求我帶走想要的東西?!拱l問者就猛點頭表示同意,「好選擇,因為那些衣服你可能穿不下」。

這種「實用主義」在當你面臨最嚴酷的時間壓力時,就是再自然也不過的「政治正確」。

Centaur 在1998 年底披露的WinChip 4(代號C4,數字終于一致),企圖藉由從頭全新設計的11 級指令流水線(主頻目標500MHz 以上)、號稱x86世界最強大的動態分支預測機制、大型化的位址轉譯后備緩沖區、有限度的超標量(指令解碼器可在同時鐘周期內解碼一個復雜指令和一個簡單指令,兩個MMX /3DNow! 指令可配對執行)和非循序指令執行(限于存儲器載入回存),拉近與其他競爭對手的效能差距。

Winchip 4 也采取和同時期的Rise mP6 神似的「執行單元開工前,提前存取數據Cache」等手段,將指令流水線「塞好塞滿」。

毫無疑問,Glenn Henry 堅持WinChip 4 依循「簡單、迅速、便宜」的「Centaur 登山寶訓」,并表示「謀略優于電晶體(Tricks are better than transistors.)」與暫存器更名(非循序指令執行)是「魔鬼的工作(Work of the Devil)」。eetop編輯

但問題來了,Centaur 一方面想提高WinChip 4 的主頻,另一方面又不愿意多花時間,重新設計可跟上高主頻的深度流水線化浮點運算器,該怎么辦?很簡單,原封不動的移植WinChip 2 的浮點運算器,兩個時鐘周期當一個用,讓它只跑主頻一半的時脈就好了,一切功德圓滿,皆大歡喜,讓原本性能就偏弱的浮點運算,從此變成威盛x86 處理器的超級大劣勢,到了2003 年的C5XL 核心VIA C3 才解決。這「謀略」有多「厲害」,就見仁見智了。eetop編輯

在威盛體系取代Cyrix

威盛在1999 年6 月30 日與8 月5 日,先后宣布購并Cyrix 和Centaur。第一個標上威盛品牌的x86 處理器,是Cyrix 代號「Joshua(約書亞)」的Cyrix III,在2000 年2 月22 日進入市場,但極為短命,活不到半年就夭折。

Centaur 為了配合新東家的產品發展策略,Socket 7 腳位的WinChip 4(C4)僅停留于工程樣品階段,轉為Socket 370 的C5A(威盛代號Samuel)?!咐碚撋稀笴5A 應沿用大半的C4 設計,但很明顯的,光動態分支預測的部分,C5A 就省略掉了C4 原訂的分支目標位址Cache(Branch Target Address Cache,BTAC),已知資料也顯示流水線結構也有所差異,總之C5A 沒有照單全收C4 的改進項目,恐怕也是為了降低成本。請大家再跟著喊一次:簡單、迅速、便宜。

C5A 從開工到Tape Out,從IBM 0.25µm 轉進臺積電0.18µm 制程,僅花了兩個月的時間。更在2000 年6 月6 日,一舉取代Cyrix,「鳩占鵲巢」的搶走Cyrix III 這個原本不屬于Centaur 的名號。如夢似幻般的Cyrix M3「Jalapeno」微架構與相對應的Socket 370 處理器「Mojave」亦無以為繼,替Cyrix 劃下了充滿遺憾的句點。

在2019 年,AMD 結束了最早源自于MediaGX 的Geode LX 產品線,意味著Cyrix 的技術血脈,從此永遠斷絕。威盛之所以做出這樣的決定,要嘛既有Cyrix 團隊的人才大量流失(據聞Joshua 剛「殺青」沒多久,團隊就解散了),要嘛威盛本來就不打算讓Cyrix 活下來,要嘛威盛高層也認同Glenn Henry 的那一套省錢之道,要嘛三者皆有。eetop編輯

當x86 雙雄開始在低價市場大打出手

但威盛進軍x86 處理器市場的時機卻極度微妙。站在更遠的角度觀察1999 年的x86 處理器市場,就不難理解國家半導體和IDT 急著脫手旗下x86 處理器部門的緣由──Intel 和AMD 早就盯上了低價市場,這讓他們手上的x86 處理器業務,變成欲除之而后快的燙手山竽。

在1998 年11 月,Cyrix 在美國的零售通路還保有22% 占有率,但在1999 年2 月,Intel 發動高主頻Celeron 大攻勢之后(同時AMD 也用K6-2 展開搶攻),Cyrix 產品競爭力一落千丈,只能低價促銷,美國零售通路占有率瞬間被侵蝕到剩下不到5%,單季銷量量跌至150 萬顆,產品平均單價更從49 美元一路滑落到42 美元,而品牌電腦和筆電市場就更毫無還手之力。講的白話一點就是「大環境惡化」,時不我與。

Centaur 的總體銷售量跟Cyrix 相比,還差得遠了,搞不好累積一整年,還比不過人家最慘澹的一季。這一點都不奇怪,要不然為何Cyrix 的購并價碼會是Centaur 的3 倍還要多一些。

但過去只想靠著賣便宜芯片過著安穩日子的Centaur,已經主導威盛的x86 處理器技術發展,面對迎面而來的龐大競爭壓力,可是想逃也逃不了,他們還有那個本錢繼續死守「簡單、迅速、便宜」法則嗎?還是為了執著于家傳寶訓,而付出了更慘痛的代價?

  1. EETOP 官方微信

  2. 創芯大講堂 在線教育

  3. 創芯老字號 半導體快訊

相關文章

全部評論

  • 最新資訊
  • 最熱資訊
车险商城怎么赚钱 股票分析软件下载 上海体彩十一选五玩法介绍 江苏7位数规则 辽宁35选7开奖结果查询 浙江风采 投资理财平台安全吗 腾讯分分彩定位胆技巧 数字彩票的技巧规律 排列三组选3的复式玩法 在线股票行情图 宁夏十一选五投注网站