嵌入式软件工程师考试大纲中级Word下载.docx
- 文档编号:22616749
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:16
- 大小:123.82KB
嵌入式软件工程师考试大纲中级Word下载.docx
《嵌入式软件工程师考试大纲中级Word下载.docx》由会员分享,可在线阅读,更多相关《嵌入式软件工程师考试大纲中级Word下载.docx(16页珍藏版)》请在冰豆网上搜索。
嵌入式系统的硬件/软件特征
嵌入式系统的硬件必须根据具体的应用任务,以功耗、成本、体积、可靠性和处理能力等为指标来选择。
嵌入式系统的核心是系统软件和应用软件,由于存储空间有限,因而要求软件代码紧凑、可靠,大多对实时性有严格要求。
早期的嵌入式系统设计方法,通常采用"
硬件优先"
原则。
即在只粗略估计软件任务需求的情况下,首先进行硬件设计与实现。
然后,在此硬件平台之上,再进行软件设计。
因而很难达到充分利用硬件/软件资源,取得最佳性能的效果。
同时,一旦在测试时发现问题,需要对设计进行修改时,整个设计流程就要重新进行,对成本和设计周期的影响很大。
这种传统的设计方法只能改善硬件/软件各自的性能,在有限的设计空间不可能对系统做出较好的性能综合优化,在很大程度上依赖于设计者的经验和反复实验。
20世纪90年代以来随着电子系统功能的日益强大和微型化,系统设计所涉及的问题越来越多,难度也越来越大。
同时硬件和软件也不再是截然分开的两个概念,而是紧密结合、相互影响的。
因而出现了软硬件协同(codesign)设计方法,即使用统一的方法和工具对软件和硬件进行描述、综合和验证。
在系统目标要求的指导下,通过综合分析系统软硬件功能及现有资源,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能低代价的优化设计方案。
应用领域
嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:
工业控制
基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。
就传统的工业控制产品而言,低端型采用的往往是8位单片机。
但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。
交通管理
在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。
目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。
信息家电
这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。
即使你不在家里,也可以通过电话线、网络进行远程控制。
在这些设备中,嵌入式系统将大有用武之地。
家庭智能管理系统
水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。
目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
POS网络及电子商务
公共交通无接触智能卡(ContactlessSmartcard,CSC)发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活,到时手持一卡就可以行遍天下。
环境工程与自然
水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网,水源和空气污染监测。
在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。
机器人
嵌入式芯片的发展将使机器人在微型化,高智能方面优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。
这些应用中,可以着重于在控制方面的应用。
就远程家电控制而言,除了开发出支持TCP/IP的嵌入式系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。
同样的道理,所有基于网络的远程控制器件都需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。
所以,开发和探讨嵌入式系统有着十分重要的意义。
现状和发展趋势
发展现状
随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。
美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(电脑)工具将是PC和因特网之后最伟大的发明。
我国著名嵌入式系统专家沈绪榜院士98年11月在武汉全国第11次微机学术交流会上发表的《计算机的发展与技术》一文中,对未来10年以嵌入式芯片为基础的计算机工业进行了科学的阐述和展望。
1999年世界电子产品产值已超过12000亿美元,2000年达到13000亿美元,预计2005年,销售额将达18000亿美元。
进入20世纪90年代,嵌入式技术全面展开,目前已成为通信和消费类产品的共同发展方向。
在通信领域,数字技术正在全面取代模拟技术。
在广播电视领域,美国已开始由模拟电视向数字电视转变,欧洲的DVB(数字电视广播)技术已在全球大多数国家推广。
数字音频广播(DAB)也已进入商品化试播阶段。
而软件、集成电路和新型元器件在产业发展中的作用日益重要。
所有上述产品中,都离不开嵌入式系统技术。
象前途无可计量的维纳斯计划生产机顶盒,核心技术就是采用32位以上芯片级的嵌入式技术。
在个人领域中,嵌入式产品将主要是个人商用,作为个人移动的数据处理和通讯软件。
由于嵌入式设备具有自然的人机交互界面,GUI屏幕为中心的多媒体界面给人很大的亲和力。
手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像已取得初步成效。
目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,日用范围也将日益广阔。
对于企业专用解决方案,如物流管理、条码扫描、移动信息采集等,这种小型手持嵌入式系统将发挥巨大的作用。
自动控制领域,不仅可以用于ATM机,自动售货机,工业控制等专用设备,和移动通讯设备结合、GPS、娱乐相结合,嵌入式系统同样可以发挥巨大的作用。
近期长虹推出的ADSL产品,结合网络,控制,信息,这种智能化,网络化将是家电发展的新趋势。
硬件方面,不仅有各大公司的微处理器芯片,还有用于学习和研发的各种配套开发包。
目前低层系统和硬件平台经过若干年的研究,已经相对比较成熟,实现各种功能的芯片应有尽有。
而且巨大的市场需求给我们提供了学习研发的资金和技术力量。
从软件方面讲,也有相当部分的成熟软件系统。
国外商品化的嵌入式实时操作系统,已进入我国市场的有WindRiver、Microsoft、QNX和Nuclear等产品。
我国自主开发的嵌入式系统软件产品如科银(CoreTek)公司的嵌入式软件开发平台DeltaSystem,中科院推出的Hopen嵌入式操作系统(虽然还不够完善)。
同时由于是研究热点,所以我们可以在网上找到各种各样的免费资源,从各大厂商的开发文档,到各种驱动,程序源代码,甚至很多厂商还提供微处理器的样片。
这对于我们从事这方面的研发,无疑是个资源宝库。
对于软件设计来说,不管是上手还是进一步开发,都相对来说比较容易。
这就使得很多生手能够比较快的进入研究状态,利于发挥大家的积极创造性。
今天嵌入式系统带来的工业年产值已超过了1万亿美元,1997年来自美国嵌入式系统大会(EmbeddedSystemConference)的报告指出,未来5年仅基于嵌入式计算机系统的全数字电视产品,就将在美国产生一个每年1500亿美元的新市场。
美国汽车大王福特公司的高级经理也曾宣称,“福特出售的‘计算能力’已超过了IBM”,由此可以想见嵌入式计算机工业的规模和广度。
1998年11月在美国加州举行的嵌入式系统大会上,基于RTOS的EmbeddedInternet成为一个技术新热点。
在国内,“维纳斯计划”和“女锅计划”一度闹得沸沸扬扬,机顶盒、信息j家电这两年更成了IT热点,而实际上这些都是嵌入式系统在特定环境下的一个特定应用。
据调查,目前国际上已有两百多种嵌入式操作系统,而各种各样的开发工具、应用于嵌入式开发的仪器设备更是不可胜数。
在国内,虽然嵌入式应用、开发很广,但该领域却几乎还是空白,只有三两家公司和极少数人员在从事这方面工作。
由此可见,嵌入式系统技术发展的空间真是无比广大。
发展趋势
信息时代,数字时代使得嵌入式产品获得了巨大的发展契机,为嵌入式市场展现了美好的前景,同时也对嵌入式生产厂商提出了新的挑战,从中我们可以看出未来嵌入式系统的几大发展趋势:
1.嵌入式开发是一项系统工程,因此要求嵌入式系统厂商不仅要提供嵌入式软硬件系统本身,同时还需要提供强大的硬件开发工具和软件包支持。
目前很多厂商已经充分考虑到这一点,在主推系统的同时,将开发环境也作为重点推广。
比如三星在推广Arm7,Arm9芯片的同时还提供开发板和版及支持包(BSP),而WindowCE在主推系统时也提供EmbeddedVC++作为开发工具,还有Vxworks的Tonado开发环境,DeltaOS的Limda编译环境等等都是这一趋势的典型体现。
当然,这也是市场竞争的结果。
2.网络化、信息化的要求随着因特网技术的成熟、带宽的提高日益提高,使得以往单一功能的设备如电话、手机、冰箱、微波炉等功能不再单一,结构更加复杂。
这就要求芯片设计厂商在芯片上集成更多的功能,为了满足应用功能的升级,设计师们一方面采用更强大的嵌入式处理器如32位、64位RISC芯片或信号处理器DSP增强处理能力,同时增加功能接口,如USB,扩展总线类型,如CANBUS,加强对多媒体、图形等的处理,逐步实施片上系统(SOC)的概念。
软件方面采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性,简化应用程序设计、保障软件质量和缩短开发周期。
如HP 3.网络互联成为必然趋势。
未来的嵌入式设备为了适应网络发展的要求,必然要求硬件上提供各种网络通信接口。
传统的单片机对于网络支持不足,而新一代的嵌入式处理器已经开始内嵌网络接口,除了支持TCP/IP协议,还有的支持IEEE1394、USB、CAN、Bluetooth或IrDA通信接口中的一种或者几种,同时也需要提供相应的通信组网协议软件和物理层驱动软件。
软件方面系统系统内核支持网络模块,甚至可以在设备上嵌入Web浏览器,真正实现随时随地用各种设备上网。
4.精简系统内核、算法,降低功耗和软硬件成本。
未来的嵌入式产品是软硬件紧密结合的设备,为了减低功耗和成本,需要设计者尽量精简系统内核,只保留和系统功能紧密相关的软硬件,利用最低的资源实现最适当的功能,这就要求设计者选用最佳的编程模型和不断改进算法,优化编译器性能。
因此,既要软件人员有丰富的硬件知识,又需要发展先进嵌入式软件技术,如Java、Web和WAP等。
5.提供友好的多媒体人机界面 嵌入式设备能与用户亲密接触,最重要的因素就是它能提供非常友好的用户界面。
图像界面,灵活的控制方式,使得人们感觉嵌入式设备就象是一个熟悉的老朋友。
这方面的要求使得嵌入式软件设计者要在图形界面,多媒体技术上痛下苦功。
手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像都会使使用者获得自由的感受。
目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,但一般的嵌入式设备距离这个要求还有很长的路要走。
嵌入式系统设计流程
嵌入式计算系统将必须紧密工作的硬件和软件相结合。
嵌入式系统设计人员已将擅长的设计方法发展到用软件来体现系统的部分功能。
早期的硬件/软件协同设计领域的研究人员强调同时进行设计的重要性。
系统体系结构一旦确定,硬件和软件可以相对独立地进行设计。
协同设计的目标是做出恰当的体系结构决策,允许在以后的实现阶段中独立完成。
好的体系结构决策需要恰当的分析方法,因为它们必须满足严格的度量标准,例如实时性能和功耗。
图1-15显示了一般的协同设计方法。
给定可行的规格说明,大部分方法进行初始系统分析来确定并行设计的可能性,并可能将规格说明分解为过程。
硬件/软件划分选取体系结构,其中一些操作直接由硬件完成,而另一些则由运行在可编程平台上的软件完成。
硬件/软件划分生成可以独立实现的模块设计。
那些模块随后结合,进行性能或功耗测试,并调试以创建最终的系统。
(点击查看大图)图1-15硬件/软件协同设计的设计流
基于平台的设计是片上系统通常采用的方法。
平台允许若干用户将相同的基本平台定制成不同的产品。
平台对于基于标准的市场尤其有用,在这种市场中,产品必须支持一些基本功能,而其他功能必须进行定制。
如图1-16所示,基于平台的设计是一个两阶段过程。
首先,平台的设计必须建立在系统总体需求(例如,某种标准)和平台应如何定制之上。
平台一旦设计完,就可用于设计产品。
产品利用平台的功能并添加自己的功能。
图1-16基于平台的设计
平台设计需要几个设计阶段:
应用特征分析将系统需求和软件模型变为基于平台硬件体系结构的更明确的需求。
设计空间搜索评估硬件选项。
体系结构模拟帮助评估和优化体系结构的细节。
必须为平台开发基础软件(硬件抽象层、操作系统端口、通讯、应用库、调试)。
平台的使用比较复杂,因为平台需要用户编程环境。
程序员已经习惯了标准平台上丰富的开发环境。
那些环境以图形用户界面的方式提供了很多工具—编译器、编辑器、调试器、模拟器。
然而丰富的编程环境通常只支持单处理器。
多处理器编程更困难,而异构多处理器相比同构多处理器更复杂。
平台开发人员必须提供工具使得软件开发人员能够使用平台。
有此工具来自CPU组件,其他工具必须从头开发。
由于调试访问是依赖于硬件的,因而它尤为重要和困难。
进程间通讯也很复杂,但它是应用开发人员的重要工具。
(二)嵌入式系统的硬件构成
了解嵌入式系统的组成结构、嵌入式处理器、存储器、输入输出设备、电源转换与管理、接口技术、扩展装置以及总线结构。
熟悉嵌入式微控制器、嵌入式DSP处理器、嵌入式微处理器、嵌入式片上系统的特点和应用场合。
嵌入式系统的组成结构、嵌入式处理器概念及分类。
嵌入式系统的组成
嵌入式系统由硬件和软件组成,两类不同的嵌入式系统结构模型见图1.1。
硬件是整个嵌入式操作系统和应用程序运行的平台,不同的应用通常有不同的硬件环境。
嵌入式系统的硬件部分包括处理器/微处理器、存储器、I/O接口及输入输出设备。
嵌入式系统的软件由嵌入式操作系统和应用程序组成。
嵌入式操作系统完成嵌入式应用的任务调度和控制等核心功能,嵌入式应用程序运行于操作系统之上(对于一些简单的嵌入式应用系统,应用程序可以不需要操作系统的支持,直接运行在底层,见图1.1(a)),利用操作系统提供的机制完成特定功能的嵌入式应用。
由于嵌入式系统的灵活性和多样性,图1.1中各个层次之间缺乏统一的标准,几乎每一个独立的系统都不一样,这样就给上层的软件设计人员开发应用程序带来了极大的困难。
1.2.1嵌入式系统的硬件组成
嵌入式系统的硬件组成见图1.2。
1.嵌入式处理器
嵌入式系统的核心是各种类型的嵌入式处理器,嵌入式处理器的体系结构经历了从CISC(复杂指令集)到RISC(精简指令集)和CompactRISC的转变,位数则由4位、8位、16位、32位逐步发展到64位。
现在常用的嵌入式处理器可分为低端的嵌入式微控制器(microcontrollerunit,MCU)、中高端的嵌入式微处理器(embeddedmicroprocessorunit,EMPU)、嵌入式DSP处理器(embeddeddigitalsignalprocessor,EDSP)和高度集成的嵌入式片上系统(systemonachip,SoC)。
目前几乎每个半导体制造商都生产嵌入式处理器,并且越来越多的公司开始拥有自主的处理器设计部门。
……全文
1.2.2嵌入式系统的软件组成
1.嵌入式操作系统
嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。
嵌入式操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源,能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来,能够提供库函数、驱动程序、工具集以及应用程序。
与通用操作系统相比较,嵌入式操作系统在系统的实时高效性、硬件的相关依赖性、软件固态化以及应用的专用性等方面具有较为突出的特点。
……
嵌入式系统的软件组成
2.嵌入式应用软件
嵌入式应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到用户预期目标的计算机软件。
由于用户任务可能有时间和精度上的要求,因此有些嵌入式应用软件需要特定嵌入式操作系统的支持。
嵌入式应用软件和普通应用软件有一定的区别,它不仅要求其准确性、安全性和稳定性等方面能够满足实际应用的需要,而且还要尽可能地进行优化,以减少对系统资源的消耗,降低硬件成本。
3.硬件抽象层HAL
硬件抽象层HAL(hardwareabstractionlayer)是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。
也就是说,可通过程序来控制所有硬件电路,如CPU、I/O、存储器等的操作。
这样就使得系统的设备驱动程序与硬件设备无关,从而大大提高了系统的可移植性。
4.板级支持包BSP
板级支持包BSP(boardsupportpackage)是介于主板硬件和操作系统中驱动层程序之间的一层,一般认为它属于操作系统的一部分,主要是实现对操作系统的支持,为上层的驱动程序提供访问硬件设备寄存器的函数包,使之能够更好地运行于硬件主板。
5.设备驱动程序
计算机系统中安装设备后,只有在安装相应的设备驱动程序之后才能使用,驱动程序为上层软件提供设备的操作接口。
上层软件只需调用驱动程序提供的接口,而不用理会设备的具体内部操作。
6.操作系统的应用程序接口函数API
API(applicationprogramminginterface)是一系列复杂的函数、消息和结构的集合体。
嵌入式操作系统下的API和一般操作系统下的API在功能、含义及知识体系上完全一致。
嵌入式应用软件是实现嵌入式系统功能的关键,对嵌入式系统软件和应用软件的要求也和通用计算机有所不同,嵌入式软件主要有以下一些特点。
●软件要求固化存储。
为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或嵌入式微处理器本身中,而不是存贮于磁盘等载体中。
●软件代码要求高质量、高可靠性。
尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。
为此,要求程序编写和编译工具的质量要高,以减小程序二进制代码长度、提高执行速度。
●系统软件(OS)的高实时性是基本要求。
在多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,这种任务调度只能由优化编写的系统软件来完成,因此,系统软件的高实时性是基本要求。
●嵌入式系统软件需要实时多任务操作系统开发平台(RTOS)。
为满足实时性应用需求、充分利用硬件资源、增强可靠性和便于开发,实时多任务操作系统成为嵌入式软件必须的系统软件。
●在嵌入式系统的软件开发过程中,采用C语言将是最佳的选择。
嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。
范围极其广阔,从最初的4位处理器,目前仍在大规模应用的8位单片机,到最新的受到广泛青睐的32位,64位嵌入式CPU。
嵌入式处理器
目前世界上具有嵌入式功能特点的处理器已经超过1000种,流行体系结构包括MCU,MPU等30多个系列。
鉴于嵌入式系统广阔的发展前景,很多半导体制造商都大规模生产嵌入式处理器,并且公司自主设计处理器也已经成为了未来嵌入式领域的一大趋势,其中从单片机、DSP到FPGA有着各式各样的品种,速度越来越快,性能越来越强,价格也越来越低。
目前嵌入式处理器的寻址空间可以从64kB到16MB,处理速度最快可以达到2000MIPS,封装从8个引脚到144个引脚不等。
嵌入式微处理器与普通台式计算机的微处理器设计在基本原理上是相似的,但是工作稳定性更高,功耗较小,对环境(如温度、适度、电磁场、振动等)的适应能力强,体积更小,且集成的功能较多。
在桌面计算机领域,对处理器进行比较时的主要指标就是计算速度,从33MHz主频的386计算机到现在3GHz主频的Pentium4处理器,速度的提升是用户最主要关心的变化,但在嵌入式领域,情况则完全不同。
嵌入式处理器的选择必须根据设计的需求,在性能、功耗、功能、尺寸和封装形式、SoC程度、成本、商业考虑等等诸多因素之中进行折中,择优选择。
编辑本段分类
根据其现状,嵌入式处理器可以分成下面几类:
嵌入式微处理器
嵌入式微处理器(MicroProcessorUnit,MPU) 嵌入式微处理器是由通用计算机中的CPU演变而来的。
它的特征是具有32位以上的处理器,具有较高的性能,当然其价格也相应较高。
但与计算机处理器不同的是,在实际嵌入式应用中,只
保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。
和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。
目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400、PowerPC、68000、MIPS、ARM/StrongARM系列等。
其中Arm/StrongArm是专为手持设备开发的嵌入式微处理器,属于中档的价位。
嵌入式微控制器
嵌入式微控制器(MicrocontrollerUnit,MCU) 嵌入式微控制器的典型代表是单片机,从70年代末单片机出现到今天,虽然已经经过了20多年的历史,但这种8位的电子器件目前在嵌入式设备
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 软件工程师 考试 大纲 中级