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.

[FAQ] [参考译文] 【常见问题解答】AM6422:如何在时钟丢失检测后切换回外部时钟

Guru**** 2434430 points
Other Parts Discussed in Thread: AM6442

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1540919/faq-am6422-how-to-switch-back-to-external-clock-after-clock-loss-detection

器件型号:AM6422
主题:AM6442 中讨论的其他器件

工具/软件:

您好、

我正在使用 AM6442 处理器评估套件。 我们一直在测试 时钟丢失检测 模块特性。

我们 为处理器提供了一个 25MHz 外部时钟、可以手动启用和禁用该时钟。

为了测试时钟丢失的情况、我们禁用了外部时钟、并观察到处理器正确检测到丢失并切换到内部 12.5MHz RC 振荡器。

在禁用时钟之前、我们修改了以下寄存器:

我们捕获了另一个观察结果、我们使用示波器监控 OBSCLK0 输出。 我们映射了 OBSCLK0 引脚到输出 MCU_HFOSC0_CLKOUT:

  • 当 25MHz 外部时钟处于激活状态时、我们会 在示波器上观察到 25MHz。
  • 回退后、输出更改为 12.5MHz 。
  • 但是、当 重新启用外部 25MHz 时钟时、示波器再次显示 25MHz 、但处理器继续在内部 12.5MHz 时钟上运行。

现在、我们要确认期间的行为 外部时钟恢复

具体而言、如果 重新启用外部 25MHz 时钟、我们期望 AM64x 检测时钟的返回并从内部 RC 振荡器切换回外部 25MHz 时钟。

您能否确认此行为是否受支持? 如果是、是否需要任何额外配置才能切换回外部时钟?

此致、

Pratibha

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

    尊敬的 Pratibha:

    如果   MCU_HFOSC0_CLK 时钟丢失、需要外部系统干预 您应使用器件 MCU_SAFETY_ERRORn 输出引脚将此情况发送到外部芯片(PMIC 或其他)、而外部芯片在您的系统中启动一些恢复操作。  手动启用 MCU_HFOSC0_CLK 时钟的 Re 可能是不够的。 有关更多详细信息、请参阅  AM6442 TRM 的振荡器时钟丢失检测一节

    作为第一个分辨率步骤、您可以尝试使用 EVM 上的相应按钮执行热复位。

    此致、

    Anastas Yordanov

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

    您好、Anastas Yordanov、

    感谢您发送编修。

    在我们的讨论基础上、我回顾了复位架构。  观察结果与您的上述评论一致。

    关于 OBSCLK0 或 MCU_OBSCLK0 — 有将 25M MCU_HFOSC0_CLKOUT 直接连接到观察时钟的配置选项。

    由于一个外部振荡器时钟应用于 Xi、因此同一个时钟将反映在观察时钟上。

    此致。

    Sreenivasa.

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

    尊敬的 Pratibha:

    您是否有机会对电路板进行下电上电、并查看禁用振荡器的行为。

    此致、

    Sreenivasa.

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

    您好 Sreenivasa、

    您是否有机会对电路板进行下电上电、并查看禁用振荡器时的行为。

    我们尝试了 AM64x 的下电上电、并观察到 2 种情况:
    1.禁用 Ocsilator:AM64x 无法启动。
    2.启用 Ocsilator:AM64x 在 25MHz 时钟上运行。

    我们修改了配置以启用时钟丢失检测、如上面的 POST 中所述。 然后、我们执行了 AM64x 的热复位并观察以下情况:  
    1.禁用 Ocsilator。 检测到时钟丢失以及看门狗复位/热静置后、AM64x 在 12.5MHz 上运行。
    2.启用 Ocsilator:AM64x 在 12.5MHz 上继续运行、但未切换到 25MHz。

     在时钟丢失检测引脚状态从高电平更改为低电平期间、我们监测了 MCU_SAFETY_ERRORn 引脚。 但是、当 25MHz 时钟再次可用时、不会检测到转换。

     那么、我们的主要问题是如何检测 25MHz 时钟恢复?

    此致、

    Pratibha

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

    你好 Pratibha、  

    谢谢你。

    那么、我们的主要问题是如何检测恢复的 25MHz 时钟?

    我不确定是否有时间检测到时钟已恢复。

    如果时钟无法正常工作(如初始消息中所述)、则 应使用 MCU_SAFETY_ERRORn 引脚来获悉错误 、并预计实现外部恢复机制。 (执行电源循环)。

    在下电上电期间、如果时钟不可用、处理器不会启动引导序列。

    这可能是实际用例。 您测试的情况不太可能发生、因为振荡器需要一种机制来使其恢复、即下电上电。

    此致、

    Sreenivasa.  

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

    你好 Pratibha、  

    具体而言、如果 重新启用外部 25MHz 时钟、我们希望 AM64x 检测到时钟的返回并从内部 RC 振荡器切换回外部 25MHz 时钟。

    它已经涵盖了上述主题中的所有内容。  我只想补充一点、时钟丢失检测的 主要目标是在发生对系统至关重要的事件后、允许器件在功能有限的情况下继续运行。

    TRM 的引言:“HFOSC0 时钟丢失是一个灾难性故障、因为此时钟是最关键的系统时钟。

    设计依赖于外部石英时钟的系统在 12MHz RC 时钟上无法完全正常工作、因此需要从外部执行操作。 这就是器件时钟不会在硬件中自动切换回 25MHz 时钟源的原因。

    软件可能会在时钟丢失期间花费以下时间:

    1. 通过显示器、LED 或远程信息等机器对人界面提醒用户。 请注意、许多串行接口对时钟源的低精度很敏感、例如 12MHz R-C(无晶体)、因此可能不会进行通信。

    2、软件可能要将错误日志写入暂存区或外部闪存

    3、可以配置 PMIC、例如、它可以尝试完整的系统下电上电以查看系统是否恢复。

    最终、可能需要人工干预、例如检查外部晶体/外部 25MHz 时钟源、电源轨等。

    此致、

    Stan

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

    你好 Pratibha、  

    我添加了来自复位专家的输入:

    预期故障会路由到 ESM、某些外部电路会生成下电上电或冷复位、以便系统可以恢复。  我认为这是时钟丢失检测电路重置检测的唯一方法。  此外、MCU_PORz 是 CLKLOSS_SWITCH_EN 位复位的唯一方式。  因此、热复位在此处不起作用、这就是他们观察到 12MHz MCU_RC 在热复位后仍为处理器提供时钟的原因

     

    由于 CLKLOSS_SWITCH_EN 默认值、PORz 之后立即无法使用 RC 时钟备份。  无论如何都需要进行一些设置、因为错误需要路由到 ESM 来触发错误信号、以便外部人员可以对此进行处理(例如,对器件进行下电上电)。  完成所有这些设置后、RC 时钟将在发生故障后为器件提供时钟、但仅用于使 ESM 保持活动状态以生成适当的错误信号。  预计该器件不会完全运行。

     

    冷复位时、如果 25MHz 不可用、器件将无法启动。  即使时钟丢失检测电路在该点起作用、如前所述、CLKLOSS_SWITCH_EN 默认为 0、因此多路复用器永远不会切换到 RC 时钟。  即使能够进行切换、ROM 也不支持使用该输入频率引导。

    此致、

    Sreenivasa.

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

    您好、Sreenivass、

    感谢您对提问的支持和意见。

    此致、
    Pratibha

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

    你好 Pratibha、  

    谢谢你。 将关闭螺纹。

    此致、

    Sreenivasa.