近日,在一年一度的 ARM Techcon 2019 大會上,ARM 宣佈推出一項全新的功能 Arm Custom instructions,該功能允許客戶在特定的 CPU 核心中加入自定義指令功能,從而來加速特定的用例、嵌入式和物聯網應用程式。
ARM 擁抱自定義指令集據了解,Arm Custom Instructions 功能適用於 Cortex-M33 核心及以後的 Cortex-M CPU 系列。從 2020 上半年起,所有使用上述 CPU 核心的 Arm 客戶都可以免費使用自定義指令功能;也就是說,Arm 不會對新的或既有授權廠商收取額外費用,同時讓系統單晶片(SoC)設計人員在沒有軟體碎裂風險下,得以針對特定嵌入式與物聯網應用加入自己的指令。
另外,通過對 CPU 進行修改來啟用 Arm 自定義指令,為處理器保留編碼空間,以便設計人員可以輕鬆新增自定義資料路徑擴充套件,同時保持現有軟體生態系統的完整性。此功能與現有的協處理器介面一起使 Cortex-M33 CPU 可以使用針對機器學習(ML)和人工智慧(AI)等邊緣計算進行了優化和各種型別的加速器進行擴充套件。
Cortex-M 是是 ARM 公司多種系列產品中的其中一個,該處理器系列是一系列可向上相容的高能效、易於使用的處理器,這些處理器旨在幫助開發人員滿足將來的嵌入式應用的需要,比如說以更低的成本提供更多功能、不斷增加連線、改善程式碼重用和提高能效。雷鋒網了解到,Arm Cortex-M 系列針對成本和功耗敏感的 MCU 和終端應用(如智慧測量、人機介面裝置、汽車和工業控制系統、大型家用電器、消費性產品和醫療器械)的混合訊號裝置進行過優化,也可以與智慧手機和 PC 的應用程式中的 Cortex-A 效能核心配合使用。
不過,Arm Cortex-M 處理器的核心主要還是應用在低功耗嵌入式處理器(比如說 IoT 終端裝置所用的處理器)中,已許可給 40 個以上的 ARM 合作伙伴,包括恩智浦、意法半導體、德儀和東芝等供應商,每年的出貨量可達數億級別。
在釋出會上,Arm 宣佈已經與不少合作伙伴進行合作來支援自定義指令集,這些合作伙伴包括 IAR-Systems、恩智浦、芯科科技、ST 意法半導體等。
對於 Arm 的這一動作,Arm CEO Simon Segars 表示:
這將使你們所有人都能更快地行動起來。新增此功能後,我們對如何支援工具流程進行了很多思考。Arm 於 7 月宣佈了其靈活設計計劃,過去兩年中籤署的 Arm 處理器許可中有 75% 現在包括了該計劃,開發人員可以在此調整設計,而不必不斷返回 Arm 進行審批……隨著我們邁向第五波計算浪潮,我期待更多的創造力。定製說明更進一步。Arm 設計了一種方法,可以支援智慧整合和快速開發完全整合的自定義 CPU 指令,而不會產生軟體碎片。
另外,ARM 方面表示,新增的 Arm Custom Instructions 功能,結合此前 Arm 推出的 Arm Flexible Access 計劃,都是為了致力於增強晶片合作伙伴的靈活性和差異化,以支援機器學習、人工智慧、自駕車、5G 與物聯網等全新邊緣運算的機會——為此,Arm Custom Instructions 在未來的 Arm Cortex-M CPU 上將變成標準功能,使這款 CPU 成為 Arm 歷來最成功的 CPU 之一。
Arm 顯然感受到了壓力在移動網際網路時代,Arm 顯然是絕對的主流;就在這次大會上,Arm CEO Simon Segars 也表示,成立近 30 年來,在 1000 多個合作伙伴的推動下,Arm 核心的出貨量已經超過 1500 億。
但顯然,隨著移動網際網路時代的結束和 IoT 時代的到來,Arm 已經感受到了來自 RISC-V 的壓力。
RISC-V 是一個精簡指令集架構(ISA),源自加州大學伯克利分校 2010 年的一個新專案,其架構簡單、完全開源,且可通過擴充套件指令做定製化。推出幾年後受到了全球範圍內巨頭們的支援,英偉達、西部資料、谷歌、高通、微軟、華為、阿里巴巴等都加入了 RISC-V 基金會。並且,在印度政府的大力資助下,RISC-V 還成為了印度的國家指令集——當然在中國市場 RISC-V 也頗受關注。
實際上,RISC-V 作為新的開源指令集架構已經引發了全球的關注,而去年 Arm 建立網站對 RISC-V 攻擊的行為表明了 Arm 對於這個新架構的擔心,Arm 還對 RISC-V 質疑稱可擴充套件指令集會帶來碎片化的問題。
但顯然,RISC-V 的優勢也讓 Arm 忌憚不已。雷鋒網在採訪非營利性組織 RISC-V 基金會中國顧問委員會主席方之熙之後認為,讓 Arm 真正感到焦慮的,是 RISC-V 的靈活性,這種靈活效能夠更好地滿足未來市場的需求;基於 RISC-V 的靈活性,它能夠在 IoT、專用晶片、資料中心、邊緣計算市場發揮出效能、功耗、安全性的優勢。
在雷鋒網看來,Arm 加入自定義指令集的本質,正是為了增強自身核心架構的靈活性,從而在 IoT 時代與和 RISC-V 正面競爭。
當然,RISC-V 的發展確實存在一些問題,比如碎片化風險,生態系統的建設還處於早期階段,同時,想要設計相對複雜的 RISC-V 晶片仍然需要工具鏈的支援。反過來看,RISC-V 的劣勢其實也正是 Arm 目前的優勢所在——在釋出會上,Arm 強調稱,Arm Custom Instructions 為整合客戶工作負載加速提供了最低成本(和風險)的途徑,因為它不會對影響到現有的 CPU 特性,並且仍然允許客戶使用他們已經熟悉的現有標準工具。
對於 Arm 作出的改變,它的客戶已經表達了正面迴應;比如說,恩智浦高階副Quattroporte兼 MICR 產品事業部總經理 Geoff Lees 就表示:
Arm 的新自定義指令功能,使像恩智浦這樣的晶片供應商能夠為其客戶提供針對特定應用的全新指令優化,以提高效能,功耗和靜態程式碼大小,以適應新興的嵌入式應用程式……此外,所有這些改進都在廣泛的 Cortex-M 生態系統中實現,因此客戶的現有軟體投資得以最大化。
總結其實,除了宣佈在 CPU 核心中加入自定義指令,ARM 還在 TechCon 2019 大會上宣佈更改其免費開源物聯網作業系統 Mbed OS 的合作伙伴治理模型,與諸多合作伙伴成立自動駕駛汽車計算聯盟,還宣佈與 Unity Technologies 合作來支援各種 3D 內容創作——但總體來看,Arm 對自定義指令集的擁抱,成為本次大會的最大看點。
而從整個行業來看,Arm 對自定義指令集的擁抱,將增加 AI + IoT 時代晶片架構發展的不確定性和變數——但對客戶來說,更激烈的競爭未必不是一件好事。