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.

[参考译文] TMS320F28377S:定制板上的闪存加载问题

Guru**** 2380860 points
Other Parts Discussed in Thread: TMS320F28377S, UNIFLASH, TPS62080A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/997256/tms320f28377s-flash-loading-problem-on-custom-board

器件型号:TMS320F28377S
主题中讨论的其他器件: UNIFLASHTPS62080A

Hallo、我们使用 TMS320F28377S 设计了一个定制板、主要基于 LAUNCHXL-F28377S 原理图、包括我们的外设器件(全部在 SPI 和 GPIO 上)。

我们的运行时软件已在 LAUNCHXL 板上成功开发和调试。

我们使用 XDS100-V3 JTAG 接口连接到定制板。

连接到 CCS 时、器件被正确识别、我们能够在 RAM 上加载和运行它(包括断点和分步操作)。

我们认为这证明了 JTAG 工作正常、但是、我们无法在闪存上载和运行二进制代码。


当尝试上载到 LFASCH 时、CCS 控制台会报告以下消息:

C28xx_CPU1:GEL 输出:
内存映射初始化完成
C28xx_CPU1:错误:(错误-1044 @ 0x0)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包9.3.0.00042)
C28xx_CPU1:停止目标 CPU 时出现问题:(错误-1135 @ 0xC095)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包9.3.0.00042)
C28xx_CPU1:20次尝试后无法确定目标状态
C28xx_CPU1:在断开连接之前无法从目标中删除调试状态。 程序存储器中仍可能嵌入了断点运算代码。 建议您在连接之前重置仿真器、并在继续调试之前重新加载程序

我们仔细检查了 CPU 电源引脚、发现任何看起来不好的东西。

我们仔细检查了 CCS 配置、同样、一切看起来都很糟糕。

您是否有一些提示和检查建议?

提前感谢、

Daniele

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

    Daniele、

    基于错误、甚至还不调用闪存编程器。   

    只需确认:您无法在此器件上加载到闪存-正确吗?

    或者、您是否曾在该器件的闪存上成功编程一些代码、并在之后开始在下一次迭代中看到问题?

    如何配置引导模式引脚? 希望您在等待引导模式下尝试过。

    谢谢、此致、
    Vamsi

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

    Hallo Vamsi、

    感谢您的反馈。

    该器件是新器件、我们从未能够在闪存上加载任何内容。 此外、来自 Uniflash 的闪存空白命令也不起作用。

    对于与引导模式引脚相关的问题、我们尝试了 GPIO72/84 = 11 (GetMode)和10 (Wait)、两者都成功。

    Daniele

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

    Daniele、

    感谢您提供信息。   

    1) 1)当您通过 CCS 连接到器件并开始加载基于闪存的映像时、您是否看到闪存擦除/编程窗口弹出?   

    或者、在弹出窗口之前、您是否得到了以下错误?

    C28xx_CPU1:GEL 输出:
    内存映射初始化完成
    C28xx_CPU1:错误:(错误-1044 @ 0x0)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包9.3.0.00042)
    C28xx_CPU1:停止目标 CPU 时出现问题:(错误-1135 @ 0xC095)调试探针报告了错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包9.3.0.00042)
    C28xx_CPU1:20次尝试后无法确定目标状态
    C28xx_CPU1:在断开连接之前无法从目标中删除调试状态。 程序存储器中仍可能嵌入了断点运算代码。 建议您在连接之前重置仿真器、并在继续调试之前重新加载程序

    2) 2)您是否使用相同的 CCS/Uniflash 设置成功地在 LAUNCHXL-F28377S 上加载了基于闪存的映像?

    我正试图找出失败的原因、因此我的问题也就在于此。

    谢谢、此致、
    Vamsi

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

    1) 1)没有弹出窗口、只是控制台输出中的错误

    2) 2)相同的工程、但不同的编程器设置、因为 LAUNCHXL 具有嵌入式 XDS100-v2编程器。 我们更改 了 TargetConfigs 下的 TMS320F28377S.CCXML 设置、以反映不同的连接设备(电路板为 XDS100-v3)。 确认 XDS100-v3能够与另一个基于 ARM 的 CPU 配合使用。

    Daniele

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

    Daniele、

    根据 https://www.ti.com/lit/pdf/spraco1 - TMS320F28377S 支持 XDS100V2。   

    未列出 XDS100V3。

    谢谢、此致、
    Vamsi

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

    Daniele、

    我之前没有使用 XDS100V3。  我与我们的团队交谈、他们建议 与 CCS 团队核实、以确认是否支持此功能。

    同时、您能否尝试从闪存插件 GUI 中擦除操作(而不是加载程序)、并查看操作是否正常?

    闪存插件 GUI 位于 :CCS 调试视图->工具->片上闪存->在此 GUI 中、您可以向下滚动以找到擦除按钮。

    谢谢、此致、

    Vamsi

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

    Hallo Vamsi、

    我看不到为什么不支持 XDS100V3的任何原因、但我期待您对此进行调查的结果。

    Uniflash 和 CCS 均允许选择具有 TMS320F28377S 的 XDS100V3。

    从 Uniflash 和 CCS 闪存插件 GUI 中擦除操作不起作用。

    谢谢、

    Daniele

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

    Daniele、

    我同意您的意见- XDS100V3应列在 SPRACO1指南中-我认为它只是没有更新(我提交了一个 TT)。

    我让我们的 CCS 团队 为您看一下这篇文章。

    谢谢、此致、
    Vamsi

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

    Daniele、您好!

    应支持 XDS100v3。

    我能够使用外部 XDS100v3成功连接和调试到 F28377D controlCARD+Dock。  

    您能否 运行 JTAG 连接测试 并将结果发布在此处?

    谢谢

    Ki

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

    Hallo、

    很抱歉耽误你的时间。

    我们通过检查1.2V 电压监控器解决了我们的问题。

    我们的分析是、在闪存编程期间、CPU 电源抑制会上升一个位、而电源上的一些电流"尖峰"会产生一些欠压复位。

    通过调整 PSU 监控器、我们能够解决此问题。  

    感谢您的支持。

    Daniele

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

    Daniele、

    很高兴这是电源问题。 您在该主题的第一篇帖子中提到电源已检查且状态良好。  因此、我假设您在编程期间进行了检查。

    您是否注意到尖峰超过了闪存编程/擦除操作的数据表中引用的数字?  请告诉我。

    谢谢、此致、

    Vamsi

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

    对于1.2V 电压、我们使用了 TPS62080A 稳压器和 TPS3702CX12DDCR 监控器的组合。

    我们注意到、使用稳压器的标称基准分压器(64k9/39k2欧姆)时、输出电压略低于标称值1、2 (我们测得的平均值为1、12至1、15V)。

    在闪存操作期间、当使用示波器观察时、来自 CPU 的电流浪涌会使1.2V 电源线产生噪声。

    当 PLL 设置为较高的频率时尤其如此。降低 PLL 频率有助于实现更强大的通信。

    在这种情况下、一些"尖峰"降至1、09V 的监控器欠压保持以下、从而复位 CPU。

    我们正在研究稳压器布局、以使其具有噪声更低的反馈网络。

    Daniele

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

    Daniele、

    明白了。 感谢您提供的详细信息-这对他人有所帮助。  在 整个闪存过程中、电源应能够满足需求。 我现在要关闭此帖子。

    谢谢、此致、

    Vamsi