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.

[参考译文] RTOS/AM4377:高速缓存配置问题

Guru**** 2589280 points
Other Parts Discussed in Thread: AM4377, SYSBIOS

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/640685/rtos-am4377-cache-configuration-question

器件型号:AM4377
Thread 中讨论的其他器件: SYSBIOS

工具/软件:TI-RTOS

大家好、  

我的客户最近遇到了 MMU 缓存设置问题。 器件为 AM4377、而软件使用的是处理器 SDK RTOS。  

在 RTOS 应用程序期间、必须使用 MMU 来提高性能。 但是、在 RTOS 中配置 MMU 似乎有两种方法:

1.修改工程的.cfg 文件。

请参阅 C:\ti\pdk_AM437X_1_0_8\packages\MyExampleProjects\UART_BasicExample_idkAM437x_armExampleProject 下的示例,该示例是 am437x_app_idkam437x.cfg 设置中的 Cache 和 MMU 配置部分。 如下所示:

2.在项目 main.c 文件中添加代码。  

请参阅 C:\ti\pdk_am437X_1_0_8\packages\MyExampleProjects\EMAC_BasicExample_idkAM437x_armBiosExampleProject 下的示例该工程的 main_idkAM437x.c 文件中的 SDKMMUInit 函数  

这两种配置之间有何区别? 是否有任何说明配置步骤的文档?

我的客户反馈说、如果他们以各种方式配置 MMU、结果会有很大不同。  

此外、是否有任何文档说明了如下 MMU 设置的不同影响? 此设置似乎会对外部器件运行延迟和从 DDR 读取数据所消耗的时间产生很大影响。  

我的客户现在正在处理一个问题、即在 MMU 初始化之后、DDR 数据读取非常耗时。 他们希望了解以下每种配置如何影响 DDR 数据读取延迟。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Steven、

    与您提到的两种方法一样、设置 MMU 的不同方法可能会影响性能。 SysBIOS .cfg 中的设置将被代码中的 SDKMMUInit ()覆盖。 我的一位同事正在进行外设访问延迟演示。

    对于 DDR 访问、您能否尝试使用以下.cfg 中的设置来查看是否有任何帮助?

    Mmu.initDescAttrsMeta(attrs1);
    attrs1.type = MMU。DescriptorType_block;//块描述符*/
    attrs1.sharedable = 2; /*可执行*
    attr1.Indattrx=2; //缓存,正常内存*/

    /*为地址范围中的每个条目的设置描述符*/
    对于(var i=0x8000000000;i < DDR_endaddress;i = i + 0x00200000){
    /*每个"块"描述符条目跨越2MB 地址范围*/
    Mmu.setSecondLevelDescMeta(i、i、attrs1);


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

    您好,

    我将 MMU 初始代码添加到项目.cfg 中、但 CCS 编译器无法找到"initDescAttrsMeta"。 CCS 版本为7.2

    此外、如果 DDR 的设置是 可共享的、则访问速度会提高。 但是、ADC EDMA 传输的结果不会更新。 如果我设置 MMU‘0’的属性,ADC EDMA 传输的结果正常。

    这一…让我感到困惑