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.

[参考译文] DP83620:AM4377以太网数据包丢失

Guru**** 2587365 points
Other Parts Discussed in Thread: AM4377, DP83620, DP83640

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/675335/dp83620-am4377-ethernet-packet-loss

器件型号:DP83620
主题中讨论的其他部件:AM4377DP83640

您好!

我们正在其中一个项目中使用 TI 的 AM4377 CPU 和 DP83620以太网 PHY。 我们能够提高10Mbps、但在100Mbps 时、数据包丢失率约为30-60%。 我们的测试设置如下所示。
AM4377 CPU 位于主 PCB 中、DP83620以太网 PHY 位于通信 PCB 中。 CPU/MAC 至 PHY 的连接通过 Samtec 卡边缘连接器(PN:HSEC8-120-01-SM-DV-A)进行。 随附以太网 PHY 电路板原理图。 布线长度符合 DP83620 PHY 准则("AN-1469 PHYTER 设计和布局指南"中的< 6英寸)。 随附的布线长度详细信息。

此外、请查找更多问题:

  • 请告知我们 TXe2e.ti.com/.../6558.ETHERNET_5F00_LENGTH_5F00_MATCH_5F00_ANALYSIS_5F00_TI.xlsxD_3 引脚的自举选项(以启用 RMII 从模式)、因为数据表中未明确说明此选项。
  • 请在为这些布线长度找到合适的端接值时提出建议、如果有建议(端接电阻器除外)、请提出其他建议。
  • 我们没有得到任何有关 PHY 芯片的勘误表。 也请在这方面提供帮助。


此致、
Madhusoodana Bairy

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

    如果遇到数据包错误问题、问题通常与参考时钟的抖动有关。

    AM335x 存在已知抖动问题、这意味着它无法用于向外部 RMII 物理层提供 RMII 参考。 这也可能适用于 AM437x 系列。

    我现在将其移至 AM437x 论坛。

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

    尊敬的 Rob:

    感谢您的回复。

    PHY 的时钟、我们从外部振荡器获取、但我们不使用处理器的参考时钟(尽管我们提供了选项、但原理图中有未安装的 R41&R42系列电阻器)。

    请建议。

    此致、

    Madhusoodana Bairy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Madoodhusana、您好!
    在布局之前、您是否执行了接口的时序分析?

    RMII 具有非常严格的时序限制、因此必须事先充分了解 MAC+PHY 的接口时序。 很明显、我不是指布线长度匹配、而是指接口设置/保持/延迟时序。 每个 MAC 和 PHY 具有不同的时序限制、因此需要进行时序分析。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 DK:

    RMII 参考时钟是输入到 MAC 还是从 MAC 输出? 因为、根据 DP83620数据表、它是 MAC 的输入、仅在 RMII 主模式下才需要。 根据 TI AN-1405 (SNLA076A)、它是来自 MAC 的 O/P。 请您对此进行澄清、因为不同的芯片供应商以不同的方式使用。 因为、我们看到50MHz 时钟的振幅在大约2V 至3.3V 之间变化(我们提供给 PHY 和 MAC 的振荡器时钟)。 目前、我们已将其配置为处理器的输入。 如果不是这样、我们的设计是错误的、因为我们将振荡器时钟提供给 MAC (我在前面的文章中的评论是、"我们从外部振荡器获取的 PHY 时钟、我们不使用处理器的参考时钟"是错误的)。

    我们已经没有时间了。 因此、请您回复一份答对。
    清除这些配置后、我们将进行时序分析。

    此致、
    Madhusoodana Bairy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    马德胡萨纳
    从 SoC 的角度来看、您似乎拥有时钟拓扑。

    AM437x SoC 无法提供 RMII 50MHz REF_CLK。 必须将该引脚正确设置为引脚多路复用器中的输入、然后由外部器件提供低抖动时钟。 通常、此50MHz 时钟由 MAC 和 PHY 共享、并注意均衡来自时钟 MAC 和时钟 PHY 的布线长度、这样可确保 MAC 和 PHY 共享相同的时钟时序。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 DK:

    有趣的是、我们看到的是来自 SoC 引脚的50MHz 时钟! 我们有隔离式通信 PCB (PHY 和 RJ45连接器所在的位置)、我们能够在处理器板本身中看到时钟。 但问题是、如果我们在软件中禁用此引脚(以使用振荡器时钟)、则不会检测到 PHY 地址。 但是、如果我们简单地将处理器时钟与 PHY 隔离(通过剪切迹线)、它就能正常工作、但数据包丢失率为20-35%。 请在这方面提供帮助。

    已连接 SoC 振荡器时钟和时钟的示波器捕捉。

    此致、
    Madhusoodana Bairy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    马德胡萨纳
    在时钟输出模式中、MAC 似乎设置(不正确)。 请验证您的器件树是否设置了 RMII 时钟输入模式。 这可以通过读取 CTRL_GMII_SEL 寄存器(修订版 H TRM 的第689页)在硬件中进行验证。

    如果这是错误的、我认为 RMII REF_CLK 的引脚多路复用模式/焊盘配置选择也可能不正确。 请仔细检查这些内容。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    您能否为您的电路板附加(不剪切和粘贴) DTS 文件? 如果您不希望连接电路板 DTS、请附加与网络相关的部分、例如 Mac 节点定义和引脚多路复用定义。 此外,请将修补程序附加到任何系统,包括 已修改的 dtsi 文件。 最后、请附加内核驱动程序/net/ti/目录中修改的任何文件的补丁

    此致、

    Schuyler

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

    尊敬的 DK/Schuyler:

    很抱歉耽误你的答复。 延迟是因为我们在测试中发现了一些改进。 我们已将33欧姆串联端接电阻器添加到处理器时钟(MAC 到 PHY 时钟)、并测试了内部和外部环回、我们发现这2个测试中没有丢包。 但是、如果我们连接到网络、则会有30-40%的数据包丢失。 我认为、当我们启用了环回时、它在边界条件下工作、并且要与网络配合工作、它需要有适当/更好的时序要求。 请建议。

    我将很快共享 DTS 文件。

    此致、

    Madhusoodana Bairy

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    马德胡萨纳
    在上面、您会说"MAC 到 PHY 时钟"。 请您澄清一下吗? 正如我之前在这个线程中提到的、MAC 不能提供50MHz RMII 时钟。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 DK/Schuyler:

    即使我们已将其配置为输入、我们也可以在 RMII_REFCLK 上使用 seee2e.ti.com/.../ethernet_5F00_dts.txting 50MHz 时钟! 我已附加 DTS 文件。 我们没有修改驱动程序中的任何内容。

    此外、您能否建议我们在以下字段中设置哪些内容:

    CTRL_CONF_RMII1_REFCLK 寄存器字段(位24-28)中的 DS0模式(全部为0)

    CTRL_CONF_RMII1_REFCLK 寄存器中的 CONF_RMII1_REFCLK_RXACTIVE 和 CONF_RMII1_REFCLK_MMode 位(两个位现在都为0)

    CTRL_GMII_SEL 寄存器中的 RMII1_IO_CLK_EN (现在为0)

    此致、

    Madhusoodana Bairy

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

    尊敬的 DK/Schuyler:

    即使我们已将其配置为输入、我们也会观察 RMII_REFCLK 上的50MHz 时钟! 我已附加 DTS 文件。 我们没有修改驱动程序中的任何内容。

    此外、您能否建议我们在以下字段中设置哪些内容:
    CTRL_CONF_RMII1_REFCLK 寄存器字段(位24-28)中的 DS0模式(全部为0)
    CTRL_CONF_RMII1_REFCLK 寄存器中的 CONF_RMII1_REFCLK_RXACTIVE 和 CONF_RMII1_REFCLK_MMode 位(两个位现在都为0)
    CTRL_GMII_SEL 寄存器中的 RMII1_IO_CLK_EN (现在为0)

    此致、
    Madhusoodana Bairy

    e2e.ti.com/.../6406.ethernet_5F00_dts.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    这看起来是一个部分 DTS 文件、我需要 DTS 中使用的 PHY 模式。 应该有一个附加节点、这与 EVM-SK DTS 中的节点类似

    cpsw_emac0{&cpsw_emac0}
    PHY-MODE =…
    };

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

    您好 Schuyler/DK、

    请找到随附的完整 DTS 文件。

    此外、您能否建议我们在以下字段中设置哪些内容:

    CTRL_GMII_SEL 寄存器中的 RMII1_IO_CLK_EN (现在为0)

    CTRL_CONF_RMII1_REFCLK 寄存器字段(位24-28)中的 DS0模式(全部为0)

    CTRL_CONF_RMII1_REFCLK 寄存器中的 CONF_RMII1_REFCLK_RXACTIVE 和 CONF_RMII1_REFCLK_MMode 位(两个位现在都为0)

    此致、

    Madhusoodana Bairy

    e2e.ti.com/.../ethernet_5F00_dts_5F00_updated_5F00_new.txt

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

    感谢您提供 DTS 文件。 我需要与一位同事一起回顾这一点。 您能否描述为何要将这些条目添加到 EMAC 节点?

    interrupt-parent =<&GPIO1>;
    中断=<4 0>;

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

    您好 Schuyler/DK、

    这些中断正从 PHY 进入处理器。 因此、处理器驱动器不提供这些信号、我认为它仅用于存在任何中断时的状态指示。

    顺便说一下、我们观察到、当我们将 RMII 接口中的端接电阻器从 o Ω 更改为22 Ω(从80%更改为20%)时、数据包损耗会降低。 那么、对于处理器中的此端接电阻器或驱动器阻抗有任何建议吗?

    已从处理器参考手册中附加以太网交换机 RMII 时钟方框图。 根据我们的理解、我们可以使用该 RMIIx_REFCLK 作为输入或输出。 如果我们将其用作输入、则必须禁用

    PD_PER_cpsw_50MHz_gclk 并为输入使用外部时钟源。 如果我们将其用作输出、则必须启用 PD_PER_cpsw_50MHz_gclk、并且我们也可以将该时钟提供给 PHY 芯片。 我的理解是否正确?

    此致、

    Madhusoodana Bairy

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

    除了上述内容之外,我们是否必须在 PHY 中启用内部端接电阻器,或者默认情况下启用了该电阻器? (没有太多信息。 数据表中)。 因为正如我前面所说的、与0欧姆外部端接(无外部端接)相比、22欧姆外部端接时的数据包损耗更小。

    此致、
    Madhusoodana Bairy
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    我今天不在办公室。 我无法回答有关 PHY 终端的问题。 我明天将检查、但您在上一帖子中提到的寄存器应根据 DTS 中的 PHY 接口设置进行处理。

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

    我再次查看了 DTS 文件、引脚看起来正确。 但您发布的 DTS 文件已为所有引脚启用下拉。 这与引脚复用工具上的输出不同。 是否有理由为所有引脚启用所有下拉电阻?

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

    您好 Schuyler/DK、

    我发现问题与阻抗有关。 看起来电路板的阻抗控制不正确(我们从客户那里获得了这些电路板)。 但是、我们将在下一个修订版中重新设计此器件。 因此、我有关终端电阻器、参考时钟等的问题仍然存在。

    我会考虑上述建议,但要检查我们是否须等到下一个修订版的修订版才可。


    此致、
    Madhusoodana Bairy

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

    您好 Schuyler/DK、

    您能否根据我在本主题前面提到的参考时钟问题进行更新?

    此致、
    Madhusoodana Bairy

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

    您好 Schuyler/DK、

    您能否根据我在本主题前面提到的参考时钟问题进行更新?

    此致、
    Madhusoodana Bairy

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

    您好!

    这些是特定于 PHY 的问题。 我将把这个主题移至 PHY 论坛、他们可以更好地支持您的查询。

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

    请总结您对 PHY 时钟的问题。 共享时钟树的方框图。

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

    Geet、您好!

    根据 TRM、RMII 基准时钟被输入到处理器(电路原理图中的 eth1_CLK/eth2_CLK)。 但是、即使我们已将其配置为输入、我们也可以看到来自该引脚的50MHz 输出。 我们目前已隔离振荡器时钟和处理器时钟。 所附的 PHY 侧原理图。 原理图中的 eth1_CLK 和 eth2_CLK 网络是处理器 RMII1和 RMII2模块的 RMII 参考时钟输入。

    已从处理器参考手册中附加以太网交换机 RMII 时钟方框图。 根据我们的理解、我们可以使用该 RMIIx_REFCLK 作为输入或输出。 如果我们将其用作输入、则必须禁用
    PD_PER_cpsw_50MHz_gclk 并为输入使用外部时钟源。 如果我们将其用作输出、则必须启用 PD_PER_cpsw_50MHz_gclk、并且我们也可以将该时钟提供给 PHY 芯片。 我的理解是否正确?

    此致、
    Madhusoodana Bairy

    e2e.ti.com/.../DUAL_5F00_CHANNEL_5F00_ETHERNET_5F00_SCHEMATICS.pdf

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

    我可以从 DP83620的角度进行评论。

    DP83620支持 RMII 主从运行模式。 我相信您希望从外部为 MAC 和 PHY 提供50MHz 的频率。 实际上、您使用的是 RMII 从模式。 您需要提供50MHz 时钟作为 DP83620 XI 的输入。 它应满足数据表中提到的时钟质量要求。


    一个问题、我相信这是您正在开始的新设计。 我们有新一代器件 DP83822。 不确定您是否已经了解过。 或者您正在寻找 DP83620和 DP83640的封装兼容设计?

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

    感谢您的快速响应。

    是的、您回答正确。 我们将从外部向 MAC 和 PHY 馈送50MHz、并使用 RMII 从模式。

    是的、我们也在研究封装兼容性。

    此致、
    Madhusoodana Bairy