DMA 访问 DWT 寄存器

DMA access to DWT registers

我正在思考以下问题:

是否可以通过 DMA 传输访问 Cortex-M 设备中 DWT unit 的寄存器?

我的目的是在不对内核执行指令的情况下获取 DWT_CPICNT 寄存器的读数。

来自核心调试子系统的一般描述elsewhere in the TRM(强调我的):

All the debug components exist on the internal Private Peripheral Bus (PPB) and can be accessed using privileged code.

看一下 block diagram 中的拓扑也可以很清楚地看到,这些是围绕内核的调试层内部,只有内核本身和外部调试端口可以访问.

正如@LPs 指出的那样,即使它 一个外部块,仍然不能保证它是一个有效的 DMA 目标,因为这将进一步取决于 DMA 控制器以及 SoC 内的互连 - 只有特定 SoC 的手册才能告诉您 DMA 可以访问什么。