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.

[参考译文] AM625:仅运行 PRU 内核的低功耗模式

Guru**** 2482045 points
Other Parts Discussed in Thread: ADS8588S

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1456476/am625-low-power-mode-with-only-pru-cores-running

器件型号:AM625
主题中讨论的其他器件:ADS8588S

工具与软件:

您好!

我正在评估 AM62x 系列、以用于即将进行的系统开发项目。 系统当前的迭代使用 I MX 6 SoloX、其中的 A9内核运行 Linux、M4内核处理来自一组 ADC (ADS8588S)的实时采样。 这已经足够好了、但 GPIO 访问时间慢且 M4具有高延迟、因此为了实现~30KSPS 的采样率、我不得不在代码中运用很多巧妙的技巧。 我想在下一个设计中将其驱动得更高。 我发现 AM62x 系列具有扩展 GPIO、这对我而言似乎非常完美。

但我需要确保可以将所有 PRU 内核保持开启状态并执行代码(GPIO 访问)、同时使所有其他内核进入睡眠状态(或其他某种超低功耗模式)。 例如、我想让 PRU 内核保持运行状态来处理实时采样、但要关闭 A53和 M4内核、从而尽可能降低功耗。 当出现合适的条件时、我希望让 PRU 内核触发 A53内核唤醒。 我尚未找到任何确认这是否可行、或任何相关信息。 我担心 PRU 和 A53内核都位于"main"域、因此可能无法分别关断它们的电源。

这是否能够按所述实施? 我目前正在做同样的事情与我. MX 6 SoloX 中、M4内核持续运行而 A9内核关断、但这些内核位于不同的域中、文档明确指出这是一种受支持的配置。 对于 AM62x 上的 PRU 内核、我没有看到任何类似的确认。 (我不想在 AM62x 上使用 M4、因为它肯定会受到与 i.MX 相同的缓慢、高延迟 GPIO 访问时间的影响。)

不知在仅运行 PRU 内核且所有其他内核均断电的情况下、功耗会下降到什么程度?

谢谢!
Cody

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

    尊敬的 Cody:

    没有仅启用 PRU 并关闭所有其他内核/外设的低功耗模式。 最接近的选项是仅 MCU 模式、在该模式下、它将 M4内核保持开启状态、但这是唯一的选项: software-dl.ti.com/.../pm_low_power_modes.html

    我不知道仅通过在线的 PRU 子系统可以节省多少功耗、因为它很难隔离该电源、但可以显著降低功耗。

    此致、

    Anshu

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

    尊敬的 Anshu:

    感谢您的答复! 但我有点困惑,因为你的两段似乎是矛盾的。 我知道、首先要说的是、没有任何低功耗模式能够仅让 PRU 内核开启、而其他内核/外设关闭。 这就是我想知道的。 但您要继续说、如果只有 PRU 子系统在线、功耗将显著降低。 如果没有支持该配置的低功耗模式、这怎么可能? 如果您能就这一点提供更多的细节或说明、我将不胜感激。 包括我将如何(例如、通过哪些步骤)实现您提到的功耗降低。

    谢谢!
    Cody

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

    尊敬的 Cody:

    什么是/不是 AM62x 的低功耗模式?

    有一些预定义的低功耗模式、这些模式在开启/关闭时无法进行定制。 AM62x TRM 第6.2.4节"电源模式"记录了以下低功耗模式: https://www.ti.com/lit/ug/spruiv7b/spruiv7b.pdf

     。 电压、电源和时钟域状态在 AM62x TRM 中、您可以看到 PRU 子系统的电源域 PD_ICSSM 在大多数低功耗模式下都处于关闭状态。

    并非列出的所有低功耗模式都在 Linux SDK 中实现、因此请参阅 Linux SDK 文档、了解最新的可用低功耗模式: https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/10_01_10_04/exports/docs/linux/Foundational_Components / Power_Management /Pm_low_power_modes.html#

    如果目标是关闭 PRU 子系统之外的所有模块、这不是为 AM62x 定义的低功耗模式。  

    可以节省多少电力?

    理论上、只有 PRUSS 在线模式可显著降低功耗、因为 AM62x SoC 大部分都处于关闭状态。 由于这个从未经过测试或实施的用例、因此无法对器件进行降低功耗的测量。 欢迎您尝试使用 AM62x 功耗估算工具(https://www.ti.com/tool/download/AM62X-PET-CALC)、但这是一个估计的测量值。

    示例

    要实际实现这一点、需要通过 A53/M4内核与 DM R5F 之间的 TISCI 事务来请求关闭不需要的器件并将内核转换到 WFI。 更多有关用于系统控制的 TISCI 接口的信息、请参考用户指南: https://software-dl.ti.com/tisci/esd/09_02_07/1_intro/TISCI.html

    由于这不是受支持的用例、因此没有相关示例如何实现此目的、并且我们可以在 TI E2E 论坛上提供很少的支持来实现此目的。


    此致、

    Anshu