版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二部分
嵌入式系统及应用1总复习-嵌入式部分共100页,您现在浏览的是第1页!课程内容嵌入式系统硬件基础ARM简介与ARM体系结构ARM指令集与程序设计嵌入式系统软件基础嵌入式系统开发基础2总复习-嵌入式部分共100页,您现在浏览的是第2页!讲
嵌入式系统硬件基础3总复习-嵌入式部分共100页,您现在浏览的是第3页!1.1嵌入式系统硬件组成1.1.1嵌入式系统组成原理1.1.2嵌入式最小系统1.1.3嵌入式系统扩展4总复习-嵌入式部分共100页,您现在浏览的是第4页!嵌入式系统的硬件结构嵌入式系统硬件结构的特点:以嵌入式处理器为核心,集成度高嵌入式系统的组成结构:处理器(内核+片内外设)+内存+外围硬件+辅助设备嵌入式处理器一般除了CPU之外还可以包括很多外部设备,甚至包括内存5总复习-嵌入式部分共100页,您现在浏览的是第5页!嵌入式最小系统的概念对于同一款嵌入式处理器可以构造成规模不等、复杂程序不同的系统对于同一款处理器而言,存在着一个最基本的系统最基本系统的条件: 以某个处理器为核心的嵌入式系统中,处理器可以运行程序6总复习-嵌入式部分共100页,您现在浏览的是第6页!嵌入式最小系统的组成ARM嵌入式最小系统7总复习-嵌入式部分共100页,您现在浏览的是第7页!JTAG接口在最小系统中的应用使用JTAG的最小系统构建方式8总复习-嵌入式部分共100页,您现在浏览的是第8页!1.1.3嵌入式系统扩展内存类芯片网络芯片USB芯片9总复习-嵌入式部分共100页,您现在浏览的是第9页!体积小、集成度高、价格较低可扩展的处理器结构功耗很低对实时多任务有很强的支持能力具有功能很强的存储区保护功能1.2.1嵌入式处理器的基本特征10总复习-嵌入式部分共100页,您现在浏览的是第10页!1.2.3典型嵌入式处理器8051单片机ARM68K/ColdfirePowerPCMIPSX86国产嵌入式处理器11总复习-嵌入式部分共100页,您现在浏览的是第11页!1.2.4嵌入式处理器的选型方法
主要包括以下4项选型原则:(1)根据具体应用领域选择MPU/MCU/DSP/SoC中的一种(2)根据具体应用功能需求、性能指标、运行环境和成本预算等选择芯片的具体型号和配置参数(3)关注生产厂商是否提供相应内置硬件调试工具和评估板(4)对于32位及以上嵌入式处理器,关注是否有合适的嵌入式操作系统支持12总复习-嵌入式部分共100页,您现在浏览的是第12页!1.3嵌入式系统的常用接口及总线1.3.1外设接口1.3.2通信接口13总复习-嵌入式部分共100页,您现在浏览的是第13页!1.5本章小结嵌入式最小系统嵌入式微处理器:硬件系统核心部件基本特征、种类与典型系列、选型方法、发展趋势常用接口与总线外设接口、通信接口常用外设输入设备、输出设备14总复习-嵌入式部分共100页,您现在浏览的是第14页!OUTLINE3.1ARM简介3.2RISC体系结构3.3ARM编程模型15总复习-嵌入式部分共100页,您现在浏览的是第15页!ARM体系结构ARM处理器为RISC芯片,简单的结构使得:ARM内核非常小器件的功耗非常低具有经典RISC的特点为了清楚的表达每个ARM应用实例所使用的指令集,ARM公司定义了7种主要的ARM指令集体系结构版本,以版本号v1~v7表示v1-v3目前已废弃16总复习-嵌入式部分共100页,您现在浏览的是第16页!注意:“ARM核”并不是芯片ARM核+RAM、ROM、片内外设等组合在一起才能构成现实的芯片17总复习-嵌入式部分共100页,您现在浏览的是第17页!二、RISC的主要特征
选用使用频率较高的一些简单指令复杂指令的功能由简单指令来组合
指令长度固定
只有LOAD/STORE指令访存
流水技术一个时钟周期
内完成一条指令
组合逻辑
实现控制器
多个
通用寄存器
采用优化
的编译
程序
18总复习-嵌入式部分共100页,您现在浏览的是第18页!预取译码执行预取译码执行访存写入预取译码发送执行访存写入ARM7:三级流水ARM9:五级流水ARM10:六级流水四、ARM的流水线技术19总复习-嵌入式部分共100页,您现在浏览的是第19页!存储格式大端格式字数据的高字节存储在低地址中20总复习-嵌入式部分共100页,您现在浏览的是第20页!ARM体系结构支持下表所列的7种处理器模式二、处理器模式21总复习-嵌入式部分共100页,您现在浏览的是第21页!处理器模式说明用户(usr)正常程序执行模式系统(sys)运行操作系统的特权任务快中断(fiq)异常模式中断(irq)管理(svc)中止(abt)未定义(und)22总复习-嵌入式部分共100页,您现在浏览的是第22页!四、寄存器组31个通用寄存器6个状态寄存器23总复习-嵌入式部分共100页,您现在浏览的是第23页!24总复习-嵌入式部分共100页,您现在浏览的是第24页!两种状态下的寄存器组对应关系25总复习-嵌入式部分共100页,您现在浏览的是第25页!五、异常与中断处理1、ARM支持的异常类型复位未定义指令软件中断中止指令预取中止及数据中止
IRQFIQ26总复习-嵌入式部分共100页,您现在浏览的是第26页!3、应用程序中的异常处理在异常向量表中的特定位置放置一条跳转指令,跳转到异常处理程序。4、异常的响应过程
将下一条指令的地址存入相应连接寄存器LR将CPSR复制到相应的SPSR中根据异常类型,强制设置CPSR的运行模式强制PC从相关的异常向量地址取下一条指令执行27总复习-嵌入式部分共100页,您现在浏览的是第27页!第四讲
ARM指令集和程序设计
28总复习-嵌入式部分共100页,您现在浏览的是第28页!4.1ARM指令基本寻址方式确定本条指令的操作数地址下一条欲执行指令的指令地址指令寻址数据寻址寻址方式29总复习-嵌入式部分共100页,您现在浏览的是第29页!4.3ARM汇编语言程序设计常用ARM源程序文件类型30总复习-嵌入式部分共100页,您现在浏览的是第30页!4.4二、C程序中内嵌汇编指令在ARM的C程序中可用关键词__asm加入一段汇编程序格式:31总复习-嵌入式部分共100页,您现在浏览的是第31页!4.4三、汇编、C以及C++的相互调用1、C程序调用汇编程序使用extern关键词表明strcopy函数是本文件之外定义的32总复习-嵌入式部分共100页,您现在浏览的是第32页!4.42、汇编程序调用C程序33总复习-嵌入式部分共100页,您现在浏览的是第33页!第二讲
嵌入式系统软件基础34总复习-嵌入式部分共100页,您现在浏览的是第34页!1.按实时性能分类按能否满足实时性要求,可分为嵌入式实时操作系统嵌入式非实时操作系统2.1嵌入式操作系统的种类
35总复习-嵌入式部分共100页,您现在浏览的是第35页!
典型的嵌入式实时操作系统VxWorkspSOSystemQNXNucleus
C/OS等36总复习-嵌入式部分共100页,您现在浏览的是第36页!典型的嵌入式软实时操作系统
WindowCEPalmEPOCEmbeddedLinux等37总复习-嵌入式部分共100页,您现在浏览的是第37页!3.按源码是否开放分类
开放源码型黑箱型38总复习-嵌入式部分共100页,您现在浏览的是第38页!2.2嵌入式实时操作系统VxWorkspSOSystem
C/OS39总复习-嵌入式部分共100页,您现在浏览的是第39页!(1)内核的大小与性能(2)外挂模块/组件的丰富性(3)可裁减性(4)对不同硬件平台的可移植性(5)开发环境的完备性(6)服务与价格等2.4嵌入式操作系统的选择标准40总复习-嵌入式部分共100页,您现在浏览的是第40页!2.6本章小结几种典型的嵌入式实时操作系统和嵌入式软实时操作系统特色优缺点常见应用领域41总复习-嵌入式部分共100页,您现在浏览的是第41页!6.1嵌入式系统开发基本模式6.2嵌入式系统选型原则6.3嵌入式系统硬件开发6.4嵌入式系统软件开发OUTLINE42总复习-嵌入式部分共100页,您现在浏览的是第42页!6.1二、嵌入式系统开发过程
系统定义时期符合要求硬件设计制作软件设计实现软硬件集成功能性能测试产品Yes系统总体设计No43总复习-嵌入式部分共100页,您现在浏览的是第43页!二、嵌入式操作系统选择6.2
体积小、执行速度快具有较好的可裁剪性和可移植性
需要操作系统的支持支持多任务并具有实时性强大的联网功能窗口交互功能1、对嵌入式软件的要求44总复习-嵌入式部分共100页,您现在浏览的是第44页!6.3嵌入式硬件开发开发流程:需求分析软硬件协同设计软硬件实现软硬件协同测试和验证特点:协同设计、协同测试、协同验证软、硬件协同开发45总复习-嵌入式部分共100页,您现在浏览的是第45页!嵌入式软件的交叉开发环境交叉开发环境是指用于嵌入式软件开发的所有工具软件的集合,一般包括:文本编辑器交叉编译器交叉调试器仿真器下载器等交叉开发环境由宿主机和目标机组成,宿主机与目标机之间在物理连接的基础上建立起逻辑连接。6.446总复习-嵌入式部分共100页,您现在浏览的是第46页!宿主机(Host):是用于开发嵌入式系统的计算机。一般为PC机(或者工作站),具备丰富的软硬件资源,为嵌入式软件的开发提供全过程支持。目标机(Target):即所开发的嵌入式系统,是嵌入式软件的运行环境,其硬件软件是为特定应用定制的。在开发过程中,目标机端需接收和执行宿主机发出的各种命令如设置断点、读内存、写内存等,将结果返回给宿主机,配合宿主机各方面的工作。6.447总复习-嵌入式部分共100页,您现在浏览的是第47页!交叉编译把在宿主机上编写的高级语言程序编译成可以运行在目标机上的代码,即在宿主机上能够编译生成另一种CPU(嵌入式微处理器)上的二进制程序。6.448总复习-嵌入式部分共100页,您现在浏览的是第48页!OCD调试结构调试器Windows或其它桌面操作系统PC机等硬件被调试程序OCD接口嵌入式硬件宿主机目标机逻辑上的连接物理连接仿真器针形连接器并口、串口或网络接口为特定处理器而建造6.449总复习-嵌入式部分共100页,您现在浏览的是第49页!JTAG调试接口
边界扫描技术通过边界扫描寄存器单元,实现对芯片输入输出信号的观察和控制边界扫描寄存器对芯片是透明的,正常的运行不会受到任何影响不占用ARM芯片上的任何硬件资源比较方便和容易发现程序中存在的问题50总复习-嵌入式部分共100页,您现在浏览的是第50页!嵌入式软件的固化运行当调试完成之后,程序代码需要被完全烧入到目标板的非易失性存储器(如ROM或闪存)中,并且在真实的硬件环境上运行,这个过程叫做固化。调试环境与固化环境的区别:代码定位不同初始化部分不同6.451总复习-嵌入式部分共100页,您现在浏览的是第51页!OUTLINE1.1嵌入式系统硬件组成1.2嵌入式微处理器1.3嵌入式系统常用总线与接口1.4嵌入式系统的常用外设1.5本章小结52总复习-嵌入式部分共100页,您现在浏览的是第52页!1.1.1嵌入式系统组成原理计算机系统的一般运行原理嵌入式系统与通用计算机硬件组成的异同嵌入式系统硬件结构53总复习-嵌入式部分共100页,您现在浏览的是第53页!1.1.2嵌入式最小系统嵌入式最小系统的概念嵌入式最小系统的组成JTAG接口在最小系统中的应用实际的嵌入式最小系统54总复习-嵌入式部分共100页,您现在浏览的是第54页!嵌入式最小系统的作用嵌入式最小系统的作用:构建嵌入式系统的步,保证嵌入式处理器可以运行实际嵌入式系统的基础逐步增加系统的功能,如:外围硬件扩展、软件及程序设计、操作系统移植、增加各种接口等,最终形成符合需求的完整系统55总复习-嵌入式部分共100页,您现在浏览的是第55页!嵌入式最小系统的组成嵌入式系统最小系统组成部分:处理器内存时钟调试接口电源和复位56总复习-嵌入式部分共100页,您现在浏览的是第56页!实际的嵌入式最小系统最小系统中的各部件57总复习-嵌入式部分共100页,您现在浏览的是第57页!1.2.1嵌入式处理器的基本特征1.2.2嵌入式处理器的种类1.2.3典型嵌入式处理器1.2.4嵌入式处理器的选型方法1.2.5嵌入式处理器的发展趋势1.2嵌入式微处理器58总复习-嵌入式部分共100页,您现在浏览的是第58页!嵌入式处理器种类1.2.2嵌入式处理器的种类59总复习-嵌入式部分共100页,您现在浏览的是第59页!小体积、低功耗、高性能而低成本RISC(ReducedInstructionSetComputer)体系结构16/32位双指令集16位Thumb指令集:密度高,所占存储空间较小32位的ARM指令集:处理32位数据时性能较高全球众多的合作伙伴ARM内核及ARM处理器的特点60总复习-嵌入式部分共100页,您现在浏览的是第60页!1.2.5嵌入式处理器的发展趋势(1)集成化与微型化(2)高性能与低成本(3)低功耗(4)硬件功能实现的可编程化61总复习-嵌入式部分共100页,您现在浏览的是第61页!1.4嵌入式系统的常用外设1.4.1输入设备1.4.2输出设备1.4.3存储设备62总复习-嵌入式部分共100页,您现在浏览的是第62页!第三讲
ARM简介与体系结构63总复习-嵌入式部分共100页,您现在浏览的是第63页!3.1ARM简介ARM公司简介将技术授权给其它芯片厂商形成各具特色的ARM芯片...64总复习-嵌入式部分共100页,您现在浏览的是第64页!ARM处理器核简介ARM公司开发了很多系列的ARM处理器核如:ARM7、ARM9、ARM10、ARM11等系列ARM6核以及更早的系列已很少见目前应用比较广泛的系列是:ARM7ARM9ARM9EARM10SecurCoreXscaleARM11Cortex65总复习-嵌入式部分共100页,您现在浏览的是第65页!一、RISC的产生和发展
80—20规律RISC(ReducedInstructionSetComputer)CISC(ComplexInstructionSetComputer)——RISC技术3.2RISC体系结构的继承66总复习-嵌入式部分共100页,您现在浏览的是第66页!三、ARM内核RISC架构的特别技术
所有的指令可根据前面的执行结果决定是否被执行
可用加载/存储指令批量传输数据
可在一条数据处理指令中同时完成逻辑处理
和移位处理
在循环处理中使用地址的自动增减来提高运行效率67总复习-嵌入式部分共100页,您现在浏览的是第67页!一、存储数据类型、存储格式ARM处理器支持下列数据类型:字节8位半字16位(必须分配为占用两个字节)字32位(必须分配为占用4个字节)1112342字对齐、半字对齐3.3ARM编程模型68总复习-嵌入式部分共100页,您现在浏览的是第68页!小端格式字数据的高字节存储在高地址中存储格式69总复习-嵌入式部分共100页,您现在浏览的是第69页!处理器模式说明用户(usr)系统(sys)特权模式快中断(fiq)中断(irq)管理(svc)中止(abt)未定义(und)70总复习-嵌入式部分共100页,您现在浏览的是第70页!三、双指令集与处理器工作状态双指令集16位Thumb指令集:密度高,所占存储空间较小32位的ARM指令集:处理32位数据时性能较高处理器工作状态Thumb状态:执行半字对准的Thumb指令ARM状态:执行字对准的ARM指令--可以切换,不影响运行模式和寄存器的内容71总复习-嵌入式部分共100页,您现在浏览的是第71页!通用寄存器未分组寄存器R0~R7所有运行模式下,都指向同一个物理寄存器分组寄存器R8~R14每一次访问的物理寄存器与处理器当前的运行模式有关程序计数器R15
ARM状态:位[1:0]为0,位[31:2]用于保存PC;Thumb状态:位0为0,位[31:1]用于保存PC;寄存器R16当前程序状态寄存器1、ARM状态下的寄存器组72总复习-嵌入式部分共100页,您现在浏览的是第72页!2、Thumb状态下的寄存器组73总复习-嵌入式部分共100页,您现在浏览的是第73页!1个当前程序状态寄存器(CPSR)5个备份的程序状态寄存器(SPSR,供异常处理使用)备份的状态程序寄存器功能:保存ALU中的当前操作信息控制允许和禁止中断设置处理器的运行模式3、程序状态寄存器74总复习-嵌入式部分共100页,您现在浏览的是第74页!复位高数据中止FIQIRQ预取指令中止未定义指令,SWI低2、异常的优先级75总复习-嵌入式部分共100页,您现在浏览的是第75页!5、异常的返回过程
将连接寄存器LR的值减去相应的偏移量送到PC中将SPSR复制到相应的CPSR中若设置了中断禁止位,则清除复位异常处理程序不需要返回76总复习-嵌入式部分共100页,您现在浏览的是第76页!OUTLINE4.1ARM指令基本寻址方式4.2ARM指令分类说明4.3ARM汇编语言程序设计4.4ARM高级语言程序设计77总复习-嵌入式部分共100页,您现在浏览的是第77页!4.2ARM指令分类说明数据处理指令跳转指令Load/Stroe指令程序状态寄存器指令协处理器指令异常中断指令ARM指令集78总复习-嵌入式部分共100页,您现在浏览的是第78页!4.4ARM高级语言程序设计一、汇编程序中访问C程序变量在C中声明的全局变量可以被汇编程序通过地址间接访问访问方法:使用IMPORT伪操作声明全局变量使用LDR指令读取该全局变量的内存地址根据数据的类型,使用相应的LDR指令读取该全局变量的值;使用相应的STR指令修改该全局变量的值79总复习-嵌入式部分共100页,您现在浏览的是第79页!4.4在C语言中嵌入ARM汇编时需注意的几个问题汇编中不能再使用“;”作为注释行的开头,而应使用C语言中的“/**/”或者“//”进行注释不能使用一个物理寄存器去改变一个C变量对于内嵌的汇编代码用到的寄存器,编译器在编译时会自动加入保存和恢复这些寄存器的代码而不用用户去管理不支持ADR、ADRL伪指令不能用PC寄存器返回当前指令的地址不支持内存分配的伪操作80总复习-嵌入式部分共100页,您现在浏览的是第80页!表明该函数是一个全局的函数并可以被其他文件使用注:汇编程序使用r0-r3来传递函数的第1-4个参数若参数多于4个,则多余的参数将被压入堆栈81总复习-嵌入式部分共100页,您现在浏览的是第81页!ARM微处理器系列ARM7ARM9ARM9EARM10EARM11SecurCoreIntel的StrongARM、Xscale 目前仍在不断发展82总复习-嵌入式部分共100页,您现在浏览的是第82页!2.1嵌入式操作系统的种类2.2嵌入式实时操作系统2.3嵌入式软实时操作系统2.4嵌入式操作系统的选择方法2.5嵌入式操作系统的发展趋势OUTLINE83总复习-嵌入式部分共100页,您现在浏览的是第83页!(1)嵌入式实时操作系统Real-TimeOperatingSystem也称为嵌入式硬实时操作系统主要功能:对多个外部事件,尤其是异步事件进行实时处理84总复习-嵌入式部分共100页,您现在浏览的是第84页!(2)嵌入式非实时操作系统又称为“嵌入式软实时操作系统”典型代表是嵌入式分时操作系统也是一种多任务操作系统任务调度采用时间片轮转方式大的任务吞吐量85总复习-嵌入式部分共100页,您现在浏览的是第85页!2.按购买方式分类
商用型免费型86总复习-嵌入式部分共100页,您现在浏览的是第86页!4.按知识产权分类国外嵌入式操作系统自主知识产权型嵌入式操作系统87总复习-嵌入式部分共100页,您现在浏览的是第87页!2.3嵌入式软实时操作系统
PalmOSWindowsCEEPOCEmbeddedLinux88总复习-嵌入式部分共100页,您现在浏览的是第88页!2.5嵌入式操作系统的发展趋势(1)嵌入式操作系统的标准化研究(2)实时超微内核(3)多处理器结构与分布式(4)集成与开放的开发环境89总复习-嵌入式部分共100页,您现在浏览的是第89页!第六讲
嵌入式系统开发基础90总复习-嵌入式部分共100页,您现在浏览的是第90页!6.1嵌入式系统开发基本模式一、嵌入式系统开发特点嵌入式系统开发特点常规计算机应用项目开发特点通用性、标准性;软硬件开发相对分离软硬件协同开发原因:专用计算机系统、特定的硬件构成、特定软件嵌入式产品是软硬件的结合体91总复习-嵌入式部分共100页,您现在浏览的是第91页!6.2嵌入式系统选型原则一、硬件平台选择主要是嵌入式处理器的选择92总复习-嵌入式部分共100页,您现在浏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 毕业设计(论文)-1450热轧卷取机侧导板液压控制系统的分析
- 2026年汽车冲压生产线操作工初级题库及答案
- 化疗患者静脉治疗安全及导管管理
- 2026年全国电工(技师)职业技能考试笔试试题(含答案)
- 临床用血专项理论知识考核试题及答案
- 咔唑全球前8强生产商排名及市场份额(by QYResearch)
- 助产士(岗位)知识考核试题及答案
- 2026年江苏省溧阳市高三历史上册期末考试考试卷含答案(综合题)
- MySQL数据库技术与项目应用课件 项目6 编程操作网上商城系统数据
- 2026奥运文化面试题及答案
- 叔叔在侄子订婚宴致辞(5篇)
- 创新创业基础(西安科技大学)智慧树知到期末考试答案章节答案2024年西安科技大学
- 2024年贵州能源集团有限公司招聘笔试冲刺题(带答案解析)
- JTG-D40-2002公路水泥混凝土路面设计规范-PDF解密
- 《市政基础设施岩土工程勘察规范》
- 汽车驾驶员安全责任书
- 提高医药代表拜访效果的时间管理技巧
- 数字媒体与社会治理
- 银行诉讼案件管理办法
- 供热系统发展趋势及供热新技术
- 运动治疗第九章呼吸训练
评论
0/150
提交评论