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.

[参考译文] AM5728:AM5728/SYSBIOS:执行 Cache_inv ()函数时出现数据不一致问题

Guru**** 2548350 points
Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1364985/am5728-am5728-sysbios-data-inconsistency-issues-when-execute-cache_inv-function

器件型号:AM5728

大家好、我正在对以下问题进行故障排除:

1.环境
 - AM5728 ,使用 MPU (ARM Cortex-A15 Core 1ea )和 PCIe 控制器
 - 2个进程正在通过 L3_MAIN Interconnet 路径读/写 OCMC-RAM
 - 2进程补充说明
   1) MPU (ARM Cortex-A15内核)→数据只读
   2) PCIe 控制器(安装在 PC 主板的 PCIe 插槽中、通过设备驱动程序访问)→数据写入/读取

2.问题现象
 地址:0x40468000
 大小:786Byte

 - PCIe 控制器将大小为786Byte 的数据写入 PCIe 控制器端的 OCMC-RAM。
 -调用 Cache_inv (PTR, Size, Cache_Type_ LD, true)函数在 MPU 端→我认为此操作初始化高速缓存(L1,L2)数据并从 OCMC-RAM,并将其更新到高速缓存。

当我在上述情况下检查缓存数据时、数据值与 PCIe 控制器写入的数据值不同。

对于我应该做什么以及应该检查什么来解决此问题、我非常感谢提供任何建议。

谢谢你。

#参考图像

 

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

    您好!

    Unknown 说:
    当我在上述情况下检查高速缓存数据时、数据值与 PCIe 控制器写入的数据值不同。

    您如何检查缓存的数据?

    此外、如果禁用缓存、您的读取/写入是否可以正常工作?

    此致、
    帕尔特