历史:现代计算机的技术发展史(1)始于微型机时代的嵌入式应用 电子数字计算机诞生于1946年,在其后漫长的历史进程中,计算机始终是供养在特殊的机房中,实现数值计算的大型昂贵设备。直到20世纪70年代,微处理器的出现,计算机才出现了历史性的变化。以微处理器为核心的微型计算机以其小型、价廉、高可靠性特点,迅速走出机房;基于高速数值解算能力的微型机,表现出的智能化水平引起了控制专业人士的兴趣,要求将微型机嵌入到一个对象体系中,实现对象体系的智能化控制。例如,将微型计算机经电气加固、机械加固,并配置各种外围接口电路,安装到大型舰船中构成自动驾驶仪或轮机状态监测系统。这样一来,计算机便失去了原来的形态与通用的计算机功能。为了区别于原有的通用计算机系统,把嵌入到对象体系中,实现对象体系智能化控制的计算机,称作嵌入式计算机系统。因此,嵌入式系统诞生于微型机时代,嵌入式系统的嵌入性本质是将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的基本出发点。 (2)现代计算机技术的两大分支 由于嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术发展方向。 通用计算机系统的技术要求是高速、海量的数值计算;技术发展方向是总线速度的无限提升,存储容量的无限扩大。 而嵌入式计算机系统的技术要求则是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。 早期,人们勉为其难地将通用计算机系统进行改装,在大型设备中实现嵌入式应用。然而,对于众多的对象系统(如家用电器、仪器仪表、工控单元……),无法嵌入通用计算机系统,况且嵌入式系统与通用计算机系统的技术发展方向完全不同,因此,必须独立地发展通用计算机系统与嵌入式计算机系统,这就形成了现代计算机技术发展的两大分支。 如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式计算机系统的诞生,则标志了计算机进入了通用计算机系统与嵌入式计算机系统两大分支并行发展时代,从而导致20世纪末,计算机的高速发展时期。 (3) 两大分支发展的里程碑事件 通用计算机系统与嵌入式计算机系统的专业化分工发展,导致20世纪末、21世纪初,计算机技术的飞速发展。计算机专业领域集中精力发展通用计算机系统的软、硬件技术,不必兼顾嵌入式应用要求,通用微处理器迅速从286、386、486到奔腾系列;操作系统则迅速扩张计算机基于高速海量的数据文件处理能力,使通用计算机系统进入到尽善尽美阶段。 嵌入式计算机系统则走上了一条完全不同的道路,这条独立发展的道路就是单芯片化道路。它动员了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承担起发展与普及嵌入式系统的历史任务,迅速地将传统的电子系统发展到智能化的现代电子系统时代。 因此,现代计算机技术发展的两大分支的里程碑意义在于:它不仅形成了计算机发展的专业化分工,而且将发展计算机技术的任务扩展到传统的电子系统领域,使计算机成为进入人类社会全面智能化时代的有力工具。现状1 嵌入式系统的含义及分类 嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。 目前嵌入式系统除了部分为32 位处理器外,大量存在的是8 位和16 位的嵌入式微控制器(MCU) ,嵌入式系统是计算机应用的另一种形态,正如前所述它与通用计算机应用不同:嵌入式计算机是以嵌入式系统的形式隐藏在各种装置、产品和系统之中的一种软硬件高度专业化的特定计算机系统。目前根据其发展现状,嵌入式计算机可以分成下面几类:(1) 嵌入式微处理器(Embedded MicroprocessorUnit , EMPU) 嵌入式微处理器的基础是通用计算机中的CPU。在应用中,将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的母板功能,这样可以大幅度减小系统体积和功耗。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。(2) 嵌入式微控制器(Microcontroller Unit , MCU) 嵌入式微控制器又称单片机。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROMPEPROM、RAM、总线、总线逻辑、定时P计数器、WatchDog、IPO、串行口、脉宽调制输出、APD、DPA、Flash RAM、E2PROM 等各种必要功能和外设。为适应不同的应用需求,一般一个系列的单片机具有多种衍生产品,每种衍生产品的处理器内核都是一样的,不同的是存储器和外设的配置及封装。这样可以使单片机最大限度地和应用需求相匹配,功能不多不少,从而减少功耗和成本。和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。(3) 嵌入式DSP 处理器( Embedded Digital SignalProcessor , EDSP) DSP 处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP 算法,编译效率较高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面DSP 算法正在大量进入嵌入式领域,DSP 应用正从在通用单片机中以普通指令实现DSP 功能,过渡到采用嵌入式DSP 处理器。(4) 嵌入式片上系统(System On Chip) 随着EDI 的推广和VLSI 设计的普及化,及半导体工艺的迅速发展,在一个硅片上实现一个更为复杂的系统的时代已来临, 这就是System On Chip(SOC) 。各种通用处理器内核将作为SOC 设计公司的标准库,和许多其它嵌入式系统外设一样,成为VLSI 设计中一种标准的器件,用标准的VHDL 等语言描述,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后就可以将设计图交给半导体工厂制作样品。这样除个别无法集成的器件以外,整个嵌入式系统大部分均可集成到一块或几块芯片中去,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。2 嵌入式系统工业的特点(1) 嵌入式系统工业是不可垄断的高度分散的工业 从某种意义上来说,通用计算机行业的技术是垄断的。占整个计算机行业90 %的PC 产业,80 %采用Intel 的8x86 体系结构,芯片基本上出自Intel ,AMD ,Cyrix 等几家公司。在几乎每台计算机必备的操作系统和文字处理器方面,Microsoft 的Windows 及Word 占80 - 90 % ,凭借操作系统还可以搭配其它应用程序。因此当代的通用计算机工业的基础被认为是由Wintel (Microsoft 和Intel 90 年代初建立的联盟)垄断的工业。 嵌入式系统则不同,它是一个分散的工业,充满了竞争、机遇与创新,没有哪一个系列的处理器和操作系统能够垄断全部市场。即便在体系结构上存在着主流,但各不相同的应用领域决定了不可能有少数公司、少数产品垄断全部市场。因此嵌入式系统领域的产品和技术,必然是高度分散的,留给各个行业的中小规模高技术公司的创新余地很大。另外,社会上的各个应用领域是在不断向前发展的,要求其中的嵌入式处理器核心也同步发展,这也构成了推动嵌入式工业发展的强大动力。 器件是嵌入式系统产业的根本,嵌入式系统工业的基础就是以应用为中心的“芯片”设计技术和面向应用的软件产品开发技术。(2) 嵌入式系统具有的产品特征 嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用自行发展,则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、电磁兼容性等方面均受到应用要求的制约,这些也是各个半导体厂商之间竞争的热点。 和通用计算机不同,嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用对处理器的选择面前更具有竞争力。嵌入式处理器要针对用户的具体需求,对芯片配置进行裁剪和添加才能达到理想的性能;但同时还受用户订货量的制约。因此不同的处理器面向的用户是不一样的,可能是一般用户,行业用户或单一用户。 嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。嵌入式系统中的软件,一般都固化在只读存储器中,而不是以磁盘为载体,可随意更换,所以嵌入式系统的应用软件生命周期也和嵌入式产品一样长。另外,各个行业的应用系统和产品,和通用计算机软件不同,很少发生突然性跳跃,嵌入式系统中的软件也因此更强调可继承性和技术衔接性,发展比较稳定。 嵌入式处理器的发展也体现出稳定性,一个体系一般要存在8 - 10 年的时间。一个体系结构及其相关的片上外设、开发工具、库函数、嵌入式应用产品是一套复杂的知识系统,用户和半导体厂商都不会轻易地放弃一种处理器。(3) 嵌入式系统软件的特征 嵌入式处理器的应用软件是实现嵌入式系统功能的关键,对嵌入式处理器系统软件和应用软件的要求也和通用计算机有所不同。 ①软件要求固态化存储 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中。 ②软件代码高质量、高可靠性尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。 ③系统软件(OS) 的高实时性是基本要求多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的合理调度是保证每个任务及时执行的关键,单纯通过提高处理器速度是无法完成和没有效率的,这种任务调度只能由优化编写的系统软件来完成,因此系统软件的实时性是基本要求。 ④多任务操作系统是知识集成的平台和走向工业标准化道路的基础(4) 嵌入式系统开发需要开发工具和环境 通用计算机具有完善的人机接口界面,在上面增加一些开发应用程序和环境即可进行对自身的开发。而嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。(5) 嵌入式系统软件需要RTOS 开发平台 通用计算机具有完善的操作系统和应用程序接口(API) ,是计算机基本组成不可分离的一部分,应用程序的开发以及完成后的软件都在操作系统(OS) 平台上面运行,但一般不是实时的。嵌入式系统则不同,应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS 开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。(6) 嵌入式系统开发人员以应用专家为主 通用计算机的开发人员一般是计算机科学或计算机工程方面的专业人士,而嵌入式系统则是要和各个不同行业的应用相结合的,要求更多的计算机以外的专业知识,其开发人员往往是各个应用领域的专家。因此开发工具的易学、易用、可靠、高效是基本要求。前景3 嵌入式系统的应用前景嵌入式控制器的应用几乎无处不在:移动电话、家用电器、汽车……无不有它的踪影。嵌入控制器因其体积小、可靠性高、功能强、灵活方便等许多优点,其应用已深入到工业、农业、教育、国防、科研以及日常生活等各个领域,对各行各业的技术改造、产品更新换代、加速自动化化进程、提高生产率等方面起到了极其重要的推动作用。 嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外部设备中就包含了5 - 10 个嵌入式微处理器。在制造工业、过程控制、网络、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等方面均是嵌入式计算机的应用领域。 嵌入式系统工业是专用计算机工业,其目的就是要把一切变得更简单、更方便、更普遍、更适用;通用计算机的发展变为功能电脑,普遍进入社会,嵌入式计算机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片是构成未来世界的“数字基因”。正如我国资深嵌入式系统专家—沈绪榜院士的预言, “未来十年将会产生头大小、具有超过一亿次运算能力的嵌入式智能芯片”,将为我们提供无限的创造空间。总之“嵌入式微控制器或者说单片机好象是一个黑洞,会把当今很多技术和成果吸引进来。中国应当注意发展智力密集型产业”。参 考 文 献[1] 吕京建. BOL System Inc. 从嵌入式系统的可靠性与可信性看Y2K问题.[2] 穆玉刚, 等. 嵌入式系统及其调试手段的研究JOURNAL OF SHENYANG INSTITUTE OF TECHNOLOGY(Vol 18 No. 4. 1999.[3] 吕京建,等. 嵌入式Internet 技术及其应用. http :PPwww. bol - sys2tem. com[4] 吕京建,肖海桥. 嵌入式处理器分类与现状. http :PPwww. bol -system. com[5] 吕京建,肖海桥. 面向二十一世纪的嵌入式系统综述. http :PPwww. bol - system. com[6] Clarke Esler ,TASKING Inc. And Christopher S. Sontag ,emWare《Em2bedded web for 8 - and 16 -bit MPUs》Components in 1999.[7] Warren Webb. 嵌套技术促进汽车改革. http :PPwww. ednchina. com[8] 吕京建,肖海桥. 嵌入式系统开发工具及RTOS 平台. http :PPwww. bol - system. com[9] TASKING致力于嵌入式通信,推动Internet 和通信解决方案. ht2tp :PPwww. bol - system. com[10] 嵌入式系统的2000 年问题. 中国台湾省行政院主计处电子处理资料中心.[11] 何立民. 建设单片机应用平台, 实施平台开发战略. http :PPwww. bol - system. com[12] 8 位和16 位微控制器的嵌入式Internet 接入. http :PPwww. bol -system. com[13] 能提供C 可编程性的低成本控制器. EDN 编辑部,EDN 2000.