股市投資 小副述文字一共二十個字小副述文字一共二十


基金ETF 小副述文字一共二十個字小副述文字一共二十


全球總經 小副述文字一共二十個字小副述文字一共二十


理財商業 小副述文字一共二十個字小副述文字一共二十


消費信用 小副述文字一共二十個字小副述文字一共二十


保險稅制 小副述文字一共二十個字小副述文字一共二十


房產生活 小副述文字一共二十個字小副述文字一共二十


 
看ARM如何搶走x86市場 後進者的逆襲
作者 Lynn
收藏文章
很開心您喜歡 Lynn 的文章, 追蹤此作者獲得第一手的好文吧!
Lynn
字體放大


分享至 Line

分享至 Facebook

分享至 Twitter


看ARM如何搶走x86市場 後進者的逆襲

2016 年 12 月 13 日

 
展開

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

ARM的獲利模式在於不自行生產晶片、僅授權ARM架構給處理器晶片設計商,客戶包括輝達(NVIDIA, NVDA-US)(Nvidia)、高通(Qualcomm, QCOM-US)、三星(Samsung)、德州儀器(Texas Instruments, TXN-US)(TI)等巨頭。然而究竟什麼是「架構」?ARM架構和Intel x86架構又有什麼不同?這對於安謀(ARM)和英特爾(Intel, INTC-US)公司又有什麼樣決定性的商業發展?

今天就讓我們來聊聊,什麼是處理器架構、與ARM和Intel x86的處理器架構的商業模式之爭。

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

CPU(Central Processing Unit, 中央處理器)是驅動整台電腦運作的中心樞紐,就像是電腦的大腦;若沒有CPU,電腦就無法使用。CPU的功能主要是執行電腦的指令、以及處理電腦軟體中的資料。

什麼是指令呢? 指令是低階語言的命令。我們可以對電腦以程式下達命令,比如加減乘除的運算;在高階語言中的命令稱為敘述(statements),在低階語言中稱為指令(instructions)。所謂的程式,就是指我們要電腦完成某一項工作,所下達的一連串命令。

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

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

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

然而電腦是看不懂高階語言的,因此我們需要將高階語言透過編譯器(Complier)將高階語言再轉成能直接與硬體溝通的低階語言。電腦唯一能讀懂的語言就是二進位制的機器語言(Machine Language),由0與1組成,比如00101001010101100111….別說你會撰寫到發瘋,連看懂都有困難。因此後來又發展出了組合語言(Assembly Language),改用較短的字串取代機器語言的0與1。

由於CPU只認得機器語言,因此組合語言所撰寫的程式依然需要經由組譯器(Assembler)來轉譯為機器碼。這個流程簡單來說,就是高階語言(C/C++, Java, Python, JavaScript…)得透過編譯器(Complier)轉成組合語言(Assembly Language)、再透過組譯程式(Assembler)轉譯成機器語言(Machine Language),機器才能讀得懂。

ARM-x86處理器架構之爭-02組合語言和機器語言一樣,是直接對CPU進行操作,因此依然屬於低階語言。比如高階語言你要算加法運算就直接寫1 + 1 = 2就好;然而組合語言你得對CPU中的暫存器下命令,寫成:add $s0, $s1, $s2,表示把編號s1和s2暫存器中的數字相加、並存回s0暫存器。

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

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

這時候電腦會輸出Output結果:Hello, World!。

同樣的一行字,來看看在組合語言中是怎麼寫的:

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

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

ARM-x86處理器架構之爭-05…天啊。

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

因為高階語言要讓機器理解,還須經過「編譯」這個步驟,不但執行程式的時間較長,所需的電腦資源(如記憶體大小)也較多。

低階語言雖然難懂,但效能強,無論執行效率還是占用資源都比高階語言少。也因為低階語言對硬體直接操作,一種組合語言會專用於某種電腦架構,而不像許多高階語言可以在不同系統平台之間移植。根據這種特性,我們能透過組合語言訂定「指令集架構」(Instruction Set Architecture)。

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

瞭解組合語言的概念後,終於可以來看看什麼是處理器的「架構」啦!

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

在低階語言指令中,會出現資料於特定硬體上操作或存取的資訊,工程師須受過硬體訓練才能瞭解低階語言;現在一般寫個網站、寫APP,無須了解記憶體和或硬體便可以操作了。要撰寫低階組合語言,除了學習指令、還得學習相關的硬體規定,就叫「指令集架構」(Instruction Set Architecture),依據相同指令集架構所造出來的計算機、要能執行指令集中的每一道指令。

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

指令集架構是電腦的基礎,也會影響作業系統的種類以及軟體的支援程度,每個指令集架構皆有各自的生態。現行的指令集架構非常多,知名的架構包括x86、ARM、MIPS。x86由Intel主導,也是目前個人電腦的主流架構,ARM則是採用授權的方式釋出, 在行動裝置的市佔率高達九成。MIPS則被應用於任天堂和Sony的遊戲機上。

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

事實上,規格簡單、造出來的機器才會簡單且效能強,1979年美國加州大學伯克萊分校提出了RISC的概念,精簡指令集(RISC)只提供基本指令,剩下的複雜指令由基本指令拼湊而成,講求CPU執行速度。

當然CISC並沒有被淘汰掉,CISC與RISC各有優劣,依據硬體製作需求而有所選擇。還記得本文開頭舉例的高階語言和低階語言程式碼的行數差異嗎? CISC提供較佳的程式撰寫環境,能在較短程式碼內達到目標,不僅讓工程師能在撰寫程式上更輕鬆、在早期電腦記憶體容量有限時也能以較少的指令運作複雜的運算。

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

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

晶片的運算效能與功耗成正比,代表若是晶片功能越強大,相對就更加耗電。晶片設計常要為了增強效能而犧牲功耗表現。比如2015年高通旗下產品Snapdragon 810的「發熱門」──無論是CPU還是GPU,Snapdragon 810性能與前代產品Snapdragon 801相比都有所提升,可惜功耗大、過熱問題嚴重,使得當年使用該產品的各廠牌旗艦智慧型手機紛紛陷入爭紛。

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

ARM的前身為Acorn Computer(艾康電腦),1978年創立於英國劍橋。後來因為艾康電腦的財務出現狀況,1990年分割出ARM成為獨立子公司。ARM建立之初,蘋果(Apple, AAPL-US)還持有其40%股份,只是後來陸續出脫,成為開發iPod, iPhone的資金。雖然蘋果一度想要買回ARM股權,甚至還提出了收購邀約,可惜被ARM執行長拒絕。

1985年,艾康電腦與蘋果公司(Apple Inc.)研發出採用精簡指令集的新型處理器,命名為ARM (Acorn RISC Machine, 後來更名為Advanced RISC Machine),又稱ARM 1。同年十月Intel發表80386處理器,ARM1的功能顯得相對簡單,效能也不敵80386,但耗電量明顯更低。這樣的差異使得ARM系列處理器往後的設計路線明顯與Intel不同,Intel持續邁向高效能的x86架構,ARM專注於低成本、低功耗的研發方向。

早期電腦的晶片注重效能更甚功耗,當時的桌上型電腦都有電源連接插座,在無須擔心耗電量的情況下只需比拚效能即可。然而當筆電、智慧型手機與平板逐漸普及,取代桌電成為主流電子市場時,面對運算性能要求不高卻注重續航力的產品,低功耗與低價位的晶片成為比效能更重要的考量點。(當然無論ARM還是Intel都會號稱自家產品具備低功耗高效能的特點啦。)

加上ARM獨特經營模式所擁有的競爭優勢──ARM本身並不直接生產晶片,商業模式採用授權智慧財產權的方式,由高通、聯發科(2454-TW)、三星等廠商使用ARM的指令集架構,再加入自家研發的技術,比如內顯GPU、3G/4G支援、省電機制…最後整合成一顆SoC(System on Chip, 系統單晶片)處理器。獲利模式簡單來說分成兩塊:一是一次性的對外授權收入,二是版稅、客戶每生產一塊晶片就要支付ARM一筆提成。

這與Intel的經營方式大相逕庭,自行研發、製造、出售的產品毛利高達50%,比純作授權的微薄利潤還高,大概得賣百來片ARM的晶片才抵過Intel賣一片晶片。其他廠商若要從頭開始研發x86這樣的架構可能得耗時二、三十年。藉由賺得的高額利潤,Intel能再投入大量的成本研發下一代處理器技術與生產線製程,甩競爭對手又一個世代。

以其對手AMD來說好了,研發一個內核架構至少需時5年以上,AMD的資本額與Intel相差幾十倍,技術落後、研發資金也不足,比起Intel的正向循環,AMD幾回惡性循環後導致公司虧損。AMD之所以被Intel留著只是為了不被反壟斷法控訴…。這種由Intel一家獨霸技術與市場的經營方式,也就是所謂的「一人吃餅、你吃餅屑」。

相比之下,ARM用便宜的價格進行大量的授權,不用投入高額資本於工廠產線。ARM架構能興起、還要感謝幕後功臣蘋果,除了早期共同研發精簡指令集架構(RISC)、出資讓ARM公司獨立出來,更重要地,還以使用ARM架構的iPhone, iPad 打開了行動運算市場,讓其他廠商紛紛能以低價購入ARM授權,進行智慧型手機晶片的研發。RISC之所以成為目前主流指令集,與行動裝置相輔相成,可謂時也、運也、命也,所謂「把市場養大大家一起吃餅」。

Intel不但在行動市場上慢了一步,在手機晶片上的思維也是固守x86架構,故而開發出使用x86架構的RISC晶片,導致功耗大。Intel有的是資本,不惜祭出高額的補貼政策以吸引手機廠使用,華碩(2357-TW)的Zenfone便搭載了Intel CPU,可惜有著耗電量過高的問題。即使後續Intel開發出Atom系列處理器,有著不遜於ARM晶片的低功耗、高性能特點,可惜鮮有人聞問之下,Intel宣布退出Sofia、Broxton兩款 Atom 處理器的開發,總共慘賠了數十億美元。

不是說Intel產品做得不好,現在的主流營運模式已不是直接販售處理器,而是透過智財授權方式營利。Intel若是學ARM的授權模式,收入將會比銷售最終產品的收入要低得多,難以讓Intel投入巨資研發的最新製程生產線、保持目前「高研發VS高毛利相互驅動」的商業模式。而ARM的設計與製造分開,較不會有這個問題。

由於ARM收費低廉,相較於Intel於2015年的營收達到516.9億美元,ARM的同年營收僅15 億美元。但十多年過去,ARM培養了一個遠比PC市場更龐大的陣營。與其說是Intel和ARM之間的對決、CISC與RISC的對決,倒不如說Intel對上的是各家取得安謀授權的半導體廠商,是經營模式的問題。我們更可以說,ARM已經被視為處理器架構設計領域的領導廠商,Intel則逐漸成為晶片先進製程製造領域的資本密集廠商。

今年四月,Intel日宣布將於2017年中前裁員1.2萬人,佔Intel全球13萬員工中的11%人力,是近10年來最大規模的裁員動作。此舉意味著Intel雖極力轉型,仍無法有效因應 個人電腦市場的衰退、並未能在行動裝置市場中扭轉頹勢。

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

今年八月, Intel再透露其10奈米FinFET製程全面支援ARM架構,並已與 ARM 簽定授權協議,生產ARM架構的處理器產品;第一批產品將用於LG和展訊上、LG和展訊分別採取的是10奈米和14奈米製程,在晶圓代工市場向台積電(2330-TW)、三星(Samsung)以及格羅方德(Globalfoundries)等競爭同業叫陣。

這樁合作案向市場承認了──手機應用是晶圓代工市場的最大宗,與ARM架構的王道地位。

 
週餘
 
 
分享文章
分享至 Line
分享至 Facebook
分享至 Twitter
收藏 已收藏
很開心您喜歡 Lynn 的文章, 追蹤此作者獲得第一手的好文吧!
Lynn
分享至 Line
分享至 Facebook
分享至 Twitter
地圖推薦
 
推薦您和本文相關的多維知識內容
什麼是地圖推薦?
推薦您和本文相關的多維知識內容