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.

[参考译文] TLK10081:光纤桥上的8Gbps 以太网

Guru**** 2453640 points
Other Parts Discussed in Thread: TLK10081, DP83869HM

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1306392/tlk10081-8-gbps-ethernet-over-fiber-bridge

器件型号:TLK10081
主题中讨论的其他器件: DP83869HMDP83869

我们需要 通过10 Gbps 光纤链路连接8条线路的1 Gbps 以太网(SFP)。

为此、我们选择了 TLK10081。

它是否能够获取它的完整配置。 我们已经测试了 HS/LS、PLL/VCO 的多种配置...

CLK_0和 CLK_1为10ppm TCXO (两侧)。 CLK_0为125MHz、CLK_1为156.20 MHz。

它适用于环回(使用光纤)、但光纤链路(2个电路板)会出现8B/10B 错误。

此致。

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

    您好!

    您能说明一下您正在使用的数据速率吗? 通常、1G 以太网具有1.25Gbps 的线路速率、包含8b/10b 编码数据。 通常、10G 以太网具有10.3125Gbps 的线路速率以及64b/66b 的编码数据。 这些是您使用的线速率吗? 或者它实际上是1Gbps 和10Gbps 吗?

    我很难提供1个完整的配置、因为很多因素会影响寄存器应该如何配置。 您能否共享完整的寄存器转储? 我可以查看您的设置并提供建议。

    您能否额外提供系统方框图以更好地阐明您的设置?

    此致!

    卢卡斯

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

    您好、Lucas:

    首先,我祝你新年快乐。

    在低速端、我们有8个 SFP/RJ45设备(成帧1000BaseT)、而在 HS 端(通道 A)、我们有一个2.5 Gbps SFP+光纤(1310nm/1270nm)。

    在 LS 侧、我们仅使用7个 GbE 通道(第8个用于调试)。 我们不希望 HS 侧有任何特定的协议。 我们只想通过1根光纤发送数据。

    此致。

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

    HS 侧的 OUPS 使用一个12.5 Gbps SFP+

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

    嗨、Gilles:

    TLK10081在 HS 侧支持高达10Gbps 的速率。 对于此应用、您的 SFP+模块支持高达12.5 Gbps、但运行速率为10 Gbps 吗? 根据您的描述、我相信您有8个运行速度为1.25Gbps (8b/10b 编码1GbE)的 SFP 模块、它们正在聚合到运行速度为10Gbps (8b/10b 编码)的 SFP+模块中。 我认为、这些速率在数学上可行(8 * 1.25Gbps = 10Gbps)。 您能否确认这是否正确?

    您提到过、TLK10081可以与光纤环回配合使用。 这是否意味着在将数据传输到 LS 输入端、将 HSTX 循环到 HSRX 和检查 LS 输出端的错误时、您不会看到错误?

    您能否与我分享一个完整的寄存器转储、以便查看您使用的设置以及是否有任何配置错误?

    此致!

    卢卡斯

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

    您好、Lucas:

    当环回 HS 侧时、未检测到错误、并且 Rx 和 TX 同步。

    此致。

    PS:请查找两侧的寄存器转储(PHYS_ADDRESS 0x1和0x2)

    ================================ 0x00
    读取 MDIO phy_address 0x1 reg_address 0x0:0x610
    读取 MDIO phy_address 0x2 reg_address 0x0:0x610
    ================================ 0x01
    读取 MDIO phy_address 0x1 reg_address 0x1:0x0
    读取 MDIO phy_address 0x2 reg_address 0x1:0x0
    ================================ 0x02
    读取 MDIO phy_address 0x1 reg_address 0x2:0x831D
    读取 MDIO phy_address 0x2 reg_address 0x2:0x831D
    ================================ 0x03
    读取 MDIO phy_address 0x1 reg_address 0x3:0xA848
    读取 MDIO phy_address 0x2 reg_address 0x3:0xA848
    ================================ 0x04
    读取 MDIO phy_address 0x1 reg_address 0x4:0x1500
    读取 MDIO phy_address 0x2 reg_address 0x4:0x1500
    ================================ 0x05
    读取 MDIO phy_address 0x1 reg_address 0x5:0x2000
    读取 MDIO phy_address 0x2 reg_address 0x5:0x2000
    ================================ 0x06
    读取 MDIO phy_address 0x1 reg_address 0x6:0x115
    读取 MDIO phy_address 0x2 reg_address 0x6:0x115
    ================================ 0x07
    读取 MDIO phy_address 0x1 reg_address 0x7:0xDD05
    读取 MDIO phy_address 0x2 reg_address 0x7:0xDD05
    ================================ 0x08
    读取 MDIO phy_address 0x1 reg_address 0x8:0xd
    读取 MDIO phy_address 0x2 reg_address 0x8:0xd
    ================================ 0x09
    读取 MDIO phy_address 0x1 reg_address 0x9:0x380
    读取 MDIO phy_address 0x2 reg_address 0x9:0x380
    ================================ 0x0A
    读取 MDIO phy_address 0x1 reg_address 0xA:0x500
    读取 MDIO phy_address 0x2 reg_address 0xA:0x500
    ================================ 0x0B
    读取 MDIO phy_address 0x1 reg_address 0xb:0x520
    读取 MDIO phy_address 0x2 reg_address 0xb:0x520
    ================================ 0x0D
    读取 MDIO phy_address 0x1 reg_address 0xd:0x0
    读取 MDIO phy_address 0x2 reg_address 0xd:0x0
    ================================ 0x0E
    读取 MDIO phy_address 0x1 reg_address 0xe:0x0
    读取 MDIO phy_address 0x2 reg_address 0xe:0x0
    ================================ 0x0F
    读取 MDIO phy_address 0x1 reg_address 0xf:0x1F23
    读取 MDIO phy_address 0x2 reg_address 0xF:0x1F23
    ================================ 0x10
    读取 MDIO phy_address 0x1 reg_address 0x10:0x154
    读取 MDIO phy_address 0x2 reg_address 0x10:0x20E7
    reg = 0x10 val_1=0x154 <> val_2=0x20E7 --------------- >差异
    ================================ 0x11
    读取 MDIO phy_address 0x1 reg_address 0x11:0x0
    读取 MDIO phy_address 0x2 reg_address 0x11:0x0
    ================================ 0x13
    读取 MDIO phy_address 0x1 reg_address 0x13:0x2189
    读取 MDIO phy_address 0x2 reg_address 0x13:0x2189
    ================================ 0x14
    读取 MDIO phy_address 0x1 reg_address 0x14:0x41
    读取 MDIO phy_address 0x2 reg_address 0x14:0x41
    ================================ 0x15
    读取 MDIO phy_address 0x1 reg_address 0x15:0x280
    读取 MDIO phy_address 0x2 reg_address 0x15:0x280
    ================================ 0x16
    读取 MDIO phy_address 0x1 reg_address 0x16:0x0
    读取 MDIO phy_address 0x2 reg_address 0x16:0x0
    ================================ 0x17
    读取 MDIO phy_address 0x1 reg_address 0x17:0x2BC
    读取 MDIO phy_address 0x2 reg_address 0x17:0x2BC
    ================================ 0x18
    读取 MDIO phy_address 0x1 reg_address 0x18:0xCC8
    读取 MDIO phy_address 0x2 reg_address 0x18:0xCC8
    ================================ 0x19
    读取 MDIO phy_address 0x1 reg_address 0x19:0x2BC
    读取 MDIO phy_address 0x2 reg_address 0x19:0x2BC
    ================================ 0x1b
    读取 MDIO phy_address 0x1 reg_address 0x1b:0x3020
    读取 MDIO phy_address 0x2 reg_address 0x1b:0x3020
    ================================ 0x1C
    读取 MDIO phy_address 0x1 reg_address 0x1c:0x300
    读取 MDIO phy_address 0x2 reg_address 0x1c:0x300
    ================================ 0x1D
    读取 MDIO phy_address 0x1 reg_address 0x1d:0x880
    读取 MDIO phy_address 0x2 reg_address 0x1d:0x880
    ================================ 0x1E
    读取 MDIO phy_address 0x1 reg_address 0x1E:0x0
    读取 MDIO phy_address 0x2 reg_address 0x1E:0x0
    ================================ 0x1F
    读取 MDIO phy_address 0x1 reg_address 0x1f:0x0
    读取 MDIO phy_address 0x2 reg_address 0x1f:0x0
    ==================== regs_ind ===========================
    ================================ 0x8000
    REG_ind = 0x8000 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8001
    REG_ind = 0x8001 val_1=0x27C = val_2=0x27C
    ================================ 0x8002
    REG_ind = 0x8002 val_1=0x27C = val_2=0x27C
    ================================ 0x8003
    REG_ind = 0x8003 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8004
    REG_ind = 0x8004 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8005
    REG_ind = 0x8005 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8006
    REG_ind = 0x8006 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8007
    REG_ind = 0x8007 val_1=0x2BC = val_2=0x2BC
    ================================ 0x8009
    REG_ind = 0x8009 val_1=0xFC01 = val_2=0xFC01
    ================================ 0x800C
    REG_ind = 0x800C val_1=0x0 = val_2=0x0
    ================================ 0x800D
    REG_ind = 0x800D val_1=0x1FC = val_2=0x1FC
    ================================ 0x800E
    REG_ind = 0x800E val_1=0x0 = val_2=0x0
    ================================ 0x800F
    REG_ind = 0x800F val_1=0xC0 = val_2=0xC0
    ================================ 0x8019
    REG_ind = 0x8019 val_1=0xFC01 = val_2=0xFC01
    ================================ 0x801C
    REG_ind = 0x801C val_1=0x0 = val_2=0x0
    ================================ 0x801D
    REG_ind = 0x801D val_1=0x1FC = val_2=0x1FC
    ================================ 0x801E
    REG_ind = 0x801E val_1=0x0 = val_2=0x0
    ================================ 0x801F
    REG_ind = 0x801F val_1=0xC0 = val_2=0xC0
    ================================ 0x8021
    REG_ind = 0x8021 val_1=0xA = val_2=0xA
    ================================ 0x8026
    REG_ind = 0x8026 val_1=0x2FE = val_2=0x2FE
    ================================ 0x8027
    REG_ind = 0x8027 val_1=0x2FE = val_2=0x2FE
    ================================ 0x8028
    REG_ind = 0x8028 val_1=0x2FE = val_2=0x2FE
    ================================ 0x8029
    REG_ind = 0x8029 val_1=0x2FE = val_2=0x2FE
    ================================ 0x9020
    REG_ind = 0x9020 val_1=0x0 = val_2=0x0
    ================================ 0x9098
    REG_ind = 0x9098 val_1=0x0 = val_2=0x0
    ================================ 0x9099
    REG_ind = 0x9099 val_1=0x0 = val_2=0x0
    ================================ 0x909A
    REG_ind = 0x909A val_1=0x0 = val_2=0x0
    ================================ 0x909B
    REG_ind = 0x909B val_1=0x0 = val_2=0x0
    ================================ 0x909
    REG_ind = 0x909 val_1=0x0 = val_2=0x0

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

    嗨、Gilles:

    感谢您分享您的寄存器转储。 我将通过 EOD 1/11回顾和分享我的想法。

    此致!

    卢卡斯

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

    嗨、Gilles:

    很抱歉耽误你的寄存器转储检查. 下面是基于您提供的值的备注。

    • 0x0F=0x1F23:自动零校准完成、AGC 环锁定、HS 通道同步、 HS 解码器接收到无效代码字或8b/10b 视差错误 ,LS PLL 已锁定,HS PLL 已锁定
    • 0x10=0x154、0x20E7: HS 解码器接收到几个无效代码字
    • 0x11=0x0:LS 解码器未接收到无效代码字
    • 0x13=0x2189:LS 通道同步、 LS TX FIFO 下溢、LS RX FIFO 上溢
    • 0x14=0x41:  HS RX0 FIFO 溢出
    • 0x1C = 0x300:RX 和 TX GigE 模式被启用
    • 0x8009=0xFC01:发送侧启用16位扰频器
    • 0x8019=0xFC01:发送侧启用16位解码器

    此外、我还有一些想法、您可以尝试解决该问题。

    • 您是否可以尝试禁用扰码器和解扰器? (写入0x8009=0xFC00、0x8019=0xFC00)
    • 您能尝试改为启用20位扰码器和解扰器吗? (写入0x8009=0xFC02、0x8019=0xFC02)
    • 是否可以尝试禁用 GigE 模式? (写入0x1C = 0x0)
    • 您是否可以尝试在该通道上传输与其他7个 LS 通道相同的数据、而不是仅使用第8个 LS 通道进行调试?

    我还有一个关于环回测试用例的问题。 您是发送8b/10b 数据还是发送 PRBS 模式?
    此致!

    卢卡斯

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

    您好、Lucas:

    我与 Gilles‘m 在同一个项目中、并测试 SERDES tlk10081。 我想知道此组件是否可以使用 RJ45 SFP 模块(而不是1G 1000 BASE-LX SFP)对8千兆以太网1000 Base-T 链路进行序列化。 如果可以、我可以使用哪种模式:8b10b 模式或位交错?

    在8b10b 模式下、我能够通过 tlk10081使用 SPF 模块(1000 BASE-LX)以1.25Gbps 在2个接口之间进行通信。 我能够通过两个 FPGA 将16位8b10b 编码字从一个发送到另一个( SERDES 在8|n 模式, LS 1.25Gbps, HS 10 Gbps)来实现这一点 。 寄存器转储是在我们之前的消息之一中发送的。 另一方面、在这种相同的配置下、我无法在本地网络中将 SERDES 与千兆位以太网链路配合使用。

    当我尝试使用 tlk10081连接1个或8个 gibabit 以太网接口(SFP RJ45 1000 Base-T)时、我无法使我的计算机与我的 LAN 上的其他计算机进行通信。

    我尝试了8b10b 和位交错模式。 我阅读了应用手册(slla374和 slla350)并进行了测试、但没有成功。

     

    最后测试的寄存器:(位交错模式)

    0x8009和0x8019 -> 0xxFC00、0xxFC01、0xxFC02        韩语

    0x1C 0x0300、0x000                                                                   KO

    0x0A 0x3500、0x3400                                                                 KO

    0x0B 0x3520、0x3700                                                                   KO

    0x17 0x0ABC                                                                                   主操作员

     

    用于测试的器件以这种方式连接:

    计算机(RJ45)----- (ETH 电缆)----- (SFP RJ45) LS_SERDES_HS -------- (二) HS_SERDES_LS (SFP RJ45)----------------------------------------------------- ETH 电缆--(RJ45)交换机千兆位以太网 (LAN)

    fo =>光纤

    ETH 电缆=>以太网电缆6类

     

    位交错配置:

    ================================ 0x00

    读取 MDIO phy_address 0x1 reg_address 0x0:0x610

    读取 MDIO phy_address 0x2 reg_address 0x0:0x610

    ================================ 0x01

    读取 MDIO phy_address 0x1 reg_address 0x1:0x302

    读取 MDIO phy_address 0x2 reg_address 0x1:0x302

    ================================ 0x02

    读取 MDIO phy_address 0x1 reg_address 0x2:0x831B

    读取 MDIO phy_address 0x2 reg_address 0x2:0x831B

    ================================ 0x03

    读取 MDIO phy_address 0x1 reg_address 0x3:0xA848

    读取 MDIO phy_address 0x2 reg_address 0x3:0xA848

    ================================ 0x04

    读取 MDIO phy_address 0x1 reg_address 0x4:0x1500

    读取 MDIO phy_address 0x2 reg_address 0x4:0x1500

    ================================ 0x05

    读取 MDIO phy_address 0x1 reg_address 0x5:0x2000

    读取 MDIO phy_address 0x2 reg_address 0x5:0x2000

    ================================ 0x06

    读取 MDIO phy_address 0x1 reg_address 0x6:0x8114

    读取 MDIO phy_address 0x2 reg_address 0x6:0x8114

    ================================ 0x07

    读取 MDIO phy_address 0x1 reg_address 0x7:0xDD05

    读取 MDIO phy_address 0x2 reg_address 0x7:0xDD05

    ================================ 0x08

    读取 MDIO phy_address 0x1 reg_address 0x8:0xd

    读取 MDIO phy_address 0x2 reg_address 0x8:0xd

    ================================ 0x09

    读取 MDIO phy_address 0x1 reg_address 0x9:0x380

    读取 MDIO phy_address 0x2 reg_address 0x9:0x380

    ================================ 0x0A

    读取 MDIO phy_address 0x1 reg_address 0xA:0x400

    读取 MDIO phy_address 0x2 reg_address 0xA:0x400

    ================================ 0x0B

    读取 MDIO phy_address 0x1 reg_address 0xb:0x700

    读取 MDIO phy_address 0x2 reg_address 0xb:0x700

    ================================ 0x0D

    读取 MDIO phy_address 0x1 reg_address 0xd:0x0

    读取 MDIO phy_address 0x2 reg_address 0xd:0x0

    ================================ 0x0E

    读取 MDIO phy_address 0x1 reg_address 0xe:0x0

    读取 MDIO phy_address 0x2 reg_address 0xe:0x0

    ================================ 0x0F

    读取 MDIO phy_address 0x1 reg_address 0xf:0x1F23

    读取 MDIO phy_address 0x2 reg_address 0xF:0x1723

    reg = 0x0F   val_1=0x1F23 <> val_2=0x1723 ------- >差异

    ================================ 0x10

    读取 MDIO phy_address 0x1 reg_address 0x10:0xFFFF

    读取 MDIO phy_address 0x2 reg_address 0x10:0xFFFF

    ================================ 0x11

    读取 MDIO phy_address 0x1 reg_address 0x11:0xFFFF

    读取 MDIO phy_address 0x2 reg_address 0x11:0xFFFF

    ================================ 0x13

    读取 MDIO phy_address 0x1 reg_address 0x13:0x2C09

    读取 MDIO phy_address 0x2 reg_address 0x13:0x2C05

    reg = 0x13   val_1=0x2C09 <> val_2=0x2C05 ------- >差异

    ================================ 0x14

    读取 MDIO phy_address 0x1 reg_address 0x14:0x41

    读取 MDIO phy_address 0x2 reg_address 0x14:0x41

    ================================ 0x15

    读取 MDIO phy_address 0x1 reg_address 0x15:0x280

    读取 MDIO phy_address 0x2 reg_address 0x15:0x280

    ================================ 0x16

    读取 MDIO phy_address 0x1 reg_address 0x16:0x0

    读取 MDIO phy_address 0x2 reg_address 0x16:0x0

    ================================ 0x17

    读取 MDIO phy_address 0x1 reg_address 0x17:0x2BC

    读取 MDIO phy_address 0x2 reg_address 0x17:0x2BC

    ================================ 0x18

    读取 MDIO phy_address 0x1 reg_address 0x18:0xCC8

    读取 MDIO phy_address 0x2 reg_address 0x18:0xCC8

    ================================ 0x19

    读取 MDIO phy_address 0x1 reg_address 0x19:0x2BC

    读取 MDIO phy_address 0x2 reg_address 0x19:0x2BC

    ================================ 0x1b

    读取 MDIO phy_address 0x1 reg_address 0x1b:0x3020

    读取 MDIO phy_address 0x2 reg_address 0x1b:0x3020

    ================================ 0x1C

    读取 MDIO phy_address 0x1 reg_address 0x1c:0x300

    读取 MDIO phy_address 0x2 reg_address 0x1c:0x300

    ================================ 0x1D

    读取 MDIO phy_address 0x1 reg_address 0x1d:0x880

    读取 MDIO phy_address 0x2 reg_address 0x1d:0x880

    ================================ 0x1E

    读取 MDIO phy_address 0x1 reg_address 0x1E:0x0

    读取 MDIO phy_address 0x2 reg_address 0x1E:0x0

    ================================ 0x1F

    读取 MDIO phy_address 0x1 reg_address 0x1f:0x0

    读取 MDIO phy_address 0x2 reg_address 0x1f:0x0

    ==================== regs_ind ===========================

    ================================ 0x8000

    REG_ind = 0x8000   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8001

    REG_ind = 0x8001   val_1=0x27C = val_2=0x27C

    ================================ 0x8002

    REG_ind = 0x8002   val_1=0x27C = val_2=0x27C

    ================================ 0x8003

    REG_ind = 0x8003   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8004

    REG_ind = 0x8004   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8005

    REG_ind = 0x8005   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8006

    REG_ind = 0x8006   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8007

    REG_ind = 0x8007   val_1=0x2BC = val_2=0x2BC

    ================================ 0x8009

    REG_ind = 0x8009   val_1=0xFC00 = val_2=0xFC00

    ================================ 0x800C

    REG_ind = 0x800C   val_1=0x0 = val_2=0x0

    ================================ 0x800D

    REG_ind = 0x800D   val_1=0x1FC = val_2=0x1FC

    ================================ 0x800E

    REG_ind = 0x800E   val_1=0x0 = val_2=0x0

    ================================ 0x800F

    REG_ind = 0x800F   val_1=0xC0 = val_2=0xC0

    ================================ 0x8019

    REG_ind = 0x8019   val_1=0xFC00 = val_2=0xFC00

    ================================ 0x801C

    REG_ind = 0x801C   val_1=0x0 = val_2=0x0

    ================================ 0x801D

    REG_ind = 0x801D   val_1=0x1FC = val_2=0x1FC

    ================================ 0x801E

    REG_ind = 0x801E   val_1=0x0 = val_2=0x0

    ================================ 0x801F

    REG_ind = 0x801F   val_1=0xC0 = val_2=0xC0

    ================================ 0x8021

    REG_ind = 0x8021   val_1=0xA = val_2=0xA

    ================================ 0x8026

    REG_ind = 0x8026   val_1=0x2FE = val_2=0x2FE

    ================================ 0x8027

    REG_ind = 0x8027   val_1=0x2FE = val_2=0x2FE

    ================================ 0x8028

    REG_ind = 0x8028   val_1=0x2FE = val_2=0x2FE

    ================================ 0x8029

    REG_ind = 0x8029   val_1=0x2FE = val_2=0x2FE

    ================================ 0x9020

    REG_ind = 0x9020   val_1=0x0 = val_2=0x0

    ================================ 0x9098

    REG_ind = 0x9098   val_1=0x0 = val_2=0x0

    ================================ 0x9099

    REG_ind = 0x9099   val_1=0x0 = val_2=0x0

    ================================ 0x909A

    REG_ind = 0x909A   val_1=0x0 = val_2=0x0

    ================================ 0x909B

    REG_ind = 0x909B   val_1=0x0 = val_2=0x0

    ================================ 0x909

    REG_ind = 0x909   val_1=0x0 = val_2=0x0

     

     感谢你的帮助。

    劳尔

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

    您好、Raul、

    我在同一个项目中与 Gilles 合作,并‘m 测试 SERDES tlk10081。 我想知道此组件是否可以使用 RJ45 SFP 模块(而不是1G 1000 BASE-LX SFP)对8千兆以太网1000 Base-T 链路进行序列化。 如果是、我可以使用哪种模式:8b10b 模式或位交错?

     您的应用对于每个通道的 HS 侧和 LS 侧需要多大的数据速率? 我不确定哪种交错方法更适合您的应用、因为这取决于您希望如何将来自 LS 通道的数据组合到 HS 通道中。 如果选择了世界交错、低速数据流将以循环方式一次10位交错。 如果选择了位交错、则会逐位执行交错。

    我对已执行的测试和结果有点困惑。 您能否确认以下方框图和结果正确、并回答我的问题?

    1.光纤回送测试:通过

    我对该测试是如何执行的假设:计算机在8个 LS 通道上传输 PRBS 数据、然后检查在接收的8个 LS 通道上是否存在错误。 计算机未检测到任何错误、因此测试通过。 如果我对这里的任何细节有误、请更正我。

    2. FPGA 链接测试:通过

    您提到过第一个 FPGA 正在传输8b/10b 编码的16位字。 我假设此测试通过、因为第二个 FPGA 正确接收了此数据、没有出现任何错误。

    • 这里使用的是交错?
    • 这里是否使用了2个 TLK10081器件、或者使用了1个 TLK 器件上的两个通道?
    • Gilles 是否在此测试中共享了寄存器转储?

    3.以太网链路测试:失败

    您提到此测试失败是因为计算机无法与 LAN 上的其他计算机通信。

    • 以太网交换机是否接收到错误数据、这会妨碍计算机通信?
    • 以太网交换机是否未从 TLK10081接收数据?
    • 这里是否使用了2个 TLK10081器件、或者使用了1个 TLK 器件上的两个通道?
    • 您在该测试中分享的最后一个寄存器转储是否是?

    我仍在审查您的寄存器转储、并将计划与 EOD 1/24分享我的评论。

    此致!

    卢卡斯

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

    您好、Lucas:

    感谢您的快速响应。 以下是一些说明 :

    我有2个 tlk10081和2个 fpga

    REF FREQ = 156.25 MHz、LS、以1.25G 和 HS 10G 为单位

    每个 FPGA 都有一个配置为1.25G 的 GTH 接口、编码8b10b、16位字和2位控制

     

    1.-测试通过:  

    FPGA (SFP)--光纤-- (SFP)[tlk10081](SFP 10G)---光纤--- (SFP 10G)[tlk10081](SFP)---光纤--- (SFP 1.25G) FPGA

    对于 LS 通道、仅使用 SFP 1.25G;对于 HS 通道、仅使用 SFP 10G。

                   每个 tlk10081配置为8b10b 模式、信道配置为1.25G、HS 配置为10G。

    我发送和接收数据没有问题。 发送的数据只是0到511的递增值。  

                                                   

     

    2.-测试失败 :  

    FPGA (SFP RJ45)--eth 电缆---- (SFP RJ45)[tlk10081](SFP 10G)---光纤--- (SFP 10G)[tlk10081](SFP RJ45)--eth 电缆--- (SFP RJ45) FPGA

                   在相同配置下、我只更改了 SFP RJ45的 SPF 1.25G 以及 LS 侧以太网电缆的光纤

    3.-测试失败 :  

    计算机(RJ45)--eth 电缆------ (SFP RJ45)[tlk10081](SFP 10G)---光纤--- (SFP 10G)[tlk10081](SFP RJ45)--eth 电缆--- (RJ45)交换机 LAN

                   具有2种模式(8b10和位交错)

     

     

    要配置 bit interleave 中的2个 tlk10081模块,我使用此配置:使用 bash 脚本写入寄存器。

     ./WRITE_MDIO $eslave 0x00 0x8610  #应用于两个 HS 0/1宏

      #重置 bit 15=1

       ./WRITE_MDIO $ESLave 0x01 0x0302 #禁用链路训练|Interleaved EN

       /WRITE_MDIO $ESLave 0x02 0x831B # HS CLKREF 156MHz PLL=x16

       ./WRITE_MDIO $ESLave 0x03 0xA848 # HS

       ./WRITE_MDIO $ESLave 0x06 0x8114 # LS、选择通道0 CLKREF 156MHz PLL=x8

       ./WRITE_MDIO $ESLave 0x07 0xDD05 # LS_SerDes control 2

       ./WRITE_MDIO $eslave 0x0A 0x3400

       ./WRITE_MDIO $ESLave 0x0B 0x3700 #pattern PRBS 2^31 -1

       ./WRITE_MDIO $ESLave 0x17 0x0ABC

       ./write_ind_mdio.sh $eslave 0x8009 0xFC00    

       ./write_ind_mdio.sh $eslave 0x8019 0xFC00

       ./WRITE_MDIO $ESLave 0x1C 0x0300 #禁用 RX ET TX GigE

       ./WRITE_MDIO $ESLave 0x1D 0x0880

       ./WRITE_MDIO $eslave 0x0E 0x0008 #重置路径

    我尝试更改这些寄存器:

    #./WRITE_MDIO $ESLave 0x1C 0x030E #启用 RX et TX GigE|旁路

    0x1C 0x030E

    0x01 0x0000也成功

     

    此致、

    劳尔

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

    您好、Raul、

    感谢您对所执行的测试的说明。 这里是我关于寄存器转储的注意事项。

    地址 名称 0x1值 0x2值 备注
    01 通道控制_1 0302 0302 LT 禁用、RX_BIT_INTERLEAVE、TX_BIT_INTERLEAVE、REFCLK_1已选择
    02 HS_SERDES_CONTROL_1 831b 831b 16x PLL 倍频器
    06 LS_SERDES_CONTROL_1 8114 8114 8x PLL 乘法器
    0f 通道_状态_1 1F23 1723 HS_AZ_DONE、HS_AGC_LOCKED [仅限 CHA]、HS_CHANNEL_SYNC、HS_ENCODE_INVALID、HS_DECDED_INVALID、 bit_LM_FAIL、LS_PLL_LOCK、HS_PLL_LOCK
    10 HS_ERROR_COUNTER FFFF FFFF 两个通道上的最大误差
    11 LS_LN_ERROR_COUNTER FFFF FFFF 两个通道上的最大误差
    13 LS_STATUS_1 2C09 2C05 LS_A_PLL_LOCK、LS_INVALID_DECODEC、LS_LOS、LS_TX_FIFO_UNFLOW [仅限 CHA]、LS_TX_FIFO_OVERFLOW [仅限 CHB ]、 LS_RX_FIFO_溢出
    14 HS_STATUS_1 0041 0041 HS_RX0_FIFO_OVERPIE
    1°C LS_CH_CONTROL_1 0300 0300 RX_GigE_EN、TX_Fife_EN

    我对这个寄存器转储有几个问题。

    • 转储是用计算机拍摄的--以太网交换机配置,正确吗?
    • 这个转储是从 TLK10081 #1还是#2取来的?
    • 我了解通道 A 上连接了什么。是否正在使用通道 B? 如果需要、连接了什么?

    此外、 我还回顾了位交错模式的寄存器写入序列。 写入0x17=0xABC 的原因是什么? 我注意到寄存器0x17在您的寄存器转储中具有默认值0x2BC。 是否在捕获到寄存器转储后执行了该寄存器写入?

    您是否可以尝试使用此备用寄存器写入序列、并让我知道它是否有效?

    • 0x1=0x0302
    • 0x2=0x831b
    • 0x6=0x8114
    • 0x1c=0x002c
    • 0x1d=0x002c
    • 0x17=0x0abc
    • 等待1s、写入0x17=0x2bc

    此致!

    卢卡斯

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

    您好、Raul、

    我的道歉,我在前面没有清楚的理解这一点。 我知道 TLK10081本身不支持1000BASE-T 数据或 RJ45。 但该器件支持1000BASE-X 数据。 我相信、如果 SFP RJ45能够成功地将1000BASE-T 数据转换为1000BASE-X 数据、您的应用程序应该起作用。

    您能否说明您的"SFP RJ45"组件? 这是不是一个从 RJ45转换为 SFP 的设备? 1000BASE-T 数据是否转换为1000BASE-X 数据? 您能否分享从 SFP RJ45输出中捕获的眼图?

    此致!

    卢卡斯

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

    您好、Lucas:

    "非常感谢您的帮助。

    我正在使用的 SFP RJ45是这一个:QSFPTEK 千兆 SFP RJ45 Mini-GBIC 10/100/1000Base-T 铜缆收发器。 它以循环方式将该数据发送到我的 FPGA:0xBC 0x42 0x00 0xBC 0xB5 0x00。

    TLK10081适用于光纤和 SFP、因此我将寻找一种将1000BASE-T 数据转换为1000BASE-X 数据的转换器。

    此致、

    劳尔

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

    您好、Raul、

    我知道、这部分好像是把 RJ45转换成 SFP、却没有把1000BASE-T 数据转换成1000BASE-X 数据。 因此、需要一个数据转换器与 TLK10081一同使用。

    此致!

    卢卡斯

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

    您好、Lucas:

    我发现了此组件 DP83869HM 及其 评估模块。 我正在阅读文档以便在我的设计中实施它、但我看到有一个已预先编程且可在板上使用的 MSP-430。  

    是否有用于设置 DP83869的文档?
    如何将其作为1000BASE-T 转换器使用到1000BASE-X?

    此致、  

    劳尔

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

    您好、Raul、

    DP83869由 TI 内的不同产品系列进行管理。 我不熟悉此器件、因为我不支持它。 我的建议是打开一个新的 E2E 主题、它将分配给正确的团队。 我可以继续在该主题上支持任何 TLK 问题。

    此致!

    卢卡斯