历史上的今天
今天是:2025年04月05日(星期六)
2020年04月05日 | ARM处理器的工作状态
2020-04-05 来源:eefocus
在ARM的体系结构中,可以工作在三种不同的状态,一是ARM状态,二是Thumb状态及Thumb-2状态,三是调试状态。
1、ARM状态
arm处理器工作于32位指令的状态,所有指令均为32位
2、thumb状态
arm执行16位指令的状态,即16位状态
3、thumb-2状态
这个状态是ARM7版本的ARM处理器所具有的新的状态,新的thumb-2内核技术兼有16位及32位指令,实现了更高的性能,更有效的功耗及更少地占用内存。总的来说,感觉这个状态除了兼有arm和thumb的优点外,还在这两种状态上有所提升,优化。
4、调试状态
处理器停机时进入调试状态。
5、arm与thumb间的切换
1、由arm状态切换到thumb状态将寄存器的最低位设置为1
BX指令:R0[0]=1,则执行BX R0指令将进入thumb状态
2、由thumb状态切换到ARM状态
寄存器最低位设置为0
BX指令:R0[0]=0,则执行BX R0指令将进入arm状态
当处理器进行异常处理时,则从异常向量地址开始执行,将自动进入ARM状态。
注意:ARM处理器复位后开始执行代码时总是只处于ARM状态;
Cortex-M3只有Thumb-2状态和调试状态;
由于Thumb-2具有16位/32位指令功能,因此有了thumb-2就无需Thumb了。
另外,具有Thumb-2技术的ARM处理器也无需再ARM状态和Thumb-2状态间进行切换了,因为thumb-2具有32位指令功能。
总的说,arm状态与Thumb状态的本质区别就是指令的位数不同,arm是32位的指令状态,而thumb是16位 的指令状态,而thumb-2状态是arm状态和thumb状态的结合和优化。
上一篇:ARM 7种处理器模式及功能
史海拾趣
|
正在开发WiFi的模块,感觉代理和原厂都好牛气啊, 代理都没FAE,原厂的FAE根本就不理, 找过好几家都一样,左贞,Ralink,AMP等都一样.. 郁闷啊… 查看全部问答> |
|
本来感觉万利不错,以前买的SE52的仿真器还可以但是这次然我失望……昨天打打电话到杭州万利的销售,倒也满爽快的报价也是199。当天发货,今天收到货拆开就感觉到不对。首先、映入眼帘的是CR1220的时钟电池没有安装。那到算了,自己加一个。其 ...… 查看全部问答> |
|
硬件资源: 处理器:LM4F232H5QC,CORTEX M4 80MHz, 256k Flash, 32k SRAM 板载2MB SPI Flash(W25Q16) 板载2048-Bit I2C EEPROM(AT24L02) 支持2.8英寸带触摸屏的TFT LCD (分辨率320x240) (ILI9325主控) 2路USB接口,支持Host, De ...… 查看全部问答> |




