问题 问答题

阅读以下关于中断的叙述。

[说明]

在某嵌入式系统中,王工设计的计算机模块如图4-1所示。它要求CPU在执行完当前指令后转而对中断请求进行处理。假定:TDC为查询链中每个设备的延迟时间,Ta、Tb、Tc分别为设备A、B、C的中断服务程序所需的执行时间,TS和TR为保存现场和恢复现场所需的时间。

本系统不允许中断嵌套,如果CPU响应中断,则中断处理过程按照如下流程执行,将(1)~(5)的内容填入答题纸上相应的位置。

中断处理过程流程:

答案

参考答案:

(1)CPU关中断

(2)保存中断现场

(3)执行中断处理程序

(4)恢复现场

(5)开中断

解析:

[分析]: 如果系统设计时不允许中断嵌套,当系统产生中断后,CPU响应中断的流程如下:

a) CPU检查响应中断的条件是否满足;

b)如果CPU响应中断,则CPU先先中断;

c)保存中断现场,为了使中断处理程序不影响主程序的运行,要把发生中断时的任务上下文现场保存起来,当中断处理完成返回主程序时,CPU能够恢复主程序在中断前的状态,保证主程序的正确运行。

a)分析中断原因,根据中断向量得到中断处理程序入口地址;

b)执行中断处理程序;

c)退出中断,恢复现场;

d)开中断,CPU继续执行。

如果系统设计时允许中断嵌套,那么CPU响应中断的流程比上述流程复杂一些。

单项选择题
单项选择题