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.

[参考译文] TDA4VEN-Q1:定制电路板上的 TDA4VEN-Q1没有&'无法启动 ROM 引导加载程序

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1520837/tda4ven-q1-tda4ven-q1-on-custom-board-doesn-t-start-rom-boot-loader

器件型号:TDA4VEN-Q1
Thread 中讨论的其他器件:AM62PUNIFLASH

工具/软件:

您好、 我们正在与合作  TDA4VEN  处理器的模块  定制板 我们最近收到了我们的第一个原型。 很遗憾、我无法从获得任何响应  ROM 引导加载程序 —没有活动  UART0 、与引导模式无关。

处理器由供电  TPS6522430-Q1 PMIC 下一页  用例2 (LPDDR41400  MHz Cortex-A53)  查看 使用 TPS6522430-Q1和 TPS6522230-Q1 PMIC 为 Sitara AM62P/A/D 供电的用户指南 (文档 SLVUCV9)。 我已经验证了  上电序列与基准匹配

下面是我观察到的内容:

  • 所有电源轨(包括 VDD_CORE、VDD_MPU、VDD_1V8等)都以正确的顺序出现。
  • 不久之后  VDD_CORE  已启用、  25  MHz 晶体振荡器  按预期开始振荡。
  • 几毫秒后:
    • PORz_OUT  从低电平变为高电平
    • MCU_ERRORn 、  MCU_RESETSTATz 、和  PMIC_LPM_EN0  也会变为高电平

不过、在监控时  UART0_TX  (在引导时配置)、线路保持在3.3V —有  没有活动或输出

这是  引导模式引脚设置  我正在使用(在引导时验证):

  • BOOTMODE[2:0]= 011b  (25 MHz 外部输入)
  • BOOTMODE[9:3]= 1100111b  (主引导= UART)
  • BOOTMODE[13:10]= 0001b  (备用引导= USB)

我仔细检查了信号路由、并确认我使用的是正确的引脚  UART0 。 我还验证了 SoC 没有保持在复位状态。

可以调试内部发生的情况吗  ROM 引导加载程序 ? 是否有任何引导状态指示灯?

除了引导模式和电源之外、是否还有其他条件会阻止 ROM 启用 UART0?

不正确的 PMIC 电源时序或 LPDDR4配置是否会以某种方式阻止 ROM 代码执行?

如有任何指导或建议、将不胜感激。 谢谢

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

    你(们)好  

    [报价 userid="415688" url="~/support/processors-group/processors/f/processors-forum/1520837/tda4ven-q1-tda4ven-q1-on-custom-board-doesn-t-start-rom-boot-loader

    不过、在监控时  UART0_TX  (在引导时配置)、线路保持在3.3V —有  没有活动或输出

    [/报价]

    只需确认当您说 UART0_TX 时、您 的意思是 MCU_UART0_TXD 正确吗?

    此外、您还可以转储 CTRLMMR_MAIN_DEVSTAT[15:0]寄存器的值、以查看是否根据引导模式正确设置了值。  BOOTMODE[15:0]引脚的值锁存到器件状态寄存器 CTRLMMR_MAIN_DEVSTAT[15:0]中。


    此致
    Diwakar

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

    尊敬的 Diwakar:

    我已经尝试连接到这两个端口 UART0 MCU_UART0 。 根据我阅读的文档、 UART0 是使用的正确接口 ROM 引导加载程序 这是我关注的主要问题。 检查示波器、 UART0_TX 所在的位置 3.3  V. 但也有 无活动 —无输出、甚至不是单个字符。 MCU_UART0_TX 另一方面、它保持不变 0  V. 、这表明它在这一阶段未通电或未配置。

    关于您对读取内部状态或引导 ROM 寄存器的建议、我假设这需要一个 JTAG 、因为在我的情况下 ROM 代码不提供 UART 或 USB 控制台输出。 我目前没有连接 JTAG、还有其他可以尝试的事情吗?

    感谢你的帮助。

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

    你好 

    您是否已审核 TI 硬件专家提供的定制电路板原理图?

    此致
    Diwakar

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

    不、我还没有。 我们的 电路板基于 PROC170 002 EVM 参考设计。 不过、有些事情已经简化了。  

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

    对于此器件、UART0是引导 UART (引脚 F19、F20)。

    您已确认器件正在退出其复位序列(MCU_RESETSTATz 变为高电平)。  您还可以检查 RESETSTATz 吗?

    EMU0和 EMU1引脚应被拉高。  如果不正确、这些引脚可能会导致器件进入测试模式、ROM 可能无法执行。  您能否确认?

    JTAG 是这种调试类型的良好工具?  您是否可以启用访问权限?

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

    大家好、Robert 确实是在检查 UART0 (引脚 F19和 F20)。 EMU0和 EMU1上拉。  RESETSTATz 最初未连接、但我设法到达焊球 E27 (在外排) 、看起来像是3V3。  

    根据 JTAG、我下了订单来获取 TMDSEMU110、但交付过程将需要几天时间。 我得到了一个 flyswatter2 JTAG、并且使用了最新的 OpenOCD 应用、我尝试访问处理器。 我使用的配置文件是"ti_k3.cfg"、它定义以下处理器:

    TargetName              键入    Endian TapName     状态
    ---------------------------- ----- ----- ------------------------ -----
    0  j722s.cpu.sysctrl       Cortex_m  Little  j722s.cpu    检查延迟
    1  j722s.cpu.a53.0        aarch64   little  j722s.cpu    检查延迟
    2  j722s.cpu.a53.1        aarch64   little  j722s.cpu    检查延迟
    3  j722s.cpu.a53.2        aarch64   little  j722s.cpu    检查延迟
    4  j722s.cpu.a53.3        aarch64   little  j722s.cpu    检查延迟
    5  j722s.cpu.wkup0_r5.0  cortex_r4  little  j722s.cpu    检查推迟
    6  j722s.cpu.main0_r5.0   cortex_r4  little j722s.cpu      检查推迟
    7*  j722s.cpu.mcu0_r5.0   cortex_r4  little  j722s.cpu   检查推迟
    8  j722s.axi_ap           MEM_ap  Little  j722s.cpu   未知

    启动 open OCD 时、我获得以下内容:

    信息:JTAG tap:j722s.cpu tap/device found:0x0bba002f (制造商:0x017 (德州仪器(TI))、部件:0xbba0、版本:0x0)
    info:推迟 j722s.cpu.sysctrl 的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    INFO:推迟 j722s.cpu.a53.0的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    INFO:推迟 j722s.cpu.a53.1的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    INFO:推迟 j722s.cpu.a53.2的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    INFO:推迟 j722s.cpu.a53.3的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    info:推迟 j722s.cpu.wkup0_r5.0的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    info:推迟 j722s.cpu.main0_r5.0的 arp_examine
    info:使用 arp_examine 命令手动检查它!
    INFO:推迟 j722s.cpu.mcu0_r5.0的 arp_execure
    info:使用 arp_examine 命令手动检查它!
    错误:JTAG-DP 粘滞错误
    错误:j722s.cpu.a53.0:如何重置?

    我可以更改目标、但无论选择哪一个、我都无法访问存储器、进行重置或执行任何操作。

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

    它显示处理器退出复位序列。  我邀请了另一位专家来帮助解释 JTAG 信息。  不确定这是与安全相关的问题还是其他问题。

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

    我不熟悉 fly-swatter 和 open OCD。  上面看起来什么都不起作用。 J722S 可能是 HS-MCU FS 器件、因此 cortex-m (0)将无法访问。  由于在系统启动早期、大多数内核仍将断电。  如果 JTAG 工具和连接正确、AXI-AP 和一个 R5应该可用。  您是否有可以对 JTAG 进行烟雾测试的 TI-EVM?  让它提供参考、然后迁移到定制电路板是一个不错的步骤。  在 JTAG 工作后读取引导模式引脚并探测内部空间、可以提供更高级别的线索。

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

    我没有开发套件。  

    如果未正确配置、是否有任何安全机制会阻止处理器使用 UART (或引导)?

    获得 TMDSEMU110 JTAG 后、您建议先查看什么内容?

    我是否应该使用 UniFlash 软件?

    谢谢。

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

    如果您的系统未正常通电并复位、或者输入时钟格式不好、系统将无法启动。 如果这些前提条件没有问题、系统将在启动过程中对其引导模式引脚进行采样。  如果引导模式上拉/下拉电阻正确、系统将按照引导模式引脚的编码探测初始图像。  从您的角度来看、安全性不会停止此引导映像探测(您可以探测 PERIF 引脚、看看它们是否从探测器切换)。   当然、您必须具有格式良好的启动映像(良好的证书+可能已加密的映像)、引导接口将使用该映像。  在 UART 上会有一个 hello 消息、您会发送响应和图像。  如果你没有看到任何活动,那么一些事情是不好的。   JTAG 可能有帮助、也可能很多没有帮助。  如果电源或时钟不好、即使 JTAG 也无法正常工作。  

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

    我最终收到了 XDS110探针。 我尝试使用 UniFlash 和 CC 连接到目标、但没有太大成功。 在 CCS 中、目标配置中的 Test Connection 选项成功完成、因此基本 JTAG 通信似乎可以正常工作。 但是、当我尝试启动调试会话并连接到任何内核(例如 WKUP_R5或 MAIN_R5)时、我收到以下错误:"连接到目标时出错:(错误-6305) PRSC 模块无法写入路由器寄存器。 (Emulation package 20.2.0.3536)"消息。

    我已将引导模式引脚设置为 开发引导 、但没有任何区别。

    在 JTAG 访问正常工作之前、我是否需要加载一些内容(例如 DMSC 固件或初始化脚本)?

    谢谢。

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

    只有 TIFS-M4和 DM_R5作为引导的一部分供电。  其他内核需要进行计时、以便有机会连接到这些内核。  在您正在使用的 HS-DM 器件上、您应该尝试连接到 FS。  由于 JTAG 与 TAP 的连接传输已通过、DM 可能会允许建立连接。   您的 DIP 开关可能锁不好、并且在所选(可能是浮动路径)上找不到引导映像。  可能检查以确保 DIP 开关或拉杆已正确焊接。