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.

[参考译文] TLK105L:通信控制板 PHY 断开问题

Guru**** 2578945 points
Other Parts Discussed in Thread: TLK105, AM5728

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1393307/tlk105l-communication-control-board-phy-disconnection-problem

器件型号:TLK105L
Thread 中讨论的其他器件:TLK105AM5728

工具与软件:

关于审判问题的专题

1.1背景

在测试中、我们发现通信控制板和串行端口扩展板(与 PCB 相同)在温度变化期间不响应100千兆位网络 ETH3故障。 原理如下:CPU 通过 SMI 总线访问 PHY1/2、PHY 的地址为0x01和0x03。

重复使用 TLK105的原理图、PHY 的内部点如下所示。 但83822已经过调整、并且83822 NC 引脚上的相关器件已被删除。

卸下外围设备后、三个引脚通过一条线路连接、如下图所示:

1.2. 测试问题现象

根据 HASS 测试的要求、TSCP 主机 Subrack 需要放置在 HALT 测试室内、用于从-25°C 到60°C 的温度循环、并辅以振动。 在-20°C、单个通信控制板的 eth3网络会中断、无法实现通信、ping 也会中断。

读取 ETH3的寄存器状态、发现所有 PHY 寄存器均无法读取。 当操作系统的底层轮询 PHY 地址0到31时、会发现 PHY 地址消失、并且无法访问该 PHY 的所有寄存器。

针对去年在室温下 PHY 无法读取后、TLK105替换为83822芯片的问题分析显示、这一现象与当时的情况是一致的。

1.3. 对问题进行修改调整和测试验证

1.3.1. MDC 波形

通过修改 MDC 和 MDIO 接线、已知方案可以解决信号干扰问题、但从根本上解决不了干扰源。 因此、根据上面的电路、通过调整电源输入和输出端子的电阻、电容和电感、更换电源模块来执行信号测试。 测试记录如下:

波形不良:

更好的波形:

在此波形调试的基础上、我们修改了 PCB 的一个版本、修改后的版本具有更好的测试波形、如下图所示:

SMI 总线的信号波形测试如下:

MDC:

MDIO:

整体波形不错、与多电容方案相比、该波形的 MDC 过冲略大约1%、但通过修改布线、信号质量仍然得到改善。

经过500轮测试、PHY 未出现问题、硬件在此版本中完成。

但是、在常规生产中更换 PCB 并将电容器添加到 MDC/MDIO 之后、也会出现类似的信号质量问题。 但是、由于无法修改 PCB、电容器上拉至 VCCIO、该测试确实解决了此版本 PCB 的 PHY 压降问题。 已生产的电路板将根据该计划进行整流。

更新版本的 PCB 是根据下拉电阻器方法重新绘制的、并进行了后续电路板生产。

然而、最近、在老化实验中、有一批在 MDC/MDIO 信号线上带有上拉电容方案的电路板有 PHY 断开的问题。 断开连接的性能与之前相同。

目前、主要问题是断开连接后无法确认 PHY 所处的状态、并且无法通过寄存器访问获取 PHY 的故障流程。 网络只能通过 PHY 的硬复位信号恢复为服务。 这种情况的原因可能是什么?如何进一步找到故障原因?

 

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

    您好!

    目前、TLK105器件低于 NRND。 我们没有太多 用于调试此特定部件的资源。 我可以问一下、这是用于新设计吗?

    如果是、我们强烈建议使用 DP83822代替 TLK105、因为它具有更好的 EMC 性能和更强大的特性。 我们还提供了从 TLK105到 DP83822的翻转文档、很高兴为 DP83822提供帮助:

    再说一次、我们对 TLK105器件的了解有限。 我们用于调试的资源有限。

    ——

    此致、

    Hillman Lin

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

    现在我使用的是 DP8382、但问题仍然存在

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

    您好!

    感谢您的解释。 根据您的寄存器日志、似乎您的 MDIO/MDC 无法正确访问。

    如果可能、您能否尝试移除 MDC 线路上的2.2k Ω 上拉电阻、看看这是否解决了您的寄存器访问问题?

    ——

    此致、

    Hillman Lin

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

    该电阻未焊接。

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

    您好!

    我想问您提供的原理图中不焊接哪个电阻器吗?

    ——

    此致、

    Hillman Lin

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

    MDC 线路上的2.2k Ω 上拉、R3U

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

    您好!

    如果可能、您能否告诉我您为进行 MDIO 访问写入了哪个 PHY ID?

    ——

    此致、

    Hillman Lin

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

    Eth2问题从总线消失后、eth3的寄存器值就会发生变化(在0℃ 下的温度较低的情况下、但当温度升高时、它不再出现)
    记录:ETH3的0x0a 寄存器更改(正常默认值为0x0104)

    有必要确认 Eth3的寄存器值为什么会在这个温度范围内变化?

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

    您好!

    您说的是在低温条件下、 SOC 无法识别 PHY ID 2?

    在低温条件下工作时是否存在任何通信? 您还可以检查寄存器0x0014和0x0015、看看是否出现任何 IDLE 错误或 RX_ER?

    如果您在低温情况下重置 PHY、它是否能够解决该问题?

    ——

    此致、

    Hillman Lin

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

    在板上修改两个 PHY 地址(1到2、3到5、-25度)、然后重复此问题。 在本例中、读取 ETH2的 PHY 寄存器为0xFFfb

    从0到31读取地址的寄存器仅可用于地址5 (eth3)、其余的为0xfffb。读取失败时 eth3的0x0014和0x0015寄存器值如下图所示。

     

    读取 Eth3的其他基本状态寄存器、如下图所示

    当故障卡的温度从低温恢复到正常温度约-7摄氏度时、主板重新通电、ETH2初始化异常。 读取 ETH2的寄存器值可读取该值、读取0x01寄存器、显示自协商未完成、寄存器值为0、以及链路状态值为0。

     

    然后、输入命令"ifconfig eth2 down"和"ifconfig eth2 up"后、自动协商成功、PHY 初始化成功。

    问题1:eth3的当前状态是什么?

    Q2:什么可能是 eth2未成功初始化的原因?

     

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

    你(们)好

    我想仔细检查一下三个场景:

    • ETH1工作正常
    • ETH2无法建立链路
    • ETH3无法建立链路并访问寄存器

    如果可能、我想问一下 eth1、eth2和 eth3在原理图上有何不同? 如果可能、您能否分享全部三个 PHY 的原理图?

     eth1、eth2和 eth3是否有搭接差异?

    ——

    此致、

    Hillman LIN

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

    CPU 扩展 eth0和 eth1是千兆位以太网、使用 RGMII 接口;eth2和 eth3是100Mbps 以太网、使用 MII 接口。 CPU 使用 AM5728、eth0和 eth1使用 KSZ9131、在运行和各种环境测试中都没有问题、CPU 对 PHY 的访问是正常的。 而 eth2和 eth3使用83822、当前问题是这两个 PHY 之一、当前断开连接的高概率是 eth2。 如下图所示:

     

     

    千兆位网络原理图:

     

     

    两个千兆位网络 PHY 共享一条 SMI 总线、使用 AM5728的 D3和 F6引脚的 SMI 总线功能、如下图所示:

     

     

    两个100Mbps 网络 PHY 使用 AM5728的 AB3和 AA4引脚的 SMI 总线功能共享一条 SMI 总线、如下图所示:

     

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

    您好!

    我现在有点困惑。 您似乎正在使用1Gbps PHY。

    • 您是否有 DP83822的原理图?  
    • 如果交换两个 DP83822 PHY、问题是否出在 PHY?

    ——

    此致、

    Hillman Lin

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

    您是否有 DP83822的原理图?

    请参阅 TLK105的原理图、它与封装。兼容

    如果交换两个 DP83822 PHY、问题是否出在 PHY?

    PHY 之后不出现故障、目前它跟随位置、信号质量很可能导致 ETH2容易引发问题。

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

    您好!

    此图对我而言有点难以阅读100Mbps 原理图。 如果可能、您能否分享更好的原理图?

    感谢您确认 ABA 交换。 我将重点介绍 ETH2的原理图。

    ——

    此致、

    Hillman Lin

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

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

    您好!

    我将在 本周晚些时候回顾并向您提供结果。

    ——

    此致、

    Hillman Lin

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

    您好!

    移除 MDC 线路上的上拉电阻器是否有帮助? 我们不需要在 MDC 时钟上使用任何上拉电阻器。 如果上拉电阻太强、这可能会破坏 MDIO 通信。

    ——

    此致、

    Hillman Lin

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

    MDC 信号上没有上拉电阻器、MDC 当前暂停、或在 MDC 中增加10pF/100pf 电容器、添加到 MDC 时会降低 PHY 压降问题的可能性。

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

    您好!

    您有没有塞利亚? 如果可能、您能否探测 Selea 下的 MDIO 和 MDC 线、看看是否 能够解码?

    根据观察结果、似乎 无法正确识别 PHY ID。 这将导致处理器无法与 PHY 正确通信。 如果可能、您能否仔细检查 PHY ID 并确保 PHY ID 被正确识别?

    ——

    此致、

    Hillman Lin

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

    我们使用示波器捕获 SMI 总线波形、但当我们使用示波器探头测试 MDC/MDIO 信号时、探头增加了线路上的电容、PHY 没有出现异常、PHY 损耗问题没有再次发生。 我们还使用 DSlogic 分析仪分析了 SMI 总线、正常情况下时序正常。 但是、由于探头引入的电容、PHY 压降问题无法重现、也无法确定 PHY 到底有什么问题。 此 PHY 的原始 ID 为0x01、但在压降问题之后、无法识别具有此 ID 的 PHY、并且此 PHY 从 SMI 总线上消失。

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

    您好!

    至于最后一条语句、"此 PHY 的原始 ID 为0x01、但在丢失问题之后、无法识别具有此 ID 的 PHY、并且此 PHY 从 SMI 总线上消失了。"

    • 请问"压差问题"是什么?

    PHY 能够以前识别 PHY ID 1的 MDIO 访问、但发生某些情况后、PHY 无法再识别 PHY ID 1。 我的理解是否正确?

    ——

    此致、

    Hillman Lin

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

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

    您好!

    我们的预期是 PHY 在"压降问题"之后更改 PHY ID。 它清楚地表明、电路板上存在一些导致 PHY 不再能够识别 PHYID 1的问题。 由于 ABA 交换了问题、因此问题出在电路板上。

    • 我们的主要假设是电路板上的自举电阻器会发生某种变化或位于阈值的边界。 如果可能、请检查 PHYID 周围的自举电阻器或检查不同的 PHY ID。 PHY ID 可能与其他一些 PHY 重复、导致无法再识别 PHY ID。  
    • 您还可以仅为该特定 PHY 加电、而无需为其他 PHY 加电、看看是否能够以不同的 PHY ID 读取此 PHY。

    ——

    此致、

    Hillman Lin