ARM处理器的分类
基于指令集体系结构的分类:v1,v2,v5,v5TEJ,v6等
基于处理器内核的分类:ARM7,ARM9,ARM10,ARM11,StrongARM,XScale等
ARM芯片体系结构版本
ARM架构自诞生至今,已经发生了很大的演变,至今已定义的版本有:V1版架构、V2版架构、V3版架构、V4版架构、V5版架构、V6版架构。
V1版架构
该版架构只在原型机ARM1出现过,其基本性能:
1、基本的数据处理指令(无乘法)
2、字节、半字和字的LOAD/STORE指令
3、转移指令,包括子程序调用及链接指令
4、软件中断指令
5、寻址空间:64M字节(26)
V2版架构
该版架构对V1版进行了扩展,如ARM2架构,增加了以下功能:
1、乘法和乘加指令
2、支持协处理器操作指令
3、快速中断模式
4、SWP/SWPB基本存储器与寄存器交换指令
5、寻址空间:64M字节
V3版架构
1、把寻址空间增至32位(4G字节),
2、增加了当前程序状态寄存器CPSR和程序状态保存寄存器SPSR以便于异常的处理。
3、增加了中止和未定义二种处理器模式。
4、ARM6就采用该版架构。
5、指令集变化:增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;增加了从异常处理返回的指令功能。
V4版架构
V4版架构是目前应用最广的ARM体系结构,对V3版架构进行了进一步扩充,有的还引进了16位的Thumb指令集,使ARM使用更加灵活。ARM7、ARM8、ARM9和StrongARM都采用该版架构。
指令集中增加了以下功能:
1、有符号、无符号的半字和有符号字节的Load/Store指令。
2、增加了16位Thumb指令集
3、完善了软件中断SWI指令的功能
4、增加了处理器的特权模式。
V5版架构
这是最近几年推出ARM架构,在V4版基本上增加了一些新的指令,ARM10和XScale都采用该版架构,这些新增指令有:
1、带有链接和交换的转移BLX指令
2、计数前导零CLZ指令
3、BKPT软件断点指令
4、增加了信号处理指令
5、为协处理器增加更多可选择的指令
v6版架构
1、适合使用电池供电的便携式设备
2、增加了 SIMD功能扩展,提高了嵌入式应用系统的音频、视频处理能力。
Thumb技术
ARM的RISC体系结构的发展中已经提供了低功耗、小体积、高性能的方案。而为了解决代码长度的问题,ARM体系结构又增加了T变种,开发了一种新的指令体系,这就是Thumb指令集,它是ARM技术的一大特色。
Thumb是ARM体系结构的扩展。它有从标准32位ARM指令集抽出来的36条指令格式,可以重新编成16位的操作码。这能带来很高的代码密度。
支持Thumb的ARM体系结构的处理器状态可以方便的切换、运行到Thumb状态,在该状态下指令集是16位的Thumb指令集。
与ARM指令集相比.Thumb指令集具有以下局限:
1、完成相同的操作,Thumb指令通常需要更多的指令,因此在对系统运行时间要求苛刻的应用场合ARM指令集更为适合;
2、Thumb指令集没有包含进行异常处理时需要的一些指令,因此在异常中断时,还是需要使用ARM指令,这种限制决定了Thumb指令需要和ARM指令配合使用。