蘋果處理器之前世:30多年前的多核心多線程幢影與蘋果「水瓶座」四核心處理器計劃

2022-10-18 12:34:04 來源:technews(臺) 作者:癡漢水球

也許這次了無新意的iPhone 14 發布會,并沒有替果粉「充值信仰」,但2019 年4 月30 日,一份出現在網絡的網絡檔案館(Internet Archive)、1989 年發布、內容多達220 頁的蘋果機密文件(或許能當成一本書),披露的「水瓶座」(Aquarius)計劃、「天蝎座」(Scorpius)處理器架構規格、預定實作的「心宿二」(Antares)處理器,精彩橋段與后繼影響,可能遠比歷史任何iPhone 更有「激勵士氣」效果──即使當時就是根本不可能成真的天方夜譚。


圖片
▲ 蘋果1986年啟動的「水瓶座」計劃堪稱多核心、多線程先驅,但如英特爾「單芯片超級電腦」iAPX432,太多概念都不是那時代的技術能消受。
圖片
了解蘋果歷史的人應當都記得喬布斯(Steve Jobs)這聯合創始人,1985 年與董事會和CEO史考利(John Sculley)權力斗爭而離開公司,帶著幾名員工創立NeXT,1997 年隨蘋果并購NeXT重返舊地擔任CEO,重振瀕臨破產的蘋果,并讓基于NeXTSTEP操作系統(Mach 微核心)的Mac OS X(現稱macOS)取代最初Mac OS。
水瓶座:對續影響引發連鎖反應的低調計劃
一長串故事背后,卻是由蘋果如何取得「Motorola MC68000 處理器RISC 繼承者」驅動,經歷蘋果啟動「水瓶座」計劃展開自研處理器專案、「捷豹」(Jaguar)計劃試圖使用現成RISC 處理器Motorola MC88110 打造執行全新Unix 操作系統「Mach」的Mac 產品線、NeXT 追隨蘋果腳步從MC88110 轉向PowerPC 等。更重要的是,這直接促成ARM 成立,很少人記得蘋果曾是ARM 最大股東。
1986 年,采用MC68000 處理器的Mac 乍看依然強勢,但 RISC 風潮興起后(MIPS R2000 登場于1985 年),逐漸失去競爭優勢。繼喬布斯被趕出蘋果時接管Mac 產品線的部門負責人Jean-Louis Gassée(這位法國巴黎人后來成立Be 公司開發出BeOS 并筆耕不輟,在吐納商業評論持續有授權連載翻譯)和部門首席工程師Sam Holland,成功說服CEO John Sculley「應當使用自研處理器,以牢牢掌握自己的命運」(嗯,有股熟悉的感覺),啟動Holland 負責的「水瓶座」計劃,籌組50 名員工團隊,并購買一臺價格1,500 萬美元(等于2019 年的3,500萬元)Cray 超級電腦。因巨額開銷必須提列財報,無法隱瞞,所以蘋果給投資人的說法是「用來做機構建?!?。
盡管有CEO Sculley和法國人Gassée 強力支持,水瓶座計劃也理所當然引起爭議,不僅需大量投資研發,更有不少員工不相信蘋果有足夠技術能力做出如假包換的產品,意思就是「蘋果再有錢也做不出來」。Holland 制定的「天蝎座」處理器架構,就如英特爾「單芯片大型主機」iAPX 432,更造成當時經驗最豐富的大型芯片設計公司也難以克服(就算今天大概也解決不了)的諸多技術難題。
到了1988 年,水瓶座計劃依舊停在紙上談兵的「簡報王」階段,失去耐心的CEO Sculley 撤換Holland,由傳奇人物Allan Alcorn(以在Atari 創作第一個電子游戲《Pong》聞名)取代。他向微處理器專家Hugh Martin 咨詢水瓶座計劃的可行性,后者讀完整個天蝎座處理器架構規格后,給了Sculley 和Alcorn「荒謬」(ridiculous)的結論。
因此1989 年,Sculley 中止水瓶座計劃,并聘請Martin 設計采用現有RISC 處理器的全新Mac 產品線,領導的「捷豹」(Jaguar)計劃和另一位資深工程師Jack McHenry 的「干邑」(Cognac)計劃,成果是改用Motorola MC88100 處理器的試作型Mac,操作系統也是基于Mach 微核心的Unix。類似MotorolaMC88000與MC68000的政治斗爭,RISC 化的Mac 也不見容既有MC68000 體系Mac 的工程團隊,對蘋果來說,不幸的是Sculley 沒有能力解決組織爭斗,讓此案功敗垂成,卻也奠定日后Power Mac 的基礎,包含PowerPC 處理器執行的MC68000 模擬器。
至于現在閑置于蘋果舊總部綠谷(Green Valley)3 號大樓的Cray超級電腦,拿去做知名《Pensil Test》動畫后,就如蘋果最初搪塞投資人的借口,挪去給工業設計團隊做機構建模。
既然蘋果自己想做處理器做不出來,「砍掉重練」操作系統也五五六六,為何不直接「站在巨人的肩膀上」,與「軟硬兼備」的大廠「送作堆」?身為捷豹計劃核心人物的Hugh Martin 就支持蘋果與Sun 合并,提供客戶更全面的電腦平臺,從文書處理一路到工程師專用高端工作站,這事當然沒有成真,雖然從Solaris 衍生的Mac OS 好像真的很酷。
值得一提的是,福特汽車之所以膽敢承諾Motorola 以「10 億美元」購買基于MC88000 的微控制器(無疾而終的MC88300),原因明顯來自蘋果的剛性需求,支撐這系列處理器研發。當蘋果與IBM 和Motorola 組成AIM 聯盟后,福特汽車也自然轉向PowerPC,影響開發下一代工作站的NeXT,確立未來Unix 化的Mac OS X。
總而言之,Apple Music 里的Aquarius Project 并不是蘋果史上第一個「Aquarius Project」,Mac OS X 10.2(代號Jaguar)并不是蘋果史上第一個「Jaguar」,Mac OS X 更不是蘋果史上第一個采用Mach 微核心的操作系統。
圖片
▲「水瓶座」計劃目標可實作多達16 顆處理器的NUMA(Non-Uniform Memory Access)平臺,每顆處理器都有專用主存儲器,但如何實做快取數據一致性就是天大的難題。
不可能達成的規格終究是不可能
前面講了這么多故事,差不多該進入本文主角:水瓶座計劃。由大到小,規格簡述如下:


  • 三個代號:「水瓶座」(計劃名稱)、「天蝎座」(技術規格)、「心宿二」(產品實作)。坦白講,一次用三個名字實在有點多余。

  • 支持16 處理器與分散式實體存儲器(Non-Uniform Memory Access,NUMA)環境。

  • 32 位元RISC 處理器。

  • 4GB 可定址存儲器空間。

  • 看起來很像「四核心」的4 個功能相同處理單元(Processing Unit,PU),透過5×4 Crossbar 互通有無,共享指令快取存儲器、數據快取存儲器、與存儲器管理單元。因為所有核心實際上必須在相同存儲器定址空間執行,單核心概念近似「硬件線程」,如我們熟知的同時多線程(SMT)。

  • 每個處理單元各有16 個32 位元通用數據暫存器(GPR)和7 個區域特殊用途暫存器(Local SPR),所有處理單元再共用2 個程序計數器(PC,分別標定「目前」和「下一個」指令所在存儲器位址)和8 個全域特殊用途暫存器(Global SPR)。

  • 4 個處理單元可彈性執行SIMD(單指令處理多筆數據)、MISD(多指令處理單一數據)和MIMD(多指令處理多筆數據)三種平行運算模式,讓人眼睛一亮。


圖片


▲ 水瓶座四個處理單元可任意組合成SIMD、MISD 或MIMD 運算型態,非常有創意。


  • 單一處理單元可在「某些場合」達成「某種程度」超標量流水線,也就是同時執行兩個指令。

  • 有一系列快取存儲器控制指令,很可能借鑒 HP 的PA-RISC。


以上種種,無不是超越時代十年以上的先進思路,但畢竟水瓶座計劃是1980 年代產物,也勢必受那時某些「觀念包袱」拘束,如:


  • 指令編碼長度僅16 位元,意味蘋果極度重視指令碼密度,這點很「嵌入式」風格,也嚴重限制運算元和暫存器數量。


圖片
▲ 16 位元指令編碼長度嚴重局限指令集功能與擴充性,導致低效率雙運算元指令格式與數量不足的16 個通用數據暫存器。


  • 運算元格式仍是A = A + B(雙運算元),而不是有更佳暫存器利用效率的A = B + C(三運算元)。

  • 保有古老RISC 常見的分支延遲槽(Branch Delay Slot),始終執行分支后的指令。這對單一指令流水線不會造成麻煩,但當要加深流水線并實做超標量時,要填充的「槽」將不只一個,造成提高指令調度的困難度。

  • 缺少浮點運算單元,在1986 年不是主要問題(反正大多數人也沒有),但缺乏前瞻性。當PowerPC 601 問世,內建浮點運算早是標準配備。

  • 最后也是筆者對天蝎座技術規格最大的質疑點:蘋果企圖創造具多處理棄延展性的平臺,對重中之重的快取數據一致性(Cache Coherence),卻沒有相關協定(Protocol)的描述,似乎想借用大量快取存儲器控制指令的軟件手段達成。若蘋果的確這么想,真實世界效率想必慘不忍睹。光憑這點,就足以證明「荒謬」的程度。


一家不成,就多找幾家
蘋果從一連串「偉大的實驗」得到的慘痛教訓,莫過于「自己做不出來還不如找人一起合作」,接著就不知不覺推動了歷史巨輪,環環相扣,與Apple Silicon 的起源有千絲萬縷淵源。
1990 年11 月27 日,蘋果、Acorn RISC Machine(最初的ARM 全名)和VLSI 共同組建Advanced RISC Machines(現在的ARM,1998 年IPO 后改名ARM Ltd.)公司,蘋果擁有高達43% 股份。1993 年著名的失敗作Newton MessagePad 是蘋果第一個使用ARM 處理器的產品。
5G5qdIoprOJcEcv7EicYlWcqTtb52cZIqqerYCA/640?wx_fmt=png" data-type="png" data-w="408" data-index="7" data-origin-display="" _width="408px" crossorigin="anonymous" alt="圖片" src="http://www.doragonya.com/uploadfile/2022/1018/20221018124201558.jpg" data-fail="0" style="margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box !important; overflow-wrap: break-word !important; vertical-align: bottom; height: auto !important; display: initial; visibility: visible !important; width: 408px !important;"/>
▲ 1993 年Newton MessagePad 是蘋果第一個使用ARM 指令集兼容處理器ARM 610)的產品,也刺激DEC 發展高效能ARM 處理器的動力,促使StrongARM 和XScale 誕生。
剛好這年ARM 改變業務策略,轉做技術授權,帶頭逐步建立無晶圓廠芯片設計公司、晶圓代工業者和電子輔助設計(EDA)工具「三位一體」,也是現在我們熟悉的半導體產業樣貌。但由于蘋果1990 年代財務不佳,陸陸續續出脫ARM 股票。假如蘋果一直握有43% 股份,時下世界線絕對大不相同。
蘋果也跟「其他人」的ARM 有某種奇特關聯。1990 年蘋果眼見自己做處理器毫無指望,老伙伴Motorola 的RISC 大冒險之路又走得險象環生,一度對充滿傳奇色彩的效能王者DEC Alpha 處理器深感興趣。但蘋果被DEC 拒絕是一回事,看到Apple Newton 進入市場,讓DEC 產生進軍低功耗處理器的念頭,那又是另一回事。
DEC 主動接洽蘋果,詢問是否對高效能ARM 處理器感興趣,只得到「你們做不到,但如果你們能做,我們可能會用?!梗╕ou can′t do it, but, yeah, if you could we′d use it.)的曖昧回覆,于是DEC 跟ARM 一拍既合,「最強ARM 處理器」StrongARM就這樣誕生了,并成為英特爾的XScale。
換言之,處理器業界追求「能耗比」1990 年代初期就開始了,才不是最近幾年的新鮮事。喬布斯會在2005 年邀請英特爾CEO Paul Otellini 設計第一代iPhone 的移動處理器,理由確實顯而易見(打從一開始,DEC 本來就要為蘋果做StrongARM),絕非某些網絡「高見」聲稱蘋果要找英特爾研制「可滿足iPhone 需求的x86 處理器」(有點常識也知道這完全不可能,更何況Atom在2008 年才面世)。初代StrongARM 處理器SA-110 主要設計者之一芯片設計大師Daniel W. Dobberpuhl,2003 年成立 PA Semi,后變成Apple Silicon 研發團隊的骨干。
行文至此,請問各位──尤其是「果粉」──有沒有茅塞頓開、恍然大悟之感慨?看似天馬行空、不著邊際的「水瓶座」計劃,竟然引爆如此連鎖反應,進而塑造我們認知的計算機產業和封閉蘋果園。

推薦:回顧歷史夢幻處理器系列


  1. EETOP 官方微信

  2. 創芯大講堂 在線教育

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

相關文章

全部評論

  • 最新資訊
  • 最熱資訊
@2003-2022 EETOP

京ICP備10050787號   京公網安備:11010502037710

成Av人片在线观看无码t