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.

[参考译文] DP83869HM:当光纤端口链路断开时、使铜缆端口链路状态保持不变

Guru**** 2391135 points
Other Parts Discussed in Thread: DP83869HM, DP83869EVM

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1486964/dp83869hm-keep-copper-port-link-status-unchanged-when-optical-port-link-goes-down

器件型号:DP83869HM
主题中讨论的其他器件: DP83869EVMDP83869

工具/软件:

您好:

我在介质转换器模式(光纤至铜缆)下使用 DP83869HM PHY。 连接两个侧端口时、器件工作正常。 但我们面临的问题是、当链路的任何一侧自动中断时、另一侧链路也会中断。

例如、开始时、铜缆端口链路和光纤端口链路都将接通。 每当我们只断开光纤端口(铜缆端口按原样连接)时、 铜缆端口链路也会中断。 如何避免这种情况? 我想使每个端口的链路独立。 请提供解决方案。

此致、

Balaji TS

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

    尊敬的 Balaji:

    此行为会让人想起链路丢失直通功能。 这可能是通过 strap 配置来启用的。 请查看调整 Strap 配置(RX_CLK)并重新评估。

    此致、

    Gerome

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

    感谢您的答复 Gerome、

    根据数据表、我们已将 RX_CLK 连接至 VCC 以禁用链路丢失直通、如您在下方屏幕截图中所示。

    我们的束带是否正确? 如果 Strap 配置正确、则意味着如何解决我们的问题? 是否有任何 PHY 寄存器设置导致了该问题?

    此致、

    Balaji TS

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

    您好:

    这看起来是正确的。 应禁用直通。 请用寄存器0x6E (strap 状态)进行证实。 请注意、这是一个扩展寄存器、需要扩展寄存器访问。

    此致、

    Gerome

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

    您好 Gerome、

    我已经在0x6E 寄存器中检查了 strap 状态。 借助0x6E 寄存器数据、禁用链路中断直通。 只有此 Pin 被重新分配到我的问题或我们应该执行的任何其他硬件/软件设置来解决问题?

    我在数据表中可以看到、链路损耗直通仅与100M 有关。 这与1000M 无关吗? 它是否与光端口和/或铜端口相关?

    是否可以使铜缆端口完全独立于光端口? 就像电路板上电并且我们将铜缆端口连接到任何其他链路伙伴时一样、即使未连接光纤端口、也应该会连接铜缆端口链路。 这是可以实现的吗?

    我在上电后执行这些寄存器操作:

    将0x8000写入0x0000

    将 0x8000写入0x001F

    将0x4000写入0x001F

    将0x8000写入0x0000

    将0x0110写入0x0000

    将0x6CC0写入0x0018

    对于100M 转换:

    将0x1140写入0x0000

    将0x5048写入0x0010

    将0x1140写入0x0C00

    将0x1FFC 写入0x01EC

    对于1000M Coneversion:

    将0x1140写入0x0000

    将0x5048写入0x0010

    将0x0140写入0x0C00

    将0x1FFC 写入0x01EC

    我的寄存器设置是否正确? 任何必要的更改。

    谢谢你。

    此致、

    Balaji TS

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

    您好:

    我能够使用我们的 DP83869EVM 并创建链路中断直通的设置。 对于此设置、我使用另一个 EVM 作为 FX 链路伙伴、并使用数据包生成器/校验器作为 CU 链路伙伴。 我在1G MC 模式下 Strap 配置 DUT 和 FX 链路伙伴。 我观察到 LED1指示 FX 链路建立、而观察到 LED0和2分别指示链路速度和1G 速度。

    默认情况下、在 EVM 上未搭接链路中断跳线。 断开 SFP 上的 RX FX 电缆时、我看到 CU 链路已切断(预期)。

    然后重置 PHY、但这次我设置链路中断跳线。 我断开 SFP 上的 RX FX 电缆、并且 CU 链路完好无损(预期)。  

    此致、

    Gerome

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

    您好 Gerome、

    感谢您验证 并确认 CU 端口可以保留其链路状态 、而不考虑光端口状态。  

    要禁用 RX_CLK 配置以外的链路损耗直通特性、是否需要任何其他硬件引脚搭接或寄存器配置?

    并请确认我们的寄存器设置是否产生任何问题?

    此致、

    Balaji TS

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

    尊敬的 Balaji:

    您正在写入大量不需要的寄存器复位。 建议对寄存器0x1F[15]="1"进行单次写入就足够了。 PHY 是否配置为1G MC 模式? 这将处理大量的寄存器配置。  

    否则、链路损耗直通似乎是寄存器0x1EC[3]。 我可以看到该位在回读时切换、具体取决于配置(strap)。 这似乎为"0"表示禁用链路中断直通、而为"1"表示启用。

    此致、

    Gerome

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

    您好 Gerome、

    在哪里可以找到 x1EC 寄存器的详细信息?  数据表中未提供0x1EC 寄存器详细信息。

    我还有一个疑问。 此板是否支持单向流量? 与 CU 端口一样、CU 端口连接到一个 PC1、Optiacal 端口连接到 PC2 (我们只连接一根导线、即光学端口 TX 到 PC2 RX)。 然后、我们要将数据从 PC1发送到 PC2。 这可以实现吗?

    谢谢你。

    此致、

    Balaji TS

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

    您好:

    我们将在下一个数据表版本中了解如何取消保留此位。 对于您的应用、此位是链路中断直通功能的相关、可变字段。 您可以对该位进行读写、并观察行为差异。

    此主板不支持 FX 端的单向流量、因为第一个 DP83869需要建立链接才能通过通信。 仅通过 FX 电缆插入 TX 侧后、无法实现此目标。 因此、还需要插入 RX。 您仍然可以使用此配置在应用中建立单向。

    此致、
    Gerome

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

    您好 Gerome、

    使用此配置、您仍然可以在应用程序中建立单向。

    在这句话中,我实际上感到困惑。 它是否可以通过在器件1 TX 到器件2 RX 之间连接的单线实现单向通信?

    此主板不支持 FX 端的单向流量、因为第一个 DP83869需要建立链接才能通过通信。

    是否有我们可以做到的方法 强制链路接通 手动选择光端口? 以及 DP83869如何得知电缆已连接/断开、以便它可以将状态更新为 Link_up/DP83869 Link_Down。

    此致、

    Balaji TS

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

    您好:

    如果使用单线、器件将无法建立链路。 您需要同时使用两根导线、在软件中确保通信仅以一种方式发送。

    在光纤中、了解连接是否已丢失的一种常见方法是通过信号检测或远端故障。 两者都需要连接两根光纤线。

    此致、
    Gerome

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

    您好 Gerome、

    感谢您的澄清。  

    我们是否可以禁用远端故障检测或信号检测以像始终开启一样欺骗链路?

    我已通过将 信号检测(JTAG_TDI)引脚接地来尝试此操作。 但当我移除 RX 线时、链路正在中断。   DP83869HM 中的功能信号检测引脚是什么?

    此致、

    Balaji TS

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

    您好:

    链路断开很可能是远端故障检测导致的。 当在 TX 仍处于活动状态时拔出 DUT 的 RX 电缆时、会发生这种情况、这时 DUT 会向链路伙伴发送故障错误、从而也会断开链路。  

    此器件没有已知的光纤链路欺骗方法。

    此致、

    Gerome

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

    您好 Gerome、

    我们的项目 要求是使用单根 光纤将流量从一台设备发送到另一台设备 。 那么、您能给我们推荐任何其他可以满足我们要求的 PHY 吗?

    在 PHY_CONTROL (0x10)寄存器中、有一个名为 FORCE_LINK_GOOD 的位。 该位的用途是什么?

    要更新的一点是、禁用光纤自动协商后、如果 Device_2 TX 未连接(仅连接 RX)、则链路在器件2保持连接。 但 Device_1链路   因  Device_2的 TX 已断开连接而断开。  

    此致、

    Balaji TS

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

    尊敬的 Balaji:

    我们的现代产品系列中只有2款光纤器件:DP83869和 DP83822 (仅100Base-FX)。  

    对于寄存器0x10、由于这不在0xCxx 块中、因此该块可能不适用。 通常、我看到此位用于 CU 链路欺骗。

    此致、
    Gerome

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

    您好 Gerome、

    感谢您发送编修。

    此主板是否支持 CU 链路欺骗?如何启用或实施该功能?

     位12 (CTRL0_ANEG_EN) OS 0x0C00寄存器的用途是什么? 此位是否控制介质转换模式下的光纤端口自动协商?

    此致、

    Balaji TS

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

    您好、Balaji、

    我找到了一种办法来欺骗 DP83869的 FX 链接。 您能否对只能与寄存器0xD4[15]一起传输的 DUT 进行编程、如果这适用于您的应用、还能提供反馈?

    此致、

    Gerome

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

    您好 Gerome、

    感谢您的建议。 寄存器0xD4[15]适用于光纤链路欺骗。 即使未连接 RX 电缆、链路也能保持稳定。 但是、如果启用了链路欺骗、问题是我无法将数据从器件1 (TX)发送到器件2 (RX)。

    注:在此测试期间、两个设备都显示 CU 端口和光纤端口的链路接通。  

    我还观察到另外一件事、即0xD4[15]会自动被清零。 在修改寄存器之前、我先读取寄存器。 我得到了0x1200作为响应。 为启用光纤链路欺骗、我将0x9200写入该寄存器、因此启用了光纤链路欺骗、即使不连接 RX、光纤链路也能保持正常运行。 如果读取0xD4、我将获得0x1200响应、则再次进行此操作。 是读取清除位还是读取/写入位?  

    能否获取0xD4寄存器的更多详细信息?还有一件事是、如果启用了光纤链路欺骗、这意味着即使 RX 和 TX 线路都连接在器件1和器件2上、我也无法发送数据。

    可能是什么原因导致了该问题? 启用链路欺骗时、是否需要更改任何其他寄存器设置(铜缆或光纤)以发送数据?

    我还观察到另外一件事、即0xD4[15]会自动被清零。 在修改寄存器之前、我先读取寄存器。 我得到了0x1200作为响应。 为启用光纤链路欺骗、我将0x9200写入该寄存器、因此启用了光纤链路欺骗、即使不连接 RX、光纤链路也能保持正常运行。 如果读取0xD4、我将获得0x1200响应、则再次进行此操作。 是读取清除位还是读取/写入位?  

    可以获取0xD4寄存器的更多详细信息吗?

    此致、

    Balaji TS

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

    还有一个观察结果是、我们在不启用光纤链路欺骗的情况下对 DUT 进行了编程。 我们在器件之间同时连接了 TX 和 RX 线。 使用此设置、我可以将数据从器件1发送到器件2、而不会出现任何问题。 在运行期间,我通过写入0xD4[15]启用了光纤链路欺骗。 再次尝试将数据从器件1发送到器件2。 现在、数据传输停止后、只有前9或10帧从器件1发送到器件2 [与器件1处的 RX 连接无关]。 只有在禁用光纤链路欺骗后、帧才会再次到达设备2。  

    此致、

    Balaji TS

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

    尊敬的 Balaji:

    此设置是之前的 E2E 给出的、并在 EVM 中得到了证实。

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1002023/dp83869hm-media-converter-mode-for-1000x-link-up

    设置中必须有所不同。 如果您愿意、我建议将 Vikram 和 Jane 在我们的 EVM 上的发现与另一个 EVM 集交叉验证。

    此致、

    Gerome

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

    您好 Gerome、

    感谢您的支持。  通过设置0xD4[15]= 1、我能够实现光纤链路欺骗。 在我的系统中添加静态 ARP 后、我 现在可以连续发送数据。

    此致、

    Balaji TS

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

    您好、Balaji、

    感谢您的确认。 似乎一切都应该是好的,现在在你的面前。 我将结束该主题。

    此致、

    Gerome

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

    您好 Gerome、

    是的、一切都正常工作。 谢谢你。

    此致、

    Balaji TS