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:在 SBL 引导模式下、DDR 初始化失败

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1414428/tda4ven-q1-ddr-initialization-failed-in-sbl-boot-mode

器件型号:TDA4VEN-Q1
主题中讨论的其他器件:SysConfig

工具与软件:

您好、TI 专家 J ü、

我们将使用 Samsung 的 DDR (4G  K4FBE3D4HB-KHCT2V)替换 EVM 上的 DDR、将 生成的文件重命名为 board_ddrReginit.h、 并替换原始 board_ddrReginit.h.但 SBL 无法启动、如以下屏幕截图所示。 您能否帮助我确认这是不正确的参数配置引起的?

e2e.ti.com/.../j722s_5F00_board_5F00_ddrRegInit.h

  

此致。

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

    尊敬的 TI 专家:

    上传 SETTING_INFO.syscfg 如下所示。

    e2e.ti.com/.../8015.settings_5F00_info.syscfg.txt

    此致。

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

    您好!

    从图像中可以看出" SoC_moduleSetClockFrequency 失败!!! "。  在对 DDR 时钟进行编程时、驱动程序代码似乎存在问题。  

    我之前已经看到过系统固件中的时钟驱动器代码无法处理特定频率组合(即、特定振荡器值+所需频率导致故障)的情况。 还可以提供您替换的 board_ddrReginit.h 文件?

    谢谢!
    Kevin

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

    看起来默认配置可能会将频率值设置为以下值:

    #define DDRSS_PLL_FREQUENCY_0 25000000
    #define DDRSS_PLL_FREQUENCY_1 933250000
    #define DDRSS_PLL_FREQUENCY_2 933250000

    是否尝试使用3733 数据速率? 您所附加的.h 文件似乎配置为3733数据速率、但 SysConfig 输入显示您正在将 DDR 时钟设置为2133MHz (4266数据速率)。 请注意、AM67x 不支持2133 MHz DDR 时钟。

    此致、
    Kevin

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

    尊敬的 Kevin:

     我替换的 board_ddrReginit.h 文件如下所示。

    e2e.ti.com/.../2664.board_5F00_ddrRegInit.h

    [报价 userid="51195" url="~/support/processors-group/processors/f/processors-forum/1414428/tda4ven-q1-ddr-initialization-failed-in-sbl-boot-mode/5418573 #5418573"]

    看起来默认配置可能会将频率值设置为以下值:

    #define DDRSS_PLL_FREQUENCY_0 25000000
    #define DDRSS_PLL_FREQUENCY_1 933250000
    #define DDRSS_PLL_FREQUENCY_2 933250000

    [报价]

    是的、我也注意到了这个问题。 在 board-ddrReginit.h 中进行上述修改后、setclk 从不失败。 但是、SBL 启动将在 Bootloader_verifyMulticoreImage 下失败。 SD 卡中的所有文件都可以正常引导至文件系统、直到替换 board-ddrReginit.h 文件为止。

    我想问一下不正确的 DDR 初始化是否会导致此问题?

    您是否尝试使用3733 数据速率? [报价]

    有。

    此致。

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

    尊敬的 Kevin:

    如果 DDR 容量从8g 更改为4g、是否需要调整此 CerLoadAddr 的地址? 当前地址为0xc2000000。

    此致。

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

    尊敬的 Xie:

    为了解决总 DRAM 大小的变化、可能需要在软件中进行其他更改。 我来咨询一下我们 RTOS 软件团队的相关人员。

    此致、
    Kevin

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

    尊敬的 Kevin:

    这是否意味着我的 DDR 初始化已经正常? 我希望您能帮助我尽快确认需要修改的其他内容。 非常感谢。

    此致。

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

    尊敬的 Xie:

    我昨天将该票证重新分配给了来自 RTOS 软件团队的人员。

    我确实根据 u-boot 的经验知道、软件通常需要一些其他更改(以指示正确的总 DRAM 大小)。  遗憾的是、我从未使用过 MCU+ SDK (或 RTOS PDK)、因此我不知道这些 SDK 在哪里或是否也需要该 SDK。

    这是否意味着我的 DDR 初始化已经正常?

    您似乎不再停留在 DDR 初始化中。 出于调试目的、您始终可以在 DDR 初始化代码之后立即添加一小段代码、以将一些已知值写入 DDR 地址空间、然后读回这些值、以展示功能是否正常工作。 或者、您可以通过 JTAG 连接调试器并插入 DDR 内存空间。

    此致、

    Kevin

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

    尊敬的 Kevin:

    根据 u-boot 的经验、我知道软件通常需要进行一些其他更改(以指示正确的 DRAM 总大小)。  [报价]

    您可以上传以下论坛中的更改步骤吗?

    TDA4VEN-Q1:LPDDR4适应失败-处理器论坛-处理器- TI E2E 支持论坛

    将速率数据从3733修改为1600后、它可以正常引导至文件系统。  这可能意味着 DDR 的参数配置仍然存在问题、我们仍在检查。

    此外、我们发现由 board-ddrReginit 定义的宏 DDRSS-PLL_FREQUENCY1的值。 H 不能设置为933000000、必须设置为93325000才能正确初始化 DDR。 但可以使用 k3-j722s-dr-lp4-50-3722。 将 DTSI 设置为933000000可以正确初始化 DDR。 为什么会这样呢?

    此致。

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

    尊敬的 Kevin:

    该主题是否有更新?

    此致。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="512804" url="~/support/processors-group/processors/f/processors-forum/1414428/tda4ven-q1-ddr-initialization-failed-in-sbl-boot-mode/5427589 #5427589"]此外、我们发现宏 DDRSS-PLL_FREQUENCY1的值由 board-ddrReginit 定义。 H 无法设置为933000000、必须设置为93320000才能正确初始化 DDR。 但可以使用 k3-j722s-dr-lp4-50-3722。 将 DTSI 设置为933000000可以正确初始化 DDR。 为什么?

    遗憾的是、这是因为引导加载程序(u-boot 和 MCU+ SDK)不共享同一个 PLL 源代码。 我认为 u-boot 有自己的"k3时钟"驱动器、并且我认为 MCU+ SDK 使用系统固件中包含的 PLL 驱动器。  

    [报价 userid="512804" url="~/support/processors-group/processors/f/processors-forum/1414428/tda4ven-q1-ddr-initialization-failed-in-sbl-boot-mode/5427589 #5427589"]

    您可以上传以下论坛中的更改步骤吗?

    TDA4VEN-Q1:LPDDR4适应失败-处理器论坛-处理器- TI E2E 支持论坛

    [报价]

    我将查看另一个线程。

    此致、
    Kevin

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

    尊敬的 JC:

    关于该主题的问题、我将关闭该主题。  

    此致、

    Brijesh

x 出现错误。请重试或与管理员联系。