ARM926EJ-S循环计数器

时间:2011-06-09 20:41:20

标签: timer embedded arm real-time-clock

我正在使用ARM926EJ-S并试图弄清楚ARM是否可以给CPU(例如可读寄存器)提供CPU的循环计数器。我想一个#代表自CPU上电以来的周期数。

在我的系统中,我只有低分辨率的外部RTC /定时器。我希望能够实现一个高分辨率计时器。

非常感谢提前!

2 个答案:

答案 0 :(得分:0)

arm-9未配备Cortex系列中包含的PMU(性能监控单元)。 PMU描述为here。 Linux内核配备了使用PMU进行基准测试性能的支持。有关perf工具集的文档,请参阅here

对手臂9不确定,需要多挖一点......

答案 1 :(得分:0)

您可能只有两个选择:

  • 使用指令周期精确模拟器;这里的问题是有效模拟外围设备和外部刺激可能很复杂或不可能。

  • 使用外围硬件计时器。在大多数情况下,您将无法以ARM9的典型内核时钟速率运行此类定时器,并且在定时周期的任何一侧为定时器提供服务时会有一个过头,但它可用于执行超过更长或更长时间运行的代码段的时间,这可能比循环计数更实用。

虽然循环计数可能在某种程度上可以扩展到不同的时钟速率,但它仍然受到内存和I / O等待状态的限制,因此可能不像它看起来像性能指标那样有用,除了在微观层面的分析通过更广泛的观点,通常可以获得更大的性能提升。