1.3 嵌入式计算机系统

1.3.1 嵌入式系统的定义与特点

1. 嵌入式系统定义

嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。

嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序编程。有时设计人员把这两种软件组合在一起。应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。

2. 嵌入式系统特点

嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点。

(1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。

(2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。

(3)可扩展的处理器结构,以能最迅速地开展出满足相应的最高性能的嵌入式微处理器。

(4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需功耗只有mW甚至μW级。

嵌入式计算机系统同通用型计算机系统相比具有以下特点。

(1)嵌入式系统通常是面向特定应用的嵌入式CPU,与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。

(2)嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

(3)嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中对处理器的选择更具有竞争力。

(4)嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。

(5)为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中。

(6)嵌入式系统本身不具备自主开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发。

1.3.2 嵌入式系统的结构

仅由一片微处理器芯片是不能构成一个应用系统的。系统的核心控制芯片,往往还需要与一些外围芯片、器件和控制电路有机地连接在一起,才构成了一个实际的嵌入式系统,进而再嵌入到应用对象的环境体系中,作为其中的核心智能化控制单元而构成典型的单片嵌入式应用系统。

嵌入式系统的结构通常包括三大部分:即能实现嵌入式对象各种应用要求的微处理器、全部系统的硬件电路和应用软件。

1. 微处理器

微处理器是嵌入式系统的核心控制芯片,由它实现对控制对象的测控、系统运行管理控制和数据运算处理等功能。

2. 系统硬件电路

根据系统采用微处理器的特性以及嵌入对象要实现的功能要求,而配备的外围芯片、器件所构成的全部硬件电路,通常包括以下几部分。

(1)基本系统电路。提供和满足单片机系统运行所需要的时钟电路、复位电路、系统供电电路、驱动电路、扩展的存储器等。

(2)前向通道接口电路。这是应用系统面向对象的输入接口,通常是各种物理量的测量传感器、变换器输入通道。根据现实世界物理量转换成电量输出信号的类型,如模拟电压电流、开关信号、数字脉冲信号等的不同,接口电路也不同。常见的有传感器、信号调理器、模/数转换器ADC、开关输入、频率测量接口等。

(3)后向通道接口电路。这是应用系统面向对象的输出控制电路接口。根据应用对象伺服和控制要求,通常有数/模转换器DAC、开关量输出、功率驱动接口、PWM输出控制等。

(4)人机交互通道接口电路。人机交互通道接口是满足应用系统人机交互需要的电路,有键盘、拨动开关、LED发光二极管、数码管、LCD液晶显示器、打印机等多种输入输出接口电路。

(5)数据通信接口电路。数据通信接口电路是满足远程数据通信或构成多机网络应用系统的接口。通常有RS232、PSI、I2C、CAN总线、USB总线等通信接口电路。

3. 系统的应用软件

系统应用软件的核心就是下载到微处理器中的系统运行程序。整个嵌入式系统全部硬件的相互协调工作、智能管理和控制都由系统运行程序决定。它可认为是嵌入式系统核心的核心,一个系统应用软件设计的好坏,往往也决定了整个系统性能的好坏。

系统软件是根据系统功能要求设计的,一个嵌入式系统的运行程序实际上就是该系统的监控与管理程序。对于小型系统的应用程序,一般采用汇编语言编写。而对于中型和大型系统的应用程序,往往采用高级程序设计语言如C语言来编写。

1.3.3 嵌入式系统的应用与发展

1. 嵌入式系统的独立发展道路

嵌入式系统虽然起源于微型计算机时代,然而微型计算机的体积、价位、可靠性都无法满足广大对象系统的嵌入式应用要求,因此,嵌入式系统必须走独立发展道路。这条道路就是芯片化道路,将计算机做在一个芯片上,从而开创了嵌入式系统独立发展的单片机时代。

在探索单片机的发展道路时,有过两种模式,即“Σ模式”与“创新模式”。“Σ模式”本质上是通用计算机直接芯片化的模式,它将通用计算机系统中的基本单元进行裁剪后,集成在一个芯片上,构成单片微型计算机;“创新模式”则完全按嵌入式应用要求设计全新的,满足嵌入式应用要求的体系结构、微处理器、指令系统、总线方式、管理模式等。Intel公司的MCS-48、MCS-51就是按照创新模式发展起来的单片形态的嵌入式系统(单片微型计算机)。MCS-51是在MCS-48探索基础上,进行全面完善的嵌入式系统。历史证明,“创新模式”是嵌入式系统独立发展的正确道路,MCS-51的体系结构也因此成为单片嵌入式系统的典型结构体系。

嵌入式概念其实很早就已存在,从20世纪70年代单片机的出现开始,到今天嵌入式相关的各种应用,嵌入式系统经历了近30年的发展历史,但每个阶段的发展历程都有所不同,嵌入式系统发展历程经历了以下4个阶段。

(1)无操作系统阶段

这一阶段的应用就是基于最初的单片机上,多数以编程控制器的形式出现,这一时期,一般没有操作系统的相关支持,只有通过汇编语言对系统进行直接的控制,当然在相关运行结束之后再清除内存,当然这一时期的主要特点是:系统机构和功能相对都比较单一,处理效率也较低、储存量也小,几乎没有用户接口,由于具备以上特性,曾经被工业领域广泛的认可。

(2)简单的操作系统阶段

但随着微电子工艺水平的提高,出现了大量高可靠、低耗能的嵌入式CPU,这种简单的嵌入式操作系统开始出现并得到了迅速发展。此时的嵌入式操作系统虽然比较简单,但已初步具备一定的兼容性和扩展性,对控制系统负载以及监控应用程序的运行有一定作用。

(3)实时操作系统阶段

在数字化通信和信息家电等巨大需求的牵引下,嵌入式系统得到进一步的飞速发展,随着硬件实时性要求的提高,嵌入式系统的软件规模也在不断扩大,这一时期操作系统的实行性得到了很大的改善,可以再不同类型的微处理器上,实现高度的模块化和扩展性运行,以此使得应用软件的开发变得更加简单。

(4)面向Internet阶段

在21世纪的网络时代,将嵌入式系统应用到各种网络环境的呼声越来越高,嵌入式设备与Internet的完美结合才是嵌入式技术的真正未来,在这个信息时代和数字时代里,为嵌入式系统的开发带来了巨大的机遇,同时对于嵌入式系统提供商来讲也是新的挑战。

2. 嵌入式系统的应用

嵌入式控制器的应用几乎无处不在:移动电话、家用电器、汽车,等等。嵌入控制器由于其体积小、可靠性高、功能强、灵活方便等许多优点,其应用已深入工业、农监、教育、国防、科研以及日常生活等各个领域,对各行各业的技术改造、产品更新换代、加速自动化进程、提高生产率等方面起到极其重要的推动作用。嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外部设备中就包含了5~10个嵌入式微处理器。制造工业、过程控制、网络、通信、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等,均是嵌入式计算机的应用领域。而且随着电子技术和计算机软件技术的发展,嵌入式计算机不仅在这些领域中的应用越来越深入,而且在其他传统的非信息类设备中也逐渐显现出其用武之地。

(1)POS网络及电子商务:公共交通无接触智能卡发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活。

(2)信息家电:这是嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们步入一个崭新的生活空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。

(3)环境工程与自然:水文资料实时监测,防洪体系及水土质量监测,堤坝安全监测,地震监测网,实时气象信息网,水源和空气污染监测。在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。

(4)家庭智能管理系统:水、电、燃气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高效、更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。

(5)工业控制:基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8位、16位、32位嵌入式微控制器应用在工业控制中。网络化是提高生产效率和产品质量、减少人力资源的主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统等。

(6)机器人:嵌入式芯片的发展将使机器人在微型化、高智能方面的优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。

(7)交通管理:在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌CPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,通过智能手机等设备,就可以随时随地找到你的位置。

(8)机电产品应用:相对于其他的领域,机电产品可以说是嵌入式系统应用最典型最广泛的领域之一。单片机到工控机、SOC在各种机电产品中均有着巨大的市场。

(9)移动互联网领域:移动互联网领域很多也需要嵌入式开发技术。

3. 嵌入式系统的应用模式

嵌入式计算机系统起源于微型机时代,但很快就进入到独立发展的单片机时代。在单片机时代,嵌入式系统以器件形态迅速进入传统电子技术领域中,以电子技术应用工程师为主体,实现传统电子系统的智能化,而计算机专业队伍并没有真正进入单片机应用领域。因此,电子技术应用工程师以自己习惯的电子技术应用模式,从事单片机的应用开发。这种应用模式最重要的特点是:软、硬件的底层性和随意性;对象系统专业技术的密切相关性;缺少计算机工程设计方法。

虽然在单片机时代,计算机专业淡出了嵌入式系统领域,但随着后PC时代的到来,网络、通信技术得以发展;同时,嵌入式系统软、硬件技术有了很大的提升,为计算机专业人士介入嵌入式系统应用开辟了广阔天地。计算机专业人士的介入,形成的计算机应用模式带有明显的计算机的工程应用特点,即基于嵌入式系统软、硬件平台,以网络、通信为主的非嵌入式底层应用。

(1)两种应用模式的并存与互补

由于嵌入式系统最大、最广、最底层的应用是传统电子技术领域的智能化改造,因此,以通晓对象专业的电子技术队伍为主,用最少的嵌入式系统软、硬件开销,以8位机为主,带有浓重的电子系统设计色彩的电子系统应用模式会长期存在下去。

另外,计算机专业人士会愈来愈多地介入嵌入式系统应用,但囿于对象专业知识的隔阂,其应用领域会集中在网络、通信、多媒体、商务电子等方面,不可能替代原来电子工程师在控制、仪器仪表、机械电子等方面的嵌入式应用。因此,客观存在的两种应用模式会长期并存下去,在不同的领域中相互补充。电子系统设计模式应从计算机应用设计模式中,学习计算机工程方法和嵌入式系统软件技术;计算机应用设计模式应从电子系统设计模式中,了解嵌入式系统应用的电路系统特性、基本的外围电路设计方法和对象系统的基本要求等。

(2)嵌入式系统应用的高低端

由于嵌入式系统有过很长的一段单片机的独立发展道路,大多是基于8位单片机,实现最底层的嵌入式系统应用,带有明显的电子系统设计模式特点。大多数从事单片机应用开发人员,都是对象系统领域中的电子系统工程师,加之单片机的出现,立即脱离了计算机专业领域,以“智能化”器件身份进入电子系统领域,没有带入“嵌入式系统”概念。因此,不少从事单片机应用的人,不了解单片机与嵌入式系统的关系,在谈到“嵌入式系统”领域时,往往理解成计算机专业领域的基于32位嵌入式处理器、从事网络、通信、多媒体等的应用。这样,“单片机”与“嵌入式系统”形成了嵌入式系统中常见的两个独立的名词。但由于“单片机”是典型的、独立发展起来的嵌入式系统,从学科建设的角度出发,应该把它统一成“嵌入式系统”。考虑到原来单片机的电子系统底层应用特点,可以把嵌入式系统应用分成高端与低端,把原来的单片机应用理解成嵌入式系统的低端应用,含义为它的底层性以及与对象系统的紧耦合;现在稍微复杂的嵌入式系统,都是构架在操作系统之上,这样与对象系统联系的紧密性则削弱了,应该被看作嵌入式系统的高端应用。