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.

[参考译文] DP83869HM:DP83869HM:如何使用 MII 模式

Guru**** 2451970 points
Other Parts Discussed in Thread: DP83869HM

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/934196/dp83869hm-dp83869hm-how-to-use-mii-mode

器件型号:DP83869HM
主题中讨论的其他器件: DP83869

大家好、

我们希望 DP83869HM  在 MII 模式下以铜 模式工作。但我们没有成功、RJ45仍然没有连接。

我们想知道如何使用 MII 模式? 或者 如何配置 MII 到 铜的自举连接电阻器?

寄存器设置 ,如下所示

OP_MODE_DECODE (地址= 0x1DF)---- >将0x0060写入0x1DF (OP_MODE_DECODE )

BMCR (地址= 0x0)------------------------------------------------------- >将0x2100写入0x00(BMCR)

Gen_CFG1寄存器(地址= 0x9)--- >将0x1000写入0x09 (GEN_CFG1)。

此致、

Johnny

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

    您好、Johnny、  

    请确保在将器件的 MII 配置为 Copper 模式后包含软件重启。 在寄存器完成后、写入寄存器0x001F=0x4000以将器件设置为适当的模式。

    此致、
    Justin  

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

    您好 Justin、  

    我们尝试写入寄存器0x001F = 0x4000、但 未成功。 在 wirte 0x1F = 0x4000后,读取寄存器0x1F,值:0x1F = 0x0000。  和包括写入寄存器0x001F=0x8000 仍然不成功。

    我们发现我们可以将0x0001写入0x1F。

    从寄存器读回、如下所示

    BMCR (0x00):2100

    BMSR (0x01):7949

    PHYIDR1 (0x02):2000

         PHYIDR2 (0x03):A0F1

         Anar (0x04):0181

        Gen_CFG1 (0x09):1000

        PHY_STATUS (0x11):6802

        OP_MODE_DECODE (0x01DF):0060

    此致、

    Johnny

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

    您好、Johnny、

    写入0x001F=4000后、该寄存器将启动软件重新启动、并在完成重新启动后读取0x001F=0x0000、这是预期的。  

    完成此操作后、器件将处于 MII 至铜线模式。 如果在 MDI 上连接时仍然遇到问题、则可能是进入 MII 到 Copper 模式的单独问题。  

    此致、
    Justin  

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

    您好 Justin、

    写入0x001F=4000后、读取寄存器(0x1F)的值 为0x00、这不是问题、  但 RJ45仍然没有链接。

    另一个问题是写入0x01DF = 0x0060、读取寄存器0x6E = 0x20A6后。

    为了      使用 MII、我们将 OP_MODE_DED (0x1DF)位(位5)设置为1     、但自举_STS 寄存器(地址= 0x6E)位(位0)仍然为0。

    如何配置 电阻器以将 MII 设置为铜 质或使 RJ45连接?

    根据数据表:

    (1)

    (2)

    此致、

    Johnny

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

    您好 Justin、

    我们还想知道如何确保  在写入 0x001F=4000后软件重新启动成功?

    只读0x001F=0x0000可以确保 软件重新启动 成功吗?

    此致、

    Johnny

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

    您好、Johnny、

    是的、没错。

    此致、
    Justin  

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

    您好 Justin、

    如何配置 电阻器以将 MII 设置为铜 质或使 RJ45连接 ?

    我应该如何执行 下一步?  

    这个问题困扰了我好几天。

    我正在等待您的回复

    此致、

    Johnny

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

    您好、Johnny、  

    您能否分享您在此应用中使用的原理图并描述您用于链接的链接伙伴和功能?

    我建议执行模拟或数字回送测试、以验证 PHY 和 MAC 之间的 MII 接口。

    此致、
    Justin  

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

    您好 Justin、

    以下是我们的原理图:

    我们还尝试进行 MII 回送测试。 我们会回来的。

    此致、

    Johnny

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

    您好、Johnny、  

    请检查寄存器0x6E、并验证您要定位的设置是否反映在此寄存器中被启用。 您似乎已启用镜像模式(RX_CTRL 拉高)、并在 LED_0、LED_1、LED_2上强制采用100M MDI 模式。 LED 2是否通过 R13上拉为高电平并连接到 RJ45下拉电阻器 R20? 请确认 LED_2是否正确捆绑。

    此致、
    Justin  

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

    您好 Justin、  

    “LED2/nINTSEL” 和“LED2” 不是同一个网络。  

    寄存器0X006E = 0X20A6

    寄存器0x0009 = 6802

    RGMII/SGMII 至铜的自举

    此致、

    Johnny

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

    您好 Justin、  

    “LED2/nINTSEL” 和“LED2” 不是同一个网络。  

    寄存器0X006E = 0X20A6

    寄存器0x0009 = 6802

    RGMII/SGMII 至铜的自举

    此致、

    Johnny

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

    您好 Justin、

    "LED2/nINTSET"  和 "LED2" 是不同的网络。

    寄存器0x006E = 0x20A6
    寄存器0x0011 = 0x6802

    另一个寄存器值:

    BMCR (0x00):2100
    Anar (0x04):0001
    Gen_CFG1 (0x09):1000
    PHY_STATUS (0x11):6802

    根据 SNLA318:

    通过将寄存器 CTRL (0x01DF)的位5设置为1来完成 MII 到铜的配置。  
    我们尝试这样做(将0x0060写入寄存器0x1DF),但 读回寄存器的值(0x006E = 0x20A6)。
    我们所做的事情有什么问题。
    此致、
    Johnny
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Johnny、

    寄存器0x006E 反映了在上电和复位期间锁存在自举设置中的值。 更新的寄存器0x01DF 不会更新寄存器0x006E。 要确认您处于 MII 模式、应更新寄存器0x1DF。 您还可以执行模拟或数字回送以确认 MAC 数据传输可以通过 MAC 接口进行。  

    您能否描述您用于此测试的链接合作伙伴? 它是相同的 DP83869板还是其他板?

    此致、
    Justin  

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

    您好 Justin、

    我们已经 执行 MII_Loopback、Analog _Loopback 和数字回送来验证通信

    和板上的 PHY 之间的通信。  在 Analog _Loopback 和数字环回 模式之前、数据不会环回。  

    MII 环回正常。 我们可以在 TX_D1~TX_D4  RX_D1~RX_D4 .Pins 上获取数据

     下一步我们将做什么?  

    此致、

    Johnny

     

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

    您好、Johnny、

    我想确认所有 MII、数字和模拟回路模式显示的数据都是环回 MAC 的?  

    您使用什么链接伙伴与 DP83869建立链接? 您是否确认使用的是 MDI (交叉)电缆而不是 MDIX (直线)电缆?  

    您是否还可以在尝试建立链路的状态下共享0x0000-0x001F 的寄存器信息?

    此致、
    Justin  

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

    您好 Justin、

    (1)只有 MII 回送模式可以将数据回送至 MAC、但 数字回送和模拟回送  不能。

    在 MII 环回模式 测试中、我们可以 看到它 使用  示波器发送和接收封装。 但另一种模式没有。

    我们是否需要配置更多的寄存器?

    (2)我们已将铜缆接口的自 协商带更改为"广告中的1000/100/10自动 MDI-X"。

    电流 设置配置如下:

    RX_D2、RX_D3和 JTAG_TDO (2:0)= 000 (默认值)。

    LED [2:0]= 000 - 自动协商、已通告1000/100/10、自动 MDI-X

    (3) 我们将 XMOS 与电路板上的 DP83869HM 搭配使用。 我们要设置 MII 到铜线模式。

    我们的运营:

    resst chip-->读取 某些寄存器-->等待 phy 掉电--> 将0x0060写入寄存器0x01DF---> 软件重启-->将0x2100 wirte 0x2100写入寄存器0x00 -->读取0x00~0x1F 寄存器-->环回 Seting

    以下是寄存器数据:

    PHY_ADDRESS:0x0A BMCR (0x00):              2100

    PHY_ADDRESS:0x0A BMSR (0x01):              6149

    PHY_ADDRESS:0x0A PHYIDR1 (0x02):           2000年

    PHY_ADDRESS:0x0A PHYIDR2 (0x03):            A0F1

    PHY_ADDRESS:0x0A ANAR (0x04):              0000

    PHY_ADDRESS:0x0A ALNPAR (0x05):            0000

    PHY_ADDRESS:0x0A ANER (0x06):              0000

    PHY_ADDRESS:0x0A ANNPTR (0x07):            2001年

    PHY_ADDRESS:0x0A ANLNPTR (0x08):           0000

    PHY_ADDRESS:0x0A GEN_CFG1 (0x09):          0300

    PHY_ADDRESS:0x0A GEN_STATUS1 (0x0A):       0000

    PHY_ADDRESS:0x0A REGCR (0x0D):             401F

    PHY_ADDRESS:0x0A 加法(0x0E):             20A0

    PHY_ADDRESS:0x0A 1KSCR (0x0F):             F000

    PHY_ADDRESS:0x0A PHY_CONTROL (0x10):      5048

    PHY_ADDRESS:0x0A PHY_STATUS (0x11):        0002.

    PHY_ADDRESS:0x0A INTERRUPT_MASK (0x12):  0000

    PHY_ADDRESS:0x0A INTERRUPT_STATUS (0x13):0000

    PHY_ADDRESS:0x0A GEN_CFG2 (0x14):          29C7

    PHY_ADDRESS:0x0A RX_ERR_CNT (0x15):        0000

    PHY_ADDRESS:0x0A BIST_CONTROL (0x16):      0000

    PHY_ADDRESS:0x0A GEN_STATUS2 (0x17):       0040.

    PHY_ADDRESS:0x0A LEDS_CFG1 (0x18):          6150

    PHY_ADDRESS:0x0A LEDS_CFG2 (0x05):          4444.

    PHY_ADDRESS:0x0A LEDS_CFG3 (0x1A):          0002.

    PHY_ADDRESS:0x0A ALNPAR (0x1E):             0012.

    PHY_ADDRESS:0x0A ALNPAR (0x1F):             0000

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

    您好、Johnny、  

    您已经通过设置设置器件进行自动协商、然后通过寄存器禁用自动协商(0x0000=0x2100将强制器件进入100M 速度、不允许自动协商)。 您是否正在尝试通过自动协商建立链路、或者链路伙伴也已强制进入100M 模式?

    对于数字和模拟回路、请确认您仅将寄存器0x0016设置为所需模式。 寄存器0x0000中的 MII 环回不应在其他环回模式中启用。 您能否提供环回设置?

    此致、
    Justin  

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

    您好 Justin、

    我们删除了这一行代码。(将0x2100写入寄存器0x00)、只 需保留  自举设置、如下所示:

    RX_D2、RX_D3和 JTAG_TDO (2:0)= 000 (默认值)。

    LED [2:0]= 000 - 自动协商、已通告1000/100/10、自动 MDI-X

    2.set MII 环回模式:

    根据 slls614A 数据表 、9.3.4.1.1 MII 环回

    '在100Base-TX 模式中、在 MII 环回通过寄存器0x00启用后、需要将0x0004写入寄存器0x16、以便 MII 环回正常运行。'

    我们只需将 寄存器0x00的位14设置 为1、 并将0x0004写入寄存器0x16。 测试结果成功。

    以下是寄存器数据:

    --MII 回送模式

    PHY_ADDRESS:0x0A BMCR (0x00):4140
    PHY_ADDRESS:0x0A BMSR (0x01):6149
    PHY_ADDRESS:0x0A PHYIDR1 (0x02):2000
    PHY_ADDRESS:0x0A PHYIDR2 (0x03):A0F1
    PHY_ADDRESS:0x0A ANAR (0x04):0000
    PHY_ADDRESS:0x0A ALNPAR (0x05):0000

    PHY_ADDRESS:0x0A ANER (0x06):0000
    PHY_ADDRESS:0x0A ANNPTR (0x07):2001
    PHY_ADDRESS:0x0A ANLNPTR (0x08):0000
    PHY_ADDRESS:0x0A GEN_CFG1 (0x09):0000
    PHY_ADDRESS:0x0A GEN_STATUS1 (0x0A):4000

    PHY_ADDRESS:0x0A REGCR (0x0D):401F
    PHY_ADDRESS:0x0A 加法(0x0E):20A0
    PHY_ADDRESS:0x0A 1KSCR (0x0F):F000
    PHY_ADDRESS:0x0A PHY_CONTROL (0x10):5048
    PHY_ADDRESS:0x0A PHY_STATUS (0x11):0002

    PHY_ADDRESS:0x0A INTERRUPT_MASK (0x12):0000
    PHY_ADDRESS:0x0A INTERRUPT_STATUS (0x13):0000
    PHY_ADDRESS:0x0A GEN_CFG2 (0x14):29C7
    PHY_ADDRESS:0x0A RX_ERR_CNT (0x15):0000
    PHY_ADDRESS:0x0A BIST_CONTROL (0x16):0004

    PHY_ADDRESS:0x0A GEN_STATUS2 (0x17):0040
    PHY_ADDRESS:0x0A LEDS_CFG1 (0x18):6150
    PHY_ADDRESS:0x0A LEDS_CFG2 (0x05):4444
    PHY_ADDRESS:0x0A LEDS_CFG3 (0x1A):0002
    PHY_ADDRESS:0x0A ALNPAR (0x1E):0012
    PHY_ADDRESS:0x0A ALNPAR (0x1F):0000

    3.set Digitial and Analog loopback mode (数字和模拟回送模式): 我们只需将0x0008写入寄存器0x16或将0x0004写入寄存器0x16。但测试结果不成功。

    这是正确的方法吗?

    以下是寄存器数据:

    --Digitial 环回模式或  模拟环回模式  

    PHY_ADDRESS:0x0A BMCR (0x00):0140
    PHY_ADDRESS:0x0A BMSR (0x01):6149
    PHY_ADDRESS:0x0A PHYIDR1 (0x02):2000
    PHY_ADDRESS:0x0A PHYIDR2 (0x03):A0F1
    PHY_ADDRESS:0x0A ANAR (0x04):0000
    PHY_ADDRESS:0x0A ALNPAR (0x05):0000

    PHY_ADDRESS:0x0A ANER (0x06):0000
    PHY_ADDRESS:0x0A ANNPTR (0x07):2001
    PHY_ADDRESS:0x0A ANLNPTR (0x08):0000
    PHY_ADDRESS:0x0A GEN_CFG1 (0x09):0000
    PHY_ADDRESS:0x0A GEN_STATUS1 (0x0A):4000

    PHY_ADDRESS:0x0A REGCR (0x0D):401F
    PHY_ADDRESS:0x0A 加法(0x0E):20A0
    PHY_ADDRESS:0x0A 1KSCR (0x0F):F000
    PHY_ADDRESS:0x0A PHY_CONTROL (0x10):5048
    PHY_ADDRESS:0x0A PHY_STATUS (0x11):0002

    PHY_ADDRESS:0x0A INTERRUPT_MASK (0x12):0000
    PHY_ADDRESS:0x0A INTERRUPT_STATUS (0x13):0000
    PHY_ADDRESS:0x0A GEN_CFG2 (0x14):29C7
    PHY_ADDRESS:0x0A RX_ERR_CNT (0x15):0000
    PHY_ADDRESS:0x0A BIST_CONTROL (0x16):0004

    PHY_ADDRESS:0x0A GEN_STATUS2 (0x17):0040
    PHY_ADDRESS:0x0A LEDS_CFG1 (0x18):6150
    PHY_ADDRESS:0x0A LEDS_CFG2 (0x05):4444
    PHY_ADDRESS:0x0A LEDS_CFG3 (0x1A):0002
    PHY_ADDRESS:0x0A ALNPAR (0x1E):0012
    PHY_ADDRESS:0x0A ALNPAR (0x1F):0000

    此致、

    Johnny

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

    您好、Johnny、

    MII 和模拟/数字回路的配置正确。 在模拟/数字回路模式中、寄存器0x0000[12]中禁用自动协商。 您能否确认设置是否正确并为环回模式和正常运行提供寄存器0x006E 数据?

    此致、
    Justin  

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

    您好 Justin、

    我们通过在 "LED [2:0]= 000 - 自动协商、已广播1000/100/10、自动 MDI-X"之间更改不同的模式来运行多个测试。  和 " LED [2:0]=111 - 强制100M、全双工、MDI-X 模式"

    我们   已经运行了一些测试、  并且在 MII 环回、数字环回和模拟环回模式中获得了一致的答案。 所有测试的值都是 0x006E = 0x20AE。

    在我们的测试中,MII 回送和数字回送 已经成功,但  模拟回送 仍然失败。

     此致、
    Johnny

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

    您好、Johnny、  

    在模拟回送模式下、您能否确认 PHY 的 MDI 引脚是否正确端接? RJ45连接器处应该有100 Ω 差分端接(这可以是 TD_P 和 TD_M 之间的100 Ω 电阻器、也可以是存在连接伙伴的另一个 PHY)。

    此致、
    Justin  

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

    您好 Justin、

    我们 已经运行了一些测试 、 并再次检查 详细信息  是否正确 。  然后 我们无意 中发现电缆松动了、因此我们运行了 测试 aggin。 最后  ,模拟回送成功。然后 我们只运行 ICMP 演示 ,但 无法成功 ping IP 。  该寄存器0x11= 0x6B02 (位10 为0,链路断开)。  

     这个问题是什么?

    此致、

    Johnny

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

    您好、Johnny、

    我很高兴我们已解决 MII 问题、并确认您处于正确的 MAC 模式。  

    请描述您用来建立链接的链接伙伴。 您使用的是自动协商还是强制速度? 尝试建立链接时、请共享寄存器设置0x0000-0x0011。

    此致、
    Justin  

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

    您好、Jutin、

    首先,感谢您的所有回复。 这些 确实对我有很大帮助。

    然后,我们使用  强制速度模式进行 ICMP 测试。

     我们刚刚使用 电缆将电路板连接到交换机。使用另一根电缆 将 我们的计算机连接到交换机。 但我们无法成功 ping 通 IP。

    寄存器值:

    PHY_ADDRESS:0x0A 自举_STS (0x6E):20AE
    PHY_ADDRESS:0x0A BMCR (0x00):2100
    PHY_ADDRESS:0x0A BMSR (0x01):7949
    PHY_ADDRESS:0x0A PHYIDR1 (0x02):2000
    PHY_ADDRESS:0x0A PHYIDR2 (0x03):A0F1
    PHY_ADDRESS:0x0A ANAR (0x04):0181

    PHY_ADDRESS:0x0A ALNPAR (0x05):0000
    PHY_ADDRESS:0x0A ANER (0x06):0064
    PHY_ADDRESS:0x0A ANNPTR (0x07):2001
    PHY_ADDRESS:0x0A ANLNPTR (0x08):0000
    PHY_ADDRESS:0x0A GEN_CFG1 (0x09):1000
    PHY_ADDRESS:0x0A GEN_STATUS1 (0x0A):0000

    PHY_ADDRESS:0x0A REGCR (0x0D):401F
    PHY_ADDRESS:0x0A 加法(0x0E):20AE
    PHY_ADDRESS:0x0A 1KSCR (0x0F):F000
    PHY_ADDRESS:0x0A PHY_CONTROL (0x10):5028
    PHY_ADDRESS:0x0A PHY_STATUS (0x11):6B02

    此致、

    Johnny

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

    您好、Johnny、

    您能否验证您的电缆和链路伙伴是否期望在 MDI 模式下获得信号、而不是 MDIX。 在强制模式下、这是一个需要验证的东西。

    要尝试的另外两项测试:

    1. 在寄存器0x0009[11]中将 DP83869从从模式更改为主模式。 对于主控模式、将此设置为"1"。  
    2. 您的交换机和 PC 是否支持自动协商? 是否可以在启用自动协商的情况下进行测试?  

    此致、

    Justin