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.

[参考译文] tms320c6657:EMIF16引导不可靠

Guru**** 2580495 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/630813/tms320c6657-emif16-boot-unreliable

器件型号:TMS320C6657

我们的项目通过仿真器可靠运行(每次运行时都不会出现故障、运行数天而不会出现单个断续、因此我们知道 DSP 硬件本身是可靠的)。 但是、当从闪存运行相同的代码时、DSP 有时不会引导。 一些 DSP 比其他 DSP 更糟糕(例如、某些 DSP 将在10次中引导9次、而其他 DSP 将在10次尝试中仅引导两次)。 一旦 DSP 启动、就可以正常运行、但有时它不会启动。 我们已经将此问题追溯到从 DDR3执行的第一个函数(LCD 初始化例程)(我们的代码非常大、包含了内部存储器和 DDR3中的函数)。 当 DSP 无法引导时、我们看到它在尝试调用此函数时已中止。  它甚至不会进入该功能、因为我们将 LED 诊断置于启动状态、LED 不会亮起。

DSP 通过 EMIF16通过 NOR 闪存引导。  启动故障来自冷启动(加电)。  如果 DSP 无法引导、则可以通过仿真器加载项目并正常运行。

有什么线索可以导致这种情况? 它本质上是随机的、因此它必须与加电条件有关。

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

    您是否遵循了器件数据手册中所述的上电顺序:
    第6.3.1节电源定序
    2.第6.3.1.1节 IO 之前的内核电源定序
    3.第6.3.1.2节 IO-Before Core 电源定序

    是否可以使用示波器测量上电序列?

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

    您能否说明一下、在 EMIF16引导期间 DDR 配置在哪里完成? 它是从 ROM 引导加载程序还是应用程序中完成的。 当引导失败并且您通过仿真器运行代码时、您能否确认您没有运行任何可能重新初始化任何时钟或 DDR 的 GEL 文件。

    引导失败时 EMIF 引脚上是否有活动。 在 SOC ROM 引导加载程序运行之前、您能否确认 EMIF 或是否已加电。 我们在一些 EMIF NAND 启动用例中看到、POR 复位后的 CPU 复位解决了 由于 EMIF 初始化时 NAND 未上电而导致的问题。 您能否尝试一个实验、看看当 EMIF 启动失败并且您连接到 DSP 时、从 CCS 发出 CPU 复位并让内核运行(CPU 复位会将内核放回 ROM 中)、您会再次尝试启动。

     您能不能在 DSP 程序计数器发生故障时指示它的值。 它是否仍在 DSP ROM 存储器中或是否将控制权传递给应用。 另一个问题是、您是否有一些电路板在100%的时间内正常工作、或者您的所有电路板在不同程度上显示了这些症状。  

    此致、

    Rahul