嵌入式系统-浙江大学课件_第1页
嵌入式系统-浙江大学课件_第2页
嵌入式系统-浙江大学课件_第3页
嵌入式系统-浙江大学课件_第4页
嵌入式系统-浙江大学课件_第5页
已阅读5页,还剩286页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

嵌入式系统

什么是嵌入式计算机

——从产品的角度看嵌入式背景:计算机系统的三大应用领域服务器目标:可用性可扩展性有效带宽利润最大的市场包括大型机、超级计算机等桌面办公等用途最广阔的市场包括台式机,笔记本嵌入式非计算机形态潜力最大的市场以往计算机分类:大型计算机、中型机、小型机和微计算机目前计算机分类:超级计算机,大型计算机、工作站、微计算机、亚微计算机亚微计算机(嵌入式计算机)是以嵌入式系统的形式隐藏在各种装置、产品和系统中计算机系统的创新:多核2006年突然推出双核,年底到四核2006年Q4英特尔内部已有16核处理器2007年2月英特尔展示了80核计算机2008年10月,英特尔展示32硬核128逻辑核的larlabee市场对多核反应冷淡技术准备不足多处理器技术长期以来针对服务区并行计算技术针对科学计算实际难点多应用软件,事务处理如何使用多核?系统软件对多核的支持不足软件开发对多核支持不足机会与挑战并存计算机系统的创新:桌面计算机平板计算机个人电脑ModBook平板电脑Toshiba平板电脑ClickStartMyFirstComputerViewsonic无线遥控平板人人电脑计划(OLPC)「双屏幕」笔记本电脑计算机系统的创新:UMPCUltra-MobilePC小巧的体积可以使UMPC轻松放到书包里面,随身携带UMPC外形设计新潮,集成各种附加功能,一般有网络、GPS、键盘或屏幕手写等模块。netbookHTCAthena大同UMPCoQoSony嵌入式系统移动终端UMPC,PDA,手机,移动电子书以及电子词典信息家电智能冰箱、洗衣机、智能空调、数字电视、微波炉、无线家庭网关、数码相机与数码摄像机、游戏机汽车电子车载、车控智能仪器仪表通讯设备其他嵌入式系统:手机普通手机智能手机与PDA结合网络手机gphone韩国电信手机/电视遥控器二合一产品SonyEricsson超小型手机电脑手机放在底座上成为电脑Nokia手机户外音响内置DVB-H移动电视手机嵌入式系统:办公用品录音笔FLY数字笔能“看懂”在专用纸上所写的内容能“阅读”写作和纠正语法错误完成简单的算术运算将英文互相翻译成西班牙文等Genius数字便笺存储100页便笺2000LPI分辨率32MB板载内存可通过USB连接电脑笔迹识别软件PolymerVision手机书使用可卷电子纸的电子书阅读器嵌入式系统:运动玩具游戏GTX公司定位的运动跑鞋内置的GPS接收器和可充电电池遥控蜻蜓次世代三大主流三款主机Xbox360,WII,PS3GameCubeXboX360PS3Wii,手柄,手套,枪嵌入式系统:摄像器材数码相机DV智能家电智能冰箱(有时称为网络冰箱)在冰箱内部装有摄像头、RFID接收器或者条码扫描器可以通过这些设备采集冰箱内部存货的信息,并通过网络进行传输信息对冰箱的温度控制韩国一家公司的“网络冰箱”,门上有一个15英寸液晶显示器,用户可以通过冰箱上网、打可视电话和观看影片网络微波炉、网络电饭煲、网络空调等家电功能现对简单,可以通过网络下载食谱,可以通过网络进行控制嵌入式系统:智能家居智能家具智能家电Roto-Rooter公司马桶组合笔记本/ipod/冰箱/Xbox360/健身高科技的捕鼠器遮断红外线光束掉下笼子DangerBomb闹钟不起床就爆炸啰配备电子食谱的锅铲coo.boo智能型垃圾桶i.Master浙江大学显示营养智能果汁机浙江大学产品创新中心的智能割草机嵌入式系统:多媒体终端IP电话视频会议可视电话基于视频电话的小型视频会议系统(MCU)语音识别电话基于H.323协议族的网络视频电话嵌入式系统:家庭音响引入计算机技术的音响配备B&O与Core2Duo的P.Guerra家庭影院SonosZP80无线音响LGHDDVD/蓝光播放器Motorola支持M卡的HDDVR录像机iPhone家庭相册远程宠物喂养器远程观看到宠物的行动跟它对话远程喂养宠物嵌入式系统:通讯设备有计算机能力的各种通讯设备路由器/交换机/防火墙等Buffalo路由器/USB网卡套装VPN产品千兆网关防火墙

嵌入式系统:交通相关汽车电子处理器个数可达三位数车载娱乐,定位等车控ABS、EBD等其他中国版月球车汽车立体声音响HDRadio扩展包改装遮阳板DVD/TV/MP3嵌入式系统:军工武器控制系统数字化单兵系统有苛刻要求尺寸和重量功率消耗震动和冲击温度和湿度21世纪部队旅及旅以下作战指挥系统夜视扫描、全球定位、指挥通信嵌入式系统:新兴硬件GPS/蓝牙双拼模块芯片龙芯2号增强型处理器芯片Intel八十核心处理器2007年2月服用的RFID芯片IntelTolapai计划要把南北桥做在芯片中AMDSwift已经集成了北桥、CPU、显卡嵌入式系统应用案例分析:智能家电集成数字化家庭嵌入式系统应用案例分析:网络产品集成信息化社会CCID数据2000年嵌入式软件市场规模为70.33亿元2001年为95.43亿元2002年118.56亿元2002年中国软件市场为345.0亿元,嵌入式软件约占软件总市场的34.37%。2003年嵌入式软件市场中国市场规模达到188亿元2004年,673.62亿元软件统计数据为:套装软件共计478亿元,为具有独立产品形态的软件。其中包括系统软件89亿元(操作系统44.19亿元、数据库管理系统20.06亿元、支撑软件25.71亿元)、中间件软件6.98亿元、应用软件304.53亿元(包括通用应用软件(安全软件、办公软件、管理软件、游戏软件、教育软件等)与行业应用软件(金融、电信、政府等))、嵌入式软件(673.62亿元)另外软件服务(937.48亿元):除生产产品化软件之外的所有的软件研发及相关活动,包括系统集成、软件外包、咨询、数据加工和处理等2005年,1061.4亿元2005年,中国嵌入式软件产业在整个软件产业中的比重已经接近40%,占全球嵌入式软件产业的比重已经提升到4.8%嵌入式系统是一种技术,应用技术以实现产业产品为目的嵌入式产品任何包含一个或多个专用或者通用计算机部件的电子设备不以计算机形态出现将计算机”嵌入“在电子设备内能执行特定功能的计算机硬件和软件的结合体广义:任何一个非计算机的计算系统嵌入式系统必要条件有处理器计算机五大部件运算器,控制器合称处理器存储器输入输出如果只有存储器、输入输出,不能认为是嵌入式系统不能执行计算机最基础的功能常用32位处理器价格与单片机接近性能高网络支持能力强嵌入式产品硬件特征通常由嵌入式处理器、嵌入式外围设备组成高集成度逐步形成单芯片解决方案系统芯片(SOC)定制性面向用户面向产品面向应用解决方案不唯一不可垄断的高度分散的工业,候选器件太多而PC由WINTEL(window,intel)垄断嵌入式系统硬件嵌入式产品软件特征包括嵌入式操作系统和嵌入式应用软件、开发工具软件要求固态化存储稳定性要求高软件代码高质量、高可靠性可能无系统软件软硬件紧密结合,协同开发其他可能有的要求实时性强功耗低支持升级软件和硬件结合紧密由于定制,可能无硬盘,无通用操作系统产品升级换代困难和硬件同步升级具有较长的生命周期定义微软在2002年将嵌入式系统定义为完成某一特定功能、或是使用某一特定嵌入式应用软件的计算机或计算装置。英国电机工程师学会的定义:“嵌入式系统为控制、监视或辅助设备、机器或甚至工厂操作的装置”通常执行特定功能以微电脑和外围构成核心严格的时序和稳定性要求全自动操作循环精确定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统互联网企业蚕食嵌入式Google手机发布T-MobileG1硬件高通MSM7201处理器,GPS卫星导航、300万像素摄像头,3.17英寸触摸屏480x320分辨率,1~8GBMicroSD卡支持WCDMA/HSPA网络,理论下载速率7.2Mbps;支持Wi-Fi软件Android操作系统各种谷歌的服务Gmail、GoogleMaps、YouTube、Google日历、GoogleTalkChrome精简版一键搜索AndroidMarket下载,全免费基于图片的导航软件“BreadCrumbz”用手机唱卡拉OK的软件“TuneWiki”179美元几个问题1、互联网企业进入手机领域2、手机未来是否就是计算机3、手机技术走势如何处理器作为发动机,让手机飞起来处理器发展趋势制造工艺发展到32nm,实现小尺寸、微功耗和低成本

需要计算能力,提供精巧的多媒体人机界面联网成为必然的趋势,芯片上集成Wifi、WiMax最新处理器ARM(16/32-bit),XScale(32-bit)VIANano™(64-bit,5-25w)IntelAtom™(32-bit,0.6-2.5w)★本地+远程本地提供相对充足的计算能力远程提供超级计算能力ScottMcNealy:Thenetworkisthecomputer.多核双核->多核->千核能耗是风阻,让手机飞行时间变短能耗是手机等移动终端所面临的一个重要问题解决方法硬件节能:低功耗设计、工艺软件节能:解决内存墙,动态调频,节能编译,节能调度提高电池容量燃料电池可能从根本上解决能耗问题其能量密度,理论上可为锂离子电池的五至十倍以上补充供电燃料仅需数秒;最适合可携式微小型系统质子交换膜燃料电池和直接甲醇燃料电池在室温下运作、体积小、重量轻、方便电池堆设计挑战:小型化;安全性联网方式是飞行通道移动通信2G、2.5G3GWCDMACDMA2000TD-SCDMA★中国造WiMAX☆挑战巨大4G:…无线接入技术802.15(无线个域网,WPAN)802.11(无线局域网,WLAN)802.16a/d(无线固定接入,FWA)802.20(宽带移动接入,WBMA)发展方向带宽更大,至少保证流畅视频安全性更高多模手机存储扩容,资料丰富器件速度、容量增长内存基本可以运行桌面上的软件外存可以插拔网络存储依托互联网本地存储基本的程序、数据;其他数据保存在网络存储中终端硬件手机终端计算能力强支持多种互联网和移动通讯网络接入待机时间长便携小尺寸分类界限逐步模糊手机PDAMID/PMPUMPC笔记本电脑手机硬件与台式机无差别X86,大存储,大屏幕,人机设备手机嵌入式软件的需求变化1、实时性需求到底哪些嵌入式设备需要实时?手机实时性要求不高2、内核小小内存vs大内存3、处理器架构不一样ARM(RISC架构)vsatom(X86架构)4、软件定制化定制化的软件vs可以随意安装卸载软件5、基带芯片协议栈已经非常完备手机软件需要研究什么?手机嵌入式操作系统: No.有足够多的解决方案了手机支撑软件与应用软件: 从桌面移植手机终端软件架构传统手机软件:层次化架构↓BSP↓专业操作系统↓GUI↓定制应用软件手机软件革命:平台结构↓平台软件封装手机操作系统、驱动、网络浏览器、GUI以API形式提供应用开发者↓应用软件基于开放API开发的软件通过网络获取定制应用,人机友好,用户下载革了谁的命?网络化手机软件计算机的网络化以前:单机为主现在:必须在网,大部分工作依赖于网络手机的网络化开机即在网连接移动通讯网→启动计算机网络手机=移动网络终端在网的终端与非在网终端,软件上的差异性在哪里计算机单机操作系统→网络操作系统手机支持移动网的操作系统 普通手机→支持协议栈的操作系统 智能手机→网络化操作系统 网络手机WebOS应运而生WebOS基于网络(Web)的操作系统Weboperatingsystem或者Web-basedOperatingSystem内涵运行在浏览器中的虚拟OS,是基于Web的服务的开放式集合提供了WebOSAPI,能够根据WebOSAPI进行编程能够在WebOS中打开应用程序外延用户通过浏览器运行基于Web的在线应用能实现PC操作系统上的各种操作程序语言以PHP,XML,JS等Web语言为主,尽可能消灭高级语言Android是典型的WebOSWebOS是下一代手机软件平台吗?优点基于Web的标准化程度很高,不同的程序和服务能够方便的对接无需下载,维护方便,软件升级扩展性好免受病毒木马的骚扰,容易解决盗版问题,解决了收费困难的问题可在不同浏览器、不同的OS上运行程序,甚至可以在其他的终端缺点执行效率低机器码运行os→os运行浏览器→浏览器运行webos→webos运行webservice传统:机器码运行os→os运行software网络依赖性过强,对网络要求高WebOS本身开发难度大,js调试困难,浏览器的兼容性差隐私性:操作在网上,数据在服务器上个人观点WebOS使得一切工作都在线WebOS是一种趋势、一种方向Android/chrome都是一种WebOSAndroid:googlephoneChrome:googlebrowser屏蔽底层OS/驱动/GUIOS可以是linux或其他驱动程序支持各种BSPGUI可以是各类提供上层应用以API非OS的API技术路线Linux内核+apache运行机制完全开放开源遵循Apachev2License免费的商业性使用软件服务提供商提供专业的Android平台应用服务手机开发厂商可以方便的基于Android平台添加个性化的应用和服务收费广告引擎终端软件单点技术的研究热情逐步消退与台式机逐步融合平台化趋势明显在网要求越来越强嵌入式热点领域日益增长的功能密度更高的可靠性保障灵活的网络连接分布式应用和移动应用多媒体信息处理更便捷的信息共享适应更加激烈的市场竞争

嵌入式系统中的处理器1嵌入式系统中的处理器嵌入式系统的核心部件

品种总量已经超过1000多种每个月都有新产品出现流行体系结构有三十几个系列8051体系的占有多半32,64位微处理器是目前嵌入式系统的核心主要硬件厂商包括Intel,Motorola,Philip,AMD等2001年嵌入式系统国际会议年会JimTurley的报告中,统计得到PC的数量只占CPU总耗量的0.1%。

数字化产品上游嵌入式系统软件平台下游芯片、硬件嵌入式操作系统嵌入式应用组件嵌入式开发环境2嵌入式计算机内核分类与综述嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU)嵌入式微控制器(MicrocontrollerUnit,MCU)嵌入式DSP处理器(EmbeddedDigitalSignalProcessor,EDSP)嵌入式片上系统(SystemOnChip)嵌入式微处理器(EMPU)通用计算机中的CPU专门设计的电路板

只保留和嵌入式应用有关的母板功能

增强工作温度、抗电磁干扰、可靠性等方面功能与和工业控制计算机相似嵌入式处理器主要类型Am186/88386EXSC-400PowerPC68000MIPSARM系列嵌入式微控制器(MCU)又称单片机以某一种微处理器内核为核心芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种必要功能和外设特点单片化,体积大大减小,从而使功耗和成本下降、可靠性提高代表性的通用系列8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。半通用系列支持USB接口的MCU8XC930/931、C540、C541;支持I2C、CAN-Bus、LCD及众多专用MCU和兼容系列占嵌入式系统约70%的市场份额嵌入式DSP处理器(EDSP)DSP应用数字信号处理限时完成DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP算法正在大量进入嵌入式领域,DSP应用正从在通用单片机中以普通指令实现DSP功能,过渡到采用嵌入式DSP处理器。代表性的产品TexasInstruments的TMS320系列TMS320系列处理器包括用于控制的C2000系列,移动通信的C5000系列,以及性能更高的C6000和C8000系列。Motorola的DSP56000系列DSP56000目前已经发展成为DSP56000,DSP56100,DSP56200和DSP56300等几个不同系列的处理器嵌入式片上系统(SOC)在一个硅片上实现一个复杂的系统

整个嵌入式系统大部分均可集成到一块或几块芯片中去应用系统电路板将变得很简洁

SOC可以分为通用和专用两类。通用系列Infineon(Siemens)的TriCore,Motorola的M-Core,某些ARM系列器件,Echelon和Motorola联合研制的Neuron芯片等。专用SOC一般专用于某个或某类系统中代表性的产品:Philips的SmartXA处理器位数4位8位163264单片机型TMS1000COPS8048/49/508051/526801/04/05Z88096/9768200ARMRISCCOREMIPS32COREMIPS64CORE一般用途型4004404080856809Z806502680280868028680186Z8000803868048668000/10/20/30/40PentiumII/III/IV/?

/Core2duo嵌入式处理器应用产品4位遥控器相机防盗器玩具简易计量表等8位电视游戏机空调传真机电话录音16位手机摄象机录象机各种多媒体应用32位MODEM掌上电脑路由器数码相机GPRS网络家庭64位高级工作站新型电脑游戏机各种多媒体应用嵌入式CPU特点处理速度快或者相当I/O功能强功率损耗低实时响应快3维处理器发展前沿微处理器成为处理器的主流研究热点进一步提高单个微处理器的性能全面提高计算机的系统性能:可用性,可维护性,可缩放性。基于微处理器的多处理器体系结构。多核三维器件背包SOC三维VLSI光速极限问题IC电路有极限:线宽不能无限缩小;性能价格+低功耗新型器件光计算机分子计算机DNA计算机Multicore3DChip主流处理器迅速在嵌入式领域得到使用CISCEIA:EmbeddedIA,工业控制Multicore:ViiV欢跃双核,用于数字电视RISCARMMIPSPPCPA-RISC等嵌入式中的主流数字信号处理器(DSP)乘法与加法运算离散傅立叶变换(DFT)离散余弦变换(DCT)FiniteImpluseResponesFilterRISC主流的理由指令使用频度较均衡控制逻辑规整,适于VLSI工艺软硬功能分配合理利于指令级并行技术芯片代码公开可定制性强桌面市场被CISC积压,需要寻找出路性能强IA架构的挑战EIA通用性太强开放环境成熟度高嵌入式处理器五大类体系结构ARMMIPSPOWERPCX86SH系列4主流嵌入式处理器ARM属于RISC体系工业标准ARM:AdvancedRISCMachines只设计内核的英国公司85年英国剑桥ARM原型90年成立ARMltd.不制造VLSI设备,只提供授权2001年,市场占有率75%ARM内核被授权给数百家厂商ARM主要应用于无线局域网、3G、手机、手持设备、有线网络通讯应用形式:集成到专用芯片中作控制器集成ARM内核的芯片英特尔、德洲仪器、三星半导体、摩托罗拉、飞利浦半导体、意法半导体、亿恒半导体、科胜讯、ADI公司、安捷伦、高通公司、Atmel、Intersil、Alcatel、Altera、CirrusLogic、Linkup、Parthus、LSILogic、Micronas,SiliconWave、Virata、Portalplayerinc.、NetSilicon,ParthusARM体系结构ARM7采用冯.诺依曼体系ARM9采用哈佛体系对汇编程序员透明ARM架构V1版架构V2版架构V3版架构V4版架构V5版架构ARM流水线ARM7的三级流水线ARM9的五级流水线ARM系列产品表示ARM系列产品很多,以ARM7系列为例,其内核ARM7TDMI表示为:·ARM7:ARM系列具有32位整数运算核·T:内含16位压缩指令集Thumb·D:支持片内Debug调试,·M:采用增强型乘法器(Multiplier),·I:内含嵌入式ICE宏单元另外,各产品的后缀提供了各种形式与功能的选择:·-S:可综合的软核Softcore·-E:具有DSP的功能·-J:Jazeller,允许直接执行Java字节码系列ARM7系列产品ARM7TDMI/ARM7TDMI/ARM720TARM7EJ-最低功耗具有:嵌入式ICE-RT逻辑-硬件上提供片上断点与调试点支持非常低的功耗提供0.9MIPS/MHz的三级流水线和冯.诺依曼体系ARM9系列产品ARM920T与ARM922TARM940T具有:5级流水线1.1MIPS/MHz的哈佛结构ARM9E系列产品ARM966E-SARM946E-SARM926EJ-S提供DSP扩充嵌入式ICE-RT调试逻辑1.1MIPS/MHz的5级流水线和哈佛结构紧耦合存储器(TCM)接口,可使存储器以最高处理器速度运转,可直接连到内核上ARM10E产品系列ARM1022Erev0/ARM1020Erev1提供DSP扩展嵌入式ICE-RT全性能MMUCache对于指令与数据,64位AHB接口6级流水线内部64位数据通道1.25MIPS/MHz比同等ARM9器件,同样时钟下,性能提高50%Securcore专为安全设计抗窜改(resisttampering)逆向工程(reverseengineering)保护机构-确保操作系统与数据安全采用ARM7内核最多最典型为ARM7TDMI、ARM720TARM特定功能的变种T变种(Thumb指令集):Thumb指令集严格控制产品成本比采用ARM指令更多的指令,不适合对时间要求苛刻的场合M变种(长乘法指令):增加了两条用于进行长乘法操作的ARM指令首先在ARM体系版本3引入,在ARM体系版本4之后,M变种成为系统的标准功能;E变种(增强型DSP指令):包含附加指令用于增强处理器对一些典型DSP算法的处理性能E变种首先在ARM体系版本5T中使用J变种(Java加速器Jazelle):提供Java加速功能D变种(片内Debug):支持片内Debug调试;I变种(嵌入式ICE):集成嵌入式ICE宏单元;SIMD变种(ARM媒体功能扩展):高性能的音频/视频处理技术ARM体系结构特点11)16/32位指令集并存Thumb指令集的16位指令集32ARM指令集的子集代码密度高,性能高状态ARM状态,Thumb状态每指令集都有切换状态的指令ARM指令集32位长度字对准可以传送8bit,16bit,32bit符号/无符号数据Thumb指令集16位长度半字对准操作寄存器中是32bit数据访问和取指使用全32bit地址条件分支指令是唯一一句CPSR的Thumb指令大多数指令访问R0-R7ARM体系结构特点22)寄存器37个寄存器31个32bit通用寄存器6个32bit状态寄存器(实际只用12bit)R13堆栈R14返回地址R15=PC寄存器分成可以重叠的组Thumb状态的寄存器集可访问的寄存器集是ARM的子集8个通用寄存器R0-R7PC(R15)SP(R13)LR(R14)CPSRThumb指令集与ARM指令集的区别分支语句向后转移条件下向前转移转向子程序从Thumb状态切换到ARM状态数据传送指令操作的结果放第一个寄存器eg:R1=R1+R2数据处理操作少访问R8-R15受到限制单寄存器加载与存储指令只访问R1-R7多寄存器加载与存储指令LDMIAR3!,{R0-R7}STMIAR0!,{R6,R7}PUSH{R3,R5-R7}POP{R2,R5}没有协处理器指令没有信号量指令没有访问CPSR指令ARM特点内核耗电少成本低功能强特有16/32位双指令集部分软件功能硬件化硬件支持调试开发5ARM系列高端处理器XScale基于ARMV5TE体系结构兼容ARMV5TEISA指令集(不支持浮点指令集)在处理器内核周围提供了指令和数据存储器管理单元指令、数据和微小数据缓存写缓冲、挂起缓冲和分支目标缓冲器电源管理性能监控调试JTAG单元以及协处理器接口MAC协处理器内核存储总线XScale系统结构图

XScale架构特点(一)采用7/8级超级流水线动态跳转预测、分支目标缓冲器BTB(BranchTargetBaffer)支持多媒体处理技术新增乘/加器MAC、40位累加器、兼容ARMV5TE指令、特定DSP型协处理器CP0指令快存(I-Cache):32K字节数据快存(D-Cache):32K字节可以重构为28K字节片内RAM微小数据快存(Mini-DCache):2K字节指令存储器管理单元IMMU32路变换后备缓冲器TLB(快表)动态电源管理XScale架构特点(二)数据存储器管理单元DMMU32路变换后备缓冲器TLB(快表)中断控制器总线控制器1G字节/秒、ECC协议调试(Debug)接口:性能监控:协处理器CP14、硬件断点、硬件观察点、BKPT指令、异常中断、JTAG接口、迹缓冲器6主流x86处理器,嵌入式IA架构EmbeddedIA,嵌入式IA架构芯片组(Chipset)技术“支持电路”和“接口电路”简化硬件部分的设计,减少主板上芯片的数量,增加可靠性用少量几片VLSI芯片的组合称为“控制芯片组”,简称“芯片组”“整合型芯片组”1999年开始将板卡(I/O卡)或其它部件的功能,如显示卡、声卡、MODEM、ATA-66/33硬盘接口等支持功能集成于芯片组19751980198519901995200010,0001,0001010010.1MIPS8086Pentium

®IV

80286i386i486Pentium®

Pentium

®

IIPentium

®

III凌动ATOM采用45nmHigh-KCMOS工艺制造集成4700万个晶体管DIE核心面积均为7.8×3.1毫米=24.2平方毫米封装硅片体积13×14×1.6毫米统一配备512KB二级缓存支持SSE3指令集、VT虚拟化技术、EDB防毒技术、高级散热管理技术功耗在800MHz频率下的Silverthorne只有不到0.65瓦的功耗7嵌入式DSP案例:SHARC处理器哈佛结构的DSP支持浮点操作与并行执行位数SHARC指令48位基本数据字32位地址位32位主要设计为浮点密集型运算32位IEEE单精度浮点40位IEEE扩展精度浮点32位整数片上带大量的存储器系列中的21061有1Mbit片上存储器存储器包括PM:程序存储器DM:数据存储器两个数据地址发生器(DAG)数据可以并行取出芯片外还能够加更多的存储器指令并行性允许几个操作同时执行允许一条指令进行多数据提取以下操作可以在单指令完成:定点累加和加、减或平均浮点乘法和ALU操作乘法与双加减限制:操作数的来源来自不同输入口8其他嵌入式微处理器IntelStrongARM停产TI的OMAP智能手机MIPSRISC32位和64位MotorolaDragonBall龙珠AMDAlchemyPPC系列日立SH体系结构PhilipsTrimedia9FPGAFieldProgrammableGateArray现场可编程门阵列FPGA与CPLD(复杂可编程逻辑器件)可编程逻辑器件CPLD是基于与或阵列的FPGA是基于查找表(Look-up-Table)可重构的计算嵌入式处理器,片内可编程FPGA特点静态可重复编程动态在系统重构硬件的功能可以像软件一样通过编程来修改极大地提高了电子系统设计的灵活性和通用性缩短了产品的上市时间降低了电子系统的开发成本基于FPGA的数字设计将在软硬件协同设计中介绍FPGA发展历史FPGA–FieldProgrammableGateArraysFPGA起源于可编程逻辑最早的可编程器件——PROM:PROM(mask)EPROM—可擦写PROM(field)EEPROM—电可擦写PROM(field)PLD—ProgrammableLogicDevicePLD由一堆与门阵列和或门阵列连接而成,原理就是根据逻辑电路可以变换成SOP表达式,PLD是FieldProgrammablePAL–ProgrammableArrayLogic,由可编程的与门阵列和固定(不可编程)或阵列构成PLA–ProgrammableLogicArray,与门阵列和或门阵列都可编程FPGA发展历史PROM虽然可以用来实现逻辑电路,但它的特点更适合作存储器。PLD采用SOP方式,冗余内容较多。FPGA由一系列基本单元构成的逻辑阵列,单元之间的连接可以由用户定义。1985年,FPGA由Xilinx公司发明FPGA的架构基于SRAM结构的FPGA(Xilinx)PLD结构(Altera)基于多路选择器结构(Actel)其他目前主流是SRAM和PLD结构各个公司都有自己的专利技术结构和CAD技术密切相关SSSSLLLLLLLLLCLB可配置逻辑块SwitchBox交换布线盒基于SRAM结构FPGAXilinx系列FPGA多采用SRAM技术层次化的结构由可配置的可配置逻辑块(CLB)和可编程的互联资源(布线资源)构成。顶层结构如下图所示:岛式结构(islandstyle)CPLD结构CPLD:ComplexProgrammableLogicDevices复杂可编程逻辑器件层次化的结构由PIA(ProgrammableInterconnectArray,可编程互联阵列-作布线资源)和LAB(LogicArrayBlock,逻辑阵列块-作逻辑功能单元)组成Altera公司专利结构,基于EPROM编程技术(与RAM不同)顶层示意图如下:CPLD结构LAB实现类似PLD功能。Altera对PLD机构进行改进,形成了由宏单元Macrocell和扩展乘积项ExpanderProductTerms构成的LAB这里不详细介绍LAB功能,只介绍一下PLD的原理,CPLD是基于类似的原理。PLD一般基于与或阵列实现,这是因为任何一个逻辑表达式可以化成SOP模式(SumofProduction)即积之和。例:F=A+BC⊕D列出真值表:AB\CD00011110000110010101111111101111找出所有令F=1的项,然后根据变量值建立表达式,如果变量值为1,则不变,为0取反,将各个令F=1的项用“或”操作连接起来,化成SOP格式如下:F=ABCD+ABCD+ABCD+ABCD+ABCD+ABCD+ABCD+ABCD+ABCD+ABCD+ABCD显然,上式完全可以用与或阵列实现,当然,冗余很多。FPGA和CPLD的区别FPGA的逻辑块CLB,扇入(Fan-in)小;CPLD的逻辑块扇入大互联方式:FPGA是分布式的,延时与系统布局有关;CPLD是集总式的开关元件,等延时CPLD逻辑能力强而寄存器少控制密集型;FPGA逻辑能力较弱但寄存器多—数据密集型。大规模的设计还是选用FPGA。嵌入式外设1总线总线是连接I/O设备、CPU、存储器各子系统间的共享通信线路优点价格低、通用性、灵活性好缺点通信瓶颈(带宽)总线的主要参数有总线的带宽总线的位宽总线的工作时钟频率传输方向单向双向(半双工、全双工)通常采用用法专用:流量高、无争用现象、控制简单;总线数目多,时间利用率低,难小型化。非专用:共享性。造价低、模块性强,易扩充,会出现争用现象、对失效敏感。常用系统总线PC总线:IBM公司1981年基于8位机PC/XT的总线AT总线:IBM公司于1984年推出了16位PC机PC/ATISA总线:Intel公司IEEE和EISA集团,与IBM/AT相近的8/16位的“工业标准结构”(IndustryStandardArchitecture)PCI总线:1991年,Intel、IBM、Compaq、AST、HP、DEC等100多家公司成立了PCI集团,PeripheralComponentInterconnectSpecialInterestGroup(外围部件互连专业组),简称PCISIGCPCI、ATCA、PCIEXPRESSESIA总线:IBM-PC的ISA发展而来,32,33MSCSI总线:来源于数组多路通道IPI总线I2C(interIC总线)PHILIPS用于内部IC控制简单的双向两线串行总线PC104为嵌入式控制而定义的工业控制总线紧凑型的IEEE-P996有两个版本8位和16位,分别与PC和PC/AT相对应PC104PLUS则与PCI总线相对应嵌入式系统中的总线嵌入式系统总线定制性非扩展性结构简单双向专用与通用并存专用:适用于器件固定,运行模式固定通用:通用,需要扩展CPU总线传统计算机:CPU-内存总线,I/O总线商用事务处理系统:I/O频繁科学计算系统:I/O速度要与处理机速度相匹配嵌入式系统:CPU,存储器加上设备无需通用性无需PNPCAN总线控制器局域网ControllerAreaNetwork被设计作为汽车环境中的微控制器通讯,在车载各电子控制装置ECU之间交换信息,形成汽车电子控制网络发动机管理系统、变速箱控制器、仪表装备、电子主干系统中,均嵌入CAN控制装置总结嵌入式系统中总线针对设备无通用性功耗低2高速输入与输出接口IrDA/FastIrDA红外线发光二极管发射硅晶PIN光检二极管接受控制电路距离小于一尺低速9.6~115Kbps高速1~4Mbps更高速16Mbps蓝牙模块(bluetooth)无线传输收发单元基频处理单元数据传输接口通信频率在1.2GHZ以内。USBIBM、Compaq、Nortel、NEC、 Intel及Microsoft12Mbps距离<5米树拓扑结构,127个点低速1.5MbpsUSB2.0速率高达480MbpsEthernet/FastEthernet802.3/802.3n10MEthernet100MEthernet采用什么协议?CSMA/CDIEEE139420~400Mbps起源于APPLE的FireWire支持63个器件长度几米使用1394的数字机顶盒架构图通讯现代嵌入式系统基本都有通讯有线无线使用什么协议?netbios嵌入式TCP/IP协议栈嵌入式TCP/IP协议栈嵌入式TCP/IP协议栈连接在互联网上意味着提高智能化管理水平TCP/IP是一项应用广泛的标准通过TCP/IP与基础设施连接十分简单最大优越性也许在于使得嵌入式装置支持WWW主要用途是进行远程监测,还可以远程配置嵌入式TCP/IP协议栈局限性首先嵌入式栈是建在专用的软插座API之上的提供可靠传输,占用了大量的资源体积太大,许多场合不适用实现方式1采用软件的方式2硬件方法采用iReady的芯片或芯核,虽然使用的是4位微处理器也能够和互联网实现直接连接3DSP方法也可以选用DSP为基础的TCP/IP协议栈采用方法选择根据设计的电子装置的实际情况来决定使用硬件功能如何?打算如何来实现和互联网的连接?需要发送和接收那些种类的信息?将软件或硬件芯片整合到所设计的电子装置中去,有没有困难?增加一个协议栈,是否需要对所设计的电子装置进行重大更改等等无线通讯介绍嵌入式系统中无线通讯更是随处可见。无线通讯都是基于无限传输媒介是电磁波,信号都以电磁波的方式被发送和接收无线传输的电磁波波谱一般从无线电波(radio)开始到可见光部分无线电波因为频率不是很高,较容易产生,可以远距离传输,并能够较容易地穿透和绕过障碍物线电波的传播是如水波似的扩散型的无线电波的特性跟它的频率有关无线局域网WirelessLocalAreaNetworks无线局域网可以有两种组织方式:一种是以一个基站(basestation)为中心,所有的移动设备都连接到这个基站上去,因此基站也称为接入点(accesspoint);另一种是没有基站,移动设备之间相互连接组成局域网802.11由IEEE制定第一个高速无限局域网是802.11a,1999年1999年,数据传输速率达到54Mbps/72Mbps(Turbo),传输距离控制在10~100米1999年9月IEEE802.11b数据传输速率达到11Mbps2003年6月,IEEE推出最新版本IEEE802.11g认证标准拥有IEEE802.11a的传输速率,安全性较IEEE802.11b好IEEE802.11e标准对无线局域网MAC层协议提出改进支持多媒体传输支持所有无线局域网无线广播接口的服务质量保证QoS机制IEEE802.11f定义访问节点之间的通信支持IEEE802.11的接入点互操作协议(IAPP)IEEE802.11h用于802.11a的频谱管理技术IEEE802.11i标准结合IEEE802.1x中的用户端口身份验证和设备验证对无线局域网MAC层进行修改与整合定义了严格的加密格式和鉴权机制改善无线局域网的安全性个人无线局域网wirelesspersonalareanetworks标准802.15,这就是蓝牙的技术标准zigbee无线移动通讯无线通讯分为两类无线局域网无线移动通讯无线设备可以是单向的,也可以是双向的单向通信包括只接收信号的BP机双向通信系统包括分组无线电通信(Packet-RadioCommunication)蜂窝数字分组通信(CellularDigitalPacketCommunication)三种无线移动通讯复用方式频分多址时分多址码分多址GSM&GPRS全球移动通信系统GlobalSystemforMobilecommunications蜂窝概念即所谓小区制实现频率再用,大大提高了系统容量GSM使用时分多址方法为了话音业务和低速数据业务设计的GSM移动台分为两部分一部分包含无线接口特有的软件和硬件另一部分是用户数据——用户识别卡(SIM)GeneralPacketRadioService以分组的形式传送数据基于包转发机制的171.2kbps访问速度支持了移动Internet的功能GPRS的缺点一个蜂窝小区内用于容量有限实际数据传输速度远低于理论值CDMA码分多址接入技术(CodeDivisionMultipleAccess)建立在正交编码、相关接收的理论基础上运用扩频通信技术解决无线通信的选址问题的多址接入方式先用一个扩频码(spreadingcode)对数据进行调制然后传输优点能充分利用多路衰减现象CDMA与GSM/GPRS比较GSM/GPRS系统有一个缺点先断后连的转台(handover),又称为硬转台(hardhandover)移动台在跨越两个蜂窝小区的时候先跟原来所在的小区的基站断开连接然后跟后来所在的小区的基站进行连接这种情况下,正在进行的通话就要被断开在CDMA技术中不存在硬转台所有的基站都使用相同的频道可以在断开之前先跟下一个基站连接好称为先连后断的转台,又称为软转台(softhandover)CDMA信号功率远小于GSM等系统的功率CDMA辐射也很小从1G到4G大容量、高速率、全方位的第三代移动通信系统(3G)1G网络NMT,C-Nets,AMPS,TACS最早的模拟蜂窝系统2G网络GSM,cdmaOne,DAMPS最早的数字蜂窝系统3G网络UMTSFDDandTDD,cdma20001xEVDO,cdma20003x,TD-SCDMA,AribWCDMA,EDGE,IMT-2000DECT目前已投入商用的带宽最高的无线通讯网络系统4G固定状态下数据传输速度达到1Gbps移动状态下数据传输速度达到100Mbps在以60公里时速行驶的汽车内进行100Mbps的数据传输和超高速移动通信服务的无缝切换多个用户同时以1Gbps的速度下载32个频道的HD广播同时使用超高速互联网上传下载、可视电话、论坛直播等服务3G的数据业务范围移动音频业务通过互联网协议传送声音静态图像移动图像虚拟本地环境电子代理未来的移动手持设备将不仅是现在的移动电话一样以通话作为主要功能,而将是一种移动通讯设备跟移动计算设备的结合,也就是智能手机(IntelligentCellPhone)3输入输出装置触控面板电阻式,最常用电容式音波式红外线式近场感应式XGT式防水、防火、防刮、抗菌语音输入输出技术可以软件实现前提:处理器功能足够强大可用专用芯片加硬件模块Keypad6个I/O口实现的5×5按键矩阵的示意图电阻式触控面板结构LCD显示器LiquidCrystalDisplay液晶介于固态和液态用于显示GUI环境下的文字和图象数据适用于低压、微功耗电路段式液晶常见段式液晶的每字为8段组成,即8字和一点,只能显示数字和部分字母。字符型液晶字符型液晶是用于显示字符和数字的,对于图形和汉字的显示方式与段式液晶无异图形点阵式液晶又将其分为TN、STN(DSTN)、TFT等几类彩色LCD分:主动式LCD(有源,active)高端产品使用,如TFT被动式LCD(无源,passive)中低端产品,如STN手机等4存储器RAMSRAM、DRAMROMROM、EPROM、EEPROM、FLASHROMCFCompactFlashSDSecureDigitalMemoryStickSonySpringboardPalm的Visor专用SSDFlash闪速存储器(FLASH)相对EEPROM,flash可以用电气的方法快速地擦写Flash快擦写存储器不需要存储电容器集成度更高制造成本低于DRAM特点使用方便与SRAM类似,读写的灵活性和较快的访问速度与ROM类似,在断电后可不丢失信息快擦写存储器技术发展迅速NORflashNOR技术,亦称为Linear技术源于传统的EPROM器件最早出现,多数厂家支持特点程序和数据可存放在同一芯片上,有独立的数据总线和地址总线,能快速随机读取XIP(eXecuteInPlace):允许直接从Flash中读取代码执行,无需先将代码载至RAM中执行可以单字节或单字编程,但不能单字节擦除,必须以块为单位或对整片执行擦除操作对存储器进行重新编程之前需要对块或整片进行预编程和擦除操作缺点擦除和编程操作所花费的时间很长NOR的擦除和编程速度较慢块尺寸又较大适用范围擦除和编程操作较少直接执行代码尤其是纯代码存储的应用如PC的BIOS固件、移动电话、硬盘驱动器的控存不适用纯数据存储和文件存储的应用NANDflash三星1999年底第一颗1GbNANDNAND的存储器可以取代硬盘以页为单位进行读和编程操作,1页为256或512B(字节)以块为单位进行擦除操作,1块为4K、8K或16KB具有块编程和块擦除的功能nand块擦除时间是2msNOR技术块擦除时间达到几百ms数据、地址采用同一总线,串行读取随机读取速度慢且不能按字节随机编程位成本(bitcost)最低的固态存储器芯片尺寸小,引脚少嵌入式操作系统1嵌入式操作系统概述嵌入式操作系统-基本概念嵌入式系统软硬件资源的控制中心以尽量合理有效的方法组织多个用户共享嵌入式系统的各种资源通常复杂的操作系统支持文件系统用户系统程序之上的所有软件。合理有效的方法操作系统如何协调并充分利用硬件资源来实现多任务嵌入式操作系统概述-发展阶段嵌入式操作系统的发展主要经历了以下四个阶段:1无操作系统的嵌入式算法阶段单芯片为核心具有与一些监测、伺服、指示设备相配合的功能一般没有明显的操作系统支持通过汇编语言编程对系统进行直接控制。主要特点系统结构和功能都相对单一,针对性强无操作系统支持几乎没有用户接口嵌入式操作系统概述-发展阶段简单监控式的实时操作系统阶段以嵌入式处理器为基础以简单监控式操作系统为核心主要特点:处理器种类繁多,通用性比较弱;开销小,效率高;一般配备系统仿真器,具有一定的兼容性和扩展性;用户界面不够友好,主要用来控制系统负载以及监控应用程序运行。嵌入式操作系统概述-发展阶段通用的嵌入式实时操作系统阶段以通用型嵌入式操作系统为标志的嵌入式系统典型代表有:VxWorks、pSos、WindowsCE等主要特点:运行在不同的微处理器具有强大的能用型操作系统的功能文件和目录管理多任务设备驱动支持网络支持图形窗口用户界面具有丰富的API和嵌入式应用软件嵌入式操作系统概述-发展阶段以Internet为标志的嵌入式系统嵌入式系统与Internet的真正结合嵌入式操作系统与应用设备的无缝结合代表着嵌入式操作系统发展的未来嵌入式操作系统概述-特点实时性基于优先级设计内核可抢占实时相关函数可重入小内核存储资源小可配置硬件要求不同应用需求变化多端对操作系统功能的选择性易移植大量嵌入式处理器高可靠性运行时间长出错不可能人工重启低功耗:微电量及省电的管理2常见的商品EOS-WindowsCE(1/3)微软开放的、可升级的32位嵌入式操作系统基于掌上型电脑类的电子设备操作精简的Windows95继承了传统的Windows图形界面可以使用Windows平台上的编程工具(如VB、VC等)应用范围手掌型小型设备,移动电话,小型终端设备,汽车,私用电器常见的商品EOS-WindowsCE(2/3)WindowsCE主要具有以下特点:灵活的电源管理功能。包括瞬眠/唤醒模式。对象存储(objectstore)技术。包括文件系统、注册表及数据库。它还具有很多高性能、高效率的操作系统特性,包括按需换页、共享存储、交叉处理同步、支持大容量堆(heap)等。良好的通信能力。广泛支持各种通信硬件,亦支持直接的局域连接以及拨号连接,并提供与PC、内部网以及Internet的连接,还提供与Windows9x/NT的最佳集成和通信。支持嵌套中断。允许更高优先级别的中断首先得到响应,而不是等待低级别的ISR完成。具备实时性。常见的商品EOS-WindowsCE(3/3)更好的线程响应能力。对高级别IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面的改进,帮助开发人员掌握线程转换的具体时间,并通过增强的监控能力和对硬件的控制能力帮助他们创建新的嵌入式应用程序。256个优先级。可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。支持大量API。WindowsCE的API是Win32API的一个子集,支持近1500个Win32API。常见的商品EOS-PalmOS(1/2)PalmOS是3Com公司的产品,专用于掌上电脑。主要特点:良好的节能功能。由掌上电脑要求使用电源尽可能小,因此在PalmOS的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。合理的内存管理。Palm的存储器全部是可读写的快速RAM为全局变量和其它不需永久保存的数据提供临时的存储空间;存储RAM永久保存应用程序和数据。PalmOS占有非常小的内存。常见的商品EOS-PalmOS(2/2)数据以数据库的格式存储。数据库由一组记录(records)和一些数据库头信息组成。为保证程序处理速度和存储器空间,在处理数据的时候,PalmOS不是把数据从存储堆(StorageHeap)拷贝到动态堆(DynamicHeap)后再进行处理,而是在存储堆中直接处理。为避免错误调用存储器地址,PalmOS规定,这一切都必须调用其内存管理器里的API来实现。常见的开源EOS-EmbeddedLinux(1/3)目前正在开发的嵌入式系统中,49%的项目选择Linux作为嵌入式操作系统。Linux现已成为嵌入式操作的理想选择。所有基于Linux的EOS大多数具有以下特点:精简的内核。性能高、稳定,多任务。持多种体系结构。如X86、ARM、MIPS、ALPHA、SPARC等。提供良好的开发环境。能够提供完善的嵌入式GUI以及嵌入式X-Windows。常见的开源EOS-EmbeddedLinux(2/3)支持大量嵌入式应用程序。提供嵌入式浏览器、邮件程序、MP3播放器、MPEG播放器、记事本等应用程序。具有良好的开发环境。提供完整的开发工具和SDK,同时提供PC上的开发版本。用户可定制。可提供图形化的定制和配置工具。丰富的硬件驱动。常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。常见的开源EOS-EmbeddedLinux(3/3)提供完善的解决方案。针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。完善的中文支持。特别部分国产基于Linux的EOS,具有强大的技术支持,完整的文档。开放源码。丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。常见的开源EOS-C/OS(1/3)μC/OS是一个基于抢占式的实时多任务内核,可固化、可剪裁、具有高稳定性和可靠性,其最鲜明的特点就是源码公开,便于移植和维护。主要特点:可移植性(Portable)绝大部分C/OS的源码是用移植性很强的ANSIC写的。和微处理器硬件相关的那部分是用汇编语言写的。汇编语言写的部分已经压到最低限度,使得C/OS便于移植到其他微处理器上。C/OS可以在绝大多数8位、16位、32位甚至64位微处理器、微控制器、数字信号处理器(DSP)上运行。可固化(ROMable)C/OS是为嵌入式应用而设计的,这就意味着,开发人员可以利用固化手段(C编译、连接、下载和固化)将系统嵌入到产品中。常见的开源EOS-C/OS(2/3)可裁剪(Scalable)可以只使用C/OS中应用程序需要的那些系统服务。也就是说某产品可以只使用很少几个C/OS调用,而另一个产品则使用了几乎所有C/OS-II的功能,这样可以减少产品中的C/OS-II所需的存储器空间(RAM和ROM)。这种可剪裁性是靠条件编译实现的。抢占式(Preemptive)基于优先级的可抢占调度。多任务C/OS可以管理64个任务,其中系统预留8个。应用程序最多可以有56个任务。可确定性全部C/OS的函数调用与服务的执行时间具有可确定性。常见的开源EOS-C/OS(3/3)任务栈每个任务有自己单独的栈,C/OS允许每个任务有不同的空间,以便压低应用程序对RAM的需求。系统服务

C/OS提供很多系统服务,例如邮箱、消息队列、信号量、块大小固定的内存的申请与释放、时间相关函数等。中断管理中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被该中断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套层数可达255层。稳定性与可靠性几种实时操作系统VxWorks、mC/OS-II、RT-Linux、QNX都是优秀的强实时操作系统,各有特色:VxWorks的衡量指标值最好;uC/OS-II最短小精悍;RT-Linux支持调度策略的改写;QNX支持分布式应用。LynxOS操作系统就是一种符合POSIX标准的类UNIX硬实时操作系统,它的中断处理、线程调度、优先级倒置问题的解决都有自己独特的特点。VxWorks操作系统概述VxWorks由美国WindRiver系统公司出品,在嵌入式操作系统领域中颇具优势。目前该操作系统的版本为VxWorks5.4,其核心功能主要有微内核wind,任务间的通信机制,高级的网络支持,功能强大的文件系统(VxWorks支持4种文件系统:dosFs、rt11Fs、rawFs、tapeFs)和I/O管理,POSIX标准实时扩展,C++和其他标准支持等核心功能。VxWorks系统结构VxWorks是现在所有独立于处理器的实时系统中最具特色的操作系统。VxWork系统运行环境支持的CPU包括PowerPC、68K、SPARC、i960、x86等,同时支持RISC、DSP技术。它的微内核Wind是一个具有较高性能的标准的嵌入式实时操作系统内核,其主要特点包括快速多任务切换、抢占式任务调度、任务间通信手段多样化等。从Linux到RTLinuxLinux当前主流通用操作系统之一,在网络服务器、集群技术和pc桌面领域都取得了引人注目的成就。Linux操作系统的设计目标是取得最优平均性能,因此有很多方面无法满足实时系统的要求。在Linux系统中,基于最大吞吐量标准的调度算法、不可中断的系统调用、中断屏蔽,以及虚拟内存的使用等因素,都会导致系统在时间上的不可预测性,决定了Linux系统不能处理硬实时任务。RTlinux是建立在Linux之上的一个实时操作系统实现,不仅具有硬实时的机制,同时又能极大地发挥Linux自身的各种优点。LynxOS美国LynuxWorks公司的LynxOS操作系统就是一种符合POSIX标准的类UNIX硬实时操作系统,它的中断处理、线程调度、优先级倒置问题的解决都有自己独特的特点。硬实时操作系统LynxOS能够创建精确运行的符合POSIX标准的实时进程,它提供一套功能强大、易于使用的开发工具,具有Linux/UNIX开发经验的程序员可以很快地熟悉并开发出LynxOS下的实时应用,并且有很强的通用性,适合于高端网络打印机、自动控制、航空航天等对实时性要求较高的领域。http:∥LynxOS相关资料BootLoader嵌入式系统中的OS启动加载程序引导加载程序包括固化在固件(firmware)中的boot代码(可选),和BootLoader两大部分是系统加电后运行的第一段软件代码相对于操作系统内核来说,它是一个硬件抽象层PC机中的引导加载程序两部分组成BIOS(其本质就是一段固件程序)位于硬盘MBR中的OSBootLoader(如LILO和GRUB等)流程BIOS在完成硬件检测和资源分配后,将硬盘MBR中的BootLoader读到系统的RAM中,然后将控制权交给OSBootLoaderBootLoader的主要运行任务就是将内核映象从硬盘上读到RAM中,然后跳转到内核的入口点去运行,即开始启动操作系统。开放环境如ARMADT/ADS等嵌入式系统中引导加载程序没BIOS那样的固件程序有的嵌入式CPU也会内嵌一段短小的启动程序系统的加载启动任务就完全由BootLoader来完成ARM7TDMI中,系统在上电或复位时从地址0x00000000处开始执行这个地址是BootLoader程序BootLoader的概念在操作系统内核运行之前运行的一段小程序功能初始化硬件设备建立内存空间的映射图调整系统的软硬件环境,以便操作系统内核启动不通用依赖于硬件依赖于具体的板级配置不同的CPU有不同的BootLoader有些BootLoader支持多CPU,如U-Boot支持ARM和MIPSBootLoader的安装媒介第一条指令eg:地址0x00000000嵌入式系统通常有固态存储设备(比如:ROM、EEPRO

M或FLASH等)被映射到这个预先安排的地址上系统加电后,CPU将首先执行BootLoader程序用来控制BootLoader的设备或机制主机和目标机之间一般通过串口建立连接BootLoader执行时通常会通过串口进行I/O如输出打印信息到串口,从串口读取用户控制字符等BootLoader的启动过程是单阶段(SingleStage)还是多阶段(Multi-Stage)多阶段的BootLoader提供更为复杂的功能,以及更好的可移植性从固态存储设备上启动的BootLoader大多都是2阶段的启动过程启动过程可以分为stage1和stage2两部分BOOTLOADER一般分为2部分汇编部分执行简单的硬件初始化C语言部分负责复制数据,设置启动参数,串口通信等功能.BOOTLOADER的生命周期1.初始化硬件,如设置UART(至少设置一个),检测存储器等2.设置启动参数,告诉内核硬件的信息,如用哪个启动界面,波特率.3.跳转到操作系统的首地址.4.消亡嵌入式调试开发环境1嵌入式集成开发环境嵌入式系统开发环境,是以开发嵌入式系统为目的的工程开发环境。包括办公环境支持、软件支持、硬件设备支持。软件支持,指集成开发环境与软件模拟器等。硬件支持,指仿真器、目标板、示波器、烧录器等。集成开发系统包括一整套完备的面向嵌入式系统的开发和调试工具。一般包括编辑器、编译器、连接器、调试器、工程管理器和底层调试接口设备(BDM/JTAG仿真器)嵌入式软件嵌入式应用软件嵌入式操作系统嵌入式硬件嵌入式硬件模块嵌入式处理器嵌入式开发工具2编译器嵌入式语言:ASM/Ada/C/C++/EC/Java/OP/STAPLEC++标准95年初在日本成立的EmbeddedC++技术委员嵌入式c/c++编译器交叉编译能力:能够在pc/unix平台上生成其他cpu平台目标代码连接/定址器:因为无法提供dos/windows的动态定位执行能力。嵌入式一般需要目标代码静态定位到具体地址,定址器完成这一工作。启动代码:初始化处理器和c语言堆栈区等环境的汇编码。EC++:针对嵌入式的一些实时要求等特点,对标准C++语言规范的修改扩充。提供目标调试(remote/rommonitor)能力.另外还有其他一些地方需要注意,如I/O库,大小尾段等主流嵌入式编译器:GNU、CADUL、CodeWarrior、GreenHill、Diab/SDS、IAR、BC/VC+Toolkit….等3调试器原理远程调试调试器运行于通用桌面操作系统的应用程序被调试的程序则运行于嵌入式系统(目标系统)两种远程调试的方案一插桩(stub)二片上调试(OnChipDebugging)三代理插桩(stub)在目标操作系统和调试器内分别加入某些功能模块,二者互通信息来进行调试。调试器与被调试程序的通信被调试程序产生异常及时通知调试器调试器控制、访问被调试程序调试器识别有关被调试程序的多任务信息并控制某一特定任务调试器处理与目标硬件平台相关的信息目标操作系统支持远程调试协议的通信模块(包括简单的设备驱动)多任务调试接口改写异常处理的有关部分定义一个设置断点的函数例如:LINUX内核时若将kgdb驻留于ROM中则称为ROMmonitor片上调试(OnChipDebugging)在处理器内部嵌入额外的控制模块当满足了一定的触发条件时进入某种特殊状态,在该状态下被调试程序停止运行主机的调试器可以通过处理器外部特设的通信接口访问各种资源(寄存器、存储器等)并执行指令主机通信端口与目标板调试通信接口信号转换电路板连接内嵌的控制模块以基于微码的监控器(microcodemonitor)或纯硬件资源的形式存在包括一些提供给用户的接口(如断点寄存器等)代理(agent)代理(agent)针对:实时系统,延时,监视点tracepoint处理方法:监视点缓冲命中监视点,自动唤醒代理,存储数据到缓冲代理无需通讯实时监视的可行方案CPU支持串行工作针对指令缓冲4常用的调试方法调试工作需要配合其他的模块或者产品方可完成目前常用的调试方法有以下几种:指令集模拟器驻留监控软件JTAG仿真器在线仿真器1)指令集模拟器源程序模拟器(Simulator)通过指令解释方式逐条

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论