網(wǎng)絡(luò)通信路徑常可總結(jié)為:網(wǎng)絡(luò)數(shù)據(jù)-->RJ45接口-->網(wǎng)絡(luò)變壓器-->網(wǎng)絡(luò)PHY芯片-->MAC-->CPU,如圖1。其中網(wǎng)絡(luò)變壓器到PHY之前傳輸接口一般為MDI,而PHY到MAC之前的傳輸接口一般包括有MII、RMII、SMII、SSMII、SSSMII、GMII、RGMII、SGMII、TBI、RTBI、XGMII、XAUI、XLAUI等,下面我們以RTL8211E為例對(duì)網(wǎng)絡(luò)通信路徑接口做一次梳理與總結(jié),桑尼奇孫生,18576699326,QQ:2335804557,歡迎交流!(更多詳情)
、
對(duì)應(yīng)于RTL8211E,在物理網(wǎng)線與RTL8211E之間,主要通過MDI接口傳輸,而對(duì)于RTL8211E與MAC之前的通信接口會(huì)隨RTL8211E的版本不同,會(huì)有些許差異,RTL8211E-VB-CG為RGMII接口,而RTL8211EG-VB-CG則是除RGMII接口外還具備MII、GMII接口。
以下則具體介紹這幾類接口 :
(1)MDI的全稱 Medium Dependent Interface ,網(wǎng)絡(luò)上給的翻譯是介質(zhì)相關(guān)接口。在 hub或 switch 中有兩種接口,分別叫 MDI port和 MDI-X port, MDI port 也叫做級(jí)聯(lián)端口( uplink port ),是 hub 或 switch 之間相互連接的端口。 MDI port和 MDI-X port 之間最大的區(qū)別在于, MDI port內(nèi)部發(fā)送數(shù)據(jù)線和接收數(shù)據(jù)線沒交叉,而MDI-X port 內(nèi)部發(fā)送數(shù)據(jù)線和接收數(shù)據(jù)線是交叉的,這個(gè)X代表交叉的意思。
下圖示意了hub或switch內(nèi)部的結(jié)構(gòu),transmit代表發(fā)送數(shù)據(jù)線,receive代表接收數(shù)據(jù)線,兩者在內(nèi)部交叉著。
(2)MII接口
MII是英文Medium Independent Interface的縮寫,翻譯成中文是“介質(zhì)獨(dú)立接口”,該接口一般應(yīng)用于MAC層和PHY層之間的以太網(wǎng)數(shù)據(jù)傳輸,也可叫數(shù)據(jù)接口。
TXD(Transmit Data)[3:0]:數(shù)據(jù)發(fā)送信號(hào),共4根信號(hào)線;
RXD(Receive Data)[3:0]:數(shù)據(jù)接收信號(hào),共4根信號(hào)線;
TX_ER(Transmit Error): 發(fā)送數(shù)據(jù)錯(cuò)誤提示信號(hào),同步于TX_CLK,高電平有效,表示TX_ER有效期內(nèi)傳輸?shù)臄?shù)據(jù)無(wú)效。對(duì)于10Mbps速率下,TX_ER不起作用;
RX_ER(Receive Error): 接收數(shù)據(jù)錯(cuò)誤提示信號(hào),同步于RX_CLK,高電平有效,表示RX_ER有效期內(nèi)傳輸?shù)臄?shù)據(jù)無(wú)效。對(duì)于10Mbps速率下,RX_ER不起作用;
TX_EN(Transmit Enable): 發(fā)送使能信號(hào),只有在TX_EN有效期內(nèi)傳的數(shù)據(jù)才有效;
RX_DV(Reveive Data Valid): 接收數(shù)據(jù)有效信號(hào),作用類型于發(fā)送通道的TX_EN;
TX_CLK:發(fā)送參考時(shí)鐘,100Mbps速率下,時(shí)鐘頻率為25MHz,10Mbps速率下,時(shí)鐘頻率為2.5MHz。注意,TX_CLK時(shí)鐘的方向是從PHY側(cè)指向MAC側(cè)的,因此此時(shí)鐘是由PHY提供的。
RX_CLK:接收數(shù)據(jù)參考時(shí)鐘,100Mbps速率下,時(shí)鐘頻率為25MHz,10Mbps速率下,時(shí)鐘頻率為2.5MHz。RX_CLK也是由PHY側(cè)提供的。
CRS:Carrier Sense,載波偵測(cè)信號(hào),不需要同步于參考時(shí)鐘,只要有數(shù)據(jù)傳輸,CRS就有效,另外,CRS只有PHY在半雙工模式下有效;
COL:Collision Detectd,沖突檢測(cè)信號(hào),不需要同步于參考時(shí)鐘,只有PHY在半雙工模式下有效。
MII接口一共有16根線。
(2)RMII接口
RMII即Reduced MII,是MII的簡(jiǎn)化板,連線數(shù)量由MII的16根減少為8根。
TXD[1:0]:數(shù)據(jù)發(fā)送信號(hào)線,數(shù)據(jù)位寬為2,是MII接口的一半;
RXD[1:0]:數(shù)據(jù)接收信號(hào)線,數(shù)據(jù)位寬為2,是MII接口的一半;
TX_EN(Transmit Enable):數(shù)據(jù)發(fā)送使能信號(hào),與MII接口中的該信號(hào)線功能一樣;
RX_ER(Receive Error):數(shù)據(jù)接收錯(cuò)誤提示信號(hào),與MII接口中的該信號(hào)線功能一樣;
CLK_REF:是由外部時(shí)鐘源提供的50MHz參考時(shí)鐘,與MII接口不同,MII接口中的接收時(shí)鐘和發(fā)送時(shí)鐘是分開的,而且都是由PHY芯片提供給MAC芯片的。這里需要注意的是,由于數(shù)據(jù)接收時(shí)鐘是由外部晶振提供而不是由載波信號(hào)提取的,所以在PHY層芯片內(nèi)的數(shù)據(jù)接收部分需要設(shè)計(jì)一個(gè)FIFO,用來協(xié)調(diào)兩個(gè)不同的時(shí)鐘,在發(fā)送接收的數(shù)據(jù)時(shí)提供緩沖。PHY層芯片的發(fā)送部分則不需要FIFO,它直接將接收到的數(shù)據(jù)發(fā)送到MAC就可以了。
CRS_DV:此信號(hào)是由MII接口中的RX_DV和CRS兩個(gè)信號(hào)合并而成。當(dāng)介質(zhì)不空閑時(shí),CRS_DV和RE_CLK相異步的方式給出。當(dāng)CRS比RX_DV早結(jié)束時(shí)(即載波消失而隊(duì)列中還有數(shù)據(jù)要傳輸時(shí)),就會(huì)出現(xiàn)CRS_DV在半位元組的邊界以25MHz/2.5MHz的頻率在0、1之間的來回切換。因此,MAC能夠從 CRS_DV中精確的恢復(fù)出RX_DV和CRS。
在100Mbps速率時(shí),TX/RX每個(gè)時(shí)鐘周期采樣一個(gè)數(shù)據(jù);在10Mbps速率時(shí),TX/RX每隔10個(gè)周期采樣一個(gè)數(shù)據(jù),因而TX/RX數(shù)據(jù)需要在數(shù)據(jù)線上保留10個(gè)周期,相當(dāng)于一個(gè)數(shù)據(jù)發(fā)送10次。
當(dāng)PHY層芯片收到有效的載波信號(hào)后,CRS_DV信號(hào)變?yōu)橛行?,此時(shí)如果FIFO中還沒有數(shù)據(jù),則它會(huì)發(fā)送出全0的數(shù)據(jù)給MAC,然后當(dāng)FIFO中填入有效的數(shù)據(jù)幀,數(shù)據(jù)幀的開頭是“101010---”交叉的前導(dǎo)碼,當(dāng)數(shù)據(jù)中出現(xiàn)“01”的比特時(shí),代表正式數(shù)據(jù)傳輸開始,MAC芯片檢測(cè)到這一變化,從而開始接收數(shù)據(jù)。
當(dāng)外部載波信號(hào)消失后,CRS_DV會(huì)變?yōu)闊o(wú)效,但如果FIFO中還有數(shù)據(jù)要發(fā)送時(shí),CRS_DV在下一周期又會(huì)變?yōu)橛行В缓笤贌o(wú)效再有效,直到FIFO中數(shù)據(jù)發(fā)送完為止。在接收過程中如果出現(xiàn)無(wú)效的載波信號(hào)或者無(wú)效的數(shù)據(jù)編碼,則RX_ER會(huì)變?yōu)橛行?,表示物理層芯片接收出錯(cuò)。
(3)GMII接口
與MII接口相比,GMII的數(shù)據(jù)寬度由4位變?yōu)?位,GMII接口中的控制信號(hào)如TX_ER、TX_EN、RX_ER、RX_DV、CRS和COL的作用同MII接口中的一樣,發(fā)送參考時(shí)鐘GTX_CLK和接收參考時(shí)鐘RX_CLK的頻率均為125MHz(1000Mbps/8=125MHz)。
在這里有一點(diǎn)需要特別說明下,那就是發(fā)送參考時(shí)鐘GTX_CLK,它和MII接口中的TX_CLK是不同的,MII接口中的TX_CLK是由PHY芯片提供給MAC芯片的,而GMII接口中的GTX_CLK是由MAC芯片提供給PHY芯片的。兩者方向不一樣。
在實(shí)際應(yīng)用中,絕大多數(shù)GMII接口都是兼容MII接口的,所以,一般的GMII接口都有兩個(gè)發(fā)送參考時(shí)鐘:TX_CLK和GTX_CLK(兩者的方向是不一樣的,前面已經(jīng)說過了),在用作MII模式時(shí),使用TX_CLK和8根數(shù)據(jù)線中的4根。
(4)RGMII接口
RGMII即Reduced GMII,是GMII的簡(jiǎn)化版本,將接口信號(hào)線數(shù)量從24根減少到14根(COL/CRS端口狀態(tài)指示信號(hào),這里沒有畫出),時(shí)鐘頻率仍舊為125MHz,TX/RX數(shù)據(jù)寬度從8為變?yōu)?位,為了保持1000Mbps的傳輸速率不變,RGMII接口在時(shí)鐘的上升沿和下降沿都采樣數(shù)據(jù)。在參考時(shí)鐘的上升沿發(fā)送GMII接口中的TXD[3:0]/RXD[3:0],在參考時(shí)鐘的下降沿發(fā)送GMII接口中的TXD[7:4]/RXD[7:4]。RGMI同時(shí)也兼容100Mbps和10Mbps兩種速率,此時(shí)參考時(shí)鐘速率分別為25MHz和2.5MHz。
TX_EN信號(hào)線上傳送TX_EN和TX_ER兩種信息,在TX_CLK的上升沿發(fā)送TX_EN,下降沿發(fā)送TX_ER;同樣的,RX_DV信號(hào)線上也傳送RX_DV和RX_ER兩種信息,在RX_CLK的上升沿發(fā)送RX_DV,下降沿發(fā)送RX_ER。
桑尼奇專業(yè)供應(yīng)網(wǎng)絡(luò)芯片,涉及USB轉(zhuǎn)RJ45芯片、千兆網(wǎng)絡(luò)PHY芯片、百兆網(wǎng)絡(luò)PHY芯片、千兆/百兆網(wǎng)絡(luò)集線器芯片等,涵蓋有Realtek、ICplus、TI、SMSC、Micrel等品牌,具本型號(hào)有RTL8152B/RTL8153B,RTL8211E、RTL8211F、RTL8201CP、RTL8201F、IP101GR、DP83848、LAN8720等,可提供樣品或型號(hào)推薦,歡迎咨詢。桑尼奇孫生:18576699326,QQ:2335804557.
(以上信息由深圳市桑尼奇科技有限公司提供)
評(píng)論列表: