MII、RMII、SMII、GMII、RGMII、SGMII的区别

常用的以太网RHY-MAC接口的模式:MII、RMII、SMII、GMII、RGMII、SGMII

模式

简述

接口定义

速率

MII

基本的100Mbps/10Mbps接口。

RXD[3:0],TXD[3:0],

TX_ER,TX_EN,

RX_ER,RX_DV,

TX_CLK,RX_CLK,

CRS,CPL,

MDIO,MDC。

Clock = 25MHz或2.5MHz;

数据位4bit(一个时钟周期传输4bit数据);

100MHz = 25MHz * 4bit;

10MHz = 2.5MHz * 4bit。

RMII

在MII基础上精简的100Mbps/10Mbps接口;通过提升Clock频率保持与MII一样的速率。

TXD[1:0],RXD[1:0],

TX_EN,RX_ER,

CLK_REF,CRS_DV,

MDIO,MDC。

Clock = 50MHz;

数据位2bit(一个时钟周期传输2bit数据);

100MHz = 50MHz * 2bit;

10MHz是利用10个周期采样一次数据相当于

10MHz = 50MHz * 4bit / 10。

SMII

串行MII 100MHz/10MHz接口;

进一步提升Clock频率保持与MII一样的速率;

TXD[0],RXD[0],

SYNC,CLK_REF,

MDIO,MDC。

Clock = 125MHz;

数据位1bit(一个时钟周期传输1bit数据);

串行数据帧一帧 = 10bit数据(8bit data + 2bit control);

计算有效带宽时,需要减去控制位;

100MHz = 125MHz * (8bit /10bit);

10MHz是利用10个周期采样一次数据相当于

10MHz = 12.5MHz * (8bit /10bit);

GMII

在MII接口基础上提升了数据位宽和Clock频率,成为1000Mbps接口。

RXD[7:0],TXD[7:0],

TX_ER,TX_EN,

RX_ER,RX_DV,

GTX_CLK,

TX_CLK,RX_CLK,

GRS,COL,

MDIO,MDC。

Clock = 125MHz;

数据位8bit(一个时钟周期传输8bit数据);

1000MHz = 125MHz * 8bit;

RGMII

RGMII的简化版,10/100/100Mbps接口。

RXD[3:0],TXD[3:0],

TX_CTL,RX_CTL,

TX_CLK,RX_CLK,

MDIO,MDC。

Clock = 125MHz;

数据位4bit(一个时钟周期里,上升沿取TX/RX的0~3bit,下降沿取TX/RX的4~7bit,即一个时钟周期传输8bit数据);

1000MHz = 125MHz * 8bit;

100MHz = 25MHz * 4bit;

10MHz = 2.5MHz * 4bit;

SGMII

串行GMII,为了达到1000Mbps,时钟频率提升,

10/100/100Mbps接口。

RXD,TXD,

TX_CLK,RX_CLK,

MDIO,MDC。

Clock = 1250MHz;

数据位1bit(一个时钟周期传输1bit数据);

串行数据帧一帧 = 10bit数据(8bit data + 2bit control);

计算有效带宽时,需要减去控制位;

100MHz = 1250MHz * (8bit /10bit);

 

  • MII接口:

MII (Media Independent Interface(介质无关接口)或称为媒体独立接口。MII接口有18个信号线:MAC层到PHY层的发送数据接口;MAC层到PHY层的接收数据接口;PHY层和MAC层之间状态指示接口;MAC层和PHY层之间的数据管理的MDIO/MDC接口。

信号名称

描述

方向

TX_CLK

发送时钟

MAC → PHY

TX_ER

发送数据错误

MAC → PHY

TX_EN

发送使能

MAC → PHY

TXD0

发送数据位0

MAC → PHY

TXD1

发送数据位1

MAC → PHY

TXD2

发送数据位2

MAC → PHY

TXD3

发送数据位3

MAC → PHY

RX_CLK

接收时钟

PHY → MAC

RX_DV

接收数据有效

PHY → MAC

RX_ER

接收数据错误

PHY → MAC

RXD0

接收数据位0

PHY → MAC

RXD1

接收数据位1

PHY → MAC

RXD2

接收数据位2

PHY → MAC

RXD3

接收数据位3

PHY → MAC

CRS

载波监测

PHY → MAC

COL

冲突碰撞监测

PHY → MAC

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

MAC 通过MIIM 接口读取PHY 状态寄存器以得知目前PHY 的状态。例如连接速度、双工的能力等。也可以通过 MIIM设置PHY的寄存器达到控制的目的。例如流控的打开关闭、自协商模式还是强制模式等。MII以4位半字节方式传送数据双向传输,时钟速率25MHz。其工作速率可达100Mb/s。当时钟频率为2.5MHz时,对应速率为10Mb/s。

  • RMII接口:

RMII( Reduced Media Independent Interface)精简MII接口。相比于MII接口,RMII接口有几处变化:将TXCLK和RXCLK两个时钟信号合并为一个时钟REFCLK;时钟频率由25MHz上升为50MHz;单向数据右4bits变为2bits;CRS和RXDV合并为一个信号CRSDV;取消了COL信号。

信号名称

描述

方向

REF_CLK

时钟

MAC → PHY或外部提供

TX_EN

发送使能

MAC → PHY

TXD0

发送数据位0

MAC → PHY

TXD1

发送数据位1

MAC → PHY

RX_ER

接收数据错误

PHY → MAC

RXD0

接收数据位0

PHY → MAC

RXD1

接收数据位1

PHY → MAC

CRS_DV

载波和接收数据有效

PHY → MAC

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

  • SMII接口:

SMIISerial Media Independant Interface,即Serial MII串行MII接口,包括TXD,RXD,SYNC三个信号线,共用一个时钟信号,此时钟信号是125MHz,信号线与此时钟同步

信号名称

描述

方向

REF_CLK

时钟

外部提供125MHz时钟

TX_EN

发送使能

MAC → PHY

TXD

发送数据位

MAC → PHY

RXD

接收数据位

PHY → MAC

SYNC

同步信号

-

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

  • GMII接口:

GMII(Gigabit Media Independant Interface),千兆MII接口GMII采用8位接口数据,工作时钟125MHz,因此传输速率可达1000Mbps。同时兼容MII所规定的10/100 Mbps工作方式与MII接口相比,GMII的数据宽度由4bit变为8bit,GMII接口中的控制信号如TX_ER、TX_EN、RX_ER、RX_DV、CRS和COL的作用同MII接口中的一样,发送参考时钟GTX_CLK和接收参考时钟RX_CLK的频率均为125MHz(1000Mbps/8=125MHz)

信号名称

描述

方向

GTX_CLK

1000M发送时钟

MAC → PHY

TX_CLK

100M/10M发送时钟

MAC → PHY

TX_ER

发送数据错误

MAC → PHY

TX_EN

发送使能

MAC → PHY

TXD[7:0]

发送数据位

MAC → PHY

RX_CLK

接收时钟

PHY → MAC

RX_DV

接收数据有效

PHY → MAC

RX_ER

接收数据错误

PHY → MAC

RXD[7:0]

接收数据位0

PHY → MAC

CRS

载波监测

PHY → MAC

COL

冲突碰撞监测

PHY → MAC

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

  • RGMII接口:

RGMII(Reduced Gigabit Media Independant Interface),精简GMII接口。相对于GMII相比,发送/接收数据线由8bit改为4bit;    TX_ER和TX_EN复用,通过TX_CTL传送;RX_ER与RX_DV复用,通过RX_CTL传送;1 Gbit/s速率下,时钟频率为125MHz;100 Mbit/s速率下,时钟频率为25MHz;10 Mbit/s速率下,时钟频率为2.5MHz。

信号名称

描述

方向

TX_CLK

100M/10M发送时钟

MAC → PHY

TX_CTL

发送数据控制

MAC → PHY

TXD[3:0]

发送数据位

MAC → PHY

RX_CLK

接收时钟

PHY → MAC

RX_CTL

接收数据控制

PHY → MAC

RXD[3:0]

接收数据位

PHY → MAC

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

  • SGMII接口:

SGMII(Serial Gigabit Media Independent Interface

),串行GMII。SGMII收发各一对差分信号线,时钟频率625MHz,在时钟信号的上升沿和下降沿均采样。

信号名称

描述

方向

TX_CLK

发送时钟

MAC → PHY

TXD

发送数据位

MAC → PHY

RX_CLK

接收时钟

PHY → MAC

RXD

接收数据位

PHY → MAC

MDIO

管理数据

PHY ↔ MAC

MDC

管理数据时钟

MAC → PHY

你可能感兴趣的:(网络协议)