ZHCABZ7D October   2015  – May 2026 DP83867CR , DP83867CS , DP83867E , DP83867IR , DP83867IS

 

  1.   1
  2.   摘要
  3.   商标
  4. 1DP83867 应用概述
  5. 2排查应用问题
    1. 2.1 原理图和布局检查清单
    2. 2.2 器件运行状况检查
      1. 2.2.1 电压检查
      2. 2.2.2 探测 RESET_N 信号
      3. 2.2.3 探测 RBIAS
      4. 2.2.4 探测 XI 时钟
      5. 2.2.5 在初始化期间探测搭接引脚
      6. 2.2.6 探测串行管理接口(MDC、MDIO)
        1. 2.2.6.1 读取并检查寄存器值
    3. 2.3 MDI 运行状况检查
      1. 2.3.1 磁性元件
      2. 2.3.2 探测 MDI 信号
      3. 2.3.3 检查链路质量
        1. 2.3.3.1 提高短电缆链路裕度
        2. 2.3.3.2 提高通道间链路裕度
      4. 2.3.4 PMA 合规性
    4. 2.4 MII 运行状况检查
      1. 2.4.1 MII 检查
      2. 2.4.2 GMII 检查
      3. 2.4.3 RGMII 检查
      4. 2.4.4 SGMII 检查
    5. 2.5 环回和 PRBS
      1. 2.5.1 环回模式
      2. 2.5.2 通过 MAC 发送和接收数据包
      3. 2.5.3 通过 BIST 发送和接收数据包
  6. 3应用特定调试
    1. 3.1 在 100Mbps 全双工强制模式下建立链路
    2. 3.2 1Gbps 通信中的链路建立不稳定问题调试
    3. 3.3 DP83867PHY 和 DP83867PHY 无法以 1Gbps 建立链路
    4. 3.4 EMC 调试
    5. 3.5 低 IPG 链路中的数据包错误
    6. 3.6 10Base-Te TP_IDL 故障
    7. 3.7 拉长 RGMII 上升/下降时间
  7. 4工具和参考
    1. 4.1 扩展寄存器访问
  8. 5结论
  9. 6参考资料
  10. 7修订历史记录

DP83867PHY 和 DP83867PHY 无法以 1Gbps 建立链路

如果两个 DP83867PHY 能够以 10Mbps 和 100Mbps 建立链路,但无法以 1Gbps 建立链路,请参阅以下调试过程:

注: 此勘误表仅出现在旧版 DP83867PHY(寄存器 0x0003 = A0F1)中
  • 通过在其中一个 DP83867PHY 上写入寄存器 0x001F = 4000 来尝试软件复位,然后查看是否解决了问题。
  • 读取寄存器 0x0005[15],如果 0x0005 bit[15] = 0,
    • 则自动 MDIX 很可能没有完成。两个 PHY 同时在同一通道上发送自动 MDIX FLP_Brust,导致死锁情况。

    解决方案:

    • 更改其中一个 PHY 上的自动 MDIX 计时器可以防止死锁情况。
    • 在其中一个 DP83867PHY 上更改寄存器 0x002C bit[32] = 0
      DP83867
    • 写入 0x001F = 4000 以对 PHY 进行软件复位
  • 读取寄存器 0x0005[15],如果 0x0005 bit[15] = 1
    • 自动 MDIX 已完成,自动协商伪随机数 (PRN) 很可能是问题所在。伪随机数 (PRN) 发送随机数 以确定两个 PHY 在 1000Base-T 下进行通信时,哪个 PHY 是主 PHY(由本地时钟源提供时钟信号),哪个 PHY 是从 PHY(由所接收数据流中的恢复时钟提供时钟信号)。这可以通过寄存器 0x000A bit[14] 来检查。
    • 但是,PRN 不是完全随机的,如果两个 DP83867 同时启动自动协商,则可能两个 DP83867 发送完全相同的随机种子 (PRN) 并导致死锁。

    解决方案:

    • 在其中一个 DP83867PHY 上将 0x0009 bit[12:11] 设置为 11,并在另一个 DP83867PHY 上将 0x0009 bit[12:11] 设置为 10。这个寄存器可以强制一个 PHY 始终作为 1000Base-T 通信的主机,以防止伪随机数 (PRN) 进程。
    • 写入 0x001F = 4000 以对 PHY 进行软件复位,或写入 0x0000[9] = 1 以重新启动自动协商