微处理器及其系统结构.ppt_第1页
微处理器及其系统结构.ppt_第2页
微处理器及其系统结构.ppt_第3页
微处理器及其系统结构.ppt_第4页
微处理器及其系统结构.ppt_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

第2章8086微处理器及其系统结构,本章主要内容2.18086微处理器2.2总线周期与总线结构2.38086总线操作时序,2.18086微处理器,2.1.18086CPU的内部结构执行单元EUEU的功能是从BIU的指令队列中取出指令代码,执行指令所规定的操作。主要有两种类型的操作:(a)算术/逻辑运算;(b)按寻址要求计算出16位偏移地址。,8086内部结构,(1)算术逻辑单元ALU进行算术、逻辑运算,或按寻址方式计算出寻址单元的16位偏移量。(2)标志寄存器F用来反映CPU最近一次运算结果的状态特征或存放控制标志。(3)数据暂存寄存器协助ALU完成运算,暂存参加运算的数据。(4)通用寄存器组AX、BX、CX、DX和SP、BP与SI、DI。(5)EU控制电路接收从BIU中指令队列取来的指令,经过指令译码形成各种定时控制信号,对EU的各个部件实现特定的定时操作。,2.总线接口单元BIU,根据EU的请求,负责实现CPU与存贮器或I/O设备之间的数据传送。(1)指令队列缓冲器其作用相当于早期CPU中的六个(字节)指令寄存器IR。(2)地址加法器和段寄存器用于实现从逻辑地址,到物理地址的转换运算。,(3)指令指针寄存器IP用于存放BIU将要取的一下条指令的段内偏移地址。(4)总线控制电路与内部通讯寄存器总线控制电路用于产生外部总线操作时的相关控制信号。内部通讯寄存器用于暂存BIU与EU之间交换的信息。,2.1.28086CPU内部寄存器,1.段寄存器(1)为什么要设置段寄存器如何用16位数据处理能力,实现20位地址的寻址呢?逻辑地址由两部分组成:段基址:偏移量物理地址=段基址10H+偏移量段起始地址,逻辑地址,偏移量:由IP、BX、BP、SP、SI、DI之一形成或根据指令的寻址方式来形成。起始地址:由段寄存器CS、DS、ES、SS之一左移4位供给。,【例2-1】试将逻辑地址3021H:26A1H转换成物理地址。解:计算如下:0+328B1H,3021,26A1,(2)段寄存器的功能用于存放CPU当前可以访问的4个逻辑段的基址。(3)信息的分段存储与段寄存器的关系段寄存器的利用使存储器地址空间扩大到1兆字节;为信息按特征分段存储和信息安全管理带来了方便。,2.通用寄存器,(1)数据寄存器16位寄存器:AX、BX、CX和DX;8位寄存器:AH、AL、BH、BL、CH、CL、DH和DL。(2)地址指针和变址寄存器设置地址指针和变址寄存器的目的缩短了指令码的长度;提高了指令寻址的灵活性。,地址指针和变址寄存器功能对存储器寻址时,用于存放段内偏移地址的全部或一部分。SP堆栈指针和BP基址指针寄存器通常用来作为地址指针,其段基址由段寄存器SS提供。SI和DI变址寄存器在字符串操作指令中,SI用作源变址寄存器,DI用作目的变址寄存器。,3.控制寄存器,(1)指令指针寄存器IP用于控制程序中指令的执行顺序。如图2-7所示。,(2)标志寄存器F六个是状态标志,三个为控制标志;唯一能按位操作的16位寄存器只定义了其中的9位,其余7位不用,状态标志位:,反映ALU执行运算后其结果的状态(不是结果本身),控制标志位:,控制CPU的特定操作这些标志位的值由指令直接赋值,而不像状态标志位那样由运算结果来决定。,溢出标志位OF(OverflowFlag):,求解方法:双进位位法最高进位位次高进位位,操作数的运算结果超出了机器表示的范围称为溢出,状态标志位:,进位/借位标志位CF(CarryFlag):,最高位向前一位是否有进位(加法)/借位(减法),辅助进位/借位标志位AF(AuxiliaryCarryFlag):,数据第三位向第四位是否有进位(加法)/借位(减法),符号标志位SF(SignFlag):,根据最高位判断两个带符号数运算后结果正/负的标志,若为无符号数的运算,则该位为运算结果的最高数据位,并无正/负符号的含义,奇偶标志位PF(ParityFlag):,运算结果数据的低八位中“1”的数量为奇数/偶数,零状态标志位ZF(ZeroFlag):,数据运算结果是否为全0,状态标志位受指令操作结果影响:,有些运算操作将影响全部状态标志,如加法、减法运算;有些操作影响部分状态标志,如移位操作;有些指令的操作不影响任何状态标志,如数据传送类指令。,中断控制标志位IF(InterruptFlag):,用于屏蔽8086CPU系统中的可屏蔽中断源,只对可屏蔽中断源有效对不可屏蔽中断和软中断(指令INT)无效,陷阱控制标志位TF(TrapFlag):,用于程序设计中的调试,CPU每执行一条指令后,自动产生一次内部中断,使CPU处于单步执行指令的工作方式,便于进行程序调试,用户能检查当前程序运行的状态及结果。,2.1.38086CPU的外部引脚及功能,地址/数据总线AD15AD0(双向、三态)在总线周期的第一个时钟周期T1,输出低16位地址(记为A15A0);而在总线周期的其他时钟周期内,用于传送数据。当CPU处于“保持响应”状态时,这些引脚处于高阻隔离状态。,2.地址/状态线A19/S6A16/S3(输出、三态),在总线周期的第一个时钟周期T1时,输出地址的高4位(A19A16);在其他的时钟周期,输出状态信号。S3和S4:表示正在使用的是哪个段寄存器,如表2-2所示。S5:指示IF的当前状态。S6:则始终输出低电平(“0”),以表示8086当前连在总线上。,当系统总线处于“保持响应”状态时,这些引线被浮置为高阻状态。,3.控制总线,读控制信号线RD(输出、三态)表示CPU正在进行读存储器或读I/O端口的操作。是对内存单元还是对I/O端口读取数据,取决于M/IO信号。在系统总线进入“保持响应”期间,被浮空。(2)准备好信号READY(输入)是由被访问的存储器或I/O端口发来的响应信号;当READY=1时,表示所寻址的存储单元或I/O端口已准备就绪,马上就可以进行一次数据传送。,当READY=0时,表示所寻址的存储单元或I/O端口尚未准备就绪,要求CPU自动插入一个或几个TW等待状态,直到READY线出现高电平才进行数据传送。(3)总线高字节允许/状态,BHE/S7(输出、三态)在总线周期的第一个时钟周期,输出总线高字节允许信号BHE;其余时钟周期,输出状态S7,目前S7并没有定义。若BHE=1,表示数据传送只在AD0AD7上进行,它和A0配合,用来产生存储体的选择信号。,(4)可屏蔽中断请求信号INTR(输入)当INTR=1时,表示外设提出了中断请求,CPU在每个指令周期的最后一个T状态去采样此信号。若IF=1时,则CPU响应中断,CPU通过执行中断响应周期转去执行中断服务程序。若IF=0时,则CPU继续执行指令队列中的下一条指令。(5)非屏蔽中断请求信号NMI(输入)上升沿有效,不受IF状态的影响;NMI比INTR的优先级更高。,(6)等待测试信号TEST(输入)测试信号是由WAIT指令来检查的。(7)系统时钟CLK(输入)它为微处理器提供基本的定时脉冲。(8)复位信号RESET(输入)使CPU立即结束它的当前操作,执行再启动过程。复位后CPU内部各寄存器的状态,如表2-3所示。,(9)最小/最大方式信号MN/MX(输入)当接+5V时,则CPU工作于最小方式;若该引脚接地时,则CPU工作于最大方式。(10)其他控制信号(2431引脚)这些控制线的功能将根据控制线MN/MX所处的状态而确定。4.电源线Vcc和地线GND电源线Vcc接入的电压为+5V10%;两条地线GND,均应接地。,2.2总线周期与总线结构,2.2.18086的总线周期1.总线周期CPU经外部总线,对存储器或I/O端口进行一次信息传送的过程,称为总线操作。执行总线操作所需要的时间,称为总线周期。一个总线周期至少由4个时钟周期T组成。总线周期的基本波形,如图2-10所示。,BIU在下列情况下,执行一个总线周期:根据指令的需要,由执行单元EU,请求BIU执行一个总线周期。当指令队列缓冲器已经空出两个字节,BIU必须填写指令队列的时候。2.空闲状态TI在两个总线周期之间,存在着BIU不执行任何操作的时钟周期,这些不起作用的时钟周期称为空闲状态。,3.等待状态TW(WaitState)当CPU与慢速的存储器和I/O设备交换信息时,为了防止丢失数据,在总线周期的T3和T4之间,插入一些必要的等待状态TW,用来给予必要的时间补偿。包含有TI与TW状态的典型总线周期,如图2-11所示。,2.2.28086最小方式时引脚功能和总线结构,8086最小方式时引脚功能地址锁存信号ALE(输出)ALE总是在总线周期的第一个时钟周期时有效,以表示当前在地址/数据复用线上输出的是地址信息。通常,地址锁存器将ALE作为锁存信号,对地址进行锁存。注意:ALE端不能被浮空。,(2)数据允许信号DEN(输出、三态)在CPU访问存储器或I/O端口的总线周期的后半段时间内,该信号有效。表示CPU准备好接收或发送数据;被用来作为总线收发器的允许控制信号。(3)数据发送/接收信号DT/R(输出、三态)用以表示数据传送的方向,此线为高,表示发送数据,此线为低,表示接收数据。DMA方式时,此线浮空。,(4)输入输出/存储器信号M/IO(输出、三态)用以表示CPU是访问存储器,还是访问输入输出设备。此线为高,为I/O访问;此线为低,为存储器访问;DMA方式时,此线浮空。(5)写控制信号WR(输出、三态)有效时,表示CPU正在执行向存储器或I/O端口的输出操作。,(6)中断响应信号INTA(输出)它用于对外设的中断请求作出响应。这时,CPU发出两个连续的负脉冲,其第1个负脉冲通知外设接口,它发出的中断请求已获允许;第2个负脉冲通知外设接口,将中断类型码放上数据总线,供CPU读取。,(7)保持请求HOLD(输入)与保持响应HLDA(输出)信号HOLD信号:是另一个总线主控设备向CPU请求使用总线的输入请求信号;HLDA信号:是CPU回答的响应信号。在HLDA信号有效(高电平)期间,CPU让出总线控制权。这时,CPU处于“保持响应”状态。,2.8086最小方式时系统总线结构,(1)地址锁存,(2)数据线驱动,8086最大方式时引脚功能总线操作类型状态(编码)信号S0、S1、S2(输出)8086CPU工作在最小方式时,控制信号是直接从第2429引脚送出的;而在最大方式时,状态信号S0、S1、S2隐含了上面这些信息,S0、S1、S2和具体的总线操作之间的对应关系如表2.4所示。,2.2.38086最大方式时引脚功能和总线结构,表2-4S0、S1、S2的编码与8288命令的对应关系,(2)队列状态信号QS1、QS0(输出)QS1、QS0提供指令队列的状态信息,以便提供外部逻辑跟踪8086/8088内部指令序列。QS1、QS0表示的状态情况如表2.5所示。外部逻辑通过监视总线状态和队列状态,可以模拟CPU的指令执行过程并确定当前正在执行哪一条指令。有了这种功能,8086/8088才能告诉协处理器何时准备执行指令。在PC机中,这两条线与8087协处理器的QS1和QS0相连。,表2.5QS1、QS0的状态编码,(3)总线封锁信号LOCK(输出、三态)当LOCK为低电平时,系统中其他总线主设备就不能占有总线。(4)总线请求/总线请求允许信号RQ/GT1、RQ/GT0这两个信号端可供CPU以外的两个总线主控设备用来发出使用总线的请求信号和接收CPU对总线请求信号的回答信号。RQ/GT0比RQ/GT1的优先级更高。2.8086CPU最大方式时系统总结结构,2.38086总线操作时序,2.3.18086CPU最小方式时总线时序1学习时序的目的(1)深入理解微处理机的内部操作原理;(2)了解时序有利于在编源程序时,选用适当指令,以减少指令的存储空间和执行时间;(3)有助于更好地解决CPU与存储器以及各种外设之间的时序配合问题;(4)估算CPU完成操作所需的时间,以便与控制过程相配合。,28086CPU最小方式时总线周期时序,(2)写总线周期时序,(3)中断响应周期时序,(4)总线请求与总线响应时序,2.3.28086CPU最大方式时总线时序,2.中断响应周期时序最大方式时,由8288输出。其他均与最小方式时的中断响应周期时序一致。3总线请求和总线响应时序,思考题与习题,18086CPU为什么要分为EU和BIU两个单元?每个单元都有哪几部分组成?2EU和BIU是如何工作的?它们之间有什么联系?3指令队列在CPU执行指令时,起什么作用?简述指令队列的工作过程。4当CPU执行转移指令时,指令队列中的内容将如何发生变化?5在指令执行过程中,EU能直接存取存储器操作数吗?EU是如何得到指令中的操作数的?它又用什么方法将指令执行结果写入存储单元中?,68086/8088微处理器内部有哪些寄存器?其主要作用是什么?7试说明8086/8088CPU中标志寄存器中各标志位的意义?88086/8088系列微机在存储器中寻找存储单元时,逻辑地址由哪两部分构成?9设IBMPC微机内存中某一单元的物理地址是12345H,试完成下列不同的逻辑地址表示:1234H_H_H0345H,10若DS的内容设定为9000H,试指出当前数据段可寻址的存储空间的范围。11若当前代码段在存储器中占有以下空间:A0000HAFFFFH,则CS的内容应是多少?12若(AL)=10000010,(AH)=00000011,试指出AL的内容和AH中的内容相加或相减后

温馨提示

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

评论

0/150

提交评论