版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统及应用山东理工大学计算机学院李业德教授2014.10.13主要内容什么是嵌入式系统嵌入式系统的历史与现状嵌入式系统的发展及应用领域嵌入式系统的特征嵌入式系统的硬件组成嵌入式系统的软件系统1.嵌入式系统的基本定义IEEE定义根据IEEE(国际电气和电子工程师协会)的定义:
嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置”(原文为devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。可以看出此定义是从应用上考虑的,嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装置。Embeddedsystem个人电脑≠嵌入式系统简单的讲,嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。广义的讲,可以认为凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统微机学会的定义
嵌入式系统是以嵌入式应用为目的的计算机系统。可分为系统级、板级、片级系统级:各种类型的工控器、PC104模块板级:各种类型的带CPU的主板及OEM产品片级:各种以单片机、DSP、微处理器为核心的产品《单片机与嵌入式系统应用》定义
嵌入式系统是嵌入到对象体系内部的专用计算机系统嵌入式系统本身是一个相对模糊的定义。实际上,嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,而且有时很难以给它下一个准确的定义。现在人们讲嵌入式系统时,某种程度上指具有操作系统的嵌入式系统。目前嵌入式系统已经渗透到我们生活中的每个角落,工业、服务业、消费电子……,而恰恰由于这种范围的扩大,使得“嵌入式系统”更加难于明确定义。通用定义
“以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。”2.嵌入式系统的历史与现状嵌入式系统的发展历史
虽然嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机的出现到今天的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。作为一个系统,往往是在硬件和软件交替发展的双螺旋的支撑下逐渐趋于稳定和成熟,嵌入式系统也不例外。嵌入式系统的出现最初是基于单片机的。使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能:更容易使用、更快、更便宜。这些装置已经初步具备了嵌入式的应用特点,但是这时的应用只是使用8位的芯片,执行一些单线程的程序,还谈不上“系统”的概念。最早的单片机是Intel公司的8048。Motorola同时推出了68HC05,Zilog公司推出了Z80系列。之后在80年代初,Intel又进一步完善了8048,在它的基础上研制成功了8051,51系列的单片机仍然是最为成功的单片机芯片,在各种产品中有着非常广泛的应用。发展现状
随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(电脑)工具将是PC和因特网之后最伟大的发明。进入20世纪90年代,嵌入式技术全面展开,目前已成为通信和消费类产品的共同发展方向。欧洲的DVB(数字电视广播)技术已在全球大多数国家推广。数字音频广播(DAB)也已进入商品化试播阶段。目前对于企业专用解决方案,如物流管理、条码扫描、移动信息采集等,这种小型手持嵌入式系统将发挥巨大的作用。ATM机,自动售货机,工业控制等专用设备,移动通讯设备、GPS、嵌入式系统同样可以发挥巨大的作用。近期的ADSL产品,结合网络,控制,信息,这种智能化,网络化将是家电发展的新趋势。
硬件方面:不仅有各大公司的微处理器芯片,还有用于学习和研发的各种配套开发包。目前低层系统和硬件平台经过若干年的研究,已经相对比较成熟,实现各种功能的芯片应有尽有。而且巨大的市场需求给我们提供了学习研发的资金和技术力量。
软件方面讲:也有相当部分的成熟软件系统。同时由于是研究热点,所以我们可以在网上找到各种各样的免费资源,从各大厂商的开发文档,到各种驱动,程序源代码,甚至很多厂商还提供微处理器的样片。这对于我们从事这方面的研发,无疑是个资源宝库。今天嵌入式系统带来的工业年产值已超过了1万亿美元,1997年来自美国嵌入式系统大会(EmbeddedSystemConference)的报告指出,未来5年仅基于嵌入式计算机系统的全数字电视产品,就将在美国产生一个每年1500亿美元的新市场。福特公司的高级经理也曾宣称,“福特出售的‘计算能力’已超过了IBM”,由此可以想见嵌入式计算机工业的规模和广度。1998年11月在美国加州举行的嵌入式系统大会上,基于RTOS的EmbeddedInternet成为一个技术新热点。
由此可见,嵌入式系统技术发展的空间真是无比广大。
3.嵌入式系统的发展及应用领域嵌入式技术是后PC时代的技术春天
事实上,嵌入式技术无处不在,计算机技术也开始进入一个被称为后PC技术的春天,美国正在启动一项计划,网络无线介入平台。我们不仅拥有那种放在桌上处理文档、进行工作管理和生产控制的计算机“机器”,而且一个普通人也可能拥有从大到小的各种使用嵌入式技术的电子产品:MP3、PDA、手机、智能玩具等;电子病历,德国血压仪,无线收费超市,RF物流,网络家电等;智能车载电子设备,安全监控、GPS、倒车雷达等。高级酒店,电话、TV、INTERNET、PLAY、EMAIL、KEY、无线集成;在工业和服务领域中,大量嵌入式技术也已经应用于工业控制、数控机床、智能工具、工业机器人、服务机器人等各个行业,正在逐渐改变着传统的工业生产和服务方式。飞机的电子设备,巴黎、东京、汉城等城市地铁买票系统。嵌入式系统的应用领域一些典型的嵌入式系统应用实例嵌入式系统的应用家用方面:数字电视、信息家电、智能玩具、手持通讯、存储设备的核心。家庭智能管理系统社区建筑的水、电、煤气表的远程自动抄表,安全防火、防盗系统,远程点菜器等。
社会发展方面:嵌入式Internet应用嵌入式应用——汽车电子汽车电子产品(18个嵌入式控制模块)——CAN总线网络ECM:enginecontrolmodule的缩写TCM:transmissioncontrolmodule的缩写(汽车变速箱系统控制模块的简称)ETM:自动跟踪变速箱SAS:汽车安全预警系统ABC车身主动控制系统DD缸内直喷式柴油发动机
DSC车身稳定控制系统SDi自然吸气式超柴油发动机
VSC车身稳定控制系统TA-Turbo(涡轮增压)
TRC牵引力控制系统NOS氧化氮气增压系统
TCS牵引力控制系统MA机械增压
ABS防抱死制动系统FF前轮驱动
ASR加速防滑系统FR后轮驱动
LCD限滑差速器Ap恒时全轮驱动
BAS制动辅助系统Az接通式全轮驱动DCS车身动态控制系统ASM动态稳定系统
EBA紧急制动辅助系统AYC主动偏行系统
EBD电子制动力分配系统ST无级自动变速器
EDS电子差速锁AS转向臂
ESP电子稳定程序系统QL横向摆臂
HBA液压刹车辅助系统DQL双横向摆臂
HDC坡道控制系统LL纵向摆臂
HAC坡道起车控制系统SL斜置摆臂
DAC下坡行车辅助控制系统ML多导向轴
A-TRC车身主动循迹控制系统SA整体式车桥
SRS双安全气囊DD德迪戎式独立悬架后桥
SAHR主动性头枕VL复合稳定杆式悬架后桥
GPS车载卫星定位导航系统FB弹性支柱
i-Drive智能集成化操作系统DB减震器支柱智能玩具与机器人嵌入式技术应用——工业控制
工业方面:机床、冶金、电子、交通、航空航天等行业技术升级的重要基础;军事侦察反恐防暴2002年11月28日,以色列一选举投票点,发生枪击事件,造成至少7人死亡,数十人受伤。以警方用机器人在检查一具巴勒斯坦枪手的尸体空中飞行器微型飞行器---“黑寡妇”嵌入式系统与机器人技术图:卡耐基梅隆大学和瑞士EPFL研制的机器人控制器(采用卡西欧PDA和WindowsCE)基于WinCE的移动机器人平台
基于RTLinux的仿人机器人基于VXworks的火星探路者2004年“勇气号”再次登陆火星4.嵌入式系统的几个重要特征(1)系统内核小
由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。 比如ENEA公司的OSE分布式系统,内核只有5K,而Windows的内核则要大得多。嵌入式系统的几个重要特征(2)专用性强
嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。 即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。 同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。嵌入式系统的几个重要特征(3)系统精简
嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。嵌入式系统的几个重要特征(4)高实时性OS
这是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。软件代码要求高质量和高可靠性、实时性。嵌入式系统的几个重要特征(5)嵌入式软件开发走向标准化
嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。 为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS(Real-TimeOperatingSystem)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。嵌入式系统的几个重要特征(6)嵌入式系统需要开发工具和环境 由于其本身不具备自主开发能力,即使设计完成以后,用户通常也是不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。 这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。嵌入式系统的几个重要特点
应用的特定性和广泛性技术、知识的密集性高效性较长的生命周期高可靠性软硬一体,软件为主无自举开发能力5.嵌入式系统的架构冯·诺依曼体系结构模型哈佛体系结构CISC与RISC的数据通道CISC与RISC的对比CISC和RISCCISC:复杂指令集(ComplexInstructionSetComputer)具有大量的指令和寻址方式8/2原则:80%的程序只使用20%的指令大多数程序只使用少量的指令就能够运行。RISC:精简指令集(ReducedInstructionSetComputer)在通道中只包含最有用的指令确保数据通道快速执行每一条指令使CPU硬件结构设计变得更为简单从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的部分,而目前世界上具有嵌入式功能特点的处理器已经超过1000种,流行体系结构包括MCU,MPU等30多个系列。其中从单片机、DSP、FPGA到ARM有着各式各样的品种,速度越来越快,性能越来越强,价格也越来越低。目前嵌入式处理器的寻址空间可以从64kB到16MB,处理速度最快可以达到2000MIPS,封装从8个引脚到144个引脚不等。
6.嵌入式系统的分类嵌入式处理器
嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核的执行时间减少到最低限度。具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。可扩展的处理器结构,以能最迅速地开发出满足应用的最高性能的嵌入式微处理器。嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。嵌入式微处理器分类(1)嵌入式微控制器(CPU)嵌入式微控制器的典型代表是单片机,这种8位的电子器件目前在嵌入式设备中仍然有着极其广泛的应用。单片机芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种必要功能和外设。微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称为微控制器。嵌入式微处理器分类(2)嵌入式DSP处理器DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,在数字滤波、FFT、谱分析等各种仪器上DSP获得了大规模的应用。DSP的理论算法在70年代就已经出现,但是由于专门的DSP处理器还未出现,所以这种理论算法只能通过MPU等由分立元件实现。1982年世界上诞生了首枚DSP芯片。在语音合成和编码解码器中得到了广泛应用。DSP的运算速度进一步提高,应用领域也从上述范围扩大到了通信和计算机方面。目前最为广泛应用的嵌入式DSP处理器是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的应用范围。嵌入式微处理器分类(3)嵌入式微处理器(MicroProcessorUnit)MPU嵌入式微处理器是由通用计算机中的CPU演变而来的。与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM系列等嵌入式微处理器分类(4)嵌入式片上系统(SystemOnChip)SoC就是SystemonChip,SoC嵌入式系统微处理器就是一种电路系统。它结合了许多功能区块,将功能做在一个芯片上,像是ARMRISC、MIPSRISC、DSP或是其他的微处理器核心,加上通信的接口单元,像是通用串行端口(USB)、TCP/IP通信单元、GPRS通信接口、GSM通信接口、IEEE1394、蓝牙模块接口等等,这些单元以往都是依照各单元的功能做成一个个独立的处理芯片。新的发展方向:SOC基于软件系统的分类从软件方面划分,主要可以依据操作系统的类型。目前嵌入式系统的软件主要有两大类:实时系统和分时系统。其中实时系统又分为两类:硬实时系统和软实时系统。实时嵌入系统是为执行特定功能而设计的,可以严格的按时序执行功能。其最大的特征就是程序的执行具有确定性。在实时系统中,如果系统在指定的时间内未能实现某个确定的任务,会导致系统的全面失败,则系统被称为硬实时系统。而在软实时系统中,虽然响应时间同样重要,但是超时却不会导致致命错误。一个硬实时系统往往在硬件上需要添加专门用于时间和优先级管理的控制芯片,而软实时系统则主要在软件方面通过编程实现时限的管理。比如WindowsCE就是一个多任务分时系统,而Ucos-II则是典型的实时操作系统。7.嵌入式系统与单片机、PC相比的优势
性能方面:采用32位RISC结构微处理器,主频从30MHz到200MHz以上,处理能力大大超出单片机系统,接近PC机的水平,但体积更小,能够真正地“嵌入”到设备中;
实性性方面:嵌入式机控制器内嵌实时操作系统(RTOS),能够完全保证控制系统的强实时性;
人机交互方面:嵌入式控制器可支持大屏幕的液晶显示器,提供功能强大的图形用户界面,这方面与PC机相比毫不逊色;
系统升级方面:嵌入式控制器可为控制系统专门设计,其功能专一,成本较低,而且开放的用户程序接口(API)保证了系统能够快速升级和更新。嵌入式系统与单片机、PC机的区别
嵌入式系统≠单片机系统 目前嵌入式系统的主流是以32位嵌入式微处理器为核心的硬件设计和基于实时操作系统(RTOS)的软件设计 单片机系统多为4位、8位、16位机,不适合运行操作系统,难以进行复杂的运算及处理功能嵌入式系统强调基于平台的设计、软硬件协同设计,单片机大多采用软硬件流水设计 嵌入式系统设计的核心是软件设计(占70%左右的工作量),单片机系统软硬件设计所占比例基本相同嵌入式系统与单片机、PC机的区别嵌入式系统≠PC机嵌入式系统一般是专用系统,而PC是通用计算平台嵌入式系统的资源比PC少得多嵌入式系统软件故障带来的后果比PC机大得多嵌入式系统一般采用实时操作系统嵌入式系统大都有成本、功耗的要求嵌入式系统得到多种微处理体系的支持嵌入式系统需要专用的开发工具8.嵌入式系统组成一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成。嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很简单,如手机上的一个微小型的震动电机;也可以很复杂,如SONY智能机器狗,上面集成了多个微小型控制电机和多种传感器。嵌入式系统的基本框架嵌入式系统的软/硬件框架嵌入式系统组成-硬件层硬件层中包含嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/O接口(A/D、D/A、I/O等)。在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。
(1)嵌入式微处理器
嵌入式系统硬件层的核心是嵌入式微处理器,嵌入式微处理器与通用CPU最大的不同在于嵌入式微处理器大多工作在为特定用户群所专用设计的系统中,它将通用CPU许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。嵌入式微处理器的体系结构可以采用冯·诺依曼体系或哈佛体系结构;指令系统可以选用精简指令系统(ReducedInstructionSetComputer,RISC)和复杂指令系统CISC(ComplexInstructionSetComputer,CISC)。RISC计算机在通道中只包含最有用的指令,确保数据通道快速执行每一条指令,从而提高了执行效率并使CPU硬件结构设计变得更为简单。
嵌入式微处理器有各种不同的体系,即使在同一体系中也可能具有不同的时钟频率和数据总线宽度,或集成了不同的外设和接口。据不完全统计,目前全世界嵌入式微处理器已经超过1000多种,体系结构有30多个系列,其中主流的体系有ARM、MIPS、PowerPC、X86和SH等。但与全球PC市场不同的是,没有一种嵌入式微处理器可以主导市场,仅以32位的产品而言,就有100种以上的嵌入式微处理器。嵌入式微处理器的选择是根据具体的应用而决定的。(2)存储器
嵌入式系统需要存储器来存放和执行代码。嵌入式系统的存储器包含:Cache主存辅助存储器。
Cache
Cache是一种容量小、速度快的存储器阵列它位于主存和嵌入式微处理器内核之间,存放的是最近一段时间微处理器使用最多的程序代码和数据。在需要进行数据读取操作时,微处理器尽可能的从Cache中读取数据,而不是从主存中读取,这样就大大改善了系统的性能,提高了微处理器和主存之间的数据传输速率。Cache的主要目标就是:减小存储器(如主存和辅助存储器)给微处理器内核造成的存储器访问瓶颈,使处理速度更快,实时性更强。在嵌入式系统中Cache全部集成在嵌入式微处理器内,可分为数据Cache、指令Cache或混合Cache,Cache的大小依不同处理器而定。一般中高档的嵌入式微处理器才会把Cache集成进去。主存
主存是嵌入式微处理器能直接访问的寄存器,用来存放系统和用户的程序及数据。它可以位于微处理器的内部或外部,其容量为256KB-1GB,根据具体的应用而定,一般片内存储器容量小,速度快,片外存储器容量大。
常用作主存的存储器有:
ROM类:NORFlash、EPROM和PROM等。RAM类:SRAM、DRAM和SDRAM等。其中NORFlash凭借其可擦写次数多、存储速度快、存储容量大、价格便宜等优点,在嵌入式领域内得到了广泛应用。辅助存储器
辅助存储器用来存放大数据量的程序代码或信息,它的容量大、但读取速度与主存相比就慢的很多,用来长期保存用户的信息。嵌入式系统中常用的外存有:硬盘、NANDFlash、CF卡、MMC和SD卡等。NORFlash的特点是芯片内执行(XIP,eXecuteInPlace),这样应用程序可以直接在Flash闪存内运行,不必再把代码读到系统RAM中。Nand-flash内存其内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。Nand-flash存储器具有容量较大,改写速度快等优点,适用于大量数据的存储
(3)通用设备接口和I/O接口
嵌入式系统和外界交互需要一定形式的通用设备接口,如A/D、D/A、I/O等,外设通过和片外其他设备的或传感器的连接来实现微处理器的输入/输出功能。每个外设通常都只有单一的功能,它可以在芯片外也可以内置芯片中。外设的种类很多,可从一个简单的串行通信设备到非常复杂的802.11无线设备。目前嵌入式系统中常用的通用设备接口有A/D(模/数转换接口)、D/A(数/模转换接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太网接口)、USB(通用串行总线接口)、音频接口、VGA视频输出接口、I2C(现场总线)、SPI(串行外围设备接口)和IrDA(红外线接口)等。嵌入式系统组成-中间层
硬件层与软件层之间为中间层,也称为硬件抽象层(HardwareAbstractLayer,HAL)或板级支持包(BoardSupportPackage,BSP),它将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP层提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。
硬件相关性:因为嵌入式实时系统的硬件环境具有应用相关性,而作为上层软件与硬件平台之间的接口,BSP需要为操作系统提供操作和控制具体硬件的方法。操作系统相关性:不同的操作系统具有各自的软件层次结构,因此,不同的操作系统具有特定的硬件接口形式。实际上,BSP是一个介于操作系统和底层硬件之间的软件层次,包括了系统中大部分与硬件联系紧密的软件模块。设计一个完整的BSP需要完成两部分工作:嵌入式系统的硬件初始化以及BSP功能,设计硬件相关的设备驱动。
(1)嵌入式系统硬件初始化-BIOS
系统初始化过程可以分为3个主要环节,按照自底向上、从硬件到软件的次序依次为:片级初始化、板级初始化和系统级初始化。片级初始化:完成嵌入式微处理器的初始化,包括设置嵌入式微处理器的核心寄存器和控制寄存器、嵌入式微处理器核心工作模式和嵌入式微处理器的局部总线模式等。板级初始化:完成嵌入式微处理器以外的其他硬件设备的初始化。另外,还需设置某些软件的数据结构和参数,为随后的系统级初始化和应用程序的运行建立硬件和软件环境。系统初始化:该初始化过程以软件初始化为主,主要进行操作系统的初始化。BSP将对嵌入式微处理器的控制权转交给嵌入式操作系统,由操作系统完成余下的初始化操作,包含加载和初始化与硬件无关的设备驱动程序,建立系统内存区,加载并初始化其他系统软件模块,如网络系统、文件系统等。最后,操作系统创建应用程序环境,并将控制权交给应用程序的入口。(2)硬件相关的设备驱动程序
BSP的另一个主要功能是硬件相关的设备驱动。硬件相关的设备驱动程序的初始化通常是一个从高到低的过程。尽管BSP中包含硬件相关的设备驱动程序,但是这些设备驱动程序通常不直接由BSP使用,而是在系统初始化过程中由BSP将他们与操作系统中通用的设备驱动程序关联起来,并在随后的应用中由通用的设备驱动程序调用,实现对硬件设备的操作。与硬件相关的驱动程序是BSP设计与开发中另一个非常关键的环节。
嵌入式系统组成-系统软件层系统软件层由实时多任务操作系统(Real-timeOperationSystem,RTOS)、文件系统、图形用户接口(GraphicUserInterface,GUI)、网络系统及通用组件模块组成。RTOS是嵌入式应用软件的基础和开发平台。
RTOS是32位嵌入式CPU的软件基础RTOS内核提供CPU的管理硬件初时化,MMU,定时器,中断RTOS内核提供任务,内存管理RTOS提供设备管理,文件和网络的支持RTOS提供C/C++,JAVA,图形模块等编程接口常见的嵌入式操作系统实时嵌入式操作系统的种类繁多,大体上可分为两种,商用型和免费型。商用型的实操作系统功能稳定、可靠,有完善的技术支持和售后服务,但往往价格昂贵。免费型的实时操作系统在价格方面具有优势,目前主要有Linux和μC/OS,稳定性与服务性存在挑战。
9.常见的嵌入式操作系统
WindowsCE
WindowsCE:一种针对小容量、移动式、智能化、32位、连接设备的模块化实时嵌入式操作系统。针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作系统平台,WindowsCE嵌入但不够实时,属于软实时操作系统,由于其Windows背景,界面比较统一认可。
常见的嵌入式操作系统
QNX---加拿大QNX公司的产品
QNX是一个实时的、可扩充的操作系统,它部分遵循POSIX相关标准,由于QNX具有强大的图形界面功能,因此很适合作为机顶盒、手持设备(手掌电脑、手机)、GPS设备的实时操作系统使用。嵌入式Linux
Linux是开放源码的,内核小、功能强大、运行稳定、系统健壮、效率高,易于定制剪裁,在价格上极具竞争力。Linux不仅支持x86CPU,还可以支持其他数十种CPU芯片。嵌入式Linux及应用
嵌入式Linux(EmbeddedLinux)是指对Linux经过小型化裁剪后,能够固化在容量只有几百K字节或几兆字节的存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究是目前操作系统领域的一个热点。主要有RTLinux和µCLinux
Linux在嵌入式领域异军突起不过是近几年的事情,在未来可能会大量使用Linux作为嵌入式操作系统的开发原型。µC/OS及µC/OS-II
µC/OS——MicroControllerOS,微控制器操作系统, 应用面覆盖了诸多领域,如照相机、医疗器械、音响设备、发动机控制、高速公路电话系统、自动提款机等. 1998年µC/OS-II,目前的版本µC/OS-IIV2.61,2.72. 2000年,得到美国航空管理局(FAA)的认证,可以用于飞行器中.Android系统Android,中文称安卓,是一个以Linux为基础的半开放原始码作业系统,主要用于移动设备,由Google成立的OpenHandsetAlliance(OHA,开放手持设备联盟)持续领导与开发中。Android系统最初由安迪·鲁宾(AndyRubin)开发制作,并于2005年8月被Google收购。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商成立OHA来共同研发改良Android系统。随后,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。5.0版本
Android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。Android平台优势
1.开放性:在优势方面,Android平台首先就是其开发性,开发的平台允许任何移动终端厂商加入到Android联盟中来。2.丰富的硬件:由于Android的开放性,众多的厂商会推出千奇百怪,功能特色各具的多种产品。功能上的差异和特色,却不会影响到数据同步、甚至软件的兼容,如同从诺基亚Symbian风格手机一下改用苹果iPhone,同时还可将Symbian中优秀的软件带到iPhone上使用、联系人等资料更是可以方便地转移。3.方便开发:Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的阻扰,可想而知,会有多少新颖别致的软件会诞生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android难题之一
苹果iOS系统苹果iOS是由苹果公司开发的手持设备操作系统。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPodtouch、iPad以及AppleTV等苹果产品上。iOS与苹果的MacOSX操作系统一样,它也是以Darwin为基础的,因此同样属于类Unix的商业操作系统。原本这个系统名为iPhoneOS,直到2010年6月7日WWDC大会上宣布改名为iOS。截止至2011年11月,根据Canalys的数据显示,iOS已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%。目前最新为6.12版本。系统结构
iOS的系统结构分为以下四个层次:
核心操作系统(theCoreOSlayer);核心服务层(theCoreServiceslayer);媒体层(theMedialayer);Cocoa触摸框架层(theCocoaTouchlayer)。
10.嵌入式系统的发展趋势(1).嵌入式开发是一项系统工程,因此要求嵌入式系统厂商不仅要提供嵌入式软硬件系统本身,同时还需要提供强大的硬件开发工具和软件包支持。(2).网络化、信息化的要求随着因特网技术的成熟、带宽的提高日益提高,使得以往单一功能的设备如电话、手机、冰箱、微波炉等功能不再单一,结构更加复杂。(3).网络互联成为必然趋势
未来的嵌入式设备为了适应网络发展的要求,必然要求硬件上提供各种网络通信接口。传统的单片机对于网络支持不足,而新一代的嵌入式处理器已经开始内嵌网络接口,除了支持TCP/IP协议,还有的支持IEEE1394、USB、CAN、Bluetooth或IrDA通信接口中的一种或者几种,同时也需要提供相应的通信组网协议软件和物理层驱动软件。软件方面系统系统内核支持网络模块,甚至可以在设备上嵌入Web浏览器,真正实现随时随地用各种设备上网。(4).精简系统内核、算法,降低功耗和软硬件成本
未来的嵌入式产品是软硬件紧密结合的设备,为了减低功耗和成本,需要设计者尽量精简系统内核,只保留和系统功能紧密相关的软硬件,利用最低的资源实现最适当的功能,这就要求设计者选用最佳的编程模型和不断改进算法,优化编译器性能。因此,既要软件人员有丰富的硬件知识,又需要发展先进嵌入式软件技术,如Java、Web和WAP等。(5).提供友好的多媒体人机界面
嵌入式设备能与用户亲密接触,最重要的因素就是它能提供非常友好的用户界面。图像界面,灵活的控制方式,使得人们感觉嵌入式设备就象是一个熟悉的老朋友。这方面的要求使得嵌入式软件设计者要在图形界面,多媒体技术上痛下苦功。手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像都会使使用者获得自由的感受。目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,但一般的嵌入式设备距离这个要求还有很长的路要走。11.嵌入式系统的学习市场需求-中国具有世界最大嵌入式技术市场,将成为世界第一,手持仪器设备、信息家电、城市建设、工业控制、军事应用,……,嵌入式技术无处不在。企业人才需求-软硬件设计人才,应用开发人才,综合性人才,……技术发展趋势要求-8位、16位、32位,实时操作系统目前国内外这方面的人都很稀缺
与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低)
目前嵌入式人才培养模式当前嵌入式系统学习模式嵌入式系统课程体系常见嵌入式处理器
嵌入式处理器是面向应用、面向用户的嵌入式系统的核心,由于面向应用、面向行业的特点,针对不同应用和不同半导体工艺,目前各类嵌入式处理器的变种计有1000余种,大致可分为:·嵌入式微处理器:ARM,PowerPC,68000,MIPS,386EX;·嵌入式微控制器:8051,MC68HC05,MC68HC11,68300,Am186,TMS320C2X;·嵌入式DSP处理器:TMS320系列,DSP56000系列;·嵌入式SOC(片上系统):OMAP,M-Core;
2014年最新的手机处理器性能排名
NO.1-NO.10
苹果A8四核2.0ghz(iPhone6、iPad6)等
高通805(8084)四核2.5ghz(诺基亚Lumia1820、三星S6)等
高通801(8974AC)四核2.5ghz(三星S5)等
高通800(8974AB)四核2.2ghz(诺基亚Lumia1520、三星S4)等
猎户座5420八核1.8ghz(三星S4、三星noto3)等
英伟达tegra4四核1.8ghz(HTCOnex)等
苹果A7双核1.3ghz(iPhone5S、iPadAir)等
猎户座5410八核1.6ghz(三星S4)等
高通615(8936)八核1.7ghz(三星S6)等
联发科6592turbo八核2.0ghz(华为3X)等
高通600(8064T)四核1.7ghz。(小米2S)等
ARM公司和ARM处理器1)ARM是一个CPU内核。ARM公司自己并不生产或销售芯片,它采用技术授权模式,通过出售芯片技术授权,收取授权费和技术转让费。2)基于ARM内核的处理器是目前消费类电子市场中占有量第一的处理器,尤其是手机行业。3)ARM是“AdvancedRISCMachine” 的缩写,最早的ARM处理器诞生于80年代的英国。ARM处理器的特点RISC指令集Load/Store体系结构固定的32位指令大多数指令单周期完成Thumb\DSP\jazeller功能扩展低功耗ARM11FamilyCache内存管理流水线级ThumbDSPJazelle浮点运算ARM1136J-S4-64kMMU8有有有无ARM1136JF-S4-64kMMU8有有有有ARM1156T2-S可配置9Thumb-2有无无ARM1156T2F-S可配置9Thumb-2有无有注:Thumb是ARM体系结构中一种16位的指令集
Jazelle是ARM体系结构的一种相关技术,用于在处理器指令层次对JAVA加速MMU是MemoryManagementUnit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址
主流的CPU架构
目前主流的还是基于ARM11,CortexA8和CortexA9的处理器。下面简单介绍一些这几个架构。ARM11系列微处理器是ARM公司近年推出的新一代RISC处理器,它是ARM新指令架构——ARMv6的第一代设计实现,该处理器相对而言处于中低端。ARM公司在经典处理器ARM11以后的产品改用Cortex命名,Cortex系列属于ARMv7架构,这是ARM公司最新的指令集架构。ARM系列目前最新最先进的指令集,对应的就是ARMCortex-A8/A9系列(A9应该算是改进型ARMV7指令集)。相比较:Cortex-A8:指令集ARMv7-A,13级整数流水线,超标量双发射,2.0DMIPS/MHz,标配Neon,不支持多核Cortex-A9:指令集ARMv7-A,8级整数流水线,超标量双发射,乱序执行,2.5DMIPS/MHz,可选配Neon/VFPv3,支持多核主流的智能手机CPU
德州仪器(TI)德州仪器
(TI)公司的开放式多媒体应用平台OMAP(OpenMultimediaApplicationPlatform)是一种为满足移动多媒体信息处理及无线通信应用开发出来的高性能、高集成度嵌入式处理器。目前市场上手机主要有德州仪器的OMAP3XXX、OMAP4XXX和OMAP5XXX三个系列型号工艺频率CPUDSPGPUIVA™分辨率OMAP341065nm600MHzARMCortex-A8TMS320C64x无IVA2QVGAOMAP342065nm600MHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2VGAOMAP343065nm600MHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2+XGAOMAP344065nm800MHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2+XGAOMAP361045nm720MHzARMCortex-A8TMS320C64x无IVA2XGA/WXGAOMAP362045nm720MHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2XGA/WXGAOMAP363045nm720MHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2+XGA/WXGAOMAP364045nm1.0GHzARMCortex-A8TMS320C64xPowerVRSGX530IVA2+XGA/WXGA摩托罗拉DroidX、Droid2/里程碑2、Defy/ME525、Defy+,ARCHOS7,诺基亚N9等处理器型号制造工艺最大频率CPUGPU视频性能(3D)OMAP443045nm1.0GHzDual-CoreARMCortex-A9PowerVRSGX540@304MHz720p立体3DOMAP446045nm1.5GHzDual-CoreARMCortex-A9PowerVRSGX540@384MHz1080p立体3DOMAP447045nm1.8GHzDual-CoreARMCortex-A9PowerVRSGX544@384MHz1080p立体3DOMAP4460的代表产品有摩托罗拉
DroidRAZR,GALAXYNexus,华为AscendP1S,夏普Aquos104SH,智器T20等处理器型号制造工艺最大频率CPUGPU内存支持OMAP543028nm2.0GHz双核ARMCortex-A15MPPOWERVR™SGX544-MPx2xLPDDR2OMAP543228nm2.0GHz双核ARMCortex-A15MPPOWERVR™SGX544-MPx2xDDR3/DDR3L高通美国高通公司以其CDMA(码分多址)数字技术为基础,开发并提供富于创意的数字无线通信产品和服务。Snapdragon(中文品牌骁龙)是高通公司推出的面向移动市场的高度集成化的处理器系列平台,覆盖高中低各层次终端产品,全球大多数知名移动终端厂商都是“骁龙”的客户,目前市场上常见的手机CPU有高通骁龙S1、S2、S3和S4的四个系列。处理器型号工艺CPUGPUModemDSPMSM8960Pro28nm1.5~1.7GHzDualKraitAdreno320WorldModeHexagonQDSP6500MHzAPQ806428nm1.5~1.7GHzDualKraitAdreno320NoModemHexagonQDSP6500MHzMPQ806428nm1.5GHzQuadKraitAdreno225NoModemHexagonQDSP6500MHzMSM896028nm1.5~1.7GHzDualKraitAdreno225WorldModeHexagonQDSP6500MHzMSM8660A28nm1.5~1.7GHzDualKraitAdreno225CMDA/UMTSHexagonQDSP6500MHzMSM8260A28nm1.5~1.7GHzDualKraitAdreno225UMTSHexagonQDSP6500MHzAPQ8060A28nm1.5~1.7GHzDualKraitAdreno225NoModemHexagonQDSP6500MHzMSM893028nm1.2GHzDualKraitAdreno305WorldModeHexagonQDSP6500MHzMSM863028nm1.2GHzDualKraitAdreno305CDMA/UMTSHexagonQDSP6500MHzMSM823028nm1.2GHzDualKraitAdreno305UMTSHexagonQDSP6500MHzAPQ803028nm1.2GHzDualKraitAdreno305NoModemHexagonQDSP6500MHzMSM862728nm1GHzDualKraitAdreno305CDMA/UMTSHexagonQDSP6500MHzMSM822728nm1GHzDualKraitAdreno305UMTSHexagonQDSP6500MHzMSM86251GHzDualARMCortex-A5Adreno203CDMA/UMTSHexagonQDSP5350MHzMSM82251GHzDualARMCortex-A5Adreno203UMTSHexagonQDSP5350MHz使用SnapdragonS4处理器的代表产品有索尼LT29i,HTCOneS等三星Exynos2011年2月,三星电子正式将自家基于ARM构架处理器品牌命名为Exynos三星其实很久以前就开始为自家的设备研发处理器,一些芯片也用在其它品牌的设备上,例如苹果前三代iPhone。
代表产品有三星GalaxyTab7.7、Galaxy
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二四年度综艺节目制作与播放合同
- 2024年度空地临时占用合同
- 数据处理服务合同三篇
- 2024年度融资合同标的为新能源汽车项目
- 二零二四年度污水处理设施建设合同
- 2024年度房地产买卖合同房产信息与交易条件3篇
- 二零二四年度技术研发团队项目外包服务合同
- 2024年度跨界合作项目开发与技术服务合同
- 2024年度农产品质量安全责任担保合同
- 2024年度儿童乐园品牌授权使用合同
- 2023学年完整公开课版冰粉的制作
- 温室效应的定义及原因影响和对策PPT
- 汉英翻译教程
- 中国神华能源股份有限公司大柳塔煤矿矿山地质环境保护与土地复垦方案
- 高中美术 主题一 实体与虚空-凝固的音乐-课件
- GB/T 15856.2-2002十字槽沉头自钻自攻螺钉
- GB/T 12145-2016火力发电机组及蒸汽动力设备水汽质量
- GB/T 10001.2-2021公共信息图形符号第2部分:旅游休闲符号
- 群落的结构课件 【知识精讲+高效备课】高二上学期生物人教版选择性必修2
- GB 2707-2016食品安全国家标准鲜(冻)畜、禽产品
- 《测量小灯泡的电功率》设计 市赛一等奖
评论
0/150
提交评论