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.

[参考译文] DS125BR401:PCIe 链路训练问题

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1416908/ds125br401-pcie-link-training-issues

器件型号:DS125BR401

工具与软件:

尊敬的 TI 团队:

作为对初始线程的后续操作、我们目前在链路训练阶段看到了未充分理解的行为、以及由此产生的 PCIe 链路状态。

设置说明:

Intel Xeon CPU (Rootcomplex)--> Slot --> Custom PCIe PCB、含2x  DS125BR401、适用于 x8代。 2链路和 iPass 连接器--> 50厘米 iPass 电缆--> Stratix 10 FPGA 的定制 PCB

相应地放置 TX-Cap。

行为描述:

将发送到解串器。 2它将保持这些参数。 复杂的部分是链路训练。

  我们假定由于长电缆链路和导致的眼图太近而出现信号完整性问题、因此将包含2个 DS125BR401的定制 PCIe PCB 添加到了设置中。 根据数据表、DS125BR401的 INEQ 和 OUTEQ 的初始调优是在相对较高的水平下完成的。 首次成功完成链路训练时、所有 INEQ 和 OUTEQ 在两个方向上均位于1级。 未在"MODE"引脚上放置上述的20K 电阻、引脚悬空。 这种设置是一些用于进一步测试的基线 SORF。 此设置在不同设置中的一些统计分析中表现良好、但未能实现100%生成。 2 (有时回退到第 1 (在链路训练之后、始终为 x8)。

下一步是改变 INEQ 和 OUTEQ 的水平以改善眼图。 结果显示了一个相当开放的眼图:

向 CPU 的上游方向

向 FPGA 下游

INEQ 电平对于上行和下行方向均为1。 上行的 OUTEQ 电平为4、下行的 OUTEQ 电平为8。

现在需要注意的是:链路训练失败的频率更高、导致第1代链路在转接驱动器处设置了"更好"的眼图水平、这与1级调优(故障率为1:8)的情况一样。 有了"好"的调整,我们几乎不会训练一个世代。 2链路。

如另一主题中所述、我们在 MODE 引脚处放置了一个连接到 GND 的20K 电阻器、将其切换为"Gen 3 -无去加重功能"。 这使得第2代链路训练甚至成为可能、我们目前正在生成统计数据、但到目前为止、第1代链路训练很少发生、第2代训练的比率也很高。

现在我们需要了解发生了什么:

  • 为什么"更好"的眼睛导致链路训练更频繁失败?
  • MODE 引脚的具体作用是什么?它为什么显著改善链路训练?
  • 为什么即使是所需的数据速率、模式"Gen 1、Gen 2"也没有改善?

谢谢

Marvin

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

    尊敬的 Marvin:

    我不认为第1/2代模式和第3代模式的名称非常合适、因为无论采用哪种模式、转接驱动器实际上都不关心传输的数据速率。

    将1k 连接到 GND 会将转接驱动器置于限制模式。 在限制模式下、转接驱动器 在发送器侧应用去加重功能以帮助实现 Tx 均衡。 但是、去加重会阻止输入到输出波形线性度。

    将20k 连接到 GND 会将转接驱动器置于线性模式。 去加重功能被禁用、输入到输出波形的线性度得以更好地保持。 线性对于保持训练信号并确保 RC 和 EP 正确接收这些信号非常重要。 这就是为何将20k 接地可以极大地改进链路训练。

    我有几个想法可以尝试防止 Gen1链路训练案例。

    1. 我相信您当前使用的是自动 RX 检测模式(RXDET 引脚悬空)。 您能否尝试使用手动 RX 检测模式(其中输入终端固定为50欧姆)吗? 如果 RX 检测电路未正确识别 RC 和 EP 接收器、这将阻止转接驱动器 Rx 终端保持高阻抗。 可以通过2种方法来选择手动 RX 检测模式:
      1. 将1k 连接到 RXDET 引脚上的 VDD。
      2. 如果使用 SMBus 模式、可写入以下寄存器位:
        • 0x08[3]=1
        • 0x0E[3:2]=11
        • 0x15[3:2]=11
        • 0x1C[3:2]=11
        • 0x23[3:2]=11
        • 0x2B[3:2]=11
        • 0x32[3:2]=11
        • 0x39[3:2]=11
        • 0x40[3:2]=11
    2. 您是否已逐个通道调整了 EQ 设置? 可能需要在每个通道上进行不同的 EQ 设置、以实现最佳的眼图张开度。 如果您尚未进行调整、我建议分别调整每个通道 EQ。

    此致!

    卢卡斯

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

    感谢您发送编修。

    我们不使用 SMBus 模式。

    1. 我已将 RX-Detect 模式引脚测试为 VDD、未成功。
    2. 否、我们尚未逐通道调整 EQ 设置。 但我们在每个通道上都进行了眼图测量、以检查它们的行为是否相同(它们是否相同)。 我们甚至在每个通道上尝试了不同的 EQ 设置、它们并没有不同。

    您能否澄清我在上面的帖子中提出的问题?

    非常感谢

    Marvin

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

    尊敬的 Marvin:

    感谢您尝试使用手动 RX 检测模式。 我知道这没有解决问题、并且您使用的是引脚模式。

    关于问题1、我目前不清楚为什么 link 训练以更好的视角更频繁地失败。 但我的理解是、将20k 连接到 MODE 引脚上的 GND 可极大地提高链路训练的成功率、从而实现第2代链路连接。 因此、您通过优化的 EQ 设置和线性(第3代)模式选择、具有出色的第2代链路训练成功率。 是这样吗?

    我想确认 RX 检测电路正常工作、并确认您的 EQ 设置针对每个通道进行了优化。 我怀疑这些方面的改进可以将链路训练提高到100%的 Gen2成功率。 这就是我提出建议的原因。 由于这无法解决问题、因此我想检查您的所有转接驱动器设置、以查看是否可以做出任何改进。 您能否分享两个器件的原理图 DS125BR401以供审阅?

    我相信我已在上一次答复中回答了问题2及3。 如果您仍对限制与线性模式有疑问、请告诉我。

    此致!

    卢卡斯

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

    大家好、Lucas:

    是的、它没有解决问题是正确的。

    我们已经看到了以下有关20k 的情况:

    • 1上的所有级别偶尔显示某些系统上的第1代链接训练
    • 最佳眼图设置的所有级别都显示所有系统上几乎100%的第1代链路训练
    • 最佳眼图设置上的所有级别和 MODE 引脚上的20k 至 GND 可以极大地提高某些系统上的第2代成功率、而显示在其他系统上没有改进

    它完全让我感到困惑,一些组合运行得非常好,一些组合变得更好/更糟。 就像有某种统计过程会 在链接训练期间翻转骰子一样。

    我还有一个关于 rootcomplex 和端点的去加重设置的问题。 转接驱动器是否同时支持-3.5db 和-6db?

    我无法在这个公共空间中共享原理图。 我希望我们能找到另一种方法来进行研究。

    谢谢!

    Marvin

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

    尊敬的 Marvin:

    我对此感到惊讶的是、经过调优的 EQ 等级和线性模式(20k 至 GND)的组合极大地提高了某些系统中的 Gen2成功率、但在其他系统中却没有改善。 经过改进和未经过改进的系统之间是否存在任何差异?

    关于 rootcomplex 和端点的去加重设置我还有一个问题。 转接驱动器是否同时支持-3.5和-6 db?

    我认为-3.5dB 和-6dB 是固定的去加重级别、可通过第2代链路训练在 RC 或 EP 上选择。 您是否想知道转接驱动器是否能够在 RC 和 EP 之间传递这些去加重级别? 答案是肯定的、尤其是当转接驱动器置于线性模式(20k 至 GND)下且输入至输出波形线性度得以更好地保持。 如果转接驱动器置于限幅模式、则器件线性度不是很好、而且这些去加重设置可能无法透明地通过。

    如果您询问转接驱动器是否能够应用-3.5dB 或-6dB 的去加重、则在使用限制模式时答案是肯定的。 但是、在转接驱动器上使用去加重会破坏器件线性度、因此不建议在需要链路训练时使用。 因此、我建议您将转接驱动器置于线性模式(20k 至 GND)、而不要对转接驱动器使用去加重功能。

    请注意、转接驱动器不会主动参与链路训练、它会在 RC 和 EP 之间透明地传递训练信号。 这就是器件线性度很重要的原因。

    我知道您不想在这个公开论坛上分享原理图。 我在 E2E 上向您发送了朋友申请。 接受后、您可以通过私人消息与我分享原理图、我也会私下分享我的反馈。 这对您有用吗?

    此致!

    卢卡斯

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

    大家好、Lucas:

    我们没有发现不同系统之间有任何差异。 我们猜测它们都具有一定的容差范围(可能是 PCB 阻抗?)。

    此致、

    Marvin

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

    尊敬的 Marvin:

    我理解。 允许我查看您的原理图并私下分享反馈。

    此致!

    卢卡斯