繁体   English   中英

如何测试中断延迟?

[英]How to test Interrupt Latency?

Windows Embedded Compact 7。

有没有一种方法可以从用户空间测试中断延迟时间?

平台构建器是否提供任何工具?

我还看到了一个名为Intrtime.exe的程序-但没有有关如何使用它的示例。

如何测试中断等待时间?

Intrtime.exe的参考,但如何实现?
http://www.ece.ufrgs.br/~cpereira/temporeal_pos/www/WindowsCE2RT.htm

编辑
还发现:

ILTiming.exe实时测量工具(Compact 2013)

http://msdn.microsoft.com/en-us/library/ee483144.aspx

这确实是一项需要硬件的测试,您可能需要测量几个“延迟”。 从中断信号到驱动程序ISR反应的时间是一次,从中断发生到IST反应的时间是第二个时间。

在CE 3.0 / CE 4.0的日子里,我通过将信号发生器连接到可中断输入上来实现了这一点,然后在接收到中断时将ISR脉冲作为第二输入,将IST脉冲作为第三输入。 我将示波器连接到输入和输出,并用它来测量输入信号和输出信号之间的时间,以不仅获得延迟,而且获得抖动。 您可以轻松地为CE 7添加第4行,以便可以检查用户空间中的IST和内核空间中的IST。 我肯定会对看到结果感兴趣。

我认为您无法使用在平台上运行的软件来有效地进行测量,因为您遇到了尝试进行会影响结果的测量的代码问题。 您还说的是时间方式,低于系统时钟分辨率,因此调度程序也会出现问题。 CeLog也许可以在这些时候为您提供一个想法,但是设置和运行它可能比挂接示波器还需要做更多的工作。

中断等待时间通常是指中断源声明中断线与被调度的线程(有时在用户空间)然后执行结果之间的时间。

除非您的CPU在中断事件到达CPU时有某种准确的时间戳记(而不是在运行ISR时),否则,唯一真正准确的测量是在外部进行-通过测量断言和中断之间的时间。响应中断的线程可以控制的一些可观察到的信号。 为此通常使用DSO或逻辑分析仪。

软件技术通常依赖于在ISR中尽早存储准确的时间戳。 如果您确定中断线被置为与ISR运行之间的时间可以忽略不计,那么这可能是有效的。 另一方面,如果使用禁用中断来控制并发,或者嵌套了中断,则您可能也想对此进行衡量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM