ARM、ARM、ARM,沒錯ARM仿佛一夜之間就火了,平板、手機等領(lǐng)域隨處可見它的影子,甚至已經(jīng)有人預言未來有相當一部分原屬于傳統(tǒng)x86勢力范圍 的臺式機份額也將被ARM占據(jù)。在這種情況下,大家不可避免地將ARM和傳統(tǒng)的x86處理器進行比較,有力挺ARM的,也有支持x86的。事實上,ARM 并非突然冒起,它幾乎和x86同時崛起于上個世紀末期。
那么,目前ARMCISC和RISC是現(xiàn)代微處理器的兩大基礎(chǔ)指令集結(jié)構(gòu)。從技術(shù)和歷史角度來 看,CISC和RISC的誕生和發(fā)展并非是你死我活的關(guān)系,RISC被提出后,才將傳統(tǒng)的指令集系統(tǒng)稱為CISC。而結(jié)構(gòu)體系上的不同又令兩者在發(fā)展道路 上分道揚鑣,漸行漸遠。在這漫長的發(fā)展過程中,RISC也曾經(jīng)努力過,力求進入CISC的領(lǐng)域;
CISC也奮斗過,希望在RISC的世界中分得一杯羹。
ARM是基于RISC的產(chǎn)品,而PC的代言人是x86,基于CISC。ARM、x86之爭,其實就是RISC和CISC之爭。RISC和CISC在長達 30年的糾葛之后,再一次正面碰撞到了一起。如果說之前的RISC和CISC的碰撞都只是部分領(lǐng)域的小打小鬧,那么現(xiàn)在ARM和x86有可能帶來的是一場 技術(shù)革命,一場全局化的戰(zhàn)爭。今天,我們將追本溯源,來看看RISC和CISC在歷史上的交鋒,和那些鮮為人知的故事。
今天,業(yè)內(nèi)普遍認為PC性能的提升,特別是CPU性能的提升,動力來自于晶體管制造技術(shù)的不斷進步。只有晶體管數(shù)量更多、運行頻率更高,才能在單位時間內(nèi) 完成更多的工作任務,這也是上個世紀70年代以前的PC發(fā)展主流思想。當時的計算機速度很慢,特別是存儲速度非常慢,廣泛使用的慢速磁帶存儲設備以及大容 量內(nèi)存的缺乏,讓計算機對每一字節(jié)空間的應用都很珍惜。在這樣的情況下,人們傾向于在一條指令中完成更多的工作,比如“從內(nèi)存和寄存器讀取數(shù)據(jù)相加后,寫 入內(nèi)存”。這實際上是四條指令,首先是從內(nèi)存讀取數(shù)據(jù),其次是從寄存器讀取數(shù)據(jù),第三是相加,最后才是寫入內(nèi)存。一條指令可以完成四項工作,這是當時計算 機的主流設計方案。
在上世紀70年代左右,IBM以及其他企業(yè)的從業(yè)人員發(fā)現(xiàn),目前的PC發(fā)展方向存在一定的問題。如果按照現(xiàn)在指令集發(fā)展的方向繼續(xù)發(fā)展的話,那么現(xiàn)有的指 令集系統(tǒng)會越來越復雜。而同時期編譯器的流行,讓這種情況發(fā)生了變化:一方面指令集越來越復雜,一方面編譯器卻很少使用這么多復雜的指令集。而且如此多的 復雜指令,CPU難以對每一個指令都做出優(yōu)化,甚至部分復雜指令本身耗費的時間反而更多。對這件事情的總結(jié),就是后來著名的“8020”定律,也就是在所 有的指令集中,只有20%最常用,80%基本上罕有問津。
時間進入了1980年代, Reduced Instruction Set Computing,也就是RISC精簡指令集開始出現(xiàn)。這種指令集的優(yōu)勢在于將計算機中最常用的20%的指令集集中優(yōu)化,而剩下的不常用的80%則采用 拆分為常用指令集等方式運行。在RISC提出之后,人們才賦予了傳統(tǒng)指令集一個正式的名稱:Complex Instruction Set Computing,也就是CISC復雜指令集。一時間,掀起了關(guān)于RISC和CISC究竟誰更好的爭論。
英特爾的選擇 在指令集爭論還沒有結(jié)束的時候,英特爾在IBM不屑一顧地眼光下接下了為IBM生產(chǎn)民用PC的中央處理器的業(yè)務。實際上IBM并非無法自己生產(chǎn)CPU,而 是IBM覺得個人PC遠沒有大型主機的利潤高,自家的Power架構(gòu)用在兼容機上實在是“殺雞焉用牛刀”。英特爾于是在之前研發(fā)的C4004處理器的基礎(chǔ) 上繼續(xù)開發(fā)——C4004處理器也并非英特爾自愿開發(fā)的產(chǎn)品,而是來自于日本一家名為Busicom的廠商的訂貨需求。也就是這個訂貨需求,為日后的 x86的發(fā)展打下了基礎(chǔ)。
兼容PC的發(fā)展,帶來了全球的信息化革命大潮。
很快英特爾生產(chǎn)了8086處理器,并依靠PC的快速發(fā)展一炮走紅。這個時間段恰好是RISC開始嶄露頭角,CISC被眾人鄙視的年代。在RISC提出后, 業(yè)內(nèi)對RISC的未來發(fā)展進行了幾乎一邊倒的贊揚。從教學開始,美國大學計算機原理和系統(tǒng)結(jié)構(gòu)的教材和教學模式全部來自于RISC的發(fā)明人 Hennessy的理論,介紹的內(nèi)容則是Hennessy研發(fā)的以RISC為基礎(chǔ)的MIPS架構(gòu)。而當時的研發(fā)論文IEEE和ACM發(fā)表的內(nèi)容也基本上都 對RISC提出了各種褒揚,x86以及CISC被認為是沒有什么前途的東西。
英特爾在當時的確是一個小公司,旗下只有幾款產(chǎn)品,CPU業(yè)務也才剛起步。面對整個業(yè)界一邊倒向RISC的現(xiàn)狀,英特爾要么一條道走到黑繼續(xù)兼容自己的 8086下定決心做x86,要么放棄看起來沒有什么希望的CISC投入RISC的懷抱。實際上當時PC剛剛起步,市場空間和前景極為龐大,如果放棄PC市 場,可能對英特爾未來的發(fā)展帶來巨大的不確定性。況且當時的PC用戶已經(jīng)有不少了,加上市場慣性,英特爾至少可以堅持開發(fā)兩三代產(chǎn)品滿足這部分PC用戶的 需求。在這樣的情況下,英特爾毅然決定繼續(xù)開發(fā)x86,于是80286和80386等產(chǎn)品依次出爐。后來的事情大家都知道了,英特爾依靠PC市場賺得盆滿 缽盈,堅定了其在x86市場繼續(xù)發(fā)力的決心。
高性能的RISC沒有進入通用PC市場 PC市場拱手讓人、甚至連專利都沒有注冊,堪稱IBM百年來最大的失誤??粗约寒斈觌S意選擇的英特爾漸漸成長為可與自己匹敵的業(yè)界巨頭,就連“備 胎”AMD(AMD當時是IBM根據(jù)反壟斷條例而選擇的x86處理器第二供貨商)都逐漸發(fā)展壯大,IBM后悔不迭。不過沒關(guān)系,RISC還在,IBM還可 以在高性能市場上呼風喚雨。
事實上,在上世紀80年代中末期,大量基于RISC的新指令集和產(chǎn)品的問世,讓人們看到了精簡指令集的威力。SGI的工作站基于MIPS,速度超 群;IBM的Power系列就不用說了,堪稱巨型計算機的首選產(chǎn)品;還有DEC Alpha架構(gòu)的處理器,都是RISC的代表之作。RISC在高性能計算機上展現(xiàn)出的強大魅力,讓用戶和業(yè)界為之神往。
在這種情況下,英特爾也坐不住了。俗話說,吃著碗里的,看著鍋里的。英特爾碗里面吃著x86這塊大肥肉,鍋里的RISC雖然是小肥牛,但也的確不錯。于 是,英特爾秘密開發(fā)了基于RISC的處理器80860,希望打入通用計算機市場。但問題是,誰用呢?PC已經(jīng)是x86架構(gòu)了,RISC連兼容的操作系統(tǒng)和 軟件都沒有,從頭去建立生態(tài)系統(tǒng)和軟件圈子,當時的英特爾很難成功。但英特爾決定多做一代試試看,于是不久之后又推出了新的80960處理器,依舊是 RISC架構(gòu),向下兼容80860,繼續(xù)延續(xù)完全賣不動的“宿命”。于是英特爾想想干脆算了,直接做x86,一條道走到黑![!--empirenews.page--]
被拒絕的Acorn 亂世出英雄,在上世紀70年代末80年代初,RISC剛被提出、CISC被眾人鄙視、PC剛剛起步的亂世年代,一家小公司的出現(xiàn),改變了RISC和CISC在業(yè)界的態(tài)勢。
就是在這間倉庫中,ARM公司的幾大股東在一起開會,對全球移動計算市場產(chǎn)生巨大震撼的ARM架構(gòu)就此誕生。
這家公司始創(chuàng)于1978年12月5日,創(chuàng)始人是物理學家赫爾曼·豪澤(Hermann Hauser)和工程師Chris Curry。公司的名字也很有意思,叫做Cambridge Processing Unit,意為劍橋處理器公司,簡寫為CPU。
1979年,CPU公司改名了,叫做Acorn,主營業(yè)務從為市場提供電子設備,轉(zhuǎn)向提供比較廉價的計算機設備。有多廉價呢?定價在500英鎊以內(nèi)。但是 公司很快發(fā)現(xiàn),摩托羅拉的CPU太慢價格又貴(摩托羅拉很快在CPU市場上被英特爾打得找不到北,慘淡收場)。于是Acorn公司去找英特爾索要 80286的設計資料,打算自行搭建PC兼容機,但被英特爾無情拒絕了。
不知道英特爾會不會為這個決定而痛苦終身?被拒絕后的Acorn雖然火冒三丈,但志氣滔天:不就是CPU嗎!買不到還不能自己做嗎?1985年,一款使用RISC指令集,名字叫做Acorn RISC Machion的CPU誕生了,它的簡稱就是ARM。
ARM的特點是性能功耗比非常優(yōu)秀,比如蘋果的首款掌上觸屏個人電子設備Newton Message Pad就使用了ARM處理器,隨后還生產(chǎn)了多個型號??上в捎谲浖陀布夹g(shù)局限等問題,它沒有獲得太大成功。但這為ARM的發(fā)展奠定了基礎(chǔ)。1990 年,Acorn公司干脆改名為ARM。蘋果出資150萬英鎊入股,Acorn公司以價值150萬英鎊的知識產(chǎn)權(quán)和12個工程師入股。還有一個大股東是 VLSI,是一家芯片制造商。接下來由于市場不景氣等原因,ARM決定開放授權(quán),成為一家設計公司,將自己的設計和知識產(chǎn)權(quán)授權(quán)給其他廠商生產(chǎn)芯片。這成 為ARM輝煌的起點。
英特爾的逆襲和ARM的擴大 英特爾最終發(fā)達起來了,占據(jù)了全球PC市場的絕大部分份額,IBM再也無法撼動英特爾的地位。但CISC的性能始終是硬傷,英特爾肯定看到了這一點,如果 x86的性能一直無法趕上在頂端的RISC處理器,英特爾就沒有辦法把觸手伸到最肥沃的服務器和超級計算機市場。從原理來說,x86架構(gòu)基于CISC,本 身問題不少,效率和發(fā)展方向都成問題。不過英特爾并不擔心,在潛心研究了RISC后,英特爾開始大膽在基于CISC的x86中引入RISC的設計思想,增 加了額外的一些“翻譯層”。CPU外部依舊是x86,但是內(nèi)部運行更為類似精簡的RISC,于是CPU效能得到極大的提升。
Atom本來是英特爾進入超便攜移動計算市場的利器,但是ARM成功阻擊了它。
在Pentium品牌推出后,英特爾開始逐漸在x86中引入RISC的設計思想。借助PC市場上攫取的巨額利潤,英特爾開始瘋狂提升x86處理器的性能。 于是,在服務器和超級計算機市場上,英特爾的Xeon品牌開始逐漸發(fā)力,性能和當時的RISC處理器相比已不落下風甚至略有勝出。最終英特爾完成了逆襲的 過程,x86在服務器市場上大放光彩,甚至開始占據(jù)絕大部分市場份額,成就了CISC戰(zhàn)勝RISC的神話。
不過在移動計算市場上,英特爾卻無法復制這樣的神話。高性能市場對功耗敏感度不高,性能是最重要的指標,英特爾可以憑借強大的研發(fā)能力來威脅對手,獲取勝 利。但移動計算市場對功耗極為敏感, 英特爾幾次試圖進入都無法獲得成功。ARM在這個領(lǐng)域遍地開花,從手機到平板電腦,ARM憑借自己超高的性能功耗比屢獲成功。
目前,x86處理器占據(jù)了超過90%的個人電腦市場,以ARM為代表的RISC產(chǎn)品則同樣占據(jù)了超過90%的移動計算市場。兩強都想、都有希望進入對方的領(lǐng)地。究竟誰能勝利,我們拭目以待。