- 1、本文档共70页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 ARM体系结构;4、ARM的模式无关寄存器、模式相关寄存器和专用寄存器的组织;3.1 ARM及其嵌入式处理器的研发与生产方式;3.1.1 SoC与嵌入式处理器; 计算机的这种单片系统特别适合于嵌入式应用,所以这种SoC也叫做嵌入式处理器。; CPU和与其配合的接口及功能模块都是单独的芯片。;7;4、如何分工; 从上图可知由生产厂商负责的部分分为两个层次:; 由熟悉应用及生产销售的芯片生产厂商来完成在核心基础上的二次开发(浅阴影部分)及芯片的生产。; 半导体芯片生产厂商向核心的研发者购买知识产权的使用权,然后根据市场的需求,在购得的知识产权基础上进行二次开发来生产适合各种类型应用的嵌入式处理器芯片。; 把在处理器基础上经芯片厂商二次开发,以芯片形式提供的用于嵌入式系统的产品叫做嵌入式处理器。; 采用ARM核的嵌入式占据了世界嵌入式处理器市场份额的70%以上。; 一种使用了ARM处理器的嵌入式处理器芯片的示意图如下:; 部分使用ARM核和处理器IP来生产产品的厂商的部分产品如下表所示:;ARM核;3.2 ARM处理器核的结构;1、算术逻辑运算单元ALU;19; 优点:移位操作的速度快,且移位操作所耗费的时间与移动的位数无关。; ARM处理器共有37个32位寄存器。;3.3 冯.诺依曼结构及哈佛结构在ARM中的应用; ARM7采用了冯.诺依曼结构。; 哈佛结构的处理器通常具有较高的执行效率。ARM9、ARM10和ARM11属于哈佛结构。;3.4 ARM处理器的运行模式;运行模式; 用户模式是一种只为用户程序提供了有限硬件资源的运行模式。; 根据处理器硬件资源开放的具体情况,ARM把特权模式分成6种,特权模式中还分为系统模式和异常模式,见下:;特权
模式; ARM处理器的运行模式是由程序状态寄存器PSR的D0~D4位的值来决定的。除用户模式之外的其他运行模式都可以通过修改这5位值的方法来切换处理器的运行模式。;3.5 ARM的两种工作状态; ARM处理器的工作状态由程序状态寄存器CPSR的D5位的值来决定,ARM指令集和Thumb指令集都设有处理器工作状态切换指令。;3.6 ARM处理器的寄存器;34;3.6.1 ARM状态下寄存器的组织方式; 基本寄存器包括:R0~R15,CPSR。其中R0~R7,R15,CPSR为所有运行模式共享;R8~R12为除了快中断模式之外的其他所有运行模式共享;R14、R14为用户模式和系统模式所共享。; 模式私有寄存器的命名方式为R序号_模式。;3、程序计数器R15(PC); PSR的示意图和表示意义如下:;MODE值;标志位;标志位; ARM处理器中有6个PSR,其中1个叫做当前状态寄存器CPSR,是所有运行模式所共享的另外5个PSR为私有模式,是用来对CPSR进行备份的寄存器,叫做SPSR(Saved Program Status Register)。;5、堆栈指针R13(SP); 寄存器R14也叫做子程序连接寄存器(Subroutine Link Register),或连接寄存器LR。; Thumb状态下的寄存器同样也分为模式相关寄存器和模式无关寄存器两种,其命名及使用方式与ARM状态下方式一样。; 在Thumb状态下,高端寄存器R8~R15并不是Thumb状态标准寄存器集的一部分,但在汇编语言程序设计中可以受限制的访问这些寄存器。具体使用方法请参见其它资料。;3.7 存储器的组织; 根据字的4字节在4个存储单元中的存储顺序,ARM提供了2种存储方式:小端方式和大端方式。系统默认的是小端方式,即字的低位字节在地址的低端(小端)。;50;2、ARM的堆栈组织方式; 另外,按照堆栈指针的指向还分为空堆栈和满堆栈。; 根据堆栈的生成方式和满堆栈及空堆栈的区别,就有4种类型的堆栈工作方式:; ARM支持全部全部这4种方式,在ARM中,通常使用寄存器R13来作为堆栈指针SP。;3.8 ARM体系结构的其他特点; 用户应用程序可以通过一组专门的、提供Load/Store类型接口的ARM指令来对协处理器进行访问。;协处理器的标识号;3.8.2 嵌入式的在线仿真调试;3.8.3 低电压低功耗的设计;3.9 ARM体系结构的版本及处理器系列;字符; M变种增加了两条用于进行长乘法操作的ARM指令:一条为32位乘32位生成64位;另一种为32位乘32位,然后在加上32位生成64位。; 虽然ARM的版本有6个,但是其中一些早期的版本已不在使用,目前仍然有效版
文档评论(0)