全新ARMv8-M基线指令
对比ARMv6-M,Cortex-M23加入了许多全新指令,但丝毫没有折损Cortex-M系列处理器的超高能效。大多数新指令(除用于安全拓展外)都继承自ARMv7-M的架构指令集,进一步拓展Cortex-M23的功能,并与Cortex-M0+ 处理器形成鲜明区分。
1安全拓展
ARMv8-M采用的TrustZone安全技术为基线指令集补充了全新指令,包括安全网关(SG)、非安全支路(BXNS、BLXNS)以及测试目标(TT)指令。欲知详情,请参阅Yiu撰写的《ARMv8-M 架构介绍》。
2 仅执行代码生成
对仅执行(Execute-Only)代码存储区的支持也获得改善,新增加的即时移动指令(从ARMv7-M继承的MOV/MOVT)可以在仅执行代码中生成即时数据,让设计师仅凭2条指令便能生成32位值,且无需运行实际负载。
3代码优化
条件比较和支路指令(从ARMv7-M继承的CBNZ/CBZ)可以提高多项条件控制代码序列的性能。长偏移即时支路(从ARMv7-M继承的)可以将支路指向遥远的目标地址;硬件整数划分指令(从ARMv7-M继承的SDIV/UDIV)则可以减少除法运算的处理循环。
4排斥存取
Cortex-M23还从ARMv7-M继承了负载和储存的专用指令,提升Cortex-M23在多核系统中的一贯性,确保多个处理器以同样的机制处理信号。此外,为了对C11/C++11提供稳定支持,Cortex-M23还新增ARMv8-A(Thumb 32版本)的负载获取
全新ARMv8-M基线指令
对比ARMv6-M,Cortex-M23加入了许多全新指令,但丝毫没有折损Cortex-M系列处理器的超高能效。大多数新指令(除用于安全拓展外)都继承自ARMv7-M的架构指令集,进一步拓展Cortex-M23的功能,并与Cortex-M0+ 处理器形成鲜明区分。
1安全拓展
ARMv8-M采用的TrustZone安全技术为基线指令集补充了全新指令,包括安全网关(SG)、非安全支路(BXNS、BLXNS)以及测试目标(TT)指令。欲知详情,请参阅Yiu撰写的《ARMv8-M 架构介绍》。
2 仅执行代码生成
对仅执行(Execute-Only)代码存储区的支持也获得改善,新增加的即时移动指令(从ARMv7-M继承的MOV/MOVT)可以在仅执行代码中生成即时数据,让设计师仅凭2条指令便能生成32位值,且无需运行实际负载。
3代码优化
条件比较和支路指令(从ARMv7-M继承的CBNZ/CBZ)可以提高多项条件控制代码序列的性能。长偏移即时支路(从ARMv7-M继承的)可以将支路指向遥远的目标地址;硬件整数划分指令(从ARMv7-M继承的SDIV/UDIV)则可以减少除法运算的处理循环。
4排斥存取
Cortex-M23还从ARMv7-M继承了负载和储存的专用指令,提升Cortex-M23在多核系统中的一贯性,确保多个处理器以同样的机制处理信号。此外,为了对C11/C++11提供稳定支持,Cortex-M23还新增ARMv8-A(Thumb 32版本)的负载获取
举报