阅读以下关于中断的叙述。
[说明]
在某嵌入式系统中,王工设计的计算机模块如图4-1所示。它要求CPU在执行完当前指令后转而对中断请求进行处理。假定:TDC为查询链中每个设备的延迟时间,Ta、Tb、Tc分别为设备A、B、C的中断服务程序所需的执行时间,TS和TR为保存现场和恢复现场所需的时间。
当设备A、设备B、设备C同时发出中断请求时,请计算出处理器处理设备A、B、C的时间TA、TB和TC。如果处理三个设备所需要的总时间为T,那么本系统所设计的中断极限频率f是多少?
参考答案:
(1)TA=3TDC+TS+Ta+TR
(2)TB=2TDC+TS+Tb+TR
(3)TC=TDC+TS+Tc+TR
(4)f=1/T
解析:
[分析]: 当设备A、设备B、设备C同时发出中断请求时,处理器按照优先级依次处理每个设备的中断请求。中断查询链中每个设备的延迟时间为TDC,设备A经过3个延迟,设备B经过2个延迟,设备C经过1个延迟,加上保存现场和恢复现场的时间,以及每个设备的中断服务程序时间,所以三个设备的中断处理时间分别为:
TA=3TDC+TS+Ta+TR
TB=2TDC+TS+Tb+TR
TC=TDC+TS+Tc+TR
如果处理三个设备所需要的总时间为T,那么本系统所设计的中断极限频率f=1/T。