9.29.2020

Serial MII

SMIISerial MII;Serial是「序列」的意思 (大陸直譯為”串列”)。這是Cisco (思科)所研發出來的一種MII,與之相比較的是RMII。RMII需要8根訊號線,但SMII只需要4根即可!
1. TXDTransmit Data (傳輸資料)

2. RXDReceive Data (接收資料)

3. SYNCSynchronize (同步訊號)。每10個時脈參考 (CLK_REF)就會發生一次的高準位,指示要同步。

4. CLK_REFClock Reference (時脈參考)。所有的訊號線都共用一個參考時脈。頻率固定為125 MHz。但問題來了,在MII / RMII / GMII / RGMII中的參考時脈為25 MHz (100 Mbps) / 2.5 MHz (10 Mbps) / 125 MHz (1000 Mbps),為何在SMII中卻使用固定的參考時脈?Cisco在SMII中的作法用意如下:

a). 在SMII中TXD訊號線,包含了原本GMII中的TXD [0:7] 、TX_EN、TX_ER,總共是10 bit的資料。

b). 在SMII中RXD訊號線,包含了原本GMII中的RXD [0:7] 、RX_DV、CRS,總共是10 bit的資料。

c). 所以,在SMII中的資料傳輸和接送是以每10 bit做為一個單位;也容易理解為何叫做「序列」了─把原本是用「並列」的訊號線,改成以「串 (序)列」的方式來呈現。

d). 回憶一下:
MII / RMII中,乙太網路傳輸速率為10 Mbps2.5 MHz * 4組TXD / RXD100 Mbps25 MHz * 4組TXD / RXD

GMII / RGMII乙太網路傳輸速率為1000 Mbps125 MHz * 8組TXD / RXD

SMII中只有1組TXD / RXD,理論上10 Mbps傳輸速率,參考時脈應為10 MHz;100 Mbps傳輸速率,參考時脈應為100 MHz;1000 Mbps傳輸速率,參考時脈應為1000 MHz。

但SMII是序列式的,固定的參考時脈125 MHz,理應傳輸速率為125 Mbps;但SMII每10 bit當中有2 bit的控制位元 (TX_EN, TX_ER, RX_DV, RX_ER),剩下的8 bit才是真正地傳輸資料,所以125 Mbps 要乘以0.8,即100 Mbps (乙太網路的傳輸速率)!

那乙太網路10 Mbps呢?反推回去,10 Mbps要除以8,再乘以10,即12.5 MHz。所以當乙太網路的傳輸速率為10 Mbps時,同樣地資料會傳送10次 (12.5 MHz * 10 = 125 MHz),即MAC / PHY會每10個週期 (依據SYNC訊號)來進行取樣。

相關文章:
1. Media Independent Interface
2. Reduced MII
3. Gigabit MII
4. Reduced Gigabit MII

沒有留言:

張貼留言