EDN China > 其它文章 > 微处理器与DSP > 正文
?

中断响应时间(以外部中断INTx为例)

作者:Dragon1162: EDN China?? 2008年05月17日 ?? 收藏0
????? EDN博客精华文章??作者:Dragon1162

  每个机器周期的S5P2时刻,INTx引脚的电平被锁存到内部寄存器中,待下一个周期查询。

  1,最短时间:中断请求有效,查询后在下一个周期便开始执行一条硬件的子程序的调用(时间是两个周期),然后开始执行服务程序的第一条指令。这样从锁存电平的周期到执行中断服务程序,中间相隔3个机器周期。

  2,最长时间:如果中断信号发生在前面所说的3种情况时,响应时间就要变长:

  第1种情况:响应时间取决于高级中断的执行时间;

  第2种情况:指当前CPU执行的指令是多周期指令,如乘除法指令(4个周期),最坏情况,还要等3个周期。这样响应周期变为3+3=6个周期;

  第3种情况:CPU当前执行的指令是RETI或访问IE、IP寄存器时,本指令(1个周期)没有响应,且下一条指令执行完后才能响应,这样附加的等待时间最长不会超过5个周期(1+4)。整个响应为5+3=8个周期。这样,如果不考虑第1种情况,整个中断响应的时间范围应当是: 3~8个机器周期。

  中断响应时间的不确定,在大多数场合下可能是无关紧要的,但是对于一些较特殊的场合下,这种响应时间的不确定往往会带来一些问题。

  如:利用中断来编制一个时钟程序时,便不可避免的带来误差,所以是要提醒大家注意。在程序中可以使用一些算法来减少这种误差(参考清华的资料) 。

  相对比较美国mircchip公司的PIC单片机由于使用单字节、单周期指令,使中断响应时间固定,所以从根本上消除了这种的情况。


?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

中断? 响应时间? 单片机?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈