2 MII通信
MII位于mac和phy之间的接口,包括数据接口和管理接口。数据接口包含发送器和接收器,总共16个信号,管理接口包括一个时钟信号和一个数据信号,通过管理接口上层可以读取和配置phy寄存器(speed、autoneg,duplex)。
MII接收和发送数据以4位半字进行双向传输,工作时钟25MHz速率100Mb/s,速率计算=工作时钟*数据宽度。
MII衍生出了GMII、SGMII、RGMII、XGMII等,差异主要在数据接口。
GMII是千兆MII接口,采用8位数据接口,工作时钟125MHz速率1000Mbps。
SGMII是串行MGMII接口,收发各一对差分信号,工作时钟625MHz,在时钟上下沿都采样,发送和接收每8bit会插入2bit的使能控制信息,发送(TX_EN+TX_ER),接收(RX_DV(接收到无效数据输出)+RX_ER)。速率计算=625*2*8/10=1000Mbps
RGMII是精简GMII接口,采用4位数据接口,工作时钟2.5MHz速率10Mb/s,25MHz时速率100Mb/s,125MHz时速率1Gb/s。
RGMII如何实现的在125MHz时钟下传输速率达到1Gb/s?
在时钟上升沿时发送TXD[3:0]在时钟下降沿发送TXD[7:4],通过TX_CTL来反馈TX_EN和TX_ER状态,相当于RGMII将TX_EN和TX_ER复用为一个TX_CTL,接收同理。
3 命名
命名[X]Base[Y]
X:带宽,10、100、1000Mbps
Y:距离/介质,数字为距离,T为双绞线(twisted pair),F光纤(optical fiber)。
例如:100BaseTX:带宽100Mbps,双绞线传输,最后的X是种传输标准,T下有两种传输标准X和4,TX是4B/5B编解码,T4是8B/6B编解码。
100Base-Tx与100Base-T1区别:
100Base-T(传统快速以太网)采用三类传输介质:
100Base-T4
100Base-Tx
100Base-Fx
100Base-T1是IEEE针对100Mb/s汽车以太网的规范,“-T1”后缀表示的就是汽车以太网。
具体可参考:https://www.csdn.net/tags/NtzaggwsMDg1OTQtYmxvZwO0O0OO0O0O.html
100Base-T1与传统以太网区别:
1,相比与100Base-Tx改变了phy的设计,保留了一对双绞线实现全双工通信。
2,物理层结构由PCS(编解码)和PMA(与介质的收发)组成,删减了PMD(做模数转换)
100Base-T1如何实现全双工?
通过混合电路(hybrid)和回声消除(echo cancellation)技术在一对UTP上实现的全双工。
比如发送器在发送数据A的同时一方面会监听到总线数据(A+B),一方面会将发送的数据(A)返回给接收器,接收器通过将总线数据减掉发送数据即为接收数据,以此来完成全双工的传输。远端需要匹配电阻来消除远端回声,近端回声由四电阻消除。
100Base-T1两侧的phy需要配置为master或者slave,两者建立连接的过程:
上电后master会进入空闲模式通过发送空闲码元来训练slave的扰码器、均衡器、时钟,slave侧经过训练扰码器训练好后会也会发送空闲码元进行进一步训练把扰码器、均衡器、时钟等都固定下来,同时判断握手信号是否ok,如果ok了就进入正常的收发模式进入linkup状态。