中断架构-8529A

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

中断相关概念

♦中断源:引起中断的时间 或 发出中断的外设

♦分类

①外部中断

▷可屏蔽中断(INTR引脚,一般是指interrupt的缩写,也就是中断)、
       ✔外设
       ✔受IF控制,N=8~255    (IF标志位)
▷不可屏蔽中断(NMI引脚)   (你妈超凶,你必须听)
       ✔电源,内存错误等
       ✔不受IF控制,N=2   

②内部中断

 ▷CPU内部
 ▷软件中断(指令错误)
 ▷异常(指令执行时发生错误)

●内部中断(异常,Exception):8088内部执行程序错误

①DIV或IDIV指令 (符号整除法指令)
②INT指令 (向CPU发送中断的指令)
③INTO指令 (溢出中断指令)
④单步中断(陷阱标志位TF=1,每条指令执行完成引起中断,N=1)
▷为用户提供发现、调试并解决程序执行异常的途径
例如BIOS和DOS功能调用,DEBUG

◆软中断

♦INT n指令产生一个中断 ♦N=n ♦例子:n=21H,DOS系统功能调用
♦N=n
♦例子:n=21H,DOS系统功能调用

●中断源的优先权(由高到低)

 ♦软件中断
         ①除法错中断
        ②指令中断
         ③溢出中断
 ♦非屏蔽中断
 ♦可屏蔽中断
 ♦单步中断
8259A

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8259A中断响应过程:
●8259A中断响应过程(单片)
在这里插入图片描述
❶当IR7-0有变高,中断请求寄存器IRR相应的位置1

❷若IMR相应位中断允许,则8259A通过INT向CPU送出中断请求

❸若CPU开中断,则用INTA响应2个负脉冲。

❹当8259A收INTA第1个负脉冲后,使最高优先权的ISR位置位,相应IRR位复位。优先权的顺序为: IR0﹥IR1……﹥IR7。

❺当8259A收第2个INTAA负脉冲,8259A向DB送出中断类型号N。

❻CPU读取DB上的N,自动计算中断向量(CS:IP)的保存地址(N4),在AB上出现N4,读取其中的中断向量(CS:IP)恢复到CS:IP中,实现进入中断服务程序。
在这里插入图片描述

●8259A中断响应过程(多片)
▷8259A可以级连,1个主片最多可以级连8个从片

♦级连时,主片CAS0~CAS2连至每个从片的CAS0~CAS2,输出被选中的从片ID,

♦每个从片的中断请求信号INT,连至主片8259A某个中断请求输入端IRi;主片的INT线连至CPU的中断请求输入端INTR

♦主片在第1个响应周期内通过CAS2~0送出从片ID,相应的从片在第2个响应周期内则将中断类型码N发送到数据总线上。

❶当IR7-0有变高,中断请求寄存器IRR相应的位置1

❷若IMR相应位中断允许,则8259A通过INT向CPU送出中断请求

❸若CPU开中断,则用INTA响应2个负脉冲。

❹当8259A收INTA第1个负脉冲后

    ♦若不是主8259A的中断源产生了的中断,则主8259A通过CAS输出从片ID,通过验证的从8259A负责(下面第5步)响应CPU。

    ♦使最高优先权的ISR位置位,相应IRR位复位。优先权的顺序为: IR0﹥IR1……﹥IR7。

❺当8259A收第2个INTA负脉冲,8259A向DB送出中断类型号N。

❻CPU读取DB上的N,自动计算中断向量(CS:IP)的保存地址(N4),在AB上出现N4,读取其中的中断向量(CS:IP)恢复到CS:IP中,实现进入中断服务程序

中断机制的硬件基础

在这里插入图片描述
●硬件方法(向量中断)
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值