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.

[参考译文] DP83867IR:DP83867

Guru**** 2905440 points

Other Parts Discussed in Thread: DP83867E

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/863470/dp83867ir-dp83867

器件型号:DP83867IR
主题中讨论的其他器件:DP83867E

将 TI 83867 PHY 与 Zynq 配合使用时出现 ping 命令问题。  在执行 PHY 寄存器读取时、所有寄存器值都报告为0。 它是100m 端口。  

RGMII 时钟偏差在 PHY 中完成(模式1自举选项)。 我已经检查了电源、时钟、偏置电阻器值。

ping 命令有时起作用,但大部分时间报告:Request Timed out.e2e.ti.com/.../Reg-Dump-Dec-6-2012-Jan-01-01.docx (请求定时)

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

    您好 Dalip、

    请帮助我了解您发送给我的文档。 您可以读取一些寄存器、而不能读取一些寄存器。

    您似乎有两个 PHY、一个具有地址0xF、另一个具有地址0x15。

    请查看"8.4.2.1扩展地址空间访问"部分。 要访问扩展寄存器、请按照本节中列出的步骤操作。 特别是"8.4.2.1.7使用间接寄存器访问的读取操作示例"和"8.4.2.1.8使用间接寄存器访问的写入操作示例"可能会引起注意。

    谢谢、

    Vibhu

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

    您好、Vibhu、

    感谢您快速返回。

    我有两个 PHY (0xF 或0x15)和0x0。  两个 PHY 都设置为100M。 对于这两种情况、自动协商都关闭。 PHY 0xF 不是通过 Zynq 配置的。

    另 一个 PHY 0x0通过 Zynq 的 MII-RGMII 转换器进行配置。

    这是 PHY 0x0不能正常工作。 它的工作间歇性极高、或者根本不工作。 我已经检查了电源、偏置电阻器等

    当 PHY 0x0正常工作时、我将寄存器读出包含在内。 当它不起作用时、您不会读取任何寄存器值。 它们都报告为0x000。

    我在连接 PHY 0x0寄存器值时、它正常工作。  此外、ping 会回复(它显示 Ping 有时工作正常、并且大部分时间失败)。

    PHY 0x0的 RGMII 时钟偏差通过自举(模式1)实现。 我已检查 Zynq 是否未设置时钟偏差。

    谢谢。

    Dalip.e2e.ti.com/.../PHY-ADDR-0-Reg-Values-when-It-is-working-.docx

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

    您好 Dalip、

    您能否确认是否遵循数据表中描述的访问扩展寄存器集的过程?

    谢谢、

    Vibhu

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

     

     

    "请查看"8.4.2.1扩展地址空间访问"部分。 要访问扩展寄存器、请按照本节中列出的步骤操作。 特别是"8.4.2.1.7使用间接寄存器访问的读取操作示例"和"8.4.2.1.8使用间接寄存器访问的写入操作示例"可能会引起注意。"

     

    您在上面提到的是什么文档? DP83867数据表? 或其他一些文档。  因为我在数据表中找不到它。

    正如我说过的、读取寄存器本身并不是问题。 它是 PHY 0x0的间歇性功能。

    谢谢。

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

    这是第9.4.2.1节... 我找到了。 我的数据表中的章节编号不同。  扩展寄存器组被正确访问。 我的 SW 团队负责处理这一问题。  我有一个脚本、它通过串行端口从寄存器中输出。

    我的问题是 PHY 0x0间歇性工作、该 PHY 通过 Zynq (RGMII 接口)进行配置。

    正如您在我发送的 ping 捕获中看到的。

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

    您好 Dalip、

    很抱歉、该部分的编号存在混淆。 我是指 DP83867E 数据表。

    感谢您的确认。 我仍然对您如何配置器件感到困惑。 如果这是 RGMII 接口、如何通过 Zynq 配置 PHY。 您需要通过 SMI (MDIO + MDC)接口配置 PHY。 Zynq 是否还提供 SMI 接口来配置寄存器?

    谢谢、

    Vibhu

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

    请检查 word doc 以了解我的配置。

    e2e.ti.com/.../PING-not-working.docx

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

    您好、Vibhu、

    这是我的 ping 屏幕...链接函数莫名工作,然后向下。

    如果我使用大数据包(max=65500)进行 ping 操作,则此 PHY (如果完全正常工作,而且间歇性太差)。 虽然使用65500时的时间很短、但我不明白它的作用是什么。

    e2e.ti.com/.../PING-Behavior-.docx 

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

    您好 Dalip、

    请参阅以上问题:

    如果这是 RGMII 接口、如何通过 Zynq 配置 PHY。 您需要通过 SMI (MDIO + MDC)接口配置 PHY。 Zynq 是否还提供 SMI 接口来配置寄存器?

    下面是一些故障排除步骤:

    1. 探测 RX_CLK、如果这里没有时钟、则 PHY 上电时出现问题
    2. 当您说 PHY 间歇性工作时、这意味着、当它工作时、您能够读取寄存器0x2和0x3并与数据表和值匹配?

    谢谢、

    Vibhu

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

    它是同一个线程。  

    我将检查 RX_CLK。   

    这些寄存器是可以读取的、但当 PHY 不工作(没有 ping 通过)时、所有寄存器值都读作0x00。

    我进行了一项特定测试:我通过 FTP 在相关以太网端口/PHY 上发送了两个大文件500 M 和1G。 然后我把它们收回了。 对文件执行了校验和以发现损坏、并且检查良好。

    问题:此特定 PHY 上的 ping 命令失败。

    我将向您介绍 PHY 的配置方式。

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

    您好 Dalip、

    谢谢、请随时向我发布进度信息。  

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

    您好 Dalip、

    我要关闭此主题、请在您掌握寄存器配置过程和 RX_CLK 探针数据的相关信息时打开一个新主题。

    谢谢、

    Vibhu