小论文浅谈ARM体系及其发展_第1页
小论文浅谈ARM体系及其发展_第2页
小论文浅谈ARM体系及其发展_第3页
小论文浅谈ARM体系及其发展_第4页
小论文浅谈ARM体系及其发展_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浅谈arm体系及其发展*指导教师:*摘要在如今这个信息化时代,arm嵌入式系统在各个领域均得到了广泛的应用。本文介绍了 arm体 系的发展历史、指令集特和程序模型,并概述了 amr嵌入式微处理器在国内的发展情况,最后还对 其未來发展趋势等进行了分析。关键词arm;恢入式微处理器;发展abstract: in this information ago, arm embedded system has been widely used in various fields. is introduced in this paper the development history of arm arch

2、itecture, instruction set and program model, and outlines the amr embedded microprocessor in domestic development. final 1y, on its future development trend were analysed.key words: arm; embedded microprocessor; development1引言嵌入式系统在工业、军事国防、消费电了、网络设备等诸多领域冇着广泛的应川。它是以应用为 中心,以计算机技术为基础,并且软硕件可裁剪,适用于应用系统对功

3、能、可靠性、成本、体枳、 功耗有严格要求的专用计算机系统。其主要山嵌入式微处理器、外围硬件设备、嵌入式操作系统以 及用户的应用程序4个部分组成。目前,嵌入式微处理器以32位为主,在32位微处理器中又以arm为核心,采用arm技术知识产 权(tp核)的微处理器,已经遍及工业控制、消费类电了、通信系统、网络系统等各类产品市场。2 arm技术2. 1arm体系结构版本首个arm处理器是1983年10月至1985年4月间在英国剑桥的acorn computer公司开发的,釆 用的是典型32位risc体系结构。为推广arm技术,1990年11月由苹果电脑、acorn电脑集团和 vlsi technolo

4、gy 合资组建成了独立公司:advanced risc machine limitedc 1991 年,arm 推出首 个嵌入式risc核心arm6系列微处理器,目前,arm公司现己发展成为一家全球人公司。arm只岀售arm核心技术授权而不生产芯片,至今arm体系结构共有七个版木,分别是版木vi 到版本v7,如表1所示,根据其技术的璽大突破可以分为两个阶段。第一阶段:版本vi、v2、v3这3个早期arm版本功能单一,没有大范围占领市场,主要处于开 发和实验阶段。第二阶段:从arm4开始,arm体系结构完善和提高阶段,其性能得到了极大的提高。版本版木变种系列号处理器核viviarm1arm1v2

5、v2arm2arm2v2aarm2asarm3v3v3arm6arm6. arm6(m). arm610arm7arm7. arm700. arm710v4v4tarm7ti)mk arm710t. arm720t. arm740tv4/krm8strongarm. arm8. arm810v4tarm9arm9tdml arm920t. arm940tv5v5tearm9e-sar110armlotdmk arm1020e6v6ar111armlk arm11562-s. arm1156t2f-s.arm11jzf-sv7v7armcotexarm cotex/rm cotex-r4. ar

6、m cotex-m3arm技术版本与发展阶段2. 2主流arm处理器内核系列当前,,主流arm处理器内核系列主要有arm7系列、arm9系列.arm 10系列、arm11系列、arm cortex 系列。下面进行简单介绍。2. 2. 1 arm7 系列1993年推出的arm7系列为低功耗的32位risc处理器,具有三级流水线和冯诺依曼结构,主 频最高可达130m1ps,对操作系统的支持广泛。另外其代码密度高并兼容16位的thumb指令集, 可以运行新的16位指令。该系列包括arm7tdmk arm7tdmi-s、arm7ej、arm720t,其中arm7tdmi 是川于低端的、冃前应川最广泛的

7、arm微处理器。arm7系列微处理器的主要应川领域为工业控制、 internet设备、网络和调制解调器设备、移动电话等等,同时由于arm7系列具有极低的功耗,最 适于对价位和功耗敏感的消费类应用,如便携式产晶。2. 2. 2 arm9 系列arm9系列微处理器具冇五级流水线和哈佛结构,在高性能和低功耗特性方面提供最佳的性能。 arm9系列微处理器主要应用于无线设备、仪器仪表、安全系统、机顶盒、高端打印机、数字照相 机和数字摄像机等。于1999年开始推出的arh9e系列微处理器,其带有增强型dsp、java应用系统的解决方案,具有 芯片体积小,结构简单,功耗低,上市时间短的优点oarm9e系列微

8、处理器提供增强的dsp处理能力, 适合具冇大量数据运算的应川场合。基于arm9e系列核的产品因貝-有dsp和增强的32位rtsc处理 器,非常适用于对dsp和微控制器都有耍求的领域。2.2.3 arm10 系列于1998年推出,带有dsp扩展、嵌入式ice-rt.六级流水线,执行更高的效率,与arm9相比,在 同等的时钟速度下,性能提高了 50%。arm 10系列广泛应用于网络处理产品、数字机顶盒、缺入式控 制产品、消费娱乐产品和无线设备。2.2.4 arm11 系列arm 11系列微处理器内核是arm版木v6的第一代设计实现,完全兼容以前的体系结构。在处理 器能捉供超高性能的同时,还能保证功

9、耗、面积的冇效性。arm11系列微处理器产品主要应川于多 媒体播放设备、智能手机或中终端、网络设备、通信基站、以及手持游戏设备等。2. 2. 5 arm cortex 系列arm cortex处理器系列具有先进的3级流水线,基于哈佛结构,分为cortex-a、cortex-r和 cortex-m三个系列,分别川于不川的领域。cortex-a系列是面向高度那的复杂操作系统,运行包 括linuxs windows ce和android等操作系统的消费者娱乐和无线产品设计的;cortex-r系列面 向需要运行实吋操作系统来进行控制应用的系统,包括汽车电子、网络和影像系统;cortox-m系 列则是面

10、向开发用户要求低成本同时对性能要求不断增加的嵌入式应用设计。其屮,armcortex-a 和cortex-r系列处理器还支持arm32为指令集,向后完全兼容早期的arm处理器。目前,arm cortex系列处理器主要应用于汽车电子、家庭智能网络、无线电技术及金业应用等 领域。2. 3arm体系的指令集一个cpu的指令集是硬件和软件之间的一个重要的分水岭,根据分层的思想,指令集向上要有力 地支持编译器,向下要方便硬件的设计实现。arm是典型的risc结构,根据rtsc的设计思想,其 指令集的设计应该尽可能地简单,和cisc体系相比,它可以通过一系列简单的指令来实现复杂指 令的功能。2.3.1 a

11、rm微处理器的指令集arm微处理器的指令集可以分为数据处理指令、分支指令、加载/存储指令、批量加载/存储指令、 交换指令、程序状态寄存器(psr)处理指令、协处理器操作指令和弄常产生指令八大类。2.3.2 arm指令集的特点%1 所有arm指令都是32位定长,在内存中以4字节边界保存(地址最后两位为0),这样方便 译码电路和流水线的实现。当然arm内核一般也支持另外一种16位的指令集thumbo thumb 指令集可以看作是arm指令集的一种压缩形式,它在处理器屮仍然要扩展为标准的32位arm 指令来运行。用八采用16位thumb指令集最人的好处就是可以获得更高的代码密度和降低 功耗,arm的

12、开发工具也完全支持thumb指令集。%1 load-store架构。由于arm指令集属于risc体系,risc体系的特征就是:一般指令只能把 内部奇存器和立即数作为操作数,只有load-store类型的数据移动指令才可以访问内存, 在内存和寄存器z间转移数据。%1 由于硬件上有barrel (桶型)移位器,所以arm可以在一个指令中用一个指令周期完成一 个移位操作和一个alu (算术逻辑)操作。%1 所有指令都可以条件执行,这是由其指令格式决定的。任何指令的头4位都是条件指示位, 根据cpsr(当前程序状态寄存器,见后面表)中的n (负指示),z (零指示),c (进位指示), v (溢出指示

13、)决定该指令是否执行。这样可以方便高级语言的编译器设计,很容易实现分 支和循环。%1 有功能很强的一次加载和存储(l0ad-sr0re)多个寄存器的指令:。ldm和sth。这样,当发 生过程调用或中断处理吋,可以只用一条指令就能把当前多个寄存器的内容保护到内存堆栈 中。从以上特点可以看出,指令集可以很方便地实现汇编语言设计,同时也强 有力支持了高级语言(如语言)编译器的开发。2. 4arm的程序模型在arm的指令集z上,如杲应用简单,用户可以只需要编一些单个的控制程序就能满足要求,这 就类似单片机的开发。但是如來应用很复朵,就需要加载嵌入式操作系统(如wince,嵌入式linux), 然后在嵌

14、入式操作系统z上开发用户的应用程序,通过嵌入式操作系统來完成用户进程的调度和对 低层硬件的控制。同时,嵌入式应用的环境往往要优先保证实时性。因此,arm体系对操作系统和 实时性的保证都提供了强有力的支持,这从程序模型可以看出。2.4.1 arm处理器的工作模式%1 用户模式:这是用户程序运行的正常模式,在这种模式下,程序不能访问一些受保护的资 源,以利于操作系统控制系统资源的使用。除了用户模式之外,其他6种处理器模式可以 称为特权模式。%1 fiq模式:也称为快速中断模式,能快速响应用户中断,支持高速数据传输和通道处理, 以满足少数需要极高实时性的请求。%1 irq模式:也称为普通中断模式,用

15、于一般的中断处理。可以对应一般的多个屮断源。%1 svc模式:也称为管理模式,当复位或软屮断指令执行时处理器将进入这种模式,是一种 操作系统保护模式。%1 中止模式:当存取异常时将会进入这种模式,丿ij來处理存储器故障、实现虚拟存储或存储 保护。%1 未定义指令异常模式:当执行未定义指令时会进入这种模式,主要是用来处理未定义的指 令陷阱,支持硬件协处理器的软件仿真。%1 系统模式:使川和用户模式相同寄存器组的特权模式,川來运行特权级的操作系统任务, 主耍用于对操作系统的支持和对系统资源的管理。在6种特权模式中,除了系统模式外的 其他5这种特权模式乂称为界常模式。2.4.2内部寄存器arm处理器

16、共冇37个寄存器,这些寄存器包括两类,分别冇31个通川寄存器和6个状态寄存器。 通用寄存器和状态寄存器都是32位的寄存器,但状态寄存器冃前只使用了其中的14位。在arm处理器的7中模式下,每种工作模式都有一组与之对应的寄存器组。在任意时刻,可见 的寄存器组包括15个通用寄存器r0-r14、一个或两个状态寄存器和pc。在所有的寄存器屮,有 些是与其他模式下共用的同一个物理寄存器,启些是其白己独立拥冇的物理寄存器。各种模式下寄 存器分布情况如表2所示。表2中,通川寄存器的r0-r7和pc (r15),在所冇的模式都可以被访 问,故这些寄存器也被称为纯通用寄存器;而r8-r14这些寄存器的使川所对应

17、的物理寄存器要视 不同的模式而定,则也被称为模式分组寄存器。程序状态寄存器包括cpsr (当前程序状态寄存器)和spsr (程序状态备份寄存器)。其中cpsr 可以在任何处理器模式下被访问。spsr是每一种异常模式下专用的物理状态寄存器,当特定的异 常中断发生时,这个寄存器用于存放当前程序状态奇存器的内容。在界常退出时,可以用spsr中 保存的值来恢复cpsrosystom & usorfiqsupervisoraboutirgundofirwdr0rororororor1r1r1r1r1r1r2r2r2r2r2r2r3r3r3r3r3r3r4r4r4r4r4r4r5r5r5r5r5r

18、5r6r6r6r6r6r6r7r7r7r7r7r7r8、r8一何r8r8r8r8r9、r9 fiqr9r9r9r9r10、r10 fiqr10r10r10r10r11r11r11r11r11r12r12r12r12r12r13、r13q、r13 svc、r13, abt、r13 irq、r13 undr14fiq、r14$vc、r14abt、rl4 irq、rl4 undr15(pc)r15 (pc)r15(pc)r15(pc)r15(pc)r15(pc)cpsrcpsr、spsr fiqcpsrcpsrspsr svcspsr abtarm状态下的程序状态寄存器cpsrcpsr、spsrgs

19、psr und2. 4. 3异常处理当在程序的运行之中,发生的外部(如中断请求)或内部(如未定义指令)事件需要处理器立即 进行处理,就产生了一个异常。arm支持7种异常如表3所示。当发生界常时,首先耍保存当前程序的返回地址和cpsr,再执行其它相应措施,然后进入到相 应的界常向量地址,一般来说在异常向量地址是一个跳转指令,使程序进入相应的异常处理过程。 当异常的处理过程返冋时,只需把spsr的r14内容分别置回cpsr和pc。异常方式处理器模式向虽地址重启(keset)svcox(xx)(x)(x)o未定义指令(iin>tniction 1und(氐00000(x)4软件中断(softw

20、are interrupt)svc0x00000008预取指令错误(prefet ch abort)alxirtox0000000c取数据错误(data abort)alxirt()x(xx)(x)()10止常中断(irq)irq(氐00000()18快速中断(fiq)fiqox(x)(x)(x)lc表3 arm异常与入口信息2. 4. 4输入输出系统arm对输入输出的外部设备是作为内存映彖形式处理的,它们的寄存器地址和内存一样是统一编 址的,访问这些外部设备可以采用读取和设置这些地址,就和访问内存一样。唯一的区别就是i/o 寄存器是“读敏感”的,每次读的值都可能不一样。因此,它们不能被缓冲和缓存。3 国内arm的发展arm在国际上主要的制造设计伙伴包括德仪、高通、英伟达、迈威科技、意法爱立信、三星、瑞 萨、飞思卡尔等,与国际上发展相比,国内arm芯片主要的1c公司还有一些差距,这些差距主要 是芯片设计经验的不足,市场认知度不高,使得相关产品在国际市场竞争屮相对落后。目前就arm 公司官方网站显示,其全球合作伙伴总数约为800家,而中国国内合作伙伴数约为70家,其业务 范围包括arm在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论