我正在尝试对一个C函数进行性能分析(该函数是从中断调用的,但我可以将其提取出来并在其他地方进行分析),这个函数运行在Cortex M4上。
有哪些可能性可以计算这个函数通常使用的周期数? 函数应该在大约4000个周期内运行,所以RTC不是一个选择,我猜测从反汇编中手动计算周期可能会很痛苦 - 而且只有在平均化的情况下才有用,因为我想在典型的流程和典型的闪存/内存使用模式下进行性能分析。
我听说过周期计数器寄存器和MRC指令,但它们似乎只适用于A8/11。我在Cortex-Mx微控制器中没有看到这样的指令。
有哪些可能性可以计算这个函数通常使用的周期数? 函数应该在大约4000个周期内运行,所以RTC不是一个选择,我猜测从反汇编中手动计算周期可能会很痛苦 - 而且只有在平均化的情况下才有用,因为我想在典型的流程和典型的闪存/内存使用模式下进行性能分析。
我听说过周期计数器寄存器和MRC指令,但它们似乎只适用于A8/11。我在Cortex-Mx微控制器中没有看到这样的指令。