对ARM体系结构及处理器模式的初步探索..doc

对ARM体系结构及处理器模式的初步探索..doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
对ARM体系结构及处理器模式的初步探索.

对ARM体系结构及处理器模式的初步探索 ARM,ARM体系,ARM指令集,SOC,IP核 1 ARM体系的发展 CISC体系由于指令集庞大,指令长度不固定,指令执行周期有长有短,指令译码和流水线的实现在硬件上非常复杂,给芯片的设计开发和成本的降低带来了极大困难。 针对这些明显的弱点,美国加州大学伯克利分校的Patterson教授领导的研究生团队设计和实现了“伯克利RI SC I”处理器,他们在此基础上又开发了后来的SUN公司的SPARC系列RISC处理器,并使得采用该处理器的SUN工作站名震一时。与此同时,斯坦福大学也在RISC研究领域取得了重大进展,开发并产业化了MIPS系列RISC处理器(后来被SGI公司收购,并广泛用于SGI的图形工作站)。被这两种RISC处理器所取得的巨大成功所鼓舞,英国的Acorn计算机公司在1983年到1985年之间也开发出了第一代ARM RISC处理器,当时ARM还只是Acorn RISC Machine的缩写。之后于1990年,公司又把名字改写为简单的ARM Limited,并且是Advanced RISC Machine(先进RISC机器)的缩写。经过这么多年的发展,ARM已经形成了如下系列(表1)的大家族。 表1 Core Architecture ARM1 V1 ARM2 V2 ARM2As,ARM3 V2a ARM6,ARM600,ARM610 V3 ARM7,ARM700,ARM710 V3 ARM7TDM1,ARM710T,ARM720T,ARM740T V4T StrongARM,ARM8,ARM810 V4 ARM9TDM1,ARM920T,ARM940T V4T ARM9E-S V5TE ARM10TDM1,ARM1020E V5TE 表1中的核心Core包括处理器核Processor Core(ARM7TDM1,ARM8,StrongARM,ARM9TDMI ARM10TDMI)和CPU Core(其它)。CPU Core实际上是在各种相应的处理器核的基础之上,集成和优化了Cache和MMU内存管理单元(Memory management unit)后形成的,它能以单独的CPU芯片提供给用户更高的性能。而各种处理器核(Processor Core)则可用软IP模块,或者硬IP模块的方式潜入到各种用户不同的应用之中,形成相应的SOC(System on a Chip)系统芯片,这不仅节省了功耗和成本,还最大限度的节省了用户的开发时间,另外,特别值得一提的是StrongARM,它原来是DEC公司和ARM公司合作开发的。1998年,Intel又开发和生产出SA110,SA1100,SA1110等一系列StrongARM高性能嵌入式处理器。特别是SA1110,本身就是一个非常典型的SOC芯片,已经把液晶控制器,外设接口(USB,IrDA,UART,PCMCIA),音频编解码器Codec等和CPU集成到了同一个芯片内,可以很方便地嵌入于各种掌上设备 ARM体系的指令集 一个CPU的指令集是硬件和软件之间的一个重要的分水岭,根据分层的思想,指令集向上要有力的支持编译器,向下要方便硬件的设计实现。ARM是典型的RISC体系,根据RISC的设计思想,其指令集的设计应该尽可能的简单,和CISC体系相比,他可以通过一系列简单的指令来实现复杂指令的功能。 ARM的指令集包括6种典型的指令: 1 分支指令:如 B,BL 等。 2 数据处理指令:如 ADD,SUB,AND 等。 3 状态寄存器转移指令:如 MRS,MSR 等。 4 LOAD – STRORE 数据移动指令:如 LDR 等。 5 协处理指令:如 SWI 等。 (2) ARM指令集是一个非常优秀的指令集,它有以下特点: 1 所有ARM指令都是32位定长,在内存中以4字节边界保存(地址最后两位为0),这样方便译码电路和流水线的实现。当然ARM内核一般也支持另外一种16位的指令集Thumb(感兴趣的读者可以参考ARM手册,本文不作述),Thumb指令集可以看作是ARM指令集的一种压缩形式,它在处理器中仍然要扩展为标准的32位ARM指令来运行。用户采用16位Thumb指令集最大的好处就是可以获得更高的代码密度和降低功耗,当然它是被ARM的开发工具所完全支持的。 2 LOAD – STORE 架构。由于ARM指令集属于RISC体系,RISC体系的特征就是:一般指令只能把内部寄存器和立即数作为操作数,只有 LOAD – STORE类型的数据移动指令才可以访问内存,在内存和寄存器之间转移数据。 3 由于硬件上有barrel(桶型)移位器,所以ARM可以

文档评论(0)

sa1fs5g1xc1I + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档