【接口技术】微型计算机的中断系统 上

中断原理

中断的基本概念

中断

由于某个事件的发生,CPU暂停当前正在执行的程序转而执行处理该事件的一个程序。该程序执行完成后,CPU接着执行被暂停的程序,这个过程被称为中断。

中断源

引发中断的事件称为中断源。
分为:内部中断(程序异常、陷阱中断、软件中断)和外部中断(外部故障、外部事件、IO事件)。

中断识别

用若干为二进制表示的中断源的编号

中断断点

由于中断发生,某个程序被暂停执行。该程序中即将执行,由于中断没有被执行的那条指令的地址称为中断断点

中断服务程序

处理中断事件的程序段称为中断服务程序。

  • 不同类型的中断需要不同的中断服务程序。
  • 不同于一般的子程序:子程序是某个程序的调用,由程序设定,执行时间是确定的。 中断程序时由某个事件引发,执行一般是随机的,不确定。

中断系统

为实现计算机的中断功能而配置的相关硬件、软件的集合称为中断系统。

中断管理

中断源的识别

  • 软件的识别:1、响应中断后,CPU进入中断处理程序;2、在这个程序里,CPU逐个查询各中断源的状态,确定是哪一个设备申请了中断。
  • 硬件识别:1、响应中断后,CPU进入了一个“中断响应周期”;2、在这个周期里,申请中断的设备向CPU发送它的中断类型。

中断的优先级

CPU在分配优先级时,一般是按照提出中断的外设的速度和它们在微机系统中所处的地位来分配的。

  • 软件查询法
    在这里插入图片描述

  • 链式优先级排队
    在这里插入图片描述

  • 可编程中断控制器——“向量”优先级排队

中断嵌套

CPU在处理中断过程中,如果出现了级别更好的中断请求,CPU停止执行低级中断的处理程序而去优先处理高级中断;等高级中断处理完毕后,再接着执行低级的未处理完的程序。
在这里插入图片描述

中断过程

中断源请求中断

1、外部中断源:由外部硬件产生可屏蔽或不可屏蔽中断的请求信号
2、内部中断源:在程序运行过程中发生了指令异常或其他情况。
3、中断屏蔽:CPU用程序的方法允许某些中断源发出中断请求,而禁止某些中断源请求中断。在外设的接口内增设一个中断屏蔽触发器。

中断响应

1、响应可屏蔽中断必须同时具备以下条件:

  • CPU处于允许中断状态(IF=1)
  • 没有不可屏蔽中断请求和总线请求
  • 当前指令执行结束

2、响应不可屏蔽中断必须同时具备以下条件:

  • 没有总线请求
  • 当前指令执行结束

3、响应内部中断的条件:

  • 当前指令执行结束

中断响应周期

CPU接受中断请求后转入中断响应的周期:
1、识别中断源,取得中断源的中断类型
2、将标志寄存器FLASS和CS、IP(断点)先后压入堆栈保存
3、清除自陷标志位和中断允许标志位IF
4、获得相应的中断服务程序入口地址,转入中断服务程序

8086 CPU中断系统

中断类型

用8位二进制表示,可以有256个不同的中断

外部中断

1、可屏蔽中断INTR
2、非可屏蔽中断NMI

内部中断

1、除数零中断
2、单步执行中断
3、溢出中断
4、指令中断

优先级

INT 0(除法溢出)–>溢出中断(INTO)–>INTn指令–>NMI–>INTR–>单步中断

外部中断过程

可屏蔽中断

1、IF=0时,CPU不响应INTR的中断请求;IF=1时,CPU响应INTR的中断请求
2、用STI指令使IF=1,称为开中断;用CLI指令使IF=0,称为关中断
3、系统复位后,或CPU响应了任何一种中断后,都会使IF=0
4、使用STI指令使IF=1,确保中断开放
5、可屏蔽中断源由8259A统一管理,每片8259A可以接受8个外设的中断请求

  • 电平触发方式,高电平有效。响应过程:
  • 1、第一个INTA总线周期,通知外部设备做好准备
  • 2、第二个INTA总线周期,从外部获取中断类型号
    在这里插入图片描述

不可屏蔽中断

1、NMI接收上升沿触发器的中断请求信号
2、输入脉冲大于两个时钟周期
3、CPU对NMI中断请求的响应,不受中断允许标志位IF控制
4、NMI中断类型码固定为2

中断向量表(十分重要!!!)

中断向量

中断向量是中断服务程序的入口地址的指示器

  • 中断向量表从内存00000H开始存放
  • 每个中断服务程序入口地址占用4个字节
  • 中断服务程序入口的偏移地址存入两个低地址字节,入口的段基地址存入两个高地址字节
  • 256个中断向量占用00000H~003FFH共1024个字节

在这里插入图片描述

中断向量表的组成

  • 中断类型号0~4为 专用中断指针 。占用0000H~0013H的20个字节,且用户不能修改
  • 中断类型号5~13位 保留中断指针 ,占用0013H~007FH的108个字节,用户不能使用
  • 中断类型号32~225为 用户使用的中断指针 占用0080H~03FFH的896个字节,可由用户指定。

保护模式使用中断描述符表

在这里插入图片描述

32位微处理器的工作方式

在这里插入图片描述

整体描述

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值