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.

[参考译文] 编译器/AM3352:SPI 引导失败

Guru**** 2964790 points

Other Parts Discussed in Thread: AM3352

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/676462/compiler-am3352-spi-boot-fails

器件型号:AM3352

工具/软件:TI C/C++编译器

尊敬的专家

我的应用是使用 AM3352构建的。 主闪存存储器是 名为 FL256SA1F00的 Spansion SPI 闪存。

引导模式为 SPI 引导。

一些 目标板存在奇怪的问题。 我制作了20个具有相同电路和 PCB 的目标板。

其中、6个电路板的 SPI 闪存启动失败。

我在 AM3352中跟踪了屏蔽的引导代码、并找到了与永久循环相关的 SPI 闪存。

 从 0x2326C 到23270的代码意味着检查读取 SPI IRQStatus 寄存器。

R3的地址为0x48030118

有故障的目标板 R3中为零。 因此引导过程 不再 继续。

正常(正常运行)板当时具有0x05值(R3)

我将与 SPI 闪存相关的信号范围设为1。 从 AM3352首次访问后、不再有来自 AM3352的访问。

下面是与 CPU/SPI 接口相关的电路。

和 sysboot 配置。

您是否对如何解决此问题有任何想法?

PS)我正在上传更多信号信息。

第一种情况:当 AM3352成功引导 SEQ 时,示波器中的上信号 为 SPI SLK,下面的信号为 MCU 复位。

以及在故障条件、信号条件下

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    工厂团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    首先、感谢帖子中的详细信息。 在 ROM 中的那个时刻、处理器正在尝试从 SPI 闪存中读取一个数据块。 以下是有关您提供的信息的一些注释。
    1.您是否排除了装配体错误? 使用示波器对数据信号和 CS 进行仔细检查、以确保在 CLK 的第一次突发期间传输数据。 与工作板进行比较、查看命令序列中的不同位置。
    理想情况下、CLK 信号上应该有一个靠近处理器的小串联电阻器。 这是为了在读取数据时减轻时钟上的反射(时钟用于重定时从 SPI 闪存返回的数据)。 除非您的探测点靠近处理器、否则很难看到这一点。 处理器和闪存之间有多远?
    3.如果您在所有板上的 ROM 中的同一个点卡住、我认为您的 sysboot 信号正常。
    4.原理图看起来不错,特别是因为您可以使大多数电路板正常工作。

    如果您有一个、那么最好在这里使用 SPI 分析器来帮助解码信号。

    此致、
    James