第2章 8086与80x86系列微处理器_第1页
第2章 8086与80x86系列微处理器_第2页
第2章 8086与80x86系列微处理器_第3页
第2章 8086与80x86系列微处理器_第4页
第2章 8086与80x86系列微处理器_第5页
已阅读5页,还剩103页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理与接口技术作者:徐建平成贵学第2章8086与80x86系列微处理器微处理器是组成微型计算机系统的核心部件,8086CPU开启了80x86系列微处理器的新时代。本章将主要围绕8086CPU,对其硬件结构和功能、系统总线的构成和总线周期、总线时序进行系统讲解,并对新型微处理器和主板以及常用系统总线作简单介绍。【本章内容提要】

掌握8086/8088CPU的引脚定义、内部结构和功能掌握CPU对内存、I/O的管理方法掌握8086两种系统的构成了解总线周期的基本概念及典型总线操作时序简要了解新型微处理器和主板简要了解微型计算机常用系统总线2.18086微处理器概览2.1.1引脚定义与功能从外部看,8086CPU具有40条引脚,采用双列直插式的封装形式,如图2-1所示;受引脚数量的限制,8086CPU采用了分时复用地址/数据总线和地址/状态总线。所谓分时复用是指,在不同的时钟周期,用相同的引脚输出不同的信号。通过将MN/MX接高电平或地,可使CPU工作在最小模式或最大模式下。最小模式是单机系统,系统中所需的控制信号全部由8086CPU本身直接产生;最大模式可以构成多处理机系统,系统所需的控制信号由总线控制器提供。在不同模式下,8086CPU的第24~31引脚的定义是不同的,下面会详细解释。1.地址/数据总线AD15~AD0为双向、三态地址/数据总线这16条引脚采用分时复用方式,具有传送地址信息和传送数据信息的双重功能,两个过程分开进行。在读写操作总线周期的T1状态作为地址总线使用,用来输出要访问存储单元或I/O端口的低16位地址A15~A0;在总线周期的其他T状态作为双向数据总线使用,用来传送与存储器或I/O设备交换所需要的16位数据D15~D0。2.地址/状态总线A19/S6、A18/S5、A17/S4和A16/S3为三态地址/状态总线,采用分时复用方式,具有传送地址信息和传送状态信息的双重功能,两个过程分开进行。在读写操作总线周期的T1状态用来输出高4位地址A19~A16(I/O端口输入输出操作时不用,全为低电平);在总线周期的其它T状态用来输出状态信息。S6:指示CPU当前是否连在总线上。S6=0表示CPU当前连在总线上。S5:标志位寄存器中的中断允许标志IF的当前状态。S5=1表示当前允许可屏蔽中断请求;S5=0表示禁止一切可屏蔽中断。S4和S3:指示当前正在使用的段寄存器,如表2-1所示3.控制总线BHE/S7:1、三态输出,采用分时复用方式。2、在总线周期的T1状态,输出BHE信号,表示使用高8位数据线AD15~AD8;否则,只使用低8位数据线AD7~AD0。3、在总线的其他T状态输出状态信息。4、BHE和A0组合起来表示的功能如表2-2所示。MN/MX:工作方式控制信号,输入。MN/MX接高电平表示CPU工作于最小模式,接地表示CPU工作于最大模式。RD:读信号,三态输出,低电平有效。该信号为低电平时表示当前CPU正在对存储器或I/O端口进行读操作。而具体是对存储器还是对I/O端口读取数据,取决于M/IO信号TEST:测试信号,输入,低电平有效。当CPU执行WAIT指令时,每隔5个时钟周期对TEST进行一次测试。该信号为高电平时,则CPU处于等待状态;变为低电平时,等待状态结束,继续执行被暂停的指令。READY:准备就绪信号,输入,来自被访问存储器或I/O端口的响应信号,高电平有效。该信号为高电平时表示要访问的存储器或I/O端口准备就绪,将在下一个时钟周期内完成数据传送;否则,表示存储器或I/O端口未准备就绪,将插入一个或多个等待周期直到READAY为高电平为止。RESET:复位信号,输入,高电平有效。该信号为高电平,至少还要保持4个时钟周期,CPU将停止当前的操作,将标志寄存器、IP、DS、ES、SS清零,将指令队列清空,并将段寄存器CS置为0FFFFH。因此该信号结束后,CPU从地址为FFFF0H处开始执行程序。INTR:可屏蔽中断请求信号,输入,高电平有效。该信号为高电平时表示外设发出了中断请求,CPU在每条指令的最后一个T状态去采样此信号。若INTR有效,而且中断允许标志IF=1则响应中断,转去执行中断服务程序;否则,CPU继续执行下一条指令。NMI:不可屏蔽中断请求信号,输入,上升沿触发,不受IF状态的影响,也不能用软件屏蔽。当该信号有效时,则执行完当前指令后立即响应中断。NMI是一种比INTR高级的中断请求。CLK:时钟信号,输入,为8086CPU提供主时钟信号。要求时钟周期的高电平、低电平之比为1:2。8086可以使用的时钟频率因不同的芯片而不同,8086-1为10MHz,8086-2为8MHz。VCC和GND:电源引脚VCC接高电平(+5V±0.5V),两个GND引脚接地。4.最小模式下的引脚信号(24~31)INTA:中断响应信号,输出,低电平有效。该信号从T2开始有效,表示CPU响应了外部发来的INTR信号。在中断响应总线周期,它可作为选通信号。ALE:地址锁存信号,输出,用来将地址/数据、地址/状态总线上的地址信号锁存到地址锁存器中,高电平有效。该信号为高电平时,利用它的下降沿将地址锁存在地址锁存器中。DEN:数据允许信号,三态输出,低电平有效。该信号为低电平时表示允许输出数据。最小模式下用作数据收发器的选通信号。DT/R:数据收发信号,三态输出,控制数据的传送方向。该信号为高电平时表示发送数据;低电平时表示接收数据M/IO:三态输出,用来区分是存储器访问还是I/O访问。该信号为高电平时表示存储器访问;低电平时表示I/O访问。WR:写信号,三态输出,低电平有效。该信号为低电平时表示CPU正在执行写操作。此外,至于是存储器写还是I/O写取决于M/IO。HOLD:总线请求信号,输入,用来向CPU请求总线使用权,高电平有效。HLDA:总线响应信号,输出,是对总线请求信号的响应,高电平有效。当CPU同意让出总线使用权时发出该信号。Acknowledge5.最大模式下的引脚信号(24~31)QS1和QS0:指令队列状态信号,输出,用来反映指令队列当前状态,如表2-3所示。S2、S1、S0:总线周期状态信号,三态输出,在总线周期的T4、T1和T2状态期间有效,其编码功能如表2-4所示。LOCK:总线锁定信号,三态输出,低电平有效。该信号为低电平时,总线被锁定,外部的总线主控设备不能占用总线。在指令的前面加前缀LOCK,就会产生LOCK信号,直到这条指令结束为止。例如:LOCKDECDWORDPTRDS:[DX-8]RQ/GT0和RQ/GT1:总线请求输入/允许输出信号,双向,三态。用来供外部主控设备请求并得到总线控制权,低电平有效。当该信号为输入时,表示其他主控者向CPU请求使用总线;为输出时,表示CPU对总线请求的响应信号。2.1.2内部结构与功能8086CPU按功能可分为两大部分:总线接口单元(BIU)和执行单元(EU),如图2-2所示。BIU负责取指令,EU负责执行指令,两个部分的操作是独立进行的也就是说,EU在执行指令的同时,BIU在读取下面要执行的指令。

1.总线接口单元(BIU)总线接口单元是8086CPU同存储器和I/O设备间的接口部件,提供了16位双向数据总线和20位地址总线,负责执行所有对外部总线的操作。BIU的主要功能是:①负责从内存单元中取出指令并送到指令队列中,等待EU去执行;②负责从指定内存单元或I/O端口中取数据送给EU去执行,或者将EU的操作结果送到指定的内存单元或I/O端口中。BIU由以下几部分组成:段寄存器:CS、DS、ES和SS指令指针寄存器IP:地址加法器:指令队列缓冲器:总线控制电路:2.执行单元(EU)EU的主要功能是:①从BIU的指令队列中获取指令;②对指令代码进行译码,发出各种控制信号;③进行算术/逻辑运算;④生成16位偏移地址,即计算出指令中操作数的内存单元地址的16位偏移地址;⑤将数据传送到BIU,或者接收BIU传送来的数据。EU由以下几部分组成:数据寄存器:4个16位数据寄存器AX、BX、CX和DX,主要用于存放运算过程中的数据或地址。4个16位数据寄存器也可以作为8个8位数据寄存器使用,其中AH、BH、CH和DH用于存放高字节,AL、BL、CL和DL用于存放低字节。指针寄存器:两个16位指针SP和BP,与堆栈段寄存器SS配合使用,用于存放当前堆栈段中某个单元的偏移量。变址寄存器:两个16位变址寄存器SI和DI,与数据段寄存器DS配合使用,用于存放当前数据段中某个单元的偏移量。算术逻辑单元(ALU):16位运算器,用于进行算术、逻辑运算,也可以按指令计算操作数在内存单元中的偏移地址。标志位寄存器(FR):16位标志位寄存器FR,共有9个标志位,如图2-4所示,其中6个是状态标志位,3个是控制标志位,用于反映CPU运行过程中的某些状态特征。暂存器:协助ALU完成运算,暂存参加运算的数据。EU控制器:负责从ALU指令队列中获取指令,经过分析译码,发出相应的控制命令。CF=1:最高位产生借位;PF=0:1的个数为奇数个;AF=0:低4位没有向高4位产生借位或进位;ZF=0:结果不为0;SF=1:运算结果为负;OF=1:126-(-5)=+131,超过了+127,产生溢出,所以运算结果不正确。2.1.3对存储器的管理CPU是通过总线来管理存储器的。具体来说,CPU通过地址总线的编码对存储器寻址;通过控制总线中的读控制和写控制信号控制信息的读出和写入;数据总线则是读出和写入信息的传递通道。1.存储器组织8086CPU具有20条地址总线,它的直接寻址能力为1MB(220)。存储器以一个字节作为一个存储单元;每个存储单元(即每个字节)都有唯一一个20位的地址(即5位的十六进制地址),称为存储单元的物理地址,范围是00000H~FFFFFH。

相邻两个存储单元可以存放一个字,字中的每个字节对应一个地址。其中,低字节(低8位)存放在低地址单元中,高字节(高8位)存放在高地址单元中。我们把低字节存放的存储单元的地址称为字的地址。例如,图2-5表示的是将一个字1234H存入地址为1000H的单元中。2.存储器分段与物理地址的形成

将1MB存储空间划分成若干个独立的逻辑段每个逻辑段最大不超过64KB段起始地址(段基址)为段寄存器内容×16,相当于段寄存器内容左移4位某一段内一个存储单元的地址,就可以用相对于段基址的偏移量来表示,这个偏移量称为段内偏移地址或有效地址(EA),其格式为:段基址:偏移地址物理地址的计算方法为:16位段基址左移4位,右端补0,然后与16位偏移地址相加,如图2-6所示即:物理地址=段基址×24+偏移地址。3.段寄存器的使用CPU在对存储器进行访问时,必须预先将段基址加载到段寄存器中。8086CPU中有四个段寄存器,分别是CS、DS、SS和EE,它们的作用分别是:CS:代码段寄存器,用来存放当前指令所在的段基址。与指令指针IP提供的偏移地址配合使用。DS:数据段寄存器,用来存放当前程序所使用的数据段的段基址。SS:堆栈段寄存器,用来存放当前堆栈段的段基址。与指针寄存器SP或BP提供的偏移地址配合使用。ES:附加段寄存器,用来存放当前运行程序所使用的附加数据段的段基址。【例2-2】(CS)=12BAH,(IP)=0100H,计算当前指令所在内存单元的物理地址。2.1.4对I/O端口的管理CPU与I/O设备之间是通过I/O接口进行信息和数据传输的。每个I/O接口都有一个或几个端口,它与CPU之间的通信利用I/O端口的寄存器来完成。同存储器单元地址一样,每个I/O端口都有唯一的一个地址,称为I/O端口地址或端口号。8086的I/O端口有统一编址和独立编址两种方式。8086可以采用独立编址的方式。8086使用A15~A0共16条地址线作端口地址,可访问的I/O端口最多可有64K个8位端口或32K个16位的端口(任何两个相邻的8位端口可以组合成一个16位端口)。同存储器的字访问类似,要访问奇地址16位端口,需要访问两次才能完成。8086CPU设置了专门的输入/输出指令(IN和OUT)来访问I/O端口。由于I/O地址线和存储器地址线是公用的,所以要通过8086CPU控制总线中的M/IO信号来区分地址总线上传送的是I/O端口地址还是内存地址2.28086系统构成为了适应各种场合,8086CPU可以工作在最小模式或最大模式下,由MN/MX引脚进行控制。最小模式是单机系统,系统中所需的控制信号全部由8086CPU本身直接产生;而最大模式可以构成多处理机系统,系统所需的控制信号由总线控制器提供。2.2.1最小模式下系统构成(1)采用三片8282锁存器完成20位地址锁存由于复用线上的地址信号A19~A16、A15~A0只在总线周期的T1状态出现,所以要用锁存器对地址进行锁存,提供20条地址总线。8282锁存器有8个输入端和8个输出端。以及两个控制端:选通控制端STB和输出允许控制端OE,分别用来控制地址的锁存和数据的输出。(2)采用两片8286收发器驱动8位数据总线双向数据收发器8286可以提供收和发两个方向的8位数据。8286收发器有两个控制引脚:允许控制端OE和方向控制端T,分别用来控制数据的通过和数据的流向。2.2.2最大模式下系统构成在最大模式下,系统包含两个或多个微处理器,其中一个是主处理器,其他处理器为从处理器。在最大模式下,地址锁存器和数据收发器与最小模式下相同,只是它们所用到的控制信号由总线控制器8288提供存储器读写、I/O读写以及中断响应等总线命令信号也由8288产生。2.38086总线时序

2.3.1总线周期概念微处理器在运行过程中是在时钟脉冲的控制下执行每一个操作的。每个时钟脉冲的持续时间称为一个时钟周期,其频率称为主频(时钟频率)。时钟周期是CPU的基本时间单位。时钟周期越短,CPU执行的速度就越快。CPU通过总线实现对存储器或I/O端口的访问,每一次访问过程称为一个总线周期。若执行的是数据输出,则称为“写”总线周期;若执行的是数据输入,则称为“读”总线周期。一个典型的总线周期包含4个时钟周期,分别称为4个状态,即T1状态、T2状态、T3状态和T4状态。一个指令周期往往包括多个总线周期,而一个总线周期又包含多个时钟周期。2.3.2总线操作时序CPU通过总线执行各种操作时,总线上各信号之间在时间上的配合关系称为总线时序。8086的主要操作时序有:系统复位和启动操作时序、总线操作时序、总线保持时序、中断响应时序、总线请求/允许时序等1.系统复位与启动操作时序系统复位和启动操作是通过RESET信号来触发的。系统复位后启动时,将从0FFFF0H单元开始执行指令。2.最小模式下的总线读时序

3.最小模式下的总线写时序

2.4新型微处理器与新型主板简介2.4.1新型微处理器的特点与主要指标就目前来说,衡量CPU性能的指标主要有以下几个(1)主频主频也叫时钟频率,单位是Hz。CPU的主频=外频×倍频系数。值得注意的是,CPU主频是决定CPU运算速度的主要因素,但不是全部,CPU的运算速度还取决于CPU的其他内部设计。目前,主流CPU的主频已高达3GHz左右。

(2)外频外频又称总线速度,它决定着整块主板的运行速度。目前,主板的外频主要有133MHz、200MHz、333MHz等。(3)倍频系数倍频系数是指CPU主频与外频之间的相对比例关系。在相同的外频下,倍频系数越高,CPU的频率也越高。(4)前端总线(FSB)频率前端总线是CPU连接北桥芯片的总线。也就是说,CPU通过前端总线和北桥芯片与内存、显卡交换数据。因此,前端总线频率越高,CPU的数据传输速度越快,也就越能充分发挥CPU的性能。(5)字长目前,包括Intel和AMD的主流CPU都已经是64位了。但是,请大家注意,如果所用操作系统和相关软件不是按照64位指令进行编制的,那么,即使CPU是64位字长,也没有什么意义。(6)缓存缓存大小也是CPU的重要指标之一,而且缓存的结构和大小对CPU速度的影响非常大。CPU缓存的运行频率极高,一般是和处理器同频,要远高于系统内存和硬盘。现在的CPU通常会配置两级或三级缓存(L1Cache、L2Cache和L3Cache),以便将要执行的指令或要存取的数据预先由内存放到缓存中,从而提高CPU的运行速度。原则上讲,缓存越大越好,但由于工艺的原因,缓存又不可能做得太大。目前,主流CPU的L1Cache容量通常为128KB数据缓存加128KB指令缓存,L2Cache容量通常为4MB。(7)CPU核心数量CPU核心(Die)又称为内核,是CPU最重要的组成部分。对于某些CPU来说,CPU中心那块隆起的芯片就是核心。此外,为了便于CPU的设计、生产和销售管理,CPU制造商还会对各种CPU核心给出相应的代号,这也就是所谓的CPU核心类型。由于受到频率的限制,在现有架构上再提高CPU的工作频率已经越来越困难,为此,AMD和Intel公司都先后开发出了多核CPU。它们通过在一个CPU芯片内封装多个CPU核心,来提高CPU的运算速度。(8)CPU内核和I/O工作电压CPU的工作电压分为内核电压和I/O电压两种。通常,CPU的内核电压要小于或等于I/O电压。内核电压由CPU的制程确定,制程越小,内核电压越低;I/O电压一般在1.6~5V。低电压能解决耗电过大和发热过高的问题。(9)CPU制程CPU制程是指芯片内电路与电路之间的距离。制程越小,意味着芯片内电路的密度越高,从而实现更为复杂的电路设计。目前,CPU的制程已由早期的几个微米达到几十纳米。(10)CPU扩展指令集CPU依靠指令来控制系统,每款CPU在设计时就规定了一系列与其硬件电路相配合的指令系统。因此,指令的强弱也是CPU的重要指标。目前,大部分IntelCPU和AMDCPU都在以前基本X86指令的基础上扩充了诸如MMX、SSE、SSE2等很多新指令,以适应多媒体、图形图像处理和网络开发的需要。2.4.2新型主板的结构目前,主板的核心是主板芯片组,它决定了主板的规格、性能和大致功能。我们平日所说的“865PE主板”、“955主板”等,其中的“865PE”和“955”指的就是主板芯片组。主板芯片组通常包含南桥芯片和北桥芯片。其中,北桥芯片主要决定主板的规格和系统的性能,它连接着CPU、内存、AGP或PCI总线。主板支持什么CPU,支持AGP或PCI多少速的显卡,支持何种规格和容量的内存,都是北桥芯片决定的。北桥芯片往往有较高的工作频率,所以发热量颇高,我们在主板上可以在CPU插槽附近找到一个散热器,下面的就是北桥芯片。因此,相同北桥芯片的主板,性能差别微乎其微。主板上的各种接口(如串口、USB接口、IDE接口、SATA接口)、PCI总线(连接声卡、网卡等)以及主板上的其他芯片(如集成声卡、集成网卡等)都归南桥芯片控制。南桥芯片通常裸露在PCI插槽旁边。南北桥间进行数据传递时需要一条通道,这条通道就是南北桥总线。南北桥总线越宽,数据传输越快。另外,在各厂商的主板芯片组中,南北桥总线都被各自起了名字,如Intel的Hublink、DMI,VIA的V-Link等。2.5微型计算机常用系统总线简介

总线是计算机各部件之间传输数据、地址和控制信息的公共通道。几乎所有的总线都包括数据总线、地址总线和控制总线三部分。1、数据总线用来在各部件之间传送数据信息,数据总线的宽度表示一次传送数据的位数。例如,ISA总线的数据宽度为16位,也就是说,ISA总线一次可以传送16位

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论