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.

[参考译文] AM263P4:RAT 区域和 RL2 高速缓存说明

Guru**** 2577385 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1571410/am263p4-rat-region-and-rl2-cache-clarification

器件型号:AM263P4


工具/软件:

您好:

我正在考虑利用 4 个可用的 RAT 区域将双应用程序映像存储在 OSPI 闪存中。  

但是、我对 RAT -> RL2 缓存交互有一些疑问。 我的应用将使用 XIP、因此它在 OCRAM 中设置了 128KB RL2 高速缓存。

TRM 提供了一些信息:

OSPI 闪存中有两个区域、例如 0x100000 处的区域 A 和 0x200000 处的区域 B。 假设每个映像中有一个长度为 0x10000/64kb 的 XIP 分区位于 0x20000 中、因此对于区域 A、该分区从 0x120000 开始、对于区域 B、该分区为 0x220000。  

如果我现在为区域 A 启用 RL2 缓存(0x120000 开始-> 0x130000 结束地址) 、然后为 从区域 A 到区域 B 的 0x10000 大小 XIP 分区启用 RAT (0x120000 -> 0x220000)-这是否意味着区域 B XIP 区域 (0x220000 -> 0x230000) 能够缓存到 RL2 中?

据我所知、这是不可能的、因为 RAT 优先于 RL2 分配。 但如果可能的话、最好澄清一下。

如果不是 — 是否有另一种方法解决这一问题?  是否有可能将 RL2 缓存的起始/结束地址重新定义为 RAT 中已转换的地址 — 在这种情况下,设置用于地址的 RL2 缓存(0x220000 起始-> 0x230000 结束)? 或者 RL2 缓存对于 RAT 转换的任何区域是否完全不可用?

谢谢

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

    我也知道 Bootseg IP 块 (https://software-dl.ti.com/mcu-plus-sdk/esd/AM263PX/latest/exports/docs/api_guide_am263px/bootseg_ip_working.html)、可能更常用于此类事情。 但是、我也不确定这如何处理 RL2 缓存区域转换(如果有的话)。

    谢谢

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

    尊敬的 Rens:

    对延迟的回复表示歉意。

    我知道、要求是知道是否可以缓存处于 RAT 下的区域。 让我检查一下、然后返回给您。

    此致、

    Aswin

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

    尊敬的 Rens:

    您能告诉我您计划启用 RL2 和 RAT 的地区。 我是否正确显示了地址设置?

    此致、

    Aswin

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

    尊敬的 Rens:

    对于 RAT 和 RL2、应该存在区域重叠。 也就是说、不应该有一个共同的区域。

    此致、

    Aswin。

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

    尊敬的 Aswin:

    我也很抱歉、现在只看到了您的回答。

    为了澄清您的第一个问题、这个设置确实是正确的。 RAT 会在区域 A 和区域 B 之间切换(具体取决于引导加载程序加载的应用程序)、但我不确定 OCRAM 中的相同(静态)RL2 高速缓存是否可用于缓存两个 XIP 区域。

     

    从你的第二封信中,我读到这是不可能的。

    那么、一个解决方案是为区域 B 定义单独的 RL2 高速缓存吗? 我不想这样做,因为它会“浪费“ 128KB 的 OCRAM — 在任何时候只有一个 RL2 分区在使用。

    或者是否有可用的替代选项?

    谢谢

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

    尊敬的 Rens:

    对于该用例、使用 Bootseg IP 会怎么样?  

    RL2 可用于高速缓存 XIP 地址空间(对于区域 1 和区域 2)。

    在运行时上、根据引导区域的不同、我们可以配置 RL2 来缓存所需的区域。 这将使用一个 RL2 实例。

    此致、

    Aswin