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.

[参考译文] DP83825I:EPHY 原理图审阅

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1275932/dp83825i-ephy-schematics-review

器件型号:DP83825I
主题中讨论的其他器件:SK-AM62

各位专家、您好!

我们在 PCB 上设计了采用 DP83825IRMQR 的 EPHY 电路。
但是、当以太网电缆从此 PCB 连接到 PC 进行测试时、可以建立链路(100Mbps、全双工)、但 ping 操作无法成功。
 
PHY 和 MCU 的器件名称如下。
 PHY: DP83825IRMQR x2 (eth0、eth1)用作 RMII 主模式
 MCU: AM6231ASGGGAALW

我们基于 SK-AM62设计了以太网通信模块的 MCU 固件。
(仅更改了一些参数和定义、从适用于 RGMII 模式更改为适用于 RMII 模式。)
我们已确认 MCU 上 ETH0/ETH1的端口模式选择均为 RMII。

ping NG 的详细信息;
 PC --> PCB:PC 向 PCB 发送 ARP 请求(作为全局数据包)、但 PCB 不  向 PC 发送响应消息。
 PCB --> PC:PCB 将 ARP 请求发送到 PC (作为全局数据包)、然后 PC 将响应 消息 发送到 PCB、然后 PCB 再次将 ARP 请求发送到 PC (作为全局数据包)。 重复该过程、直到 PCB 的 ping 命令停止。

我已在下述主题中向 MCU 专家询问过这个问题。
本新话题是向 EPHY 专家提问、然后由 MCU 专家提供建议。
https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1269687/am623-cannot-establish-ethernet-rmii-data-communication-tx-rx-between-mac-and-phy/4833929#4833929

随附的 PDF 文件是 MCU 与 PHY 之间以及 PCB 电路中 PHY 周围的以太网电路。
请回顾这些内容、 如果根据上述信息可以怀疑有什么可疑内容、或者我们需要进一步查看、请向我们提供一些建议。


谢谢。

中岛康弘

e2e.ti.com/.../EthernetCircuit20230914.pdf

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

    尊敬的 Nakashima-San:

    器件当前捆绑进入 RMII 主模式、但是 XI 上的时钟输入50MHz 只能用于 RMII 从模式。

    这无法通过寄存器访问进行更改、因此我建议在 RX_D1 (R15、R16)上填充2.49k PU 并移除 PD (R17、R18)以将器件捆绑至 RMII 从模式。

    如果这样无法解决问题、请共享一个寄存器转储、然后重新打开该线程。

    谢谢!

    埃文

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

    您好 Evan-San、

    感谢您的评论和建议。

    器件当前捆绑进入 RMII 主模式、但是 XI 上的时钟输入50MHz 只能用于 RMII 从模式。

    这无法通过寄存器访问进行更改、因此我建议在 RX_D1 (R15、R16)上填充2.49k PU 并移除 PD (R17、R18)以将器件捆绑至 RMII 从模式。

    [/报价]

    在我们的 PCB 电路上、X2 (ECS-2520MV-250-CN-TR)是25MHz 输出振荡器、25MHz 时钟信号"CPSW_RMII_CLK"输入到 XI。
    此设计基于 DP83825I 数据表中显示的 RMII 主模式信息、因此我无法理解您为什么建议该解决方案。

    我猜您的说明意味着 XI 不能在 RMII 主模式设置上运行、也就是说、即使数据表中写入了许多 RMII 主模式规格、DP83825I 也只能在 RMII 从模式下运行。
    因此、我 根据您的建议、将 DP83825I 的 RX_D1从下拉(RMII 主器件设置)更改为上拉(RMII 从器件设置)、然后确认了以太网连接、但我甚至没有将链路建立作为我的预测。

    附加的文件是以太网连接建立之前/之后、RX_D1更改回下拉(RMII 主器件设置)两个 PHY (ETH0;IC2、ETH1;IC3)的寄存器转储日志。
    请确认这些文件、然后 再次调查此问题的原因。

    谢谢。
    中岛市

    e2e.ti.com/.../regidump_5F00_eth0.txt
    e2e.ti.com/.../regidump_5F00_eth1.txt

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

    尊敬的 Nakashima-San:

    感谢您的澄清、最初我在共享的原理图中看不到25MHz 振荡器。

    如果正在使用25M 振荡器、则可接受 RMII 主模式的原始自举。

    请使用 phytool 而不是 ethtool 来生成寄存器转储-共享的值无效。

    此常见问题解答包含有关使用 phytool 的详细信息:

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1164499/faq-how-to-read-and-write-ethernet-phy-registers-using-a-linux-terminal

    谢谢!

    埃文

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

    Morning Evan-San、

    感谢您的答复。

    我尝试在使用 phytool 命令建立以太网连接之前/之后获取两个 PHY (eth0;IC2、eth1;IC3)的寄存器转储日志。
    请确认。

    我不确定 只是一点点附加的日志与你想要的,因为这是我第一次使用 phytool 命令...

    谢谢。
    中岛市

    e2e.ti.com/.../regidump_2800_phytool_29005F00_eth0.txt
    e2e.ti.com/.../regidump_2800_phytool_29005F00_eth1.txt

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

    尊敬的 Nakashima-San:

    感谢您共享寄存器转储、日志是有效的参考。

    查看寄存器转储、发现 PHY 的配置和状态在链路断开和链路建立情况下均符合预期。

    这 使我认为该问题可能与 SoC 软件配置有关。

    如果您希望更有把握地确定问题不在 PHY 级别、一项测试是通过 PHY 及其链路伙伴以及配置为反向环回模式的链 路伙伴从 SoC 发送数据、以将相同数据路由回 SoC:

    SoC -> PHY1 -> PHY2 (反向环回)-> PHY1 -> SoC

    通过写入0x16[4]= 1来启用反向环回。

    如果 SoC 接收相同的数据包、则信号路径有效。

    谢谢。

    埃文

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

    尊敬的 Evan-San:

    感谢您的评论。

    我尝试通过连接 eth0端口和 eth1端口进行回送测试、正如您所说的、但结果是 eth0和 eth1都没有收到数据包。
    请参阅随附的日志。

    查看寄存器转储、发现 PHY 的配置和状态在链路断开和链路建立情况下均符合预期。

    这 使我认为该问题可能与 SoC 软件配置有关。

    [/报价]

    我根据 SoC 专家的建议创建了此主题、通过他的调查、SoC 专家认为此问题的原因可能在 SoC 端、但在 PHY 端。
    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1269687/am623-cannot-establish-ethernet-rmii-data-communication-tx-rx-between-mac-and-phy/4833929#4833929
    上述主题已在今天结束、但您的意见是、我是否应该再次向 SoC 专家询问该问题???

    我不能要求您(PHY 专家)和 SoC 专家一次性讨论这个问题、并提供到目前为止我已在该主题中附加的大量信息和许多结果?

    谢谢。
    中岛市

    e2e.ti.com/.../LoopbackTest_2D00_log231003.txt

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

    尊敬的 Nakashima-San:

    我与团队讨论了、并且有更多有关调试的信息请求:

    确认 RMII 线路的迹线长度、以及 MAC 侧 TX/RX 信号的设置/保持时间

    -探测 RMII 线在 ping 操作和分享示波器快照

    -在 ping 过程中执行 tcpdump 命令,查看发送的数据包与接收的数据包

    MDI 侧连接似乎在链路建立的情况下正常工作、但 MAC 侧可能无效。

    谢谢!

    埃文

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

    您好 Evan-San、

    请参阅以下内容。

    1) RMII 线路的布线长度

    ETH0的所有布线长度都长于 ETH1、因此我确认 ETH0 RMII 信号的布线长度如下。
     TX_D0:31.98mm
     TX_D1:34.22mm  
     TX_EN:34.63mm
     RX_D0:32.34mm
     RX_D1: 29.26mm
     CRS_DV:35.63mm
     50 MHz 时钟(PHY -> MCU):40.13mm

    2) MAC 侧 TX/RX 信号的建立/保持时间
    我很抱歉、但是您希望我怎样确认它?
    如果来自数据表、则这些时间的最小值在 AM62x 数据表中定义。
    如果通过探测 TX/RX 线、我无法确认、因为这些线始终为低电平(0V)、如以下第一个线程所述。
    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1269687/am623-cannot-establish-ethernet-rmii-data-communication-tx-rx-between-mac-and-phy/4833929#4833929
    >>我们测量了 PHY 周围主信号线的波形。
    >> MDIO、MDC、50MHz t、TD_P/M、RD_P/M 的波形发生了正确的变化,似乎没有问题。
    >>但 TX_EN、TX_D0、TX_D1、RX_D0、RX_D1的波形 RX_ER、CRS_DV 始终为0V、无变化。

    3)在 ping 操作期间探测 RMII 线路并共享示波器屏幕截图
     上述第一个主题对此进行了说明、请确认。

    4)在 ping 过程中执行 tcpdump 命令,查看发送的数据包与接收的数据包
    从 PC 到 PCB (MCU)执行 Ping 操作期间、tcpdump 的结果是"未捕获数据包"。  


    此致、
    中岛市

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

    尊敬的 Nakashima-San:

    50 MHz 时钟应更加精确地与 MAC TX/RX 线路进行长度匹配 -在采样相对于时钟的 MAC 信号时、电流偏移可能会导致问题。 但是、这似乎不是您看到的问题的根本原因。

    小组发现当前的 PHY 级实现和状态寄存器不存在会导致 MAC 接口无法生成输出的问题。

    为了确认 PHY 级别不存在任何问题、我建议使用数据包发生器/校验器直接测试 MDI、825将进行反向环回模式测试以验证 MDI 和内部 PHY 信号链:

    如果发生器接收到相同的环回数据、则将问题隔离到 MAC/SoC 侧。

    在这种情况下、请跟进 MCU 团队、进一步讨论 SoC 端的可能原因。

    谢谢!

    埃文

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

    您好 Evan-San、

    感谢您的评论。

    根据您的建议、我尽量按照以下过程在 PHY 处于反向环回模式时进行 MDI 检查。
    1.在 PC 和 PCB 之间连接 LAN 电缆。
    2.在 PC 上运行 ping 命令。
    3.检查 PC 上的 Wireshark 是否在以太网网络上循环显示了两个相同的 ping 请求数据包。

    结果是所有 ping 请求数据包都循环显示为两个相同的数据包。

    根据您的评论、我了解 PHY 团队可以确定 PHY 周围的示意图没有出现、并且 PHY 目前根据确认结果正常运行、因此认为此问题的原因在于 SoC (MAC)端。

    我是否应该通过在此主题上发布新评论来重新开始与 SoC 团队进行讨论?
    该主题已在次日关闭、但发布新回复评论是否会使该主题再次打开?
    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1269687/am623-cannot-establish-ethernet-rmii-data-communication-tx-rx-between-mac-and-phy/4833929#4833929

    给我们一个建议,谢谢。

    中岛市

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

    尊敬的 Nakashima-San:

    感谢您确认反向环回测试。

    是的、MCU 团队更有能力支持此问题。

    此致、

    埃文