MII是英文Medium Independent Interface的缩写,翻译成中文是“介质独立接口”,该接口一般应用于MAC层和PHY层之间的以太网数据传输,也可叫数据接口。(MAC与PHY间的管理接口一般是MDIO)
MII接口的类型有很多,常用的有MII、RMII、SMII、SSMII、SSSMII、GMII、RGMII、SGMII、TBI、RTBI、XGMII、XAUI、XLAUI等。下面对它们进行一一介绍。
MII接口
TXD(Transmit Data)[3:0]:数据发送信号,共4根信号线;
RXD(Receive Data)[3:0]:数据接收信号,共4根信号线;
TX_ER(Transmit Error): 发送数据错误提示信号,同步于TX_CLK,高电平有效,表示TX_ER有效期内传输的数据无效。对于10Mbps速率下,TX_ER不起作用;
RX_ER(Receive Error): 接收数据错误提示信号,同步于RX_CLK,高电平有效,表示RX_ER有效期内传输的数据无效。对于10Mbps速率下,RX_ER不起作用;
TX_EN(Transmit Enable): 发送使能信号,只有在TX_EN有效期内传的数据才有效;
RX_DV(Reveive Data Valid): 接收数据有效信号,作用类型于发送通道的TX_EN;
TX_CLK:发送参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。注意,TX_CLK时钟的方向是从PHY侧指向MAC侧的,因此此时钟是由PHY提供的。
RX_CLK:接收数据参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。RX_CLK也是由PHY侧提供的。
CRS:Carrier Sense,载波侦测信号,不需要同步于参考时钟,只要有数据传输,CRS就有效,另外,CRS只有PHY在半双工模式下有效;
COL:Collision Detectd,冲突检测信号,不需要同步于参考时钟,只有PHY在半双工模式下有效。
MII接口一共有16根线。

对于10/100M的MII
rx_clk都是PHY提供,为2.5MHz/25MHz
tx_clk都是PHY提供,为2.5MHz/25MHz
数据位4bit,即使用MDI的4根线,即2对差分线

对于1000M的GMII
rx_clk 由PHY提供,为125MHz
gtx_clk由MAC提供,为125MHz
数据位8bit 即使用MDI的8根线,即4对差分线

对于10/100/1000M的(G)MII
rx_clk由PHY提供,为 2.5MHz/25MHz/125MHz
10/100M时,使用tx_clk,由PHY提供,为2.5MHz/25MHz
1000M时, 使用gtx_clk,由MAC提供,为125MHz
MII接口的类型有很多,常用的有MII、RMII、SMII、SSMII、SSSMII、GMII、RGMII、SGMII、TBI、RTBI、XGMII、XAUI、XLAUI等。下面对它们进行一一介绍。
MII接口

TXD(Transmit Data)[3:0]:数据发送信号,共4根信号线;
RXD(Receive Data)[3:0]:数据接收信号,共4根信号线;
TX_ER(Transmit Error): 发送数据错误提示信号,同步于TX_CLK,高电平有效,表示TX_ER有效期内传输的数据无效。对于10Mbps速率下,TX_ER不起作用;
RX_ER(Receive Error): 接收数据错误提示信号,同步于RX_CLK,高电平有效,表示RX_ER有效期内传输的数据无效。对于10Mbps速率下,RX_ER不起作用;
TX_EN(Transmit Enable): 发送使能信号,只有在TX_EN有效期内传的数据才有效;
RX_DV(Reveive Data Valid): 接收数据有效信号,作用类型于发送通道的TX_EN;
TX_CLK:发送参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。注意,TX_CLK时钟的方向是从PHY侧指向MAC侧的,因此此时钟是由PHY提供的。
RX_CLK:接收数据参考时钟,100Mbps速率下,时钟频率为25MHz,10Mbps速率下,时钟频率为2.5MHz。RX_CLK也是由PHY侧提供的。
CRS:Carrier Sense,载波侦测信号,不需要同步于参考时钟,只要有数据传输,CRS就有效,另外,CRS只有PHY在半双工模式下有效;
COL:Collision Detectd,冲突检测信号,不需要同步于参考时钟,只有PHY在半双工模式下有效。
MII接口一共有16根线。

对于10/100M的MII
rx_clk都是PHY提供,为2.5MHz/25MHz
tx_clk都是PHY提供,为2.5MHz/25MHz
数据位4bit,即使用MDI的4根线,即2对差分线

对于1000M的GMII
rx_clk 由PHY提供,为125MHz
gtx_clk由MAC提供,为125MHz
数据位8bit 即使用MDI的8根线,即4对差分线

对于10/100/1000M的(G)MII
rx_clk由PHY提供,为 2.5MHz/25MHz/125MHz
10/100M时,使用tx_clk,由PHY提供,为2.5MHz/25MHz
1000M时, 使用gtx_clk,由MAC提供,为125MHz