作者 | 北灣南巷
出品 | 汽車電子與軟件
自1983年由英國劍橋的Acorn計算機公司首次設(shè)計以來,ARM (Advanced RISC Machine)架構(gòu)已成為低功耗、高性能處理器的代表,廣泛應(yīng)用于移動設(shè)備、嵌入式系統(tǒng)和物聯(lián)網(wǎng)等領(lǐng)域。ARM架構(gòu)以精簡指令集(RISC)、高效執(zhí)行引擎和模塊化設(shè)計為核心,極大提升了處理器的性能和能效,同時有效降低了功耗。這種架構(gòu)通過靈活的設(shè)計理念,支持多核技術(shù)、低功耗優(yōu)化和虛擬化技術(shù),使芯片能夠高效處理并行任務(wù),延長設(shè)備續(xù)航時間。在芯片設(shè)計中,ARM架構(gòu)的這些特性不僅在傳統(tǒng)移動設(shè)備中占據(jù)優(yōu)勢,還拓展到云計算和數(shù)據(jù)中心等新興領(lǐng)域,為高性能和低能耗的應(yīng)用提供了堅實的基礎(chǔ)。
#01 相關(guān)理論基礎(chǔ)
1.1 ARM架構(gòu)概述
ARM架構(gòu)是一種精簡指令集計算機(RISC)架構(gòu),自其誕生以來,以低功耗、高性能和易于集成的特性,在計算機體系結(jié)構(gòu)中占據(jù)了重要地位。ARM架構(gòu)的發(fā)展歷程從最初的ARMv1逐步演進至如今的ARMv9,每一代版本的更新都標(biāo)志著技術(shù)的進步和性能的提升,體現(xiàn)了其對市場需求的快速響應(yīng)。(*ARM9之后,ARM推出了諸如ARM11架構(gòu),進一步提高了性能和能效,并引入了更先進的特性,如多媒體指令集和更好的多核支持。)
* VFP(Vector Floating Point)是ARM公司為其 Cortex-A 系列處理器設(shè)計的一種 SIMD(Single Instruction, Multiple Data,單指令多數(shù)據(jù))技術(shù)。SIMD 技術(shù)允許一條指令同時對多個數(shù)據(jù)進行操作,從而在多媒體和信號處理方面提高處理速度和效率。
* NEON的全稱是“Advanced SIMD”,即“高級單指令多數(shù)據(jù)”處理技術(shù)。它是ARM架構(gòu)中的一個重要組成部分,旨在通過并行處理數(shù)據(jù)來提高處理器的性能,特別是在處理多媒體和信號處理任務(wù)時。NEON技術(shù)允許處理器同時執(zhí)行多個操作,從而加速了圖像處理、音頻處理、視頻編碼和解碼等計算密集型的應(yīng)用。
* TrustZone 是 ARM 公司提出的一項安全技術(shù),旨在為嵌入式系統(tǒng)和移動設(shè)備提供一種安全的運行環(huán)境。這項技術(shù)通過在芯片設(shè)計中加入一個獨立的 secure world(安全世界),與傳統(tǒng)的 non-secure world(非安全世界)形成對比,從而實現(xiàn)對敏感數(shù)據(jù)和操作的隔離保護。
*Jazelle技術(shù)是ARM架構(gòu)中的一個擴展,它允許ARM處理器直接執(zhí)行Java字節(jié)碼,而不需要先將字節(jié)碼轉(zhuǎn)換為機器碼。這項技術(shù)的目的是為了提高運行Java應(yīng)用程序的效率,尤其是在移動設(shè)備上,如智能手機和平板電腦。
在ARM架構(gòu)的發(fā)展過程中,每個版本的更新不僅提升了整體性能,還針對不同應(yīng)用場景進行了優(yōu)化:
ARMv7與32位系統(tǒng)的支持
ARMv7是ARM架構(gòu)成熟期的重要里程碑,推出了Cortex-A、Cortex-R和Cortex-M三大處理器系列,分別針對高性能應(yīng)用、實時控制和微控制器領(lǐng)域。Cortex-A8、A9等型號成為智能手機和平板電腦的主力芯片,為安卓設(shè)備和iOS設(shè)備提供了強大的處理能力。ARMv7的設(shè)計特點是性能優(yōu)化、低功耗,并支持更多的多核架構(gòu),從而進一步增強了設(shè)備的多任務(wù)處理能力。
ARMv8及之后的64位系統(tǒng)的優(yōu)勢
ARMv8架構(gòu)是ARM歷史上的一個重大轉(zhuǎn)折點,引入了對64位運算的支持(AArch64),并保持對32位應(yīng)用的兼容性(AArch32)。這一改進使ARM架構(gòu)在性能上有了顯著的提升,為更復(fù)雜的計算任務(wù)提供了可能性,如高性能應(yīng)用、服務(wù)器和數(shù)據(jù)中心。這一時期,蘋果率先在其iPhone 5s中采用了基于ARMv8架構(gòu)的A7芯片,這是智能手機行業(yè)首款64位處理器,引領(lǐng)了移動設(shè)備向64位過渡的潮流。
ARMv8還引入了更多的虛擬化支持和安全功能,如TrustZone技術(shù),進一步提高了設(shè)備的安全性,使其能夠在企業(yè)應(yīng)用和IoT設(shè)備中發(fā)揮更大的作用。
ARMv9:安全性、AI、機器學(xué)習(xí)等領(lǐng)域的增強
ARMv9架構(gòu)是ARM最新的處理器架構(gòu),旨在應(yīng)對人工智能、機器學(xué)習(xí)和安全性等新興技術(shù)領(lǐng)域的需求。與ARMv8相比,ARMv9在性能和能效上進一步提升,并引入了新的安全功能和AI計算擴展。
ARMv9的一個重要特點是引入了 “機密計算架構(gòu)”(CCA),該架構(gòu)通過硬件支持的數(shù)據(jù)隔離和加密,使得設(shè)備在處理敏感數(shù)據(jù)時能夠提供更高的安全性,這對于現(xiàn)代企業(yè)和個人用戶的數(shù)據(jù)安全需求至關(guān)重要。
*Realm:這是一個隔離的環(huán)境,用于運行中間件和應(yīng)用程序,以及操作系統(tǒng)。
*Non-secure:這是一個非安全區(qū)域,也運行中間件和應(yīng)用程序,以及操作系統(tǒng)。它通過Hypervisor與安全區(qū)域進行通信。
*Secure:這是一個安全區(qū)域,運行中間件和應(yīng)用程序,以及操作系統(tǒng)。它通過Secure Partition Manager與非安全區(qū)域進行通信。
在AI和機器學(xué)習(xí)方面,ARMv9加入了SVE2(Scalable Vector Extension 2可擴展矢量擴展2),以增強處理向量化數(shù)據(jù)和AI計算任務(wù)的能力。SVE2的加入使得ARM處理器在進行復(fù)雜的數(shù)據(jù)分析、圖像處理和機器學(xué)習(xí)推理時能夠更有效率,進一步擴展了其在邊緣計算和數(shù)據(jù)中心中的應(yīng)用前景。
ARMv9強化了在AI和機器學(xué)習(xí)任務(wù)中的能力,使其能夠在邊緣設(shè)備上執(zhí)行更復(fù)雜的推理和計算任務(wù),這對于物聯(lián)網(wǎng)設(shè)備、智能家居和工業(yè)自動化等領(lǐng)域有著重要的意義。
ARM9之后,ARM推出了ARM11架構(gòu),進一步提高了性能和能效,并引入了更先進的特性,如多媒體指令集和更好的多核支持。
1.2 Cortex處理器系列
ARM的Cortex系列是ARM處理器產(chǎn)品線中最廣泛應(yīng)用的家族,針對不同的應(yīng)用場景,分為Cortex-A、Cortex-R和Cortex-M三大類,每一類都有各自的特點和目標(biāo)應(yīng)用。
1.3 其他ARM處理器設(shè)計
除了傳統(tǒng)的Cortex系列處理器,ARM還推出了針對高性能計算和數(shù)據(jù)中心的專用架構(gòu),滿足云計算、大數(shù)據(jù)和邊緣計算等新興領(lǐng)域的需求。
Neoverse架構(gòu):數(shù)據(jù)中心和高性能計算
- Neoverse 是ARM專為數(shù)據(jù)中心和高性能計算(HPC)設(shè)計的架構(gòu),重點提升多核計算能力、能效和系統(tǒng)帶寬。它與傳統(tǒng)的Cortex系列不同,針對的是服務(wù)器級別的計算環(huán)境,致力于提供更高的并行處理能力和更強的計算性能。
- 應(yīng)用場景:Neoverse架構(gòu)被廣泛應(yīng)用于云服務(wù)器、數(shù)據(jù)中心、網(wǎng)絡(luò)基礎(chǔ)設(shè)施和邊緣計算設(shè)備中。隨著ARM生態(tài)系統(tǒng)的不斷壯大,越來越多的云服務(wù)提供商(如Amazon AWS的Graviton處理器)采用ARM架構(gòu)進行高效能計算和大規(guī)模數(shù)據(jù)處理。Neoverse處理器提供的多核并行性和高能效設(shè)計,使其在處理AI、機器學(xué)習(xí)、數(shù)據(jù)分析和科學(xué)計算等任務(wù)時表現(xiàn)出色。
1.4 ARM的授權(quán)模式
ARM架構(gòu)的成功還源于其開放的授權(quán)模式,吸引了大量芯片廠商參與其中。國內(nèi)如華為和紫光展銳等企業(yè),基于ARM架構(gòu)開發(fā)了多款具有自主知識產(chǎn)權(quán)的處理器產(chǎn)品,這些產(chǎn)品廣泛應(yīng)用于智能手機、平板電腦、物聯(lián)網(wǎng)等領(lǐng)域,進一步推動了ARM架構(gòu)的普及和發(fā)展。例如,華為的麒麟系列處理器在多項性能測試中表現(xiàn)優(yōu)異,贏得了市場和消費者的廣泛認(rèn)可,通過深度定制優(yōu)化,成功躋身高端芯片行列,成為國產(chǎn)高端芯片的代表, 顯示了ARM架構(gòu)在移動設(shè)備領(lǐng)域的強大適應(yīng)性和競爭力。
與此同時,國外的ARM架構(gòu)研究與應(yīng)用同樣蓬勃發(fā)展。作為ARM架構(gòu)的創(chuàng)始者與核心知識產(chǎn)權(quán)持有者,ARM公司持續(xù)推動該架構(gòu)的技術(shù)創(chuàng)新和市場拓展。高通、三星、蘋果等國際知名芯片廠商基于ARM架構(gòu)開發(fā)出多款高性能處理器,這些產(chǎn)品在全球范圍內(nèi)享有極高聲譽和市場占有率。尤其在智能手機和平板電腦領(lǐng)域,ARM架構(gòu)已成為主導(dǎo)力量,憑借卓越的性能與能效表現(xiàn),確?;贏RM的設(shè)備在移動計算市場占據(jù)重要地位。此外,ARM架構(gòu)正逐步進軍筆記本電腦市場,展現(xiàn)出對傳統(tǒng)x86架構(gòu)的有力挑戰(zhàn),帶來了更高效的功耗管理和移動性體驗。
無論在國內(nèi)還是國外,ARM架構(gòu)的研究和應(yīng)用都展現(xiàn)出強勁的發(fā)展勢頭。隨著技術(shù)的不斷演進和市場的拓展,ARM架構(gòu)將在未來進一步發(fā)揮重要作用,推動全球計算機技術(shù)的持續(xù)創(chuàng)新與進步。特別是在人工智能、物聯(lián)網(wǎng)和云計算等新興領(lǐng)域,ARM架構(gòu)將為構(gòu)建低功耗、高性能的計算平臺提供更多可能性,助力全球信息技術(shù)產(chǎn)業(yè)的升級和發(fā)展。
1.5 ARM指令集
ARM指令集作為ARM架構(gòu)的核心,設(shè)計中體現(xiàn)了簡潔與高效的理念。其主要分為兩大類:ARM指令和Thumb指令,分別針對不同的應(yīng)用場景和性能需求。
- ARM指令:ARM指令采用32位長度,這種設(shè)計使得每條指令能夠攜帶更多的操作信息和尋址模式,支持更為復(fù)雜的操作。這類指令在高性能計算任務(wù)中表現(xiàn)優(yōu)異,能夠滿足復(fù)雜算法和數(shù)據(jù)處理的需求。其豐富的指令功能和靈活的尋址方式,為高性能處理器提供了強大的運算能力。此外,ARM指令集在執(zhí)行時能夠快速、高效地處理數(shù)據(jù),適用于需要高吞吐量的應(yīng)用,如多媒體處理和圖像運算。
- Thumb指令:Thumb指令長度為16位,設(shè)計目標(biāo)是在保持一定性能的同時,降低功耗和提高代碼密度。相比ARM指令,Thumb指令集的緊湊性使得代碼占用更少的存儲空間,這在內(nèi)存有限的嵌入式系統(tǒng)中尤為重要。它特別適用于對成本和功耗有嚴(yán)格要求的設(shè)備,如物聯(lián)網(wǎng)終端、可穿戴設(shè)備和低功耗傳感器。通過減少每條指令的長度,Thumb指令集實現(xiàn)了更高的能效,滿足了便攜式設(shè)備對低功耗和緊湊設(shè)計的需求。
ARM指令集憑借其簡潔、高效的特點,成為計算機指令集設(shè)計的典范。在高性能計算和低功耗應(yīng)用場景中,ARM指令集都能提供合適的解決方案。通過不斷適應(yīng)技術(shù)發(fā)展趨勢、優(yōu)化架構(gòu)性能、擴展新功能,ARM指令集不僅實現(xiàn)了技術(shù)層面的創(chuàng)新,更抓住了市場需求,推動了ARM架構(gòu)在全球范圍內(nèi)的廣泛應(yīng)用和持續(xù)發(fā)展。
1.6 ARM處理器結(jié)構(gòu)
ARM處理器的核心結(jié)構(gòu)是其實現(xiàn)高性能和低功耗的基礎(chǔ),主要包括處理器核心、緩存系統(tǒng)和總線接口等關(guān)鍵模塊。這些組件通過緊密協(xié)作,確保指令的高效執(zhí)行和數(shù)據(jù)的快速處理。如圖是一個典型的ARM架構(gòu)處理器芯片內(nèi)部結(jié)構(gòu)示意圖,各個模塊的作用如下:
-
在運行過程中,ARM Core從外部存儲器(通過Code Interface)加載指令,并通過Bus Matrix和各模塊進行數(shù)據(jù)交互。
-
NVIC和WIC確保系統(tǒng)可以響應(yīng)外部事件并高效處理中斷。
-
DAP和ETM等調(diào)試模塊為開發(fā)者提供強大的調(diào)試工具,方便進行程序優(yōu)化和問題排查。
- 內(nèi)存保護和虛擬化技術(shù)(如MPU和TrustZone)保障系統(tǒng)的安全性和數(shù)據(jù)完整性。
ARM處理器的結(jié)構(gòu)設(shè)計始終圍繞高性能、低功耗和易集成等目標(biāo),通過不斷優(yōu)化核心結(jié)構(gòu)、提升緩存系統(tǒng)性能以及完善總線接口設(shè)計,適應(yīng)不同的應(yīng)用需求。在移動設(shè)備、嵌入式系統(tǒng)和物聯(lián)網(wǎng)設(shè)備等領(lǐng)域,ARM處理器以其卓越的能效比、靈活的架構(gòu)設(shè)計和可擴展性,成為主流選擇。例如,Big.LITTLE架構(gòu)的提出,通過結(jié)合高性能核心和低功耗核心,實現(xiàn)了在性能和能耗之間的動態(tài)平衡,在手機和嵌入式設(shè)備中廣泛應(yīng)用。
隨著技術(shù)的不斷進步和市場需求的多樣化,ARM處理器結(jié)構(gòu)設(shè)計將繼續(xù)創(chuàng)新發(fā)展。例如,隨著人工智能(AI)應(yīng)用的普及,未來的ARM處理器將更多地集成專用AI加速器,以便在邊緣設(shè)備上實現(xiàn)實時AI推理。此外,5G技術(shù)和物聯(lián)網(wǎng)設(shè)備的激增,將促使ARM架構(gòu)進一步優(yōu)化其低功耗特性,以支持海量連接設(shè)備的高效通信。通過不斷演進,ARM處理器將在未來計算領(lǐng)域注入更多活力,為更多應(yīng)用場景提供創(chuàng)新的計算解決方案。
1.7 ARM架構(gòu)中的關(guān)鍵技術(shù)
ARM架構(gòu)中的關(guān)鍵技術(shù)涵蓋了多核技術(shù)、低功耗設(shè)計和虛擬化技術(shù)等領(lǐng)域,這些技術(shù)協(xié)同作用,構(gòu)成了ARM架構(gòu)的核心競爭力,使其在多樣化的應(yīng)用場景中表現(xiàn)卓越。
多核技術(shù)
多核技術(shù)在ARM架構(gòu)中尤為重要,通過在一個處理器內(nèi)集成多個核心,實現(xiàn)了并行處理能力的顯著提升。這種設(shè)計不僅支持同時處理多個任務(wù),還能通過任務(wù)分割和并行執(zhí)行,提高單個任務(wù)的處理效率。尤其是在復(fù)雜計算任務(wù)和多任務(wù)操作中,多核技術(shù)使ARM處理器能夠高效響應(yīng),提高整體性能和用戶體驗。隨著大數(shù)據(jù)處理、圖像處理等應(yīng)用需求的增長,多核技術(shù)成為了ARM架構(gòu)應(yīng)對復(fù)雜計算的關(guān)鍵手段。
低功耗設(shè)計
ARM架構(gòu)的低功耗設(shè)計是其在移動設(shè)備市場取得成功的基礎(chǔ)。為了滿足便攜設(shè)備對電池續(xù)航的需求,ARM通過精心的電路優(yōu)化、動態(tài)電壓和頻率調(diào)節(jié)(DVFS)等技術(shù),顯著降低了處理器的功耗。在不犧牲性能的前提下,ARM處理器能以更低的能耗運行,從而延長設(shè)備的使用時間。這種低功耗特性不僅在智能手機和平板電腦中發(fā)揮優(yōu)勢,也在物聯(lián)網(wǎng)和可穿戴設(shè)備等領(lǐng)域得到廣泛應(yīng)用,支持設(shè)備全天候運行。
虛擬化技術(shù)
隨著云計算和數(shù)據(jù)中心的快速發(fā)展,虛擬化技術(shù)成為ARM架構(gòu)中不可或缺的組成部分。ARM通過支持硬件級虛擬化,使多個操作系統(tǒng)和虛擬機可以在同一物理處理器上獨立運行,實現(xiàn)了資源的靈活調(diào)度和高效利用。通過虛擬化技術(shù),企業(yè)能夠在減少物理服務(wù)器數(shù)量的同時,提升整體資源利用率,降低成本。這項技術(shù)的應(yīng)用拓寬了ARM處理器在數(shù)據(jù)中心和邊緣計算等高性能領(lǐng)域的應(yīng)用范圍,為用戶帶來了靈活高效的計算解決方案。
可擴展性與兼容性
ARM架構(gòu)在可擴展性和兼容性方面的設(shè)計同樣值得關(guān)注。無論是面向高性能需求的服務(wù)器,還是低功耗的嵌入式設(shè)備,ARM架構(gòu)都能通過模塊化的設(shè)計適應(yīng)不同的應(yīng)用場景。這種可擴展性使開發(fā)者能夠根據(jù)具體需求配置處理器核心數(shù)量、頻率和功能,同時確保與現(xiàn)有軟件和硬件的兼容性。ARM的開放授權(quán)模式進一步促進了其生態(tài)系統(tǒng)的擴展,吸引了各大芯片廠商參與創(chuàng)新,使得ARM架構(gòu)在多個行業(yè)領(lǐng)域中獲得廣泛應(yīng)用。
ARM架構(gòu)憑借多核技術(shù)、低功耗設(shè)計和虛擬化技術(shù)等關(guān)鍵技術(shù),打造了強大的計算平臺。多核技術(shù)提升了并行處理能力,低功耗設(shè)計滿足了移動設(shè)備的需求,而虛擬化技術(shù)則助力數(shù)據(jù)中心和云計算的發(fā)展。這些技術(shù)優(yōu)勢加上高度的可擴展性和兼容性,使ARM架構(gòu)在不斷變化的市場中保持領(lǐng)先。隨著技術(shù)的持續(xù)演進,ARM將在更多領(lǐng)域釋放其潛力,為計算機科學(xué)技術(shù)的發(fā)展注入新活力。
1.8 ARM常用的操作系統(tǒng)
ARM架構(gòu)上常用的操作系統(tǒng)種類繁多,涵蓋從開源平臺到專有系統(tǒng),為基于ARM的設(shè)備提供了多樣化的軟件生態(tài)支持。以下是一些典型的操作系統(tǒng)及其在ARM架構(gòu)上的特點和應(yīng)用優(yōu)勢。
參考:
-
華為自研CPU,遇到了最佳時候,網(wǎng)友:老天都在幫華為—維科號
-
Quick Look At Windows 10 On ARM - MDM Tech Space
-
被Armv9 重點引入的SVE2是何方神圣?_Photo
-
Introducing the Confidential Compute Architecture - Arm Announces Armv9 Architecture: SVE2, Security, and the Next Decade
-
An Introduction To ARMv9 & Its Key Features Trustonic
-
Ppt | PPT | Free Download
-
ARM processor Introduction
-
The ARM Processors: A, R, and M Categories and Their Specifics - Sirin Software
-
Arm Clashes With Intel and AMD With N2 Server CPU Core | Electronic Design