最近在学习以太网,了解到各种各样的以太网媒体接口:MII、RMII、SMII、GMII等等,有点乱,于是抽空理一下:

MII

MII,即Media Independent Interface,翻译过来就是介质无关接口,也可以叫做媒体独立接口,是IEEE-802.3定义的以太网行业标准。“媒体独立"的意思就是指不用考虑媒体是铜轴、光纤、电缆等,因为这些媒体处理的相关工作都有PHY或者叫做MAC的芯片完成。

它包括一个数据接口,以及一个MAC和PHY之间的管理接口。数据接口包括分别用于发送器和接收器的两条独立信道。每条信道都有自己的数据、时钟和控制信号。数据接口总共需要16个信号。MII以4位半字节方式传送数据双向传输,时钟速率25MHz,工作速率可达100Mb/s。

MII管理接口是个双信号接口,一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY。其管理是使用SMI(Serial Management Interface)总线通过读写PHY的寄存器来完成的。PHY里面的部分寄存器是IEEE定义的,这样PHY把自己的目前的状态反映到寄存器里面,MAC通过SMI总线不断的读取PHY的状态寄存器,以得知目前PHY的状态,例如连接速度,双工的能力等。当然也可以通过SMI设置PHY的寄存器达到控制的目的,例如流控的打开关闭,自协商模式还是强制模式等。不论是物理连接的MII总线和SMI总线还是PHY的状态寄存器和控制寄存器都是有IEEE的规范的,因此不同公司的MAC和PHY一样可以协调工作,当然为了配合不同公司的PHY的自己特有的一些功能,驱动需要做相应的修改。

MII支持10兆和100兆的操作,一个接口由14根线组成,它的支持还是比较灵活的,但是有一个缺点是因为它一个端口用的信号线太多,如果一个8端口的交换机要用到112根线,16端口就要用到224根线,到32端口的话就要用到448根线,一般按照这个接口做交换机,是不太现实的,所以现代的交换机的制作都会用到其它的一些从MII简化出来的标准,比如RMII、SMII、GMII等。

RMII

RMII,Reduced Media Independant Interface,简化版的MII接口,信号线数量由MII的14根减少为7根,所以它一般要求是50兆的总线时钟。

RMII一般用在多端口的交换机,它不是每个端口安排收、发两个时钟,而是所有的数据端口公用一个时钟用于所有端口的收发,这里就节省了不少的端口数目。RMII的一个端口要求7个数据线,比MII少了一倍,所以交换机能够接入多一倍数据的端口。和MII一样,RMII支持10兆和100兆的总线接口速度。

SMII

SMII,即Serial MII,S表示串行的意思,是由思科提出的一种媒体接口,它有比RMII更少的信号线数目。因为它只用一根信号线传送发送数据,一根信号线传输接受数据,所以在时钟上为了满足100的需求,它的时钟频率很高, 达到了125兆,为什么用125兆,是因为数据线里面会传送一些控制信息。

SMII一个端口仅用4根信号线完成100信号的传输,比起RMII差不多又少了一倍的信号线。SMII在工业界的支持力度是很高的。同理,所有端口的数据收发都公用同一个外部的125M时钟。

SSMII

SSMII,即Serial Sync MII,叫串行同步接口,跟SMII接口很类似,只是收发使用独立的参考时钟和同步时钟,不再像SMII那样收发共用参考时钟和同步时钟,传输距离比SMII更远。

SSSMII

SSSMII,即Source Sync Serial MII,叫源同步串行MII接口,SSSMII与SSMII的区别在于参考时钟和同步时钟的方向,SSMII的TX/RX参考时钟和同步时钟都是由PHY芯片提供的,而SSSMII的TX参考时钟和同步时钟是由MAC芯片提供的,RX参考时钟和同步时钟是由PHY芯片提供的,所以顾名思义叫源同步串行。

GMII

GMII,Gigabit MII,是千兆网的MII接口,这个也有相应的RGMII接口,表示简化了的GMII接口。

GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。

同时兼容MII所规定的10/100 Mbps工作方式。

RGMII

RGMII,即Reduced GMII,是RGMII的简化版本,将接口信号线数量从24根减少到14根,时钟频率仍旧为125MHz,TX/RX数据宽度从8为变为4位,为了保持1000Mbps的传输速率不变,RGMII接口在时钟的上升沿和下降沿都采样数据。

RGMI同时也兼容100Mbps和10Mbps两种速率,此时参考时钟速率分别为25MHz和2.5MHz。

SGMII

SGMII,即Serial GMII,串行GMII,收发各一对差分信号线,时钟频率625MHz,在时钟信号的上升沿和下降沿均采样,参考时钟RX_CLK由PHY提供,是可选的,主要用于MAC侧没有时钟的情况,一般情况下,RX_CLK不使用。收发都可以从数据中恢复出时钟。

在TXD发送的串行数据中,每8比特数据会插入TX_EN/TX_ER 两比特控制信息,同样,在RXD接收数据中,每8比特数据会插入RX_DV/RX_ER 两比特控制信息,所以总的数据速率为1.25Gbps=625Mbps*2。

浅聊一下各类以太网媒体接口MII/RMII/SMII/GMII/RGMII/SGMII相关推荐

  1. MII,RMII,SMII,GMII,RGMII,SGMII接口定义 和 MDIO接口定义

    一.MII,RMII,SMII,GMII,RGMII,SGMII接口定义一览表 1.1 MII接口连接示意图 1.2 RMII接口连接示意图 1.3 SMII接口连接示意图 1.4 GMII接口连接示 ...

  2. MII,RMII,SMII,GMII,RGMII,SGMII

    玩嵌入的同门不论是硬件还是软件,都应该了解 MII,RMII,SMII,GMII,RGMII,SGMII的区别:自己整理了一下,供参考 简单讲这些接口是用于连接MAC和PHY的.

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

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

  4. GMII,RGMII,SGMII,TBI,RTBI接口信号及时序介绍

    GMII,RGMII,SGMII,TBI,RTBI接口信号及时序介绍 千兆以太网MII接口类型主要有GMII.RGMII.SGMII.TBI和RTBI 五种 GMII接(如下图): 与MII接口相比, ...

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

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

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

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

  7. MII,RMII,GMII接口详细介绍

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

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

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

  9. 关于MII、RMII、GMII、RGMII、PHY、网络变压器、RJ45的硬件总结

    文章目录 前言 一.网络传输结构及原理 1.网络传输原理 2.TCP/IP协议 3.数据链路层(MAC) 二.介质独立接口MII,RMII,GMII,RGMII 1.MII(Media Indepen ...

最新文章

  1. C#设置当前程序通过IE代理服务器上网
  2. C语言数组只会输出两个!_只愿与一人十指紧扣_新浪博客
  3. 迄今为止程序员写过的最大Bug:亏损30亿、致6人死亡,甚至差点毁灭世界
  4. 根据时间点截取wav文件
  5. 开源:Angularjs示例--Sonar中项目使用语言分布图(CoffeeScript版)
  6. bootstrap4 调整元素之间距离
  7. Three.js中使用材质覆盖属性
  8. 做了表分区以后的数据库表,在使用程序进行修改操作时报异常。
  9. 使用DOM解析常用方法
  10. 下学期第三次作业——SQA计划和验收测试规程设计
  11. luogu P2018 消息传递
  12. Seata分布式事务问题由来---微服务升级_SpringCloud Alibaba工作笔记0056
  13. 论文笔记--跨媒体语义共享子空间学习理论与方法研究-2015
  14. POJ3349 Snowflake Snow Snowflakes(hash)
  15. 02-橄榄球 VS 软件
  16. vue利用Bscroll开发一个城市列表组件,带右侧字母导航栏
  17. Android - 警告:it is always overridden by the value specified in the Gradle build script
  18. 《成为乔布斯》读后感
  19. HTML5+CSS3初学尝试(小米官网首页)
  20. 计算机基本操作评课记录,《Word的基本操作》评课稿--李存业

热门文章

  1. vue打包的app如何设置自动清理软件缓存_使用Webpack启动你的Vue.js应用
  2. 如何新建分支上传_如何创建git分支?
  3. 死磕java concurrent包系列(六)基于AQS解析信号量Semaphore
  4. BZOJ3527:[ZJOI2014]力(FFT)
  5. Phoenix报错(6)Inconsistent namespace mapping properites
  6. TeliaSonera计划2018年推出5G服务
  7. 【转载】ShowWindow函数
  8. mysql(slow-query) 快速开启慢日志查询的方法
  9. 菜鸟成长日记(五)之WMIC简单命令应用
  10. 带哨兵节点的链_关于链表中哨兵结点问题的深入剖析