电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

嵌入式系统原理及应用开发 教学课件 ppt 作者 陈渝 第3章 ARM体系结构

52页
  • 卖家[上传人]:E****
  • 文档编号:89467318
  • 上传时间:2019-05-25
  • 文档格式:PPT
  • 文档大小:1,023.50KB
  • / 52 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第3章 ARM体系结构,第3章 ARM体系结构,3.1 ARM微处理器基础 3.2 ARM的内核系列 3.3 ARM微处理器的指令系统,3.1 ARM微处理器基础,ARM的运行模式 ARM的工作状态 ARM的寄存器组织 ARM的异常 ARM的存储器格式 ARM的特点和优势,ARM的运行模式,ARM微处理器支持7种运行模式,分别为: 用户模式(usr): ARM处理器正常的程序执行状态 快速中断模式(fiq): 用于高速数据传输或通道处理 中断模式(irq): 用于通用的中断处理 管理模式(svc): 操作系统使用的保护模式 终止模式(abt) : 当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。 系统模式(sys): 运行具有特权的操作系统任务。 未定义模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。,ARM的工作状态,ARM微处理器的工作状态一般有两种,并可在两种状态之间切换: ARM状态,此时处理器执行32位的字对齐的ARM指令 Thumb状态,此时处理器执行16位的、半字对齐的Thumb指令,ARM的寄存器组织,ARM微处理器共有37

      2、个32位寄存器,其中31个为通用寄存器,6个为状态寄存器。但是这些寄存器不能被同时访问。 在某种时刻,通用寄存器R14R0、程序计数器PC、一个或两个状态寄存器都是可访问的。,ARM的寄存器组织,ARM的寄存器组织,ARM的寄存器组织,ARM的寄存器组织,ARM的寄存器组织,PSR寄存器的各个位: 中断禁止位I、F Thumb标志位 运行模式位M4:0,ARM的寄存器组织,状态寄存器模式位的含义,ARM的异常,ARM的异常,ARM的异常,1(最高) 复位 2 数据终止 3 FIQ 4 IRQ 5 预取指令终止 6(最低) 未定义指令、SWI,ARM异常的优先级,ARM的存储器格式,ARM体系结构将存储器看作是从零地址开始的字节的线性组合。从第0字节到第3字节放置第一个存储的字数据,从第4个字节到第7个字节放置第二个存储的字数据,依次排列。 作为32位的微处理器,ARM体系结构所支持的最大寻址空间为4GB(32位)。 ARM体系结构可以用两种方法存储字数据,称之为大端格式和小端格式。,ARM的存储器格式,大端格式,ARM的存储器格式,小端格式。,ARM的特点和优势,1内核编程体系 多种模

      3、式的切换 众多的通用寄存器 32位地址/数据操作 指令集中的特殊功能 高效的C和C+编译器 硬件乘法器 Thumb指令集 E增强DSP指令 Jazzle技术 2协处理器 MMU MPU VFP 3AMBA(先进控制器总线体系) 4. 嵌入式ICE、低功耗、小体积,3.2 ARM的内核系列,ARM内核分类与系列 ARM体系结构版本,ARM内核分类与系列,ARM内核系列 ARM7 系列 ARM9 系列 ARM9E 系列 ARM10E 系列 SecurCore 系列 StrongARM/Xscale ARM11系列 Cortex,ARM内核分类与系列,1994-2004年发布的ARM内核,ARM内核分类与系列,处理器内核 内核分类 ARM7 ARM7DMI(-S) ARM720T ARM7EJ-S ARM9 ARM920T ARM922T ARM9E ARM926EJ-S ARM946E-S ARM966E-S ARM968E-S ARM10E ARM1020E ARM1022E ARM1026EJ-S,处理器内核 内核分类 ARM11 ARM1136J(F)-S ARM1156T2(F)-

      4、S ARM1176JZ(F)-S SecurCore SC100 SC110 SC200 SC210 Strong ARM Xscale,ARM7内核,ARM7TDMI,ARM7TDMI-S,ARM720T,ARM7EJ-S,ARM9内核,ARM920T,ARM922T,ARM9E内核,ARM926EJ-S,ARM946E-S,ARM966E-S,ARM968E-S,ARM10E内核,ARM1020E,ARM1026EJ-S,ARM11内核,ARM1136J(F)-S,ARM1156T2(F)-S,ARM1176JZ(F)-S,SecurCore内核,SC100/SC110,SC200/SC210,其他ARM内核,StrongARM Intel XScale Cortex ARM Cortex A (应用内核) ARM Cortex R (实时内核) ARM Cortex M (微控制器),ARM体系结构版本,ARM V1体系是最初的版本,只有26位的寻址空间,没有乘法指令,最终也没有商业化。 ARM V2体系与V1体系同为26位寻址空间具有乘法和乘加指令,支持协处理器。 ARM V3

      5、体系的寻址范围扩展到32位,具有乘法和乘加指令,支持协处理器。 ARM V3体系增加了半字存储操作,对调试的支持以及支持嵌入的ICE。 ARM V3体系增加了 DSP指令支持和对 Java指令的支持。 ARM V6体系增加了媒体指令,ARMv6指令集合中加入了超过60条SIMD单指令多数据指令。 ARM V7体系定义了三种独立的内核型 A(应用领域),R(实时领域),M(控制领域)。,3.2 ARM微处理器的指令系统,ARM指令系统的概述 ARM的寻址模式 ARM的指令集 Thumb的指令集,ARM指令系统的概述,ARM指令系统的概述,ARM的寻址模式,1.立即寻址 立即寻址也叫立即数寻址,这是一种特殊的寻址方式,操作数本身就在指令中给出,只要取出指令也就取到了操作数。这个操作数被称为立即数,对应的寻址方式也就叫做立即寻址。例如以下指令: ADD R0,R0,1 ;R0R01 ADD R0,R0,0x3f ;R0R00x3f 在以上两条指令中,第二个源操作数即为立即数,要求以“”为前缀,对于以十六进制表示的立即数,还要求在“”后加上“0x”或“&”。,ARM的寻址模式,2 寄存器寻址

      6、寄存器寻址就是利用寄存器中的数值作为操作数,这种寻址方式是各类微处理器经常采用的一种方式,也是一种执行效率较高的寻址方式。以下指令: ADD R0,R1,R2 ;R0R1R2 该指令的执行效果是将寄存器R1和R2的内容相加,其结果存放在寄存器R0中。,ARM的寻址模式,3. 寄存器间接寻址 寄存器间接寻址就是以寄存器中的值作为操作数的地址,而操作数本身存放在存储器中。例如以下指令: LDR R0,R1 ;R0R1 STR R0,R1 ;R1R0 第一条指令将以R1 的值为地址的存储器中的数据传送到R0 中。 第二条指令将R0 的值传送到以R1 的值为地址的存储器中。,ARM的寻址模式,4 基址变址寻址 基址变址寻址就是将寄存器(该寄存器一般称作基址寄存器)的内容与指令中给出的地址偏移量相加,从而得到一个操作数的有效地址。变址寻址方式常用于访问某基地址附近的地址单元。采用变址寻址方式的指令常见有以下几种形式,如下所示: LDR R0,R1,4 ;R0R14 LDR R0,R1,4! ;R0R14、R1R14 LDR R0,R1 ,4 ;R0R1、R1R14 LDR R0,R1,R2 ;R

      7、0R1R2 在第一条指令中,将寄存器R1 的内容加上4 形成操作数的有效地址,从而取得操作数存入寄存器R0 中。 在第二条指令中,将寄存器R1 的内容加上4 形成操作数的有效地址,从而取得操作数存入寄存器R0 中,然后,R1 的内容自增4 个字节。,ARM的寻址模式,5.多寄存器寻址 采用多寄存器寻址方式,一条指令可以完成多个寄存器值的传送。这种寻址方式可以用一条指令完成传送最多16 个通用寄存器的值。以下指令: LDMIA R0,R1,R2,R3,R4 ;R1R0 ;R2R04 ;R3R08 ;R4R012 该指令的后缀IA 表示在每次执行完加载/存储操作后,R0 按字长度增加,因此,指令可将连续存储单元的值传送到R1R4。,ARM的寻址模式,6.多寄存器寻址 采用多寄存器寻址方式,一条指令可以完成多个寄存器值的传送。这种寻址方式可以用一条指令完成传送最多16 个通用寄存器的值。以下指令: LDMIA R0,R1,R2,R3,R4 ;R1R0 ;R2R04 ;R3R08 ;R4R012 该指令的后缀IA 表示在每次执行完加载/存储操作后,R0 按字长度增加,因此,指令可将连续存储单元

      8、的值传送到R1R4。,ARM的寻址模式,7.堆栈寻址 堆栈是一种数据结构,按先进后出(First In Last Out,FILO)的方式工作,使用一个称作堆栈指针的专用寄存器指示当前的操作位置,堆栈指针总是指向栈顶。 当堆栈指针指向最后压入堆栈的数据时,称为满堆栈(Full Stack),而当堆栈指针指向下一个将要放入数据的空位置时,称为空堆栈(Empty Stack)。同时,根据堆栈的生成方式,又可以分为递增堆栈(Ascending Stack)和递减堆栈(DecendingStack),当堆栈由低地址向高地址生成时,称为递增堆栈,当堆栈由高地址向低地址生成时,称为递减堆栈。,ARM指令集,ARM指令集:跳转指令,ARM 指令集中的跳转指令可以完成从当前指令向前或向后的32MB 的地址空间的跳转,包括以下4 条指令: B 跳转指令 BL 带返回的跳转指令 BLX 带返回和状态切换的跳转指令 BX 带状态切换的跳转指令,ARM指令集:数据处理指令,传送指令: MOV 数据传送指令 MVN 数据取反传送指令 比较指令: CMP 比较指令 CMN 反值比较指令 TST 位测试指令 TEQ

      9、 相等测试指令,算术指令: ADD 加法指令 ADC 带进位加法指令 SUB 减法指令 SBC 带借位减法指令 RSB 逆向减法指令 RSC 带借位的逆向减法指令 AND 逻辑与指令 ORR 逻辑或指令 EOR 逻辑异或指令 BIC 位清除指令,ARM指令集:乘法指令,乘法指令与乘加指令: MUL 32 位乘法指令 MLA 32 位乘加指令 SMULL 64 位有符号数乘法指令 SMLAL 64 位有符号数乘加指令 UMULL 64 位无符号数乘法指令 UMLAL 64 位无符号数乘加指令,ARM指令集:加载/存储指令,单寄存器加载存储指令: LDR 字数据加载指令 LDRB 字节数据加载指令 LDRH 半字数据加载指令 STR 字数据存储指令 STRB 字节数据存储指令 STRH 半字数据存储指令 LDRSB有符号的字节加载 LDRSH有符号的半字加载,多寄存器加载存储指令: LDM 多字节加载指令 STM 多字节存储指令 IA :每次传送后地址+4 IB :每次传送前地址+4 DA :每次传送后地址-4 DB :每次传送前地址-4 FD :满递减堆栈 ED :空递减堆栈 FA :满递增堆栈 EA :空递增堆栈,ARM指令集:程序状态寄存器指令,ARM 微处理器支持程序状态寄存器访问指令,用于在程序状态寄存器和通用寄存器之间传送数据,程序状态寄存器访问指令包括以下两条: MRS 程序状态寄存器到通用寄存器的数据传送指令 MSR 通用寄存器到程序状态寄存器的数据传送指令,ARM指令集:协处理器指令,ARM 的协处理器指令主要用于ARM 处理器初始化ARM 协处理器的数据处理操作,以及

      《嵌入式系统原理及应用开发 教学课件 ppt 作者 陈渝 第3章 ARM体系结构》由会员E****分享,可在线阅读,更多相关《嵌入式系统原理及应用开发 教学课件 ppt 作者 陈渝 第3章 ARM体系结构》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.