簡體   English   中英

ARMv8-M Baseline 比 ARMv6-M 提供了哪些新指令?

[英]What new instructions does ARMv8-M Baseline provide over ARMv6-M?

2016 年,ARM 推出了 ARMv8-M 架構,作為流行的 ARMv6-M(Cortex M0/M0+/M1)和 ARMv7-M(Cortex M3/M4/M7)架構的升級。 ARMv8-M 架構再次分為基線配置文件,被視為 ARMv6-M 架構的延續,主線配置文件被視為 ARMv7-M 架構的延續。

不幸的是,對ARMv8-M 架構參考手冊的粗略檢查無法了解究竟添加了什么,而且與之前的架構版本相比,似乎也沒有有用的總結。 和往常一樣,對於新版本的 CPU 架構,似乎幾乎所有細節都沒有改變,只是到處添加了一些小細節。

ARMv8-M Baseline 比 ARMv6-M 提供了哪些額外的指令和指令變體?

標題為Cortex-M for Beginners的 ARM 文檔可能會提供您正在尋找的信息,尤其是在第 6 頁和第 7 頁。

ARMv6-M 提供 16 位指令ADC , ADD , ADR , AND , ASR , B , BIC , BKPT , BL , BLX , BX , CMN , CMP , CPS , EOR , LDMIA , LDR , LDRB , LDRH , LDRSB , LDRSH , LSLLSRMOVMULMVNNOPORRPUSHREVREV16REVSHRORRSBSBCSEVSTMIASTRSTRBSTRHSUBSVCSXTBSXTHTSTUDFUXTBUXTHWFEWFIYIELD

此外,還有 32 位指令BLDMBDSBISBMRSMSR可用。

對此,ARMv8-M 基線增加了...

  • 硬件除法指令SDIVUDIV
  • 32 位無條件分支指令B (用於擴展范圍)
  • 16 位比較和分支指令CBZCBNZ
  • 用於加載常量的 32 位指令MOVWMOVT (作為LDR Rd, =...
  • 加載獲取/存儲釋放指令LDALDABLDAHSTLSTLBSTLH
  • 具有獨占訪問權限的加載獲取/存儲釋放指令LDAEXLDAEXBLDAEXHSTLEXSTLEXBSTLEXH
  • 獨占訪問指令CLREXLDREXLDREXBLDREXHSTREXSTREXBSTREXH

如果另外實施了安全擴展,則可以使用指令BLXNSBXNSSGTTTTTTTATTAT

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM