- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章 ARM体系结构 * * 第3章 ARM体系结构 3.1 ARM体系结构的特点 ARM即Advanced RISC Machines的缩写。ARM公司1990年成立,是设计公司。ARM是知识产权(IP)供应商,本身不生产芯片,靠转让设计许可,由合作伙伴公司来生产各具特色的芯片。 ARM处理器的3大特点是: 低功耗、成本低、功能强; 16位/32位双指令集; 全球众多合作伙伴保证供应。 (1)大的、统一的寄存器文件 RISC处理器拥有更多的通用寄存器,每个寄存器都可存放数据或地址。 (2)Load/Store体系结构 加载/存储结构,数据处理 操作只针对寄存器的内容,而不直接对存储器进行操作,简称RR系统结构 (3)简单的寻址方式 所有加载/存储的地址都只由寄存器的内容和指令域决定。 (4)固定长度指令,均可条件执行,简化指令译码。 统一和固定长度的指令域,简化了指令的译码,便于指令流水线设计;只有某个特定条件满足时指令才会执行,可以减少分支指令数目,改善性能,提高代码密度。 (6)多处理器状态模式 ARM目前支持7种处理器模式,分别为用户、系统、管理、未定义、中止、中断、快中断,除用户模式外,其余均为特权模式,大大提高ARM处理器的效率。 (7)嵌入式在线仿真调试 可通过JTAG来仿真调试ARM体系结构芯片,实现实时跟踪指令和数据的执行。 (8)灵活、方便的接口 ARM处理器核具有片上总线AMBA架构,包括AHB、ASB、APB,可扩充各种协处理器及I/O口,实现DSP、其他处理器和I/O(如UART、定时器)等集成在一块芯片上。 (5)支持ARM/Thumb指令集 Thumb指令集是原来32位ARM指令集的16位压缩形式,并在指令流水线中使用了动态解压缩硬件,有效提高代码密度。 3.2 ARM处理器机构 由32位ALU、31个32位通用寄存器及6个32位状态寄存器、32×8位乘法器、32×32位桶形移位寄存器、指令译码及控制逻辑、指令流水线和数据/地址寄存器组成。 (1)ALU ——算术与逻辑单元 ARM体系结构的ALU与常用的ALU逻辑结构基本相同,由两个操作数锁存器、加法器、逻辑功能、结果及零检测逻辑构成。 (2)桶形移位寄存器 ARM采用32*32位桶形移位寄存器,左移/右移n位、环移n位和算术右移n位都可以一次完成。 (3)高速乘法器 ARM为了提高运算速度,采用两位乘法的 方法,2位乘法可根据乘数的2位来实现“加——移位”运算。 (4)浮点部件 在ARM体系结构中,浮点部件作为选件可根据需要选用,FPA10浮点加速器以协处理器方式与ARM相连,并通过协处理器指令的解释来执行。 (5)控制器 ARM控制器采用硬连线的可编程逻辑阵列PLA,其输入端有14根、输出端有40根,分散控制Load/Store多路、乘法器、协处理器以及地址、寄存器、ALU和移位器。 (6)寄存器 ARM内含37个寄存器,包括31个通用32位寄存器和6个状态寄存器。 计算机中的1条指令的执行可以分若干个阶段: ① 取指,从存储器中取出指令(fetch); ② 译码,指令译码(dec): ③ 取操作数,假定操作数从寄存器组中取(reg); ④ 执行运算(ALU); ⑤ 存储器访问,操作数与存储器有关(mem); ⑥ 结果写回寄存器(res)。 3.3 ARM流水线结构 ARM体系结构的3级流水线 ARM7体系结构采用了3级流水线,分为取指,译码和执行。下图是单周期3级流水线的操作示意图。 ARM体系结构的3级流水线 由于取指的存储器访问和执行的数据通路占用都是不可同时共享的资源,因此对多周期指令来说,会产生流水线阻塞。如图3-12所示下图的影印框周期都是与存储器访问有关的。因此在流水线设计中不允许重叠 。 ARM体系结构的5级流水线 5级流水线把存储器的取指与数据存取分开,增加了I-Cache和D-Cache以提高存储器存取的效率,增加了数据写回的专门通路和寄存器,以减少数据通路冲突,解决存储器访问和数据通路的占用上所存在的资源共享问题。 这样,5级流水线分为:取指、指令译码、执行、数据缓存和写回。 ARM架构的处理器,有的带有指令Cache和数据Cache,但片内不带有片内RAM和片内ROM,系统所需的RAM和ROM须通过总线外接,如下图。 有些系统还带有存储器管理单元MMU(Memory Management Unit)。 3.4 ARM存储器结构
文档评论(0)