時代的眼淚系列:Cyrix 的高效能超純量處理器家族(上) - 3C

Hamiltion avatar
By Hamiltion
at 2017-10-25T14:11

Table of Contents

時代的眼淚系列:Cyrix 的高效能超純量處理器家族(上)

https://technews.tw/2017/10/22/cyrix-part-one/

近來 HTC 以 11 億美元價碼,出售代工部門給 Google 的新聞,讓筆者不得不回憶起,
1997 年 11 月先跟國家半導體合併、隨後出售給 VIA,在高效能 x86 處理器發展史佔有
一席之地的 Cyrix,與史上第一款 Pentium 相容處理器 6×86「M1」。



然後再來就是歷史了。

距今已 22 載的 1995 年,Windows 95 的問世前所未見地刺激個人電腦的市場需求,以
Intel Pentium 為首的高效能超純量(Superscalar)x86 處理器,自然而然成為執行微
軟全新 32 位元作業系統的引擎,而 1995 年底上市的 Intel Pentium Pro,和 1996 年
擁有和 Windows 95 相同使用者介面的 Windows NT 4.0,更敲開了 x86 處理器湧入工作
站與伺服器市場的大門。

在當時,「Pentium 跑 95、Pentium Pro 跑 NT」是不可質疑的搭配,而 Pentium Pro
執行 16 位元程式碼效能不佳的疑慮,更讓這約定俗成的潛規則,更加牢不可破。

但過沒多久,1996 年個人電腦零售市場卻出現了 Intel 以外的另類選擇:價格較廉、時
脈較低、整數運算更強,但浮點運算更弱、使用起來更燙的 Cyrix 6×86「M1」,它也引
爆了短暫的 x86 處理器戰國時代。

1995 年到 2000 年這段期間,堪稱是處理器與顯示晶片市場最熱鬧的時期,這在論 x86
處理器只想到 Intel 和 AMD(可能連 VIA 都快被遺忘了)、顯示晶片僅列出 nVidia 和
AMD 的今天,實在令人難以想像。

微軟視窗作業系統最重大里程碑 Windows 95,和最普及辦公室生產工具 Office 95 的問
世,帶來了個人電腦發展史上最巨大的升級潮與採購潮,遠較過去作業系統更飢渴難耐的
系統效能需求,也刺激了對更高速處理器與更快 2D 視窗加速的需要,吸引來自四面八方
的眾多英雄好漢,瓜分這塊肥美的市場。

套句當時 PC Magazine「Inside Track 專欄」的評論:市場仍可允許 x86 處理器標上不
菲的高價,即使是小廠,只要些許市佔率,即可掠取豐厚的利潤。所以不分新秀老將,像
「有晶圓廠才是真男人」的 AMD、「三百壯士」的 Cyrix、IDT 投資的 Centaur、眾多台
灣企業集資的 Rise、僱用 Linus Torvalds的 Transmeta、AMD K6 起源的 NexGen,甚至
在前蘇聯開發超級電腦背景的 Elbrus 等,無不磨刀霍霍,企圖從 Intel 身上割下一塊
肥肉。

但嚴格說來,真正勉強交出像樣成績單的,除了今天依舊與 Intel 激烈交火的 AMD,就
僅剩 Cyrix 了,其他廠商的表現,實在不用多說。


以舊世代 Intel 處理器腳位進行升級,提供跨代性能表現的 Cyrix

有別於今日 Intel、AMD 的處理器腳位,自從 K7 時代的 Slot A 開始「你走你的陽關道
,我過我的獨木橋」,沒經歷過個人電腦上古時期的讀者,可能較難想像,當初眾多「
Intel 腳位相容處理器」百家爭鳴的盛況,還包含今日少人知悉、在此市場以開發 x87
浮點輔助運算器起家的 Weitek 與 Chips and Technologies(後來被 Intel 購併)等。

筆者曾瞻仰其他網站的「達人高見」:使用與 Intel 相同的插槽,是個人電腦發展史上
極為罕有的情況。拜託,在做主機板可以做到股王的年代(意思就是主機板的價格和獲利
都高到令人髮指),你家的處理器不能和 Intel 共用腳位,才是讓人感到詭異的怪事。

這些廠商的共同點:在比較老舊的 Intel 處理器腳位上,提供接近下一世代產品效能表
現的替代品,搶攻舊系統的升級市場。當然,如果效能和價格具競爭優勢,也有辦法取得
Intel 最新的系統匯流排授權,這些廠商也希望可直接跟 Intel 在相同腳位上硬碰硬,
追求更高產品單價與獲利,並設法攻入 OEM 大廠的供應鏈。

Cyrix 就以此塊市場起家,例如 FasMath 83D87 可裝在 387 的腳位,提供比 Intel
80387 浮點輔助運算處理器多出 50% 的效能,而 486SLC/DLC 則是在 386 平台,帶來部
分 Intel 80486 的特色,如第一階快取記憶體等。

而 Windows 95 推出之際,在 486 系統安裝 Cyrix 5×86(或 AMD 的 Am5x86)的「窮
人第五世代電腦」,更是受學生歡迎的低階 Pentium 替代品,當年光在學生宿舍就不知
見證了多少案例。

https://i.imgur.com/ovt8rFP.png


因延宕而錯失「首款非循序指令執行超純量 x86 處理器桂冠」的 Cyrix 6×86

https://i.imgur.com/aoUnZhF.png

前面提到,Windows 95 與 Windows NT 4.0 帶來的市場動量,引爆了 x86 處理器的效能
革命,CISC 指令集的 x86 處理器,也破除了昔日 RISC 狂信者那「CISC 無法管線化、
無法高時脈、無法超純量」的多年詛咒,從整數運算效能為起點,開始具備挑戰 RISC 諸
神的實力(但浮點運算受制於堆疊架構的 x87 指令集,難以飛躍性成長,這瓶頸到了
SSE 出現後才慢慢消失)。

如同第五世代戰鬥機需要的 3S:匿蹤(Stealth)、超音速巡航(Super Cruise)、超機
動性(Super Maneuverability),所謂 80586 時期的第五世代 x86 處理器,為了高效
能,也同時追求 3 個 S:

※ 超純量(Superscalar):一個時脈可同時執行一個以上的指令。
※ 超管線(Superpipeline):更高的運作時脈與後繼的成長空間。
※ 延展性(Scalability):支援伺服器與工作站市場必備的多處理器環境。

Cyrix 首款正面挑戰 Intel Pentium,甚至在整數運算保有越級挑戰 Pentium Pro 潛力
的 6×86「M1」,擁有前兩項特性,並多出減輕暫存器相依傷害的「暫存器重新命名機制
(非循序指令執行)」與「預測執行」,而缺乏第 3 個要素。當時市場上唯一三者兼備
的 x86 處理器,僅有 1995 年 11 月上市的 Intel 新旗艦 Pentium Pro,而上市時間一
再延宕至 1996 年初,也讓 Cyrix 6×86 痛失了「史上首款非循序指令執行超純量 x86
處理器」的桂冠。

處理器既然是「產品」,產品就必然有「規格」,有規格就自然可以「比一比」,我們就
來比較一下,在預定上市的 1995 年,6×86 跟同期的 x86 處理器(順便拖 MIPS
R10000 進來當 RISC 對照組,讓各位看一下 RISC 全盛期的榮光),規格差在哪裡。

這張和後來實際狀況有點出入的簡略概觀比較,其實就已經隱隱約約散發出對 Cyrix 不
妙的氣息了:製程劣勢,這在 1996 年 Intel 開始大量銷售 0.35 μm(350nm)製程處
理器時,就對 Cyrix 更加不利了。

https://i.imgur.com/2DvHQtU.png


奠定未來數年微架構基礎的 6×86「M1」

https://i.imgur.com/qw9KRtK.png

不過「三分靠打拚,七分天註定」的製程劣勢,帶來更燙的運作溫度和更高的製造成本是
一回事,延宕已久的 Cyrix 6×86 在微架構設計,相較於對手 Intel Pentium,卻頗有
看頭。這裡會花點篇幅仔細介紹,因為之後數年 Cyrix 的處理器產品,其管線結構均換
湯不換藥。

超純量(Superscalar)部分,提供兩條功能相對完整的管線:Intel Pentium 的 U/V 管
線須完美配對指令,如限定兩個簡單的單時脈週期整數運算指令(有少數例外,在此不論
),才能發揮 100% 的效率,因為只有 U 管線能執行全部指令,V 管線僅能處理較簡單
者。所以像一個整數和一點浮點、或兩個浮點指令配對,在 Pentium 都不被允許同時執
行。

但 6×86 即使也有類似限制,如 X/Y 管線僅前者可執行分支指令與浮點運算,但遠較
Pentium 彈性,且可在指令解碼階段,交換彼此負責的工作,所以在 Pentium 需要一個
一個處理的指令流,在 6×86 就更有機會同時送作堆一起執行。

利於時脈發展空間的深度管線:七階的超管線(Superpipeline)分離了「從記憶體載入
資料」、「進行有效位址計算」與「回存資料到記憶體」3 個動作,有效減少了存取快取
記憶體的延遲,足以媲美同期的 Alpha 21164(七階)與 MIPS R10000(八階),也意謂
著比較高的時脈延展潛力,雖然受制於外包代工的製程(SGS Thomson與IBM),在與
Intel 競爭的過程中,完全顯現不出其價值。

因管線深度加長,勢必加強分支預測效率,與減輕預測錯誤的代價(Misprediction
Penalty),這部份 6×86 大致近似 Pentium,但增加了存放函數返回位址緩衝區(
Return Stack Buffer),而配置指令預先擷取緩衝區,也縮短了發生預測錯誤時,回復
指令管線運行需要的時脈週期數。

暫存器重新更名(Register Renaming)與記憶體旁路(Memory Bypassing):這些與非
循序指令執行相關的功能,堪稱 M1 微架構的重頭戲。

講的單純一點,透過配置數量比指令集定義的邏輯暫存器、更多的實體暫存器為緩衝(6
×86 用 32 個實體暫存器,「更名」成 8 個 x86 指令集定義的通用暫存器),可減輕
因發生不同指令存取相同暫存器,導致「撞衫」但並非真正的資料相依時,指令管線的停
滯時間。而發生快取誤失(Cache Miss)時,指令管線亦可繼續執行後繼指令。

如發生「真正的」暫存器資料相依,如第一個指令要從記憶體載入至某暫存器,第二個指
令再對此暫存器進行加法運算,6×86 可同時執行這兩個指令,並將第一個指令在 AC2
階段的記憶體資料,「Bypass」到後面指令的 EX 執行階段。這情況發生在 Pentium 的
話,就只能慢慢等了。

但這 3 種凌駕 Pentium 的特色,都被 1995 年底發表、採取解耦式超純量(Decoupled
Superscalr)的 Pentium Pro 統統比下去了,後來 P6 微架構降尊紆貴為進入桌機市場
的 Pentium II,更是 20 世紀末期 Intel 諸多競爭者的惡夢。

況且,除了製程以外,6×86 也不是沒有弱點。

指令集相容性僅有 486 水準:Cyrix 在被國家半導體購併前,並未獲得 Intel 技術授權
,完全藉由逆向工程獨立開發 x86 相容處理器,所以自然而然不是百分百相容 Intel 產
品,像 Intel 在 Pentium 新增的指令,如非常知名的 CPUID,在 6×86 就付之闕如(
原本 1994 年晶片 Tape Out 時,Cyrix 宣稱會支援,但後來預設關掉)。

Intel 在 Pentium 使用者手冊,故意保持空白的「附錄 H」中,描述的眾多新指令與新
功能,如用來計算指令週期數的 RDTSC,Cyrix 也以「避免製造法律紛爭」為由,統統不
碰,若不幸碰到了,就視為非法指令,至於所謂「Undocumented」的非公開指令,更連提
都不用提了。無法完全相容的嚴重後果,就是軟體公司需要特別為 6×86 撰寫補丁程式
,以確保相容性。

同場加映 AMD 當時的處境:拚死拚活逆向工程,也要在 K5 擠出附錄 H 的相容性,成果
在此不論。

這也是 x86 處理器發展史一個潛在地雷,不像其他 RISC 家族都有明確的版本演進規範
,x86 指令集一直缺乏公定版本,很多廠商自己光明正大搞自己的特殊指令(包括 Cyrix
,後文會提到),而 Intel 基於「既得利益」,壓根不打算做這功德無量的好事。

支援多處理器環境受限:初代 Pentium 可透過外掛單價 28 美元的 82498DX 先進可程式
化中斷控制器(APIC)實作雙處理器環境,而 P54C 時期開始,更直接將其內建於處理器
,成為無須外掛系統連結晶片(Glueless)的原生方案,但 6×86 並未整合 APIC,而是
採用自家 SLiC,也只有 VIA Apollo 晶片組提供支援。

其實 x86 並不是到 Pentium 才有多處理器系統。由 17 位因 iAPX432 計畫失敗而離職
的 Intel 員工所創立,堪稱對稱式多處理器架構(SMP)技術先驅,後來被 IBM 購併的
Sequent Computer Systems,就曾先後推出一系列採用 386 與 486 的多處理器產品線
。這些象徵「x86 團結就是力量」的產品,全都仰賴特製系統晶片組與特化過的作業系統
,才能搞定正確路由(route)系統中斷至各處理器的宿疾,且因專屬規格所費不貲,
P54C 時代的 Pentium 才就此劃下句點。

但雙 Pentium 處理器環境,因低落的快取記憶體與系統匯流排效能而缺乏競爭力,這缺
陷到了 Pentium Pro 才釜底抽薪(這也強化了用 Pentium Pro 跑 Windows NT 的誘因)
。即使 Cyrix「硬上」,慘況只會跟 Pentium 如出一轍。

浮點運算效能不彰:6×86 並沒有像 Pentium 一樣擁有管線化的浮點運算單元,浮點運
算效能輸了 Intel 一大截,這對那時方興未艾的電玩遊戲需求是一大打擊,這也是一般
電腦玩家對當時 Intel 競爭者的刻板負面印象。而軟體開發者優先為 Pentium 最佳化,
加重了 Cyrix 的劣勢,並難以提高產品的銷售單價,對製造成本已偏高的 Cyrix 更是雪
上加霜。

https://i.imgur.com/TTd58Un.png

較落後的共享式第一階快取記憶體:6×86 並非採取比較流行的指令/資料分離式第一階
快取,而是兩者共用一塊 16kB 雙埠的共享式設計。跟 Intel Pentium 指令/資料個別
8kB 相比,雖然單一 16kB 理應可提高命中率,但也容易發生存取指令與資料時「打架
」的問題。為此,Cyrix 另外擺放了一塊「L0」的 256 Byte 指令快取,做為補強之用。

即使沒有任何證據足以證明,Cyrix 的設計真的比較差,但從事後「M3」(Jalapeno)企
圖重回「正道」來看,我們有充分的理由相信,這只是基於成本考量而做的不得已決定。

https://i.imgur.com/Wp7R9Yv.png

後面我們會陸續介紹研發資源極度有限的 Cyrix,其 PR 值(P-Rating)的基準由來,如
何勉力改造先天不足的 M1 微架構,持之以恆的推出新產品,以及改弦易轍為整合繪圖核
心單晶片方案先驅者的故事。


--
Tags: 3C

All Comments

Annie avatar
By Annie
at 2017-10-26T09:02
聽過Cyrix的應該都30歲以上了..
Catherine avatar
By Catherine
at 2017-10-26T23:34
然而威盛 QQ
Elma avatar
By Elma
at 2017-10-30T17:39
iSite那邊有比較詳細的早期CPU講古
Elma avatar
By Elma
at 2017-10-31T11:26
https://isite.tw/tags/cpu
Linda avatar
By Linda
at 2017-11-05T10:14
莫再提威盛
Joseph avatar
By Joseph
at 2017-11-07T09:32
真的時代眼淚
Dinah avatar
By Dinah
at 2017-11-10T08:24
懷念
Heather avatar
By Heather
at 2017-11-13T02:18
嗚嗚我第一台pc就是cyrix
Valerie avatar
By Valerie
at 2017-11-14T04:50
樓上老人
Rosalind avatar
By Rosalind
at 2017-11-14T12:09
更早以前8086的時代還有motorola吧 組合語言與intel
還是完全不同的
Agnes avatar
By Agnes
at 2017-11-15T14:36
樓上說的是68k?
Delia avatar
By Delia
at 2017-11-18T23:02
第一台用的電腦286 學校上課用的是386SX
第一台自己買的電腦是P75
Faithe avatar
By Faithe
at 2017-11-23T15:36
第一台是apple ][...
Damian avatar
By Damian
at 2017-11-28T09:22
推文老人臭都出來惹
Mason avatar
By Mason
at 2017-11-29T12:34
本文作者對匯流排的概念是錯誤的. Intel 之前的
Kelly avatar
By Kelly
at 2017-12-02T17:33
匯流排是沒有專利的, 應該說那時候的 CPU 電氣
Jake avatar
By Jake
at 2017-12-06T12:20
特性是沒有專利的, IC vendor 只要能證明是自己設計
CPU, 就可以插到 socket 7 上
Rosalind avatar
By Rosalind
at 2017-12-07T19:11
就算是 slot 1, 有專利的是那個插槽, 不是匯流排
也不是 CPU 的電氣特性
Valerie avatar
By Valerie
at 2017-12-11T05:13
聽過intel 4040是幾歲?
Robert avatar
By Robert
at 2017-12-13T17:43
cyrix 能活到出 M3 也是因為當時 intel 重回
socket370, 而 socket370 用的是 GTLP
Daniel avatar
By Daniel
at 2017-12-17T20:33
玩過MII 300 = = 我還記得是綠盟買的
Iris avatar
By Iris
at 2017-12-20T02:20
那一樣不是 intel 的專利
intel 4040 白算盤都有介紹吧, 不知道的
應該是計組計結沒認真念
Lydia avatar
By Lydia
at 2017-12-20T18:11
cyrix 最狂的應該是在公司門口立一個墓碑
上面寫 intel inside
Jessica avatar
By Jessica
at 2017-12-24T15:50
IBM 5100(誤),有在有錢的親戚家看過Apple ii
Xanthe avatar
By Xanthe
at 2017-12-28T06:01
那時候主打的不都是IBM compatible嗎
Dinah avatar
By Dinah
at 2017-12-28T15:00
Apple ii現在反而值錢了
Faithe avatar
By Faithe
at 2017-12-30T21:58
MOS 6502
Kama avatar
By Kama
at 2017-12-31T00:32
Cyrix (淚
Gary avatar
By Gary
at 2018-01-03T09:51
推Cyrix,用過M1sc-100取代DX2-66
Victoria avatar
By Victoria
at 2018-01-07T16:12
那時候我還沒出生 這些也是微處理機的書寫的
Hardy avatar
By Hardy
at 2018-01-10T15:40
以前看燈會大家穿便服就幾個穿威盛制服特別顯眼
Daph Bay avatar
By Daph Bay
at 2018-01-12T00:48
現在的計組裡面是ARM跟Nehalem @@
Emily avatar
By Emily
at 2018-01-16T01:16
推一個,Cyrix應該在老家的某處還挖得出來
Tom avatar
By Tom
at 2018-01-16T22:22
沒聽過,這是一篇考古文啊ouo
Dora avatar
By Dora
at 2018-01-18T22:00
W95+Cyrix+石器時代+天堂+星海+D2+ADSL的時光
Adele avatar
By Adele
at 2018-01-22T16:35
樓上你說的那些遊戲幾乎都98時代的吧
Sarah avatar
By Sarah
at 2018-01-25T17:39
好像是95普拉斯到98之間?
Franklin avatar
By Franklin
at 2018-01-27T12:06
我的第一顆CPUCyri6x86,結果這顆不能玩FF7 PC版(淚)
Heather avatar
By Heather
at 2018-01-31T08:06
W95+ADSL這電腦也算撐蠻久的
Heather avatar
By Heather
at 2018-02-02T08:41
那時候還有一台炫砲的Pioneer吸入式光碟機
Ethan avatar
By Ethan
at 2018-02-07T05:22
https://imgur.com/gallery/X1sDo
Ida avatar
By Ida
at 2018-02-11T08:00
cyrix idt和transmeda都用過
Puput avatar
By Puput
at 2018-02-16T01:27
transmeta用在一台toshiba的迷你筆電上XD
Eartha avatar
By Eartha
at 2018-02-17T04:56
Cyrix另一個有名的特點..可以OC
Genevieve avatar
By Genevieve
at 2018-02-21T03:27
6x86壓MP3要壓好久 浮點太慢QQ
William avatar
By William
at 2018-02-25T05:12
講個看起來很白痴的東西: 浮點減法跟加法是同一個東
西,列兩排浪費;開根號怎麼沒列?
Doris avatar
By Doris
at 2018-02-26T06:14
時脈跟型號脫勾記得也是cyrix開始的
Carol avatar
By Carol
at 2018-03-03T13:28
cyrix 6x86 p166+ 開機看到就爽爽 只要1/3價格
Steve avatar
By Steve
at 2018-03-04T11:48

20K SolidWorks 繪圖機

Blanche avatar
By Blanche
at 2017-10-25T13:38
已買/未買/已付訂金(元):未買 預算/用途:20,000左右多一點也可以 1.SolidWorks、AutoCad的初階學習者 2.會計單機軟體 3.基本的看影片,Office,網購 CPU (中央處理器):Intel i5 7500【4 ...

iMac Pro 專用 AMD 圖形處理器採用 2.5D

Michael avatar
By Michael
at 2017-10-25T13:14
iMac Pro 專用 AMD 圖形處理器採用 2.5D 先進封裝技術 2017 年 10 月 23 日 19:30 來自供應鏈的消息稱,蘋果自 2017 年 9 月以來已經開始為全新 iMac Pro 所需的高階 顯卡向 AMD 下達更多訂單,台灣的外包半導體組裝和測試(OSAT)公司已經提升了封裝 技 ...

15K 長輩用主機(含作業系統)

Oscar avatar
By Oscar
at 2017-10-25T11:53
已買/未買/已付訂金(元):未買 預算/用途:15k-16k / 讓家裡長輩使用順暢,看劇及文書用 原先預算是15k以內,沒想到加個win10就不小心破了點預算(原本想買win7但沒有) CPU+MB+PSU價格是直接用高興價約5545元 機殼部分是直接參考版上的菜單,改成防衛者是否差異不大? 想請問各位 ...

顯卡背面的風扇螺絲保固貼紙

Ula avatar
By Ula
at 2017-10-25T11:29
最近在考慮購入新顯卡 在看開箱文的時候有發現在微星顯卡背面上的風扇固定螺絲,會貼上貼紙,不給拆。 但是本身是有在玩水冷,這種不給拆的就等於保固直接沒有。 想請問看看,現在是每家廠商都會有這種貼紙嗎? 有哪家沒有的? 目前使用的 EVGA的970是沒有這東西,所以就直接拆了買水冷頭裝上去。 但是 ...

該怎麼說服長輩換電腦?

Frederic avatar
By Frederic
at 2017-10-25T11:22
這種感情類的話題意外的受歡迎,我就教你兩招 第一招一般店鋪絕對修不好,維修的成本也會超過 你兩親的心裡預算,反面督促換電腦。 很簡單,用定時任務去更新bios,故意更新一個錯誤的檔案。 你可以先實驗看看更新正常的BIOS,看看後台指令能不能就緒。 可以再你在家但是有幾天不碰電腦,也不會懷疑到你頭上。 實 ...