《嵌入式系统分析复习要点.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统分析复习要点.ppt(38页珍藏版)》请在三一办公上搜索。
1、嵌入式系统分析复习要点,杨栋毅博士 北京天一集成科技有限公司,课程目的,了解嵌入式系统的基本概念掌握嵌入式系统分析和设计的一般性原理和方法。包括硬件平台建立和软件开发能够从总体上规划和设计一般性能要求的嵌入式系统。,课程内容,第一讲:嵌入式系统概论第二讲:嵌入式系统硬件平台第三讲:嵌入式系统软件开发第四讲:嵌入式系统新的技术和方法第五讲:嵌入式系统分析与设计方法第六讲:嵌入式系统的实例分析,嵌入式系统的定义,以特定应用为中心、以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、功耗、成本、体积等严格约束的专用计算机系统。,嵌入式系统的核心技术思想,以通用计算机系统为参照,以满足特定应
2、用要求为准则,采用各种可能的方法、技术和产品,使专用电子信息系统达到最优的性能/价格比。,基于电子计算的信息系统的一般性架构,嵌入式系统的软件结构体系,通用计算机系统与嵌入式系统的根本区别,通用计算机系统:功能全面,指标均衡,技术标准 统一。嵌入式系统:适用性原则,应用配置比接近1,性 能/价格比最优,专用性强,难于形 成统一技术标准。,通用计算机系统不能取代嵌入式系统的原因,(1)、嵌入式系统个别指标的极端化要求是通用计 算机系统不可能满足的。(2)、通用计算机系统均衡的性能在特定应用中有浪费,达不到最优的性能/价格比。,7、嵌入式系统,我们能做什么?,嵌入式系统是IT技术的集大成之应用双螺
3、旋式交替发展 需要与可能 通用与专用(标准化与定制)硬件与软件通用计算机系统:相对稳定,标准化体系,科技大国和 大公司垄断。嵌入式系统:种类繁多,差异极大,难以标准化,有机 会在各个层面以多种方式介入。,嵌入式系统的发展趋势,集成化网络化智能化人性化,软件与硬件,电子计算(或计算机)是编码的科学;问题,算法和编码;希望计算机寻找的答案叫问题。计算机寻找问题答案的具体步骤和过程叫算法。计算机算法是由人用编码来实现的。都可以实现编码,且逻辑结果完全相同。这是软件和硬件统一性的本质所在,系统设计师指挥和控制计算机完信息处理工作的方式:C 语言-C 语言编译器,函数库,操作系统-机器码,指令-硬件,C
4、PU C+语言-C+语言编译器,函数库,中间件,操作系统-机器码,指令-硬件,CPU HDL语言-EDA工具,IP库-FPGA,芯片加工厂-硬件 HDL语言是系统设计师和硬件之间的桥梁。,CPU(Central Process Unit)微处理器与微控制器,微处理器:由通用计算机中的CPU演变而来保留与嵌入式 系统应用紧密相关的硬件,去除其它的多余功 能部分。单 片 机:单片内部集成微处理器、程序与数据存贮器及 多种I/O功能,尤其是片上外设资源丰富,适 合于控制。数字信号处理器(Digital Signal Processor DSP)在体系结构和指令算法方面进行特殊设计,具有很高的编译效率
5、和指令执行速度,数值运算能力极强的特殊CPU,一般说来I/O控制能力较差。,典型嵌入式CPU的比较,各种不同等级的嵌入式系统微处理器应用,编程者可见的CPU硬件资源,CPU的一般操作指令,硬件资源和操作指令的结合,各种存贮器性能特点比较,(5)关于硬件加速器的小结 读书当“由薄到厚,由厚到薄”-华罗庚 综合你的技术资源 软件和硬件的相互关系 基于电子计算的信息系统可以看作是由输入信息到输出信息变换。软件:在CPU硬件基础上,以“取指译码操作”冯诺伊曼模式实现信息变换的指令集合。硬件实现:以数理逻为基础,直接用电子器件实现信息变换的方法。软件实现:成本低,技术难度低,通用性好硬件实现:往往有软件
6、实现不可能达到的性能 软件和硬件:一个事物的两个方面,相互融合,相互促进,应当统一考虑。,4、I/O接口人机界面,(1)I/O与CPU的硬件连接方式 端口方式:静态数据、稳定可靠、占端口资源、编程麻烦 总线方式:动态数据、要求器件速度相配合、编程简洁(2)CPU对I/O的控制方式 轮询 中断 DMA,1、嵌入式系统软件与通用系统中软件的比较,(1)相同之处 软件系统的层次化 结构化程序设计方法 软件的可维护性、鲁棒性 嵌入式系统的软件设计应当努力学习和采 用通用计算机系统中有关软件设计的先进思想 和成功方法。,(2)不同之处 a、程序编译和程序执行是在两个不同的平 台上 宿主机端(Host)和
7、目标端(target)开发系统、开发工具 软仿真和硬仿真 b、操作系统并非嵌入式系统的必备部分 c、输入输出界面不同 台式通用计算机系统 键盘、Mouse、CRT或LCD显示器 d、可利用资源有限 程序空间和数据空间都有限,一般没有 虚拟内存,e、常常必须用汇编语言编程,跟硬件打交道 和硬件打交道,常表现为对硬件地址的操作变量和变量 名,地址和寻址方式,地址寄存器;程序是否结构化,是由设计方法决定的,而不是由程序 设计语言决定的汇编语言同样应该坚持采用结构化的 程序设计方法;效率与程序结构化的矛盾妥协。一般情况下,用汇编语言编写的子程序应当在入口处完整地保护现场,退出子程序前恢复现场,子程序内
8、的局部变量按规定方式向系统申请并释放,以保证子程序调用的正确性。有关技术可参照“编译原理”:希望尽可能提高指令执行效率时,可以部分保存现场,子程序确实未用到的部分可以不压栈。,嵌入式操作系统主功能,嵌入式RTOS体系结构,(3)嵌入式操作系统的代价 a、需要占用存贮资源 RTOS典型的规模为10KB20KB,有些达 100KB,也有小到2KB b、RTOS需要占用CPU资源 较为合理的开销是CPU资源的5%左右,超 过10%就不好了 c、RTOS可能会增加系统成本,(5)嵌入式系统在三个层面上使用操作系统的技术或方法 a、在嵌入式系统中选择适当的RTOS b、针对某些特定要求开发嵌入式操作系统
9、 智能卡操作系统(COS Card Operation System)c、将操作系统的技术思想和方法应用在程 序设计中,3、嵌入式系统软件的组织结构,(1)前后台系统(2)整体式模型(3)客户/服务器模型,4、存贮器管理,(1)简单方法(2)位图管理法(3)链表管理法,5、多任务,(1)多任务的概念(2)任务的分解(3)任务的状态(4)进程和线程(5)协作式和占先式多任务系统(6)任务的调度(7)任务间的通信(8)与多任务有关的其它概念和方法,非占先式内核,占先式内核,(6)任务的调度 a、循环调度(Round-robin)b、先来后到(First Come first Serve)c、速率单调算法 速率单调算法是一个经典的算法,它是针对那些响应和处理周期性事件的实时任务的。它事先为每个这样的实时任务,分配一个与事件频率成正比的优先级。,d、截止期最早优先算法 在这种算法里,截止期最早的任务优先级最高。对于周期任务,其截止期即为下一周期开始的时间。有时,把这种算法称为时限驱动算法。e、最小裕度算法 优先性由截止期时间的早晚而定,可能使一些不可达截止期的任务,因来不及处理而夭折。另外一种算法是:计算任务的富余时间,称为裕度(laxity)。裕度小的优先级高。f、价值最高优先算法 在这种算法里,每一个任务有一个价值函数,价值最大,优先级最高。,6、跳出软件、重新审视多任务,
链接地址:https://www.31ppt.com/p-6414972.html