- 從零開始學ARM
- 彭丹 周海濤編著
- 935字
- 2025-01-16 17:58:56
1.2.2 ARM架構(gòu)
架構(gòu)指的是一系列的功能規(guī)范。ARM架構(gòu)指的就是基于ARM處理器的功能規(guī)范,又稱為ARM CPU架構(gòu)。架構(gòu)指定了處理器的行為方式,例如,架構(gòu)中包含什么指令以及指定指令做什么?;谝环N架構(gòu)可以有多種處理器,每種處理器的性能不同,其應(yīng)用也不同,但每種處理器的實現(xiàn)都要遵循這一體系架構(gòu)。ARM架構(gòu)保證系統(tǒng)的高性能、低功耗和高效率。
從1985年ARMv1架構(gòu)誕生起,到2011年,ARM推出ARMv8架構(gòu),10年之后的2021年3月31日,ARM才正式推出了ARMv9架構(gòu),ARMv9架構(gòu)兼容ARMv8架構(gòu),并在其基礎(chǔ)上,提升了處理器的性能和安全性,增強了矢量計算、機器學習及數(shù)字信號處理功能,ARM架構(gòu)各版本及特點如圖1-16所示。

圖1-16 ARM架構(gòu)各版本及特點
Thumb:ARM 16 bit指令集。
Jazelle:ARM在硬件上提供了對Java字節(jié)碼的支持,大大提高了系統(tǒng)的性能。
TrustZone:ARM TrustZone技術(shù)為可信軟件提供了系統(tǒng)硬件隔離。
Cortex-A32/35/53/57/72/73/77/78采用的都是ARMv8架構(gòu),這是ARM公司的首款支持64位指令集處理器的架構(gòu),各處理器對應(yīng)的架構(gòu)關(guān)系如表1-1所示。
表1-1 各處理器對應(yīng)的架構(gòu)關(guān)系

ARM架構(gòu)可以看作硬件和軟件之間的協(xié)議,描述了軟件通過依賴硬件可以提供的功能,ARM架構(gòu)的核心內(nèi)容如表1-2所示。
表1-2 ARM架構(gòu)的核心內(nèi)容

ARM架構(gòu)的主要特征如下。
(1)采用大量的寄存器,可以用于多種用途。
(2)采用Load/Store架構(gòu)。
(3)每條指令都為條件執(zhí)行。
(4)采用多寄存器的Load/Store指令。
(5)能夠在單時鐘周期執(zhí)行的單條指令內(nèi)完成一項普通的移位操作和一項普通的ALU操作。
(6)通過協(xié)處理器指令集來擴展ARM指令集,包括在編程模式中增加新的寄存器和數(shù)據(jù)類型。
(7)如果把Thumb指令集也當作ARM體系架構(gòu)的一部分,那么在Thumb體系架構(gòu)中還可以以高密度16位壓縮形式表示指令集。
例如,ARMv8架構(gòu)是以32位ARM架構(gòu)為基礎(chǔ)進行開發(fā)的,被首先用于對擴展虛擬地址和64位數(shù)據(jù)處理技術(shù)有更高要求的產(chǎn)品領(lǐng)域,如企業(yè)應(yīng)用、高檔消費類電子產(chǎn)品。
ARMv8-A架構(gòu)的主要特點如下。
① 新增的一套64bit指令集,稱作A64。
② 由于ARMv8-A架構(gòu)需要向下兼容ARMv7架構(gòu),所以它們同時支持32bit指令集,稱作A32和T32(即我們熟悉的ARM和Thumb指令集)。
③ 可定義AArch64和AArch32兩套運行環(huán)境,分別執(zhí)行64bit和32bit指令集。也可以在需要的時候,切換運行環(huán)境。
④ 在AArch64運行環(huán)境中,重新解釋了處理器模式、優(yōu)先級等概念。
⑤ 在ARMv7 安全擴展的基礎(chǔ)上,新增安全模式,支持與安全相關(guān)的應(yīng)用需求。
⑥ 在ARMv7 虛擬化擴展的基礎(chǔ)上,提供完整的虛擬化框架,并在硬件上支持虛擬化。
- 基于Proteus的Arduino可視化設(shè)計
- QTP從實踐到精通
- 一線架構(gòu)師實踐指南
- UML基礎(chǔ)與Rose建模案例(第3版)
- 實戰(zhàn)Java虛擬機:JVM故障診斷與性能優(yōu)化(第2版)
- DevOps:企業(yè)級CI/CD實戰(zhàn)
- ODPS權(quán)威指南 阿里大數(shù)據(jù)平臺應(yīng)用開發(fā)實踐
- 百度SEO一本通
- Swift從入門到精通(正式版)
- 構(gòu)建跨平臺APP:jQuery Mobile移動應(yīng)用實戰(zhàn)(第2版) (跨平臺移動開發(fā)叢書)
- UG NX 8.0實例教程(第2版)
- 深入淺出系統(tǒng)虛擬化:原理與實踐
- x86匯編與逆向工程:軟件破解與防護的藝術(shù)
- Unity游戲案例開發(fā)大全
- C++從入門到精通(第2版)