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.

[参考译文] DP83867IR:1000BASE-T 自动协商数据传输/接收

Guru**** 2763595 points

Other Parts Discussed in Thread: DP83867IR

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1016675/dp83867ir-1000base-t-autonegotiation-data-transmission-reception

器件型号:DP83867IR

完成1000BASE-T 自协商链路后、我将尝试以 RGMII 模式发送和接收数据。

RX_D0至 RX_D3仅输出"1101"。

原因可能是什么?

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

    你好,你好,高桥

    感谢您的查询。

    您能否提供有关数据发送和接收方式的更多详细信息?

    您能否检查电路板上的所有基本硬件诊断测试是否都正常工作。

    您是否有要查看的原理图。

    此致、

    Sreenivasa

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

    Sreenivasa  San、您好

    感谢你的答复。

    >您能否提供一些有关数据发送和接收方式的其他详细信息。

    您能否检查电路板上的所有基本硬件诊断测试是否都正常工作。

    ⇒与1000BASE-T、RGMII 链接。 以下是寄存器设置。

    基本模式控制寄存器(BMCR)、地址0x0000

    reg0_set (15)<='0';-复位
    reg0_set (14)<="0";--loopback
    reg0_set (13)<="0";-速度选择 LSB
    reg0_set (12)<='1';-自协商使能
    reg0_set (11)<="0";-断电
    reg0_set (10)<="0";-隔离
    reg0_set (9)<='0';--restart 自动协商
    reg0_set (8)<='1';-双工模式
    reg0_set (7)<='0';--collision test
    reg0_set (6)<='1';-速度选择 MSB
    reg0_set (5)<='0';--↓保留
    reg0_set (4)<='0';
    reg0_set (3)<='0';
    reg0_set (2)<='0';
    reg0_set (1)<='0';
    reg0_set (0)<='0';

    自协商通告寄存器(ANAR)、地址0x0004

    reg4_set (15)<='0';-np
    reg4_set (14)<='0';-保留
    reg4_set (13)<="0";-rf
    reg4_set (12)<="0";-保留
    reg4_set (11)<="0";-asm_DIR
    reg4_set (10)<='0';-暂停
    reg4_set (9)<='0';-T4
    reg4_set (8)<='0';-TX_FD
    reg4_set (7)<='0';-TX
    reg4_set (6)<='0';-10_fd
    reg4_set (5)<='0';-10BASETe_EN
    reg4_set(4)<='0';--↓选择器
    reg4_set (3)<='0';
    reg4_set (2)<='0';
    reg4_set(1)<='0';
    reg4_set (0)<='1';

    配置寄存器1 (CFG1)、地址0x0009

    reg9_set (15)<="0";-↓测试模式
    reg9_set (14)<='0';
    reg9_set (13)<='0';
    reg9_set (12)<="0";-主器件/从器件手动配置
    reg9_set (11)<="0";-主器件/从器件配置值
    reg9_set (10)<="0";--port 类型
    reg9_set (9)<='1';-1000BASE-T 全双工
    reg9_set (8)<="0";-1000BASE-T 半双工
    reg9_set (7)<='0';--TDR 自动运行
    reg9_set (6)<='0';--↓保留
    reg9_set (5)<='0';
    reg9_set (4)<='0';
    reg9_set (3)<='0';
    reg9_set (2)<='0';
    reg9_set (1)<='0';
    reg9_set (0)<='0';

    寄存器控制寄存器(REGCR)、地址0x000D

    reg13_0_set (15)<='0';-↓函数
    reg13_0_set (14)<='0';
    reg13_0_set (13)<='0';--↓保留
    reg13_0_set (12)<="0";
    reg13_0_set (11)<='0';
    reg13_0_set (10)<="0";
    reg13_0_set (9)<='0';
    reg13_0_set (8)<='0';
    reg13_0_set (7)<='0';
    reg13_0_set (6)<='0';
    reg13_0_set (5)<='0';
    reg13_0_set (4)<='1';--↓DEVAD
    reg13_0_set (3)<='1';
    reg13_0_set (2)<='1';
    reg13_0_set (1)<='1';
    reg13_0_set (0)<='1';

    地址或数据寄存器(ADAR)地址0x000E

    reg14_0_set (15)<='0';--↓地址/数据
    reg14_0_set (14)<='0';
    reg14_0_set (13)<="0";
    reg14_0_set (12)<="0";
    reg14_0_set (11)<='0';
    reg14_0_set (10)<="0";
    reg14_0_set (9)<='0';
    reg14_0_set (8)<='0';
    reg14_0_set (7)<='0';
    reg14_0_set (6)<='0';
    reg14_0_set (5)<='1';
    reg14_0_set (4)<='1';
    reg14_0_set (3)<='0';
    reg14_0_set (2)<='0';
    reg14_0_set (1)<='1';
    reg14_0_set (0)<='0';

    寄存器控制寄存器(REGCR)、地址0x000D

    reg13_1_set (15)<='1';-↓函数
    reg13_1_set (14)<="0";
    reg13_1_set (13)<="0";-↓保留
    reg13_1_set (12)<="0";
    reg13_1_set (11)<="0";
    reg13_1_set (10)<="0";
    reg13_1_set (9)<='0';
    reg13_1_set (8)<='0';
    reg13_1_set (7)<='0';
    reg13_1_set (6)<='0';
    reg13_1_set (5)<='0';
    reg13_1_set (4)<='1';--↓DEVAD
    reg13_1_set (3)<='1';
    reg13_1_set (2)<='1';
    reg13_1_set (1)<='1';
    reg13_1_set (0)<='1';

    地址或数据寄存器(ADAR)地址0x000E

    reg14_1_set (15)<="0";-↓Address / Data↓Reserved
    reg14_1_set (14)<="0";
    reg14_1_set (13)<="0";
    reg14_1_set (12)<="0";
    reg14_1_set (11)<="0";
    reg14_1_set (10)<="0";
    reg14_1_set (9)<='0';
    reg14_1_set (8)<='0';
    reg14_1_set (7)<='1';-- RGMII_EN
    reg14_1_set (6)<="1";-↓RGMII_RX_Half_full_THR
    reg14_1_set (5)<='0';
    reg14_1_set (4)<="1";-↓RGMII_TX_Half_full_THR
    reg14_1_set (3)<='0';
    reg14_1_set (2)<='0';--保留
    reg14_1_set (1)<="0";-- RGMII_TX_CLK_DELAY
    reg14_1_set (0)<="0";-- RGMII_RX_CLK_DELAY

    PHY 控制寄存器(PHYCR)、地址0x0010

    reg16_set (15)<="0";-- TX FIFO 深度
    reg16_set (14)<="0";-- TX FIFO 深度
    reg16_set (13)<="0";--↓保留
    reg16_set (12)<="0";
    reg16_set (11)<="0";
    reg16_set (10)<="0";-- FORCE_LINK_Good
    reg16_set (9)<="0";-- power_save_mode
    reg16_set (8)<="0";-- power_save_mode
    reg16_set (7)<="0";-- DEEP_POWER_DOWN_EN
    reg16_set(6)<='1';-- MDI_cross
    reg16_set(5)<="0";-- MDI_cross
    reg16_set (4)<="0";-- disable_clk_125
    reg16_set (3)<='0';--保留
    reg16_set (2)<="0";-- STANDBY_MODE
    reg16_set (1)<="0";-- LINE_DRIVER_INV_EN
    reg16_set (0)<="0";-- disable_Jabber

    硬件使用 Xilinx sp701评估板。

    安装了两个 DP83867IR。

    每个 DP83867IR 均连接到 FPGA。 DP83867IR 中的应用

    DP83867IR① DP83867IR② μ A
    ・RxD →TXD
    ・rx_clk→GTX_clk
    ・rx_dv_rx_ctrl→TX_en_TX_ctrl
    ・TXD    ←RxD
    ・GTX_CLK     ←Rx_clk
    ・TX_en_TX_Ctrl←Rx_dv_Rx_Ctrl

    连接和使用 PC、

    DP83867IR ①⇔DP83867IR②

    我正在尝试确认他们之间的通信。

    ・发送 ping

    ・使用[ iperf2]进行吞吐量确认

    但两者都是错误。

    上述 DP83867IR 寄存器设置由来自 FPGA 的 MDIO 控制。

    每个 DP83867IR 执行该操作。

    >您是否有要查看的原理图。

    ⇒μ A
    关于 DP83867IR 的电路连接、所附评估板的电路图请参阅第8-10页。

    已确认在100BASE-T 时 RX_clk 变为25MHz、在1000BASE-T 时变为125MHz、并且在链接后也会输出 RX_dv_RX_Ctrl。
    只有 RX_d 固定为"1101"。

    ・INT_PDWN 固定为"H"且 IC 启用。
    ・RESET_B 通常为"H",复位"L"。
    ・、外部时钟25MHz 也是输入。

    由于我使用的是我购买的评估板、
    原因是 DP83867IR 或的寄存器设置
    假设 DP83867IR 之间的信号连接存在问题。

    我必须紧急解决这个问题。
    我们期待您的建议。

    此致、

    Takahashi

     e2e.ti.com/.../0381874r01.pdf

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

    你好  Takahashi

    感谢您的参与。

    几个点  

    RGMII 延迟  

    您能不能检查 Xilinx 参考板使用的延迟是多少、并确认您是否使用相同的延迟。  

    有关 RGMII 延迟调整的更多信息、请参阅以下内容

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/563614/dp83867ir-dp83867-rgmii-clock-delay

    https://www.ti.com/lit/pdf/snla243#:~:text=NOTE%3A%20DP83867%20allows%20adjustment%20of,by%200.25%20to%20be%20valid.&text=Using%20Equation%201%20through%20Equation,selected%20ID%20and%20PCB%20skew。

    您是否还能检查客户是否准备执行 MII 回送和数字回送测试。

    此致、

    Sreenivasa

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

    Sreenivasa  San、您好

    最诚挚的歉意。
    由于我的错误,来自 RX_D 的数据[0... DP83867IR 的[3]
    它是在 FPGA 中捕获的。

    但是、
    在我之前联系过的连接条件下检查回送时、将会发生错误。

    >能否检查 Xilinx 参考板使用的延迟是多少并确认是否使用相同的延迟。

    ⇒是的。 我将确认。

    >您是否还可以检查客户是否准备好执行 MII 回送和数字回送测试。

    ⇒我很抱歉。 我不是很了解。
    这是否意味着再次确认环境以确认回送?

    此致、

    Takahashi

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

    你好  Takahashi

    感谢您的参与。  

    由于我的错误,来自 RX_D 的数据[0... DP83867IR 的[3]
    它是在 FPGA 中捕获的。

    请解释一下您在这里的意思。

    我想让客户执行回送测试、如 MII 回送和数字 回送。

    此致、

    Sreenivasa

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

    Sreenivasa  San、您好

    我告诉过只有"1101"是 RX_D 的输出[0... DP83867IR 的3]、

    包括前导码和 SFD 在内的数据正在输出。

    由于我能够确认上述情况、我认为 RGMII 延迟没有问题、但识别是否正确?

    此致、

    Takahashi

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

    你好  Takahashi

    注意到。

    我不确定前导码和 SFD 是否会确认 RGMII 接口的功能(双向)。

    如果客户使用为 Xilinx 电路板指定的延迟设置执行回路测试、我将帮助优化延迟。

    此致、

    Sreenivasa

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

    Sreenivasa  San、您好

    感谢您联系我。

    我还没有确认 Xilinx 电路板的延迟设置、
    我们将相互检查以提高可靠性。

    感谢您的快速、友好的回答。

    此致、

    Takahashi

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

    Sreenivasa  San、您好

    我们将再次与您联系。

    我们还没有解决这个问题。

    您已要求我确认以下关于此问题的两点。

    (1)环回方法
    (2) RGMII 延迟

    (1)没有问题。

    让我向您询问有关(2)的问题。

    查看我当天发送的电路图、我认识到由于安装了 DP83867IR PAP、因此无法通过硬件绑定来设置延迟。

    换言之、此 sp701评估板的 RGMII 延迟为
    必须使用来自 FPGA 的 MDIO 设置以下寄存器。
    寄存器0x0032
    寄存器0x0086

    这种感觉是否正确?

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    感谢您的参与。

    根据输入、我能否假设客户已经完成 SGMII 测试并正常工作。

    关于延迟控制、您的看法和您提到的寄存 器看起来是正确的。 。

    我建议使用 Xilinx 和电路板一起开始的延迟值。

    此致、

    Sreenivasa

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

    Sreenivasa  San、您好

    以下内容是什么意思?

    >根据输入、我能否假设客户已经完成 SGMII 测试并正常工作。

    MII 环回测试
    寄存器"0"

    数字回送测试
    寄存器"16"

    您是否使用了上述内容、从 MAC 侧发送参考数据、将其与环回数据进行比较、并确认没有问题? 这是什么意思吗?

    >我建议使用​​Xilinx 与电路板一起开始的延迟值。

    ⇒不幸的是,我无法确认。
    目前、我将尝试各种延迟设置、
    您能想到有关此问题的其他因素吗?

    此致、

    Takahashi

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

    Takahashi-San、您好!   

     使用了以下寄存器  

    环路

    0x0000、0X0016、0X00FE

    对于延迟控制、如果您没有默认值、请参阅以下指南

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/563614/dp83867ir-dp83867-rgmii-clock-delay

    http://www.ti.com/lit/an/snla243/snla243.pdf

    我将告诉您是否有任何其他输入。

    此致、

    Sreenivasa

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

    Sreenivasa San、您好

    0X00FE

    该寄存器的用途是什么?

    ――――――――――――――――――――μ A

    0x0000、0X0016

    似乎只能通过设置上述两个寄存器来执行回送确认。

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    请参阅数据表、这是一项建议。

    8.4.4.1近端环回

    配置环回模式时、环回配置寄存器(LOOPCR)、地址0x00FE、应该被设定为0xE720。

    此致、

    Sreenivasa

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

    Sreenivasa San、您好

    感谢你的答复。

    此问题已解决。

    毕竟、这是由于 RGMII 的延迟。

    我能够找到清除 ping 的延迟设置。

    感谢您的宝贵建议。

    我想再次确认一点。

    对于1000BASE-T、从 PHY 到 MAC、为125MHz CLK
    我认为4位数据将出现在上升沿和下降沿。
    数据的开头(第一个前导码)始终为 CLK
    它是否从头开始?
    是否存在数据从 CLK 下降沿开始的情况?

    请确认。

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    感谢您的意见、并很好地知道您能够解决接口问题。

    任何关于设置的想法- 2ns

     由于时钟为125M,因此该数据需要在上升沿和下降沿进行传输。

    我看不到根据数据表更改时钟相位的选项。

    我将与团队进行检查。

    此致、

    Sreenivasa

     

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

    Sreenivasa San、您好

    打扰一下。
    我不理解以下消息的含义。
    -------------------------- --------------------------
    >任何关于-2ns 设置的想法
    -------------------------- --------------------------

    >由于时钟为125M、因此该数据需要在上升沿和下降沿进行传输。

    我看不到根据数据表更改时钟相位的选项。

    我将与团队进行检查。

    ⇒根据
    数据表 P 33 [8.4.1.1.1 1000Mbps 模式运行]

    125MHz DDR 8位、
    在 CLK [3_0]的上升沿、
    在 CLK 的下降沿[7_4]
    它是一个传输。
    换句话说、8位(1Byte)数据始终位于上升沿。
    我们认识到、我们将开始发送和接收。
    对吧?

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    不确定我的问题是否清晰。

    我想检查客户为使接口正常工作而编程的 RGMII 延迟是多少。

    关于数据传输、您的理解是正确的。

    此致、

    Sreenivasa

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

    Sreenivasa San、您好

    我认为这取决于具体情况、因此不是可靠的信息。

    RX_CLK:0.25ns
    TX_CLK:2ns

    安装在 Xilinx sp701评估板上的两个 dp83867ir
    将评估板上 FPGA 中的 CLK、DATA、CTRL 信号短路、
    这是一个延迟设置、使用两台 PC 确认 ping 清除。


    DP83867IR ①      DP83867IR ②

    RXD    →  TXD
    RX_CLK   →  GTX_CLK
    RX_dv_RX_Ctrl   →  TX_en_TX_Ctrl
    TXD            ←  RxD
    GTX_CLK         ←  Rx_clk
    TX_en_TX_Ctrl   ←  Rx_dv_Rx_Ctrl

    如果我找到最初在评估板上设置的 RGMII 延迟设置、我将在此处添加它。

    非常感谢。

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    注意并感谢您共享信息。

    此致、

    Sreenivasa

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

    Sreenivasa San、您好

    很抱歉经常与您联系。

    我还想确认以下几点。

    PHY⇒MAC RX_CLK
    MAC⇒PHY GTX_CLK

    与1000BASE-T RGMII 配合使用时、
    是否需要同步 RX_CLK 和 GTX_CLK?

    目前、PHY 和 MAC 使用不同的振荡器源、
    虽然它们是125MHz、但它们不同步。

    请确认。

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    没问题。

    请参阅图18。 RGMII 连接

    TX 与 GTX_CLK 同步 、RX 与 RX_XLK 同步。

    PHY 和 MAC 使用不同的振荡器源不是问题。

    此致、

    Sreenivasa

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

    Sreenivasa San、您好

    感谢您的即时回复。

    明白。 谢谢你。

    此致、

    Takahashi

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

    Takahashi-San、您好!   

    感谢您的回复。 我将关闭该线程。  

    请根据需要启动新主题帖。

    此致、

    Sreenivasa