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.

[参考译文] AM625:无法从 u-SD 卡启动某些 AM625

Guru**** 2589265 points
Other Parts Discussed in Thread: AM625, UNIFLASH

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1573047/am625-not-able-to-boot-some-am625-from-u-sd-card

器件型号:AM625
Thread 中讨论的其他器件: UNIFLASH

工具/软件:

大家好、我们已经使用 AM625 SoC 设计了定制电路板、我们的设计经过测试、可从 u-SD 卡启动、并且在原型设计阶段运行良好、我们将设计转移到了量产阶段、第二批电路板似乎存在多个问题。

我们最近制造了 40 块电路板、只有 2 块电路板从 u-SD 卡引导 Linux、我们可以在控制台端口上看到这一点。  

大多数电路板无法引导、这基于当前获取的数据、然后在控制台上不打印 Linux 引导消息。  

您能否帮助我们调试此问题?

是否可以从 UART 或 USB 仅测试硬件?

我们已经测试了电路板上的所有电源轨、所有电源轨看起来都很好。  

如果您认为有助于调试、我们可以添加 JTAG。  

2 个工作板与其余板之间没有已知的区别。  

任何关于如何取得进展的建议都将不胜感激。  

谢谢  

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

    您好、Mitesh、

    是否可以仅通过 UART 或 USB 电路板来测试硬件?

    PCB 上是否有修改引导模式引脚的配置?

    我们测试了电路板上的所有电源轨、似乎都很好。  [/报价]

    您能否检查 XTAL 时钟和复位输入和输出上升到高电平?

    谢谢、

    Stan

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

    感谢您的答复。

    是的、我们在板上有 DIP 开关可切换引导引脚[3:9]

    所测试的 XTAL 在引脚 23、24 上约为 24MHz

    RESET 引脚为高电平、引脚 F20

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

    Mitesh,

    感谢您的意见。

    您能否告知所有 BOOTMODE[15:0]引脚值、包括 DIP 开关和硬编码引脚?

    对于复位、您是否可以捕获复位状态引脚:

    谢谢、

    Stan

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

    HI Stan:加电时、两个复位状态引脚为下拉、工作板的状态为高电平。  

    在非工作板上很低!!  

    这可能是什么原因造成的?  

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

    集成了一个外部保护机制

    引脚 0、1 连接至高电平

    Pin2 连接至低电平

    引脚 3、4、5 连接至低电平  

    引脚 6:15 连接至低电平

    DIP 开关引脚 3 至 9 已连接、引导引脚 3:9(0001001 => SD 卡引导)

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

    您好、Mitesh、

    有多个复位源可能会导致器件执行 POR。 我们可以从 MCU_POR 输入引脚开始。 该信号通常由来自 PMIC 或/和其他一些电路的 PGOOD 信号驱动。 您还能检查一下吗?

    谢谢、

    Stan

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

    HI Stan、在可正常工作和不可正常工作的电路板上以及两个电路板上均进行了测试 D2 引脚 (MCU_PORz) 为高电平 (1.78V)

    谢谢  

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

    您好、Mitesh、

    还有一个可能导致内部复位的引脚输入:

    [报价 userid=“270007" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1573047/am625-not-able-to-boot-some-am625-from-u-sd-card/6058689 ]在引脚 23、24上测试的 XTAL 约为 24MHz

    您能否确认使用的是 24MHz 晶体?

    谢谢、

    Stan

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

    HI Stan、已测试 E11 (MCU_RESETz) 且两块电路板上的电压均为 3.3V 高电平

    谢谢  

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

    Mitesh,

    期待您对所使用的晶体/振荡器频率提供反馈。

    谢谢

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

    您好、Stan、它的 24MHz。  

    部件号 ECS-240-30-30B-DU-TR

    谢谢  

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

    您好、Mitesh、

    我注意到、BOOTMODE[2:0]引脚不对应于 24MHz 晶体:

    此设置告知引导 ROM 代码如何在引导期间配置 PLL。

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

    天哪,对不起。

    我重新检查了此项、使用的器件为 25MHz。  

    如果零部件不正确、这将是一个巨大的问题、因为我们已经建立了 20 个系统、所有系统都运行良好、这只是这一批 40 个板只有 2 个工作正常。  

    部件为 ECS-2520MV-250-CN-TR

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

    您好、Mitesh、

    您的 BOOTMODE[2:0]引脚设置为 25MHz(参见来自 TRM 的快照)、并且您有一个 25MHz 晶体、就 ROM 而言符合预期。

    是否可以仅通过 UART 或 USB 电路板来测试硬件?

    是、您可以使用以下引导模式配置在 UART0 上尝试 UART 引导:

    您可以在一节中找到有关 UART 引导的更多详细信息  5.4.7 UART 引导 设计指南。

    此致、

    Stan

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

    谢谢 Stan。

    我们想尝试 UART 引导、看看从 SD 卡引导是否存在问题。

    鉴于我们现在知道故障的原因是 SoC 处于复位阶段、不确定这是否会有所帮助。

    您会建议进行哪种测试来调试 SoC 卡在复位阶段的原因?

    谢谢  

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

    Stan、在一些发生故障的 PCBA 上、SoC 未处于复位状态、但引导控制台会按顺序打印并卡住。  

    U-Boot SPL 2023.04 (2024 年 2 月 13 日 — 11:44:04 +0000)
    SYSFW ABI:3.1(固件版本 0x0009 '9.1.8--v09.01.08 (Kool Koala)') 
    SPL 初始堆栈使用量:13384 字节
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Mitesh、

    这里看起来也像一个硬件。

    因此、我们有 3 种情况:

    1. 两个电路板启动 Linux 正常
    2. 几个电路板从 u-boot 中开始生成 2 条消息、然后挂起。 您能否在挂起后确认复位引脚的状态?
    3. 大多数电路板一直处于复位状态

    这是正确的吗?

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

    尊敬的 Stan:

    没错。

    在我们只得到几条线路的电路板上、SoC 未处于复位状态、3 个引脚处于高电平。

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

    您好、Mitesh、

    您刚才提到、新批次采用 25MHz 晶振、而旧批次采用 24MHz。 我认为 u-boot 需要针对 25MHz 进行更新。

    此外、您知道新电路板的其他硬件更新吗?

    您是否向 TI 申请了原理图审核?

    谢谢、

    Stan

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

    嗨 Stan、没有原始批次、这都有 25MHz 时钟、我刚才说了错。  

    只有更改的项目是在主 24V 电源轨上添加更多的 EMC 滤波器、我们已将其删除、以查看它是否与此问题有任何关系。  

    不可以、我们没有要求 TI 进行任何原理图审阅。  

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

    您好、Mitesh、

    我假设您使用相同的软件和所有电路板进行测试。 此外、电源是相同的且足够了。

    我的想法是、如果原型运行正常、随后的批次出现问题、那么可能是 PCB 提供商的一些故障? 您是否目视检查了新电路板是否有任何不同之处、是否存在缺失元件、焊点不良等问题?  

    有多少个原型板工作正常? 100%?

    此致、

    Stan

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

    嗨、Stan、是的、我们也在与 PCB 制造商合作。

    我们在 SoC 和 DDR 以及 u-SD 卡附近为几个电路板分配了 x 光、并进行了组件到组件的审查。  

    我们拥有 20 多块板材,生产原型批量和预生产批量。

    测试设置、软件、Linux 操作系统、引导方法都完全相同。  

    我们必须使用备用 SD 卡连接器和 DDR。 我们没有看到其他替代方案有任何问题、但大多数电路板无法退出 SoC 复位状态。  

    并希望您能提供更多的调试方法建议。 (感谢您为我们提供复位审查指导)

    时钟可以正常工作、电源轨正常、没有应用外部复位、DDR 来自不同的供应商联盟存储器(而不是 Micron)、但器件型号和封装 ID 完全相同。 SD 卡连接器是连接器制造商建议的更换件。  

    只是只有两个正常工作和休息 (38) 故障点针对组件问题。  

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

    我已经尝试使用 Tera Term 从 UART 引导、建议使用什么串行软件在 UART 模式下引导?

    我能够得到 tiboot.bin 文件传输/引导,但随后未能走前面的 SPL ...  

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

    您好、Mitesh、

    您是否首先测试了在 UART 引导模式下、目标 UART 端口上定期打印“C"字符“字符(在 1-2 秒内)(更改引导开关后重启电路板)?

    I 能够获得传输/引导的 tiboot.bin 文件、但随后无法进入 SPL ...
     

    我不是 Linux/U-Boot 软件专家、因此不能推荐一些特定于 U-Boot / Linux 的主引导加载程序。 您能解释一下通过 UART 传输 tiboot.bin 并启动映像的步骤吗? 控制台中有哪些消息?  

    相关 UART 引导模式 我可以推荐 (从 MCU_PLUS_SDK_AM62x 加载程序)。 首先尝试通过 UART 端口下载 TI Uart_Uniflash 映像(如果正常运行“C"字符“字符测试字符测试)。 您可以通过提供的 SDK TI python 脚本发送 Uniflash 映像。 然后、AM62x ROM 加载程序将将 Uart_Uniflash 闪存器加载到 RAM 并启动它。 Uniflash 知道如何刷写 SBL 引导加载程序、例如 SBL_NULL 引导加载程序。 SBL_NULL 映像可通过同一 python 脚本通过 UART 传递到正在运行的 Uniflash 程序、该程序知道如何 将引导加载程序刷写到 OSPI 闪存存储器(希望电路板上有 OSPI 闪存存储器)。 成功刷写 SBL_NULL 引导加载程序后、尝试引导它。 为此、请切换 用于选择 OSPI 引导模式的引导开关 并对电路板下电上电。

    有关详细说明、请参阅本指南的闪存 SOC 初始化二进制文件: AM62x EVM 设置

     指南的 AM62x SKEVM 用户设置/配置/引导模式小节: AM62x SK 评估模块中还介绍了引导模式

    我不是 Linux 专家、不知道以下 AM62x Linux SDK 文档对于您的用例有多有用:   

    AM62x Linux 快速入门指南

    如果您有任何问题、请告诉我们。

    谢谢

    此致、

    Anastas Yordanov

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

    您好  Anastas、非常感谢您的详细信息。

    我已将 AM6254 SOC 的引导模式配置为 UART 并在 Tera Term 上电时配置为 115200 波特率、并在一些初始十六进制数字后看到定期打印“C"。“。  

    然后、我发送了“tiboot3-am62x-gp-evm.bin"文件“文件、从 SD 卡引导时我们拥有该文件并正常运行。 (所有启动文件都与工作中的 SD 卡启动文件完全相同)

    文件发送后,我们会收到以下消息:

    U-Boot SPL 2023.04 (2024 年 2 月 13 日 — 11:44:04 +0000)
    SYSFW ABI:3.1(固件版本 0x0009 '9.1.8--v09.01.08 (Kool Koala)')
    SPL 初始栈使用情况:13384 字节 

    在这之后、我们不会打印“C",“,传输、传输文件“tispl.bin"时“时也不会发生任何情况

    如果这样可以正常工作、我会发送最后一个“u-boot.img"文件“文件。


    谢谢

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

    您好、Mitesh、

    我们可能需要与 TI SPL / u-boot 软件专家进一步讨论有关如何继续分析的进一步提示。

    如果下周初没有收到回复、请 Ping 此主题。

    谢谢

    此致

    Anastas Yordanov

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

    非常感谢、Will。

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

    您好、Mitesh、

    这看起来像 DDR 初始化问题。 您可以查看此常见问题解答中的第 2 节吗?  

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1358039/faq-board-bring-up-tips-for-sitara-devices-am64x-am243x-am62x-am62l-am62ax-am62d-q1-am62px?tisearch=e2e-sitesearch&keymatch=uart%2525252525252520boot#

    常见问题解答中的其他部分也可能有帮助。

    此致、

    Stan