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.

[参考译文] PROCESSOR-SDK-AM62X:适用于 DDR4 SDRAM 的 DDR-MARGIN-FW

Guru**** 2393725 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1487648/processor-sdk-am62x-ddr-margin-fw-for-ddr4-sdram

器件型号:PROCESSOR-SDK-AM62X
主题中讨论的其他器件:SysConfig

工具与软件:

我们拥有基于 AM6254处理器的定制设计、采用一个32GB x 16 DDR4-1600 SDRAM 芯片。 (非 LPDDR4)

 DDR-MARGIN-FW 工具是否可用于 DDR4?

实际上、我们的电路板上的 DDR4存在问题、因为我们无法在800 MHz 上运行、但它似乎可以在400 MHz 上稳定运行。

DDR 裕量收费会非常有用。 您是否有任何其他工具可以帮助我们诊断问题?

谢谢!

克里斯

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

    克里斯、您好!

    遗憾的是、目前我们还没有固件支持 DDR4的计划、但我明白在这个问题中的重要性。

    您能描述一下所遇到的问题吗? 是否未能在800MHz 进行培训? 数据有效性问题? 运行 memtester 是一个有用的工具、Linux SDK 内置有该工具。 如果可以通过初始训练、这有助于缩小特定位/字节通道的潜在问题。  

    此致、

    卢卡斯

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

    大家好、Lucas:

    我们能够诊断问题的确切根源。

    我将请我们的 Linux 团队尝试运行 memtester、 我想、我们必须使用 Linux SDK 版本构建一个可引导器件、在本例中为 USB 闪存驱动器。 是这样吗?

    我们将 在我们的产品上使用 Yocto 构建、该产品目前在400 MHz 上与 SDRAM 一起运行。  我想、我们也可以在那里安装 memtester 工具?

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

    嘿 Kris、

    我们的器件有几个引导选项、USB 引导确实是其中之一。 您当前使用的/首选引导方法是什么? 您的电路板上是否有 UART 或 JTAG 等其他外设? 我们可以在 memtester 之外执行的一个额外步骤是、如果您转储 DDRSS 寄存器、我们可以检查它们是否有某些状态位/寄存器。 这可以通过需要 JTAG 访问的 CCS 轻松完成、但也可以通过正常的 C 代码完成。

    此致、

    卢卡斯

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

    大家好、Lucas:

    我们的定制 AM6254电路板设置为从 USB 引导。 我们首选的方法是 USB 闪存驱动器。

    但是、我们有用于 Linux 控制台的 UART0引脚输出、还有 JTAG 连接器。

    我能够使用 CCS 20.1.0、 运行 AM62B-P1 EVM GEL 脚本的无工程调试会话在我们的定制电路板上成功配置 SDRAM。 但是、这些脚本为 EVM 上使用的16GB x 16芯片配置2GB 空间。  

    我必须将 DDR I/O 速度降至400 MHz (200 MHz PLL 源)才能使 DDR 运行、但在800 MHz 上配置时也没有错误消息。 当我运行 Data_Wr 脚本时、它会返回内存错误。 该操作在400 MHz 上成功完成。

    我可以运行 AM62 DDRSS 调试命令并转储寄存器。

    此外、使用 EVM 脚本进行的配置仅为2GB、我们拥有4GB 芯片(32GB x 16)。

    我尝试将 AM62x-DDR4-1600MTs.gel (位于 C:\ti\ccs2010\ccs\ccs_base\emulation\gel\AM62x\AM62_DDRSS\si_configs 中)替换为由 SysConfig DDR4配置工具为我们的32GB x 16芯片生成的文件、但无法正常工作。 还有什么其他需要更改的地方吗?

    32GB x 16 DDR4 SDRAM 芯片实际上是封装中的两个16GB x 8裸片、因此我想尝试为两个 16GB x 8芯片设置 GEL 脚本、但找不到芯片数量设置的位置。

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

    大家好、Lucas:

    我可以使用以下脚本转储寄存器:

    • AM62_DDRSS_CTL_PI_PHY_RegDump
    • AM62_DDRSS_SS_RegDump
    • AM62x 文件夹中的任何脚本-...ccs\ccs_base\emulation\gel\AM62x

    您能帮助我评估适用内容吗?

    谢谢!

    克里斯

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

    克里斯、您好!

    我们确实可以! AM62_DDRSS_CTL_PI_PHY_RegDump 应该就是您从 SoC 转储所需的全部。 您是否可以在训练后以1600 MT/s 和800 MT/s 的速度获取转储信息以进行比较?

    我也和我的同事进行过交流、看起来您也得到了此处整理的初始配置: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1487771/am625-am625-ddr4-configuration-with-ccs-20-1-0-gel-scripts 

    此致、

    卢卡斯

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

    大家好、Lucas:

    我从上周看不到我的帖子,所以它再次在这里。

    正如我之前提到的、我们的定制电路板具有  Micron MT40A2G16TBB-062E:F SDRAM、这是一种双通道16Gbx8骰子器件、可提供4GB 存储器。

    SysConfig 配置适用于16Gbx8器件、覆盖整个4GB 空间。 (包含配置文件)e2e.ti.com/.../16Gbx8.zip 

    我正在附加一个 zip 文件、其中包含两个目录、它们包含800mts 和1600MTS 速度。 800mts 内存工作正常、1600MTS 工作不正常。

    此致、

    克里斯

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

    克里斯、您好!

    可以确认我能够下载包含400与800 MT/s 测试详细信息的 gels、头文件、转储文件和 Word 文件的 zip 文件(请在一个软件包中了解所有这些信息!)。 让我处理这些日志和审查可能发生的事情,我会尽快回来的信息,我可以或其他实验想法. 我在 word doc 中看到了 CCS 实验、它们是合理的、需要确认的一个小问题是、无论从 DRAM 读取多少次内容、这些内容是否保持不变? 可以在内存浏览器中选择持续刷新按钮、 大多数写入完整性问题 会导致数据始终错误读回、而读取问题通常表现为数据不断变化。

    此致、

    卢卡斯

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

    e2e.ti.com/.../Memory-Browser.docxThanksLucas、

    我在存储器浏览器中翻转了持续刷新、内容似乎能够持续正确读取。

    - 400 MHz (800MTS)写入与连续读取正确。

    连续读取时、- 800 MHz (1600MTS)写入错误、读取的值与写入的值相同(错误)。

    例如、下图显示了存储器浏览器的顶行、我在地址0x8_8000_0000中写入了以下数:

    a、b、c、d、e、 f、aaaaaaaaaa、bbbbbbbbbbbb、cccccc、dddddd、 eeeeeeee、ffffff、0、0、0、 0、0。

    /resized-image/__size/640x480/__key/communityserver-discussions-components-files/791/Memory-Browser.jpg

    我们进行了 SI 分析、清楚地显示了 ADDR/CTRL 总线的问题。 报告见 attached.e2e.ti.com/.../DDR_5F00_report_2D00_ddr4_2D00_1600_2D00_all_2D00_nodes_2D00_crosstalk.pdfe2e.ti.com/.../PalPilot-_2D00_-Vorne-Sa798.002a-90033200-Post-Layout-SI.pdf