RGMII概述 RGMII接口,是ReducedGigabitMediaIndependenTInterface的縮寫。IEEE802.3Clause35在RS子層和PCS子層之間定義了一組接口GMII,該接口作為MAC和PHY數(shù)據(jù)交互接口。然而該接口在實際應(yīng)用中面臨最大的問題就是,如果MAC和PHY為分為兩個不同芯片時,GMII管腳多(24PIN)導(dǎo)致封裝成本增加,因此12PIN的RGMII就誕生了。 RGMII應(yīng)用框圖 圖1RGMII應(yīng)用框圖 圖1為RGMII應(yīng)用框圖,RGMII應(yīng)用很簡單就是作為MAC和PHY之間的數(shù)據(jù)通信接口。 RGMII接口信號 表1RGMII接口信號 從RGMII接口信號就可以看出,所謂的ReducedGMII,就是將原來GMII125MHz單沿收發(fā)各8bit數(shù)據(jù)總線(TXD[7:0],RXD[7:0])),精簡成125MHz雙沿收發(fā)各4bit數(shù)據(jù)總線。同時將數(shù)據(jù)有效信號(TX_EN,RX_DV)和錯誤指示信號(TX_ER,RX_ER),精簡為1bit控制信號線。 當(dāng)RGMII工作在100M,10M模式時,仍工作在單沿模式。隨路時鐘(TXC/RXC)下降沿時數(shù)據(jù)保持不變。 RGMII接口幀格式 圖2RGMII有效幀 圖2為一個有效數(shù)據(jù)幀的傳輸。在有效幀傳輸過程中,RX_CTL在RXC雙沿時均為高電平,代表RX_EN=1,RX_ERR=0。當(dāng)幀傳輸完后在下一個RXC上升沿,RX_CTL拉低,之后RX_CTL一直為低。注意在幀間隙時,RXC下降沿RX_CTL為0,但是其相鄰的RXC上升沿時RX_CTL也是0,因此不會被識別為RX_ERR。從圖中可以看出,對于一個有效幀,RX_CTL總是在RXC上升沿時拉低。 圖3RGMII無效幀 圖3為一個無效幀的傳輸。在傳輸?shù)谝蛔止?jié)數(shù)據(jù)時,RX_CTL在RXC上升沿為1在相鄰的RXC下降沿為0,因此被識別為RX_ERR。該數(shù)據(jù)幀,整幀會被丟棄。RX_ERR可以出現(xiàn)在一幀數(shù)據(jù)傳輸過程中的任何位置,當(dāng)RX_ERR被識別后,整幀會被丟棄。 RGMII接口從降低封裝成本上來講,做出了不可磨滅的貢獻(xiàn)。然而由于其采用的雙沿采樣導(dǎo)致其實際工作頻率已達(dá)到250MHz,這么高的速率對于一般的數(shù)字IO來說已經(jīng)臨近極限。RGMII有兩個致命缺陷:1,由于雙沿采樣,每bit僅4ns有效時間,使得時序收斂時并不友好。因此RGMII接口實現(xiàn)時,通常TXC/RXC都會做90°、180°、270°、360°相位的粗調(diào),方便采樣時序調(diào)整。甚至還有芯片利用DLL在90度粗調(diào)基礎(chǔ)上做更加精細(xì)的微調(diào)。2,不管有無有效數(shù)據(jù),TXC/RXC都在持續(xù)以125MHz翻轉(zhuǎn),這種周期性翻轉(zhuǎn)噪聲,很容易引起噪聲干擾,影響臨近模擬IP的工作。還會帶來輻射,導(dǎo)致EMC測試不過。為了解決RGMII這倆缺陷,基于SerDes接口的SGMII應(yīng)運(yùn)而生,SGMII接口不但解決了RGMII的缺陷,而且進(jìn)一步的降低的管腳數(shù)。當(dāng)前市面上的千兆PHY,RGMII/SGMII這兩種接口均支持。 后記 寫RGMII接口其實有點猶豫,因為從之前有一篇關(guān)于MDIO文章表現(xiàn)來看,以太網(wǎng)儼然已經(jīng)是日落西山了,感興趣的人很少。但是,作者對以太網(wǎng)有特殊感情,因為走出校門后讀的一篇協(xié)議就是幾千頁的IEEE802.3,那些激情燃燒的日子至今回想起來依舊心潮澎湃,完全抑制不住想和同學(xué)們侃侃的心情。 RGMII實際上還有一個很冷門的功能就是RTBI,就是將TBI精簡,因為應(yīng)用較少本文就沒有提及。 官網(wǎng):http://www.aoelectronics.com 中文網(wǎng):http://www.aoelectronics.cn |