进入苹果最神秘的芯片实验室,回顾苹果历代 CPU 构架,展现 3 万亿公司成长之路
新智元報(bào)道
編輯:alan 潤(rùn)
【新智元導(dǎo)讀】蘋(píng)果創(chuàng)造了資本主義歷史上最成功的產(chǎn)品,成為第一家市值達(dá)到 1 萬(wàn)億美元的企業(yè)。讓我們一起探究蘋(píng)果最神秘的芯片研發(fā)部門(mén),回顧蘋(píng)果歷代 CPU 架構(gòu),從 1984 的 68k 到自研芯片。
最近蘋(píng)果終于對(duì)外公開(kāi)了公司內(nèi)部最神秘的部門(mén) —— 芯片研發(fā)中心,媒體第一次進(jìn)入這個(gè)部門(mén),一窺蘋(píng)果所有產(chǎn)品核心的誕生地。
從 2006 年開(kāi)始,驅(qū)動(dòng)著蘋(píng)果新業(yè)務(wù)的芯片都幾乎誕生于此。
而這里最新的成果是最近蘋(píng)果最近剛發(fā)布的 M3 芯片。
3nm 工藝的加持,讓 M 家族系列芯片性能大增。
蘋(píng)果創(chuàng)造了資本主義歷史上最成功的產(chǎn)品,成為第一家市值達(dá)到 1 萬(wàn)億美元的企業(yè)。
通過(guò)暢銷(xiāo)的 iPod 等產(chǎn)品、無(wú)與倫比的品牌推廣,以及史蒂夫?喬布斯的獨(dú)特魅力,成功地讓科技變得時(shí)尚和優(yōu)雅。
蘋(píng)果在硬件優(yōu)化方面的執(zhí)著令人印象深刻,從 1984 年發(fā)布 Mac 以來(lái),已經(jīng)三次改變了 CPU 架構(gòu)。
但是這并不是一件容易的事情。
每當(dāng)一家科技公司宣布要改變 CPU 架構(gòu)時(shí),人們普遍發(fā)出質(zhì)疑,這些公司是否能在整個(gè)軟件生態(tài)系統(tǒng)被拋棄的情況下生存下來(lái)。
在那個(gè)時(shí)代,軟件還是存儲(chǔ)在軟盤(pán)里,這種懷疑更加嚴(yán)重。
著名科技專(zhuān)欄作家約翰?德沃夏克曾表示,將 PowerPC 架構(gòu)轉(zhuǎn)變?yōu)橛⑻貭柕?x86 架構(gòu),為蘋(píng)果引入了 Windows 世界的前奏。打開(kāi)了蘋(píng)果與 Windows 更深入溝通的大門(mén)。
1984 年 Motorola 68k
1981 年,蘋(píng)果正在跌跌撞撞。
一開(kāi)始,Macintosh 是一種相對(duì)便宜的電腦,當(dāng)喬布斯領(lǐng)導(dǎo)下,Macintosh 開(kāi)始專(zhuān)注于一件事情:贏過(guò) LISA 團(tuán)隊(duì)。
喬布斯引入了一個(gè)超前的圖形用戶(hù)界面,而且要求他的團(tuán)隊(duì)使用最頂尖的硬件。
在 PC 領(lǐng)域,CPU 的選擇非常關(guān)鍵。
非常早期的個(gè)人電腦,使用的是 8bit 的 CPU。
但是,在 20 世紀(jì) 80 年代,如果想要設(shè)計(jì)一臺(tái)功能強(qiáng)大的 PC 電腦,需要選擇現(xiàn)代的 16bit 處理器架構(gòu)。
實(shí)際上,在當(dāng)時(shí),有三種主要的選擇:Intel 8088、Zilog Z8000 或 Motorola 68k。
CPU 和寄存器
讓我們回顧一下概念:
CPU 是一種將數(shù)據(jù)從計(jì)算機(jī)內(nèi)存 (RAM) 移至快速臨時(shí)內(nèi)存(寄存器)、對(duì)該數(shù)據(jù)運(yùn)行操作,然后將輸出移回內(nèi)存的設(shè)備。
寄存器是電子存儲(chǔ)器中最小的單元 —— 它們?cè)?CPU 的核心中只保存幾個(gè)位。CPU 按照指令(計(jì)算機(jī)程序)對(duì)該數(shù)據(jù)執(zhí)行操作,操作位是 1 和 0。
算數(shù)邏輯單元(ALU)
這些運(yùn)算由算術(shù)邏輯單元 (ALU) 執(zhí)行。這基本上是執(zhí)行簡(jiǎn)單、專(zhuān)門(mén)工作的電路的集合,例如:
將二進(jìn)制數(shù)相加,例如 0010 + 0101 = 0111
執(zhí)行邏輯運(yùn)算,例如 NOT 0000 = 1111
移動(dòng)位,例如 0011 左移 1 位變?yōu)?0110
CPU 的控制單元一次解碼一條指令,以決定哪些數(shù)據(jù)應(yīng)移至哪個(gè)寄存器,以及哪個(gè)寄存器的數(shù)據(jù)應(yīng)通過(guò)哪個(gè) ALU 電路。
非常快速地多次執(zhí)行這些操作,它會(huì)累加輸出,例如矩陣乘法、視頻游戲中的碰撞物理或?qū)D像數(shù)據(jù)光柵化為屏幕像素。
讓我們繼續(xù)回到蘋(píng)果。
Intel vs Zilog vs Motorola
假設(shè)您是蘋(píng)果公司的硬件副總裁,正在向喬布斯做演示。
首先,Intel 8088 有著 16 位微處理器,支持 640kB RAM,IBM PC 采用了這種芯片架構(gòu),因此擁有強(qiáng)大的現(xiàn)有軟件生態(tài)系統(tǒng),由于英特爾巨大的規(guī)模經(jīng)濟(jì),低端價(jià)格約為 35 美元(以 1983 年美元計(jì)算)。
而 Zilog Z8000 是純 16 位微處理器,支持 8MB RAM,很少有大型競(jìng)爭(zhēng)對(duì)手使用這種架構(gòu),最小的軟件生態(tài)系統(tǒng),中檔價(jià)格點(diǎn)約為 55 美元。
最后,Motorola 68k 有著 16/32 位微處理器,支持 16MB RAM,Atari 和 Commodore 使用這種芯片架構(gòu),以及一些現(xiàn)有的開(kāi)發(fā)生態(tài)系統(tǒng)。但是之前通過(guò) Apple I、Apple II 和 LISA 與 Motorola 建立了供應(yīng)商關(guān)系。
你會(huì)選擇哪種芯片架構(gòu)呢?
總的來(lái)說(shuō),選擇摩托羅拉 68k 處理器似乎是具有前瞻性的,這解釋了為什么 1984 年的 Macintosh 不同于其他電腦。
盡管它在開(kāi)發(fā)生態(tài)系統(tǒng)和兼容性方面不如主流的 IBM PC,但這個(gè)選擇為品牌帶來(lái)了差異化。
更重要的是,68k 擁有一個(gè)幾乎完全正交的指令集,這意味著幾乎每個(gè) CPU 操作都可以在幾乎每個(gè)寄存器上執(zhí)行,而許多競(jìng)爭(zhēng)的 CPU 則限制了指令的寄存器選擇。
這種正交性使 CPU 更容易編程,對(duì)于培育新興的軟件生態(tài)系統(tǒng)來(lái)說(shuō)是一個(gè)理想的選擇。
最終,16MB 的內(nèi)存尋址范圍變得極為重要,Macintosh 保留了頂部 12MB 的內(nèi)存供操作系統(tǒng)使用,同時(shí)共享了 4MB 的內(nèi)存給不同的軟件應(yīng)用程序。
如果查看 2012 年 16GB iPod Touch 中的可用存儲(chǔ)空間,你就會(huì)發(fā)現(xiàn)可用空間其實(shí)非常的少。
1994 年 PowerPC
時(shí)間是 1994 年。8 年前,史蒂夫?喬布斯 (Steve Jobs) 被蘋(píng)果公司趕下臺(tái),現(xiàn)在正忙于發(fā)明皮克斯 (Pixar) 和 NeXT。
蘋(píng)果正在失去相關(guān)性。
1994 年,當(dāng)時(shí)史蒂夫?喬布斯已經(jīng)離開(kāi)蘋(píng)果,開(kāi)始投身皮克斯和 NeXT 的創(chuàng)業(yè)事業(yè)時(shí),蘋(píng)果逐漸失去了市場(chǎng)影響力。
與之前的競(jìng)爭(zhēng)對(duì)手 IBM 相比,他們正在經(jīng)歷著微軟的競(jìng)爭(zhēng),這一過(guò)程既漫長(zhǎng)又痛苦。
在此期間,英特爾和比爾?蓋茨(在 20 世紀(jì) 90 年代被戲稱(chēng)為“魔鬼”)結(jié)成了一種名為 Wintel 的邪惡聯(lián)盟,這使得這兩家公司幾乎壟斷了市場(chǎng)。
這并不是要低估 x86 芯片架構(gòu)的威力,英特爾憑借其 100MHz 的速度和出色的能效表現(xiàn),獲得了市場(chǎng)主導(dǎo)地位。
而帶領(lǐng) Macintosh 進(jìn)入 90 年代的摩托羅拉 68k 系列芯片卻未能跟上發(fā)展。
面對(duì)壟斷的威脅,蘋(píng)果與長(zhǎng)期合作伙伴摩托羅拉以及不太可能的盟友 IBM 合作,旨在用團(tuán)結(jié)對(duì)抗資本主義勢(shì)力。
于是,AIM(蘋(píng)果、IBM、摩托羅拉)聯(lián)盟應(yīng)運(yùn)而生。他們認(rèn)識(shí)到 x86 架構(gòu)存在一個(gè)重要弱點(diǎn):它采用了 CISC 架構(gòu)。
為了應(yīng)對(duì)這一問(wèn)題,AIM 采用了 RISC 策略,即 PowerPC。
蘋(píng)果開(kāi)發(fā)了一個(gè)仿真器,使 PowerPC 能夠模擬摩托羅拉 CPU。這意味著它可以實(shí)時(shí)將指令從一種架構(gòu)轉(zhuǎn)換為另一種。
顯然,這會(huì)帶來(lái)性能成本。不過(guò),幸運(yùn)的是,由于 PowerPC CPU 非常強(qiáng)大,因此對(duì)于升級(jí)硬件的用戶(hù)來(lái)說(shuō),這種模擬通常不是大問(wèn)題。
蘋(píng)果采取的另一策略是在過(guò)渡期內(nèi)使用寬二進(jìn)制文件。這樣,軟件可以包含針對(duì) 68k 和 PowerPC 架構(gòu)編譯的代碼。
因此,工程師可以發(fā)布單個(gè)應(yīng)用程序,其中包含兩個(gè)單獨(dú)的二進(jìn)制文件,可以在兩種 Mac CPU 平臺(tái)上運(yùn)行。
在當(dāng)時(shí),硬盤(pán)驅(qū)動(dòng)器容量通常只有 80MB,這種情況變得很煩人。因此,出現(xiàn)了二進(jìn)制剝離工具,使最終用戶(hù)只需要保存適用于他們?cè)O(shè)備的文件。
總的來(lái)說(shuō),蘋(píng)果的過(guò)渡是成功的。從 68k 過(guò)渡到 PowerPC 帶來(lái)了巨大的性能提升。仿真和寬二進(jìn)制文件使軟件生態(tài)系統(tǒng)得以順利過(guò)渡。
然而,不幸的是,Wintel 聯(lián)盟幾乎沒(méi)有受到影響。隨著 Pentium 和 Windows 95 的發(fā)布,它們的市場(chǎng)主導(dǎo)地位達(dá)到了前所未有的水平。Windows 逐漸成為默認(rèn)的計(jì)算平臺(tái),將全球各地的學(xué)校 ICT 課程變成如何使用 Microsoft Office。
現(xiàn)在,他們已經(jīng)擁有了堅(jiān)實(shí)的硬件平臺(tái),而蘋(píng)果陳舊的 System 7 Mac 操作系統(tǒng)成為了主要障礙。
他們?cè)鴩L試內(nèi)部項(xiàng)目來(lái)創(chuàng)建 Windows 的競(jìng)爭(zhēng)對(duì)手,但未成功,因此他們不得不通過(guò)收購(gòu)的方式來(lái)解決這個(gè)問(wèn)題,即簡(jiǎn)單地購(gòu)買(mǎi)一個(gè)新的操作系統(tǒng)。
這為蘋(píng)果收購(gòu) NeXT 并迎回史蒂夫?喬布斯奠定了基礎(chǔ)。
2006 年 Intel x86
2000 年代初,蘋(píng)果再次恢復(fù)了魔力,喬布斯王者歸來(lái)之后,劃時(shí)代的 Mac OS X 以及 iPod 取得的成功使陷入困境的蘋(píng)果轉(zhuǎn)變?yōu)橄M(fèi)電子產(chǎn)品巨頭。
然而此時(shí)的 PowerPC 架構(gòu)卻未能跟上 Intel x86 龐然大物的步伐。
筆記本電腦的市場(chǎng)越來(lái)越龐大,而 PowerPC CPU 的耗電和發(fā)熱成為了劣勢(shì),無(wú)法打造出喬布斯所設(shè)想的超薄筆記本電腦。
2005 年全球開(kāi)發(fā)者大會(huì)上,喬布斯正式宣布從 PowerPC 架構(gòu) 轉(zhuǎn)向 Intel。到 2006 年,預(yù)計(jì)高端 Intel x86 處理器的每瓦性能將是 PowerPC 的近 5 倍,時(shí)鐘速度將提高近 1.5 倍。
那么,是什么讓 Intel x86 架構(gòu)如此出色?這里我們稍微討論一下 CPU 設(shè)計(jì)中的一些概念,以及當(dāng)時(shí)的英特爾在 CPU 各個(gè)方面上所進(jìn)行的創(chuàng)新。
CPU 緩存(Caches):
CPU 從內(nèi)存 (RAM) 獲取數(shù)據(jù)后,需要將其放入片上的寄存器中執(zhí)行操作。但 CPU 的時(shí)鐘頻率遠(yuǎn)高于 RAM,于是 RAM 成為了系統(tǒng)速度的瓶頸。
因此,CPU 發(fā)展了片上緩存(Caches)來(lái)存儲(chǔ)中等數(shù)量的數(shù)據(jù)。作為緩沖地帶更靠近芯片本身,并允許更快地訪問(wèn)必要的數(shù)據(jù)。
這些緩存本身是分層的:
計(jì)算機(jī)系統(tǒng)中存儲(chǔ)的分層遵循以上的金字塔結(jié)構(gòu),由下到上,存儲(chǔ)介質(zhì)的容量越來(lái)越小,但速度越來(lái)越快,充分利用了計(jì)算機(jī)程序的“局部性”原理,大大提高了整體的效率。
分支預(yù)測(cè)(Branch Prediction):
分支指令用于處理?xiàng)l件語(yǔ)句。聰明的 CPU 使用統(tǒng)計(jì)數(shù)據(jù)來(lái)猜測(cè)代碼的去向,并嘗試保持指令管道的填充以獲得最大利用率。
其機(jī)制涉及直接內(nèi)置于 CPU 電路中的硬件算法。稱(chēng)為分支歷史表的緩沖區(qū)緩存最近的分支結(jié)果。
超標(biāo)量架構(gòu)(Superscalar Architecture):
超標(biāo)量架構(gòu)是多任務(wù)處理的終極目標(biāo)。超標(biāo)量 CPU 可以在單個(gè)時(shí)鐘周期內(nèi)同時(shí)執(zhí)行多條指令。
這種架構(gòu)之所以有效,是因?yàn)樗阈g(shù)、在寄存器之間移動(dòng)內(nèi)存以及浮點(diǎn)運(yùn)算等操作需要 ALU 上的不同電路。
對(duì)于擁抱 Intel x86 這種重大的轉(zhuǎn)變,Apple 再次采用其歷史悠久的過(guò)渡技術(shù)來(lái)實(shí)現(xiàn) CPU 架構(gòu)的平穩(wěn)遷移。
Apple 推出了為兩種 CPU 架構(gòu)構(gòu)建的通用二進(jìn)制文件,可以通過(guò)簡(jiǎn)單的 Xcode 構(gòu)建配置進(jìn)行設(shè)置。
在硬件和軟件的共同助力之下,蘋(píng)果公司交付了完美的作品,實(shí)現(xiàn)了喬布斯的“超薄”夢(mèng)想,同時(shí)也將蘋(píng)果公司帶入了新的時(shí)代。
2020 年 蘋(píng)果芯片
了解喬布斯,了解蘋(píng)果的人,一定會(huì)明白他們的最終競(jìng)爭(zhēng)優(yōu)勢(shì):硬件和軟件的緊密集成。
2007 年發(fā)布的 iPhone 采用三星提供的 ARM CPU。而從 iPhone 4 開(kāi)始,蘋(píng)果開(kāi)始設(shè)計(jì)自己的芯片 A4。
2008 年,蘋(píng)果以 2.78 億美元收購(gòu)了 PA Semiconductor,這是一家以高端低功耗處理器聞名的 CPU 設(shè)計(jì)公司。
十年后的 2018 年,蘋(píng)果再次以 3 億美元的價(jià)格部分收購(gòu)了歐洲芯片設(shè)計(jì)公司 Dialog。
終于,在 2020 年,Apple 宣布了第三次偉大的 Mac CPU 架構(gòu)轉(zhuǎn)型 ——M1—— 預(yù)示著 Apple Silicon 時(shí)代的到來(lái)。
那么,對(duì)比前面所說(shuō)的 Intel X86 架構(gòu),M1 又有什么自己的秘密武器呢?
首先,M1 芯片采用異構(gòu)計(jì)算策略,這意味著針對(duì)特定工作負(fù)載使用專(zhuān)用的組件。M1 SoC 的組件專(zhuān)門(mén)用于許多計(jì)算任務(wù)。
其次,M1 芯片具有 GPU 和 CPU 之間共享的統(tǒng)一內(nèi)存架構(gòu),Apple 分配相同的內(nèi)存塊(RAM 和 L3 緩存)在兩個(gè)處理器之間共享,并且它的格式可以同時(shí)滿足 CPU 所需的高吞吐量以及 GPU 所偏好的大塊數(shù)據(jù)。
傳統(tǒng)情況下,當(dāng)將數(shù)據(jù)發(fā)送到外部 GPU 進(jìn)行處理時(shí),CPU 通常需要將數(shù)據(jù)復(fù)制到 GPU 擁有的內(nèi)存中,然后才能拾取數(shù)據(jù)進(jìn)行處理,而統(tǒng)一內(nèi)存架構(gòu)解決了這個(gè)問(wèn)題。
我們之前討論過(guò)超標(biāo)量架構(gòu),該架構(gòu)使 CPU 內(nèi)核能夠同時(shí)讀取、解碼和分派多個(gè)指令。M1 芯片憑借其 RISC 架構(gòu),使蘋(píng)果能夠通過(guò)亂序執(zhí)行將其提升到一個(gè)新的水平。
基本的 M1 芯片有 8 個(gè)解碼器,CPU 內(nèi)核在每個(gè)時(shí)鐘周期同時(shí)填充這些解碼器。這些指令被并行地分派到各種專(zhuān)用電路。
最后,M1 芯片上的所有部件在物理上都非常接近。即使電信號(hào)以閃電般的速度移動(dòng),當(dāng)傳輸距離較短時(shí),操作也會(huì)更快。
在上述種種設(shè)計(jì)的加持之下,蘋(píng)果自己的芯片性能不斷進(jìn)步,最終完成反超。
蘋(píng)果之所以是蘋(píng)果,也許正是來(lái)源于一直以來(lái)對(duì)于硬件和軟件的極致把控,那么,在開(kāi)源時(shí)代的今天,蘋(píng)果的未來(lái)又會(huì)怎么樣呢?
參考資料:
本文來(lái)自微信公眾號(hào):新智元 (ID:AI_era)
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,所有文章均包含本聲明。
總結(jié)
以上是生活随笔為你收集整理的进入苹果最神秘的芯片实验室,回顾苹果历代 CPU 构架,展现 3 万亿公司成长之路的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: AI 绘画碰上经典古诗词,当真是笑不活了
- 下一篇: BL 恋爱游戏,《仙剑奇侠传》开发商新作