看ARM如何搶走英特爾的x86市場––CPU市場上的逆襲!

半導體產業

Written by:

一天到晚看到科技新聞上談到的各家巨頭紛爭,卻搞不懂新聞中提到的詞彙和廠商策略嗎?

先為大家測試一下程度,如果都看得懂這些新聞在講什麼的讀者歡迎點下關閉離開~若您是看不懂的讀者… 那還不快跟著我、來一場為您精心準備的名詞解說與策略分析!保證看完本文,之後看新聞不再霧煞煞~

今天,我們要來針對上一篇文 一看就懂的半導體產業結構與名詞 一文中的「晶片設計服務提供商」模式,進行進一步的解說。

IP 提供商模式

(1) 領導廠商

> ARM、Imagination

(2) 特點

> 不設計和銷售晶片。

> 為晶片設計公司提供完整功能單元、電路設計架構與諮詢服務。

> 由於沒有實體產品、而是販賣智慧財產權「設計圖」,又稱矽智財(SIP)。

(3) 優勢

> 無龐大實體資產。公司規模較小、資金需求不高,但對於技術的要求非常高。

> 不必負擔產品銷售的市場風險。

(4) 劣勢

> 完全的市場壟斷。目前全球的 CPU 架構,以 Intel 的 X86 架構和 ARM 的 ARM 架構為兩大要角。

> 前者多用於 PC 和伺服器上,後者則幾乎壟斷了所有的行動通訊晶片、市佔率高達 95% 的智慧型手機。

技術門檻較高、累積技術的時間較長。

 

 

什麼叫「架構」?Intel面臨的行動市場逆襲

2016年7月時,軟銀 (SoftBank) 宣布斥資234億英鎊買下全球最大行動晶片設計授權商安謀(ARM),寫下「歐洲科技企業史上最大筆收購案」的紀錄。軟銀董事長孫正義指出,預計未來 20 年內,ARM 晶片的年產量將達到 1 兆片的規模。

等等,到底什麼叫 ARM 晶片?

你聽過 Android、iOS 手機,那你知道無論Android 還是 iOS 手機都是用 ARM 架構的晶片、連 NVIDIA 的 CPU 晶片也是使用 ARM 架構嗎 (可惜現在已經退出)?所以 ARM 到底是在幹麻?

你知道你自己正在用的手機的 CPU,正是 ARM 架構嗎?

那你知道你的手機如果不是 iPhone 或三星,很有可能就是用高通設計的晶片嗎?蛤?那 ARM 和高通又有什麼關係?

聽說,是 ARM 賣架構給高通這家 IC 設計公司、高通買回來再設計自己的晶片… 所以講來講去,到底什麼是「架構」?(晶片架構、處理器架構… 到底這個「架構」是在講什麼?)聽說,伺服器用的晶片架構主要是 x86、手機晶片用的則都是 ARM,到底為什麼?

怎麼那麼多的為什麼啦!吼,繞來繞去聽不懂啦。別急,看完這篇文章就知道 ARM 和 Intel 在幹麻、又是怎麼在行動通訊市場上打群架的了。

對電腦下命令: 高階語言與低階語言

CPU (Central Processing Unit, 中央處理器) 是驅動整台電腦運作的中心樞紐,就像是電腦的大腦;若沒有CPU,電腦就無法使用。

CPU 的功能主要是執行電腦的指令、以及處理電腦軟體中的資料。

什麼是指令呢?指令是低階語言的命令。我們可以對電腦以程式下達命令,比如加減乘除的運算;在高階語言中的命令稱為「敘述」 (statements),在低階語言中則稱為「指令」 (instructions)

所謂的程式,就是指我們要電腦完成某一項工作,所下達的一連串命令。

14915197_1246067152133734_8202883558033878338_n.jpg

等等!什麼又是高階語言和低階語言呢?

高階語言是目前最常見的程式語言,平常我們聽到的程式語言,比如 C/C++、都是高階語言。高階語言以人類的日常語言英文為基礎,使用一般人易於接受的文字來表示,可讀性高。

然而電腦是看不懂高階語言的,因此我們需要將高階語言透過編譯器 (Complier) 將高階語言再轉成能直接與硬體溝通的低階語言。

電腦唯一能讀懂的語言就是二進位制的「機器語言」 (Machine Language),由0與1組成,比如00101001010101100111…. 別說你會撰寫到發瘋,連看懂都有困難。

因此後來又發展出了「組合語言」 (Assembly Language),改用較短的字串取代機器語言的0與1,讓人類比較好看的懂。

由於CPU只認得機器語言,因此組合語言所撰寫的程式依然需要經由「組譯器」 (Assembler) 來轉譯為機器碼。組合語言每一行直接對應到的幾乎就是一個機器碼,高階語言則無。

這個流程簡單來說,就是高階語言 (C/C++) 得透過編譯器 (Complier) 轉成組合語言 (Assembly Language)、再透過組譯程式 (Assembler) 轉譯成機器碼(Machine Code),機器才能讀得懂。

螢幕快照 2017-04-14 23.14.38.png

低階語言不用耗費編譯流程、即可被 CPU 所執行,因此以低階程式語言編寫的程式,其運作效率會較高階語言更高。然而可能別人寫兩三行就解決的程式、你要寫數十行數百行而已。就是看人類方便(高階語言)、還是機器方便(低階語言)。

這麼講大家可能很難理解,來做個示範吧!如果我們希望電腦輸出「Hello, World!」這行字,在高階語言中會這樣寫 (範例為C語言):

ARM-x86處理器架構之爭-03

這時候電腦會輸出Output結果:Hello, World!。同樣的一行字,來看看在組合語言中是怎麼寫的:

ARM-x86處理器架構之爭-04

這時候你可能已經有:「這東西是什麼!!!」的想法了… 別急,最後來看看機器語言會怎麼寫:

ARM-x86處理器架構之爭-05

…天啊。這誰看得懂。

我們可以明顯發現,高階語言的一個敘述可以對應到多個低階語言的指令,比低階語言更易撰寫、也較好閱讀。這樣的話,為什麼還要有低階語言呢?

事實上,不是「為什麼還要有低階語言」,而是一開始的電腦就只有低階語言!高階語言是後面才發展出來的東西,方便人類好寫且好讀懂。

可以說:「低階語言是要給機器看的、高階語言是給人看的」。如果是底層的嵌入式系統,有些工程師還是要直接去寫組合語言。

也就是說,高階語言和低階語言的功能不同,不能直接相比。高階語言是來幫助我們進行抽象化的設計、讓我們能描述出需要的行為,而不是去 Micro Control 每一行機器要跑的指令。

但高階語言要讓機器理解,還須經過編譯器的「編譯」這個步驟。編譯後的結果,會直接影響電腦執行該程式的效能。

就像是一個翻譯人員把中文翻成英文一樣,如果翻的好的話一樣很優美、能達到最理想的效果;如果翻不好的話,就會變得很糟糕。台灣一家新創 Skymizer 就是在做編譯器的優化,讓相同的程式碼經過更優化的編譯器後、能在電腦上跑更快噢!

低階語言雖然難懂,但硬體能不經編譯器、直接執行。(不過機器只能看懂0/1,所以如果是組合語言的話,還要經過 組譯器翻譯 => 機器語言)

也因為低階語言對硬體直接操作,一種組合語言會專用於某種電腦架構,而不像許多高階語言可以在不同系統平台之間移植。根據這種特性,我們能透過組合語言訂定「指令集」,和該指令集依附的「指令集架構」。

 

指令集架構: 電腦的製作基礎

一天到晚聽到 ARM 架構、x86 架構,聽得很煩、卻又不知道是什麼意思嗎ˊ_>ˋ… 別再當科技新聞小白,瞭解低階語言的概念後,終於可以來看看什麼是處理器的「架構」啦!

低階語言的「指令」是處理器 (CPU )可以執行的最基本運算, 一款處理器所能支援執行的「所有指令的總集合」,就稱為指令集 (Instructions)

在低階語言指令中,會出現資料於特定硬體上操作或存取的資訊,工程師須受過硬體訓練才能瞭解低階語言;現在一般寫個網站、寫 APP 都用高階語言,無須了解記憶體和或硬體便可以操作了。

然而要造計算機,除了指令、還得制定與該指令集相關的硬體規定,就叫「指令集架構」(Instruction Set Architecture)。

現在讓我們要來講一個如何造出一顆 CPU 的故事。有天有位軟體工程師小智、和設計 CPU 的硬體工程師小皮湊在一起。

『工具人_軟體小智』:「好基友,一起來造顆 CPU吧!看要怎麼合作呢?(貼圖)」

『社畜__硬體小皮』:「好!不然這樣好了,你負責編寫能跑在 CPU 上的指令,我負責設計 CPU的硬體零件。咱分頭進行,一年後在這邊碰面,兩邊再合在一起!」

『工具人_軟體小智』:「等等,這樣我們各幹各的,誰知道一年後合在一起時會不會爆炸!怎麼能保證我寫的指令,能在你設計的 CPU 上跑得起來呢?」

『社畜_硬體小皮』:「 這樣好了,我們共同把規則定好,再去分頭進行設計軟體和硬體,才能保證一年後碰面時,軟體和硬體能順利地結合在一起、你我不分開 <3」

這個規則,就是「指令集架構」(ISA),包含了軟體與硬體兩部分。

可以說,從上游設計、到下游製造的 IC 工業鏈,全部都是圍繞著一個指令集為基礎,來量身定做該指令集的「軟體指令」和「其所依附的硬體零件」。

所以說,指令集就是造計算機的規格。一旦決定了指令集後、我們就可以著手設計計算機。相同規格的計算機,可以有不同的實作方式;但依據相同指令集架構所造出來的計算機、要能執行指令集中的每一道指令。

所以你會看到 ARM 指令集有很多不同的處理器(高通、聯發科、展訊…),但他們都可以執行所有 ARM 架構的指令。差別在不同廠商的晶片,會再加上其他作為競爭力的功能,比如通訊、照相等等。

螢幕快照 2017-04-14 16.57.51.png

發現了嗎,這是一件很驚人的事情!一旦決定了指令集架構,整個 IC 工業鏈幾百億幾千億的市值,都會圍繞在該指令集架構上從頭到尾進行量身定做,因此一旦被市場所接受、就相當容易形成壟斷的情況。

指令集架構是電腦的基礎,也會影響作業系統的種類以及軟體的支援程度,每個指令集架構皆有各自的生態。現行的指令集架構非常多,知名的架構包括 x86、ARM、MIPS 等。

x86 由 Intel 主導,也是目前個人電腦的主流架構,ARM 則是採用授權的方式釋出, 在行動裝置的市佔率高達九成。MIPS 則被應用於任天堂和 Sony 的遊戲機上。

指令集可依據 CPU 的設計目的,分為「複雜指令集」 (CISC) 和「精簡指令集」 (RISC)。在1980年代前,指令集越做越複雜;為了支援這些指令集,導致電腦的硬體結構也越來越複雜。然而,在複雜指令集中,僅有 20% 的指令最常被使用、剩下 80% 指令使用率相對低。

事實上,規格簡單、造出來的機器才會簡單且效能強。

1979 年美國加州大學伯克萊分校提出了 RISC 的概念,精簡指令集 (RISC) 只提供基本指令,剩下的複雜指令由基本指令拼湊而成,講求 CPU 執行速度。

想想看,不會因為英文只有 26 個字母,就讓我們的溝通受到限制;同理,指令集也不會因為個別指令能完成的功能較簡單而受到限制。

當然 CISC 並沒有被淘汰掉,CISC 與 RISC 各有優劣,依據硬體製作需求而有所選擇。

還記得本文開頭舉例的高階語言和低階語言程式碼的行數差異嗎?相同的道理, CISC 提供較佳的程式撰寫環境,能在較短程式碼內達到目標。不僅讓工程師能在撰寫程式上更輕鬆、在早期電腦記憶體容量有限時,也能以較少的指令運作複雜的運算。

RISC 處理器的規格則是要簡單許多,高階語言藉由編譯 (Compile) 轉成 RISC 指令很有效率,容易量產、價格更便宜、提升速度也很快,重點是低功耗、耗電量低。晶片業由傳統巨頭 Intel 導向 ARM 的翻盤, 來自 RISC 的革新絕對是位大功臣。

ARM-x86處理器架構之爭-06

Intel 與 ARM: 高效能與低功耗之爭

晶片的運算效能與功耗成正比,代表若是晶片功能越強大,相對就更加耗電。

晶片設計常要為了增強效能而犧牲功耗表現。比如 2015 年高通旗下產品 Snapdragon 810 的「發熱門」事件──無論是 CPU 還是 GPU,Snapdragon 810 性能與前代產品 Snapdragon 801 相比都有所提升。

可惜 Snapdragon 810 ,和 下一代的 Snapdragon 820 都有著功耗大、發熱嚴重的問題,使得當年使用該產品的各廠牌旗艦智慧型手機紛紛陷入爭紛。

Intel和ARM間的競爭,莫過於高效能與低功耗的取捨,與傳統「一人吃餅、你吃餅屑」和「把市場養大大家一起吃餅」的經營差異。

ARM的前身為Acorn Computer (艾康電腦),1978年創立於英國劍橋。後來因為艾康電腦的財務出現狀況,1990年分割出ARM成為獨立子公司。

ARM建立之初,蘋果還持有其 40% 股份,只是後來陸續出脫,成為開發iPod、iPhone的資金。雖然蘋果一度想要買回 ARM 股權,甚至還提出了收購邀約,可惜被ARM執行長拒絕。想想如果蘋果當初還持有 ARM,到現在會變成多驚人的結果。

1985年,艾康電腦與蘋果公司研發出採用精簡指令集的新型處理器,命名為ARM (Acorn RISC Machine, 後來更名為Advanced RISC Machine),又稱ARM 1。同年十月,Intel 也發表了80386處理器。

ARM1 的功能顯得相對簡單,效能也不敵 80386,但耗電量明顯更低。這樣的差異使得 ARM 系列處理器往後的設計路線明顯與 Intel 不同,Intel持續邁向高效能的 x86 架構,ARM 專注於低成本、低功耗的研發方向。

早期電腦的晶片注重效能更甚功耗,當時的桌上型電腦都有電源連接插座,在無須擔心耗電量的情況下只需比拚效能即可。

然而當筆電、智慧型手機與平板逐漸普及,取代桌電成為主流電子市場時,面對運算性能要求不高卻注重續航力的產品,低功耗與低價位的晶片成為比效能更重要的考量點。(當然,無論ARM還是Intel都會號稱自家產品具備低功耗高效能的特點啦)

加上 ARM 獨特經營模式所擁有的競爭優勢──ARM 本身並不直接生產晶片,商業模式採用授權智慧財產權的方式,由高通、聯發科、三星等廠商使用 ARM 的指令集架構,再加入自家研發的技術,比如內顯 GPU、3G/4G 支援、省電機制… 最後整合成一顆SoC (System on Chip, 系統單晶片) 處理器。

獲利模式簡單來說分成兩塊:一是一次性的對外授權收入,二是版稅、客戶每生產一塊晶片就要支付 ARM 一筆提成。

這與 Intel 的經營方式大相逕庭,自行研發、製造、出售的產品毛利高達50%,比純作授權的微薄利潤還高,大概得賣百來片 ARM 的晶片才抵過 Intel 賣一片晶片。

其他廠商若要從頭開始研發 x86 這樣的架構可能得耗時二、三十年。藉由賺得的高額利潤,Intel能再投入大量的成本研發下一代處理器技術與生產線製程,甩競爭對手又一個世代。

以其對手 AMD 來說好了AMD 的資本額與 Intel 相差幾十倍,製程技術落後(誰叫他要包給格羅方德呢…)、研發資金也不足,比起 Intel 的正向循環,AMD 幾回惡性循環後導致公司虧損。

AMD 之所以被 Intel 留著只是為了不被反壟斷法控訴…。這種由 Intel 一家獨霸技術與市場的經營方式,也就是所謂的「一人吃餅、你吃餅屑」。

相比之下,ARM 用便宜的價格進行大量的授權,不用投入高額資本於工廠產線。

ARM 架構能興起、還要感謝幕後功臣蘋果,除了早期共同研發精簡指令集架構 (RISC)、出資讓 ARM 公司獨立出來,更重要地,還以使用 ARM 架構的 iPhone、iPad 打開了行動運算市場,讓其他廠商紛紛能以低價購入 ARM 授權,進行智慧型手機晶片的研發。

RISC之所以成為目前主流指令集,與行動裝置相輔相成,可謂時也、運也、命也,所謂「把市場養大大家一起吃餅」。

螢幕快照 2017-04-14 17.01.54

Intel 不但在行動市場上慢了一步,在手機晶片上的思維也是固守 x86 架構,故而開發出使用 x86架構的 RISC 晶片,導致功耗大。Intel 有的是資本,不惜祭出高額的補貼政策以吸引手機廠使用,華碩的 Zenfone 便搭載了 Intel CPU,

可惜有著耗電量過高的問題。即使後續 Intel 開發出 Atom 系列處理器,有著不遜於 ARM 晶片的低功耗、高性能特點,可惜鮮有人聞問之下,Intel 宣布退出 Sofia、Broxton 兩款 Atom 處理器的開發,總共慘賠了數十億美元。

不是說 Intel 產品做得不好,現在的主流營運模式已不是直接販售處理器,而是透過智財授權方式營利。

Intel 若是學 ARM 的授權模式,收入將會比銷售最終產品的收入要低得多,難以讓 Intel 投入巨資研發的最新製程生產線、保持目前「高研發VS高毛利相互驅動」的商業模式。而 ARM 的設計與製造分開,較不會有這個問題。

等於說 Intel 作為 IDM,被原有斥資規模甚巨的廠房所拖累,讓 Intel 若想轉型成純 IC 設計公司會有相當困難。

 ARM 則收費低廉,相較於 Intel 於 2015 年的營收達到 516.9 億美元,ARM 的同年營收僅 15  億美元。

但十多年過去,ARM 培養了一個遠比 PC 市場更龐大的陣營。

與其說是 Intel 和 ARM 之間的對決、CISC 與 RISC 的對決,倒不如說 Intel 對上的是各家取得ARM 授權的半導體廠商,是經營模式的問題。

行動通訊市場上的「ARM+高通」的模式,正鯨吞蠶食 Intel 的晶片銷售量;去年 12 月也傳出消息,高通預計在 2017 年推出基於 ARM 架構打造的 Centriq 2400 處理器,想要從行動通訊市場上跨界過來、搶食 Intel x86架構目前穩拿的 PC 和伺服器市場。

2016 年4 月,Intel 日宣布將於 2017 年中前裁員 1.2 萬人,佔 Intel 全球13萬員工中的 11% 人力,是近十年來最大規模的裁員動作。

此舉意味著 Intel 雖極力轉型,仍無法有效因應個人電腦市場的衰退、並未能在行動裝置市場中扭轉頹勢。

ARM與x86處理器架構之爭-07

2016 年 8 月, Intel 再透露其 10 奈米 FinFET 製程全面支援 ARM 架構,並已與 ARM 簽定授權協議,生產 ARM 架構的處理器產品;第一批產品將用於 LG 和展訊上。

LG 和展訊分別採取的是 10 奈米和 14 奈米製程,由此 Intel 將在晶圓代工市場向台積電、三星、以及格羅方德等競爭同業叫陣。

我們已經可以說,ARM 已經被視為處理器架構設計領域的領導廠商,Intel 則逐漸成為晶片先進製程製造領域的資本密集廠商。(也就是有轉變成 ARM 代工廠的趨勢…)

這樁合作案同時向市場承認了──行動通訊才是晶圓代工市場的最大宗應用,與ARM架構的王道地位。

 

好啦,就讓我們來重新測試看看,讀者看完這篇文章之後,以下這些新聞看懂了沒:

如果還看不懂的話,那麼… 請再回去看一次文章吧!(小編絕不會承認是自己文章寫不好的OwQ)

— 備註:【高通、聯發科、三星使用 ARM 指令集做晶片?】

雖然我們在內文中提到,由高通、聯發科、三星等廠商使用 ARM 的指令集架構,再加入自家研發的技術。

然而針對這句話我要稍作解釋,高通和聯發科對 ARM 指令集的「使用方式」可是有稍稍不同呢。

ARM 有出指令集,也有出公版的晶片,簡單說就是直接一個已經做好的陽春版晶片電路,這種賣設計圖的智慧財產權,就叫賣 IP。

蘋果、高通、三星等廠商都是向 ARM 買指令集,再自己設計電路,大概是嫌 ARM 自己做的晶片效能不夠。然而聯發科和其他幾家廠商不一樣,買的是 IP(公版)來兜自己的晶片,不自己從頭設計電路。

要說這家公司研發能力和高通有的比嗎?當 Intel 入股展訊,小米、華為也在做自己的自製晶片,加上一堆中國 IC 設計小公司紛紛崛起,大家都能直接向 ARM 買現成 IP 就能出晶片搭在白牌手機上,聯發科的競爭力勢必…?

而且聯發科身為台灣 IC 設計龍頭廠商,一旦被追過,台灣剩下的其他家 IC 設計廠又真的打得過嗎…?噓,在這邊我就不多說了。

下一篇開始,就讓我們來聊聊高通、聯發科、展訊等廠商的競爭策略吧。

 

 


寫點科普,請給指教」 是一個專注於對各產業現況進行科普的寫作計畫。

部分圖片來自於我和「股感知識庫」的合作。 若讀者閱罷、對該產業的投資標的有興趣, 也歡迎參考這個優質的財經知識網站噢!

15 Replies to “看ARM如何搶走英特爾的x86市場––CPU市場上的逆襲!”

  1. Gabriel 說:

    文章很好,但有個小錯誤。 ARM, Imagination 是屬於 SIP 廠商 (如文內所寫)。 Design Service 通常是指 GUC,Alchip 等幫客戶做IC設計的服務。

    • Lynn 說:

      這其實是我自己包的詞,想要把設計代工服務、SIP、eda tool 廠商等輔助IC設計公司的企業全都包成一包XDD”” 不過可能還是不要這樣講好了哈哈,感謝您的提醒!

  2. 近年…似乎CISC越來越不存在優勢了
    除了GOOGLE最近推的深度演算法要用自己的CISC晶片去跑比較快之外

  3. […] 結合我們先前在 Intel x86 與 ARM 架構大戰 一文中介紹過的——任何產品在設計的時候,都要先制定規格、再依據規格設計出相應的產品。當我們想要設計 CPU 時,要制定的規格就是「指令集架構」(Instruction Set Architecture, ISA )。 […]

  4. […] 〔6〕IC設計戰爭 – Intel v.s. ARM […]

  5. 鄭期文 說:

    身為ARM的工程師立刻把這篇存起來
    不然每次都要跟別人解釋都要先說我們不是賣軍火也不是賣健身器材的

  6. 陳冠穎 說:

    感謝作者詳細的介紹 寫的非常容易看懂
    想再問幾個問題確認一下
    所以 目前蘋果的處理器都是用RISC指令集的ARM架構嗎?
    是從以前就開始了 還是曾經有換過呢?

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *