0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为调试寄存器 DBGDRAR 设置的值错误

王涛 来源:秦小姐9048 作者:秦小姐9048 2022-08-02 15:57 次阅读

但读取此寄存器时会返回错误的地址 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 器件。

解决方案:

不对该问题进行修复。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19273

    浏览量

    229724
  • 寄存器
    +关注

    关注

    31

    文章

    5342

    浏览量

    120277
  • 软件
    +关注

    关注

    69

    文章

    4937

    浏览量

    87427
收藏 人收藏

    评论

    相关推荐

    调试ADS1256,输入5V时,读取寄存器6480143,计算后在3.8v达不到5V,为什么?

    最近在调试ADS1256,遇到了一个问题,请教一下大家。 1.ADS1256采用的是单端输入,PGA设置1,DRATE设置10SPS。
    发表于 12-06 07:34

    写单个线圈与单个保持寄存器相关

    05功能码用于将单个线圈寄存器(或离散输入)设置ON或OFF,该功能码支持广播模式在广播模式下,所有从站设备的同一地址的将被统一修改。查询报文中的ON/OFF状态由报文数据字段的常
    的头像 发表于 11-01 13:46 206次阅读

    Modbus协议的读取保持寄存器

    功能码用于读取从设备保持寄存器的内容,不支持广播模式。消息顿中指定了需要读取的保持寄存器的起始地址和数目。而保持寄存器中各地址的具体内容和意义则由设备开发者自行规定。
    的头像 发表于 10-30 10:54 1215次阅读

    详解寄存器模型镜像

    DUT的配置寄存器是实际,reg_model有镜像、期望的概念。
    的头像 发表于 10-23 09:43 264次阅读
    详解<b class='flag-5'>寄存器</b>模型镜像<b class='flag-5'>值</b>

    设置AM37x SDRC寄存器

    电子发烧友网站提供《设置AM37x SDRC寄存器.pdf》资料免费下载
    发表于 10-12 09:30 0次下载
    <b class='flag-5'>设置</b>AM37x SDRC<b class='flag-5'>寄存器</b>

    TDC_GP22模块的状态寄存器0x0408,粗计算溢出

    TDC_GP22状态寄存器读数(0x0408 )错误,0x0408 & 0x0600 > 0
    的头像 发表于 08-07 11:10 676次阅读
    TDC_GP22模块的状态<b class='flag-5'>寄存器</b><b class='flag-5'>为</b>0x0408,粗<b class='flag-5'>值</b>计算溢出

    寄存器分为基本寄存器和什么两种

    寄存器是计算机中用于存储数据的高速存储单元,它们是CPU内部的重要组成部分。寄存器可以分为基本寄存器和扩展寄存器两种类型。 一、基本寄存器
    的头像 发表于 07-12 10:31 1339次阅读

    stm32f030f4寄存器设置不了是怎么回事?

    规格书里说通过设置寄存器里的相应位,可以在内核停止时,使定时的时钟也停止。我就是希望在单步调试时,使定时的时钟停止。但实际上,我通过在
    发表于 04-17 06:20

    AFE模拟前端寄存器读取操作

    AFE模拟前端寄存器读取操作是电子系统设计和调试中不可或缺的一环。寄存器作为AFE模拟前端中的重要组成部分,存储着各种配置参数和状态信息,通过读取这些寄存器,工程师可以了解AFE的工作
    的头像 发表于 03-15 15:50 703次阅读

    介绍一个IC设计错误案例:可读debug寄存器错误跨时钟

    本文将介绍一个跨时钟错误的案例如图所示,phy_status作为一个多bit的phy_clk时钟域的信号,需要输入csr模块作为一个可读状态寄存器
    的头像 发表于 03-11 15:56 505次阅读
    介绍一个IC设计<b class='flag-5'>错误</b>案例:可读debug<b class='flag-5'>寄存器</b><b class='flag-5'>错误</b>跨时钟

    如何根据自己设计中的寄存器配置总线定义来生成一套寄存器配置模版

    无论是FPGA还是ASIC,系统设计中总会存在配置寄存器总线的使用,我们会将各种功能、调试寄存器挂载在寄存器总线上使用。
    的头像 发表于 03-04 13:56 1144次阅读
    如何根据自己设计中的<b class='flag-5'>寄存器</b>配置总线定义来生成一套<b class='flag-5'>寄存器</b>配置模版

    loop指令执行时,隐含的寄存器

    寄存器是否零。如果不为零,则跳转到指定的循环体代码块执行,并在执行完循环体后再次执行loop指令。如果CX寄存器
    的头像 发表于 02-14 16:15 944次阅读

    arm三个寄存器在gdb调试时的作用

    的ARM寄存器(r0、r1和r2)的作用非常重要。 1. R0寄存器: R0寄存器是ARM处理中的一个通用寄存器。它用于传递函数参数和保存
    的头像 发表于 01-31 10:44 979次阅读

    如何通过DMA从状态寄存器中将设置CTDAC_VAL寄存器

    我想通过 DMA 从状态寄存器中将设置 CTDAC_VAL 寄存器。 我写道, cy_descriptor_setsrcAddressr
    发表于 01-25 07:00

    个人对STM32 SysTick的总结(寄存器操作)

    一、概述:SysTick是一个简单的递减24位计数。如果你不需要再应用程序中嵌入操作系统,SysTick可以作为简单的延时和产生周期性的中断。状态控制寄存器的第0位可以使能计数,当前
    的头像 发表于 01-06 08:00 1866次阅读
    个人对STM32 SysTick的总结(<b class='flag-5'>寄存器</b>操作)