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.

[参考译文] AM2431:与不同 M4 和 R5F 内核共享同一个 CPSW 内核

Guru**** 2895520 points

Other Parts Discussed in Thread: AM2431

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1584391/am2431-share-same-cpsw-core-with-different-m4-and-r5f-cores

器件型号: AM2431

我正在考虑一种 M4 和 R5 都需要使用 OSPI 和 CPSW 但时间不同的解决方案。

  1. M4 能否在使 R5 保持复位状态的情况下运行 SBL? 还是 SBL 只能通过 R5F 运行?
  2. 我进行了一些读取、看起来 M4 无法访问 OSPI 闪存。 请确认是否正确。  

  3. 此外、R5F 还必须使用相同的 OSPI 闪存和 CPSW 接口、但时间不同。 我可以在不同内核尝试使用 IP 块之间启动系统复位。

是否有允许共享和重新访问核心的安全方法?  DMSC 是否允许这样的配置? 此配置是否有效?

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

    尊敬的 Prassana:

    M4 能否在使 R5 保持重置状态的情况下运行 SBL? 或 SBL 只能通过 R5F 运行?

    无法从 M4 运行 SBL、SBL 只能在 R5F 中执行。

    我正在将此主题路由给另一位专家以帮助您处理其他 2 个问题、请等待他们的回复。

    此致、

    会面。

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

    你好 Prassana

    我们无法使用来自 M4F 内核的 OSPI 接口。

    从技术上讲、可以在不同的内核之间共享 OSPI 闪存和 CPSW 外设、但仅在不同的时间共享。

    在内核之间切换所有权之前、活动内核必须取消外设初始化。

    之后、您可以在所有权变更之间启动热重置—这实际上是确保所有 IP 返回到已知重置状态的最干净方法。

    OPSI 和 CPSW 将使用 DMA 通道。 因此、我们需要复位 SOC 以将 DMA 通道分配给不同的内核。

    复位后、下一个内核可以安全地重新配置和重新初始化 OSPI 或 CPSW 模块。

    还有一点是、当您尝试在多个内核中使用 CPSW 时、我们还需要在多个内核中分配 CPSW DMA 通道。

    此致、

    Anil.

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

    你好  Prassana

    如果您完全分享您的要求,我们可以尝试以更好的方式帮助您。

    此致、

    Anil.

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

    尊敬的 Anil:

    感谢您的详细答复。 是的、在初始失败后尝试从同一 R5F 内核重新初始化 CPSW 内核时、我发现了 DMA 通道问题、并且发现无法第二次分配资源。 这正是为什么我想知道一个干净的方式来做交接。

    下面是我的用例和思维过程:

    我正在使用 AM2431 型号。 我有一个使用我自己的 Ethernet-App 的变通办法、该应用程序模拟以太网启动模式。 SBL 检查闪存上的元数据/Cookie 并加载 Ethernet-App、该应用通过以太网将固件映像应用程序更新到闪存、更新闪存上的元数据/Cookie 并复位电路板。 现在、SBL 将在检查元数据/Cookie 时加载固件映像应用程序、并由 R5F 运行。

    我受到内部存储器的严重限制、我想看看是否可以利用 M4 运行以太网应用程序并执行固件更新。 这样我就可以访问 M4 上额外的 256KB RAM + 2MB OCSRAM。  这样、功能在内核之间分段、我将使用 M4 上的 256KB RAM。 我需要能够在内核之间共享 OSPI 和 CPSW 外设。  

    我找到了这个关于在 AM243x 上进行以太网引导的主题。 我还没有测试这一个。 您能澄清一下吗?

    (1) AM2431:支持以太网主引导和备用引导 — 基于 Arm 的微控制器论坛 — 基于 Arm 的微控制器 — TI E2E 支持论坛

    谢谢、

    Prasanna

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

    您好  Prasanna、

    我正在将您的查询转接到以太网专家 。

    此致、

    Anil.

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

    尊敬的 Prasanna:

    目前、MCU PLUS SDK 不支持 M4 内核上的以太网驱动程序。 您提到的 E2E 主题是在 R5 内核上的 AM243x 上启用以太网引导。 遗憾的是、我们从未在 M4 内核上启用 CPSW、也没有未来的计划。

    如果要减小 CPSW 示例的内存占用空间、可以考虑不在以太网引导应用中使用 LwIP 协议栈、只能在需要时在主应用中使用 LwIP 协议栈。

    如果您对此有任何进一步的疑问、请告知我们。

    此致、
    Teja。