1.2.2 ARM体系结构扩展
ARM处理器体系结构在支持32位ARM指令集合16位Thumb指令集的同时,在不同指令体系结构的基础上做了扩展。
1.Thumb指令集
Thumb指令集是将ARM指令集的一个子集重新编码而形成的一个指令集。ARM和Thumb指令码分别运行于各自的处理器状态。Thumb指令集有两个版本,版本1 运行于ARMv4的T变种,版本2运行于ARMv5以后的T变种。
Thumb指令集版本2通过增加或对已有指令的修改,提高ARM指令和Thumb指令混合使用时的效率,可以利用Thumb代码的密度获得ARM指令水平的性能。
2.增强型DSP指令
增强型DSP指令通常称为E变种,首先在ARM体系ARMv5TE中使用,包含一些附加的指令,这些指令用于增强处理器对一些典型的DSP算法的处理性能。
3.Jazelle
采用Jazelle技术的J变种首先在ARMv5TEJ中使用。Jazelle是一种体系结构扩展技术,为ARM处理器引入了第三套指令集——Java虚拟机器码。Jazelle技术提供了Java加速功能,可以得到比普通Java虚拟机高得多的性能,将Java的优势和先进的32位RISC芯片完美地结合在一起。
采用Jazelle技术与基于软件的Java虚拟机相比,可以提高8倍的性能。Jazelle技术能在移动电话和消费电子产品等众多应用终端上显著地降低Java应用程序对内存的占用空间,同时提高性能并降低功耗。
ARM的Jazelle扩展集在移动设备上实现了非常高速的性能表现,快速的响应和顺畅的软件运行,给用户带来了全新的使用体验。
4.媒体技术扩展
SIMD(Single Instruction Multiple Data,单指令多数据)技术提供了高性能的音频/视频处理技术。ARMv7推出的NEON是一种64/128位单指令多数据流(SIMD)指令集,可以在低于10 CPU MHz的速度下执行MP3音频解码功能、在13 CPU MHz下运行GSM多速率语音编解码功能;支持8、16、32和64位整数和单精度浮点SIMD运行,适合手持音频/视频处理,以及图形和游戏处理。作为ARM的OptimoDE数据引擎的补充技术,NEON将运用到ARM未来的处理器中。
5.TrustZone
TrustZone技术是在嵌入式领域实现安全计算的软硬件集成保密系统,通过对硬件和软件部分的合理组合,ARM的TrustZone技术提供了一种具有高度安全性的系统架构,而对于内核的功耗,性能和面积的影响微乎其微。TrustZone是一个安全的执行环境,使半导体厂商和OEM开发者可以在各自的软/硬件IP上开发和应用有关的保密措施。TrustZone的软件是一系列部件的成功组合,包括软件安全专家系统、可信任的逻辑电路、安全的代码执行环境和基本的安全服务,如密码系统、保险箱,保护器件和平台安全的完整性检验。通过器件级的安全性,TrustZone提供了一个平台,用以解决应用和用户级的安全问题。
TrustZon硬件提供代码隔离的保密环境,保密软件提供基本的安全服务和其他安全环节上各部件(如智能卡、操作系统和普通的应用程序)间的接口。TrustZone隔离了两个平行的执行环境:普通的非保密执行环境,安全的需认证的保密环境。