嵌入式系统应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 嵌入式系统的概念与发展

1.1.1 嵌入式系统的概念

嵌入式系统有很长一段时间是以单片机的形式独立发展的,大多是基于8位单片机,实现底层的嵌入式系统应用,带有明显的电子系统设计模式的特点。大多数从事单片机应用开发的人员,都是应用对象系统领域中的电子系统工程师,随着单片机的出现,他们立即脱离了计算机专业领域,以“智能化”器件开发者的身份进入了电子系统领域,没有带入嵌入式系统的概念。因此,不少从事单片机应用的人,不了解单片机与嵌入式系统的关系,在谈到嵌入式系统领域时,往往理解成计算机专业领域的,基于32位嵌入式处理器的,从事网络、通信、多媒体等的应用。这样,“单片机”与“嵌入式系统”形成了嵌入式系统中常见的两个独立的名词。但由于“单片机”是典型的、独立发展起来的嵌入式系统,所以应该把它统一成“嵌入式系统”。考虑到原来单片机电子系统底层应用的特点,可以把嵌入式系统应用分成顶层与底层,把原来的单片机应用理解成嵌入式系统的底层应用,含义为它与对象硬件的紧密结合。

以开发语言为例,单片机一般以汇编语言、C语言等与硬件关系较密切的语言开发。而嵌入式系统由无操作系统阶段、简单操作系统阶段再到实时操作系统阶段,也经历了由汇编语言、C语言的底层、中间层开发到VS2005的顶层应用开发。我们可以认为单片机阶段是嵌入式系统的初级阶段,只是这个初级阶段非常强盛,非常有生命力,而且直到现在,单片机仍在各领域被广泛应用。但归根到底,单片机还是嵌入式系统的一部分,而嵌入式系统是单片机的发展与补充。

听起来,嵌入式系统很深奥,但其实很简单,凡是专用的、小型或者微型的计算机系统都是嵌入式系统。嵌入式系统的英文为Embedded System,它实际上就是功能比通用计算机专门化,具有通用计算机所不具备的、针对某个方面特别设计的、有合适的运算速度、高可靠性和较低成本的专门的计算机系统。

有些人把嵌入式处理器当做嵌入式系统,但其实嵌入式系统是一个嵌入式计算机系统。因此,只有将嵌入式处理器构成一个计算机系统,并进行嵌入式应用时,才可称做嵌入式系统。

嵌入式系统诞生于微型机时代,我们要充分认识到嵌入式系统的嵌入性本质,即要将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的基本出发点。

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

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

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

嵌入式系统最大、最广的底层应用是传统电子技术领域的智能化改造。因此,以通晓专业对象的电子技术队伍为主,用最少的嵌入式系统软、硬件资源,以8位机为主,带有浓重的电子系统设计色彩的电子系统应用模式将会长期存在下去。另外,计算机专业人士会越来越多地介入嵌入式系统应用,但由于对象专业知识的隔阂,其应用领域会局限在网络、通信、多媒体、商务电子等方面,不可能替代原来电子工程师在控制、仪器仪表、机械电子等方面的嵌入式应用。因此,客观存在的两种应用模式会长期并存下去,在不同的领域中相互补充。电子系统设计模式应从计算机应用设计模式中,学习计算机工程方法和嵌入式系统软件技术;计算机应用设计模式应从电子系统设计模式中,了解嵌入式系统应用的电路系统特性、基本的外围电路设计方法及对象系统的基本要求等。

嵌入式系统与对象系统密切相关,其主要技术发展方向是满足嵌入式应用要求,不断扩展对象系统要求的外围电路(如ADC、DAC、PWM、日历时钟、电源监测、程序运行监测电路等),形成满足对象系统要求的应用系统。因此,作为一个专用计算机系统,嵌入式系统要不断向计算机应用系统发展。

1.1.2 嵌入式系统的发展历史

嵌入式系统诞生于微型机时代,经历了漫长的以单片机形式独立发展的道路。要给嵌入式系统寻求科学的定义,必须了解嵌入式系统的发展历史,按照历史性、本质性、普遍通用性来定义嵌入式系统,并把定义与特点区分开来。在嵌入式系统应用中,对象系统的广泛性与单片机的独立发展道路使嵌入式系统应用在客观上存在两种模式,即从学科建设角度统一成的嵌入式系统应用的高低端。

1.无操作系统阶段

嵌入式系统最初的应用是基于单片机的,大多以可编程控制器的形式出现,具有监测、伺服、设备指示等功能,一般没有操作系统的支持,只能通过汇编语言对系统进行直接控制,运行结束后再清除内存。通常应用于各类工业控制和飞机、导弹等武器装备中。这些装置虽然已经初步具备了嵌入式的应用特点,但仅仅是使用8位的CPU芯片来执行一些单线程的程序,因此严格地说还谈不上“系统”的概念。

这一阶段嵌入式系统的主要特点是,系统结构和功能相对单一,处理效率较低,存储容量较小,几乎没有用户接口。由于这种嵌入式系统使用简便、价格低廉,因而曾经在工业控制领域中得到了非常广泛的应用,但无法满足现今对执行效率和存储容量都有较高要求的信息家电等场合的需要。

2.简单操作系统阶段

20世纪80年代,随着微电子工艺水平的提高,IC制造商开始把嵌入式应用中所需要的微处理器、I/O接口、串行接口,以及RAM、ROM等部件统统集成到一片VLSI中,制造出面向I/O设计的微控制器,并一举成为嵌入式系统领域中异军突起的新秀。与此同时,嵌入式系统的程序员也开始基于一些简单的“操作系统”开发嵌入式应用软件,大大缩短了开发周期、提高了开发效率。

这一阶段嵌入式系统的主要特点是,出现了大量具有高可靠性、低功耗的嵌入式CPU(如PowerPC等),各种简单的嵌入式操作系统开始出现并迅速发展。此时的嵌入式操作系统虽然还比较简单,但已经具有了一定的兼容性和扩展性,内核精巧且效率高,主要用来控制系统负载,以及监控应用程序的运行。

3.实时操作系统阶段

20世纪90年代,在分布控制、柔性制造、数字化通信、信息家电等巨大需求的牵引下,嵌入式系统进一步飞速发展,而面向实时信号处理算法的DSP产品则向着高速度、高精度、低功耗的方向发展。随着硬件实时性要求的提高,嵌入式系统的软件规模也不断扩大,逐渐形成了实时多任务操作系统(RTOS),并开始成为嵌入式系统的主流。

这一阶段嵌入式系统的主要特点是,操作系统的实时性得到了很大的改善,已经能够在各种不同类型的微处理器上运行,具有高度的模块化和扩展性。此时的嵌入式操作系统已经具备了文件和目录管理、设备管理、多任务、网络、图形用户界面(GUI)等功能,并提供了大量的应用程序接口(API),从而使得应用软件的开发变得更加简单。

4.面向Internet阶段

21世纪无疑是一个网络的时代,将嵌入式系统应用到各种网络环境中去的呼声自然也越来越高。目前,大多数嵌入式系统还孤立于Internet,随着Internet的进一步发展,以及Internet技术与信息家电、工业控制技术等日益紧密的结合,嵌入式设备与Internet的结合才是嵌入式技术真正的未来。

信息时代和数字时代的到来,为嵌入式系统的发展带来了巨大的机遇,同时也为嵌入式系统厂商带来了新的挑战。目前,嵌入式技术与Internet技术的结合正在推动着嵌入式技术的飞速发展,嵌入式系统的研究和应用产生了如下的新的显著变化。

新的微处理器层出不穷,嵌入式操作系统自身结构的设计更加便于移植,能够在短时间内支持更多的微处理器。

嵌入式系统的开发成了一项系统工程,开发厂商不仅要提供嵌入式软、硬件系统本身,同时还要提供强大的硬件开发工具和软件支持包。

通用计算机上使用的新技术、新观念开始逐步移植到嵌入式系统中(如嵌入式数据库、移动代理、实时CORBA等),嵌入式软件平台得到了进一步的完善。

各类嵌入式Linux操作系统迅速发展。由于此类系统具有源代码开放、系统内核小、执行效率高、网络结构完整等特点,很适合信息家电等嵌入式系统的需要,因此它目前已经成为了能与Windows CE、Palm OS等嵌入式操作系统进行有力竞争的操作系统。

网络化、信息化的要求随着Internet技术的成熟和带宽的提高而日益突出,以往功能单一的设备(如电话、手机、冰箱、微波炉等)功能不再单一,结构变得更加复杂,网络互联成为必然趋势。

1.1.3 嵌入式处理器

嵌入式系统的硬件以嵌入式处理器为核心,配以其他外围器件,这是实现系统功能的基础。在此,先讲述嵌入式处理器的分类及其基本特性。

1.嵌入式微处理器

嵌入式微处理器的基础是通用计算机的微处理器(CPU)。在应用中,一般将微处理器装配在专门设计的电路板上,使之具有与嵌入式应用相关的接口与功能,从而达到降低系统功耗、提高系统可移植性和可靠性的目的。嵌入式微处理器虽然在功能上和通用计算机的微处理器基本是一样的,但由于其工作环境通常比较恶劣,在可靠性、抗电磁干扰性、环境温湿度等方面要有专门的增强。

目前的嵌入式微处理器主要包括PowerPC、Motorola 68000、MIPS、ARM等。

本教材使用的Intel PXA270处理器就是一种基于ARM内核的嵌入式微处理器。

2.嵌入式微控制器

嵌入式微控制器又称单片机,顾名思义,就是将整个计算机系统集成到一个芯片中。该集成芯片一般以某种处理器架构为核心,可以包括Flash、RAM、ROM、EEPROM、总线、定时/计数器、看门狗、I/O、PWM、A/D、D/A等功能和外设。

与嵌入式微处理器相比,嵌入式微控制器最大的特点就是单片化、体积小、功耗低、可靠性高。嵌入式微控制器的数据处理能力一般不如嵌入式微处理器,但片上外设资源比较丰富,因此强调的是控制功能。目前各芯片设计制造厂商针对各种需要自动化控制的场合,生产出了一系列符合实际需求的、性价比较高的嵌入式微控制器,并广泛应用于各种工业控制场合,约占整个嵌入式市场70%的份额。比较有代表性的包括8051、MCS-51、MCS-96等。

3.嵌入式DSP

由于重复或者类似的运算在数字信号处理过程中大量存在,使得为此设计的器件必须提供专门的支持,这就促成了DSP器件与通用处理器的分流。

DSP(Digital Signal Processor)是一种独特的数字信号处理器,其以数字形式对信号进行采集、变换、滤波、估值、增强、压缩和识别等处理,以得到符合人们需要的信号形式。它不仅具有可编程性,而且其实时运行速度可达每秒运行数千万条复杂的指令程序,远远超过了一般的微处理器。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。嵌入式DSP目前主要用于具有智能逻辑的消费类产品、生物信息识别终端、带有加解密算法的键盘、ADSL接入,以及实时语音压解系统等。这些智能化算法的运算量一般都比较大,特别是矢量运算、指针线性寻址等较多,而这正是DSP处理器的长处所在。

4.FPGA处理器

FPGA(Field Programmable Gate Array)是元件可编程逻辑门阵列。FPGA几乎能完成所有数字器件的功能,上至高性能微控制器,下至74系列门电路,都可以用FPGA来编程实现。工程师可以根据需要,通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里一样。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者的要求而改变,所以FPGA可以完成所需要的逻辑功能。

一般来说,FPGA比ASIC(专用集成芯片)的速度要慢,消耗的电能要多,而且无法完成复杂的设计。但是它也有很多的优点,如可以快速成品、可以通过修改程序来实现对硬件电路的修改、缩短设计时间、减少PCB面积、提高系统可靠性等。