描述
每个 RPU 处理器都有 1 个 DBGDRAR 寄存器,其中包含 CoreSight 根 ROM 表的地址。
但读取此寄存器时会返回错误的地址 0xfe800003。正确的返回地址应为 0xf0800003。
尝试访问包含错误地址的 CoreSight 根 ROM 表将导致 RPU 处理器发生软件异常。
受此影响的软件为在 RPU 处理器上运行并且依赖此寄存器来访问 CoreSight ROM 表的所有软件,通常为自托管的调试软件。
解决方案
影响:
如果 2 个 LSB 位 (VALID) 设为 0’b11,那么更高的位 (ROMADDR) 将指向 CoreSight 根 ROM 表。RPU 自托管调试软件可能依靠此寄存器来访问 ROM 表。
此类调试软件可能尝试访问错误地址 0xfe800000 从而导致 RPU 发生软件异常。
访问给定的 ROM 表地址时,根据配置,可能产生的影响包括系统挂起、返回未定义的数据、解码错误或安全违例。
由于此寄存器仅可供 RPU 访问,因此只有 RPU 自托管调试软件会受此影响。
变通方法:
请在自托管调试软件中将 CoreSight 根 ROM 表硬编码为访问正确的地址 (0xf080000),不读取此寄存器。
受影响的配置:
所有 Versal 器件。
解决方案:
不对该问题进行修复。