1.1 微型计算机的组成体系

微型计算机系统通常分为两类:一类是以微处理器为核心,配置辅助电路(如RAM、ROM、I/O接口电路)而构成的微型化计算机装置(简称μC),它是具有完成运行功能的计算机;另一类为单片微型计算机,它由单块集成电路芯片构成,内部包含计算机的基本功能部件,如中央处理器CPU、存储器和I/O接口电路等,只需要与适当的软件和外部设备相结合,便可成为微机控制系统。本节重点介绍单片微型计算机。

1.1.1 微型计算机的发展

1.微处理器技术的发展

第一代,1971年10月,美国Intel公司首先推出Intel 4004微处理器,微处理器进入4位微处理器和低挡8位微处理器时期。1972年3月,Intel公司又推出Intel 8008微处理器,实现了8位并行运算。

第二代,1973年开始,是以8位微处理为主的时期。典型产品有:1973年,Intel 8080;1974年3月,Motorola公司的MC 6800;1975—1976年,Zilog公司的Z80;1976年,Intel 8085等。

第三代,1978年开始,是以16位微处理为主的时期。典型产品有:1978年Intel 8086;1979年,Zilog公司的Z 8000;1979年,Motorola公司的MC 68000等。

第四代,1981年开始,是以32位微处理为主的时期。典型产品有:1983年,Zilog公司的Z 80000;1984年,Motorola公司的MC 68020;1985年,Intel公司的80386等。在这一时期,微处理器的集成度达到了空前规模,如80386微处理器集成度为27.5万管/片。

自Intel 80386芯片推出以来,又出现了许多高性能的32位和64位微处理器,如Motorola的MC68030、MC68040,AMD公司的K6-2、K6-3、K7,以及Intel的80486、Pentium、Pentium2、Pentium3和Pentium4等产品。

2.单片微型计算机的发展

1974年,美国仙童(Fairchild)公司研制出世界上第一台单片微型计算机F8,该机由两块集成电路芯片组成,结构独特,具有与众不同的指令系统,深受民用电器和仪器仪表领域的欢迎和重视。之后,单片微型计算机开始迅速发展,应用范围不断扩大,成为微型计算机领域的重要分支。单片微型计算机的发展,以Intel公司1976年推出的8位单片机为起点,大体经历了三个历史阶段。

(1)第一代单片微型计算机(1976—1978年)

第一代单片微型计算机始于1976年,以MCS-48系列为代表。该系列机型在片内集成了8位CPU、并行I/O接口、8位定时计数器、RAM及ROM等,其特点是无串行I/O接口,中断处理比较简单,片内RAM、ROM容量小,且寻址范围小于4KB。第一代单片微型计算机产品还包含Motorola公司的6801系列和Zilog公司的Z8系列。

第一代单片微型计算机在技术上采用了专门的结构设计,将CPU及外围单元集成在一块芯片上,实现了单个芯片上的计算机集成,其指令系统设计面向控制功能要求,从此,工业控制领域有了自己的计算机工业,开始了测控领域的智能化控制时代。

(2)第二代单片微型计算机(1978—1982年)

第二代单片微型计算机以Intel公司的MCS-51系列为代表,其技术特点是完善了外部总线,并确立了单片微型计算机的控制功能。其外部并行总线规范化为16位地址总线,用以寻址外部64KB的程序存储器和数据存储器空间,与8位数据总线及相应的控制总线,形成完整的并行三总线结构。同时还提供了具有多机通信功能的异步通信接口UART。

在确立基本控制功能方面,MCS-51系列在指令系统中设置了大量的位操作指令,和片内的位地址空间构成了单片微型计算机所独有的布尔处理器,大大增强了单片微型计算机的位控制功能;指令系统中设置了大量的条件/无条件跳转指令,增强了指令系统的控制功能;在片内设置了特殊功能寄存器(SFR),建立了计算机外围功能电路的集中管理模式,为外围功能部件增添的计算机的使用管理带来了极大的方便。

这一代单片机结束了计算机单片集成的简单形式,真正开创了单片微型计算机作为微控制器的发展道路。

(3)第三代单片微型计算机(1982年至今)

第三代单片微型计算机的技术特点是全速发展单片微型计算机的控制功能。这一代单片微型计算机的特点根据科学和工业应用需要呈现出百花齐放的发展局面。国际各大电气公司纷纷介入开发自己的单片微型计算机系列,其综合特点为:

①发展非总线型单片微机,并与原有的总线型单片机形成了两大派系。为了满足家电控制器的巨大市场,它们将单片机的并行扩展总线省去,推出廉价型单片微机,并尽可能将一些外围接口封装在片内;

②为了满足不使用并行总线而能扩展各种外围器件,推出了串行扩展总线,如philips的I2C总线、Motorola的SPL和NS公司的Microwire/PLUS的串行外围接口等;

③发展具有良好控制功能的控制网络总线,以实现串行通信总线难以构成的多主强控制功能的网络系统,如汽车电子系统中采用的CAN总线。

1.1.2 微型计算机的分类及主流系列

20世纪80年代以来,各大电气及半导体器件厂商纷纷推出自己的产品系列。迄今为止,市场上的单片微型计算机(以下简称单片微机)产品已达60多个系列,600余个品种。

1.单片微机的分类

单片微机从不同的角度有不同的分类:按运算位长短分,可分为4位、8位、16位、32位等;按使用场合的不同,可分为高端单片机和低端单片机;按应用领域分,可分为家电类单片机、工控类单片机、通信类单片机、军工类单片机;按是否通用分,可分为通用型单片机和专用型单片机。由于数据处理位数是单片微机CPU的重要标志,所以本书按单片微机的位数进行分类,可分为以下四类。

(1)4位单片微机

4位单片微机的控制功能较弱,CPU一次只能处理4位二进制数据。这类单片微机常用于计算器、各种形态的智能单元或作为家用电器中的控制器。典型产品有美国NS(National semiconductor)公司的COP4××系列,Toshiba公司的TMP47×××系列及Panasonic公司的MN1400系列单片微机。

(2)8位单片微机

8位单片微机的控制功能较强,品种最为齐全。对比4位单片微机,它不仅具有较大的存储容量和寻址范围,而且中断源、并行I/O接口和定时器/计数器个数都有了不同程度的增加,并集成有全双工串行通信接口。

在指令系统方面,它普遍增设了乘除指令和比较指令。特别是增强型单片机,除片内增加了A/D和D/A转换器以外,还集成有定时器捕捉/比较寄存器、监视定时器(Watch Dog)、总线控制部件和晶体振荡电路等。这类单片机由于片内资源丰富,功能强大,主要在工业控制、智能仪表、家用电器和办公自动化系统中应用。

其代表产品有Intel公司的MCS-51系列,荷兰Philips公司80C51,Motorola公司的M6805系列,Microchip公司的PIC系列和Atmel公司的AT89系列单片微机等。

(3)16位单片微机

16位单片微机的特点是:CPU为16位,部分单片机寻址能力高达1MB,片内含有A/D和D/A转换电路,支持高级语言。这类单片机主要用于过程控制、智能仪表、家用电器或作为计算机外部设备的控制器。其典型产品有Intel公司的MCS96/98系列,Motorola公司的M68HC16系列,NS公司的HPC××××系列单片微机等。

(4)32位单片微机

32位单片微机的字长为32位,是单片微机中的顶级产品,具有极高的运算速度。这类单片机的代表产品有Freescale公司的M68300系列,英国Inmos公司的IM-ST414系列和日立公司的SH系列单片微机等。

2.单片微型计算机的主流系列

目前,市场上流行的单片微型计算机的种类很多,主要有:美国的Intel、Motorola、Zilog、NS、Microchip、Atmel和TI公司,日本的NEC(日电)、Toshiba(东芝)、Fujitsu(富士通)和Hitachi(日立)公司,荷兰的Philips公司,英国的Inmos公司和德国的Siemens(西门子)公司,等等。下面对部分厂家的单片微型计算机的系列产品进行介绍。

(1)Intel公司的单片微机

MCS-51系列单片机是Intel公司于1980年推出的8位单片机。其典型产品为8051,其内部资源分配和性能如下:8位CPU、寻址能力达2×64KB;4KB的ROM和128B的RAM;4个8位I/O接口电路;一个串行全双工异步接口;5个中断源和两个中断优先级。80C51是MCS-51系列中的一个子系列,是一族高性能兼容型单片机,Siemens、Philips等公司在80C51基础上推出了与80C51兼容的新型单片机,它们统称80C51系列。其中,Philips公司的80C51系列单片机性能卓越,产品最齐全,最具有代表性。

Intel公司于1984年开始推出16位高性能MCS-96系列单片机,该系列包括8096BH、8096和8098三个子系列。MCS-96系列单片机采用累加器和流水线作业的系统结构,运算速度快、精度高,其典型产品为8397BH。

(2)Freescale公司的单片微机

Freescale是世界上最大的单片机厂商。2004年,Motorola公司半导体部更名为Freescale Semiconductor,并独立运行。从M6800开始,其生产的产品种类齐全,从4位,8位,16位到32位的单片机都有,其中典型的代表有:8位机M6805、M68HC05系列,8位增强型M68HC11、M68HC12,16位机M68HC16,32位机M683××。Freescale单片机的特点之一是在同样的速度下所用的时钟频率较Intel类单片机低得多,因而使得其高频噪声低,抗干扰能力强,更适合于工控领域及恶劣的环境。

(3)Atmel公司的单片微机

美国Atmel公司是世界上著名的生产高性能、低功耗、非易失性存储器和数字集成电路的一流半导体制造公司。Atmel公司最令人注目的是E2PROM和闪存(Flash)存储器技术,一直处在世界领先地位。该公司把E2PROM和Flash存储器技术巧妙地运用于单片机,并采用多种封装形式和高标准质量检测。

Atmel单片机可分为AT89、AT90、AT91和智能IC卡四个系列,这些单片机内部含有Flash存储器,故它们在便携类产品中有广泛应用。Atmel单片机按使用环境可分为C(商业)档、I(工业)档、A(汽车)和M(军用)档,其中M档产品的环境使用温度为−55~+150℃。因此,Atmel单片机除广泛用于计算机外部设备、通信设备、自动化工业控制、仪器仪表等产品中外,还在航空航天仪表、雷达系统、导弹、智能自适应仪器、机器人和各类武器系统中有着广泛的应用。

(4)MicroChip公司的单片微机

MicroChip单片机的主要产品是PIC16C系列和17C系列8位单片机,其CPU采用RISC结构,分别仅有33条和58条指令,并采用Harvard双总线结构,运行速度快,工作电压低,功耗小,输入/输出直接驱动能力较大,价格低,在办公自动化设备、消费电子产品、电讯通信、智能仪器仪表、汽车电子、金融电子、工业控制等不同领域都有广泛的应用。PIC系列单片机在世界单片机市场份额排名中的名次逐年提高,发展非常迅速。

国际上其他较为著名的单片微机产品还有日本Hitachi(日立)公司的Super H(简称SH)系列单片机和东芝单片机,SH系列单片机采用RISC结构,数据处理速度快、功能强、功耗小,典型产品可分为基本型SH-1、改进型SH-2、低功耗型SH-3和增强型SH-4四类;东芝单片机门类齐全,其中4位机主要用于家电领域,8位机主要有870系列、90系列,32位机采用MIPS3000A RISC的CPU结构,面向VCD、数码相机、图像处理等市场。

1.1.3 微型计算机系统的组成原理

现代微型计算机系统组成结构基本上是以冯·诺伊曼模型为基础的,即以执行存储器中的程序而工作。计算机执行程序时是自动按顺序进行的,不需要人工干预,程序和数据由输入设备输入存储器,执行程序所获得的运算结果则由输出设备输出。下面通过以微处理器为中心的微型计算机系统和以单片微机为中心的计算机系统进行具体介绍。

1.以微处理器为中心的微型计算机系统

以微处理器为中心的微型计算机系统是在中、小型计算机基础上发展起来的,以大规模集成电路技术为条件的一种新型计算机。和其他计算机相比,它的最大特点是采用总线结构,其中三总线结构尤为普遍,目前已成为微型计算机的一种基本结构,如图1-1所示。

图1-1 微型计算机系统的基本结构

从图1-1可以看出,微处理器MPU是通过AB、DB和CB三条总线同外围的大规模集成电路ROM存储器、RAM存储器及I/O接口电路相连进行工作的。不过,系统在工作时还需要其他的一些辅助电路(如时钟发生器、各类译码器、缓冲器等)才能构成具有完整运算功能的计算机。从图1-1可以看出,微型计算机系统与一般计算机系统的组成是一致的,下面分别对各部分进行介绍。

(1)微处理器MPU

微处理器是微型计算机的CPU(Central Processing Unit),具有运算器和控制器的功能,是组成微型计算机的核心部件。微处理器内部结构极其复杂,从功能上看,主要分为三运算器、控制器和寄存器组等部分。

运算器和控制器是计算机赖以工作的核心部件。运算器主要包括加法器、指令译码器和控制电路等,用于算术运算和逻辑操作,其操作顺序受控制器控制;控制器由指令寄存器、指令译码器和控制电路等组成,是整个计算机的中枢,它根据指令码指挥着运算器、存储器和外围接口相连的输入和输出设备自动协调地工作。现在,运算器和控制器通常集成在单块或几块大规模集成电路芯片内,称为中央处理单元CPU,即微处理器。

寄存器组用来存放操作数、中间结果、地址及工作状态等内容。通常寄存器组由多个寄存器组成,是微处理器中的重要部件;寄存器可以暂存数据,且其中的数据可以直接参与运算,使许多运算可以在微处理器内部进行,减少了微处理器芯片与存储器和外部设备等的数据交换,从而加快了运算速度。

(2)ROM和RAM存储器

ROM和RAM是半导体存储器,是采用大规模集成电路工艺制成的存储器芯片。ROM(Read Only Memory)存储器是一种在正常工作时只能读不能写的存储器,它通常用来存放固定程序和常数。RAM(Random Access Memory)存储器是一种在正常工作时既能读又能写的存储器,通常用来存放原始数据、中间结果、最终结果和实时数据等。RAM中存入的信息不能长久保存,停电后便立即消失,因此它又称为易失性存储器。

(3)I/O接口电路

微型计算机通过I/O接口电路与各种外部设备相连,而总线是CPU和存储器、I/O接口电路之间信息传输的通道。在微型计算机系统中,总线按功能可分为数据总线DB(Data Bus)、控制总线CB(Control Bus)和地址总线AB(Address Bus)。数据总线用来传递数据,这里的数据包括真正要处理的数据、指令代码、状态量和控制量等信息。控制总线用来传输各种控制信号。控制信号各自独立起作用,如CPU发出的读信号、写信号等输出信号,从外设输入CPU的终端请求信号等。地址总线用来传送地址信息,只能由CPU单方向输出地址信息,以寻找内存单元或I/O接口的地址,地址总线的宽度表明了CPU最大可允许寻址存储空间的大小。

以微型计算机为主机,配上系统软件、电源及各类外部设备,便可构成微型计算机系统,其组成如图1-2所示。

图1-2 微型计算机系统组成

2.以单片微机为中心的计算机系统

单片微机由单块集成电路芯片构成,内部包含计算机的基本功能部件:中央处理器CPU、存储器和I/O接口电路等,因此单片微机只需要和适当的软件及外部设备相结合,便可成为一个计算机应用系统。

以单片微机为中心的计算机系统的基本结构如图1-3所示。

图1-3 以单片微机为中心的计算机系统的基本结构

(1)中央处理器CPU

CPU是单片机的核心部分,通常由运算器、控制器和中断电路等组成。CPU进行算术运算和逻辑操作的字长同样有4位、8位、16位和32位之分,字长越长运算速度越快。

(2)存储器

在单片微机内部,ROM和RAM存储器是分开制造的。

ROM存储器一般为1~32KB,用于存放应用程序,因此又称为程序存储器。计算机系统投入使用后,用于测试和控制的应用程序通常固化在片内ROM中。目前,单片微机根据片内ROM的结构,可分为无ROM型、ROM型和EPROM型三类,常用常见的是新出现的具有E2ROM和Flash型ROM存储器的产品。

RAM存储器主要用来存放实时数据或作为通用寄存器、数据堆栈和数据缓冲器之用。在单片微机内部的RAM存储器容量为64~256B,最多可达48KB。

(3)I/O接口和特殊功能部件

I/O接口电路有串行和并行两种。串行I/O接口电路用于串行通信,它可以把单片机内部的并行8位数据(8位机)变成串行数据向外传送,也可以串行接收外部送来的数据并把它们变成并行数据送给CPU处理。并行I/O接口电路可以使单片微机和存储器或外设之间并行地传送8位数据(8位机)。

特殊功能部件指单片微机集成的定时器/计数器、A/D和D/A转换器、DMA通道等电路。定时器/计数器用于产生定时脉冲,以实现单片机的定时控制;A/D和D/A转换器用于模拟量和数字量之间的相互转换,以完成实时数据的采集和控制;DMA通道可以使单片机和外设之间实现数据的快速传送。因此,单片微机集成的特殊功能部件及其数量与产品的型号有关,在设计时可查阅有关手册。