ARM体系结构版本

arm32位体系结构目前被公认为是嵌入式应用领域领先的32位嵌入式risc微处理器结构。自诞生至今,arm体系结构发展并定义了6种不同的版本。从版本1到版本6,arm体系的指令集功能不断扩大。arm处理器系列中的各种处理器,虽然在实现技术、应用场合和性能方面都不相同,但只要支持相同的arm体系版本,基于它们的应用软件将是兼容的。
1.v1版架构
该版架构只在原型机arm1出现过,没有用于商业产品。其基本性能有:
基本的数据处理指令(无乘法)。
基于字节、半字和字的load/store指令。
转移指令,包括子程序调用及链接指令。
供操作系统使用的软件中断指令swi。
寻址空间:64mb(226b)。
2.v2版架构
该版架构对v1版进行了扩展,例如arm2和arm3(v2a)架构,v2a版是v2的变种,arm3芯片采用了版本2a。v2版架构与v1版相比,增加了以下功能:
乘法和乘加指令。
支持协处理器操作指令。
快速中断模式。
swp/swpb的最基本存储器与寄存器交换指令。
寻址空间:64mb。
3.v3版架构
v3版架构对arm体系结构作了较大的改动:
寻址空间增至32位(4gb)。
当前程序状态信息从原来的r15寄存器移到一个新的寄存器中,即当前程序状态寄存器cpsr(current program status register)。
增加了程序状态保存寄存器spsr(saved program status register),保存程序异常中断时的程序状态,以便于对异常(exception)的处理。
增加了中止(abort)和未定义两种处理器模式。
增加了mrs/msr指令,以访问新增的cpsr/spsr寄存器。
增加了从异常处理返回的指令功能。
4.v4版架构
v4版架构在v3版上作了进一步扩充,指令集中增加了以下功能:
符号化和非符号化半字及符号化字节的存/取指令。
增加了16位thumb指令集。
完善了软件中断swi指令的功能。
处理器系统模式引进特权方式时使用用户寄存器操作。
把一些未使用的指令空间捕获为未定义指令。
v4版架构是目前应用最广的arm体系结构,arm7、arm8、arm9和strongarm都采用该架构。
5.v5版架构
v5版架构是在v4版的基础上增加了一些新的指令,arm10和xscale都采用该版架构。这些新增命令有:
带有链接和交换的转移blx指令。
计数前导零clz(count leading zeros)指令。
brk中断指令。
增加了数字信号处理指令(v5te版)。
为协处理器增加更多可选择的指令。
6.v6版架构
v6版架构是2001年发布的,首先在2002年春季发布的arm11处理器中使用。此架构在v5版的基础上增加了以下功能:
thumbtm:35%代码压缩。
dsp扩充:高性能定点dsp功能。
jazelletm:jova性能优化,可提高8倍。
media扩充:音/视频性能优化,可提高4倍。