微处理器

  微处理器(英语:micro processor,缩写为?P或uP)是可编程化特殊集成电路。用作处理通用数据时,叫作中央处理器(Central Processing Unit, CPU)这也是最为人所知的应用(如:Intel Pentium CPU);专用于作图像数据处理的,叫作Graphics Processing Unit图形处理器(如Nvidia GeForce 6150 GPU);用于音频数据处理的,叫作Audio Processing Unit音频处理单元(如Creative emu10k1 APU)等等。物理性来说,它就是一块集成了数量庞大的微型晶体管与其他电子组件的半导体集成电路(Integrated Circuit, IC)芯片。

常见架构

  NSC 320xx

  AMD K5, K6, K6-2, K6-III, Duron, Athlon, Athlon XP, Athlon MP, Athlon XP-M (Intel x86 架构)

  AMD Athlon 64, Athlon 64 FX, Athlon 64 X2, Opteron, Sempron, Turion 64 (AMD64架构)

  ARM 系列, StrongARM, Intel PXA2xx

  Atmel AVR 架构 (仅单片机)

  CDP1802 (属于 RCA COSMAC)

  Cyrix M1, M2, 6x86 (Intel x86 架构)

  DEC Alpha

  IBM POWER (与88000同为PowerPC系列以前的产品线)

  Intel 4004, 4040

  Intel 8080, 8085, Zilog Z80

  Intel 8086, 8088, 80186, 80188, 80286, 80386, 80486 (Intel x86 架构)

  Pentium, Pentium Pro, Celeron, Pentium II, Pentium III, Xeon, Pentium 4, Pentium M, Pentium D, Celeron M, Celeron D (Intel x86, 与HP PA-RISC均为IA64架构之前的产品线)

  Itanium (IA-64 架构)

  Intel i860, i960

  MIPS 架构

  摩托罗拉 6800, MOS Technology 6502, 摩托罗拉 6809

  摩托罗拉 68000 系列, 摩托罗拉 ColdFire

  摩托罗拉 88000 (与POWER同为PowerPC系列之前的产品线)

  NexGen Nx586 (Intel x86 架构)

  OpenCores OpenRISC 架构

  PA-RISC 系列 (HP公司,与x86同为IA-64架构以前的产品线)

  PowerPC 系列, G3, G4, G5

  Signetics 2650

  SPARC, UltraSPARC, UltraSPARC II–IV

  日立/瑞萨科技的SuperH 系列

  Transmeta的Crusoe和Efficeon (VLIW架构,可模拟Intel x86)

  INMOS Transputer

  WDC 65816

  美国国家半导体公司的SC/MP ("scamp")

简介

  之所以会称为微处理器,并不只是因为它比迷你电脑(mini computer)所用的处理器还要小而已。最主要的原因,还是因为当初各大芯片厂之制程,已经进入了 1 微米的阶段,用 1 微米的制程,所产制出来的处理器芯片,厂商就会在产品名称上用“微”字,强调他们很高科技。就如同现在的许多商业广告一样,很喜欢用“纳米”字眼。

  早在微处理器问世之前,电子计算机的中央处理单元就经历了从真空管到晶体管以及再后来的离散式TTL集成电路等几个重要阶段。甚至在电子计算机以前,还出现过以齿轮、轮轴和杠杆为基础的机械结构计算机。文艺复兴时期的着名画家兼科学家列奥纳多·达·芬奇就曾做过类似的设计,但那个时代落后的制造技术根本没有能力将这个设计付诸实现。微处理器的发明使得复杂的电路群得以制成单一的电子组件。

  从1970年代早期开始,微处理器性能的提升就基本上遵循着IT界着名的摩尔定律。这意味着在过去的30多年里每18个月,CPU的计算能力就会翻番。大到巨型机,小到笔记型电脑,持续高速发展的微处理器取代了诸多其他计算形式而成为各个类别各个领域所有计算机系统的计算动力之源。

组成原理

  算术逻辑单元(ALU,Arithmetic Logical Unit);累加器和通用寄存器组;程序计数器(也叫指令指标器);时序和控制逻辑部件;数据与地址锁存器/缓冲器;内部总线。

  算术逻辑单元ALU主要完成算术运算(+、-、×、÷、比较)和各种逻辑运算(与、或、非、异或、移位)等操作。ALU是组合电路,本身无寄存操作数的功能,因而必须有保存操作数的两个寄存器:暂存器TMP和累加器AC(),累加器既向ALU提供操作数,又接收ALU的运算结果。

  寄存器阵列实际上相当于微处理器内部的RAM,它包括通用寄存器组和专用寄存器组两部分,通用寄存器(A,B,C,D)用来存放参加运算的数据、中间结果或地址。它们一般均可作为两个8位的寄存器来使用。处理器内部有了这些寄存器之后,就可避免频繁地访问存储器,可缩短指令长度和指令执行时间,提高机器的运行速度,也给编程带来方便。专用寄存器包括程序计数器PC()、堆栈指示器SP()和标志寄存器FR(),它们的作用是固定的,用来存放地址或地址基值。其中:

  A)程序计数器PC用来存放下一条要执行的指令地址,因而它控制着程序的执行顺序。在顺序执行指令的条件下,每取出指令的一个字节,PC的内容自动加1。当程序发生转移时,就必须把新的指令地址(目标地址)装入PC,这通常由转移指令来实现。

  B)堆栈指示器SP用来存放栈顶地址。堆栈是存储器中的一个特定区域。它按“后进先出”方式工作,当新的数据压入堆栈时,栈中原存信息不变,只改变栈顶位置,当数据从栈弹出时,弹出的是栈顶位置的数据,弹出后自动调正栈顶位置。也就是说,数据在进行压栈、出栈操作时,总是在栈顶进行。堆栈一旦初始化(即确定了栈底在内存中的位置)后,SP的内容(即栈顶位置)使由CPU自动管理。

  C)标志寄存器也称程序状态字(PSW)寄存器,用来存放算术、逻辑运算指令执行后的结果特征,如结果为0时,产生进位或溢出标志等。

  定时与控制逻辑是微处理器的核心控制部件,负责对整个计算机进行控制、包括从存储器中取指令,分析指令(即指令译码)确定指令操作和操作数地址,取操作数,执行指令规定的操作,送运算结果到存储器或I/O端口等。它还向微机的其它各部件发出相应的控制信号,使CPU内、外各部件间协调工作。

  内部总线用来连接微处理器的各功能部件并传送微处理器内部的数据和控制信号。 须指出,微处理器本身并不能单独构成一个独立的工作系统,也不能独立地执行程序,必须配上存储器、输入输出设备构成一个完整的微型计算机后才能独立工作。

  2.存储器微型计算机的存储器用来存放当前正在使用的或经常使用的程序和数据。存储器按读、写方式分为随机存储器RAM(Random Access Memory)和只读存储器ROM(Read only Memory)。RAM也称为读/写存储器,工作过程中CPU可根据需要随时对其内容进行读或写操作。RAM是易失性存储器,即其内容在断电后会全部丢失,因而只能存放暂时性的程序和数据。ROM的内容只能读出不能写入,断电后其所存信息仍保留不变,是非易失性存储器。所以ROM常用来存放件的程序和数据。如初始导引程序、监控程序、操作系统中的基本输入、输出管理程序BIOS等。

  3.输入/输出接口电路(I/O接口)

  输入/输出接口电路是微型计算机的重要组成部件。他是微型计算机连接外部输入、输出设备及各种控制对象并与外界进行信息交换的逻辑控制电路。由于外设的结构、工作速度、信号形式和数据格式等各不相同,因此它们不能直接挂接到系统总线上,必须用输入/输出接口电路来做中间转换,才能实现与CPU间的信息交换。I/O接口也称I/O适配器,不同的外设必须配备不同的I/O适配器。I/O接口电路是微机应用系统必不可少的重要组成部分。任何一个微机应用系统的研制和设计,实际上主要是I/O接口的研制和设计。因此I/O接口技术是本课程讨论的重要内容之一,我们将在第八章中详细介绍。

  4.总线(BUS)

  总线是计算机系统中各部件之间传送信息的公共通道,是微型计算机的重要组成部件。它由若干条通信线和起驱动,隔离作用的各种三态门器件组成。微型计算机在结构形式上总是采用总线结构,即构成微机的各功能部件(微处理器、存储器、I/O接口电路等)之间通过总线相连接,这是微型计算机系统结构上的独特之处。采用总线结构之后,使系统中各功能部件间的相互关系转变为各部件面向总线的单一关系,一个部件(功能板/卡)只要符合总线标准,就可以连接到采用这种总线标准的系统中,从而使系统功能扩充或更新容易、结构简单、可靠性大大提高。在微型计算机中,根据他们所处位置和应用场合,总线可被分为以下四级 (1)片内总线:它位于微处理器芯片内部,故称为芯片内部总线。用于微处理器内部ALU和各种寄存器等部件间的互连及信息传送(如图1.3中的内部总线就是片内总线)。由于受芯片面积及对外引脚数的限制,片内总线大多采用单总线结构,这有利于芯片集成度和成品率的提高,如果要求加快内部数据传送速度,也可采用双总线或三总线结构。

  (2)片总线:片总线又称元件级(芯片级)总线或局部总线。微机主板、单扳机以及其它一些插件板、卡(如各种I/O接口板/卡),它们本身就是一个完整的子系统,板/卡上包含有CPU,RAM,ROM,I/O接口等各种芯片,这些芯片间也是通过总线来连接的,因为这有利于简化结构,减少连线,提高可靠性,方便信息的传送与控制。通常把各种板、卡上实现芯片间相互连接的总线称为片总线或元件级总线。相对于一台完整的微型计算机来说,各种板/卡只是一个子系统,是一个局部,故又把片总线称为局部总线,而把用于连接微机各功能部件插卡的总线称为系统总线。

  (3)内总线:内总线又称系统总线或板级总线。因为该总线是用来连接微机各功能部件而构成一个完整微机系统的,如图1.2中所示,所以称之为系统总线。系统总线是微机系统中最重要的总线,人们平常所说的微机总线就是指系统总线,如PC总线、AT总线(ISA总线)、PCI总线等。系统总线是我们要讨论的重点内容之一。

  系统总线上传送的信息包括数据信息、地址信息、控制信息,因此,系统总线包含有三种不同功能的总线,即数据总线DB(Data Bus)、地址总线AB(Address Bus)和控制总线CB(Control Bus)。

  数据总线DB用于传送数据信息。数据总线是双向三态形式的总线,即他既可以把CPU的数据传送到存储器或I/O接口等其它部件,也可以将其它部件的数据传送到CPU。数据总线的位数是微型计算机的一个重要指标,通常与微处理的字长相一致。例如Intel 8086微处理器字长16位,其数据总线宽度也是16位。需要指出的是,数据的含义是广义的,它可以是真正的数据,也可以指令代码或状态信息,有时甚至是一个控制信息,因此,在实际工作中,数据总线上传送的并不一定仅仅是真正意义上的数据。

  地址总线AB是专门用来传送地址的,由于地址只能从CPU传向外部存储器或I/O端口,所以地址总线总是单向三态的,这与数据总线不同。地址总线的位数决定了CPU可直接寻址的内存空间大小,比如8位微机的地址总线为16位,则其可寻址空间为216=64KB,16位微型机的地址总线为20位,其可寻址空间为220=1MB。一般来说,若地址总线为n位,则可寻址空间为2n字节。   控制总线CB用来传送控制信号和时序信号。控制信号中,有的是微处理器送往存储器和I/O接口电路的,如读/写信号,片选信号、中断响应信号等;也有是其它部件反馈给CPU的,比如:中断申请信号、复位信号、总线请求信号、限备就绪信号等。因此,控制总线的传送方向由具体控制信号而定,一般是双向的,控制总线的位数要根据系统的实际控制需要而定。实际上控制总线的具体情况主要取决于CPU。

  (4)外总线:也称通信总线。用于两个系统之间的连接与通信,如两台微机系统之间、微机系统与其他电子仪器或电子设备之间的通信。常用的通信总线有IEEE-488总线,VXI总线和RS-232串行总线等。外总线不是微机系统本身固有的,只有微型机应用系统中才有。

应用

  根据微处理器的应用领域,微处理器大致可以分为三类:通用高性能微处理器、嵌入式微处理器和数字信号处理器、微控制器。一般而言,通用处理器追求高性能,它们用于运行通用软件,配备完备、复杂的操作系统;嵌入式微处理器强调处理特定应用问题的高性能,主要用于运行面向特定领域的专用程序,配备轻量级操作系统,主要用于蜂窝电话、CD播放机等消费类家电;微控制器价位相对较低,在微处理器市场上需求量,主要用于汽车、空调、自动机械等领域的自控设备。

相关百科