PHY芯片的使用(一)之基本概念讲解(MDIO)3

1、MDIO概述

        该总线由IEEE通过以太网标准IEEE 802.3的若干条款加以定义。MDIO是一种简单的双线串行接口,将管理器件(如MAC控制器、微处理器)与具备管理功能的收发器(如多端口吉比特以太网收发器或 10GbE XAUI收发器)相连接,从而控制收发器并从收发器收集状态信息。可收集的信息包括链接状态、传输速度与选择、断电、低功率休眠状态、TX/RX模式选择、自动协商控制、环回模式控制等。除了拥有 IEEE 要求的功能之外,收发器厂商还可添加更多的信息收集功能。

        通常phy,它具备符合IEEE802.3u标准22款所规定的标准管理接口,它包含2个管脚:MDC和MDIO。MDC是管理数据的时钟输入,最高速率可达8.3MHz。MDIO是管理数据的输入输出双向接口,数据是与MDC时钟同步的。MDIO的工作流程为:MDIO接口在没有传输数据的空闲状态(IDLE)数据线MDIO处于高阻态。 MDIO出现一个2bit的开始标识码(01)一个读/写操作开始。 MDIO出现一个2bit数据来标识是读操作(10)还是写操作(01)。 MDIO出现一个5bit数据标识PHY的地址。 MDIO出现一个5bitPHY寄存器地址。 MDIO需要2个时钟的访问时间。 MDIO串行读出/写入16bit的寄存器数据。 MDIO恢复成IDLE状态,同时MDIO进入高阻状态。

       2、使用心得

       一个简单的两线串行接口,一根MDIO数据线,一根MDC时钟线。驱动程序可以通过 MDIO 和MDC 这两根线访问PHY芯片的任意一个寄存器。一个MDIO接口理论可外挂管理32个PHY芯片。在有条件通常情况使用一个MDIO管理一个PHY,这样可避免一些开发错误(尤其是在需要使用PHY厂商额外寄存器的时候)。

       IEEE802.3协议对PHY的前16个寄存器功能进行了规定,PHY须遵循这些规定。因此理论分析PHY的通用驱动都可正常初始化。通过对一些PHY芯片linux驱动观察,如下图两个国产芯片为例,只有针对对应PHY特殊寄存器的配置是厂商添加config额外配置(看了这两个函数,都对其延时值做了相关配置),其他接口函数均使用通用驱动即可。

PHY寄存器0和1是比较关键的,在板卡调试初期可根据相关寄存器的状态来排查问题。PHY硬件复位管脚最好上电根据手册参数复位一次(重要)。

寄存器中有一种寄存器叫页寄存器,通过配置该寄存器可切换不同的页,在切换页寄存后相应操作结束最好切回0页。在linux使用中发现,内核会周期通过MDIO读取link状态,笔者在linux shell中使用mdio命令切换页去读其他寄存器,系统会打印link down。切回0页后以太网正常。(这点也是值得注意的地方)

更快判断link up状态:通常在1寄存器的bit2可读网络状态,10M、100M可迅速响应。但1000M状态下响应很慢。对网口双冗余切换造成影响。(若有兴趣可私聊沟通)

       3、小结

最后想说一下,PHY的地址要根据手册配死,不要吧地址接到端口不确定的IO上,可能会出现初始化不成功或后期使用出问题。回环模式排查故障也是高效的方式。

希望大家多交流!

  • 78
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 67
    评论
瑞昱(Realtek)是一家专业的集成电路设计与生产公司,其产品涵盖了广泛的领域,包括通信、嵌入式系统、多媒体和网络等。在这些领域中,瑞昱使用phy芯片来实现不同的功能。 phy芯片是物理层接口芯片的简称,它主要用于将数字信号转换为模拟信号,或将模拟信号转换为数字信号。在通信领域中,phy芯片通常用于实现各种接口标准,如以太网、USB、HDMI等。它们能够将数字数据转换为适合传输的模拟信号,并确保数据的稳定传输。 在网络领域中,瑞昱的phy芯片被广泛应用于以太网交换机、路由器等设备中。这些芯片能够实现高速数据传输和接收,确保网络的稳定性和可靠性。此外,瑞昱的phy芯片还具有低功耗和高集成度的特点,使得设备具有更好的能源效率和更小的体积。 在嵌入式系统领域,phy芯片也是非常重要的组成部分。它们能够实现不同外设与主控芯片的连接,如LCD显示屏、摄像头、触摸屏等。通过使用phy芯片,这些外设可以与主控芯片进行高效的数据传输,从而提高整个系统的性能和稳定性。 瑞昱不仅提供phy芯片的设计与生产,还提供相关的驱动程序和技术支持。他们的phy芯片广泛应用于各种消费电子产品和工业设备中,包括计算机、手机、电视、汽车等。通过持续的创新和优化,瑞昱的phy芯片能够提供更高的数据传输速度、更低的功耗和更好的兼容性,满足不同领域的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 67
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比特流1024

1毛也是支持也是爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值