当前位置:Gxlcms > 数据库问题 > Rocket - debug - TLDebugModuleInner - Program Buffer Access

Rocket - debug - TLDebugModuleInner - Program Buffer Access

时间:2021-07-01 10:21:17 帮助过:10人阅读

 

简单介绍TLDebugModuleInner中的Program Buffer Access。

 

技术图片

 

1. implementation-specific bits set by harts executing code

 

技术图片

 

1) haltedBitRegs/resumeReqRegs

 

haltedBitRegs和resumeReqRegs在dmactive为假的情况下,值为0。在dmactive为真的情况下,其值由hartHaltedId和hartResumingId确定:

技术图片

 

2) haltedBitRegs

 

技术图片

hartHaltedWrEn为真时,hartHaltedId对应的比特为真;

hartResumingWrEn为真时,hartResumingId对应的比特为假;

 

3) resumeReqRegs

 

技术图片

hartResumingWrEn为真时,hartResumingId对应的比特为假;

resumereq为真时,hamaskWrSel(component)选中的核心,对应的比特为真;

 

4) hartHaltedWrEn/hartHaltedId

 

hartHaltedId接收写寄存器的数据,hartHaltedWrEn是写寄存器的标志:

技术图片

 

谁写呢?核心写:

技术图片

核心如何写?想必是通过读写指令。

 

5) hartResumingWrEn/hartResumingId

 

hartResumingId接收写寄存器的数据,hartResumingWrEn是写寄存器的标志:

技术图片

这个寄存器也是由核心来写。

 

2. sbcsFields, sbAddrFields, sbDataFields

 

通过SystemBusAccessModule生成系统总线相关的寄存器:

技术图片

 

3. Program Buffer Access

 

生成通过dmi接口访问寄存器的逻辑:

技术图片

 

包括除了由outer实现的dmcontrol/hawindow/hawindowsel寄存器之外的,其他寄存器:

技术图片

 

4. 附录

 

Rocket - debug - TLDebugModuleInner - Program Buffer Access

标签:active   ack   cpi   div   inner   tps   abd   for   aci   

人气教程排行