ARM 体系结构

1. ARM 采用了RISC处理器设计的特征。

RISC:(reduced instrument set computer)只包含最有用的指令

CISC:(complex instrument set computer)专用的指令比较多

 

2.ARM体系结构的演变

   通常将具有特殊功能的ARM体系结构成为他的变种:

   Thump 指令集(T变种):ARM的一个子集重新编码后形成的一个特殊的16位指令集。

   长乘指令(M变种):长乘指令是一种生成64位相乘结果的乘法指令。

   增强型DSP指令(E变种):增加了一些增强对典型的DSP算法处理能力的附加指令。

   java加速器jazelle(J变种):jazelle技术使得java代码的运行速度比普通的java虚拟机提高了8倍。

   ARM媒体功能扩展(SIMD):提高了对音频和视频的处理能力。

 

3.Thumb 技术介绍

为了解决代码长度的问题,ARM体系结构又增加了T变种。他有从标准32位ARM指令集抽出来的36条指令格式,可重新编成16位的操作代码。在运行时这些16位的Thumb指令又由处理器解压成32位的ARM指令。

 

与ARM指令集相比,Thumb指令集具有以下局限:

*完成相同的操作,Thumb指令通常需要更多的一些指令,因此系统对运行时间有要求苛刻的应用场合,使用ARM指令集更为合适。

*Thumb指令没有包含进行异常处理时需要的一些指令,因此在一些异常中断时,还是使用ARM指令,这种限制决定了Thumb指令需要与ARM指令配合使用。

 

4.ARM工作状态

  ARM壮态:32位,ARM壮态下执行字对齐的32位ARM指令。在ARM状态下pc的低两位00

  Thumb壮态:16位,Thumb状态下执行半字对齐的16位Thumb指令。在Thumb状态下pc的最低位为0。在Thumb状态下,程序计数器pc使用位1选择另一个半子。

 

需要强调的是:

   ARM和Thumb之间状态的切换不影响处理器的模式或寄存器的内容。

  ARM指令集和Thumb指令集都有相应的状态切换命令。

  ARM处理器在开始执行代码时,只能处于ARM状态下。

  只能使用ARM指令处理异常。

 

5.ARM处理器工作模式

   CPSR:当前程序壮态寄存器 低五位[4:0]用于定义当前工作模式。

  

   7种工作模式如下:

 

    非特权模式:用户模式

    用户模式不能访问受系统保护的资源,也不能进行模式切换。除非有异常中断发生。

 

    特权模式:系统模式 和 异常模式(除了系统模式以外)

  

    系统模式 : 运行特权操作系统任务

    管理模式: 操作系统保护模式,处理软件中断(SWI) 系统复位

    快速中断(FIQ):处理快速中断,支持高速数据传送或通道处理

   中断模式(IRQ): 处理普通中断

   未定义 :处理未定义的指令陷阱

   终止模式:处理存储器故障,实现虚拟存储器和存储器保护。

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值