2024.10.13:计算机组成原理学习笔记
中断响应条件
- 条件1:CPU要处于开中断状态
- 条件2:至少要有一个未被屏蔽的中断请求
- 屏蔽?
- 中断优先级
- 屏蔽字的作用
- 条件3:当前指令刚执行完
条件1:CPU要处于开中断状态
当CPU处于开中断状态,我们才可以检测中断,此处没有考虑不可屏蔽中断,在大部分情况下,不可屏蔽中断是不能发生的,其次,不可屏蔽中断没有响应周期,只要检测到,立刻就去处理
条件2:至少要有一个未被屏蔽的中断请求
没有中断请求就不会响应
屏蔽?
对于一个外部中断,我们处理它的时候其实是分了两个阶段:响应、处理(执行服务程序)
(单级中断)不存在屏不屏蔽,屏不屏蔽指的是(多重中断)(在处理一个中断的时候出现了第二个中断请求或者同时出现了多个中断请求)
中断优先级
由于中断的处理分成了两个阶段,我们要先响应再处理,因此对于优先级来说,它也有两种
首先是(响应优先级),它处理的是如果多个中断源同时到达了,我应该先响应谁
- 中断响应优先级看题干(硬件的判优电路判出了一个优先级,指的就是响应优先级):由(查询程序或者中断判优电路)决定优先权,反映的是多个中断同时请求时选择哪个先被响应
其次是(处理优先级),响应之后,要执行这个中断源对应的中断服务程序
- 由(各自的中断屏蔽字)来动态设定的,反应了本中断与其他所有中断之间的处理优先级,在多重中断系统中通常用中断屏蔽字来对中断优先权进行动态分配
屏蔽字的作用
中断屏蔽:中断系统允许CPU在执行某个中断服务程序时被新的中断请求打断,但有些紧急的中断不允许被新的中断打断,这就是中断屏蔽的概念,通过中断屏蔽字来实现该功能
每一个中断源都会有一个自己的中断屏蔽字,系统可能会发生哪些中断,对应的屏蔽字就会有多少位,假设下列表格对应的这个计算机系统总共就只有四种中断
条件3:当前指令刚执行完
在非流水线处理器中,PC此时存放下条指令的地址
不管是(可屏蔽中断)还是(不可屏蔽中断),CPU都是会在一条指令执行完,采取检测这个引脚