嵌入式系统概述.pptx
会计学1嵌入式系统概述嵌入式系统概述1.1什么是嵌入式系统什么是嵌入式系统嵌入式系统是以应用为中心,以计算机技术嵌入式系统是以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由以下几部分组成算机系统。它一般由以下几部分组成:n n嵌入式微处理器嵌入式微处理器n n外围硬件设备外围硬件设备n n嵌入式操作系统嵌入式操作系统n n特定的应用程序特定的应用程序第1页/共49页1.2嵌入式系统的特点嵌入式系统的特点特点:特点:n n 应用的特定性和广泛性应用的特定性和广泛性n n 技术、知识、资金的密集性技术、知识、资金的密集性n n 高效性高效性n n 较长的生命周期较长的生命周期n n 高可靠性高可靠性n n 软硬一体,软件为主软硬一体,软件为主n n 无自举开发能力无自举开发能力第2页/共49页1.3嵌入式系统与嵌入式系统与PC的不同的不同1.1.一般专用于特定的任务,而一般专用于特定的任务,而PCPC是一个通用计算机。是一个通用计算机。2.2.使用多种类型的处理器和处理器体系结构。使用多种类型的处理器和处理器体系结构。3.3.及其关注成本及其关注成本4.4.有实时约束有实时约束5.5.使用实时多任务操作系统使用实时多任务操作系统6.6.软件故障造成的后果比软件故障造成的后果比PCPC系统更严重系统更严重7.7.大多有功耗约束大多有功耗约束8.8.经常在极端的环境下运行经常在极端的环境下运行9.9.系统资源比系统资源比PCPC少的多少的多10.10.通常所有的目标代码存放在通常所有的目标代码存放在ROMROM中中11.11.需要专用工具和方法进行开发设计需要专用工具和方法进行开发设计12.12.嵌入式系统的数量远远超过嵌入式系统的数量远远超过PCPC第3页/共49页1.4嵌入式系统的应用领域嵌入式系统的应用领域第4页/共49页1.4嵌入式系统的应用领域嵌入式系统的应用领域第5页/共49页1.5嵌入式系统的产品嵌入式系统的产品n n网络设备:交换机、路由器,MODEMn n消费电子:手机、MP3、PDA、可视电话、电视机顶盒、数字电视、数码照相机、数码摄像机、信息家电n n办公设备:打印机、传真机、扫描仪n n汽车电子:ABS(防死锁刹车系统)、供油喷射控制系统、车载GPS。n n工业控制:各种自动控制设备第6页/共49页我们正步入一个崭新的我们正步入一个崭新的“数字世数字世界界”嵌入式应用嵌入式应用第7页/共49页1.6嵌入式系统的历史嵌入式系统的历史n n20 20 世纪世纪70 70 年代:单片机出现年代:单片机出现嵌入式系统最初的应用是基于单片机。汽车,工业机器,通信装置等成嵌入式系统最初的应用是基于单片机。汽车,工业机器,通信装置等成千上万种产品通过内嵌电子装置获得更佳的使用性能。千上万种产品通过内嵌电子装置获得更佳的使用性能。n n20 20 世纪世纪80 80 年代:嵌入式操作系统出现年代:嵌入式操作系统出现商业嵌入式实时内核包含传统操作系统的特征,使得开发周期缩短,成商业嵌入式实时内核包含传统操作系统的特征,使得开发周期缩短,成本降低,效率提高促使嵌入式系统有了更为广阔的应用空间。本降低,效率提高促使嵌入式系统有了更为广阔的应用空间。n n20 20 世纪世纪90 90 年代:实时多任务操作系统年代:实时多任务操作系统软件规模的不断上升,对实时性要求的提高,使得实时内核逐步发展为软件规模的不断上升,对实时性要求的提高,使得实时内核逐步发展为实时多任务操作系统,并作为一种软件平台逐步成为目前国际嵌入式系统的实时多任务操作系统,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。主流。第8页/共49页1.7巨大的市场巨大的市场n n计算机应用的普及、互联网技术的实用以及纳米微电子技术的突计算机应用的普及、互联网技术的实用以及纳米微电子技术的突破,正有力推动着破,正有力推动着21 21 世纪工业生产,商业活动科学试验和家庭生世纪工业生产,商业活动科学试验和家庭生活等领域自动化和信息化进程。活等领域自动化和信息化进程。n n嵌入式产品的巨大商机全过程自动化产品制造、大范围电子嵌入式产品的巨大商机全过程自动化产品制造、大范围电子商务活动、高度协同科学实验以及现代化家庭起居。商务活动、高度协同科学实验以及现代化家庭起居。n n你接触的每一样东西将装有芯片和嵌入式软件。你接触的每一样东西将装有芯片和嵌入式软件。第9页/共49页1.8创新的机遇创新的机遇n n通用计算机产业是垄断的。通用计算机产业是垄断的。n n嵌入式系统与技术是一个分散的工业,充满竞争、机遇与创新。嵌入式系统与技术是一个分散的工业,充满竞争、机遇与创新。n n没有哪一个系列的处理器和操作系统能够垄断全部市场即便在体没有哪一个系列的处理器和操作系统能够垄断全部市场即便在体系结构上存在着主流,但各不相同的应用领域决定了不可能有少系结构上存在着主流,但各不相同的应用领域决定了不可能有少数公司,少数产品垄断全部市场。因此嵌入式系统领域的产品和数公司,少数产品垄断全部市场。因此嵌入式系统领域的产品和技术,必然是高度分散的,留给各个行业的中小规模高技术公司技术,必然是高度分散的,留给各个行业的中小规模高技术公司的创新余地很大。的创新余地很大。第10页/共49页2.嵌入式系统的基本结构嵌入式系统的基本结构n n嵌入式系统的构架n n嵌入式微处理器n n嵌入式操作系统n n启动程序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 Processor)嵌入式微处理器(Embedded Microprocessor Unit)嵌入式片上系统SOC(System On Chip)第14页/共49页嵌入式微处理器嵌入式微处理器特点特点:n n功能和微处理器基本一样功能和微处理器基本一样,是具有是具有3232位以上的位以上的处理器处理器,具有较高的性能具有较高的性能.n n具有体积小具有体积小,功耗少功耗少,成本低成本低,可靠性高的特点可靠性高的特点.n n有的可提供工业级应用有的可提供工业级应用.流行的嵌入式微处理器流行的嵌入式微处理器:n nARM/Strong(ARMARM/Strong(ARM公司公司)n nPowerPC(MOTOROLPowerPC(MOTOROL公司公司)n n68000(MOTOROL68000(MOTOROL公司公司)n nMIPS(MIPSMIPS(MIPS公司公司)第15页/共49页MIPSMIPS处理器处理器MIPSMIPS技术公司是一家设计制造高性能、高档次及技术公司是一家设计制造高性能、高档次及嵌入式嵌入式3232位和位和6464位处理器的厂商。在位处理器的厂商。在RISCRISC处理器处理器方面占有重要地位。方面占有重要地位。MIPSMIPS的意思是的意思是“无内锁流水段微处理器无内锁流水段微处理器”(Microprocessor without interlocked piped Microprocessor without interlocked piped stagesstages),最早是在),最早是在8080年代初期由美国斯坦福大学年代初期由美国斯坦福大学HennessyHennessy教授领导的研究小组研制出来的。教授领导的研究小组研制出来的。19861986年推出年推出R2000R2000处理器,处理器,19881988年推出年推出R3000R3000处理处理器,器,19911991年推出第一款年推出第一款6464位商用微处理器位商用微处理器R4000R4000。之后,又陆续推出之后,又陆续推出R8000R8000(于(于19941994年)、年)、R10000R10000(于(于19961996年)和年)和R12000R12000(于(于19971997年)等型年)等型号。之后,号。之后,MIPSMIPS公司的战略发生变化公司的战略发生变化第16页/共49页MIPSMIPS处理器处理器此外,此外,24K24K微架构能符合各种新兴的服务趋势,微架构能符合各种新兴的服务趋势,为宽频存取以及还在不断发展的网络基础设为宽频存取以及还在不断发展的网络基础设施、通讯协议提供软件可编程的弹性。施、通讯协议提供软件可编程的弹性。在嵌入式方面,在嵌入式方面,MIPS MIPS 系列微处理器是目前仅系列微处理器是目前仅次于次于ARMARM的用得最多的处理器之一(的用得最多的处理器之一(19991999年年以前以前MIPSMIPS是世界上用得最多的处理器),其是世界上用得最多的处理器),其应用领域覆盖游戏机、路由器、激光打印机、应用领域覆盖游戏机、路由器、激光打印机、掌上电脑等各个方面。掌上电脑等各个方面。MIPSMIPS的系统结构及设的系统结构及设计理念比较先进,在设计理念上计理念比较先进,在设计理念上MIPSMIPS强调软强调软硬件协同提高性能,同时简化硬件设计。硬件协同提高性能,同时简化硬件设计。第17页/共49页 PowerPC PowerPC处理器处理器PowerPCPowerPC架构的特点是可伸缩性好,方便灵活。架构的特点是可伸缩性好,方便灵活。PowerPCPowerPC处理器品种很多,既有通用的处理器,又处理器品种很多,既有通用的处理器,又有嵌入式控制器和内核,应用范围非常广泛,从有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。费类电子产品到大型通信设备,无所不包。处理器芯片主要型号是处理器芯片主要型号是PowerPC 750PowerPC 750,它于,它于19971997年年研制成功,最高的工作频率可以达到研制成功,最高的工作频率可以达到500MHz500MHz,采,采用先进的铜线技术。该处理器有许多品种,以便用先进的铜线技术。该处理器有许多品种,以便适合各种不同的系统。包括适合各种不同的系统。包括IBMIBM小型机、苹果电小型机、苹果电脑和其他系统。脑和其他系统。嵌入式的嵌入式的PowerPC 405PowerPC 405(主频最高为(主频最高为266MHz266MHz)和)和PowerPC 440PowerPC 440(主频最高为(主频最高为550MHz550MHz)处理器内核)处理器内核可以用于各种可以用于各种SoCSoC设计上,在电信、金融和其他许设计上,在电信、金融和其他许多行业具有广泛的应用。多行业具有广泛的应用。第18页/共49页嵌入式微控制器嵌入式微控制器嵌入式微控制器就是将整个计算机系统的主要嵌入式微控制器就是将整个计算机系统的主要硬件集成到一块芯片中硬件集成到一块芯片中,芯片内部集成芯片内部集成ROM/EPROM,RAM,ROM/EPROM,RAM,总线总线,总线逻辑总线逻辑,定时定时/计数器计数器,Watchdog,I/O,Watchdog,I/O,串行口等各种必要功能和外设串行口等各种必要功能和外设.其特其特点为点为:n n一个系列的微控制器具有多种衍生产品一个系列的微控制器具有多种衍生产品;n n单片化单片化,体积大大减小体积大大减小,功耗和成本降低功耗和成本降低,可靠性提高可靠性提高;n n是目前嵌入式工业的主流是目前嵌入式工业的主流,约占嵌入式系统约占嵌入式系统70%70%的份额的份额;n n多是多是8 8位和位和1616位处理器位处理器n n流行的嵌入式微控制器流行的嵌入式微控制器n n通用系列通用系列:8051,MCS251,MCS-96/196/296:8051,MCS251,MCS-96/196/296n n半通用系列半通用系列:支持支持I2C,CAN BUS,LCDI2C,CAN BUS,LCD及众多专用及众多专用MCUMCU和兼容系和兼容系列列第19页/共49页嵌入式嵌入式DSPDSP嵌入式嵌入式嵌入式嵌入式DSPDSPDSPDSP处理器有两个发展方向:处理器有两个发展方向:处理器有两个发展方向:处理器有两个发展方向:是嵌入式DSP处理器和嵌入式处理器经 过单片化设计,片上增加丰富的外设成为具有高性能DSP功能的SoC;是在通用微处理器、微控制器或SoC中增加DSP协处理器,例如Intel的MCS-296和Siemens的TriCore。第20页/共49页嵌入式外围接口电路嵌入式外围接口电路和设备接口和设备接口 根据外围设备的功能可分为以根据外围设备的功能可分为以下下5类类 存储器类型通信接口输入输出设备 设备扩展接口 电源及辅助设备 第21页/共49页 存储器类型:存储器类型:n n存储器是嵌入式系统中存储数据和程序的功能部件,目前常见的存储设备按使用的存储器类型分为:n n 静态易失型存储器(静态易失型存储器(RAMRAM,SRAMSRAM););n n 动态存储器(动态存储器(DRAMDRAM););n n 非易失性存储器非易失性存储器ROMROM(ROMEPROMROMEPROM,EEPROMEEPROM,FLASHFLASH););n n 硬盘、软盘、硬盘、软盘、CDCDROMROM等。等。第22页/共49页 通信接口通信接口 目前存在的所有计算机通信接口在嵌入式领域中都目前存在的所有计算机通信接口在嵌入式领域中都有其广泛的应用,应用最为广泛的接口设备包括有其广泛的应用,应用最为广泛的接口设备包括 RS-232RS-232接口(串口接口(串口UARTUART)USBUSB接口(通用串行总线接口)接口(通用串行总线接口)IrDAIrDA(Infra Red Data AssociationInfra Red Data Association红外线接口)、红外线接口)、SPISPI(串行外围设备接口)、(串行外围设备接口)、I2CI2C、CANCAN总线接口、总线接口、蓝牙接口(蓝牙接口(BluetoothBluetooth)EthernetEthernet(以太网接口)、(以太网接口)、IEEE1394IEEE1394接口和通用可编程接口接口和通用可编程接口GPIOGPIO。第23页/共49页 输入输出设备输入输出设备 CRT、LCD和触摸屏等,构成了嵌入式系 统中重要的信息输入输出设备,应用广泛。触摸屏可以方便的实现鼠标和键盘功能。第24页/共49页 设备扩展接口设备扩展接口 简单的嵌入式系统如具有简单的记事本、备忘录以及日程计划等功简单的嵌入式系统如具有简单的记事本、备忘录以及日程计划等功能的能的PDAPDA,它所需要存储的数据量并不需要很大的内存。,它所需要存储的数据量并不需要很大的内存。由于目前的嵌入式系统功能越来越复杂,需要大容量内存,大的内由于目前的嵌入式系统功能越来越复杂,需要大容量内存,大的内存使得系统成本和体积加大。存使得系统成本和体积加大。目前一些高端的嵌入式系统都会预留可扩展存储设备接口,为日后目前一些高端的嵌入式系统都会预留可扩展存储设备接口,为日后用户有特别需求时,可购买符合扩展接口规格的装置直接接入系统用户有特别需求时,可购买符合扩展接口规格的装置直接接入系统使用。使用。常用的扩展卡还有各种常用的扩展卡还有各种CFCF卡、卡、SDSD卡、卡、Memory StickMemory Stick等。目前高端的等。目前高端的嵌入式系统都留有一定的扩展卡接口。嵌入式系统都留有一定的扩展卡接口。第25页/共49页 电源及辅助设备电源及辅助设备 嵌人式系统力求外观小型化、重量轻以及电源使用寿命长,例如移动电话或PDA,体积较大或者过重的机型已经被淘汰。目前发展的目标是体积小、易携带和外观设计新颖等。在便携式嵌入式系统的应用中,必须特别关注电源装置等辅助设备。第26页/共49页2.4嵌入式操作系统嵌入式操作系统嵌入式操作系统是嵌入式应用软件的基础和开嵌入式操作系统是嵌入式应用软件的基础和开发平台发平台.嵌入式系统的出现嵌入式系统的出现,解决了嵌入式软件开发解决了嵌入式软件开发标准化的难题标准化的难题.嵌入式系统具有操作系统的最基本的嵌入式系统具有操作系统的最基本的功能功能:n n进程调度进程调度n n内存管理内存管理n n设备管理设备管理n n文件管理文件管理n n操作系统接口操作系统接口(API(API调用调用)嵌入式操作系统具有的特点嵌入式操作系统具有的特点:n n系统可裁减系统可裁减,可配置可配置.n n系统具备网络支持功能系统具备网络支持功能n n系统具有一定的实时性系统具有一定的实时性第27页/共49页嵌入式操作系统的分类嵌入式操作系统的分类n n按照对实时系统的定义按照对实时系统的定义,嵌入式系统可分为实嵌入式系统可分为实时嵌入式系统与非实时嵌入式系统时嵌入式系统与非实时嵌入式系统:n n实时系统的定义:能够对外部事件做出及时实时系统的定义:能够对外部事件做出及时响应的系统。响应时间要有保证。响应的系统。响应时间要有保证。n n对外部事件的响应包括对外部事件的响应包括n n事件发生时要识别出来事件发生时要识别出来n n在给定时间约束内必须输出结果在给定时间约束内必须输出结果实时操作系统实时操作系统:VxWorks:VxWorks,WinCEWinCE,QNX,NucleusQNX,Nucleus非实时操作系统非实时操作系统:嵌入式嵌入式LinuxLinux第28页/共49页嵌入式实时操作系统的特点嵌入式实时操作系统的特点n n实时系统必须产生正确的结果实时系统必须产生正确的结果n n实时系统的响应必须在预定的周期内完成实时系统的响应必须在预定的周期内完成n n这两点同样重要这两点同样重要n n实时系统是具有确定性的。在这些实时系统中,响应时间决定事实时系统是具有确定性的。在这些实时系统中,响应时间决定事件是有界的。一个确定的实时系统意味着系统的每个部件都必须件是有界的。一个确定的实时系统意味着系统的每个部件都必须具有确定的行为,使得整个系统是确定性的。具有确定的行为,使得整个系统是确定性的。第29页/共49页2.5几种主流的嵌入式操作系统几种主流的嵌入式操作系统n nVxworksVxworks:美国美国WindRiverWindRiver公司于公司于19831983年开发,具有可年开发,具有可靠、实时、可裁减特性。靠、实时、可裁减特性。n nWindows EmbeddedWindows Embedded:支持具有丰富应用程序和服务的支持具有丰富应用程序和服务的3232位嵌入式系统。主要系列:位嵌入式系统。主要系列:Windows CE3.0,Windows CE3.0,Windows NT Embedded 4.0Windows NT Embedded 4.0和带有和带有Server Appliance Server Appliance KitKit的的Windows 2000Windows 2000n nPalm OSPalm OS:Com:Com公司产品,在公司产品,在PDAPDA市场占据很大份额,市场占据很大份额,具有开放的操作系统应用程序接口具有开放的操作系统应用程序接口(API)(API),可让用户,可让用户灵活方便地定制操作系统。灵活方便地定制操作系统。n n嵌入式嵌入式LinuxLinux:近两年来,:近两年来,LinuxLinux在嵌入式领域异军突在嵌入式领域异军突起,他的独特性,使其作为开发嵌入式产品的操作系起,他的独特性,使其作为开发嵌入式产品的操作系统具备巨大的潜力。统具备巨大的潜力。LinuxLinux具有一些独特的优势:层具有一些独特的优势:层次结构及内核完全开放;强大的网络支持功能;具备次结构及内核完全开放;强大的网络支持功能;具备一整套工具链;广泛的硬件支持特性。一整套工具链;广泛的硬件支持特性。第30页/共49页第31页/共49页2.6嵌入式系统软件的层次结构嵌入式系统软件的层次结构n n如如当当设设计计一一个个简简单单的的应应用用程程序序时时,可可以以不不使使用用操操作作系系统统,但但是是当当设设计计较较复复杂杂的的程程序序时时,可可能能就就需需要要一一个个操操作作系系统统(OSOS)来来管管理理、控控制制内内存存、多多任任务务、周周边边资资源源等等等等。依依据据系系统统所所提提供供的的程程序序界界面面来来编编写写应应用用程程序序,可可以以大大大大的的减减少少应应用用程程序序员员的负担。的负担。n n对对于于使使用用操操作作系系统统的的嵌嵌入入式式系系统统来来说说,嵌嵌入入式式系系统统软软件件结结构构一一般般包包含含四四个个层层面面:设设备备驱驱动动层层、实实时时操操作作系系统统(RTOSRTOS)、应应用用程程序序接接口口(APIAPI)层层、实实际际应应用用程程序序层层。有有些些资资料料将将应应用用程程序序接接口口APIAPI归归属属于于OSOS层层,如如图图1-11-1的的上上半半部部分分所所示示的的嵌嵌入入式式系系统统的的软软件件结结构构,是是按按三三层层划划分分的的。由由于于硬硬件件电电路路的的可可裁裁减性和嵌入式系统本身的特点,其软件部分也是可裁减的。减性和嵌入式系统本身的特点,其软件部分也是可裁减的。n n对对于于功功能能简简单单仅仅包包括括应应用用程程序序的的嵌嵌入入式式系系统统一一般般不不使使用用操操作作系系统统,仅仅有有应应用用程程序序和和设设备备驱驱动动程程序序。现现代代高高性性能能嵌嵌入入式式系系统统应应用用越越来来越越广广泛泛,操操作作系系统统使使用用成成为为必必然然发发展展趋趋势势。本本节节主要讲述的具有操作系统的嵌入式软件层次。主要讲述的具有操作系统的嵌入式软件层次。第32页/共49页嵌入式系统软件的层次结构嵌入式系统软件的层次结构具有操作系统的嵌入式软件层次驱动层程序 实时操作系统(RTOS)操作系统的应用程序接口(API)应用程序 第33页/共49页2.7启动程序启动程序BootLoader介绍介绍对对于于PCPC机机,其其开开机机后后的的初初始始化化处处理理器器配配置置、硬硬件件 初初 始始 化化 等等 操操 作作 是是 由由 BIOSBIOS(Basic Basic Input Input/Output/Output SystemSystem)完完成成的的,但但对对于于嵌嵌入入式式系系统统来来说说,出出于于经经济济性性、价价格格方方面面考考虑虑一一般般不不配配置置BIOSBIOS,因因此此我我们们必必须须自自行行编编写写完完成成这这些些工工作作的的程程序序。这这就就是是所所需需要要的的开开机机程程序序,在在嵌嵌入入式式中中称为称为BootLoaderBootLoader程序。程序。系系统统加加电电复复位位后后,几几乎乎所所有有的的 CPUCPU都都从从由由复复位位地址上取指令。地址上取指令。因因此此在在系系统统加加电电复复位位后后,处处理理器器将将首首先先执执行行 Boot Loader Boot Loader 程序。程序。第34页/共49页启动程序启动程序BootLoader介绍介绍BootLoaderBootLoader是是系系统统加加电电后后、操操作作系系统统内内核核或或用用户户应应用用程程序序运运行行之之前前,首首先先必必须须运运行行的的一一段段程程序序代代码码。通通过过这这段段程程序序,为为最最终终调调用用操操作作系系统统内内核核、运运行用户应用程序准备好正确的环境。行用户应用程序准备好正确的环境。对对于于嵌嵌入入式式系系统统来来说说,有有的的使使用用操操作作系系统统,也也有有的的不不使使用用操操作作系系统统,但但在在系系统统启启动动时时都都必必须须运运行行BootLoaderBootLoader,为系统运行准备好软硬件环境。,为系统运行准备好软硬件环境。系系统统启启动动代代码码完完成成基基本本软软硬硬件件环环境境初初始始化化后后,对对于于有有操操作作系系统统的的情情况况下下,启启动动操操作作系系统统、启启动动内内存存管管理理、任任务务调调度度、加加载载驱驱动动程程序序等等,最最后后执执行行应应用用程程序序或或等等待待用用户户命命令令;对对于于没没有有操操作作系系统统的的系统直接执行应用程序或等待用户命令系统直接执行应用程序或等待用户命令第35页/共49页启动程序启动程序BootLoader介绍介绍系统的启动通常有两种方式,一种是可以直系统的启动通常有两种方式,一种是可以直接从接从FlashFlash启动,另一种是可以将压缩的内存启动,另一种是可以将压缩的内存映像文件从映像文件从FlashFlash(为节省(为节省FlashFlash资源、提高资源、提高速度)中复制、解压到速度)中复制、解压到RAMRAM,再从,再从RAMRAM启动。启动。当电源打开时,一般的系统会去执行当电源打开时,一般的系统会去执行ROMROM(应(应用较多的是用较多的是FlashFlash)里面的启动代码。这些代)里面的启动代码。这些代码是用汇编语言编写的,其主要作用在于初码是用汇编语言编写的,其主要作用在于初始化始化CPUCPU和板上的必备硬件如内存、中断控制和板上的必备硬件如内存、中断控制器等。器等。有时候用户必须根据自己板子的硬件资源情有时候用户必须根据自己板子的硬件资源情况做适当的调整与修改。况做适当的调整与修改。第36页/共49页主流主流bootloader介绍介绍n nU-bootn nPPCbootn nARMbootn nBlobn nRedboot第37页/共49页3.嵌入式系统的开发方法嵌入式系统的开发方法1.嵌入式系统的设计准则2.嵌入式系统的设计流程3.嵌入式系统的开发方法4.嵌入式系统的开发模式5.嵌入式系统的测试第38页/共49页3.1嵌入式系统的设计准则嵌入式系统的设计准则嵌入式系统设计不同于桌面系统,它非常受制于功能和具体的应用环境。所以嵌入式系统的设计具有一些特殊的要求。嵌入式系统的设计要求:n n并发处理并发处理,及时响应及时响应n n接口方便接口方便,操作容易操作容易n n稳定可靠稳定可靠,维护简便维护简便n n功耗管理功耗管理,降低成本降低成本n n功能实用功能实用,便于升级便于升级第39页/共49页3.2嵌入式系统的设计流程嵌入式系统的设计流程嵌入式系统开发的最大特点就是需要软硬件综合开发。其原因嵌入式系统开发的最大特点就是需要软硬件综合开发。其原因在于在于:一方面一方面,任何一个嵌入式产品都是软件和硬件的结合体任何一个嵌入式产品都是软件和硬件的结合体;另一方另一方面面,一旦嵌入式产品研发完成一旦嵌入式产品研发完成,软件就固化在硬件环境中软件就固化在硬件环境中,嵌入式软件嵌入式软件是针对相应的嵌入式硬件开发的是针对相应的嵌入式硬件开发的,是专用的。嵌入式系统的这一特点是专用的。嵌入式系统的这一特点决定了嵌入式应用开发方法不同于传统的软件工程方法。决定了嵌入式应用开发方法不同于传统的软件工程方法。第40页/共49页嵌入式系统的开发流程嵌入式系统的开发流程第41页/共49页从生命周期看嵌入式系统的设计从生命周期看嵌入式系统的设计流程流程第42页/共49页3.3 嵌入式系统开发方法嵌入式系统开发方法n n设计过程的明确目标是建造一个有用的产品设计过程的明确目标是建造一个有用的产品-产品功能产品功能-产品性能产品性能-制造成本制造成本-功耗特性功耗特性-上市时间上市时间n n嵌入式产品设计需要一个小组的技术人员协嵌入式产品设计需要一个小组的技术人员协作完成作完成n n设计过程会受内外因素的影响而变化设计过程会受内外因素的影响而变化第43页/共49页嵌入式系统分层设计模型嵌入式系统分层设计模型第44页/共49页嵌入式系统的软硬件并行设计嵌入式系统的软硬件并行设计嵌入式系统的软硬件并行设计嵌入式系统的软硬件并行设计第45页/共49页3.4嵌入式系统的开发模式嵌入式系统的开发模式网线串口线宿主机目标机第46页/共49页3.4嵌入式系统的开发模式嵌入式系统的开发模式n n嵌入式系统的软件使用交叉开发平台进行开发。嵌入式系统的软件使用交叉开发平台进行开发。n n系统软件和应用软件在主机开发平台上开发系统软件和应用软件在主机开发平台上开发n n系统软件和应用软件在嵌入式硬件平台上运行。系统软件和应用软件在嵌入式硬件平台上运行。n n宿主机(宿主机(HostHost)是用来开发嵌入式软件的系统。)是用来开发嵌入式软件的系统。n n目标机(目标机(TargetTarget)是被开发的目的嵌入式系统。)是被开发的目的嵌入式系统。n n交叉编译器(交叉编译器(Cross-compilerCross-compiler)是进行交叉平台开发)是进行交叉平台开发的主要软件工具。它是运行在一种处理器体系结构上,的主要软件工具。它是运行在一种处理器体系结构上,但是可以生成在另一种不同的处理器体系结构上运行但是可以生成在另一种不同的处理器体系结构上运行的目标代码的编译器。的目标代码的编译器。第47页/共49页3.5嵌入式系统的测试嵌入式系统的测试n n测试目的测试目的:n n找到软硬件设计中的错误找到软硬件设计中的错误n n减少风险减少风险n n节约成本节约成本n n提高性能提高性能测试什么测试什么:n n功能调试功能调试(黑盒测试黑盒测试)n n压力测试压力测试,边界测试边界测试,异常测试异常测试n n错误测试错误测试,随机测试随机测试,性能测试性能测试 n n覆盖测试覆盖测试(白盒测试白盒测试)n n语句测试语句测试,判定和分支测试判定和分支测试,条件覆盖条件覆盖第48页/共49页