1 / 7
文档名称:

ARM嵌入式.doc

格式:doc   大小:48KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

ARM嵌入式.doc

上传人:文库旗舰店 2019/11/15 文件大小:48 KB

下载得到文件列表

ARM嵌入式.doc

相关文档

文档介绍

文档介绍:京江学院JINGJIANG COLLEGE OF JIANGSU UNIVERSITYARM嵌入式系统姓名:张继业班级:J通信1502学号:415**********/06/061、目的:理解ARM状态和Thumb状态异常返回时对LR的调整的一致性。2、设计方案主要从下面2个方面讨论ARM与Thumb一致性的体现(1)ARM与Thumb状态寄存器(2)ARM与Thumb异常返回地址以及对LR的调整三、ARM状态与Thumb状态介绍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:LDRR0,=lable+1BXR0从ARM到Thumb:LDRR0,=lableBXR0四、ARM与Thumb状态寄存器比较Thumb状态下的RO~R7与ARM状态的RO~R7是一致的;Thumb状态下的CPSR和SPSR与ARM状态的CPSR和SPSR是一致的;Thumb状态下的SP映射到ARM状态下的R13;Thumb状态下的LR映射到ARM状态下的R14;Thumb状态下的PC映射到ARM状态下的R15。5、ARM状态下的异常返回在适当的LR中保存下一条指令的地址,当异常入口来自:ARM状态,那么ARM7TDMI将当前指令地址加4或加8复制(取决于异常的类型)到LR中;为Thumb状态,那么ARM7TDMI将当前指令地址加4或加8(取决于异常的类型)复制到LR中;异常处理器程序不必确定状态。异常总是在ARM状态中进行处理。当处理器处于Thumb状态时发生了异常,在异常向量地址装入PC时,会自动切换到ARM状态。当异常结束时,异常处理程序必须:,偏移量根据异常的类型而有所不同;;。SPSR_<mode>寄存器中,同时设置适当的CPSR位、改变处理器状态进入ARM态和处理器模式,从而进入相应的异常模式。在设置中断禁止位禁止相应中断(如果需要)后,ARM核保存返回地址到LR_<mode>,同时设置PC为相应的异常向量。当异常返回时,异常处理需要从SPSR_<mode>寄存器中恢复CPSR的值,同时从LR_<mode>恢复PC具体步骤:(1)拷贝CPSR到SPSR_<mode>(2)设置适当的CPSR位:1)改变处理器状态进入ARM状态;2)改变处理器模式进入相应的异常模式;3)设置中断禁止位禁止相应中断。(3)保存返回地址到LR_<mode>(4)设置PC到相应的异常向量退出异常处理SWI和未定义指令异常中断是由当前执行的指令自身产生的。当SWI和未定义指令异常中断产生时,程序计数器PC的值还未更新,它指向当前指令后面第2条指令(对于ARM指令来说+8字节;对于Thumb指令来说+4字节的位置)。当SWI和未定义指令异常中断产生时,处理器将值(PC-4)保存到异常