Versal ACAP, RPU - 为调试寄存器 DBGDSAR 设置的值错误

描述
每个 RPU 处理器都有 1 个 DBGDSAR 寄存器,其中包含其 CoreSight ROM 表的偏移地址。

但是,读取 RPU 的 DBGDSAR 寄存器会返回以下不正确的偏移值:

处理器 DBGDSAR 期望值 DBGDSAR 实际值
RPU_0 0x0020_0003 0x003f_0003
RPU_1 0x0024_0003 0x003f_2003

尝试访问包含寄存器错误偏移地址的 CoreSight ROM 表将导致 RPU 处理器发生软件异常。

解决方案

影响:

此偏移值添加至 DBGDRAR 寄存器返回的值中,以获得每个 RPU CoreSight ROM 表的完整地址。

但是,DBGDRAR 和 DBGDSAR 寄存器都返回错误值。有关 DBGDRAR 勘误的详细信息,请参见 (Xilinx Answer 76203)

变通方法:
在 RPU软件中,确定所需的 RPU 实例(RPU0 或 RPU1),然后硬编码其 CoreSight ROM 表的完整地址(该地址同时包含 DBGDRAR 基地址和 DBGDSAR 偏移地址):

处理器 CoreSight ROM 表的完整地址
RPU_0 0xF0A00000
RPU_1 0xF0A40000

受影响的配置:

所有 Versal 器件。

解决方案:

不对该问题进行修复。

最新文章

最新文章