【发布时间】:2019-03-28 15:31:18
【问题描述】:
我正在使用包含两个 ARM 处理器的两个硬件平台:
- Cortex-A15 和
- Cortex-R5。
我想通过 Lauterbach Trace32 导出由程序流和 BMC 值(基准计数器/性能计数器)组成的混合跟踪。为了阐明我的意图,我提供了以下综合示例:
Instruction | Cache Misses | ... |
------------+--------------+------
0x1234 | 1 | 0
0x1235 | 1 | 0
0x1236 | 2 | 0
我尝试使用以下命令正确设置跟踪器:
bmc.PMN0 DCMISS
bmc.export ON
bmc.trace ON
bmc.select PMN0
很遗憾,我无法导出包含我设置的 BMC 的跟踪。
我已经尝试了一些trace.export 命令,但从未成功。
有谁知道如何产生这样的痕迹?谢谢。
【问题讨论】:
-
您确定您的 SoC 实际上能够以某种方式将性能计数器的值导出到 CoreSight ATB?据我所知,一些 Cortex-M 芯片可以通过 STM 做到这一点,但我不认为 Cortex-A 在物理上是可行的。
-
您总是可以使用 SNOOPer 对 BMC 值进行采样。
-
我不确定,我依赖于 Lauterbach [ARM 调试器手册](documenthttp://www2.lauterbach.com/pdf/debugger_arm.pdf) 中所写的内容。文档报告:“Cortex-A/R 内核的计数器可以在运行时读取。”。
标签: performancecounter trace trace32 lauterbach