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.

[参考译文] DP83TD510E:DP83TD510E RGMII 介质转换器问题

Guru**** 2540720 points
Other Parts Discussed in Thread: DP83TD510E

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1158462/dp83td510e-dp83td510e-rgmii-media-converter-problem

器件型号:DP83TD510E

您好!

我们在一侧使用 DP83TD510E 开发了介质转换器、而在另一侧使用了另一个 PHY。 这两个 PHY 配置为使用 RGMII 进行相互通信(我们有一个微控制器、可以使用 MDIO 接口配置 PHY)。

我们面临的问题是、DP83TD510E 似乎没有响应 RGMII、但它会生成2.5MHz 时钟。


更多详细信息:

DP83TD510E 未处于隔离模式。 (寄存器 MII_REG_0 = 0x100)
RGMII 被启用(寄存器 MAC_CFG_1 = 0x4201)
如果在寄存器 MAC_CFG_1中设置位11 (cfg_RGMII_TX_clk_SHIFT_SEL = 1)、则看不到 Tx-Clk 和 Tx-Data 行之间的任何移位。
如果在寄存器 MAC_CFG_1中、我们同时激活 cfg_RGMII_Rx_clk_shift_SEL 和 cfg_RGMII_TX_clk_shift_SEL、则 RGMII 仍然不工作。

侧注:

DP83TD510E 可与通过差分发送输出(PMD)连接的另一个 DP83TD510E 建立链路。

PHY_STS = 0x0001、(链路打开)
PCS_STATUS = 0x0004 (PCS 接收链路打开)
PMA_STATUS = 0x3001 (PMA 接收链路打开)

期待收到您的反馈。

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

    您好!

    这看起来问题确实存在于 RGMII 线路中。  仅 TX (MAC 至 PHY)方向错误、还是 RX (PHY 至 MAC)方向错误? 您能否在寄存器配置前后发送范围信息? 您能否确保寄存器访问正常、写入命令正由 PHY 处理? 软复位(寄存器0x1F = 0x4000)是否有帮助? 您的 RGMII 迹线有多长时间?

    此致、

    Gerome

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

    您好!

    在下图中、您可以看到 DP83TD510E 接收到的内容(Rx_SIGNAL)以及 DP83TD510E 发送的内容(Tx_SIGNAL、Tx_SIGNAL 放大)。 需要注意的是,TX 信号只是在加电时才发送,而在一段时间后,DP83TD510E 不发送任何信号,只发送2.5MHz 时钟。 (很难判断它何时停止发送、是在微控制器配置 PHY 之后还是在配置 PHY 之后、无论如何我不认为信号是 RGMII、因为信号只在一个边沿发生变化)

    寄存器访问正常、我可以读取 PHY-ID、每次写回后、MDIO 接口都会工作。
    我还尝试过软复位(和硬复位)、但至今未成功。

    我是否应该遵循任何建议的初始化例程?

    Rx_signalTx_signalTx_signal_zoomed

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

    您好!

    如果您在拍摄照片时未发送信息、则 RGMII 线路将没有切换的理由。

    此致、

    Gerome

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

    您好!

    让我澄清一下我是如何进行测试的:

    两个介质转换器通过双绞线电缆连接(DP83TD510E 的差分发送输出),两侧的 PHY_STS 指示链路已启动(一个明显配置为主链路,另一个配置为从链路)。 每个介质转换器的以太网 PHY 通过静态 IP 连接到两台单独的 PC (通过以太网)。 以太网 PHY 链路也已启动。 当我从一侧“Ping”时,数据在 RGMII 线路(Rx_SIGNAL 图像)上生成,想法是,DP83TD510E 现在应转换数据并通过双绞线(似乎没有)发送数据,而另一侧的介质转换器应执行相反的过程。

    拍摄照片时 ,我一直在“拍”照片。

    此致、

    Pourya

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

    您好、Pourya、

    需要仔细检查;RGMII 的 RX 引脚是输出、而 TX 引脚是我们 PHY 的输入。 能否使设计更加清晰、以至于 MAC 将数据推送到 RX 引脚(因为您说的是 RX 线)、并且希望从 TX 引脚获得数据?

    此外、您是否可以访问数据包发生器以及环回访问(通过 PHY 的软件配置或从 MAC)? 这将大大有助于调试。

    此致、

    Gerome

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

    Gerome、您好、感谢您的回复。

    很抱歉,使用令人困惑的信号标签,我用“Rx_SIGNAL” 来表示,是 PHY 的输入(Tx 引脚),“Tx_SIGNAL”是 PHY 的输出。 硬件中的信号布线不正确。

    至于回送测试,目前我没有任何其他的链路合作伙伴(除了另一个介质转换器,它受到了确切的问题)来彻底测试通信。 我的意思是可以在模拟前端之间建立链路,但由于没有从链路合作伙伴传输数据,所以我无法真正测试模拟回路。

    因此、我认为只要没有从模拟前端接收到数据、其他回路层也没有太大帮助。 不过、我很快会购买开发板或类似的器件来运行环回测试。

    使我感到困惑的是、以下状态寄存器显示链接已启动:

    PHY_STS = 0x0001、(链路打开)
    PCS_STATUS = 0x0004 (PCS 接收链路打开)
    PMA_STATUS = 0x3001 (PMA 接收链路打开)

    这意味着,从模拟前端到 PC 层,链路已成功建立,问题似乎在 MII 层,尽管我不确定。

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

    您好、Pourya、

    在您之前提供的照片中、您能否澄清哪个信号来自 PHY 的 RX 引脚、哪个信号来自 PHY 的 TX 引脚?

    此致、

    Gerome