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.

[参考译文] DP83TD510E-EVM:如何可靠地锁定 PRBS 校验器?

Guru**** 2529560 points
Other Parts Discussed in Thread: DP83TD510E, DP83TD510E-EVM, USB-2-MDIO

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1223146/dp83td510e-evm-how-can-the-prbs-checker-be-reliably-locked

器件型号:DP83TD510E-EVM
主题中讨论的其他器件:DP83TD510EUSB-2-MDIO

我们将为 DP83TD510E 实现一款简单的电缆诊断工具。 当我们参考 DP83TD510E 电缆诊断工具套件 或论坛帖子 DP83TD510E-EVM 等可用示例时:是否有用于测试通信距离的示例脚本?、PRBS 校验器有时不同步。 这种行为可通过 DP82TD510E-EVM 以及定制硬件重现。

详细信息:初始化值为0x155F 的寄存器 PRBS_CFG_1 (地址0x0119)后、寄存器 PRBS_STATUS_4中的位8 (PRBS_Lock)不会更改为"1"。 这种现象不经常发生,我们还不能认出一种联系。 完全硬件复位后、也会不规律地发生此问题:

begin
001F 8000 //reset the part
0119 155F //enable packet generation towards cable and packet checker coming back from the cable
001F 4000 //soft reset
end

PRBS 校验器是否有特殊的重置策略、或者是否必须遵守特殊时序?

谢谢!

Gerrit。

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

    您好、Gerrit、

    您可以尝试使用以下脚本并进行检查

    第一百八零八章
    0119 055F.
    001F 4000

    这将使 PRBS 锁定信号变为1。

    --
    此致、
    Gokul.

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

    Gokul、您好!

    感谢您的回答! 我们现在已使用您的序列、并在结尾读取了 PRBS_STATUS_4:

    begin
    001F 8000  //Hard reset
    0119 055F  //PRBS_CFG_1: Enable packet generation towards cable and packet checker coming back from the cable
    001F 4000  //Soft reset
    011F 0001  //PRBS_STATUS_4: Lock & Clear signal for the PRBS counters
    011F       //Result is 0B00 on success and 0800 when failed
    end
    

    结果或多或少是一样的-有时它能起作用,有时不能。 机会大约为50%。同样的问题出现在 使用 Windows PC 的 DP83TD510E-EVM 上、以及我们定制的硬件上。

    你有什么想法吗?

    谢谢!

    Gerrit。

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

    您好、Gerrit、

    您能否分享整个设置的方框图以及有关数据环回发生位置的详细信息?

    TI-PHY 与 TI-PHY 之间的链路是否相同?

    --
    此致、
    Gokul.

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

    这里是我们的测试设置的一个小图。 演示非常简单:我们通过电缆将两个 DP83TD510E 耦合在一起、这两个都通过 USB 连接到运行 USB-2-MDIO 的 PC。 其中一个 DP83TD510E 处于反向环回模式、另一个则通过如上所述的 PRBS 发生器生成数据包。

              TI-PHY1                                  TI-PHY2
     PRBS 数据包生成器配置             反向环回配置
       ---------------- ---------------- +           ---------------- ---------------- +
       | DP83822 | DP83TD510E +~~~~~~~~~~~~~~~~~~ + DP83TD510E | DP83822 |

       ---------------- ---------------- ++---- +   电缆++--------     ++---- ---------------- +
                        |                |
                        |                |
                    USB-2-MDIO                 USB-2-MDIO

    我们仅将 DP83TD510E 配置为反向环回配置(TI-PHY2)一次、并将其保持在此配置中。

    会针对每次尝试完全重新配置另一个 DP83TD510E (TI-PHY1)。 我们发现、在硬复位 (001F 8000 //硬复位)之后、以及在我之前的文章中描述的其他配置步骤之后、PRBS 校验器并非始终锁定-仅在大约66%的尝试次数内。 这一现象显然与硬复位有关、但我们无法看到它为什么在某些情况下不起作用。 此时看起来像是一个随机现象。 通信链路始终建立、但 PRBS 校验器并非始终锁定。 当 PRBS 校验器锁定、即尝试次数的66%时、我们从寄存器011F 读取0B00。 在所有其他情况下(失败的尝试)、我们读为0800

    如果 PRBS 校验器在硬复位(执行其他配置步骤)后未锁定、我们可能会创建一个循环并反复尝试、但这不是满意的。 我们是否需要完成更多配置步骤、例如写入其他寄存器? 较宽松的时间(硬复位后等待1)也没有帮助。

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

    您好、Gerrit、

    我们在配置 PRBS 之前是否可以先尝试硬复位、然后等待链路建立?

    这将需要您首先写入0x1F=0x8000、然后等待手动观察 LED_0启动、然后对上述脚本进行编程(没有1F 8000)以启用 PRBS。

    --
    此致、
    Gokul.

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

    Gokul、您好!

    我们已经尝试过这种方法、但它没有帮助。 有时、当 LED_0处于活动状态时、硬复位后 PRBS 校验器仍不会锁定。 链路始终会建立、但仅会锁定 PRBS 校验器。 我们的复位和初始化序列(见上文)是否可能不够?

    谢谢你

    Gerrit

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

    您好、Gerrit、

    我将尝试在下周一之前在我结束时重新创建这个。

    我将使用以下序列。

    ------------------

    第1步:0x0001 = 0x8000 //硬复位

    ---------------- 等待至少2秒钟----------------

    步骤2:0x0119 = 0x055F (我将删除0x001F = 0x4000、我还建议您)

    ---------------- 等待至少2秒钟-------

    第3步:写入0x011F = 0x0001、读取0x011F

    ------------------

    您可以尝试一下吗?

    --
    此致、
    Gokul.

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

    Gokul、您好!

    感谢您的回复! 此序列现在有效!

    我们已经进一步测试并发现、(a)不同的硬复位(0x0001 = 0x8000 //硬复位)和(b)延迟使得主要更改发生。 但使用寄存器0x001F = 0x4000的软复位似乎也会出现问题、因此最好忽略它。

    我们在"DP83TD510E电缆诊断工具套件"的第6页第一个表中找到了(我们错误的)复位序列(0x001F = 0x8000 //硬复位)。 因此、在我看来、该文档是错误的。 是否有关于 DP83TD510E 的更详细的寄存器说明?

    但我们的问题现在已经解决了。 非常感谢您的帮助!

    Gerrit。