This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320TCI6618:L1P 和 L1D 高速缓存问题

Guru**** 2553450 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/622578/tms320tci6618-l1p-and-l1d-cache-issue

器件型号:TMS320TCI6618

大家好、TI 专家、

您能否帮助解决此缓存问题、缓存错误指示什么以及我们如何解决此问题?

背景:

在 TCI6618中、我们尝试将事件从同一个内核1发送到内核1 (内核索引从0开始)。 如果我们在 Emti_WB()之后使用 mfence,则不会出现问题,如果我们在没有 Emti_WB()的情况下使用 mfence,则会发生缓存问题。

对于相同的代码、此问题仅在 TCI6618中发生、但在 K2K 器件中不会发生。

问题:

o L1P 和 L1D 问题同时发生。

L1P 问题:

        • 行:842 0x00006940分配自:0x1184e940 ->*:Emti_wbinv (o = 0x80)
        • 检测到位错误:
  L1P 缓存地址(路:0-3):DSP 地址:phy mem 中的数据:缓存中的数据
  --------------------------------------------------
   0x00006940 (路:0)   : 0x1184e940:   0x00000000   :  0x00006000:*:Emti_wbinv (o = 0x80)
    以位数表示的错误:
                 !!
        3322222221111111110000000000
        109876543210987654321098765432109876543210
    原始:000000000000000000000000000000000000000000000000000000000000
    已切换:0000000000000110000000000000
正确的获取数据包:*:Emti_wbinv (o = 0x80)
损坏的获取数据包: *:Emti_wbinv (o = 0x80)
位错误总数:2.
L1D 问题:

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

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    BTW、缓存寄存器配置如下。
    CSR = 0x15000102 = 352321794
    |位0:0 = GIE、中断被禁用
    |位1:1 = PGIE、中断将在从中断返回后被启用
    |位2 -4:0 = DCC,启用2路高速缓存
    |位5 -7:0=PCC,启用直接映射缓存
    |位8:1 =小端模式
    |位9:SAT 位0x0
    |位10-15:断电模式:0x00
    |位16-23:修订 ID:0x00

    Dave
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    我已通知团队。 他们的反馈将在此处发布。

    此致、
    Yordan