摘要:
https://mp.weixin.qq.com/s/dF_0sE5ZakyY569wlppVHA 简单介绍TLDebugModuleInner中ABSTRACTCS寄存器的实现。 1. ABSTRACTCSReset 寄存器复位时使用的值: 其定义如下: 其中,datacount和progbufs 阅读全文
摘要:
https://mp.weixin.qq.com/s/elOGjaVCWc48gs9c_cTqww 简单介绍TLDebugModuleInner中HALTSUM寄存器的实现。 1. numHaltedStatus 为了记录每个核心的暂停状态,需要的宽度为32位的窗口数: numHaltedStatu 阅读全文
摘要:
https://mp.weixin.qq.com/s/9GjZAax0SZhRqLne16jn-w 简单介绍TLDebugModuleInner中HARTINFO寄存器的实现。 1. HARTINFORdData 读HARTINFO寄存器时使用的数据源,通过dmiNode访问: 其中的值基本上都是根 阅读全文
摘要:
https://mp.weixin.qq.com/s/GyGriFyeq_7Z3xOjKn56Mg 简单介绍TLDebugModuleInner中DMSTATUS寄存器的实现。 1. DMSTATUSRdData 从DMSTATUS寄存器读取时,使用DMSTATUSRdData作为数据源: 2. a 阅读全文
摘要:
https://mp.weixin.qq.com/s/7UY99gEJ8QpVBJIohdqKhA 简单介绍TLDebugModuleInner中innerCtrl相关的寄存器。 1. innerCtrl 接下来用到的innerCtrl来自于io中: io.innerCtrl从整体上看方向是输入,信 阅读全文
摘要:
https://mp.weixin.qq.com/s/jkiHceU0HaJbHGvHiU-QOA 简单介绍TLDebugModuleInner的实现。 1. 引入全局配置 1) cfg 引入DebugModulePrams: 2) hartSelFuncs 定义hartsel与hart id之间的 阅读全文
摘要:
https://mp.weixin.qq.com/s/9nMo6IYmDCz7S-ALFx824g 简单介绍TLDebugModuleOuter的实现。 1. DebugModuleAccessType 定义调试模块访问宽度: 2. DebugAbstractCommandError 定义抽象命令访 阅读全文
摘要:
https://mp.weixin.qq.com/s/70BoeS7z4aBZK24zxdZzXA 简单介绍DMI的实现。 1. DMIConsts 定义DMI使用的常量: 其中: a. dmiDataSize为数据宽度; b. dmiOpSize为操作宽度; 2. DMIReq 定义DMI请求的结 阅读全文
摘要:
https://mp.weixin.qq.com/s/eFOHrEhvq2PlEJ14j2vlhg 简单介绍SBA的实现。 1. SystemBusAccessState 系统总线访问状态: 分别是:空闲、读请求、写请求、读响应、写响应; 2. SBErrorCode 定义错误码: 3. SBToT 阅读全文
摘要:
https://mp.weixin.qq.com/s/YPFa6kE6I_Ud_MJGvzmS-g 简单讨论输入边/输出边Bundle的方向。 1. 上游节点的地址不重复 仔细看了一下sourceFn的实现: 其中要求上游节点中不存在重复的地址: 这样也就不存在decoded中存在两个元素同时为真的 阅读全文