gA嵌入式系统设计与实例开发课件_第1页
gA嵌入式系统设计与实例开发课件_第2页
gA嵌入式系统设计与实例开发课件_第3页
gA嵌入式系统设计与实例开发课件_第4页
gA嵌入式系统设计与实例开发课件_第5页
已阅读5页,还剩249页未读 继续免费阅读

下载本文档

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

文档简介

嵌入式系统设计与实例开发——ARM与C/OS-Ⅱ第一讲嵌入式系统概述周亦敏沮眉樱奖付狠敦勃褥返毒段亨苔走疏另淹筋贤缺慌秋患营喜鼠胎痢贝己芬gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统设计与实例开发沮眉樱奖付狠敦勃褥返毒段亨苔走疏另淹《嵌入式系统》课程开设的背景在当今后PC时代,无论通讯、工控、机械冶金、信息家电、仪器仪表、航空航天、军工、船舶等领域都需要大量的嵌入式开发人员。为了为国家培养兼具软硬件开发能力的人才,增加学生就业竞争力。嵌入式系统人才需求分析

学校教育中存在偏向极硬(hardwaredesign),或偏向超软(softwaredevelopment),硬件设计人员作风通常非常保守,比较缺乏系统整合设计能力,而软件设计人员只要遇到硬件问题就无能为力,对硬件知识缺少了解。因此,目前国内非常缺乏嵌入式系统所需要的软硬件系统整合人才,大部分都还是靠硬件设计人员兼职。菩嘎巫伍般渠标匀壳遏酝丛畴绷县堵卒些萨沤剑氟讳稗弛婿唇醛窟蝴徘灼gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发《嵌入式系统》课程开设的背景菩嘎巫伍般渠标匀壳遏酝丛畴绷县堵嵌入式系统工程师既要精通一定的硬件技术、同时还要掌握嵌入式操作系统以及特定软硬件平台上的开发技术;另外,还需要有专门的开发调试设备、软件和资料等特殊条件才能系统学习。企业大都不愿投入人力和财力去培养自己企业的嵌入式系统工程师,而是愿意招聘现成的嵌入式系统工程师。嵌入式系统人才短缺!据估计,中国目前软件人才缺口为42万人,其中嵌入式软件的人才缺口更大。国内外大量需求嵌入式系统工程师Motorola、Ericsson、Lucent、Huawei、Intel、Legend等著名IT企业高薪聘请的技术人员,绝大多数都是嵌入式系统工程师。从最近的由中华英才网提供的行业薪酬调查报告显示,通信、医疗设备、金融名列三甲。而通信、医疗设备就是嵌入式系统的典型应用领域。从国内求职类权威网站51job、中华英才网的近期的工作搜索分类来看,嵌入式系统工程师的需求已成为热门职业。结论:嵌入式系统的教学是大势所趋且刻不容缓!!

聘盎猪咸因朋化号夏贡细亨典他俗硒辫溃隋嘶欣狈捂戏框钒鹅山卓蹈殿霞gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统工程师既要精通一定的硬件技术、同时还要掌握嵌入式操《嵌入式系统》课程开设的目的从传统的51、X86等低级的8、16位处理器平台,向目前实用的32位高级RISC处理器平台转移;从纯粹的CPU单任务控制向实时多任务转移;从传统CPU教育的汇编语言、机器指令教学方式,上升到使用规范的C语言来进行条理的模块化嵌入式开发;彻底解决传统操作系统课程,理论与实践严重脱节的情况;学生更深入地理解硬件和底层软件间的配合问题;

弥补学生动手能力差的问题,避免学生只会纯粹在Windows平台做一些简单劳动的软件编写工作,真正去深入理解嵌入式系统。蹿岩畏甩他舅涪耘运琼控味旦甭鞘二喷弹院卯翻鲁虏待犁监糊匝掩哭咐霉gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发《嵌入式系统》课程开设的目的蹿岩畏甩他舅涪耘运琼控味旦甭鞘二关于课程目前国内高校及我校现状内容的选择与组织微处理器—ARM内核实时操作系统—UCOS-II意义:社会对嵌入式系统设计开发人才与日俱增的需求由技术发展趋势的必然所决定 特点

综合性:涉及多门专业基础课汇编语言C语言微机原理系统结构 操作系统接口与通信是软硬件设计的完美结合基础性:作为计算机电子电气自动控制等专业的基础平台课实践性:实验是嵌入式系统教学的重要环节关于教材课程安排

忻铀娱棉质晒粗销抓疹次椭亿技宇震蚀咯晦侈亨添据亢咽拾垒悼壤呛鲁苇gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发关于课程忻铀娱棉质晒粗销抓疹次椭亿技宇震蚀咯晦侈亨添据亢咽拾本节提纲嵌入式系统的定义与特点嵌入式微处理器的相关基本知识嵌入式实时操作系统的相关基本知识嵌入式系统的设计方法概述纪结走突估咋瞎妄暗娱工冻周严钮削彭嫌典鉴集沽鸣补惰催骏被籍塘曳筒gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发本节提纲嵌入式系统的定义与特点纪结走突估咋瞎妄暗娱工冻周严钮典型嵌入式系统基本组成-硬件MPU微处理器电源模块时钟复位FlashRAMROMUSBLCDKeyboard外围电路Other外设泞柠鲁医愈漏项踏秦介袁畔涎庚包钵捆刑扩消灶紊蛆孟拎魏渣喝茫氟烛击gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发典型嵌入式系统基本组成-硬件MPU微处理器电源时钟复位Fla典型嵌入式系统基本组成-软件处理器存储器输入输出操作系统应用程序软件结构硬件结构优舒案任夏要京责辨瓶胳端夏酌责驻酿懦鸿虏不靡窗才悼苑键泰付蛰憾迄gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发典型嵌入式系统基本组成-软件处理器存储器输入输出操作系统应用嵌入式系统的发展嵌入式系统本身是一个相对模糊的定义。一个手持的MP3和一个PC104的微型工业控制计算机都可以认为是嵌入式系统。嵌入式系统已经有了近30年的发展历史,它是硬件和软件交替发展的双螺旋式发展。最早的单片机是Intel公司的4044,它出现在1971年Motorola同时推出了68HC05,Zilog公司推出了Z80系列,这些早期的单片机均含有256字节的RAM、4K的ROM、4个8位并口、1个全双工串行口、两个16位定

器。之后在80年代初,Intel又进一步完善了8048,在它的基础上研制成功了8051。匡切陪呛好壶驾杰钾贺早淘堤驻蓄灶逃岛侵讶娃蛀剃巫泳洁铸拜矗鲸陀律gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统的发展嵌入式系统本身是一个相对模糊的定义。一个手持1981年ReadySystem发展了世界上第1个商业嵌入式实时内核(VTRX32)包含了许多传统操作系统的特征,包括任务管理、任务间通讯、同步与相互排斥、中断支持、内存管理等功能。随后,出现了如IntegratedSystemIncorporation(ISI)的PSOS、IMG的VxWorks、QNX公司的QNX

等,PalmOS,WinCE,嵌入式Linux,Lynx,uCOS、Nucleux,以及国内的Hopen、DeltaOS等嵌入式操作系统。今天RTOS已经在全球形成了1个产业,根据美国EMF(电子市场分析)报告,1999年全球RTOS市场产值达3.6亿美元,而相关的整个嵌入式开发工具(包括仿真器、逻辑分析仪、软件编译器和调试器)则高达9亿美元。辽戈抹辨惋押午崖似缎梅忆奈翟歌舜酚幕讫察贺窄电颐贰靠菌沾葡海障劈gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发1981年ReadySystem发展了世界上第1个商业嵌入IEEE定义

根据IEEE(国际电气和电子工程师协会)的定义:

嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置”(原文为devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。 可以看出此定义是从应用上考虑的,嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装置。递卜拐箱矫辊诲氰汝境棵逊染抬蹋议阐淄塑递高住踏责孕喇道顷酗渗忆熬gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发IEEE定义根据IEEE(国际电气和电子工程师协会)的一般定义

“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。”锰牙通滁输奏款闹礼冻儒慑敬损俺闲枢墓分达潦萌倔例姬宁祈涕血钟糠痔gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发一般定义 锰牙通滁输奏款闹礼冻儒慑敬损俺闲枢墓分达潦萌嵌入式系统定义要素专用计算机系统(非PC智能电子设备)以应用为中心以计算机技术为基础软件硬件可裁剪适应应用系统对功能、可靠性、成本、体积、功耗 等的严格要求知识集成应用系统(CSEA)技术密集资金密集高度分散不可垄断面向应用不断创新胀测几撅卫伪沟肯秀砒穗逐皱俩戎敛拢敏锈失提苟币炮屯歪踏檄牡拓泻副gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统定义要素专用计算机系统(非PC智能电子设备)胀测几嵌入式系统的分类按表现形式分:(硬件范畴)芯片级嵌入(含程序或算法的处理器)模块级嵌入(系统中的某个核心模块)系统级嵌入按实时性要求分:(软件范畴)非实时系统(PDA)软实时系统(电子消费类产品)硬实时系统(数控、航空航天等工业和军工系统)迂檀滔霜碧哈棋惺奉井宴律孤举支荷搂剿芽臃宪筛须顷兰魁渊疆椿置川迭gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统的分类按表现形式分:(硬件范畴)迂檀滔霜碧哈棋惺奉嵌入式系统的几个重要特征(1)系统内核小由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如ENEA公司的OSE分布式系统,内核只有5K,而Windows的内核则要大得多。洗视杭佩屈石浮曰么鳃逆准嫁喀哲嫉贼吱涨寄涅礼湍荒份悸揣圣该观酝嚣gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统的几个重要特征(1)系统内核小洗视杭佩屈石浮曰么鳃(2)专用性强嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。适估差僵苑林辑器尽咏禁仇个易多陇低讣蝶悸淮留瑟通暇忽窍肉狡串骤远gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(2)专用性强适估差僵苑林辑器尽咏禁仇个易多陇低讣蝶悸淮留瑟(3)系统精简嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。(4)高实时性OS这是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。软件代码要求高质量和高可靠性、实时性。掀鲤栈掀艘撰牡斧冯像涝赁倚真驯坑坏炊梭笛膨恭孟翻发直爪蟹臻浊饯菩gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(3)系统精简掀鲤栈掀艘撰牡斧冯像涝赁倚真驯坑坏炊梭笛膨恭孟(5)嵌入式软件开发走向标准化嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS(Real-TimeOperatingSystem)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。堤呀待良珊皆寂睹筋祁傅贫框祸鱼废讳栅鼠安青你秃哉融承络荐于愿萄岿gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(5)嵌入式软件开发走向标准化堤呀待良珊皆寂睹筋祁傅贫框祸鱼(6)嵌入式系统开发需要开发工具和环境由于其本身不具备自主开发能力,即使设计完成以后,用户通常也是不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。筹关卢烫心挂笋矛珍蓟揉痹愧单珠莽贺肾翱次榆泰拈弗搓箭斧记锈飞总盲gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(6)嵌入式系统开发需要开发工具和环境筹关卢烫心挂笋矛珍蓟揉嵌入式处理器系统嵌入式处理器各种类型存储器模拟电路及电源接口控制器及接插件嵌入式软件系统实时操作系统(RTOS)板级支持包(BSP)设备驱动(DeviceDriver)协议栈(ProtocolStack)应用程序(Application)嵌入式系统的分类鸽盼苛闰窄酱吹忍呜丰使拍统皆疽翠霓雹邯咖艘查同棒市怯铀贱寒未哀那gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式处理器系统嵌入式系统的分类鸽盼苛闰窄酱吹忍呜丰使拍统皆本节提纲嵌入式系统的定义与特点嵌入式微处理器的相关基本知识嵌入式实时操作系统的相关基本知识嵌入式系统的设计方法概述败烫焚愤脯爱歌少端域肇笑京潍讲糙陛为乐苔鉴介涟托寞闭奋萌修穿舀舰gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发本节提纲嵌入式系统的定义与特点败烫焚愤脯爱歌少端域肇笑京潍讲冯·诺依曼体系结构和哈佛体系结构CISC与RICS影响CPU性能的因素存储器系统硬件基础价尼莉枯碘翻脂补酶尉丘夏沤杂袁惧卤舶假筷咆城绥显喳妹债铀旬惮竹蹋gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发冯·诺依曼体系结构和哈佛体系结构硬件基础价尼莉枯碘翻脂补酶尉冯·诺依曼体系结构模型指令寄存器控制器数据通道输入输出中央处理器存储器程序指令0指令1指令2指令3指令4数据数据0数据1数据2剿碎馋蒸引淆文穗穆鳃叁辖慧桨潞嗅姚扯并谩摆涅觉怂铝融归览誓蒙脐镭gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发冯·诺依曼体系结构模型指令寄存器控制器数据通道输入输出中央处指令的执行周期T1)取指令(InstructionFetch):TF

2)指令译码(InstructionDecode):TD3)执行指令(InstructionExecute):TE4)存储(Storage):TS每条指令的执行周期:T=TF+TD+TE+TS订淬惶滔亿铡灭张阵态蚀联舒柒纽炼拂匣宵洱全污雅鸯联拟布扎散舱英朱gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发指令的执行周期T1)取指令(InstructionFetc冯·诺依曼体系的特点1)数据与指令都存储在存储器中2)被大多数计算机所采用3)ARM7——冯诺依曼体系封兄厕曲湾脑嘛汉予荷奇饿帮砷召弛耳镰腔完脑掷厦庙侮虱我故捧品邦杯gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发冯·诺依曼体系的特点1)数据与指令都存储在存储器中封兄厕曲湾哈佛体系结构指令寄存器控制器数据通道输入输出中央处理器程序存储器指令0指令1指令2数据存储器数据0数据1数据2地址指令地址数据甚啃楷粟巴闸晤窜巾爱怔衍獭青绦梧娘缩坐鳞偿椿嵌输哮源萧丰辫心泞友gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发哈佛体系结构指令寄存器控制器数据通道输入输出中央处理器程序存哈佛体系结构的特点1)程序存储器与数据存储器分开

2)提供了较大的数据存储器带宽3)适合于数字信号处理4)大多数DSP都是哈佛结构5)ARM9是哈佛结构谈镍刀柿科斌艺蓖襟雨日盂散训筏敞敦评湾钦徽衅丫盐炭陛传园倔猾可读gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发哈佛体系结构的特点1)程序存储器与数据存储器分开

谈镍刀柿科CISC和RISCCISC:复杂指令集(ComplexInstructionSetComputer)具有大量的指令和寻址方式大多数程序只使用少量的指令就能够运行。RISC:精简指令集(ReducedInstructionSetComputer)8/2原则:80%的程序只使用20%的指令在通道中只包含最有用的指令确保数据通道快速执行每一条指令使CPU硬件结构设计变得更为简单畸坦奏挖涣氓臀峡仿鸟八芝是竹廖恶刻大侵谩巧鹃润吏雏眨占金班亲王讽gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发CISC和RISCCISC:复杂指令集(ComplexInCISC与RISC的数据通道IFIDREGALUMEM开始退出IFIDALUMEMREG微操作通道开始退出单通数据通道遁苫况挖蚁恢巢岭拽翁漂摘垂吟嘱横褂塞巩牟咕渡伴晚轨沁点孩淘冬鳖生gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发CISC与RISC的数据通道IFIDREGALUMEM开始退影响CPU性能的因素:流水线、超标量和缓存RISC流水线技术:几个指令可以并行执行 提高了CPU的运行效率 内部信息流要求通畅流动译码取指执行add译码取指执行sub译码取指执行cmp时间AddSubCmp官秸峭起浦狗淄忱摩税钾庞回贯制肚舜非敛硅圭粗茫倍嘛赛低绍搽箕贵野gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发影响CPU性能的因素:流水线、超标量和缓存RISC流水线技术超标量执行超标量执行:超标量CPU采用多条流水线结构

执行1预取指令CACHE译码2译码1执行2执行1预取译码2译码1执行2流水线1流水线2数据李脐秽涌绪灾命哺脾巩媳捍普巨苑琶淫遁路贞占抖脓订停恋慑慷坡告蕉雷gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发超标量执行超标量执行:超标量CPU采用多条流水线结构执行1预高速缓存(CACHE)1、为什么采用高速缓存微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能。2、高速缓存的工作原理高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝。CPU高速缓存控制器CACHE主存数据数据地址空擞星暇呈赶堡市拦阵芯坍气唱辈裸又瑶沮痪宫创朋敢蹄涧加围言煮结货gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发高速缓存(CACHE)1、为什么采用高速缓存高速缓存控制器数总线和总线桥CPU低速设备桥数据高速总线存储器高速设备高速设备低速总线滋人高惦众舍费柔驼揽遗览虚俄汕滓训袱虹激朴翅渊涌栈甸机辟郴适目墩gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发总线和总线桥数据高速总线低速总线滋人高惦众舍费柔驼揽遗览虚俄存储器系统RAM:随机存取存储器SRAM:静态随机存储器DRAM:动态随机存储器1)SRAM比DRAM快2)SRAM比DRAM耗电多3)DRAM存储密度比SRAM高得多(容积)4)DRAM需要周期性刷新ROM:只读存储器FLASH:闪存骚尹甲笼姑慰诲龄语用捍惑焚贮臭姆恳诧辊奥寻碰蜂悸银培岭蝗宵镶人勇gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发存储器系统RAM:随机存取存储器骚尹甲笼姑慰诲龄语用捍惑焚贮SRAM和DRAM1)SRAM2)DRAMCSR/WAddrDataCS(片选)R/WCAS(列刷新)DataRAS(行刷新)Addr岩砧守谬幸莫嗣颂毁窗金胸管备淳团徊策显斯琳姻翰蜕焕愧戒剥塘膜品有gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发SRAM和DRAM1)SRAM输入输出接口1)I/O2)A/D、D/A3)键盘4)LCD5)存储器接口6)设备接口犀邢唬随择剃遵讥于珠凿舱锭丈陛檀寺串靖倒蔬惩胺绊巴爹华颧补降掣毯gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发输入输出接口1)I/O犀邢唬随择剃遵讥于珠凿舱锭丈陛檀寺串靖

嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。嵌入式处理器辕韩棺蹿阮奎柱陛些圆孪野旱纯掂枚颠仿莫性殊九塘榴试甚徒乔哗选麻蛮gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就嵌入式处理器嵌入式处理器的发展趋势经济性(成本)微型化(封装、功耗)智能化(功能、速度)嵌入式处理器的分类和现状微控制器(MCU)微处理器(MPU)数字信号处理器(DSP)混合处理器和片上系统(SOC)可编程片上系统(SOPC)财粗仔焚皖掐亥炔痉炔迪疗独奸论傅染胎卑狞浊崖蚕剁摈挖庐抑咒擂骨惮gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式处理器嵌入式处理器的发展趋势财粗仔焚皖掐亥炔痉炔迪疗独硬件设计工具(EDA工具)系统级设计工具Cadence的SPWSystemView模拟电路系统仿真工具PspiceEWBPCB设计工具ProtelPADs的PowerPCB&ToolKitMentor的Expedition&ToolKit可编程逻辑器件设计工具MentorFPGAAdvantage&ModelSimXilinxFoundationISE&ToolKit各种综合和仿真第三方工具壤岿街党洼镐狮歼对陀淤嗡廉晨婉椭汇湾扯劳卧语寨泽跨冕速梗区贸妙硫gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发硬件设计工具(EDA工具)系统级设计工具壤岿街党洼镐狮歼对陀嵌入式处理器的发展——Intel4004MicroprocessorIntroducedin1970Firstmicroprocessor4bitarchitecture!2,250transistors(晶体管)12mm2Clock:108kHz攒聋截气倒卫眺幕勾轧兢余裸蛋痛柞尝跃贴彭吩魄氧歼来趾铀抿丸幂燎各gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式处理器的发展——Intel4004MicroproIntel8085MicroprocessorIntroducedin19748-bitarchitectureStillusedinsomemicrocontrollerapplications!侯光撞萍诗蓄梦阎客鸵逛厕磨弃卖娟杰耽授实舌汝蛇扛憎裹枢苏呜儿哨殃gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发Intel8085MicroprocessorIntroIntel8086MicroprocessorIntroducedin197929,000transistors33mm2Clock:5MHz16bitarchitecture韦民筋躁醒幼春榜士庇膳催肿功龄牵杨必芬冤资懂歇料凭航墙德枕娱邱建gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发Intel8086MicroprocessorIntroIntel386MicroprocessorIntroducedin1985275,000transistors43mm2Clock:16MHz32bitarchitecture震图股十砾虐果荫垫矛粱乱诉逝僧漠胆跟景寒虱榆吸蝶栅绅镜奢康戎位暮gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发Intel386MicroprocessorIntrodIntel486MicroprocessorIntroducedin19891,200,000transistors81mm2Clock:25MHz32bitarchitecture僚碑亡命昧驴款豌陪霖倪削磷骗漆磕熔改正福胚荆途褐迈宝痒伍痊税久漓gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发Intel486MicroprocessorIntrodIntelPentiumMicroprocessorIntroducedin19933,100,000transistors296mm2Clock:60MHz32bitarchitecture蜘涕让显们憋肩翻箭兽煽裴焉雾互时赫草任摘聪迫御买罩衙惕盾脾圆塞菏gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发IntelPentiumMicroprocessorInPentiumProcessorDetailsStateRegistersMemoryControlROMCombinationallogicREG万晴艘娘闭暖潍婿瞩义肪孪郎迟畦冒宫恕俱肚薄集浮沂涪搞骋股扩礁流夯gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发PentiumProcessorDetailsState嵌入式微处理器分类材攒领殴吞瞬准浩戚空烹层庸群诀肢亭仇扯捌满棕薛俩喧穗配凸嫉伪坊造gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式微处理器分类材攒领殴吞瞬准浩戚空烹层庸群诀肢亭仇扯捌满(1)、嵌入式微控制器(MCU)嵌入式微控制器的典型代表是单片机这种8位的电子器件目前在嵌入式设备中仍然有着极其广泛的应用。单片机芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种必要功能和外设。弥六干祭绳池兴翌醒虑贡牵硷膨吗副北岛认遗闪队犬埋绝距严凭灼赡犹译gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(1)、嵌入式微控制器(MCU)嵌入式微控制器的典型代表是单微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称为微控制器。削跑甲妇搔萧哎蜡酷挠靡皆阮徊蚁陌媚豌穷砰踏遍提圾拔按挚己掐毕唬炉gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下由于MCU低廉的价格,优良的功能,所以拥有的品种和数量最多,比较有代表性的包括8051、MCS-251、MCS-96/196/296、P51XA、C166/167、68K系列以及MCU8XC930/931、C540、C541,并且有支持I2C、CAN-Bus、LCD及众多专用MCU和兼容系列。近来Atmel推出的AVR单片机由于其集成了FPGA等器件,所以具有很高的性价比,势必将推动单片机获得更高的发展。期垒笺普靛惺米痒穆赌眉腐餐蒂膝冕求俯恨染帐驳鸟淆东著舀屎抗起弃惟gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发由于MCU低廉的价格,优良的功能,所以拥有的品种和数量最多,(2)、嵌入式数字信号处理器(DSP)DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,在数字滤波、FFT、谱分析等各种仪器上DSP获得了大规模的应用。DSP的理论算法在70年代就已经出现,但是由于专门的DSP处理器还未出现,所以这种理论算法只能通过MPU等由分立元件实现。1982年世界上诞生了首枚DSP芯片,在语音合成和编码解码器中得到了广泛应用。DSP的运算速度进一步提高,应用领域也从上述范围扩大到了通信和计算机方面。目前最为广泛应用的嵌入式DSP处理器是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的应用范围。涵亿剧黍万隶羹实睡玲吃研根刷酬忘她置装惹芦服哨逼嚷等抹般悸可曹嘻gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(2)、嵌入式数字信号处理器(DSP)DSP处理器是专门用于MPU嵌入式微处理器是由通用计算机中的CPU演变而来的,80386-80387与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。(3)、嵌入式微处理器(MicroProcessorUnit)赐痉被敢扭裹斤亿蛹梨煽沦指曹媳卷椒爷轨究帝姨绚咎藐盆工届拌宏肛兔gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(3)、嵌入式微处理器(MicroProcessorUn和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM/StrongARM系列等饲瑟咒京冤取窿硒淤怠韶墙鸳滴抛从有仙拦瞄浪循揽尽傲于伶桐欣孵企评gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本SOC就是SystemonChip,SoC嵌入式系统微处理器就是一种电路系统。它结合了许多功能区块,将功能做在一个芯片上,像是ARMRISC、MIPSRISC、DSP或是其他的微处理器核心,加上通信的接口单元,像是万用串行端口(USB)、TCP/IP通信单元、GPRS通信接口、GSM通信接口、IEEE1394、蓝牙模块接口等等,这些单元以往都是依照各单元的功能做成一个个独立的处理芯片。(4)、嵌入式片上系统(SystemOnChip)

拽殆缚袍疵遣嗡迂汰貌宋钞吾权操赣酉堵盖厢谢抹对矫沦飞滥市作兑趟判gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发SOC就是SystemonChip,SoC嵌入式系统SoC嵌入式系统微处理器所具有的其他的好处可以分为下列几种:利用改变内部工作电压,降低芯片功耗。减少芯片对外管脚数,简化制造过程。减少外围驱动接口单元及电路板之间的信号传递,可以加快微处理器数据处理的速度。内嵌的线路可以避免外部电路板在信号传递时所造成系统杂讯。顶脊家拷诫厩症椎痉忍狸敌艳径构琢廷垣龚谗贵弛胺披佐锻穴衬造擂懂波gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发SoC嵌入式系统微处理器所具有的其他的好处可以分为下列几典型的嵌入式微处理器(MPU)1.ARM/StrongARM(INTEL)ARM(AdvancedRISCMachines)公司是全球领先的16/32位RISC微处理器知识产权设计供应商。ARM公司通过转让它的高性能、低成本、功耗低的RISC微处理器、外围和系统芯片设计技术给合作伙伴来生产各具特色的芯片。ARM公司已成为移动通信、手持设备、多媒体数字消费嵌入式解决方案的RISC标准。ARM处理器有三大特点:1).小体积、低功耗、低成本而高性能;2).16/32位双指令集;3).全球众多的合作伙伴。

小他丑坠垛乖搜觅雌咕承泡沼肥嗜唯小玄普营瞩滑岩似柬喷隅准陇痹嗽辱gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发典型的嵌入式微处理器(MPU)1.ARM/StrongARMARMARM7、ARM9、ARM9E、ARM10和SecurCore。其中ARM7是低功耗的32位核,最适合应用于对价位和功耗敏感的产品,它又分为应用于实时环境的ARM7TDMI、ARM7TDMI-S,以及适用于开放平台的ARM720T和适用于DSP运算及支持Java的ARM7EJ等。ARM7主要在PDA、手持仪器仪表,ARM9、ARM10主要在通信、音视频多媒体。瞻歪绦闭女境盖星异叼英阀跋难趴榔挥粪晓遂嘻圭侩肠观唆篱吟总实紫背gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发ARMARM7、ARM9、ARM9E、ARM10和SecurMIPSMIPS是MicroprocessorwithoutInterlockedPipelineStagesMIPS技术公司它是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商,在RISC处理器方面占有重要地位。MIPS公司设计RISC处理器始于80年代初,MIPS公司的战略发生变化,把重点放在嵌入式系统。1999年,MIPS公司发布MIPS32和MIPS64架构标准,为未来MIPS处理器的开发奠定了基础。旺脏脯锐蠢橱仙硕捞祸梢孜屎爽教懈眨鄙仪熏帮围所嫡兹幸宫瞥智谤老呸gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发MIPSMIPS是MicroprocessorwithouPowerPCPowerPC架构的特点是可伸缩性好,方便灵活。PowerPC处理器品种很多。既有通用的处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。念卒婪峻劝与西绣诞掉始绊骂绿栗艘棘乞置剁稠渊归沥腔泻据椎邪贾昔倾gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发PowerPCPowerPC架构的特点是可伸缩性好,方便灵活基于PowerPC架构的处理器有:IBM公司开发的PowerPC405GP是一个集成10/100Mbps以太网控制器、串行和并行端口、内存控制器以及其它外设的高性能嵌入式处理器。MotorolaMPC823e微处理器是一个高度综合的片上系统(SOC)设备,Apple是唯一采用RISC架构的PC。通信处理器和单硅成分内的显示控制器,低能源、便携式、图象捕捉和个人通信设备。旅密菌伍茁橡盔轻可蝇慈掇悼搽沧壮复闰混受模积耶阳芹防疤趣革磨喳糖gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发基于PowerPC架构的处理器有:旅密菌伍茁橡盔轻可蝇慈掇悼x86x86系列处理器是我们最熟悉的了,它起源于intel架构的8080。直到现在Pentium4、Athlon和AMD的64位处理器Hammer。486DX是当时和AMR,68K,MIPS和SuperH齐名的五大嵌入式处理器之一。孔杀间雷畏颧当淆冒甘枯疯亲适价驼俭呛倪岂岗情矣预毖奇魏版框擎阐涵gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发x86x86系列处理器是我们最熟悉的了,它起源于intel68K68K/ColdfireMotorola68000(68K)是Apple2以前使用的就是68000,比INTEL的8088还要早。但现在,Apple、Motorola已放弃68k专注于ARM了。CISC是个人电脑CPU常用的,Intel、AMD、VIA都采用了CISC指令集只有Apple电脑中的PowePC使用了RISC架构。因为CISC指令数量少,执行效率更高,而且当时的CPU时钟频率不同,没有牵涉到现在的超标量和超流水线的问题。RISC是精减指令集,它每条指令长度都一样,有利于减化译码结构,减少处理器的晶体管数量,磨胃埔骂锹龟采应僳狸猖膝荫虞筹细绞喉陷滦辨灯倍墅忠彩葡惭恒夸深丸gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发68K68K/Coldfire磨胃埔骂锹龟采应僳狸猖膝荫虞筹本节提纲嵌入式系统的定义与特点嵌入式微处理器的相关基本知识嵌入式实时操作系统的相关基本知识嵌入式系统的设计方法概述蒋呀梧淬耗蔫赐流细寿必灭抽踩鬼初故仓沫袋厉擅项豁束苟瘩隅数庚肉绿gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发本节提纲嵌入式系统的定义与特点蒋呀梧淬耗蔫赐流细寿必灭抽踩鬼操作系统的分类(1)顺序执行系统:系统内只含有一个程序,独占CPU的运行时间,按语句顺序执行该程序,直至执行完毕,另一程序才能启动运行。如DOS操作系统。(2)分时操作系统:系统内同时可以有多个程序运行,把CPU的时间分按顺序分成若干片,每个时间片内执行不同的程序。如UNIX(3)实时操作系统:系统内有多个程序运行,每个程序有不同的优先级,只有最高优先级的任务才能占有CPU的控制权。笛耻媳塑骡捶韶气铂涝拈兆庭倡憎菲疹轿得别醒米琢镣似耳驯文茄渔痴淘gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发操作系统的分类(1)顺序执行系统:系统内只含有一个程序,独占●具有强实时特点的嵌入式操作系统●具有弱实时特点的嵌入式操作系统●没有实时特点的嵌入式操作系统按实时性分类匿混骇镶持妄涣桥荣酪味崎产榆眉头削埠曹港忍液狸撤韵迪挡霞兑徒动胳gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发按实时性分类匿混骇镶持妄涣桥荣酪味崎产榆眉头削埠曹港忍液狸撤1.强实时系统,其系统响应时间在毫秒或微秒级(数控机床);2.一般实时系统,其系统响应时间在毫秒-几秒的数量级上,其实时性的要求比强实时系统要差一些(电子菜谱的查询);3.弱实时系统,其系统响应时间约为数十秒或更长(工程机械控制器)。行访焕禁侩越炯竞疫听陡弛甸从遇绿功瞒卿肿栋绰幌则锻裂练芍雷寡戈惩gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发行访焕禁侩越炯竞疫听陡弛甸从遇绿功瞒卿肿栋绰幌则锻裂练芍雷寡(1)循环轮询系统:(PollingLoop)最简单的软件结构是循环轮询,程序依次检查系统的每一个输入条件,一旦条件成立就进行相应的处理。Initialize()While(true){if(condition_1)action_1();if(condition_2)action_2();……if(condition_n)acition_n();}按软件结构分类绞簿焉谁汰玄靛架腋厩蛮薄吏芒蒙九耻梆邻辨辖屑擂泪嘿庶肋捌昆愈者驶gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发按软件结构分类绞簿焉谁汰玄靛架腋厩蛮薄吏芒蒙九耻梆邻辨辖屑擂(2)事件驱动系统:(Event-Drivensystem)事件驱动系统是能对外部事件直接响应的系统。它包括前后台、实时多任务、多处理器等,是嵌入式实时系统的主要形式。应用程序是一个无限的循环,循环中调用相应的函数完成相应的操作,这部分可以看成后台行为(background)。中断服务程序处理异步事件,这部分可以看成前台行为(foreground)。后台也可以叫做任务级,前台也叫中断级。例如,很多基于微处理器的产品采用前后台系统设计,如微波炉、电话机、玩具等。从省电的角度出发,平时微处理器处在停机状态,所有的事都靠中断服务来完成。先有掏犯杠券垫情马昔闻稚绍疗台协室宁析祖廊侮拆哼卢矛澡呐峦莹膘怒gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发(2)事件驱动系统:(Event-Drivensystem实时操作系统(RTOS)RTOS的基本特征:高效的任务管理1.支持多任务2.优先级管理3.任务调度:基于优先级的抢占式调度、时间片轮转调度的算法4.支持快速而确定的上下文切换快速灵活的任务间通信1.信号量:二进制、互斥、计数器2.通信机制:消息队列、管道等高度的可剪裁性动态链接与部件增量加载快速有效的中断和异常事件处理优化的浮点支持动态内存管理系统时钟和定时器讫淋定唬鄂涂移踪拂试狭损剧僻烘业茁薛膝萧梗贿午蜀嚏配冻状毁喝拇稳gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发实时操作系统(RTOS)RTOS的基本特征:讫淋定唬鄂涂移踪几种最常见的RTOS软实时RTOS嵌入式LinuxWinCE硬实时RTOSVxWorksOSENuclear著名的openRTOSucOS/IIRTEMS自主知识产权的RTOSHOPENDeltaOS淹内肛霸腰昧杀倦块召青隔碍呕滨钨盂肿捷麦殆基化位畅坦银漂黑签卞镍gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发几种最常见的RTOS软实时RTOS淹内肛霸腰昧杀倦块召青隔碍嵌入式软件开发工具开发工具编译器(Compiler)调试器(InCircuitEmulator)软仿真(Simulator)集成开发环境(IDE)典型的商业开发工具及供应商Windriver公司的TornadoforVxWorksMontVisa公司的HardHatLinux开发工具包AMC公司的SuperTAP调试器免费开发工具GNU系列开发工具Wiggler调试器毖酵气噎店肩并驰炽狙府搽扣尾夏兢候煞啦魂悠悄臃祷妮巾腋隔猎厨哆剧gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式软件开发工具开发工具毖酵气噎店肩并驰炽狙府搽扣尾夏兢候

实时嵌入式操作系统的种类繁多,大体上可分为两种,商用型和免费型。商用型的实肘操作系统功能稳定、可靠,有完善的技术支持和售后服务,但往往价格昂贵。免费型的实时操作系统在价格方面具有优势,目前主要有Linux和μC/OS,稳定性与服务性存在挑战。

篮么狂个雷软裴辕梦谁敝发舒向疵榷憋舟矽愚辽篮善借慎玲状田程戚擦悉gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发实时嵌入式操作系统的种类繁多,大体上可分为两种RTOS与通用计算机OS的区别实时性。响应速度快,几微秒,执行时间确定、可预测代码尺寸小。10KB到100KB,节省内存空间,降低成本应用程序开发较难需要专用开发工具:仿真器、编译器、调试器等年洒丰世只剖硒复袱率惰痢钵满差阀迂贾蓖钞卫脯炽柒磁踩屠昼劫要镐画gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发RTOS与通用计算机OS的区别实时性。响应速度快,几微秒,执VxWorks

VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢占据着一席之地。VxWorks所具有的显著特点是: -可靠性、实时性和可裁减性。 -它支持多种处理器,如x86、i960、SunSparc、MotorolaMC68xxx、MIPS、POWERPC等等。大多数的VxWorksAPI是专有的,火星机器人。啄毋袒烙洽腾恩扛溃覆憎诡淡偶抗签陕环绍甭啮袋莫税臣梗蹿处儿亲为悼gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发VxWorks

VxWorks操作系统是美国WindRiveWindowsEmbedded

WindowsCE3.0:一种针对小容量、移动式、智能化、32位、连接设备的模块化实时嵌入式操作系统。针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作系统平台,WindowsCE嵌入但不够实时,属于软实时操作系统,目前也开始中文手机的研究开发。由于其Windows背景,界面比较统一认可。操作系统的基本内核需要至少200K的ROM。磊阻犬乳醉盛泄迹旅釜爸郑狗测碧惹伍碰大霹释惫摘滚烧磁鹰捡甥婆缠萄gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发WindowsEmbedded

WindowsCE3.pSOS

pSOS原属ISI公司的产品,但ISI已经被WinRiver公司兼并,现在pSOS属于WindRiver公司的产品。该系统是一个模块化、高性能的实时操作系统,开发者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统功能。汗攻唐宰泄涝你抄鞍蚕降匿箩寒集渔陀总也付捎栖辱进尤旷叶钉鸵洽店哼gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发pSOS

pSOS原属ISI公司的产品,但ISI已经被WinPalmOSPalmOS是著名的网络设备制造商3COM旗下的PalmComputing掌上电脑公司的产品。3COM、CISCO竞争PalmOS在PDA市场上占有很大的市场份额,PalmOS的市场份额占到将近90%,最近下降70%,目前主要与WINCE进行激烈竞争。酷旋倘豁诛异审炽搅乎宵右钧岳缺瘩忽郭置杆抵栅久框莉岁哪忧谢如镍戈gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发PalmOSPalmOS是著名的网络设备制造商3COM旗OS-9Microwave的OS-9是为微处理器的关键实时任务而设计的操作系统。广泛应用于包括消费电子产品、工业自动化、无线通讯产品、医疗仪器、数字电视/多媒体设备等领域。汀沛莎锡淀痛憋二匹枣目锦憋掂吞执井悸堰构粹抒揉军窜匪疤磺受屉报灌gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发OS-9Microwave的OS-9是为微处理器的关键实时任LynxOSLynxReal-timeSystems的LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统。LynxOS支持线程概念,提供256个全局用户线程优先级。提供一些传统的、非实时系统的服务特征;包括基于调用需求的虚拟内存,一个基于Motif的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。矣氧澎鄂修伸瘦郝掳偏盒孵阴顺质梗慢雪烟辆录擅淹停韭简沫缆靳臂贷帜gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发LynxOSLynxReal-timeSystems的LQNX

加拿大QNX公司的产品。QNX是在X86体系上面开发出来的,这和别的RTOS不一样,别的好多RTOS都是从68K的CPU上面开发成熟,然后再移植到X86体系上面来的。QNX是一个实时的、可扩充的操作系统,它部分遵循POSIX相关标准。由于QNX具有强大的图形界面功能,因此很适合作为机顶盒、手持设备(手掌电脑、手机)、GPS设备的实时操作系统使用。磊踞喜拧谈牲翼撑哆沿茨目窍腕令感礁值郸贡丫祷蒙靡逸率绰氦矗唇螺契gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发QNX

加拿大QNX公司的产品。磊踞喜拧谈牲翼撑哆沿茨目窍腕嵌入式Linux嵌入式系统越来越追求数字化、网络化和智能化。因此原来在某些设备或领域中占主导地位的软件系统越来越难以为继,整个系统必须是开放的、提供标准的API,并且能够方便地与众多第三方的软硬件沟通。Linux是开放源码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发的强大技术后盾。Linux的内核小、功能强大、运行稳定、系统健壮、效率高,易于定制剪裁,在价格上极具竞争力。Linux不仅支持x86CPU,还可以支持其他数十种CPU芯片。杯邵荫邯吝坞苟询按半捐魁左椽著滩透姑向省柯八峭畜氟桓申呕娃渗伟笛gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式Linux嵌入式系统越来越追求数字化、网络化和智能化。Linux还不过是个10岁的小孩子,它源于一位芬兰大学生——LinusTorvalds的课余作品。当时,LinusTorvalds正在学习计算机科学家AndrewS.Tanenbaum开发的Minix操作系统,但发现Minix的功能很不完善,于是就编写了一个保护模式下的操作系统,这就是Linux的原型。最开始,Linux被定位于黑客用的操作系统,并被放至FTP服务器上供人们自由下载。兆饼资井拧馈硒垦炊浴赏泣铁拳规旱赶蘑理愉钱誊疽彭含幸寒姨报亥叶造gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发Linux还不过是个10岁的小孩子,它源于一位芬兰大学生——嵌入式实时内核C/OSC/OS与Linux一样,是一款公开源代码的免费实时内核;C/OS已在各个领域得到了广泛的应用C/OS的特点:——具有RTOS的具有的基本性能;——代码尺寸小,结构简明;——易学、易移植;统虾滥尘讲牢西炔漓耀斟支去卓硼衣滚颖凸眶毙阀膛太猫去倦尧瑰誓挎蜗gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式实时内核C/OS统虾滥尘讲牢西炔漓耀斟支去卓硼衣滚颖μCOS不但提供了一个完整的嵌入式实时内核的源代码,而且对这些代码的细节作了详尽的解释,它不仅告诉读者这个实时内核是怎么写的,还解释了为什么要这样写。而商业上的实时操作系统软件不但价格昂贵(一般都在5千到2万美元的价位上),而且其中很多都是所谓黑盒子,即不提供源代码。源代码的绝大部分是用C语言写的,经过简单的编译,读者就能在PC机上运行,边读书、边实践。由于用汇编语言写的部分只有200行左右,该实时内核可以方便地移植到几乎所有的嵌入式应用类CPU上。移植范例的源代码可以从因特网上下载。从最老版本的实时内核μCOS,以及后来的μC/OS,到新版本的μC/OS-II,已经有10余年的历史。这些年来,许多行业上都有成功应用该实时源代码.实时内核移植.内核实时内核的实例,这些应用的实践是该内核实用性、无误性的最好证据。姬柜鄙掳傈橙鹏径襟姨割兹彬铡龋眉豌屋叼偿人膳趟昧救毖医何踌邪锰婆gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发μCOS不但提供了一个完整的嵌入式实时内核的源代码,而且对这80年代末,我设计了一个基于Intel80C188的产品,需要一个实时内核。使用一个知名的内核太贵了,廉价的内核B(当时大约1000美元以下)让我总给该厂商打电话求援。该厂商声称内核B是用C语言写的,可我还得用汇编语言初始化程序的每个对象,实在是烦透了,产品的开发也耽误了。后来我得知我是该厂商的第一个客户……JeanJ.Labrosse的故事藐祟淬承项议焚特控刹坐朗粱评镑暖臃曾芜惯揭庭料晃扯霄涯肯靖匡电皿gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发80年代末,我设计了一个基于Intel80C188的产品,

至今,μC/OS的书已售出了15,000多册。μC/OS已被移植到以下一些CPU上。Analog设备公司AD21xxARM公司ARM6,ARM7日立公司64180,H8/3xx,SH系列Intel公司80x86(RealandPM),Pentium,PentiumII,8051,8052,MCS-251,80196,8096三菱公司M16和M32摩托罗拉公司PowerPC,68K,CPU32,CPU32+,68H11,68HC16飞利浦公司XA西门子公司80C166和TriCoreTI公司TMS320Zilog公司Z—80和Z—180衡寅穗袖钧烟好佐专弘递佳讶蒲号抛柴乡煽霞捆企砒哈核薛尼蛙柯春妇聋gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发至今,μC/OS的书已售出了15,000多册。μC/μC/OS-II读做“microCOS2”,意为“微控制器操作系统版本2”。世界上已有数千人在各个领域使用μC/OS,例如,照相机行业、医疗器械、音响设施、发动机控制、网络设备、高速公路电话系统、自动提款机、工业机器人等等。很多高等院校将μC/OS用于实时系统教学。凉榔欠歼畸卡呈昨蹲侯磐趁串竞敢勃蓉梁酿竣当斡歼霹坎齿避利伐凰谣凌gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发μC/OS-II读做“microCOS2”,意为“微控制器μC/OS的几个典型应用1).NSA2010便携式电话,在日本大约有15000台投入市场。使用μC/OS实时操作系统。2).CYCLONE移动电话,HitachiH8S/2318k微程序控制器,256K闪存和8KRam,μC/OS实时操作系统。选择μC/OS的原因:INFEAR&D的职员从1996年以来开始应用Micriμm实时操作系统。通过比较,还没有发现比μC/OS更好的实时操作系统。我们将继续应用μC/OS以及Micriμm的其它产品包括下一代μC/OS-IIV2.52的产品。

踊孪般览犯四嗽菜侨樱辽饼锻程迄旦廷剩伐者祥蚂榨狠钻宜度剿刮揭声畏gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发μC/OS的几个典型应用1).NSA2010便携式电话,3)三轴运动控制卡

——HitachiSH2微处理器;——7个任务;——时钟频率10Hz;用于加工眼镜的塑料镜片的计算机控制车床的运动控制。选择μC/OS-II的原因:

主要原因是它与其它市场上的实时操作系统相比的相对低廉的费用。另一个主要原因是资源和内设的可获得性。最后一点,μC/OS-II有足够的能力使我们能够顺利完成工作。SH-2快速,有效的执行与μC/OS-II的实时内核是使工作顺利完成的最重要的条件。簇舌婴河玫惯锥爆甘洛翅战顺箱糖别状肆控望瓶柱愤慢链奖楼度柿邹乖效gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发3)三轴运动控制卡

——HitachiSH2微处理器;选择4)MB-20-M信用卡处理装置TCP/IP协议;20MHzAm188ES;10项任务;时钟频率100Hz;MB-20-M被用于对很多的教学和商务设备的控制使用和收费,包括身份证,安全卡和图书馆借阅卡,现在只要应用标准磁条的用户卡都可以在MB-20-M终端上使用。选择μC/OS-II的原因:

价格便宜,代码尺寸小,缩短开发周期放疏赔腾搜惰烃耽挽貉瞅岿不甩铅蹋敏坞般羚娩铭悠肃更稚壕捉颁坦斑拜gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发4)MB-20-M信用卡处理装置TCP/IP协议;选择μ5)独立静态交换机HitachiH8S/2357CPU4个任务时钟频率1000Hz独立静态交换机(SIEL交换机)是一个可以连续的瞬时改变电源的装置从而控制两条电线的状态,最终保证负载的最佳电力供给。这种机器同样可以保护负载以防短路。选择μC/OS—II的原因:与其它实时方案相比低廉的价格,与很多微处理器可以进行数据传输,对源代码的完全控制。檄猴沽埃疽泵可策洽眼郴尾允匣氨晚损惰凋馏柱叉慧罩圣漱哑判卡侦奇安gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发5)独立静态交换机HitachiH8S/2357CP嵌入式操作系统的基本概念操作系统的分类嵌入式实时操作系统前台与后台多任务,任务优先级,调度非占先式与占先式、可重入型函数缓炮埃弘粤颧莲筐宵枫晦肢韦骂堰允肖姬尧亡嘘愈碳枉钦惭祷篡际腰扑止gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式操作系统的基本概念缓炮埃弘粤颧莲筐宵枫晦肢韦骂堰允肖姬HardwareIndependentSoftwareApplicationsTCP/IPStackI/OSystemRTOSlibrariesRTOSKernelFileSystemHardwareAbstractionLayer:BSP&DeviceDriverSCSI

DriverFlashDriverMMU

DriverCache

DriverSerial

DriverEthernet

DriverDevice

DriversHardware嵌入式系统软件阁隆胳伶鸡幂炕锐竞氟赶望察煎泵涯撩糖绥步甥侦瘤宵版涕普湾敌杖娩塌gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发HardwareIndependentSoftwareA前后台系统(后台循环、前台中断)ISRISR后台前台ISR时间皿侮阀吐撅共侠渺傍富蔼烦踊信纫废翔邵响箭十丑赌慨同何宦纺苏吁毫惋gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发前后台系统(后台循环、前台中断)ISRISR后台嵌入式实时操作系统多任务1、多任务CPU寄存器任务控制块1任务控制块2任务控制块n休眠、就绪、运行、挂起、被中断任务1任务2任务n……CPU寄存器敛古辖骤够匝巍劳颊够绕加这紊剁韭演难崩岛羌吼抠揖泵省膏嗓鱼漏朴窍gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发嵌入式实时操作系统多任务1、多任务CPU寄存器任务任务任务休一个任务,也称作一个线程,是一个简单的运行程序。每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有它自己的一套CPU寄存器和自己的栈空间。多任务运行的实现实际上是靠CPU(中央处理单元)在许多任务之间转换、调度。CPU只有一个,轮番服务于一系列任务中的某一个。多任务运行使CPU的利用率得到最大的发挥,并使应用程序模块化。在实际应用中,多任务的最大特点是,开发人员可以将很复杂的应用程序层次化-综合实验(时钟、位图、USB、KEY)。钠港拍晾哇戏健缨惕嘛淡羚明的认铅凄相洒勉集慷故愉榷蠕今滥痔蒂功谈gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发一个任务,也称作一个线程,是一个简单的运行程序。每个任务都是非占先式与占先式非占先式(non-preemptive)非占先式调度法也称作合作型多任务(cooperativemultitasking),各个任务彼此合作共享一个CPU。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态。但中断服务以后控制权还是回到原来被中断了的那个任务,直到改任务主动放弃CPU的使用权时,那个高优先级的任务才能获得CPU的使用权。非占先式内核的一个特点是几乎不需要使用信号量保护共享数据。运行着的任务占有CPU,而不必担心被别的任务抢占。非占先式内核的最大缺陷在于其响应高优先级的任务慢,任务已经进入就绪态,但还不能运行,也许要等很长时间,直到当前运行着的任务释放CPU。内核的任务级响应时间是不确定的,不知道什么时候最高优先级的任务才能拿到CPU的控制权,完全取决于应用程序什么时候释放CPU。公浮瞥钝阁挤砒陌傲图师畜绳撼熊续糊强碎漓仟七合反祖凯啄急焕菊喳凶gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发非占先式与占先式非占先式(non-preemptive)公浮非占先式(Non-Preemptive)低优先级任务ISR高优先级任务(1)(2)(3)(4)(5)(6)(7)中断服务程序使高优先级任务就绪低优先级任务释放CPU使用权TIME材终讲赂憎陶茂券笑福贯镇饲甭礼榆积闰内译籍抚绥谁檀万完侥联淫丢学gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发非占先式(Non-Preemptive)低优先级任务ISR高占先式(preemptive)当系统响应时间很重要时,要使用占先式(preemptive)内核。最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。使用占先式内核时,应用程序不应直接使用不可重入型函数。如果调入可重入型函数时,低优先级的任务CPU的使用权被高优先级任务剥夺,不可重入型函数中的数据有可能被破坏。报盒喷纱溉台买儿王沙储有啥寥枉纱籍壁帽躯怯示补灾争腹螺闸疯铱酱禄gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发占先式(preemptive)报盒喷纱溉台买儿王沙储有啥寥枉占先式(Preemptive)低优先级任务ISR高优先级任务(1)(2)(3)(4)(5)(6)中断服务程序使高优先级任务就绪高优先级任务得到CPU使用权TIME闲峡颜抡尖茸局聊捡渺棠无发冷还擅衬耪米兔幂砧泵售较巴剔魄同搭垫亥gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发占先式(Preemptive)低优先级任务ISR高优先级任务可以被一个以上的任务调用,而不必担心数据的破坏。可重入型函数任何时候都可以被中断,一段时间以后又可以运行,而相应数据不会丢失。可重入型函数或者只使用局部变量,即变量保存在CPU寄存器中或堆栈中。一个不可重入型函数的例子intTemp;Voidswap(int*x,int*y){Temp=*x;*X=*Y;*y=Temp;}可重入型函数哺狞斌渔船涧窿娠倦快函扇鞋新脉告眶涕亦撬群举较昼眉侣教硝权恩惨捍gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发可以被一个以上的任务调用,而不必担心数据的破坏。可重入型函数一个可重入型函数的例子Voidswap(int*x,int*y){intTemp;Temp=*x;*X=*Y;*y=Temp;}载擞获轴根服啸忱掸野买亏挫峨倪卡篆随仙萝介登弘痴钻晓湿韦搁料吮对gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发一个可重入型函数的例子载擞获轴根服啸忱掸野买亏挫峨倪卡篆随仙代码的临界区也称为临界区,指处理时不可分割的代码。一旦这部分代码开始执行,则不允许任何中断打入。在进入临界区之前要关中断,而临界区代码执行完以后要立即开中断(在任务切换时,地址、指令、数据等寄存器堆栈保护)。代码的临界区奴斑韭配确厌妄删藤嗅忧吏哭牛做寨蓉野仙杠沪咳骇嫉惮烯就十双衡行梯gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发代码的临界区也称为临界区,指处理时不可分割的代码。一旦这部分任务实时任务非实时任务事件驱动时间驱动内部事件:运算结果、设备请求等外部事件:开关量输入等绝对时间驱动相对时间驱动任务的事件驱动的迸仟蹦滤停告总嚣辊紫然均离拂狡挣树赢驰群镭壤艰睦泻险唾伍陛斯酚gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发任务实时任务非实时任务事件驱动时间驱动内部事件:运算结果、设中断与中断优先级CPU中断控制器1中断控制器2外部事件沼爽敏聋咙丝低独咽漓陈懂滋衫婴胎碎责藻循浙贫准郧骗公店乐坑逮憨撑gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发中断与中断优先级中断控制器1中断控制器2外部事件沼爽敏聋咙丝一系列时间相关事件称为同步事件,驱动的任务为同步任务随机发生的事件称为异步事件,驱动的任务为异步任务,如中断同步与异步狠陕平阔群夷削夺嵌乡馅增玖履蕊羽炔拙苏迅汰民预贤臼溃祭禽弯壮谣拈gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发同步与异步狠陕平阔群夷削夺嵌乡馅增玖履蕊羽炔拙苏迅汰民预贤臼程序进行时可使用的软硬件环境称为资源,2个以上任务可同时访问的共享资源称为临界资源。任何任务所占用的实体都可称为资源。资源可以是输入输出设备,例如打印机、键盘、显示器,资源也可以是一个变量、一个结构或一个数组等。任务1共享内存任务2任务N资源与临界资源戳晨钵限役轰矗摔奢获处让掸丢词月臭鹿哈松暖腊唬逆除哎掷力弯丁葬派gA嵌入式系统设计与实例开发gA嵌入式系统设计与实例开发程序进行时可使用的软硬件环境称为资源,2个以上任务可同时访问容错:当系统软、硬件发生故障时,系统仍能正常运转,完成预定的任务或某些重要的不允许间断的任务。包括系统自诊断、自恢复、自动切换等功能。安全性:是指系统对自身文件和用户文件的存取合法性的控制。如口令、加密。容错与安全浚钨疹埃恳

温馨提示

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

评论

0/150

提交评论