MII
MII(Media Independent interface)即介质无关接口,它是IEEE-802.3定义的行业标准,是MAC与PHY之间的接口。MII数据接口包含16个信号和2个管理接口信号,如下图所示:

信号定义如下:


MAC 通过MIIM 接口读取PHY 状态寄存器以得知目前PHY 的状态。例如连接速度、双工的能力等。也可以通过 MIIM设置PHY的寄存器达到控制的目的。例如流控的打开关闭、自协商模式还是强制模式等。MII以4位半字节方式传送数据双向传输,时钟速率25MHz。其工作速率可达100Mb/s。当时钟频率为2.5MHz时,对应速率为10Mb/s。MII接口虽然很灵活但由于信号线太多限制多接口网口的发展,后续又衍生出RMII,SMII等。

RMII
RMII(Reduced Media Independant Interface),精简MII接口,节省了一半的数据线。RMII收发使用2位数据进行传输,收发时钟均采用50MHz时钟源。

信号定义如下:

其中CRS_DV是MII中RX_DV和CRS两个信号的合并,当物理层接收到载波信号后CRS_DV变得有效,将数据发送给RXD。当载波信号消失后,CRS_DV会变为无效。在100M以太网速率中,MAC层每个时钟采样一次RXD[1:0]上的数据,在10M以太网速率中,MAC层每10个时钟采样一次RXD[1:0]上的数据,此时物理层接收的每个数据会在RXD[1:0]保留10个时钟。

GMII
GMII(Gigabit Media Independant Interface),千兆MII接口。GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式。GMII接口数据结构符合IEEE以太网标准,该接口定义见IEEE 802.3-2000。信号定义如下:

RGMII
RGMII(Reduced Gigabit Media Independant Interface),精简GMII接口。相对于GMII相比,RGMII具有如下特征:

  1. 发送/接收数据线由8条改为4条
  2. TX_ER和TX_EN复用,通过TX_CTL传送
  3. RX_ER与RX_DV复用,通过RX_CTL传送
  4. 1 Gbit/s速率下,时钟频率为125MHz
  5. 100 Mbit/s速率下,时钟频率为25MHz
  6. 10 Mbit/s速率下,时钟频率为2.5MHz

    信号定义如下:

    虽然RGMII信号线减半,但TXC/RXC时钟仍为125Mhz,为了达到1000Mbit的传输速率,TXD/RXD信号线在时钟上升沿发送接收GMII接口中的TXD[3:0]/RXD[3:0],在时钟下降沿发送接收TXD[7:4]/RXD[7:4],并且信号TX_CTL反应了TX_EN和TX_ER状态,即在TXC上升沿发送TX_EN,下降沿发送TX_ER,同样的道理试用于RX_CTL。

拓展:
GMAC 信号设计如下:
 避免信号走线穿越电源分割区域,保持信号参考平面完整;
 RGMII 模式下,MAC 的 RXD0~RXD3、RXDV 信号线长度以时钟信号 RXCK 的长度为基准,控制在300mil 以内;MAC 的 TXD0~TXD3、TXEN 信号线长度以时钟信号 TXCKOUT 的长度为基准,控制在300mil 以内;
 RGMII 走线总长不大于 5inch;
 网口 PHY 芯片到变压器的差分信号 MDI0+、MDI0-、MDI1+、MDI1、MDI2+、MDI2-、MDI3+、MDI3-差分线对长度控制在5mil,差分阻抗控制在 100Ω。

MII、RMII、GMII、RGMII接口详解及硬件设计注意事项相关推荐

  1. MII RMII GMII RGMII网口接口调试

    最近一段时间都在调试上述这四种接口的网络接口,使用的是FPGA(microblaze+ethernet),移植xilinx官方的xapp1026的方案,使用了两款PHY芯片,DP83867IR(MII ...

  2. 以太网PHY接口:MII RMII GMII RGMII SGMII

    1. MII/GMII(Gigabit Media Independent Interface) 1.1 MII/GMII signal

  3. 以太网知识-GMII / RGMII接口

    今天和海翎光电的小编一起分析MII/RMII/SMII,以及GMII/RGMII/SGMII接口的信号定义,及相关知识,同时小编也对RJ-45接口进行了总结,分析了在10/100模式下和1000M模式 ...

  4. Java6.0中Comparable接口与Comparator接口详解

    Java6.0中Comparable接口与Comparator接口详解 说到现在,读者应该对Comparable接口有了大概的了解,但是为什么又要有一个Comparator接口呢?难道Java的开发者 ...

  5. 【java8新特性】——lambda表达式与函数式接口详解(一)

    一.简介 java8于2014年发布,相比于java7,java8新增了非常多的特性,如lambda表达式.函数式接口.方法引用.默认方法.新工具(编译工具).Stream API.Date Time ...

  6. html5硬件接口,HTML5通用接口详解

    1.先说几个基本类型: DOMString, boolean, long, unsigned long, double,BmBHTML5中文学习网 - HTML5先行者学习网 NaN(Not-a-Nu ...

  7. Spring使用IOC容器创建对象及ClassPathXmlApplicationContext与FileSystemXmlApplicationContext接口详解

    IOC容器创建对象及接口详解 引言 类的建立 配置文件 IOC创建对象 运行结果 接口详解 (1)接口一`ClassPathXmlApplicationContext` (2)接口二:`FileSys ...

  8. 微信小程序和百度的语音识别接口详解

    介绍 因为项目需要,使用到了微信小程序和百度的语音接口 现在将项目中的一个小模块拿出来单独分享. 技术关键字 微微信小程序 百度语音接口 nodejs,express fluent-ffmegp 环境 ...

  9. RandomAccess接口详解

    RandomAccess接口详解 Interface RandomAccess All Known Implementing Classes: ArrayList, AttributeList, Co ...

  10. 【JavaWeb】Servlet系列——HttpServletRequest接口详解

    文章目录 23 HttpServletRequest接口详解 23.1 关于HttpServletRequest接口 23.2 HttpServletRequest接口的实现类谁写的? HttpSer ...

最新文章

  1. android查看控件的xml属性,006 Android XML 控件属性设置技巧汇总
  2. mysql命令导入导出数据_mysql命令行导入和导出数据
  3. 关于报工和生产订单的一些状态解释
  4. ITK:计算图像的逆FFT
  5. 各个版本spring的jar包以及源码下载地址
  6. java clicked_关于java:JComponents在调用mouseClicked()之后消失
  7. LeetCode 464. 我能赢吗(状态压缩+记忆化递归 / 博弈)
  8. HackRF 无线门铃信号录制与重放
  9. STC51-数码管显示
  10. java的joptionpane空白_java – JOptionPane无法正确显示?
  11. 借助邮件网关,为企业实现节源开流
  12. 绘制直方图的方法大全
  13. python爬取网易云音乐_手把手教你用Python网络爬虫获取网易云音乐歌曲
  14. 飞思卡尔单片机是用c语言写吗,飞思卡尔单片机需要注意的引脚说明
  15. VARCHART XGantt Activex 5.2.095 Crack
  16. java string rt_【Java常用类之String类18】
  17. c语言编程定位的计算机,高校计算机专业C语言教学的四个定位
  18. 如何解决微服务的数据一致性分发问题?
  19. PHP函数array_intersect
  20. mysql explain参数_MySQL命令 Explain参数说明

热门文章

  1. Win7获取目录或文件trustedinstaller权限的方法
  2. 魔兽争霸3-游戏简单剖析 No.2 物品
  3. 矩阵迹的几何意义是什么?
  4. 东芝 rc100 linux,东芝RC100 M.2 NVMe固态硬盘HMB特性解读
  5. 余弦 matlab 幅度谱,数字图像处理_旋转与幅度谱(含MATLAB代码)
  6. Javascript传奇
  7. 磁带机技术的应用解析
  8. 二、电容屏原理(1)
  9. APP安全——反编译分析(反编译、再编译、签名)
  10. java 6面骰子_Java实现的简单掷骰子游戏示例