微机原理--第二章(3)8086的操作和时序

  • 时钟周期:时钟脉冲信号的一个循环时间叫一个时钟周期,又称为一个“T”状态,是微处理器工作的最小时间单位。
  • 指令周期:执行一条指令所需要的时间。
  • 总线操作:微处理器通过总线来进行取指令、存取操作数等操作。
  • 总线周期:完成一次对存储器或I/O端口的操作所需要的时间。
  • 时序:指令译码以后按时间顺序产生的确定的控制信号。

    1)系统的复位和启动操作

  • 复位和启动是通过RESET引脚上的触发信号来执行的。
    RESET最少维持4个时钟的高电平,上电复位时脉冲宽度应大于50μs,只要复位信号维持高电平,CPU就一直处于复位状态。
  • 实现复位的过程
    微机原理--第二章(3)8086的操作和时序_第1张图片

  • 复位状态
    三态输出线为高阻状态
    非三态输出线处于无效状态
    CPU内部寄存器置为初值

三态输出线 AD15~AD0 、A19/S6~A16/S3、BHE#/S7、 RD#、 INTA#、M/IO#(S2)、DT/R#(S1)、 DEN#(S0)、 WR#(LOCK#)
非三态输出线 ALE、HLDA、RQ#/GT0#、RQ#/GT1#、QS1、QS0

  • CPU内部寄存器初值
  • 启动操作
    RESET由高变低时,经7个时钟周期之后,CPU被启动恢复工作,从FFFFOH处开始执行程序。(FFFF0H即为微机BIOS的入口地址)

2)总线读/写操作

(1)最小模式下的总线读操作
微机原理--第二章(3)8086的操作和时序_第2张图片
(2)最小模式下的总线写操作

3)8086中断操作和中断系统

(1)8086的中断分类
8086的中断系统,可以处理256种不同的中断,每个中断对应一个中断类型号,256种中断对应的中断类型号为0~255。

  • 软件中断
    软件中断是由于8086内部执行程序出现异常引起的程序中断
    除法错中断: 中断类型号为0
    单步中断: 中断类型号为1
    断点中断 INT 3: 中断类型号为3
    溢出中断 INTO: 中断类型号为4
    指令中断 INT n: 中断类型号为n
  • 硬件中断
    硬件中断是由于8086外部提出中断请求引起的程序中断
    非屏蔽中断:中断类型号为2
    NMI请求(上升沿有效)
    可屏蔽中断:中断类型号来自外设中断接口INTR请求(高电平有效) 响应时产生INTA#信号
  • 中断标志IF的状态
    ① IF=0:可屏蔽中断不会被响应
    关中断
    系统复位,使IF=0
    任何一个中断被响应,使IF=0
    执行指令CLI,使IF=0
    ②IF=1:可屏蔽中断会被响应
    开中断
    执行指令STI,使IF=1
    ③执行指令IRET恢复原IF状态

(2)中断向量和中断向量表

  • 中断处理子程序的入口地址称为中断向量。
  • 将中断向量送入CS:IP即可转入中断处理子程序。
  • 中断向量表实现:由中断类型号获取与该类型号相对应的中断处理子程序的入口地址。
  • 中断向量表设置在内存低端的1K字节单元内,即00000H~003FFH单元。
    微机原理--第二章(3)8086的操作和时序_第3张图片

(3)可屏蔽中断

  • INTR:可屏蔽的中断请求,高电平有效,类型码在中断响应周期从数据总线上获得。
  • 可屏蔽中断的响应时序
    微机原理--第二章(3)8086的操作和时序_第4张图片
  • 可屏蔽中断的响应过程
    ①启动中断响应总线操作,在第2个中断响应总线周期读取中断类型号n。将n左移2位获得4n存放于暂存器中。
    ②执行1个总线写周期,将FR的内容压入堆栈。
    ③清除IF和TF标志。
    ④执行2个总线写周期,依次将CS和IP内容压入堆栈。
    ⑤执行2个总线读周期,依次将4n的字存储单元中的内容读入IP,将4n+2的字存储单元中的内容读入CS,于是,CPU从新的CS:IP值开始执行中断处理子程序。
  • 可屏蔽中断类型号的获得
    ①可屏蔽中断INTR的中断类型号由外设中断接口在第2个中断响应周期提供给CPU的。
    ②外设中断接口可以由用户自行设计,例如利用三态缓冲器74LS244提供中断类型号。
    ③利用可编程中断控制器专用芯片,例如8259A。

    (4)非屏蔽中断
    ① 从NMI引脚引入的中断是非屏蔽中断,它是由上升沿触发。
    ②NMI请求信号不受IF的影响,CPU一旦接收到请求信号,就会在当前指令执行完立即响应NMI中断。
    ③CPU响应NMI中断时,由CPU内部的硬件自动产生中断类型号2,无需外设提供中断类型码,故CPU不产生INTA#信号,不执行中断响应总线操作。
    //除上述外,非屏蔽中断的响应过程与可屏蔽中断相同。

    (5)软件中断的特点

  • 软件中断无随机性。

  • 软件中断不受中断允许标志IF的影响。

  • 中断类型码由系统预先定义或由INT n指令码给定。

  • CPU响应软件中断时,不执行中断响应总线操作,因此CPU不发出INTA#有效信号。

  • 软件中断的响应过程与非屏蔽中断类似。

4)最小模式下的总线保持

8086提供了一对专用于最小模式下的总线控制联络信号:HOLD和HLDA。

5)最大模式的总线请求/授权

最大模式下的总线请求/授权信号RQ#/GT#0 、RQ#/GT#1 是为多处理器应用而设计的,允许两个协处理器同时向主处理器请求总线使用。

总线控制权的切换通过三个环节来实现

  • 其他主模块发请求负脉冲
  • CPU发授权负脉冲
  • 其他主模块发释放负脉冲
    // 负脉冲宽度为一个时钟周期。

最大模式下总线请求/授权所具有的特点
- 总线请求与响应信号有两组,且RQ#/GT#0的优先级高于
RQ#/GT#1。(不允许嵌套)
- RQ#/GT#0、RQ#/GT#1是双向的,且低电平有效。
- 在其他处理器占用总线期间, RQ#/GT#不再维持低电平。

你可能感兴趣的:(8086的操作和时序)