大家好、TI 专家、
您能否帮助解决此缓存问题、缓存错误指示什么以及我们如何解决此问题?
背景:
在 TCI6618中、我们尝试将事件从同一个内核1发送到内核1 (内核索引从0开始)。 如果我们在 Emti_WB()之后使用 mfence,则不会出现问题,如果我们在没有 Emti_WB()的情况下使用 mfence,则会发生缓存问题。
对于相同的代码、此问题仅在 TCI6618中发生、但在 K2K 器件中不会发生。
问题:
o L1P 和 L1D 问题同时发生。
L1P 问题:
-
-
-
- 行:842 0x00006940分配自:0x1184e940 ->*:Emti_wbinv (o = 0x80)
- 检测到位错误:
-
-
lastExceptionType = 0xea07a = 958586
|位0-19:958586 == EXCPHNDL_PRISYS_DMC_CMPA_EVT:CPU 内存保护故障(L1D)
内部异常计数= 0x0 = 0
外部异常计数= 0x2 = 2
其他异常计数= 0x0 = 0
除外 ReturnAddress = 0x118004dc =*:_odo_os_int_stub_stub (o = 0x00000120)
memProtFaultingAddress = 0x15000102 = 352321794
memProtFaultStatus = 0x120 = 288
|位5:1 =主管读取请求
|位8:1 =访问是本地访问
memProtFaultStatusExtension = 0x0 = 0
mdmaErrorStatus = 0x20000d01 = 53674241
|位29-31:1 =检测到 MDMA 读取状态错误
|位0 -2:1 =寻址错误
|位8-11:XID:0x000d
xmcMemProtFaultingAddress = 0x0 = 0
XmcMemProtFaultStatus = 0x0 = 0
总线错误状态= 0x0 = 0
semErrorStatus = 0x0 = 0
tpccEmrReg = 0x0 = 0
tpccEmrhReg = 0x0 = 0
tpccQemrReg = 0x0 = 0
tpcccerrReg = 0x0 = 0
tpccCcstatReg = 0x0 = 0
tptc 勘误寄存器= 0x0 = 0
tptc 勘误寄存器= 0x0 = 0
L1pErrorDetected = 0x0 = 0
l1pErrorInfo =
{
L1PEDADDR = 0x0 = 0
L1PEDSTAT = 0x0 = 0
}
Dave