详细的介绍了嵌入式计算机系统
1.1 嵌入式系统简介
1.1.1 嵌入式计算机系统
计算机的出现首先是应用于数值计算。随着计算机技术的不断发展,计算机的处理速度越来越快,存储容量越来越大,外围设备的性能越来越好,满足了高速数值计算量数据处理的需要,形成了高性能的通用计算机系统。
1.什么是嵌入式系统
以往我们按照计算机的体系结构、运算速度、结构规模、适用领域,将其分为大型计算机、中型机、小型机和微型计算机,并以此来组织学科和产业分工,这种分类沿袭了约40 年。近 20 年来,随着计算机技术的迅速发展,以及计算机技术和产品对其它行业的广泛渗透,使得以应用为中心的分类方法变得更为切合实际。具体的说,就是按计算机的非嵌入式应用和嵌入式应用将其分为通用计算机系统和嵌入式计算机系统。通用计算机具有计算机的标准形态,通过装配不同的应用软件,以类同面目出现,并应用在社会的各个方面。现在我们在办公室里、家庭中,最广泛普及使用的 PC 机就是通用计算机其最典型的代表。而嵌入式计算机则是以嵌入式系统的形式隐藏在各种装置、产品和系统中的。在许多的应用领域中,如工业控制、智能仪器仪表、家用电器、电子通信设备等电子系统和电子产品中,对计算机的应用有着不同的要求。这些要求的主要特征为:
(1) 面对控制对象。面对物理量传感器变换的信号输入;面对人机交互的操作控制;面对对象的伺服驱动和控制。
(2) 嵌入到应用系统。体积小、低功耗、价格低廉,可方便地嵌入到应用系统和电子产品中。
(3) 能在工业现场环境中可靠运行。
(4) 优良的控制功能。对外部的各种模拟和数字信号能及时地捕捉,对多种不同的控制对象能灵活地进行实时控制。可以看出,满足上述要求的计算机系统与通用计算机系统是不同的。换句话讲,能够满足和适合以上这些应用的计算机系统与通用计算机系统在应用目标上有巨大的差异。我们将具备高速计算能力和海量存储,用于高速数值计算和海量数据处理的计算机称为通用计算机系统。而将面对工控领域对象,嵌入到各种控制应用系统、各类电子系统和电子产品中,实现嵌入式应用的计算机系统称之为嵌入式计算机系统,简称嵌入式系统(Embedded System)。特定的环境、特定的功能,要求计算机系统与所嵌入的应用环境成为一个统一的整体,并且往往要满足紧凑、高可靠性、实时性好、低功耗等技术要求。对于这样一种面向具体专用应用目标的计算机系统的应用,以及系统的设计方法和开发技术,构成了今天嵌入式系统的重要内涵,也是嵌入式系统发展成为一个相对独立的计算机研究和学习领域的原因。
2. 嵌入式系统的特点与应用
因此,嵌入式系统就是指用于实现独立功能的专用计算机系统。它由包括微处理器、微控制器、定时器、传感器等一系列微电子芯片与器件,以及嵌入在存储器中的微型操作系统或控制系统软件组成,完成诸如实时控制、监测管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统是以应用为核心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、安全性、成本、体积、重量、功耗、环境等方面有严格要求的专用计算机系统。嵌入式系统将应用程序和操作系统与计算机硬件集成在一起,简单讲就是系统的应用软件与系统的硬件一体化。这种系统具有软件代码小,高度自动化,响应速度快等特点,特别适应与面向对象的要求实时的和多任务的应用。
嵌入式计算机系统在应用数量上远远超过了各种通用计算机系统,一台通用计算机系统,如 PC 机的外部设备中就包含了 5-10 个嵌入式系统:键盘、鼠标、软驱、硬盘、显示卡、显示器、Modem、网卡、声卡、打印机、扫描仪、数字相机、USB 集线器等均是由嵌入式处理器控制的。在制造工业、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等方面均是嵌入式计算机的应用领域。
通用计算机系统和嵌入式计算机系统形成了计算机技术的两大分支。与通用计算机系统相比,嵌入式系统最显著的特性是面对工控领域的测控对象。工控领域的测量对象都是一些物理量,如压力、温度、速度、位移等;控制对象则包括马达、电磁开关等。嵌入式计算机系统对这些参量的采集、处理、控制速度是有限的,而对控制方式和能力的要求则是多种多样的。显然,这一特性形成并决定了嵌入式计算机系统和通用计算机系统在系统结构、技术、学习、开发和应用等诸方面的差别,也使得嵌入式系统成为计算机技术发展中的一个重要分支。嵌入式计算机系统以其独特的结构和性能,越来越多地应用的国民经济的各个领域。
1.1.2 单片嵌入式系统
嵌入式计算机系统的构成,根据其核心控制部分的不同可分为几种不同的类型:
a. 各种类型的工控机
b. 可编程逻辑控制器 PLC
c. 以通用微处理器或数字信号处理器构成的嵌入式系统
d. 单片嵌入式系统
采用上述不同类型的核心控制部件所构成的系统都实现了嵌入式系统的应用,成为嵌入式系统应用的庞大家族。以单片机作为控制核心的单片嵌入式系统大部分应用于专业性极强的工业控制系统中。其主要特点是:结构和功能相对单一、存储容量较小、计算能力和效率比较低,简单的用户接口。由于这种嵌入式系统功能专一可靠、价格便宜,因此在工业控制、电子智能仪器设备等领域有着广泛的应用。
作为单片嵌入式系统的核心控制部件单片机,它从体系结构到指令系统都是按照嵌入式系统的应用特点专门设计的,它能最好地满足面对控制对象、应用系统的嵌入、现场的可靠运行和优良的控制功能要求。因此,单片嵌入式应用是发展最快、品种最多、数量最大的嵌入式系统,也有着广泛的应用前景。由于单片机具有嵌入式系统应用的专用体系结构和指令系统,因此在其基本体系结构上,可衍生出能满足各种不同应用系统要求的系统和产品。用户可根据应用系统的各种不同要求和功能,选择最佳型号的单片机。
作为一个典型的嵌入式系统――单片嵌入式系统,在我国大规模应用已有几十年的历史。它不但是在中、小型工控领域、智能仪器仪表、家用电器、电子通信设备和电子系统中最重要的工具和最普遍的应用手段,同时正是由于单片嵌入式系统的广泛应用和不断发展,也大大推动了嵌入式系统技术的快速发展。因此对于电子、通信、工业控制、智能仪器仪表等相关专业的学生来讲,深入学习和掌握单片嵌入式系统的原理与应用,不仅能对自己所学的基础知识进行检验,而且能够培养和锻炼自己的问题分析、综合应用、和动手实践的能力,掌握真正的专业技能和应用技术。同时,深入学习和掌握单片嵌入式系统的原理与应用,也为更好的掌握其它嵌入式系统的打下重要的基础,这个特点尤其表现在硬件设计方面。
1.1.3 单片机的发展历史
1970 年微型计算机研制成功后,随后就出现了单片机。美国 Inter 公司在 1971 年推出了 4 位单片机 4004;1972 年推出了雏形 8 位单片机 8008。特别是在 1976 年推出 MCS-48单片机以后的三十年中,单片机的发展和其相关的技术经历了数次的更新换代。其发展速度大约每三四年要更新一代、集成度增加一倍、功能翻一番。尽管单片机出现的历史并不长,但以 8 位单片机的推出为起点,那么,单片机的发展大致可分为四个阶段。
第一阶段(1976 年-1978 年):初级单片机阶段。以 Inter 公司 MCS-48 为代表。个系列的单片机内集成有 8 位 CPU、I/O 接口、8 位定时器/计数器,寻址范围不大于 4K 字节,简单的中断功能,无串行接口。
第二阶段(1978 年-1982 年):单片机完善阶段。在这一阶段推出的单片机其功能有较大的加强,能够应用于更多的场合。这个阶段的单片机普遍带有串行 I/O 口、有多级中断处理系统、16 位定时器/计数器,片内集成的 RAM、ROM 容量加大,寻址范围可达 64K 字节。一些单片机片内还集成了 A/D 转换接口。这类单片机的典型代表有 Inter 公司的 MCS-51、Motorola 公司的 6801 和 Zilog 公司的 Z8 等。
第三阶段(1982 年-1992 年):8 位单片机巩固发展及 16 位高级单片机发展阶段。在此阶段,尽管 8 位单片机的应用已广泛普及,但为了更好满足测控系统的嵌入式应用的要求,单片机集成的外围接口电路有了更大的扩充。这个阶段单片机的代表为 8051 系列。许多半导体公司和生产厂以 MCS-51 的 8051 为内核, 推出了满足各种嵌入式应用的多种类型和型号的单片机。
其主要技术发展有:
(1) 外围功能集成。满足模拟量直接输入的 ADC 接口;满足伺服驱动输出的 PWM;保证程序可靠运行的程序监控定时器 WDT(俗称看门狗电路)。
(2) 出现了为满足串行外围扩展要求的串行扩展总线和接口,如 SPI、I2C Bus、单总线(1-Wire)等。
(3) 出现了为满足分布式系统,突出控制功能的现场总线接口,如 CAN Bus 等。
(4) 在程序存储器方面广泛使用了片内程序存储器技术,出现了片内集成 EPROM、EEPROM、FlashROM 以及 MaskROM、OTPROM 等各种类型的单片机,以满足不同产品的开发和生产的需要,也为最终取消外部程序存储器扩展奠定了良好的基础。与此同时,一些公司面向更高层次的应用,发展推出了 16 位的单片机,典型代表有Inter 公司的 MCS-96 系列的单片机。
第四阶段(1993 年-现在):百花齐放阶段。现阶段单片机发展的显著特点是百花齐放、技术创新,以满足日益增长的广泛需求。
其主要方面有:
(1)单片嵌入式系统的应用是面对最底层的电子技术应用,从简单的玩具、小家电;到复杂的工业控制系统、智能仪表、电器控制;以及发展到机器人、个人通信信息终端、机顶盒等。因此,面对不同的应用对象,不断推出适合不同领域要求的,从简易性能到多全功能的单片机系列。
(2)大力发展专用型单片机。早期的单片机是以通用型为主的。由于单片机设计生产技术的提高、周期缩短、成本下降,以及许多特定类型电子产品,如家电类产品的巨大的市场需求能力,推动了专用单片机的发展。在这类产品中采用专用单片机,具有低成本、资源有效利用、系统外围电路少、可靠性高的优点。因此专用单片机也是单片机发展的一个主要方向。
(3)致力于提高单片机的综合品质。采用更先进的技术来提高单片机的综合品质,如提高 I/O 口的驱动能力;增加抗静电和抗干扰措施;宽(低)电压低功耗等。
1.1.4 单片机的发展趋势
综观三十年的发展过程,作为单片嵌入式系统的核心――单片机,正朝着多功能、多选择、高速度、低功耗、低价格、扩大存储容量和加强 I/O 功能等方向发展。其进一步的发展趋势是多方面的。
(1) 全盘 CMOS 化。CMOS 电路具有许多优点,如极宽的工作电压范围;极佳的低功耗及功耗管理特性等。CMOS 化已成为目前单片机及其外围器件流行的半导体工艺。
(2) 采用 RISC 体系结构。 早期的单片机大多采用 CISC 结构体系, 指令复杂,指令代码、周期数不统一;指令运行很难实现流水线操作,大大阻碍了运行速度的提高。如 MCS-51 系列单片机,当外部时钟为 12MHz 时,其单周期指令运行速度也仅为 1MIPS。采用 RISC 体系结构和精简指令后,单片机的指令绝大部分成为单周期指令,而通过增加程序存储器的宽度(如从 8 位增加到 16 位),实现了一个地址单元存放一条指令。在这种体系结构中,很容易实现并行流水线操作,大大提高了指令运行速度。目前一些 RISC 结构的单片机,如美国 ATMEL公司的 AVR 系列单片机已实现了一个时钟周期执行一条指令。与 MCS-51 相比,在相同的12MHz 外部时钟下,单周期指令运行速度可达 12MIPS。一方面可获得很高的指令运行速度,另一方面,在相同的运行速度下,可大大降低时钟频率,有利于获得良好的电磁兼容效果。
(3) 多功能集成化。单片机在内部已集成了越来越多的部件,这些部件不仅包括一般常用的电路,如:定时/计数器,模拟比较器,A/D 转换器,D/A 转换器,串行通信接口,WDT电路,LCD 控制器等,还有的单片机为了构成控制网络或形成局部网,内部含有局部网络控制模块 CAN 总线,以方便地构成一个控制网络。为了能在变频控制中方便使用单片机,形成最具经济效益的嵌入式控制系统。有的单片机内部设置了专门用于变频控制的脉宽调制控制电路 PWM。
(4) 片内存储器的改进与发展。目前新型的单片机一般在片内集成两种类型的存储器:
随机读写存储器 SRAM,做为临时数据存储器存放工作数据用;只读存储器 ROM,做为程序存储器存放系统控制程序和固定不变的数据。片内存储器的改进与发展的方向是扩大容量、ROM数据的易写和保密等。
1.片内存储容量的增加。新型的单片机一般在片内集成的 SRAM 在 128 字节至 1K 字节,ROM 的容量一般为 4K 字节至 8K 字节。为了适应网络、音视频等高端产品的需要,高挡的单片机在片内集成了更大容量的 RAM 和 ROM 存储器。如 ATMEL 公司的 ATmega16,片内的 SRAM为 1K 字FlashROM 为 16K 字节。而该系列的高端产品 ATmega256,片内集成了 8K 字节的SRAM,256K 字节的 FlashROM 和 4K 字节的 EEPROM。
2.片内程序存储器由 EPROM 型向 FlashROM 发展。早期的单片机在片内往往没有程序存储器或片内集成 EPROM 型的程序存储器。将程序存储器集成在单片机内可以大大提高单片机的抗干扰性能、提高程序的保密性、减少硬件的设计的复杂性和空间等许多优点,因此片内集成程序存储器已成为新型单片机的标准方式。但由于 EPROM 需要使用 12v 高电压编程写入、紫外线光照擦除、重写入次数有限等缺点,这给使用带来了不便。新型的单片机则采用FlashROM 以及 MaskROM、OTPROM 做为片内的程序存储器。FlashROM 在通常电压(如 5v/3v)下就可以实现编程写入和擦除操作,重写次数在 10000 次以上,并可实现在线编程写入 ISP技术的优点,为使用带来了及大的方便。采用 MaskROM 的微控制器称为掩模芯片,它是在芯片制造过程中就将程序“写入”了,并永远不能改写。采用 OTPROM 的微控制器,其芯片出厂时片内的程序存储器是“空的”,它允许用户将自己编写好的程序一次性的编程写入,之后便再也无法修改了。后两种类型的单片机适合于大批量产品生产的使用,而前两种类型的微控制器则适合产品的设计开发、批量生产以及学习培训的应用。
z 程序保密化。一个单片嵌入式系统的系统程序是系统的最重要的部分,是知识产权保护的核心。为了片内的程序防止被非法读出复制,新型的单片机往往采用对片内的程序存储器采用加锁保密。系统程序编程写入片内的程序存储器后,可以再对加密保护单元编程,使芯片加锁。加锁加密后,从芯片的外部则无法读取片内的系统程序代码,若将加密单元擦除,则片内的程序也同时擦除掉,这样便达到了程序保密的目的。
(5) ISP、IAP 及基于 ISP、IAP 技术的开发和应用。ISP(In System Programmable)称为在线系统可编程技术。随着微控制器在片内EEPROM、FlashROM 的发展,导致了 ISP技术在单片机中的应用。首先实现了系统程序的串行编程写入(下载),使得不必将焊接在PCB 印刷电路板上的芯片取下,就可直接将程序下载到单片机的程序存储器中,淘汰了专用的程序下载写入设备。其次,基于 ISP 技术的实现,使模拟仿真开发技术重新兴起。在单时钟、单指令运行的 RISC 结构的单片机中,可实现 PC 机通过串行电缆对目标系统的在线仿真调试。在 ISP 技术应用的基础上,又发展了 IAP(In Application Programmable)技术,也称在应用可编程技术。利用 IAP 技术,实现了用户可随时根据需要对原有的系统方便的在线更新软件、修改软件,还能实现对系统软件的远程诊断、远程调试和远程更新。
(6) 实现全面功耗管理。采用 CMOS 工艺后,单片机具有极佳的低功耗和功耗管理功能。
它包括:
z 传统的 CMOS 单片机的低功耗运行方式,既闲置方式(Idle Mode)、掉电方式(PowerDown Mode)。
z 双时钟技术。配置有高速(主)和低速(子)两个时钟系统。在不需要高速运行时,则转入子时钟控制下,以节省功耗。
z 片内外围电路的电源管理。对集成在片内的外围接口电路实行供电管理,当该外围电不运行时,关闭其供电。
z 低电压节能技术。CMOS 电路的功耗与电源电压有关,降低系统的供电电压,能大幅度减少器件的功耗。新型的单片机往往具有宽电压(3V-5V)或低电压(3V)运行的特点。低电压低功耗是手持便携式系统重要的追求目标,也是绿色电子的发展方向。
(7) 以串行总线方式为主的外围扩展。目前,单片机与外围器件接口技术发展的一个重要方面是由并行外围总线接口向串行外围总线接口的发展。采用串行总线方式为主的外围扩展技术具有方便、灵活、电路系统简单、占用 I/O 资源少等特点。
(8) 单片机向片上系统 SOC 的发展。SOC(System On Chip)是一种高度集成化、固件化的芯片级集成技术,其核心思想是把除了无法集成的某些外部电路和机械部分之外的所有电子系统电路全部集成在一片芯片中。现在一些新型的单片机(如 AVR 系列单片机)已经是SOC 的雏形,在一片芯片中集成了各种类型和更大容量的存储器,更多性能更加完善和强大的功能电路接口,这使得原来需要几片甚至十几片芯片组成的系统,现在只用一片就可以实现。