嵌入式系统设计复习汇编

  • 格式:doc
  • 大小:612.45 KB
  • 文档页数:15

嵌入式系统设计复习第一章嵌入式系统概述提纲:1、掌握嵌入式系统的定义以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗、实时性严格要求的专用计算机系统。

2、了解嵌入式系统的一般组成硬件:CPU、Memory、I/O软件:RTOS、文件系统、GUI和应用软件等知识点:1、嵌入式系统的定义与特点以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗、实时性严格要求的专用计算机系统。

2、RISC指令系统的特点优点:缩小内核体积,降低功耗缺点:复杂功能的实现效率低3、嵌入式系统由硬件与软件组成,其中软件的组成RTOS、文件系统、GUI和应用软件4、嵌入式系统的运行可靠性指标平均无故障时间5、嵌入式操作系统的种类,最方便移植的操作系统Linux、VxWorks、WinCE、Palm、μC/OS-II、eCos.最方便移植的是Linux。

6、根据嵌入式系统使用的微处理器,嵌入式系统的分类嵌入式微控制器、嵌入式微处理器、嵌入式DSP处理器以及片上系统。

7、实时嵌入式操作系统RTOS的特点一、时间约束性实时系统的任务具有一定的时间约束(截止时间)。

根据截止时间,实时系统的实时性分为“硬实时”和“软实时”。

硬实时是指应用的时间需求能够得到完全满足,否则就造成重大安全事故,甚至造成重大的生命财产损失和生态破坏,如在航空航天、军事、核工业等一些关键领域中的应用。

软实时是指某些应用虽然提出时间需求,但实时任务偶尔违反这种需求对系统运行及环境不会造成严重影响,如监控系统等和信息采集系统等。

二、可预测性可预测性是指系统能够对实时任务的执行时间进行判断,确定是否能够满足任务的时限要求。

由于实时系统对时间约束要求的严格性,使可预测性称为实时系统的一项重要性能要求。

除了要求硬件延迟的可预测性以外,还要求软件系统的可预测性,包括应用程序的响应时间是可预测的,即在有限的时间内完成必须的工作;以及操作系统的可预测性,即实时原语、调度函数等运行开销应是有界的,以保证应用程序执行时间的有界性。

三、可靠性大多数实时系统要求有较高的可靠性。

在一些重要的实时应用中,任何不可靠因素和计算机的一个微小故障,或某些特定强实时任务(又叫关键任务)超过时限,都可能引起难以预测的严重后果。

为此,系统需要采用静态分析和保留资源的方法及冗余配置,使系统在最坏情况下都能正常工作或避免损失。

可靠性已成为衡量实时系统性能不可缺少的重要指标。

四、与外部环境的交互作用性实时系统通常运行在一定的环境下,外部环境是实时系统不可缺少的一个组成部分。

计算机子系统一般是控制系统,它必须在规定的时间内对外部请求做出反应。

外部物理环境往往是被控子系统,两者互相作用构成完整的实时系统。

大多数控制子系统必须连续运转以保证子系统的正常工作或准备对任何异常行为采取行动。

8、嵌入式系统与PC机的比较1. 底层嵌入式硬件。

考虑到成本和体积,嵌入式硬件是资源严重受限的,CPU处理速度没有一般电脑快,存储空间也没有一般电脑大。

2. 嵌入式操作系统(Threadx, Linux, VxWorks等等),一般都是小型化的内核,体积比Windows小很多,并且可根据应用需求灵活裁剪。

3. 嵌入式应用程序,基于嵌入式处理器(ARM, PowerPC等)架构编译出来的,不能在Windows端运行。

嵌入式系统(简称“嵌”)和通用计算机(简称“通”)的主要区别包括以下几点:1.形式与类型“通”:实实在在的计算机。

按其体系结构、运算速度和规模可分为大型机、中型机、小型机和微机“嵌”:“看不见”的计算机,形式多样,应用领域广泛,按应用进行分类2.组成“通”:通用处理器、标准总线和外设、软硬件相对独立“嵌”:面向特定应用的微处理器,总线和外设一般集成在处理器内部,软硬件紧密结合3.系统资源“通”:系统资源充足,有丰富的编译器、集成开发环境、调试器等“嵌”:系统资源紧缺,没有编译器等相关开发工具4.开发方式“通”:开发平台和运行平台都是通用计算机“嵌”:采用交叉编译方式,开发平台一般是通用计算机,运行平台是嵌入式系统5.二次开发性“通”:应用程序可重新编程“嵌”:一般不能重新编程开发6.发展目标“通”:编程功能电脑,普遍进入社会“嵌”:变为专用电脑,实现“普及计算”第二章ARM体系结构提纲:1、掌握ARM的7种工作模式,熟悉其模式的工作入口表3-2用户模式(usr)快速中断模式(fiq)外部中断模式(irq)特权模式(sve)数据访问中止模式(abt)未定义指令终止模式(und)系统模式(sys)2、熟悉不同模式下寄存器的应用P72图3-23、掌握通用寄存器的组成,尤其是R13、R14、R1531个通用寄存器,R0~R7是所有处理器模式共用的一组寄存器,R8~R14为备份寄存器R13:堆栈指针R14:链接寄存器 R15:PC(PC=PC+4)4、掌握状态寄存器的组成,尤其是NZCV四位的作用N=1:结果为负;Z=1:结果为零;C=1:有进位;V=1:结果溢出;T=0:ARM状态;T=1:Thumb状态;ARM指令集32位,Thumb指令集16位,Thumb不能直接在CPU里运行,需要解压缩。

CPSR各模式共有,异常模式下才有SPSR。

5、熟悉ARM支持的存储器结构,大尾端与小尾端ARM默认小尾端。

小尾端:高位数据放高位地址,低位数据放低位地址。

大尾端:高位数据放低位地址,低位数据放高位地址。

知识点1、ARM存储器时的大尾端与小尾端结构小尾端:数据0x11223344从地址0x100开始存放,则0x100存放0x44,0x101存放0x33,0x102存放0x22,0x103存放0x112、ARM的7种工作模式正常模式:用户模式(usr)系统模式(sys)(特权模式,不通过异常进入)异常模式:快速中断模式(fiq)外部中断模式(irq)特权模式(sve)数据访问中止模式(abt)未定义指令终止模式(und)3、ARM寄存器组,通用寄存器个数,状态寄存器个数37个寄存器,31个通用寄存器,6个状态寄存器4、程序状态寄存器CPSR的重要标志位与控制位N=1:结果为负;Z=1:结果为零;C=1:有进位;V=1:结果溢出;T=0:ARM状态;T=1:Thumb状态;CPSR各模式共有,异常模式下才有SPSR。

第三章ARM处理器提纲:1、了解ARM版本的发展过程,从V1到V8V1:ARM1(寻址空间:64MB)V2:ARM2、ARM3( V2版架构与版本V1相比,增加了以下功能:乘法和乘加指令(32位);支持协处理器操作指令;快速中断模式;SWP/SWPB的最基本存储器与寄存器交换指令;寻址空间仍为:64MB)V3:ARM6( V3版架构(目前已废弃)对ARM体系结构作了较大的改动:寻址空间增至32位(4GB);当前程序状态信息从原来的R15寄存器移到当前程序状态寄存器CPSR中(Current Program Status Register);增加了程序状态保存寄存器SPSR(Saved Program Status Register);增加了两种异常模式,使操作系统代码可方便地使用数据访问中止异常、指令预取中止异常和未定义指令异常。

;增加了MRS/MSR指令,以访问新增的CPSR/SPSR寄存器;增加了从异常处理返回的指令功能。

寻址空间:4GB)V4:ARM7\8\9、StrongARM(V4版架构是目前应用最广的ARM体系结构指令集中增加了以下功能:符号化和非符号化半字及符号化字节的存/取指令;增加了T变种,处理器可工作在Thumb状态,增加了16位Thumb指令集;完善了软件中断SWI指令的功能;处理器系统模式引进特权方式时使用用户寄存器操作;把一些未使用的指令空间捕获为未定义指令)V5:ARM10、Xscale(新增命令有:带有链接和交换的转移BLX指令;计数前导零CLZ指令;BRK中断指令;增加了数字信号处理指令(V5TE版);为协处理器增加更多可选择的指令;改进了ARM/Thumb状态之间的切换效率;E---增强型DSP指令集,包括全部算法操作和16位乘法操作;J----支持新的JAVA,提供字节代码执行的硬件和优化软件加速功能。

)V6:ARM11(此架构在V5版基础上增加了以下功能:THUMBTM:35%代码压缩;DSP扩充:高性能定点DSP功能;JazelleTM:Java性能优化,可提高8倍;Media扩充:音/视频性能优化,可提高4倍。

)V7:ARM Cortex(采用了Thumb-2技术,它是在ARM的Thumb代码压缩技术的基础上发展出来的,并且保持了对已存ARM解决方案的完整的代码兼容性。

Thumb-2技术比纯32位代码少使用31%的内存,降低了系统开销,同时却能够提供比已有的基于Thumb技术的解决方案高出38%的性能表现。

ARMv7架构还采用了NEON技术,将DSP和媒体处理能力提高了近4倍,并支持改良的浮点运算,满足下一代3D图形和游戏物理应用以及传统的嵌入式控制应用的需求。

此外,ARMv7还支持改良的运行环境,来迎合不断增加的JIT和DAC技术的使用。

)V8:苹果A7处理器(ARMv8架构包含两个执行状态:AArch64和AArch32。

AArch64执行状态针对64位处理技术,引入了一个全新指令集A64;而AArch32执行状态将支持现有的ARM指令集。

目前的ARMv7架构的主要特性都将在ARMv8架构中得以保留或进一步拓展,如:TrustZone技术、虚拟化技术及NEON advanced SIMD技术,等。

)2、熟悉ARM处理器核家族的发展过程3、熟悉ARM处理器命名规则,如TDMI、J、E、ST:支持16位压缩指令集ThumbD:支持片上DebugM:内嵌硬件乘法器(Multiplier)I:嵌入式ICE,支持片上断点和调试点J:Java加速器JazelleE:增强型DSP指令S:可综合版本5、熟悉流水线机制,作用,以及不同处理器核所支持的流水线等级ARM7:3级流水线ARM9:5级流水线ARM11:8级流水线6、了解改善处理器核的方法增加流水线级数、指令与数据分开存储、增加最高时钟速率、降低CPI(每条指令的平均时钟数)知识点:1、ARM处理器命名规则T:支持16位压缩指令集ThumbD:支持片上DebugM:内嵌硬件乘法器(Multiplier)I:嵌入式ICE,支持片上断点和调试点J:Java加速器JazelleE:增强型DSP指令S:可综合版本2、决定CPU执行程序时间T的大小的因素主频时钟、指令复杂程度、CPI(每条指令占据时钟数)3、PC在CPU取出一条指令后增加的值pc=pc+44、互斥的定义互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。