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.

[参考译文] DP83822IF:4 级搭接电压不符合预期

Guru**** 2502205 points
Other Parts Discussed in Thread: DP83822IF, DP83822EVM

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1512053/dp83822if-4-level-strap-voltage-not-as-expected

器件型号:DP83822IF
主题中讨论的其他器件: DP83822EVM

工具/软件:

您好、

我们 在 SFP 配置中使用 DP83822IF。 我们在通过 SFP 建立链路时遇到了问题、当我们回读寄存器时、我们会得到错误的值、尽管 这些值是由 硬件配置 (strap) 设置的。

此外、我们运行了自检/回送测试、并在没有错误的情况下返回。

我们开始遵循 了《DP83822 故障排除指南》

在正常运行状态下:

我们发现 Vrbias = 0.987V、不是建议的 2.7V

引脚 COL = 0.0280V、而不是~ 0.8V

引脚 RX_DV = 0.0280V 、而不是~ 0.8V

当 IC 本身从 PCB 中移除或复位线为低电平时、这些值正好在两种情况下。

我们已经尝试过的方法:

1.更换 DP83822IF。

2.检查 AVD 和 VDDIO 电压,并 更换铁氧体磁珠时

3.检查 PCB 上的所有电阻值。

MDIO 上的上拉电阻 2.21K、以 VDDIO 为基准。

您能 看一下原理图、看看其是否缺失或错误?  

您可以在顶部找到连接的原理图(硬件搭接配置)。

e2e.ti.com/.../FX_5F00_PHY.pdf

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

    您好、

    应用手册中 RBIAS 上的 2.7V 电压是一个拼写错误、其值应约为 1V。

    从寄存器 0x467 (SOR_1) 和 0x468 (SOR2) 读取 strap 配置值时、您读取的值是多少?  

    您是否还检查了 DP83822 上电序列并验证其是否符合上电时序要求?

    谢谢

    David

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

    您好、David:

    上电时序在限制范围内、 0x467 (SOR_1) 和 0x468 (SOR2)  分别等于 0x2001、0x0000。   对于我们的设计和 TI EVM 板、这些寄存器是相同的。

    我们得到了 DP83822EVM 评估模块并使用 stm32F4 DISCOVERY 对其进行了测试、以验证我们的设置。  我们有一个链接,但它没有 ping ,虽然我们将在我们的自定义设计上建立链接时解决这个问题。

    我们的设计和 EVM 上电后的硬件配置 (strap) 电压相同:

    引脚 COL = 0.0280V

    引脚 RX_DV = 0.0280V

    因此、我认为硬件带不是建立链路的主要问题。

    关于我们的设计、尽管我们使用了相同的硬件配置 (strap) 和相同的 SFP、但一些因素阻止了链接。

    提前感谢您的帮助。

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

    尊敬的 Mohamed:

    感谢您的更新、David 将一直出差到明天、因此我将帮助您支持此更新。

      我们的设计和 TI EVM 板的寄存器相同。

    在默认配置下使用 DP83822EVM 时、我看到 0x467 = 0FC3 和 0x468 = 0000。 如何将 EVM 配置为获得 0x467 = 0x2001?

    另一个问题:当存在光纤连接时、您是否看到 FX_LOS 信号变高? 这包括 DP83822 的信号检测:

    为了使 822 建立链路、它需要看到它变为高电平。 这假定您尚未更改 FIBER GENCFG 寄存器中信号检测的极性。

    此致、

    Shane

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

    嗨、Shane、

    1.关于寄存器  0x467=0x2001 我们不知道它是如何得到这个值的,我们期待 0x0FC3 ,也有一个问题设置寄存器 SD

    当我们设置极性值并读回该值时、该值不会从 0 变为 1、因为我们的设计默认为低电平有效。

    2.关于 EVM 中 fx_los (SD) 的物理连接、默认情况下会通过 R22 上拉、而不是连接到 SFP

    在我们自己的设计中、我 使用了 EVM、并通过外部电阻器 2.49k 上拉 SD、但仍然没有链路。

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

    尊敬的 Mohamed:

    您能否分享一张 DP83822 EVM 设置图片?

    由于寄存器 0x467 是扩展寄存器、您是否使用扩展寄存器访问来读取和写入?  如需读取扩展寄存器组中的寄存器:

    1、将值 0x001F(地址函数字段= 00、DEVAD = 31)写入寄存器 REGCR。

    2.将所需寄存器地址写入寄存器 ADDAR。

    3、将值 0x401F(数据,无后增量函数字段= 01、DEVAD = 31)写入寄存器 REGCR。

    4.从寄存器 ADDAR 中读取所需扩展寄存器组的内容。

    谢谢

    David

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

    您好、David:

    我们让 EVM 执行 ping 操作、 现在寄存器读回对于我们的设计和 EVM 都是正确的。

    我确保所有(搭接等)都尽可能靠近 EVM、但我们的设计仍然没有链接。

    我们的布线可能有问题?

    谢谢、

    Mohamed

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

    可能是对内 或对间 长度匹配问题?

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

    尊敬的 Mohamed:

    您是否能够将您的设计与 DP83822 EVM 建立起来?

    在寄存器读取功能正常的情况下、您能否将寄存器 0x00 转储到 0x1F、 寄存器 0x467 (SOR_1) 和 0x468 (SOR2)?  

    在 MDI 布线上、

    1. 所有布线的布线长度应小于 2 英寸。
    2. 对于对内和对间、对于 1000M 应用、长度匹配均在 50mil 以内、对于 10/100M 应用、长度匹配则在 100mil 以内
    3. 确保 100 欧姆差分的受控阻抗。
    4. 建议在布线周围放置一个尺寸为 5*w 的禁止区域、其中 w 是布线宽度。

    谢谢

    David

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

    您好、David:

    寄存器:

          您可在随附的 pdf 文件中找到所有寄存器值。

    路由:

         1.对间长度匹配< 107mil。

         2.对内长度匹配< 22mil。

         所有其他布线要求均已满足。

    感谢你的帮助。

    .e2e.ti.com/.../Reg_5F00_fiber.pdf

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

    尊敬的 Mohamed:

    100BASE-FX 信号检测引脚 (LED_1) 极性由光纤通用配置寄存器 (FIBER GENCFG、地址 0x0465) 中的 bit[0]控制。 默认情况下、信号检测为高电平有效极性。  

    如果您使用寄存器 0x465 更改其极性、您是否能够与您的设计建立链接?  

    谢谢

    David

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

    您好、David:  

    是的、我们在其中一个 PCB 中使用了 SD 的默认硬件配置进行了尝试、该配置是下拉的。 在之前的尝试之一中、我们将 SD 更改为上拉 (HW)  

    并 从 SFP 端断开 SD、使硬件配置与 EVM 完全相同、并且两者中仍然没有链路。

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

    尊敬的 Mohamed:

    您是否可以使用我们的 EVM 并查看它是否能够与链路伙伴建立链路?

    谢谢

    David

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

    您好、David:

    我 发现问题的根源,我们特定 SFP 的 tx_disable 引脚默认上拉禁用 传输信号当我们将它连接到 GND 时 ,链路立即工作。

    感谢您帮助我们 进行 故障排除。 我们不胜感激

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

    您好、David:

    我们仍然遇到 ping 功能问题。

    我们的测试固件在 EV 套件上按预期工作、它使用静态分配的 IP 地址成功建立链路并响应 ping。 但是、当在定制 PCB 上使用相同固件时、会建立链路、但 ping 不起作用。

    我已经查看了相关的寄存器、以下是 EV 套件和我们的 PCB 的观察值:

    寄存器   EV 套件值 PCB 值
    BMSR 0x2100 0x3100
    CR2.
    0x4100
    0x100
    RCSR
    0x65
    0x65
    SOR1
    0xFEF
    0xFEF
    SOR2
    0x0000
    0x0000

    此外、我还强制执行了的值 BMSR CR2. 匹配所需配置的寄存器、但这未解决问题。

    如果您有任何建议、或者如果有其他寄存器或测试、我们应该进行研究、敬请告知。

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

    尊敬的 Mohamed:

    您能否检查 COL 引脚(引脚 29)的 strap 配置? COL 引脚必须处于模式 2 或 3、才能设置 FX_EN。 目前、寄存器 SOR1 显示其正在搭接至模式 4、这会禁用 FX_EN。

    您是否还可以转储以下用于光纤操作的寄存器?

    谢谢

    David

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

    您好、David:

    我们已根据要求将 COL(引脚 29)自举电阻器配置为模式 3。 此外、SD 引脚(引脚 24)被驱动为高电平(值)1。 下面是可供您参考的相关寄存器值的汇总:

    寄存器地址 寄存器值 位域 位字段值 注释
    0x0001
    0x784d
    2. 1.
    0x000A
    0x4100
    14 1. FX_ENCOL 配置会按预期设置。
    0x0016
    0x0100
    4. 0
    0x0040
    0xc11d
    6:5. 00
    0x0403
    0x9fCF
    11:8. 1111.
    0x0465
    0xff00
    0 0
    SD 引脚被强制为高电平 (1)、与预期配置一致。
    0x0467
    0x0bef
    - -
    已确认:COL 配置 (strap) 模式设置为模式 3。
    0x0468
    0x0000
    - -

    您是否有任何建议的步骤或诊断路径来进一步调查和解决问题?

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

    您好、Omar

    您的设计与 DP83822 EVM 之间是否遇到了这个 ping 问题? 如果您是这样、您是否可以启用 EVM 来生成 PRBS 模式并将您的设计置于反向环回模式?  以下是使用两个 DP83822 PHY 时、为执行 BIST 而进行的寄存器读取和写入的示例序列:

    // PHY 上的反向环回

    开始

    001F 8000 //硬重置

    0000 2100 //禁用自动协商、选择 100 Mbps

    0016 5000 //启用 PRBS 数据包生成

    0017 //检查 PRBS 锁定状态

    结束

    //链路伙伴上的反向环回

    开始

    001F 8000 //硬重置

    0000 2100 //禁用自动协商、选择 100 Mbps

    0016 0110 //选择反向环回

    结束

    如果使用此反向环回时未看到任何 PRBS 错误、则 PHY 和 MDI 接口正常。 然后、我们需要检查 PHY 和 MAC 之间的 RMII 时序、以确保在 ping 过程中不会出现时序违例。

    谢谢

    David

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

    您好、David:

    如您所述、我们在对等设置中测试了两个 PHY(EVM 正在生成 PRBS 数据包,我们的设计处于反向环回模式)、结果显示为零错误(在 EVM 错误计数器上)。

    您能为我们提供有关调试 ping 问题的后续步骤的建议吗?
    谢谢
    Omar

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

    Omar

    您能否分享整体 Ping 测试设置的方框图? 是否尝试在 DP83822 EVM 和您的设计之间 ping? 如果是、是否可以切换到 PC 进行 ping 数据包测试?

    如果 EVM 正在生成 PRBS 数据包、而您正在正确接收数据包、这可以告诉我 MDI 和 PHY 本身正常、因此我们必须查看 MAC 时序和 MAC 本身。  

    您是否能够在您的设计中发送 ping 命令、它是否起作用?

    谢谢

    David

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

    您好、David:

    在 ping 测试设置和环回测试场景下受误。 请记住、相同的 ping 测试设置与在 EVM 上执行并通过的设置相同。

    反向环回测试场景:

    • 在电路板侧:

    该电路板设置为反向环回模式:

    寄存器 数据值
    0x00F1 0x8000
    0x0000 0x2100
    0x0016 0x0006.
    • 在 EVM 侧:

    电路板设置为生成 PRBS 数据包:

    寄存器 数据值
    0x00F1 0x8000
    0x0000 0x2100
    0x0016 0x5000

    持续轮询 PRBS 校验器锁定位、直到复位:

    R0x0016 >>位[11]

    读取 BICSR1 寄存器以了解错误计数。

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

    您好、Omar

    链路模式上的反向环回配置看起来不正确。 寄存器 0x16 的位[4:0]应设置为 0x10000、以启用反向环回。 请参阅以下脚本、了解如何启用反向环回

    //链路伙伴上的反向环回

    开始

    001F 8000 //硬重置

    0000 2100 //禁用自动协商、选择 100 Mbps

    0016 0110 //选择反向环回

    结束

    您还可以读取错误计数。 要读取 BIST 错误计数、必须将 BICSR1 中的位[15]设置为“1"。“。 这将锁定 BIST 错误的当前值以供读取。 请注意、设置位[15]也会清除 BIST 错误计数器。

    您能否使用正确的配置重新运行反向环回测试?

    谢谢

    David

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

    您好、David:

    根据您上次的评论、我们已使用正确的配置重新运行反向环回测试、但我们仍然看到零错误计数。

    您能否提供有关后续步骤的建议、以帮助确定 ping 问题的根本原因?

    提前感谢您的帮助。

    Omar

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

    您好、Omar

    DP83822 EVM 上没有 MAC。 在进行 ping 数据包测试时、您是否跳线连接到外部 MAC? 这是否与您在电路板上使用的 MAC 相同?  

    您是否可以将路由器从 ping 设置中退出并将 PC 直接连接到 TX-FX 介质转换器?  

    ping 失败时、您在 PC 上看到什么错误消息?

    谢谢

    David

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

    您好、David:

    为了进行澄清、EVM 和我们的定制电路板上使用了完全相同的 MAC 和固件。 唯一的区别在于物理设置、虽然 EVM 使用跳线连接 MAC、但我们的电路板在同一 PCB 上集成了 MAC 和 PHY。

    我们还尝试从 ping 测试设置中删除路由器、没有明显的区别。 在这两种情况下、我们始终会收到相同的错误:“请求超时“。

    谢谢、
    Omar

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

    尊敬的 Omar:

    我又回头看了一下您的原理图。 看看它、我相信您交换了 RX_D0 和 RX_D1、能否确认?

    谢谢

    David

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

    您好、David:
    我们交换了两个引脚、并重新运行成功运行的 Ping 测试。
    感谢您的支持!

    此致、
    Omar