• Rocket


    https://mp.weixin.qq.com/s/GyGriFyeq_7Z3xOjKn56Mg

     

    简单介绍TLDebugModuleInner中DMSTATUS寄存器的实现。

     

     

    1. DMSTATUSRdData

     

    从DMSTATUS寄存器读取时,使用DMSTATUSRdData作为数据源:

     

    2. authenticated

     

    认证功能没有实现:

     

    3. version

     

    当前版本号值为2,代表Version 0.13:

     

    4. any & all

     

    规范中定义为:

     

    代码实现为:

     

    1) nonexistent

     

    某个或者全部被选中的核心不存在:

     

    在实现中:

    a. anynonexistent只表示hartsel选择的核心是否存在,并且认为小于nComponents的核心都存在;

    b. allnonexistent则表示hartsel和hamask选择的核心都不存在;

     

    2) unavail

     

    某个或者全部被选中的核心不可用:

     

    其实现依赖于io.debugUnavail,而io.debugUnavail目前未实现:

     

    3) halted

     

    某个或者全部被选中的核心被暂停:

    使用记录核心暂停请求的寄存器haltedBitRegs实现。

     

    4) running

     

    某个或者全部被选中的核心正在运行:

    使用记录核心暂停请求的寄存器haltedBitRegs实现。

     

    5) havereset

     

    某个或者全部被选中的核心被复位:

    使用记录核心复位状态的寄存器haveResetBitRegs实现。

     

    6) resumeack

     

    某个或者全部被选中的核心确认了针对他们的最近一个恢复运行的请求:

    使用记录核心恢复状态的寄存器haveResetBitRegs实现。

     

    5. haveResetBitRegs

     

    记录针对每个核心的复位请求状态。默认值为真:

     

    如果有相应的ackhavereset信号,则清除状态:

     

    6. impebreak

     

    是否实现隐式的ebreak指令:

     

    7. haltedBitRegs

     

    记录核心的暂停请求状态。默认值为假:

     

    根据halt/resume请求,决定其值:

                 

     

  • 相关阅读:
    svn的安装方法
    在powerDesigner中通过SQL生成pdm
    关于文件下载
    关于ClassPath的思考
    重读Spring之ConfigurationClassPostProcessor-改正错误
    SpringBoot自动装配原理
    SpringMVC之json是怎么传回前端的 @ResponseBody解析
    consumer配置参数之max.poll.interval.ms
    SpringMVC 之处理请求
    使用SpringMVC遇到的坑
  • 原文地址:https://www.cnblogs.com/wjcdx/p/12433080.html
Copyright © 2020-2023  润新知