i.mxrt1180 数据手册列出了运行速度高达 800 MHz 的 Cortex-M7 内核和运行速度高达 300 MHz 的 Cortex-M33 内核。
是否真的可以将核心配置成以这样的速度运行?
示例代码全部显示内核运行频率分别为 792 MHz (M7) 和 240 MHz (M33)。
看来这是我能配置 M7 核心的最快速度了。
看起来我可以通过切换到 PLL_ARM 输入时钟除以 3 来配置 M33 内核以 264 MHz 的频率运行。
谢谢!
彼得·斯坦伯格
亲爱的@petersteinberg ,
谢谢你的提问。
i.MX RT1180 数据手册列出了 Cortex-M7 的 800 MHz 和 Cortex-M33 的 300 MHz,但这些是每个核心各自的最高频率——不可能同时达到两者。
原因在于 PLL 架构:两个内核共享同一个 ARM_PLL,CM33 时钟必须通过整数分频器从中导出——不支持分数分频器。
ARM_PLL 本身的硬件最大频率为 798 MHz(“800 MHz”是一个四舍五入的标称值),通过设置 VDIV = 133 实现:
ShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.pngShellyZhang_0-1788249495288.png
当 ARM_PLL 频率为 798 MHz 时,CM33 的最佳整数除法是除以 3,即 798 MHz ÷ 3 = 266 MHz — 因此,当 CM7 以其真正的最大频率 798 MHz 运行时,CM33 最多只能达到 266 MHz,而不是 300 MHz。
如果您的应用需要 CM33 运行在 300 MHz,则必须将 ARM_PLL 重新配置为 600 MHz,这样 CM33 就可以运行在 600 MHz ÷ 2 = 300 MHz,但在这种情况下,CM7 的运行频率被限制在 600 MHz。
如有任何其他疑问,请随时联系。
顺祝商祺!
雪莉
亲爱的@petersteinberg ,
我使用 MCUXpresso IDE 中的集成配置工具成功配置了时钟。这个问题很可能与配置工具版本不匹配有关。请按照以下说明更新配置工具:
更新后,请重启 MCUXpresso IDE。此外,配置完时钟后,请务必点击“更新代码”以生成更新后的配置代码:
更新后如果仍然遇到同样的问题,请告诉我。
顺祝商祺!
雪莉