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.

[参考译文] TLK10232:10GKR HS 错误

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/649576/tlk10232-10gkr-hs-error

器件型号:TLK10232
主题中讨论的其他器件: TLK10034

您好!

我们在以下配置中使用 TLK10232芯片:
(1) Ls_Side
   Altera FPGA (XAUI 3.125MHz 四通道)=> TLK10232
(2) HS_SIDE
   TLK10232 (单通道10G-KR)=> OPT.SFP 模块=>光缆=> OPT.SFP 模块=> TLK10232 (单通道10G-KR)

当我们的 PCB 使用这个特定的芯片运行时,我们遇到了以下问题:在初始化并达到正常运行模式后,有时会出现 HS FEC 可纠正错误。 (reg Addr:0xAC、Dev Addr:0x01)
・误差发生频率在每次关闭/打开时发生变化。  例如,每分钟发生10次错误,我们关闭/打开 PCB 电源,初始化正常的操作设置,然后每天发生10次错误。
・并非所有 PCB 都出现错误。 某些序列号中出现错误。
・低速端始终良好。
・TLK10232到 SFP 模块的走线长度小于20mm。 (无过孔或残桩)

我们在10GKR FEC 模式下使用此芯片、下面是启动设置。
 复位器件(将 RESET_N 和 PDTRXA_N 引脚置为有效)
2. 确保参考时钟选择 –我们使用156.25MHz,所以寄存器没有变化。
3. 通过将1'b0写入0x07.0000位12来禁用自动协商
4. 通过将16'h0000写入0x01.0096来禁用链路训练
5. 将16'h03FF 写入0x1E.8020。
6. 将 HS_ENTRACK (0x1E.0004位15)写入1'B1、将 HS_EQPRE (0x1E.0004位14:12)写入3'B101。
7.   将16'h0003写入0x01.00AB -启用10GBASE-R FEC
8. 通过将1'B1写入0x1E.000E 位3来发出数据路径复位。
   9.清除锁存的寄存器(包括0x01.00AC)

我们使用了以下信息:
e2e.ti.com/.../1833175
tlk10232_BringupProcedures_v2.pdf
tlk10232.pdf
4520.TLK10034_link_training_app_note (10).doc

★我们不了解 HS 错误的原因,也不知道为什么有时(某些芯片)出现错误,也不会发生错误。 请给我们提供帮助!

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

    我们已指派了一名支持工程师、您很快就会收到响应。

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

    感谢你的答复。 我们正在等待支持。

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

    由于此器件用于背板应用,因此在“启动过程”中未指定如何与光学模块连接,尽管此器件支持与 SFP+光学模块连接。 对于 XAUI 到 SFI/XFI 操作、您需要将器件配置为10GBASE-KR 模式并禁用特定于背板以太网的功能、如第73条自动协商和10G 链路训练。 为此,请执行以下步骤:

    1.复位器件(向0x1E.0000位15写入1或将 RESET_N 引脚置为有效)
    2.确保基准时钟选择(156.25MHz 或312.5MHz)正确-这是通过寄存器0x1E.001D 位12完成的(默认为156.25MHz)。
    3.通过将1'b0写入0x07.0000位12来禁用自动协商
    4.通过将16'h0000写入0x01.0096来禁用链路训练
    5.将16'h03FF 写入0x1E.8020。 这允许手动配置通常通过 KR 培训配置的链路设置。
    6.根据链路条件,您可能需要更改0x1E.0003和0x1E.0004的默认配置。 对于光纤连接,我们通常建议将 HS_ENTRACK (0x1E.0004位15)更改为1'B1,将 HS_EQPRE (0x1E.0004位14:12)更改为3'B101。 这可能是一个起点、但您可能需要执行一些 BER 测试来优化这些值。
    ***通过寄存器0x01.00AB 写入0x0003来启用 FEC 功能
    7.通过将1'B1写入0x1E.000E 位3来发出数据路径复位。

    此时、应正确配置器件。

    完成上述步骤后、您是否已执行 BER 测试、以尝试 HS_SERDES_CONTROL_2和 HS_SERDES_CONTROL3的不同值?

    首先关注:
    HS_ENTRACK
    HS_EQPRE
    HS_PEAK 禁用
    HS_H1CDRMODE

    遗憾的是、这些"调优"阶段是详尽无遗的、因为用户需要扫描 HS_SERDES_CONTRAING_2和3的不同组合中的不同值、此过程在启用链路协商时是自动的、但在10GBASE-R 中必须禁用此功能。

    此致、
    Luis Omar Moran
    高速接口
    SWAT 小组
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢你的答复。

    如上所示、我将器件配置为10GBASE-KR 模式并禁用自动协商和链路训练。
    但我不会为 HS_SERDES_CONTROL 执行调整参考值。 请仅尝试推荐值。 (HS_ENTRACK (0x1E.0004位15)至1'B1、HS_EQPRE (0x1E.0004位14:12)至3'B101))
    因此、我将尝试调整(测试 BER)首先侧重 于 HS_ENTRACK HS_EQPRE HS_PEAK_DISABLE HS_H1CDRMODE。

    然而、由于错误发生频率因芯片(错误发生在某些芯片中、而不发生在其他芯片中)和每个器件开/关而有很大的不同、因此调整所有这些寄存器需要花费很多时间。


    因此、我的问题如下:
    1、为什么芯片和每个器件的开/关频率会发生很大变化? 是否有任何寄存器可以隔离问题原因?

    2.如果我输入了 PCB 插图条件(延迟长度、阻抗控制、材料、PCB 布局等)、您是否具有调整寄存器的推荐值(HS_ENTRACK HS_EQPRE HS_PEAK 禁用 HS_HS_H1CDRMODE)

    此致、

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

    您好!

    我们尝试对 HS_ENTRACK、HS_EQPRE、HS_PEAK_DISABLE、HS_H1CDRMODE 进行寄存器焦点调优。

    但是、在我们尝试的所有寄存器设置中都会发生 HS FEC 错误。


    我们尝试执行以下寄存器设置并检查 FEC 错误计数。
    (约30分钟。 链接后、我们转储了 FEC 可纠正的错误计数寄存器。)

                                       设置   B    设置 C   设置 D   设置 E   设置 F  设置 G
    HS_ENTRACK            0x1          0x0            0x1             0x1           0x1           0x1          0x1
    HS_EQPRE                0x101       0x001         0x101         0x110       0x101       0x110       0x101
    HS_CDRFMULT         0x01         0x01          0x01           0x01         0x01         0x1           0x10
    HS_CDRTHR             0x01         0x01          0x01           0x01         0x01 0x01 0x1                     0x01
    HS_PEAK 禁用  0x0          0x0            0x1             0x1                      0x0            0x0
    HS_H1CDRMODE      0x0          0x0             0x0             0x0 0x0 0x1                      0x0           0x0
    HS_TWCRF               0x00000   0x00000    0x00000    0x00000    0x00000 0x00000    0x00000   0x00000
    --------------------------------------------------------------------
    FEC 错误计数         0xB         0x188        0x6           0x3           0x731      0x70        0x3


    您对寄存器设置或 HS 错误的其他提示有什么建议吗?

    此致、

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

    您好!

    在没有 FEC 功能的情况下尝试该过程。 然后尝试不同的调优值、我知道这个过程是详尽的。 在执行调优时、您能否向我们发送下一个寄存器的状态?

    CHANNEL STATUS_1

    HS_ERROR_COUNTER

    谢谢、

    Luis

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

    感谢您的回复、

    我使用两个 TLK10232EVM 板执行了 PRBS 模式并检查了 HS_ERROR_COUNTER。
    然后、其中一个出现 HS 错误。

    在 GUI 运行后、我对两个电路板执行了以下启动过程。
    (0x07、0x0000) 0x2000写入(禁用自协商)
    (0x01、0x0096) 0x0000写入(禁用链路训练)
    (0x1E、0x8020) 0x03FF 写入(VS_SERDES_CFG_OVERRIDE_CTRL)
    (0x1E、0x0003) 0x5848写入(HS_SERDES_CONTRAL_2)
    (0x1E、0x0004) 0xD500写入(HS_SERDES_CONTRAL_3)
    (0x1E、0x000E) 0x0008写入(发出数据路径复位)
    (0x1E、0x000B) 0x3F10写入(LOOP_TP_CONTROL)
    (0x1E、0x0010)读取(HS_ERROR_COUNTER 寄存器清除)

    然后、保留12小时并读取 CHANGE_STATUS_1和 HS_ERROR_COUNTER。

                                                               CHANNEL STATUS_1               HS_ERROR_COUNTER
    TLK10232EVM 电路板编号1     0x200 (第1次读取) 0x1803 (第2次读取)                     0x0
    TLK10232EVM 电路板编号2     0x210 (第1次读取) 0x1813 (第2次读取)                     0x7


    两个电路板之间有何区别?是否需要对 TLK10232EVM 电路板进行调优?

    此致、

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

    您可以尝试下一个步骤吗?

    (0x07、0x0000) 0x2000写入(禁用自协商)
    (0x01、0x0096) 0x0000写入(禁用链路训练)
    (0x1E、0x8020) 0x03FF 写入(VS_SERDES_CFG_OVERRIDE_CTRL)
    (0x1E、0x0003) 0x5848写入(HS_SERDES_CONTRAL_2)
    (0x1E、0x0004) 0xD500写入(HS_SERDES_CONTRAL_3)
    (0x1E、0x000B) 0x3F10写入(LOOP_TP_CONTROL)
    (0x1E、0x000E) 0x0008写入(发出数据路径复位)//数据路径复位在所需的整个配置完成后执行
    (0x1E、0x0010)读取(HS_ERROR_COUNTER 寄存器清除)

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

    您好!

    感谢您的回复、我将尝试您的操作步骤。

    顺便说一下、HS Reciever 是否有任何性能测试报告?
    我发现 HS Trinsmitter 性能可替代<www.ti.com/.../tidu347.pdf>
    但是、我找不到 HS Reciever 测试报告。
    在 SFF-8431中、定义了 HS Recierver 抖动容差(BER)规范。(我发送 SFF-8431、您将在第32页找到抖动规范。)

    此外、我还找不到 LS 端(XAUI)测试报告。


    您能给我这些测试报告吗?

    此致、

    此致、e2e.ti.com/.../SFF_2D00_8431.PDF

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

    您好!

    我已尝试您的过程。
    但是、再次出现 TLK10232EVM 板之一的 HS 错误。
    我在 GUI 打开后执行了您的过程。然后、保留12小时并读取 CHANNEL STATUS_1和 HS_ERROR_COUNTER。


                                                               CHANNEL STATUS_1               HS_ERROR_COUNTER
    TLK10232EVM 电路板编号1     0x200 (第1次读取) 0x1803 (第2次读取)                      0x0
    TLK10232EVM 电路板编号2     0x310 (第一次读取) 0x1803 (第二次读取)                      0x2

    我的程序或设置是否有任何问题、您是否可以向我提供 HS 接收器测试报告?

    此致、

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

    您好!

    我们尚未对这个问题产生任何影响。

    我们正在尝试调整寄存器、但未找到不会发生10G 错误的设置。

    因此、如果您有任何改善10G 信号质量的建议、您能告诉我们吗?
    例如、PCB 布局或电源电压或温度等

    我们会尝试任何一种方法来解决这个问题。

    此致、

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

    您能否提供原理图和布局以进行审阅?
    omar.moran@ti.com

    谢谢、
    Luis Omar Moran
    高速接口
    SWAT 小组