
对于不可屏蔽中断NMI,CPU响应中断的条件有哪些
1个回答
展开全部
按照是否可以被屏蔽,可将中断分为两大类:不可屏蔽中断(又叫非屏蔽中断)和可屏蔽中断。不可屏蔽中断源一旦提出请求,CPU必须无条件响应,而对可屏蔽中断源的请求,CPU可以响应,也可以不响应。CPU一般设置两根中断请求输入线:可屏蔽中断请求INTR(Interrupt
Require)和不可屏蔽中断请求NMI(NonMaskable
Interrupt)。对于可屏蔽中断,除了受本身的屏蔽位控制外,还都要受一个总的控制,即CPU标志寄存器中的中断允许标志位IF(Iinterrupt
Flag)的控制,IF位为1,可以得到CPU的响应,否则,得不到响应。IF位可以由用户控制,指令STI或Turbo
c的Enable()函数,将IF位置1(开中断),指令CLI或Turbo_c
的Disable()函数,将IF位清0(关中断)。
典型的非屏蔽中断源的例子是电源掉电,一旦出现,必须立即无条件地响应,否则进行其他任何工作都是没有意义的。典型的可屏蔽中断源的例子是打印机中断,CPU对打印机中断请求的响应可以快一些,也可以慢一些,因为让打印机等待儿是完全可以的。
对于软中断,它不受IF位的影响,所以属于非屏蔽中断范畴。还有一点,细心的读者会想到:CPU只有两根中断请求输入线,有多个中断源怎么办?
一般借助于外部电路
Require)和不可屏蔽中断请求NMI(NonMaskable
Interrupt)。对于可屏蔽中断,除了受本身的屏蔽位控制外,还都要受一个总的控制,即CPU标志寄存器中的中断允许标志位IF(Iinterrupt
Flag)的控制,IF位为1,可以得到CPU的响应,否则,得不到响应。IF位可以由用户控制,指令STI或Turbo
c的Enable()函数,将IF位置1(开中断),指令CLI或Turbo_c
的Disable()函数,将IF位清0(关中断)。
典型的非屏蔽中断源的例子是电源掉电,一旦出现,必须立即无条件地响应,否则进行其他任何工作都是没有意义的。典型的可屏蔽中断源的例子是打印机中断,CPU对打印机中断请求的响应可以快一些,也可以慢一些,因为让打印机等待儿是完全可以的。
对于软中断,它不受IF位的影响,所以属于非屏蔽中断范畴。还有一点,细心的读者会想到:CPU只有两根中断请求输入线,有多个中断源怎么办?
一般借助于外部电路
已赞过
已踩过<
评论
收起
你对这个回答的评价是?

2023-06-12 广告
主板芯片组是主板的核心组件,它决定了主板的基本性能和扩展能力。主板芯片组的要求如下:1. 强大的性能:主板芯片组需要具备强大的处理能力,能够支持高端处理器、高速接口和大容量内存。2. 良好的兼容性:主板芯片组需要与其他组件(如CPU、内存、...
点击进入详情页
本回答由华北工控提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询