嵌入式系统及其软件开发概述.ppt
- 文档编号:13895065
- 上传时间:2023-06-19
- 格式:PPT
- 页数:121
- 大小:2.58MB
嵌入式系统及其软件开发概述.ppt
《嵌入式系统及其软件开发概述.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统及其软件开发概述.ppt(121页珍藏版)》请在冰点文库上搜索。
嵌入式系统及其软件开发概述,陈香兰2007.5.21,xlanchen2007.5.21,EmbeddedOperatingSystems,2,主要内容,一、嵌入式系统基本概念二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,3,主要内容,一、嵌入式系统基本概念二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,4,嵌入式系统无处不在,xlanchen2007.5.21,EmbeddedOperatingSystems,5,嵌入式系统开发技术,嵌入式系统开发技术是微处理器、单片机、微处理器等的应用技术,包含硬件系统和操作系统两大部分。
嵌入式系统的开发具有系统级应用开发技术的基本特征。
xlanchen2007.5.21,EmbeddedOperatingSystems,6,什么是嵌入式系统:
来自IEEE的定义,“Embeddedsystemisdevicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants”.IEEE上述定义主要从应用上加以定义。
可以看出:
嵌入式系统是软硬件的综合体,还可以涵盖机械等附属装置。
xlanchen2007.5.21,EmbeddedOperatingSystems,7,什么是嵌入式系统:
广义上,嵌入式系统是一种应用系统,它至少包含一个可编程的计算机(通常是某种形式的微控制器、微处理器或数字信号处理芯片(DSP)且使用该系统的人一般并未意识到该系统是基于计算机的。
xlanchen2007.5.21,EmbeddedOperatingSystems,8,什么是嵌入式系统:
国内的经典定义,嵌入式系统是“以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统”一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等部分组成,用于实现对其他设备的控制、监视或管理等功能。
xlanchen2007.5.21,EmbeddedOperatingSystems,9,可以从以下几个方面来理解国内对嵌入式系统的定义:
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。
xlanchen2007.5.21,EmbeddedOperatingSystems,10,嵌入式系统是将先进的计算机技术、半导体技术和电子技术以及各个行业的具体应用相结合后的产物。
这就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
所以,介入嵌入式系统行业,必须有一个正确的定位。
例如PalmOS之所以在PDA领域占有70以上的市场,就是因为其立足于个人电子消费品,着重发展图形界面和多任务管理;而风河的vxWorks之所以在火星车上得以应用,则是因为其高实时性和高可靠性。
xlanchen2007.5.21,EmbeddedOperatingSystems,11,嵌入式系统必须根据应用需求可对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。
所以,如果能建立相对通用的软硬件基础,然后在其上开发出适应各种需要的系统,是一个比较好的发展模式。
目前的嵌入式系统的核心往往是一个只有几KB到几十KB的微内核,需要根据实际的使用进行功能扩展或者裁减,但是由于微内核的存在,使得这种扩展能够非常顺利地进行。
xlanchen2007.5.21,EmbeddedOperatingSystems,12,同时还应该看到,嵌入式系统本身还是一个外延极广的名词。
凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,而且有时很难给它下一个准确的定义。
xlanchen2007.5.21,EmbeddedOperatingSystems,13,嵌入式系统的体系结构,一般而言,嵌入式系统的构架可以分成四个部分:
处理器、存储器、输入输出(I/O)、软件多数嵌入式设备的应用软件和操作系统都紧密结合,这也是嵌入式系统和Windows系统的最大区别。
软件,处理器,存储器,输入,输出,xlanchen2007.5.21,EmbeddedOperatingSystems,14,嵌入式系统特点,嵌入式计算机系统同通用型计算机系统相比具有以下特点:
1、嵌入式系统通常是面向特定应用的。
嵌入式CPU与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。
xlanchen2007.5.21,EmbeddedOperatingSystems,15,2、嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中对处理器的选择更具有竞争力3、嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。
xlanchen2007.5.21,EmbeddedOperatingSystems,16,4、为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中5、嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。
xlanchen2007.5.21,EmbeddedOperatingSystems,17,主要内容,一、嵌入式系统基本概念:
定义;体系结构;特点二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,18,嵌入式系统硬件,从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的部分。
目前,世界上具有嵌入式功能特点的处理器已超过1000种,流行体系结构包括MCU、MPU等30多个系列。
目前嵌入式处理器的寻址空间:
可以从64KB到16MB,处理速度:
最快可以达到2000MIPS,封装:
从几个引脚到几百个引脚不等。
xlanchen2007.5.21,EmbeddedOperatingSystems,19,嵌入式系统硬件分类,目前来讲,嵌入式处理器可以分成这样一些类型1、嵌入式微处理器(MicroprocessorUnit,MPU)2、嵌入式微控制器(MicrocontrollerUnit,MCU)3、嵌入式DSP(DigitalSignalProcessor)处理器4、嵌入式片上系统(SystemonChip,SoC),xlanchen2007.5.21,EmbeddedOperatingSystems,20,嵌入式系统硬件分类,目前来讲,嵌入式处理器可以分成这样一些类型1、嵌入式微处理器(MicroprocessorUnit,MPU)2、嵌入式微控制器(MicrocontrollerUnit,MCU)3、嵌入式DSP(DigitalSignalProcessor)处理器4、嵌入式片上系统(SystemonChip,SoC),xlanchen2007.5.21,EmbeddedOperatingSystems,21,嵌入式微处理MPU,MPU(MicroprocessorUnit)CPUMPU是由通用计算机中的CPU演变而来的,在本质上与通用计算机的CPU是一样的,只是在具体的实现细节和功能上有所不同。
装配在专门设计的电路板上,只保留跟嵌入式应用紧密相关的功能部件,去除其他冗余功能部件,从而大幅减小系统的体积和功耗。
为了满足嵌入式应用的特殊需求,MPU在工作温度、抗电磁干扰、可靠性方面一般都做了各种增强,在功能上会失去一些在嵌入式领域不常用的功能单元,xlanchen2007.5.21,EmbeddedOperatingSystems,22,和工业控制计算机相比,MPU具有体积小、质量轻、成本低、可靠性高的优点,但是在电路板上必须包括ROM、RAM、总线接口、各种外设等器件,从而降低了系统的可靠性,技术保密性也比较差。
由于MPU及其存储器、总线、外设等安装在一块电路板上,称为单板计算机,如STD-BUS、PC104等。
MPU目前主要有:
intelx86、IBMPowerPC、motorola68K/coldfire、MIPS、ARM、HitachiSuperH等系列,xlanchen2007.5.21,EmbeddedOperatingSystems,23,典型嵌入式微处理器:
ARM系列,ARM(AdvancedRISCMachines)是ARM公司的高性能、廉价、低功耗的RISC处理器,适用于多种领域如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
ARM公司将其硬件技术授权给世界上许多著名的半导体厂商,包括Intel,IBM,LG,NEC,SONY,Philps这样的大公司。
关于软件系统的合伙人,则包括Microsoft、SUN等一系列著名公司,xlanchen2007.5.21,EmbeddedOperatingSystems,24,ARM公司提供一系列CPU内核、体系扩展、微处理器和系统芯片方案。
由于所有产品均采用一个通用的基本体系结构,所以相同的软件理论上可在所有产品中运行目前,ARM公司常见的处理器系列有:
ARM7、ARM9、ARM10、ARM11等,xlanchen2007.5.21,EmbeddedOperatingSystems,25,典型嵌入式微处理器:
MIPS,MIPSMicroprocessorwithoutInterlockedPipedStages“无内部互锁流水线微处理器”也是现在比较流行的一种RISC处理器,其机制是尽量利用软件办法避免流水线中的数据相关问题最早是在20世纪80年代初由美国斯坦福大学Hennessy教授领导的研究小组研制出来的在嵌入式方面,仅次于ARM应用领域覆盖游戏机,移动电话,数码相机,ATM,路由器,打印机,掌上电脑等等各个方面,非常广泛,xlanchen2007.5.21,EmbeddedOperatingSystems,26,国内的嵌入式微处理器:
龙芯,中国科学院计算所研制具有自主知识产权龙芯1号:
32位MIPS处理器龙芯2号龙芯3号龙芯+Linux/?
xlanchen2007.5.21,EmbeddedOperatingSystems,27,手机的大概组成,xlanchen2007.5.21,EmbeddedOperatingSystems,28,嵌入式系统硬件分类,目前来讲,嵌入式处理器可以分成这样一些类型1、嵌入式微处理器(MicroprocessorUnit,MPU)2、嵌入式微控制器(MicrocontrollerUnit,MCU)3、嵌入式DSP(DigitalSignalProcessor)处理器4、嵌入式片上系统(SystemonChip,SoC),xlanchen2007.5.21,EmbeddedOperatingSystems,29,嵌入式微控制器MCU
(1),MCU=MicrocontrollerUnit一般又称为单片机,即将整个计算机系统集成到一块芯片中MCU一般以某种微处理器内核为核心,芯片内部集成ROM/EPROM,总线,总线逻辑,定时器,I/O单元,串口,A/D,D/A,flash等各种必要功能和外设为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核基本都是一样的,不同的是存储器和外设的配置及封装,xlanchen2007.5.21,EmbeddedOperatingSystems,30,嵌入式微控制器MCU
(2),与MPU相比,MCU的特点是单片化,体积大大减小,成本和功耗下降,可靠性提高微控制器的片上资源一般比较丰富,适合于比较简单的控制过程(得名的来由),xlanchen2007.5.21,EmbeddedOperatingSystems,31,嵌入式微控制器MCU(3),代表性的通用系列intel8051,P51XA,MCS系列,motorola68300等等半通用系列支持USB接口的MCU8XC930/932、C540、C541支持I2C、CAN-bus、LCD的MCU等等,xlanchen2007.5.21,EmbeddedOperatingSystems,32,嵌入式系统硬件分类,目前来讲,嵌入式处理器可以分成这样一些类型1、嵌入式微处理器(MicroprocessorUnit,MPU)2、嵌入式微控制器(MicrocontrollerUnit,MCU)3、嵌入式DSP(DigitalSignalProcessor)处理器4、嵌入式片上系统(SystemonChip,SoC),xlanchen2007.5.21,EmbeddedOperatingSystems,33,嵌入式DSP处理器EDSP,EDSP=EmbeddedDigitalSignalProcessorDSP在运算量较大(特别是向量运算、指针线性寻址很多)的场合发挥重要作用对系统结构和指令进行了特殊设计,使其适合与执行DSP算法,编译效率较高,指令执行速度也较高除了数字滤波,FFT等之外,DSP处理器在各种带有智能逻辑的产品,生物信息识别终端,实时语音编码解码系统中都得到了广泛的应用代表性的产品是TexasInstruments公司的TMS320系列和Motorola的DSP56000系列,xlanchen2007.5.21,EmbeddedOperatingSystems,34,嵌入式系统硬件分类,目前来讲,嵌入式处理器可以分成这样一些类型1、嵌入式微处理器(MicroprocessorUnit,MPU)2、嵌入式微控制器(MicrocontrollerUnit,MCU)3、嵌入式DSP(DigitalSignalProcessor)处理器4、嵌入式片上系统(SystemonChip,SoC),xlanchen2007.5.21,EmbeddedOperatingSystems,35,嵌入式片上系统SOC
(1),SOC=SystemonChip随着VLSI技术的发展,在一个硅片上可以包括CPU、各种外设控制器(如网络控制器、LCD控制器等)等多个功能单元,构成一个完整的复杂硬件系统,这就是嵌入式片上系统嵌入式处理器内核可以作为SoC的一种标准库,与其他嵌入式系统外设一样,成为VLSI设计中的一种标准器件,用VHDL等语言描述,存储在器件库中用户只需定义出其整个应用系统,仿真通过后,就可以将设计图交给半导体工厂制作,VeryLargeScaledIntegration超大规模集成,VHSICHardwareDescriptionLanguage硬件描述语言,VeryHighSpeedIntegratedCircuit超高速集成电路,xlanchen2007.5.21,EmbeddedOperatingSystems,36,嵌入式片上系统SOC
(2),这样,整个嵌入式系统大部分都可以集成到一块或几块芯片中去,系统电路板将变得很简洁,对减小体积和功耗,提高可靠性非常有利SoC可以分为通用和专用两类,市场份额比较小,xlanchen2007.5.21,EmbeddedOperatingSystems,37,主要内容,一、嵌入式系统基本概念二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,38,嵌入式系统的软件,简单的嵌入式应用若嵌入式系统的功能需求比较简单,如电动玩具、空调、冰箱等,则嵌入式系统软件只需完成较简单的功能,就不需要嵌入式操作系统的支持。
如:
基于8051的应用儿童玩具、汽车系统等等复杂的嵌入式应用若功能比较复杂,需要网络功能、存储器管理、进程/线程管理等,则通过嵌入式操作系统的帮助,可以加快嵌入式系统软件的开发进度和可靠性。
xlanchen2007.5.21,EmbeddedOperatingSystems,39,简单的嵌入式应用,简单的嵌入式应用不需要使用操作系统当系统上电后,main函数将被调用,首先初始化,然后进入循环直到系统停电或者出现重大错误。
超级循环voidmain(void)/prepareforfunctionXX_init();While
(1)X();,xlanchen2007.5.21,EmbeddedOperatingSystems,40,简单的嵌入式应用的开发过程,简单的嵌入式应用的开发过程在个人电脑上配置交叉开发环境、安装仿真器,编写程序,交叉编译,在仿真器上运行测试并修改直到软件满足需求;利用面包板开发和调试软、硬件利用编程器将软件烧到开发好的系统中进行现场运行测试,xlanchen2007.5.21,EmbeddedOperatingSystems,41,主要内容,一、嵌入式系统基本概念二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,42,嵌入式操作系统,简单的说,嵌入式操作系统就是支持嵌入式系统工作的操作系统。
在本质上与通用的操作系统没有太大的区别,一般用于比较复杂的嵌入式系统中,例如手机、PDA等电子类消费产品机顶盒、路由器等对嵌入式系统的硬件有较高的要求,xlanchen2007.5.21,EmbeddedOperatingSystems,43,基于嵌入式操作系统的嵌入式应用开发,确定需求根据需求选择合适的硬件硬实时/软实时系统?
什么处理器?
哪些辅助硬件?
选择嵌入式操作系统选择开发平台编程语言、软件开发工具实际的开发平台包括硬件开发平台、操作系统、编程语言以及软件开发工具,xlanchen2007.5.21,EmbeddedOperatingSystems,44,编写并优化代码一般在主机系统上进行开发和优化工作。
代码优化主要在软件执行速度和软件尺寸之间取得平衡,满足嵌入式系统对速度和存储空间的限制。
在嵌入式开发中,一般需要避免使用大型的软件库,避免使用递归编程,减少堆栈的消耗。
在模拟器或者开发板上调试,xlanchen2007.5.21,EmbeddedOperatingSystems,45,嵌入式软件系统的指标,尺寸满足硬件限制实时性硬实时,软实时和非实时系统网络能力人机交互能力,xlanchen2007.5.21,EmbeddedOperatingSystems,46,嵌入式系统的实时性,嵌入式系统一般具有实时的特点。
所谓实时系统是指在这种系统中,一个优先级高的任务能够得到立即的、没有延迟的服务,不需要等待任何其他优先级低的任务,一旦它得到CPU的使用权,将一直执行直到工作结束或者出现更高级别的进程。
为了满足这样的需求,嵌入式操作系统必须具有高效的中断处理能力和高效的IO能力,xlanchen2007.5.21,EmbeddedOperatingSystems,47,嵌入式操作系统分类,硬实时系统确保系统中的关键任务在确定的时间得到响应,不能有失败的情况,否则会出现严重后果软实时系统设计的时候是有响应时间要求的,但是偶尔某些任务的响应时间超过这个限制也不会有严重的后果非实时系统无响应时间的要求,xlanchen2007.5.21,EmbeddedOperatingSystems,48,实时系统的几个指标,预测反应时间可调度性强负载下的稳定性,xlanchen2007.5.21,EmbeddedOperatingSystems,49,1、预测反应时间,在工业控制系统中,实时可定义为系统对某事件响应时间的可预测性。
一个事件发生后,系统须在一个可准确预见的时间范围内作出反应。
xlanchen2007.5.21,EmbeddedOperatingSystems,50,2、可调度性,实时任务具有时限要求,调度实时任务时,需要判断是否每个任务的执行都能够在其截止期限内完成。
如果每个任务的执行都能够在其截止期限内完成,则称该调度是可行的可调度性判定(或称调度可行性判定)就是判定给定的n个实时任务在应用某种调度算法的前提下能否产生一个可行的调度。
调度算法的设计要尽可能满足任务可调度性的要求,xlanchen2007.5.21,EmbeddedOperatingSystems,51,3、强负载下的稳定性,实时稳定性随着系统的负载有所不同当系统的负载变得很大时,如果系统不能保证所有任务的时间要求,应当能使其中一部分关键任务始终满足时限要求,xlanchen2007.5.21,EmbeddedOperatingSystems,52,主要内容,一、嵌入式系统基本概念二、嵌入式硬件的发展三、嵌入式软件及其开发四、嵌入式操作系统及系统开发五、典型嵌入式操作系统介绍六、嵌入式操作系统选型,xlanchen2007.5.21,EmbeddedOperatingSystems,53,嵌入式操作系统一览,xlanchen2007.5.21,EmbeddedOperatingSystems,54,常见嵌入式实时操作系统,RTlinux及其他嵌入式实时LinuxuC/OSIIwindriversystems公司的VxworksQNXsoftwaresystems公司的QNX。
pSOSOS/9VRTXeCOS,xlanchen2007.5.21,EmbeddedOperatingSystems,55,常见嵌入式非实时操作系统,Microsoft公司的windowsCE、EmbeddedwindowsxpPalm公司的PalmOSsymbian公司的EPOC一些嵌入式linux系统,xlanchen2007.5.21,EmbeddedOperatingSystems,56,介绍几款典型的嵌入式操作系统,uC/OSIIThreadXWindows系列的嵌入式操作系统VxWorks嵌入式Linux,xlanchen2007.5.21,EmbeddedOperatingSystems,57,1、uC/OSII,免费的公开源码实时操作系统内核提供任务调度和管理、时钟管理、任务间同步与通信、内存管理和中断服务等功能最多支持64个任务,分别对应优先级063,其中0为最高优先级可剥夺实时多任务内核调度工作的内容分为两部分:
最高优先级任务的寻找和任务切换,xlanchen2007.5.21,EmbeddedOperatingSystems,58,内核是针对实时系统的要求来设计实现的,相对比较简单,可以满足较高的实时性要求但是没有网络功能和文件系统,对于像媒体播放、需要网络和图形界面
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 及其 软件 开发 概述