https://mp.weixin.qq.com/s/9GjZAax0SZhRqLne16jn-w

 

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

 

Rocket - debug - TLDebugModuleInner - HARTINFO

 

 

1. HARTINFORdData

 

读HARTINFO寄存器时使用的数据源,通过dmiNode访问:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

其中的值基本上都是根据配置生成后即保持不变:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

2. dataaccess

 

表示使用CSR寄存器实现还是使用内存实现:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

当前实现中,其值为1:

Rocket - debug - TLDebugModuleInner - HARTINFO

也就是使用内存实现。

 

3. datasize

 

表示data寄存器占用的32位字数:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

这里从配置中获取:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

4. dataaddr

 

表示data寄存器的地址:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

这里是一个常量:

Rocket - debug - TLDebugModuleInner - HARTINFO Rocket - debug - TLDebugModuleInner - HARTINFO

 

5. nscratch

 

表示dscrash寄存器的数量:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

这里从配置中获取其值:

Rocket - debug - TLDebugModuleInner - HARTINFO

 

6. 附录

 略

 

 

相关文章: