訂閱電子報∣ 友善列印字體大小 文章分享-Facebook 文章分享-Plurk 文章分享-Twitter
進入32位時代,誰能成為下一個8051
獲取產業訊息零時差!立即訂閱電電公會電子報。
嵌入式微處理器內核界的傳奇老炮兒8051同志已經年屆四十,其所代表的深嵌入式微處理器內核架構也正在從8位時代向著32位時代進行遷移。進入32位時代,誰能成為8051的接班人,在深嵌入式領域一統江湖?本文將與讀者一起探討這個有意思的話題。
1.1 深嵌入式領域背景簡介
在傳統的電腦體系結構分類中,處理器應用分為三個領域:伺服器領域、PC領域、嵌入式領域。
伺服器領域在早期還存在著多種不同的架構呈群雄分立之勢,不過由於Intel公司商業策略上的成功,目前Intel的x86處理器晶片幾乎成為了這個領域的霸主。
而PC領域本身的幾乎是由Windows/Intel軟硬體組合本身的發展而壯大,因此x86架構是目前PC領域毫無疑問的壟斷者。
而傳統的嵌入式領域所指範疇非常之廣泛,所謂“嵌入式”,名如其文,指在很多晶片中,其所包含的處理器就像嵌入在裡面不為人知一樣,嵌入式領域的應用非常之廣泛,是處理器除了伺服器和PC領域之外的主要應用領域。
近年來隨著各種新技術新領域的進一步發展,嵌入式領域本身也被發展成了幾個不同的子領域而產生分化:
首先隨著智慧手機(Mobile Smart Phone)和手持設備(Mobile Device)的大發展,移動(Mobile)領域逐漸發展成了規模匹敵甚至超過PC領域的一個獨立領域,其主要由ARM的Cortex-A系列處理器架構所壟斷。由於Mobile領域的處理器主要需要載入Linux作業系統,同時涉及到複雜的軟體生態,因此其具有和PC領域一樣對軟體生態的嚴重依賴。目前既然ARM Cortex-A系列已經取得了絕對的統治地位,其他的處理器架構很難再進入該領域。
其次是即時(Real Time)嵌入式領域,該領域相對而言沒有那麼嚴重的軟體依賴性質,因此沒有形成絕對的壟斷,但是由於ARM處理器IP商業推廣的成功,目前仍然以ARM的處理器架構占大多數市場份額,其他處理器架構譬如Synopsys ARC等也有不錯的市場成績。
最後是深嵌入式領域,該領域更加的像前面所指的傳統嵌入式領域,該領域的需求量非常之大,這種深嵌入式領域往往注重低功耗、低成本和高能效比,無需載入像Linux這樣的大型應用作業系統,軟體往往是需要定制的裸機程式或者簡單的即時操作系統,因此對軟體生態的依賴性相對比較低。因此在該領域很難形成絕對的壟斷,但是由於ARM處理器IP商業推廣的成功,目前仍然以ARM的Cortex-M處理器佔據多大數市場份額,其他的架構譬如Synopsys ARC、臺灣Andes等也有非常不錯的表現。
綜上,由於移動(Mobile)領域崛起成為一個獨立的分類領域,現在通常所指的嵌入式領域往往是指深嵌入式領域或者即時嵌入式領域。說到此處,我們就不得不提及一位前輩老炮兒:8051內核。
1.2 8位時代的傳奇老炮兒——8051
說起8051內核,熟悉嵌入式領域的朋友,幾乎無人不知無人不曉。8051作為一款誕生了數十年之久的微處理器內核,在8位元嵌入式微處理器內核領域,它是當之無愧的傳奇老炮兒。
自從Intel於1980年為嵌入式系統開發 Intel MCS-51 (通常簡稱 8051)單晶片微控制器(簡稱單片機)至今,8051內核架構已經走過將近40個年頭。Intel還以專利轉讓的形式把8051內核轉讓給了許多其他半導體公司,這些公司進一步發展出不同型號基於8051內核的微控制器晶片,因此形成了一個龐大的8051家族。
由於幾十年發展下來的龐大的用戶群和生態環境,以及多年來眾多備受肯定的成功產品,可以說8051內核幾乎成為8位元微處理器內核的業界標杆。8051內核架構在1998年失去專利保護,久經沙場的它再次迸發出強大的二次生命力,各種形式的8051架構MCU(微控制器Microcontroller Unit)進一步湧入市場,各種基於8051內核的晶片產品層出不窮,各種免費版本的8051內核IP也可以從各種管道獲取。
當然由於8051內核並沒有一個統一的組織和標準進行管理,所以也存在著體系結構混亂,各種增強型複雜多樣的問題,雖然時常也都自稱為8051內核,但是其實各有差別,琳琅滿目讓人難以分辨。但是這絲毫無法影響8051內核的經典地位,時至今日,雖然目前微處理器內核正在經歷著向32位架構遷移的大趨勢,但是8051內核仍然有著舉足輕重的地位,在大量的MCU,數模混合晶片,SoC晶片中仍能看到8051內核的身影,並且在相當長的時間內,在適合8位架構處理器內核的應用領域中都將繼續使用8051內核,可以說是廉頗雖老,尚能飯也。
8051內核之所以能在嵌入式領域取得如此成功的地位,可以歸功於如下幾個方面的原因:
廣泛的被認知度,簡單的體系結構。
沒有智慧財產權的限制,免費和開源的版本眾多,非常適合中小型晶片公司採用。
龐大的使用者群以及相應的生態系統。
成熟且免費的軟體工具鏈支援。
儘管如此,8051作為一款誕生了接近40年的8位元CISC(複雜指令集)架構內核,雖然是老驥伏櫪壯心不已,但是由於其性能低下,定址範圍局限,已經難以適應更多的新興應用領域。隨著IoT的發展和崛起,雖然嵌入式領域對於處理器內核的需求更加井噴,但是更多的是開始採用32位架構,且很多傳統的8位應用領域也在開始向著32位架構遷移。
1.3 IoT的崛起——32位時代的到來
IoT(物聯網:Internet of Things)這個概念的提出和全面進入人們的視線其實並不久遠,應該IoT說是時下最熱點的技術應用領域之一。即便近一年來火爆的AI風頭更勁一時無兩,但是IoT也是AI的基礎支撐技術,譬如以智慧家居和智慧城市為例,IoT終端設備支撐和AI的邊緣智慧計算便是很重要的兩項技術基礎設施,IoT與AI呈現出相輔相成進一步提速發展之勢。根據麥肯錫全球機構的最新報告預測,全球物聯網市場規模可望在2025年以前達到11兆美元,這意味著物聯網將有潛力在2025年時達到約11%的全球經濟佔有率。
物聯網的新興應用需要使用到性能更高的32位元架構微處理器內核。以MCU為例,工業物聯網、可穿戴式裝置和智慧家居為目前MCU市場的主要驅動力,而32位架構更是當前驅動MCU成長的重要領域。譬如以智慧家居為例,智慧家居中的有些應用需要更精確的測量和控制、更好的能效,都需要有更複雜的數學模型和運算,這就要求MCU的運算速度大幅提升,以滿足能耗和運算的需求。32位MCU執行效能更佳,能夠滿足眾多物聯網應用對資料處理能力要求, 能夠兼顧物聯網的低功耗和高性能要求。有分析稱,以2015年統計資料來看,全年全球32位MCU的出貨量,就已經超過4/8/16位MCU的總和。
談及32位元架構微處理器內核,就難以繞開該領域的學霸ARM Cortex-M同學了。
1.4 既生瑜何生亮——ARM Cortex-M的獨角戲
眾所周知,ARM公司雖然設計開發基於ARM架構的處理器核,但是商業模式並不是直接生產處理器晶片,而是作為智慧財產權(IP:Intellectual Property)供應商,轉讓授權許可給其合作夥伴。ARM公司的強大之處便在於其與眾多合作夥伴一起構建了強大的ARM陣營,全世界目前幾乎大多數主流晶片公司都直接或者間接的在使用ARM架構處理器。
 
ARM Cortex-M內核是ARM公司推出的一組用於低功耗微控制器領域的32位元RISC處理器系列IP,包括Cortex-M0, Cortex-M0+,Cortex-M1, Cortex-M3, Cortex-M4(F), Cortex-M7(F),Cortex-M23, Cortex-M33(F)。如果Cortex-M4 / M7 / M33處理器包含了硬體浮點運算單元(FPU),也稱為Cortex-M4F / Cortex-M7F / Cortex-M33F。
Cortex-M的應用場景雖然不像Cortex-A系列(Mobile領域應用處理器)那樣光芒四射,但是其應用的嵌入式領域如前文所述隨著IoT的發展需求量巨大。2009年Cortex-M0這款超低功耗的32位處理器問世後,就成了各晶片製造商競相爭奪的香餑餑,僅僅9個月時間,就有15家廠商與ARM簽約。至今Cortex-M3與Cortex-M0的合計出貨量已經超過200億,其中有一半的出貨是在過去幾年完成的,據稱每30分鐘的出貨量就可以達到25萬片。
Cortex-M的耀眼領域之一便是MCU。如前文所述,隨著IoT的發展,MCU的需求也極大增長。在ARM推出Cortex-M之前,全球主要的幾個MCU晶片公司大多採用8位元、16位內核或者其自有的32位架構內核。ARM推出Cortex-M 之後,迅速受到市場青睞,至今,主要的MCU廠商中幾乎都有使用ARM 的Cortex-M內核的產品線。MCU排名前十的廠商,雖然很多都曾用自有架構,但是這些採用自有架構處理器的MCU廠商都面臨市場萎縮的問題,使其難以堅守自有架構處理器,譬如瑞薩,目前在工控領域已經推出了多款基於ARM Cortext-M內核的MCU。因此,有聲音表示:“未來Cortex-M系列的MCU產品替代傳統的8051或其它商業自有架構是大勢所趨”。甚至有聲音表示:“未來,MCU產品將不再按8位元,16位和32位來分,而是會按照M0核,M3核以及M4核等ARM內核的種類來分。” 可以說,32位MCU領域目前幾乎成為了ARM內核的獨角戲,無敵是多麼寂寞啊,筆者也不得不替非ARM架構的商業處理器廠商們拊膺長歎:既生瑜,何生亮啊。
2016年7月,日本軟銀集團以約243億英鎊(約合320億美元)和高達43%的溢價收購ARM公司。軟銀之所以高價收購ARM也是因為ARM正在成為智慧硬體和物聯網設備的標配。在收購ARM公司時,軟銀CEO孫正義曾表示:“這是我們有史以來最重要的收購,軟銀集團正在捕捉物聯網帶來的每一個機遇,ARM則非常符合軟銀的這一戰略,期待ARM成為軟銀物聯網戰略前進的重要支柱。”之後,孫正義更表示:“未來20年內,ARM架構晶片的年出貨量將達到1萬億顆,ARM能夠立刻收集所有即時資料”。 2017年6月,ARM宣佈了Cortex-M3和Cortex-M0兩款處理器的免前期授權費計畫。意味著自此之後ARM Cortex M系列的兩款處理器M0和M3均被免除了早期授權費(Up Front License Fee),不過這並不是意味著徹底的免費,使用M0和M3的晶片在量產後仍需向ARM逐片支付版稅(Royalty)。
雖然32位MCU領域幾乎成了ARM的獨角戲,但是由於嵌入式市場的多樣性,在32位元嵌入式微處理器IP市場,也還有其他的處理器IP供應商表現不俗,譬如嵌入式處理器IP市場佔有率排名第二Synopsys ARC處理器,也有著出色的表現。不過和ARM強大的生態系統比起來,所有其他非ARM的商業32位處理器都無法對ARM的壟斷地位形成撼動。似乎ARM即將統治這個世界,毫無疑問地成為32位嵌入式處理器領域的下一個8051了。吃瓜群眾們紛紛表示可以回家洗洗睡了。就在此時,RISC-V走向了台前。
1.5 初生牛犢——RISC-V
RISC-V架構主要由伯克利大學的Krste Asanovic教授等開發人員于2010年發明,並且得到了電腦體系結構領域的泰斗David Patterson的大力支持。伯克利的開發人員之所以發明一套新的指令集架構而不是使用成熟的x86或者ARM架構,是因為這些架構經過多年的發展變得極為的複雜和冗繁,並存在著高昂的專利和架構授權問題。並且修改ARM處理器的RTL代碼是不被支援的,而x86處理器的原始程式碼根本不可能獲得到,而其他的開源架構(譬如SPARC,OpenRISC)均有著或多或少的問題。
有感於電腦體系結構和指令集架構已經經過數十年的發展非常成熟,但是像伯克利大學這樣的研究機構竟然無米下鍋(選擇不出合適的指令集架構供其使用),伯克利大學的教授與研發人員決定發明一種全新的,簡單且開放免費的指令集架構。於是RISC-V架構誕生了,RISC-V (英文讀作“risk-five”),是一種全新的指令集架構,"V"包含兩層意思,一是這是Berkeley從RISC I開始設計的第五代指令集架構,二是它代表了變化(Variation)和向量(Vectors)。
經過幾年的開發,伯克利大學為RISC-V架構開發了完整的軟體工具鏈以及若干開源的處理器實例,得到了越來越多人的關注。
 
2016年是RISC-V正式走向開放發展的元年,RISC-V基金會(Foundation)正式成立開始運作,RISC-V基金會是一個非盈利性的組織,負責維護標準的RISC-V指令集手冊與架構文檔,並推動RISC-V架構的發展,RISC-V架構的目標是:
(1)成為一種完全開放的指令集,可以被任何學術機構或商業組織所自由使用。
(2)成為一種真正適合硬體實現且穩定的標準指令集。
RISC-V基金會負責維護標準的RISC-V架構文檔和編譯器等CPU所需的軟體工具鏈,任何組織和個人可以隨時在基金會網站(https://riscv.org)上免費下載(無需註冊)。
RISC-V一經推出,便受到了學術界與工業界的巨大歡迎。開放而免費RISC-V的誕生,不僅對於高校與研究機構是個好消息;為前期資金缺乏的創業公司、或成本極其敏感的產品、或對現有軟體生態依賴不大的領域,也提供了另外一種選擇;而且得到了業界主要科技公司的擁戴,包括谷歌、惠普、Oracle、西部資料等矽谷巨頭是RISC-V基金會的創始會員。眾多的知名晶片公司已經開始使用(譬如英偉達等)或者計畫使用RISC-V架構開發其自有的處理器內核用於其產品。
如圖3所示是RISC-V基金會的鉑金級、金級、銀級會員圖譜。
 
RISC-V基金會將組織每年兩次的公開Workshop(專題討論會),促進RISC-V陣營的交流與發展,任何組織和個人均可以從RISC-V基金會的網站上下載到每次Workshop上演示的PPT與文檔。RISC-V第六次Workshop在2017年五月在中國的上海交大舉辦,吸引了大批的中國公司和愛好者參與。
由於許多現在主流的英文電腦體系教材(譬如,電腦體系結構量化研究方法、計算機組成與設計等)的作者本身也是RISC-V架構的發起者,因此這些英文教材都將相繼推出以RISC-V架構為基礎的新版本,全美的大多數高校都將開始採用RISC-V作為教學範例,也意味著若干年後的高校畢業生都將對RISC-V架構非常熟知。
 
必須強調的是,RISC-V是一種開放的指令集架構,而不是一款具體的處理器。任何組織與個人均可以依據RISC-V架構設計實現自己的處理器,可以是高性能處理器,亦或是低功耗處理器。只要是依據RISC-V架構而設計的處理器,都可以稱為RISC-V架構處理器。
除了免費開放的特點,從技術的角度來講RISC-V架構的最大特點便是簡單,非常容易設計和使用。從RISC-V架構誕生至今很短的時間內,在全世界範圍內已經出現了數十個版本的RISC-V架構處理器,有的是開源免費的,有的是商業公司私有開發用於內部專案的,還有的是商業IP公司開發的RISC-V處理器IP,其中有多款非常適用於深嵌入式的開源超低功耗處理器內核。同時,作為一種開放免費的架構,RISC-V的軟體工具鏈由開源社區維護,所有的工具鏈原始程式碼均公開,可以通過RISC-V基金會網站的連結進入RISC-V Tools頁面下載。
1.6 結語:32位時代,誰能成為深嵌入式領域的下一個8051?
原本學霸ARM Cortex-M同學將毫無疑問地成為8051的接班人而掌管深嵌入式領域的32位時代。但是不期而至的新生RISC-V卻自帶光環,讓這場遊戲出現了一絲變數。
前文中總結了傳奇老炮兒8051的先進事蹟,分析了它的幾個成功因素。在此,我們將其因素歸納為表格,並且將ARM Cortex-M與RISC-V進行橫向對比,如表1所示。
 
熟悉電腦體系結構的讀者都知道,一款處理器內核架構最終能否取得成功,很大程度上取決於使用者群體和軟體生態環境。目前此項ARM Cortex-M完勝,ARM經過多年的經營,構建了強大的聯盟和城寬池闊的軟體生態環境,可以說是兵精糧足,強大得武裝到牙齒。
但是,前文中曾經探討過,在深嵌入式領域,對於軟體的依賴相對比較低。並且,雖然RISC-V資歷非常之淺,但是其架構在開放至今很短的時間內取得了令人驚異的發展速度,越來越多的公司和專案開始採用RISC-V架構的處理器,相信RISC-V的軟體生態也會逐步壯大起來。
而從另一方面來說,ARM作為商業架構下的處理器IP,具有如下缺點:其不能夠進行差異化定制,不具備可擴展性,受私有智慧財產權保護,需要支付商業授權費用等。這些缺點在開放的RISC-V架構中都不存在,可謂是後生可畏。但是,畢竟羅馬不是一天建成的,筆者認為RISC-V架構在短時間內還無法對ARM的地位形成撼動。
是商業巨擘ARM將徹底統治這個世界?還是自由戰士RISC-V將別開生面?誰又能最終成為32位時代深嵌入式領域內的下一個8051?看來是勝負未可知也,吃瓜群眾們也許還要再圍觀些時日了。
訂閱電子報 友善列印 字體大小:
獲取產業訊息零時差!立即訂閱電電公會電子報。