http://xiaominwzj.blog.163.com/blog/static/24192202220153201132715/

MDIO接口,MAC与PHY间的管理接口(MII是数据接口),有2根线:时钟线MDC,数据线MDIO(双向)

MDIO工作流程:

1、Preamle(PRE):在没有传输数据的空闲状态时,数据线MDIO处于高阻态(一直为1)。 
2、Start of Frame(ST):MAC驱动MDIO线,出现一个2bit的开始标识码(01)。 
3、Operation Code(OP):MAC驱动MDIO线,出现一个2bit数据来标识是读操作(10)还是写操作(01)。 
4、PHY Address(PHYAD):MAC驱动MDIO线,出现一个5bit数据标识PHY的地址。 
5、Reg Address(REGAD):AC驱动MDIO线,出现一个5bitPHY寄存器地址。 
6、Turnaround(TA):写操作的话,MAC驱动MDIO线,出现10,读操作的话,
MDIO pin of MAC must be put in high-impedance state,第二个周期,PHY驱动MDIO线,出现0; 
7、Data:MDIO串行读出/写入16bit的寄存器数据。 
8、MDIO恢复成空闲状态,同时MDIO进入高阻状态。
MDIO总线容易弄错的地方
       MDIO不像I2C总线数据总是在时钟下降沿变化。MDIO在802.3标准里面定义。标准没有要求数据在时钟的哪个沿变化,但是在PHY驱动MDIO总线时要求MDIO必须在MDC上升沿后0~300ns内发生变化。这就隐含了PHY在MDC的上升沿时打出数据。所以在MAC通过MDIO读PHY信息时,前面MAC驱动MDIO部分是在MDC下降沿打出数据,后面PHY驱动MDIO部分是在MDC上升沿打出数据。  
        还有一个容易引起误解的问题是由MAC转向PHY驱动MDIO时的TA阶段,也叫Turn Around阶段。这部分时序比较特殊。在写操作时,MAC始终驱动MDIO,TA阶段是完整的两个时钟周期,并且都是MDC下降沿时MDIO发生变化。但是在读操作时,由于涉及到驱动源切换,TA阶段就不是完整的两个时钟周期。严格来说,读时TA是一个半时钟周期。开始时PHY一直输出高阻,MAC驱动MDIO在MDC下降沿变化直到最后一个周期,即REGAD最低位那个周期的MDC下降沿,MAC的MDIO输出高阻。然后MDIO总线进入TA阶段。MAC输出高阻一直到整个读操作结束,PHY在进入TA阶段的半个周期后,也就是在TA阶段的第一个MDC上升沿时把MDIO拉低,并持续一个周期,TA阶段结束。 下图标明了读操作时MAC和PHY的输出状态。 

       由上述分析可知,看一个完整的MDIO波形图,如果MDIO都是在MDC下降沿变化,那么就是写。如果MDIO先在MDC下降沿变化,再在上升沿变化,那么就是读。MDIO第一次从MDC下降上升到高电平,半周期后在MDC上升沿变低,这个过程就是TA的前半个周期。此后一个周期是TA的最后一个周期,往后就是读到的数据了。

MDIO/MDC接口相关推荐

  1. 了解与MDIO/MDC接口相关的22号、45号条款

    MDIO接口 SMI:串行管理接口(Serial Management Interface),也被称作MII管理接口(MII Management Interface),包括MDC和MDIO两条信号线 ...

  2. SMI(MDC/MDIO)总线接口介绍

    1. MDIO接口 SMI:串行管理接口(Serial Management Interface),也被称作MII管理接口(MII Management Interface),包括MDC和MDIO两条 ...

  3. Ambarella Ethernet PHY rtl9000 Linux driver 调试

    Ambarella Ethernet PHY rtl9000 Linux driver 调试 记录在ambarella CV22平台 调试rtl9000 phy驱动. rtl9000 工作原理 如图, ...

  4. cubemx lan8720模块_STM32CubeMX + LWIP---无操作系统以太网实现

    硬件平台:正点原子阿波罗F429 软件工具:STM32CubeMX 5.6.0 开发IDE: SW4STM32 参考博客:https://blog.csdn.net/u013809244/articl ...

  5. 【PHY】关于学习以太网PHY的这件事情

    概述: 由于近期要使用以太网PHY芯片,于是在网上查找各种资料,学习这部分的知识,这篇文章是对当前的学习做一个汇总.因为这部分的知识很多,所以只是做一个整体的概要总结,具体的知识点无法详细展开,作者目 ...

  6. SMI接口,SMI帧结构,MDC/MDIO

    SMI全称是串行管理接口(Serial Management Interface).是MII接口中的管理接口. SMI 接口包括两根信号线:MDC和MDIO,通过它,MAC层芯片(或其它控制芯片)可以 ...

  7. MII/MDIO接口详解(转)

    Original Address:http://dpinglee.blog.163.com/blog/static/144097753201041131115262/ 本文主要分析MII/RMII/S ...

  8. 以太网接口MII,RMII,SMII,GMII总线接口简介

    以太网接口MII,RMII,SMII,GMII总线接口简介 所有的这些接口都从MII而来,MII是(MediumIndependent Interface)的意思,是指不用考虑媒体是铜轴.光纤.电缆等 ...

  9. (二)再议MII、RMII、GMII接口

    概述:         MII (Media Independent Interface(介质无关接口)或称为媒体独立接口,它是IEEE-802.3定义的以太网行业标准.它包括一个数据接口和一个MAC ...

最新文章

  1. SSPL的MongoDB再被抛弃,GUN Health也合流PostgreSQL
  2. ssm拼接html,SSM前后端分离 ssm+html+js(ajax) 这种controll层的返回值是结合或者网址...
  3. 10字符串及整数操作符
  4. listen(int fd, int backlog)中的backlog含义
  5. Python学习6 字典基础知识和常用函数
  6. 项目宝提供的服务器,开源WebSocket服务器项目宝贝鱼CshBBrain V4.0.1 和 V2.0.2发布
  7. 关羽第三方证书导入的CASE
  8. 疑似OPPO Find X2外观专利曝光:月亮形相机模组亮了
  9. 数据结构:栈的了解与示例(逆波兰表达式)
  10. 多人脸检测matlab程序,基于肤色的人脸检测matlab代码
  11. shiro filter
  12. 18、Windows API 图形用户界面(2)
  13. 数据库的点数据根据行政区shp来进行行政区处理,python定时器实现
  14. abb880/580驱动程序,zmu程序图纸571/592/792需要
  15. 华为路由器配置SSH认证登陆教程
  16. mysql-connector-java连接失败问题
  17. 高端游戏计算机配置,高端电脑:万元游戏主机配置推荐,从此告别卡顿!
  18. CSAPP Lab2 实验记录 ---- Bomb Lab(Phase 1 - Phase 6详细解答 + Secret Phase彩蛋解析)
  19. bootstrap table获取表格数据方式
  20. python豆瓣mysql_Python3.5爬取豆瓣电视剧数据并且同步到mysql中

热门文章

  1. 华为防火墙ftp_华为防火墙如何配置ftp服务器映射到外网
  2. 消防工程师 第二篇 建筑防火 6.1 安全疏散
  3. Java实现发邮件功能
  4. STL之容器stack
  5. 【c++基础】第五章 RALL机制与智能指针
  6. linux安装cacti
  7. Java 中j+=i 和 j=+i 的区别
  8. Python爬取微信公众号素材库
  9. C 头歌 字符串插入
  10. DIV display visibility