- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012年3月 第3章附加的8086微型计算机系统
3.4.2 最小模式下的总线周期时序 中断响应周期时序 中断是指CPU中止当前程序的执行,而去执行一个中断服务程序的过程。 8086可以处理256种不同的中断,分为硬件中断和软件中断。硬件中断是由外部设备引发的,分为非屏蔽中断和可屏蔽中断两类。 非屏蔽中断是通过CPU的NMI引脚引入的,其请求信号为一上升沿触发信号,并要求维持两个时钟周期的高电平。当有非屏蔽中断请求时,不管CPU正在做什么事情,都会响应,级别很高。 3.4.2 最小模式下的总线周期时序 中断响应周期时序 一般外部设备的中断是通过INTR引脚向CPU发出中断请求的,这个可屏蔽中断请求信号的有效电平(高电平),必须维持到CPU响应中断为止。若标志IF=1,表示CPU允许中断,此时CPU在执行完当前指令后响应中断,其中断响应周期时序如下图所示。 3.4.2 最小模式下的总线周期时序 中断响应周期时序 在响应中断时,CPU执行两个连续的中断响应周期。如上图所示。 在每一个中断响应周期,CPU都输出中断响应信号INTA*。 在第一个中断响应周期,CPU使AD15-AD0浮空。在第二个中断响应周期,被响应的外设(或接口芯片),应向数据总线送一个字节的中断向量号,CPU把它读入后,就可以在中断向量表找到该设备的中断服务程序的入口地址,转入中断服务。 3.4.2 最小模式下的总线周期时序 8086的复位时序(对两种模式都一样) RESET引脚是用来启动或重新启动系统的。外部来的复位信号RST经8284同步为内部RESET信号(内部是在外部RESET信号有效后的时钟上升沿才有效),如下图所示。 4.8086的复位时序(对两种模式都一样) 复位后寄存器的状态 寄存器 状态 寄存器 状态 寄存器 状态 F(PSW) 0000H IP 0000H CS FFFFH DS 0000H SS 0000H ES 0000H 指令队列 空 IF 0(禁止) 其它 0000H 注:其它寄存器是指AX、BX、CX、DX、SP、BP、DI、SI。 3.4.2 最小模式下的总线周期时序 8086的复位时序(对两种模式都一样) 当8086在RESET引脚上检测到一个脉冲的上升沿,它终结所有的操作,直至RESET信号变低。 在复位的时候,CS和IP分别初始化为FFFFH和0。因此,8086在复位后执行的第一条指令,存在绝对地址为FFFF0H的内存单元。在正常情况下,从FFFF0H单元开始,存放一条JMP指令,一转移到系统程序的实际开始处。 在复位时,由于把标志位全清除了,所以系统对INTR线上的请求是屏蔽的。 8086要求复位脉冲的有效电平,必须至少持续四个时钟周期(若是闭合电源引起的复位,必须大于50us)。 3.4.2 最小模式下的总线周期时序 总线保持请求与响应周期时序 当系统中CPU之外的总线主设备需要占用总线时,就向CPU发出一个有效的总线保持请求信号HOLD,这个HOLD信号可能与时钟信号不同步。CPU在每个时钟周期的上升沿进行检测,当检测到该信号时,在当前总线周期的T4后或下一个总线周期的T1后,CPU发出一个有效的保持响应信号HLDA,并让出总线,此时,进入了DMA传送过程。当DMA传送结束后,发出总线保持请求的设备将HOLD恢复为低电平,CPU才收回总线控制权。这个过程称为总线保持请求与响应周期,如下图所示。 3.4.3 最大模式下的总线周期时序 最大模式下的读周期时序 3.4.3 最大模式下的总线周期时序 最大模式下的写周期时序 3.4.3 最大模式下的总线周期时序 最大模式下的总线请求/允许/释放操作 8086在最大模式下提供的总线控制联络信号是具有双向传输信号的引脚 ,称之为总线请求/总线允许/总线释放信号。它们可以分别连接到两个其它的总线主模块。在最大模式下,可发出总线请求的总线主模块包括:协处理器和DMA控制器等。 习题与思考1: 1.8086/8088 CPU编程结构由哪两部分组成?它们的主要功能各是什么?它们之间是如何协调工作的? 2.8086/8088 CPU中有哪些寄存器?各有什么用途?标志寄存器有哪些标志位?各在什么情况下置位? 3.8086/8088系统中存储器的逻辑地址和物理地址之间有什么关系?表示的范围各为多少? 4.已知当前数据段位于存储器的A1000H到B0FFFH范围内,问DS=? 5.某程序数据段中存有两个数据字1234H和5A6BH,若已知DS=5AA0H,它们的偏移地址分别为245AH和3245H,试画出它们在储存器中的存放情况。 习题与思考2: 什么是指令周期?什么是总线周期?什么是时钟周期?它们之间的关系如何? 什么是时序?为什么要讨论时序? 8086/8088 CPU读/写总
文档评论(0)