- 14
- 0
- 约6.36千字
- 约 39页
- 2017-08-31 发布于河南
- 举报
如何中断信号
(1) ?CPU响应中断的基本条件如下: ① 有中断源发出中断申请; ② 中断总允许位EA=1,即CPU开放中断; ③ 请求中断的中断源的中断允许位置1,即该中断源可以向CPU发中断申请。 CPU在每个机器周期的S5P2期间,采样中断源,而在下一个机器周期的S6期间按优先级顺序查询各中断标志,如查询到某个中断标志为1,将在再下一个机器周期S1期间按优先级顺序进行中断处理。但在下列任何一种情况存在时,中断响应会被阻止。 ??CPU正在执行同级或高一级的中断服务程序; ? 现行机器周期不是正在执行的指令的最后一个机器周期,即现行指令完成前不响应任何中断请求; ? 当前正在执行的是中断返回指令RETI或访问特殊功能寄存器IE或IP的指令。也就是说,在执行RETI或是访问IE、IP的指令后,至少需要再执行—条其他指令,才会响应中断请求。 中断查询在每个机器周期都要重复执行。如果CPU响应中断的基本条件已满足,但由于上述3个封锁条件之一而未被及时响应,待封锁中断的条件撤消后,若中断标志也已消失,则本次被拖延的这个中断请求就不会被响应。 (2) 中断响应过程。如果中断响应的条件满足,且不存在中断封锁的情况,则CPU将响应中断源的中断请求,进入中断响应周期。CPU在中断响应周期要完成下列操作: ① 将相应的优先级状态触发器置1; ② 由硬件清除
原创力文档

文档评论(0)