ZHCABZ7C October   2015  – April 2024 DP83867CR , DP83867CS , DP83867E , DP83867IR , DP83867IS

 

  1.   1
  2.   商标
  3. 1简介
  4. 2排查应用问题
    1. 2.1 读取并检查寄存器值以进行基本运行状况检查
    2. 2.2 原理图和布局检查清单
    3. 2.3 元件检查清单
      1. 2.3.1 磁性元件
      2. 2.3.2 晶体/振荡器
    4. 2.4 外设引脚检查
      1. 2.4.1 电源
      2. 2.4.2 RBIAS 电压和电阻
      3. 2.4.3 探测 XI 时钟
      4. 2.4.4 探测 RESET_N 信号
      5. 2.4.5 在初始化期间探测配置 (strap) 引脚
      6. 2.4.6 探测串行管理接口信号(MDC、MDIO)
      7. 2.4.7 探测 MDI 信号
    5. 2.5 链路质量检查
    6. 2.6 使用各种环回模式进行内置自检
    7. 2.7 调试 MAC 接口
      1. 2.7.1 RGMII 调试
      2. 2.7.2 SGMII 调试
  5. 3应用特定调试
    1. 3.1 提高短电缆的链路裕度
    2. 3.2 提高不同通道的链路裕度
    3. 3.3 在 100Mbps 全双工强制模式下建立链路
    4. 3.4 1Gbps 通信中的链路建立不稳定问题调试
    5. 3.5 DP83867PHY 和 DP83867PHY 无法以 1Gbps 建立链路
    6. 3.6 合规性调试
    7. 3.7 EMC 调试
    8. 3.8 工具和参考
      1. 3.8.1 DP83867 寄存器访问
      2. 3.8.2 扩展寄存器访问
  6. 4结论
  7. 5参考资料
  8. 6修订历史记录

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 以重新启动自动协商