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.

[参考译文] TMS320F28379D:从闪存引导时、在 CPU2中看到奇数行为

Guru**** 2587365 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1187289/tms320f28379d-seeing-odd-behavior-in-cpu2-when-booting-from-flash

器件型号:TMS320F28379D

您好!  

我们将尝试从独立于调试器的闪存引导我们的器件。 我们的项目使用 CPU 和 CPU2的 CLA。 目前、我们已成功使 CPU1在下电上电上电(独立闪存)时正确引导、但 CPU2存在问题。  

首先、IPC CPU2引导命令似乎仅在我们将其从 CPU1主函数的开头附近移到主事件循环之前才起作用。 否则、程序将挂起、等待引导状态/IPC 标志从 CPU2清除。

接下来再按一次、看起来 CPU2在下电上电后运行速度要慢得多。 我们在 CPU1和 CPU2项目中进行了简单的 LED 闪烁设置、以测试引导。 连接调试器后、LED 将以预期的速度闪烁。 但是、当我们重启器件以测试闪存的独立启动时、CPU1 LED 以预期的速率闪烁、但 CPU2以大约40倍的速度闪烁。

我们认为 CPU2时钟可能滞后、因此我们配置了 XCLKOUT 以输出 CPU2系统时钟、该时钟应配置为100MHz。 探测 GPIO73时、CPU2系统时钟似乎以100MHz 运行。 我们正在研究闪存等待周期配置、但这似乎不应该使时钟降低40倍? 此外、我们运行相同的代码来配置 CPU1和 CPU2的闪存等待周期。 如果在这一点上有任何帮助,将不胜感激。  

我能够成功地运行 blinky_dc_cpu02示例项目,但前提是我注释掉了 InitFlash()函数。 我在 CPU1和 CPU2上使用了 FLASH_DEBUG 配置、并且能够在下电上电时看到两个 LED 以预期的速率闪烁。  

谢谢、

布拉登

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

    您能否检查闪存等待状态配置是否影响性能。 查找 RWAIT 位字段。

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

    您好!

    我相信我们已经解决了滞后 CPU2的问题。 我们的 SCI 端口似乎超时、这似乎减缓了我们的 CPU2。 我们必须将 CPU2重置/启动命令移至 CPU1主代码中的第一条指令、以使 SCI 在 CPU2上正常工作。  

    但我们现在遇到另一个问题、CPU2 CLA 在从闪存引导时似乎无法启动。 从闪存引导时、CLA 启动是否有任何提示?

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

    这个论坛帖子似乎是我们对 CLA 的问题: e2e.ti.com/.../cla-is-not-working-after-power-cycle-even-using-load-flash-run-l3dpsaram