《嵌入式系统概述课件.pptx》由会员分享,可在线阅读,更多相关《嵌入式系统概述课件.pptx(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1.1什么是嵌入式系统嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由以下几部分组成:嵌入式微处理器外围硬件设备嵌入式操作系统特定的应用程序第1页/共49页1.2嵌入式系统的特点特点:应用的特定性和广泛性 技术、知识、资金的密集性 高效性 较长的生命周期 高可靠性 软硬一体,软件为主 无自举开发能力第2页/共49页1.3嵌入式系统与PC的不同1.一般专用于特定的任务,而PC是一个通用计算机。2.使用多种类型的处理器和处理器体系结构。3.及其关注成本4.有实时约束5.使用实时多任务操作系统6.软件故障造
2、成的后果比PC系统更严重7.大多有功耗约束8.经常在极端的环境下运行9.系统资源比PC少的多10.通常所有的目标代码存放在ROM中11.需要专用工具和方法进行开发设计12.嵌入式系统的数量远远超过PC第3页/共49页1.4嵌入式系统的应用领域第4页/共49页1.4嵌入式系统的应用领域第5页/共49页1.5嵌入式系统的产品网络设备:交换机、路由器,MODEM消费电子:手机、MP3、PDA、可视电话、电视机顶盒、数字电视、数码照相机、数码摄像机、信息家电办公设备:打印机、传真机、扫描仪汽车电子:ABS(防死锁刹车系统)、供油喷射控制系统、车载GPS。工业控制:各种自动控制设备第6页/共49页我们正
3、步入一个崭新的我们正步入一个崭新的“数字数字世界世界”嵌入式应用第7页/共49页1.6嵌入式系统的历史20 世纪70 年代:单片机出现嵌入式系统最初的应用是基于单片机。汽车,工业机器,通信装置等成千上万种产品通过内嵌电子装置获得更佳的使用性能。20 世纪80 年代:嵌入式操作系统出现商业嵌入式实时内核包含传统操作系统的特征,使得开发周期缩短,成本降低,效率提高促使嵌入式系统有了更为广阔的应用空间。20 世纪90 年代:实时多任务操作系统软件规模的不断上升,对实时性要求的提高,使得实时内核逐步发展为实时多任务操作系统,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。第8页/共49页1.7巨大
4、的市场计算机应用的普及、互联网技术的实用以及纳米微电子技术的突破,正有力推动着21 世纪工业生产,商业活动科学试验和家庭生活等领域自动化和信息化进程。嵌入式产品的巨大商机全过程自动化产品制造、大范围电子商务活动、高度协同科学实验以及现代化家庭起居。你接触的每一样东西将装有芯片和嵌入式软件。第9页/共49页1.8创新的机遇通用计算机产业是垄断的。嵌入式系统与技术是一个分散的工业,充满竞争、机遇与创新。没有哪一个系列的处理器和操作系统能够垄断全部市场即便在体系结构上存在着主流,但各不相同的应用领域决定了不可能有少数公司,少数产品垄断全部市场。因此嵌入式系统领域的产品和技术,必然是高度分散的,留给各
5、个行业的中小规模高技术公司的创新余地很大。第10页/共49页2.嵌入式系统的基本结构嵌入式系统的构架嵌入式微处理器嵌入式操作系统启动程序BootLoader介绍 第11页/共49页2.1嵌入式系统的构架API(Application Programming Interface)第12页/共49页2.2嵌入式系统的硬件基本结构第13页/共49页2.3嵌入式处理器1.支持实时多任务.2.较短的中断响应时间3.存储区保护功能4.可扩展的处理器结构5.较低的功耗分类:嵌入式微控制器(Microcontroller Unit)嵌入式DSP处理器EDSP(Embedded Digital Signal P
6、rocessor)嵌入式微处理器(Embedded Microprocessor Unit)嵌入式片上系统SOC(System On Chip)第14页/共49页嵌入式微处理器特点:功能和微处理器基本一样,是具有32位以上的处理器,具有较高的性能.具有体积小,功耗少,成本低,可靠性高的特点.有的可提供工业级应用.流行的嵌入式微处理器:ARM/Strong(ARM公司)PowerPC(MOTOROL公司)68000(MOTOROL公司)MIPS(MIPS公司)第15页/共49页MIPSMIPS处理器处理器MIPS技术公司是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商。在RISC处
7、理器方面占有重要地位。MIPS的意思是“无内锁流水段微处理器”(Microprocessor without interlocked piped stages),最早是在80年代初期由美国斯坦福大学Hennessy教授领导的研究小组研制出来的。1986年推出R2000处理器,1988年推出R3000处理器,1991年推出第一款64位商用微处理器R4000。之后,又陆续推出R8000(于1994年)、R10000(于1996年)和R12000(于1997年)等型号。之后,MIPS公司的战略发生变化第16页/共49页MIPSMIPS处理器处理器此外,24K微架构能符合各种新兴的服务趋势,为宽频存取
8、以及还在不断发展的网络基础设施、通讯协议提供软件可编程的弹性。在嵌入式方面,MIPS 系列微处理器是目前仅次于ARM的用得最多的处理器之一(1999年以前MIPS是世界上用得最多的处理器),其应用领域覆盖游戏机、路由器、激光打印机、掌上电脑等各个方面。MIPS的系统结构及设计理念比较先进,在设计理念上MIPS强调软硬件协同提高性能,同时简化硬件设计。第17页/共49页 PowerPC PowerPC处理器处理器PowerPC架构的特点是可伸缩性好,方便灵活。PowerPC处理器品种很多,既有通用的处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类
9、电子产品到大型通信设备,无所不包。处理器芯片主要型号是PowerPC 750,它于1997年研制成功,最高的工作频率可以达到500MHz,采用先进的铜线技术。该处理器有许多品种,以便适合各种不同的系统。包括IBM小型机、苹果电脑和其他系统。嵌入式的PowerPC 405(主频最高为266MHz)和PowerPC 440(主频最高为550MHz)处理器内核可以用于各种SoC设计上,在电信、金融和其他许多行业具有广泛的应用。第18页/共49页嵌入式微控制器嵌入式微控制器就是将整个计算机系统的主要硬件集成到一块芯片中,芯片内部集成ROM/EPROM,RAM,总线,总线逻辑,定时/计数器,Watchd
10、og,I/O,串行口等各种必要功能和外设.其特点为:一个系列的微控制器具有多种衍生产品;单片化,体积大大减小,功耗和成本降低,可靠性提高;是目前嵌入式工业的主流,约占嵌入式系统70%的份额;多是8位和16位处理器流行的嵌入式微控制器通用系列:8051,MCS251,MCS-96/196/296半通用系列:支持I2C,CAN BUS,LCD及众多专用MCU和兼容系列第19页/共49页嵌入式嵌入式DSPDSP嵌入式嵌入式DSPDSP处理器有两个发展方向:处理器有两个发展方向:是嵌入式DSP处理器和嵌入式处理器经 过单片化设计,片上增加丰富的外设成为具有高性能DSP功能的SoC;是在通用微处理器、微
11、控制器或SoC中增加DSP协处理器,例如Intel的MCS-296和Siemens的TriCore。第20页/共49页嵌入式外围接口电路嵌入式外围接口电路和设备接口和设备接口 根据外围设备的功能可分为以下根据外围设备的功能可分为以下5类类 存储器类型通信接口输入输出设备 设备扩展接口 电源及辅助设备 第21页/共49页 存储器类型:存储器类型:存储器是嵌入式系统中存储数据和程序的功能部件,目前常见的存储设备按使用的存储器类型分为:静态易失型存储器(RAM,SRAM);动态存储器(DRAM);非易失性存储器ROM(ROMEPROM,EEPROM,FLASH);硬盘、软盘、CDROM等。第22页/
12、共49页 通信接口通信接口 目前存在的所有计算机通信接口在嵌入式领域中都有其广泛的应用,应用最为广泛的接口设备包括 RS-232接口(串口UART)USB接口(通用串行总线接口)IrDA(Infra Red Data Association红外线接口)、SPI(串行外围设备接口)、I2C、CAN总线接口、蓝牙接口(Bluetooth)Ethernet(以太网接口)、IEEE1394接口和通用可编程接口GPIO。第23页/共49页 输入输出设备输入输出设备 CRT、LCD和触摸屏等,构成了嵌入式系 统中重要的信息输入输出设备,应用广泛。触摸屏可以方便的实现鼠标和键盘功能。第24页/共49页 设备
13、扩展接口设备扩展接口 简单的嵌入式系统如具有简单的记事本、备忘录以及日程计划等功能的PDA,它所需要存储的数据量并不需要很大的内存。由于目前的嵌入式系统功能越来越复杂,需要大容量内存,大的内存使得系统成本和体积加大。目前一些高端的嵌入式系统都会预留可扩展存储设备接口,为日后用户有特别需求时,可购买符合扩展接口规格的装置直接接入系统使用。常用的扩展卡还有各种CF卡、SD卡、Memory Stick等。目前高端的嵌入式系统都留有一定的扩展卡接口。第25页/共49页 电源及辅助设备电源及辅助设备 嵌人式系统力求外观小型化、重量轻以及电源使用寿命长,例如移动电话或PDA,体积较大或者过重的机型已经被淘
14、汰。目前发展的目标是体积小、易携带和外观设计新颖等。在便携式嵌入式系统的应用中,必须特别关注电源装置等辅助设备。第26页/共49页2.4嵌入式操作系统嵌入式操作系统是嵌入式应用软件的基础和开发平台.嵌入式系统的出现,解决了嵌入式软件开发标准化的难题.嵌入式系统具有操作系统的最基本的功能:进程调度内存管理设备管理文件管理操作系统接口(API调用)嵌入式操作系统具有的特点:系统可裁减,可配置.系统具备网络支持功能系统具有一定的实时性第27页/共49页嵌入式操作系统的分类按照对实时系统的定义,嵌入式系统可分为实时嵌入式系统与非实时嵌入式系统:实时系统的定义:能够对外部事件做出及时响应的系统。响应时间
15、要有保证。对外部事件的响应包括事件发生时要识别出来在给定时间约束内必须输出结果实时操作系统:VxWorks,WinCE,QNX,Nucleus非实时操作系统:嵌入式Linux第28页/共49页嵌入式实时操作系统的特点实时系统必须产生正确的结果实时系统的响应必须在预定的周期内完成这两点同样重要实时系统是具有确定性的。在这些实时系统中,响应时间决定事件是有界的。一个确定的实时系统意味着系统的每个部件都必须具有确定的行为,使得整个系统是确定性的。第29页/共49页2.5几种主流的嵌入式操作系统Vxworks:美国WindRiver公司于1983年开发,具有可靠、实时、可裁减特性。Windows Em
16、bedded:支持具有丰富应用程序和服务的32位嵌入式系统。主要系列:Windows CE3.0,Windows NT Embedded 4.0和带有Server Appliance Kit的Windows 2000Palm OS:Com公司产品,在PDA市场占据很大份额,具有开放的操作系统应用程序接口(API),可让用户灵活方便地定制操作系统。嵌入式Linux:近两年来,Linux在嵌入式领域异军突起,他的独特性,使其作为开发嵌入式产品的操作系统具备巨大的潜力。Linux具有一些独特的优势:层次结构及内核完全开放;强大的网络支持功能;具备一整套工具链;广泛的硬件支持特性。第30页/共49页第
17、31页/共49页2.6嵌入式系统软件的层次结构嵌入式系统软件的层次结构如当设计一个简单的应用程序时,可以不使用操作系统,但是当设计较复杂的程序时,可能就需要一个操作系统(OS)来管理、控制内存、多任务、周边资源等等。依据系统所提供的程序界面来编写应用程序,可以大大的减少应用程序员的负担。对于使用操作系统的嵌入式系统来说,嵌入式系统软件结构 一 般 包 含 四 个 层 面:设 备 驱 动 层、实 时 操 作 系 统(RTOS)、应用程序接口(API)层、实际应用程序层。有些资料将应用程序接口API归属于OS层,如图1-1的上半部分所示的嵌入式系统的软件结构,是按三层划分的。由于硬件电路的可裁减性
18、和嵌入式系统本身的特点,其软件部分也是可裁减的。对于功能简单仅包括应用程序的嵌入式系统一般不使用操作系统,仅有应用程序和设备驱动程序。现代高性能嵌入式系统应用越来越广泛,操作系统使用成为必然发展趋势。本节主要讲述的具有操作系统的嵌入式软件层次。第32页/共49页嵌入式系统软件的层次结构嵌入式系统软件的层次结构具有操作系统的嵌入式软件层次驱动层程序 实时操作系统(RTOS)操作系统的应用程序接口(API)应用程序 第33页/共49页2.7启动程序启动程序BootLoader介绍介绍对于PC机,其开机后的初始化处理器配置、硬件初始化等操作是由BIOS(Basic Input/Output Syst
19、em)完成的,但对于嵌入式系统来说,出于经济性、价格方面考虑一般不配置BIOS,因此我们必须自行编写完成这些工作的程序。这就是所需要的开机程序,在嵌入式中称为BootLoader程序。系统加电复位后,几乎所有的 CPU都从由复位地址上取指令。因此在系统加电复位后,处理器将首先执行 Boot Loader 程序。第34页/共49页启动程序启动程序BootLoader介绍介绍BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系
20、统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。系统启动代码完成基本软硬件环境初始化后,对于有操作系统的情况下,启动操作系统、启动内存管理、任务调度、加载驱动程序等,最后执行应用程序或等待用户命令;对于没有操作系统的系统直接执行应用程序或等待用户命令第35页/共49页启动程序启动程序BootLoader介绍介绍系统的启动通常有两种方式,一种是可以直接从Flash启动,另一种是可以将压缩的内存映像文件从Flash(为节省Flash资源、提高速度)中复制、解压到RAM,再从RAM启动。当电源打开时,一般的系统会去执行ROM(应用较多的是Flash)里面的启动代码。这些
21、代码是用汇编语言编写的,其主要作用在于初始化CPU和板上的必备硬件如内存、中断控制器等。有时候用户必须根据自己板子的硬件资源情况做适当的调整与修改。第36页/共49页主流bootloader介绍U-bootPPCbootARMbootBlobRedboot第37页/共49页3.嵌入式系统的开发方法1.嵌入式系统的设计准则2.嵌入式系统的设计流程3.嵌入式系统的开发方法4.嵌入式系统的开发模式5.嵌入式系统的测试第38页/共49页3.1嵌入式系统的设计准则嵌入式系统设计不同于桌面系统,它非常受制于功能和具体的应用环境。所以嵌入式系统的设计具有一些特殊的要求。嵌入式系统的设计要求:并发处理,及时响
22、应接口方便,操作容易稳定可靠,维护简便功耗管理,降低成本功能实用,便于升级第39页/共49页3.2嵌入式系统的设计流程嵌入式系统开发的最大特点就是需要软硬件综合开发。其原因在于:一方面,任何一个嵌入式产品都是软件和硬件的结合体;另一方面,一旦嵌入式产品研发完成,软件就固化在硬件环境中,嵌入式软件是针对相应的嵌入式硬件开发的,是专用的。嵌入式系统的这一特点决定了嵌入式应用开发方法不同于传统的软件工程方法。第40页/共49页嵌入式系统的开发流程第41页/共49页从生命周期看嵌入式系统的设计流程第42页/共49页3.3 嵌入式系统开发方法设计过程的明确目标是建造一个有用的产品-产品功能-产品性能-制
23、造成本-功耗特性-上市时间嵌入式产品设计需要一个小组的技术人员协作完成设计过程会受内外因素的影响而变化第43页/共49页嵌入式系统分层设计模型第44页/共49页嵌入式系统的软硬件并行设计第45页/共49页3.4嵌入式系统的开发模式网线串口线宿主机目标机第46页/共49页3.4嵌入式系统的开发模式嵌入式系统的软件使用交叉开发平台进行开发。系统软件和应用软件在主机开发平台上开发系统软件和应用软件在嵌入式硬件平台上运行。宿主机(Host)是用来开发嵌入式软件的系统。目标机(Target)是被开发的目的嵌入式系统。交叉编译器(Cross-compiler)是进行交叉平台开发的主要软件工具。它是运行在一种处理器体系结构上,但是可以生成在另一种不同的处理器体系结构上运行的目标代码的编译器。第47页/共49页3.5嵌入式系统的测试测试目的:找到软硬件设计中的错误减少风险节约成本提高性能测试什么:功能调试(黑盒测试)压力测试,边界测试,异常测试错误测试,随机测试,性能测试覆盖测试(白盒测试)语句测试,判定和分支测试,条件覆盖第48页/共49页感谢您的观看。第49页/共49页