潮声隔雨深 · 2019年12月29日

如何获得cortex-a8中的Debug unit 的基地址?

我在使用cortex-a8芯片编程DebugUnit,在CORTEX-A8 手册中的Debug章节看到了可以通过CP14和memory-map两种接口访问DebugUnit,我从CP15_debug_feature中读取到0x00010400,因此这个芯片支持Memory-map接口,手册中给出了4KB的寄存器空间 ,但是我如何才能获得这些寄存器的基地址,从而通过Memory-map接口访问这些寄存器,谢谢!

1 个回答 得票排序 · 时间排序
一知半解 · 2019年12月29日

首先要明确你是通过A8访问这些寄存器还是通过外面的debugger来访问:

  1. 如果是通过A8访问,你可以通过访问DBGROMADDR这个寄存器来知道ROM table的base address,然后加上DBGSELFADDR寄存器得到A8的register base address.

2.如果是通过外部debugger访问,你需要先查看ROM table,然后遍历每个entry找到A8的register base address.

你的回答