MII,RMII,GMII接口詳細解釋
概述:
MII (Media Independent Interface(介質無關接口)或稱為媒體獨立接口,它是IEEE-802.3定義的以太網行業標準。它包括一個數據接口和一個MAC和PHY之間的管理接口。
數據接口包括分別用于發送器和接收器的兩條獨立信道,每條信道都有自己的數據、時鐘和控制信號。MII數據接口總共需要16個信號。
管理接口是個雙信號接口:一個是時鐘信號,另一個是數據信號。通過管理接口,上層能監視和控制PHY。MII (Management Interface)只有兩條信號線。
MII標準接口用于連接Fast Ethernet MAC-Block與PHY。表明在不對MAC硬件重新設計或替換的情況下,任何類型的PHY設備都可以正常工作。在其他速率下工作的與MII等效的接口有:AUI(10M 以太網)、GMII(Gigabit 以太網)和XAUI(10-Gigabit 以太網)。
?
MII總線
在IEEE802.3中規定的MII總線是一種用于將不同類型的PHY與相同網絡控制器(MAC)相連接的通用總線。網絡控制器可以用同樣的硬件接口與任何PHY進行連接。
MII相關接口介紹:
以太網媒體接口有:MII RMII SMII GMII
所有的這些接口都從MII而來,MII是(Medium Independent Interface)的意思,是指不用考慮媒體是銅軸、光纖、電纜等,因為這些媒體處理的相關工作都有PHY或者叫做MAC的芯片完成。
MII支持10兆和100兆的操作,一個接口由14根線組成,它的支持還是比較靈活的,但是有一個缺點是因為它一個端口用的信號線太多,如果一個8端口的交換機要用到112根線,16端口就要用到224根線,到32端口的話就要用到448根線,一般按照這個接口做交換機,是不太現實的,所以現代的交換機的制作都會用到其它的一些從MII簡化出來的標準,比如RMII、SMII、GMII等。
RMII是簡化的MII接口,在數據的收發上它比MII接口少了一倍的信號線,所以它一般要求是50兆的總線時鐘。RMII一般用在多端口的交換機,它不是每個端口安排收、發兩個時鐘,而是所有的數據端口公用一個時鐘用于所有端口的收發,這里就節省了不少的端口數目。RMII的一個端口要求7個數據線,比MII少了一倍,所以交換機能夠接入多一倍數據的端口。和MII一樣,RMII支持10兆和100兆的總線接口速度。
SMII是由思科提出的一種媒體接口,它有比RMII更少的信號線數目,S表示串行的意思。因為它只用一根信號線傳送發送數據,一根信號線傳輸接受數據,所以在時鐘上為了滿足100的需求,它的時鐘頻率很高,達到了125兆,為什么用125兆,是因為數據線里面會傳送一些控制信息。SMII一個端口僅用4根信號線完成100信號的傳輸,比起RMII差不多又少了一倍的信號線。SMII在工業界的支持力度是很高的。同理,所有端口的數據收發都公用同一個外部的125M時鐘。
GMII是千兆網的MII接口,這個也有相應的RGMII接口,表示簡化了的GMII接口。
MII工作原理:
“媒體獨立”表明在不對MAC硬件重新設計或替換的情況下,任何類型的PHY設備都可以正常工作。包括分別用于發送器和接收器的兩條獨立信道。每條信道都有自己的數據、時鐘和控制信號。
MII數據接口總共需要16個信號,包括TX_ER,TXD,TX_EN,TX_CLK,COL,RXD,RX_EX,RX_CLK,CRS,RX_DV等。
MII以4位半字節方式傳送數據雙向傳輸,時鐘速率25MHz。其工作速率可達100Mb/S。
MII管理接口是個雙信號接口,一個是時鐘信號,另一個是數據信號。
通過管理接口,上層能監視和控制PHY,其管理是使用SMI(Serial Management Interface)總線通過讀寫PHY的寄存器來完成的。
PHY里面的部分寄存器是IEEE定義的,這樣PHY把自己的目前的狀態反映到寄存器里面,MAC通過SMI總線不斷的讀取PHY的狀態寄存器以得知目前PHY的狀態,例如連接速度,雙工的能力等。
當然也可以通過SMI設置PHY的寄存器達到控制的目的,例如流控的打開關閉,自協商模式還是強制模式等。
不論是物理連接的MII總線和SMI總線還是PHY的狀態寄存器和控制寄存器都是有IEEE的規范的,因此不同公司的MAC和PHY一樣可以協調工作。當然為了配合不同公司的PHY的自己特有的一些功能,驅動需要做相應的修改。
PHY是物理接口收發器,它實現物理層。包括MII/GMII(介質獨立接口)子層、PCS(物理編碼子層)、PMA(物理介質附加)子層、PMD(物理介質相關)子層、MDI子層。100BaseTX采用4B/5B編碼。
PHY在發送數據的時候,收到MAC過來的數據(對PHY來說,沒有幀的概念,對它來說,都是數據而不管什么地址,數據還是CRC),每4bit就增加1bit的檢錯碼,然后把并行數據轉化為串行流數據,再按照物理層的編碼規則把數據編碼,再變為模擬信號把數據送出去。收數據時的流程反之。
PHY還有個重要的功能就是實現CSMA/CD的部分功能。
它可以檢測到網絡上是否有數據在傳送,如果有數據在傳送中就等待,一旦檢測到網絡空閑,再等待一個隨機時間后將送數據出去。如果兩個碰巧同時送出了數據,那樣必將造成沖突,這時候,沖突檢測機構可以檢測到沖突,然后各等待一個隨機的時間重新發送數據。這個隨機時間很有講究的,并不是一個常數,在不同的時刻計算出來的隨機時間都是不同的,而且有多重算法來應付出現概率很低的同兩臺主機之間的第二次沖突。
通信速率通過雙方協商,協商的結果是兩個設備中能同時支持的最大速度和最好的雙工模式,這個技術被稱為Auto Negotiation或者NWAY。
隔離變壓器把PHY送出來的差分信號用差模耦合的線圈耦合濾波以增強信號,并且通過電磁場的轉換耦合到連接網線的另外一端。
RJ-45中1、2是傳送數據的,3、6是接收數據的。
新的PHY支持AUTO MDI-X功能,也需要隔離變壓器支持,它可以實現RJ-45接口的1、2上的傳送信號線和3、6上的接收信號線的功能自動互相交換。
GMII接口簡介:
GMII (Gigabit MII),GMII采用8位接口數據,工作時鐘125MHz,因此傳輸速率可達1000Mbps。同時兼容MII所規定的10/100 Mbps工作方式。
GMII接口數據結構符合IEEE以太網標準。該接口定義見IEEE 802.3-2000。
發送器:
◇ GTXCLK——吉比特TX.。信號的時鐘信號(125MHz)
◇ TXCLK——10/100M信號時鐘
◇ TXD[7..0]——被發送數據
◇ TXEN——發送器使能信號
◇ TXER——發送器錯誤(用于破壞一個數據包)
注:在千兆速率下,向PHY提供GTXCLK信號,TXD、TXEN、TXER信號與此時鐘信號同步。否則,在10/100M速率下,PHY提供 TXCLK時鐘信號,其它信號與此信號同步。其工作頻率為25MHz(100M網絡)或2.5MHz(10M網絡)。
接收器:
◇ RXCLK——接收時鐘信號(從收到的數據中提取,因此與GTXCLK無關聯)
◇ RXD[7..0]——接收數據
◇ RXDV——接收數據有效指示
◇ RXER——接收數據出錯指示
◇ COL——沖突檢測(僅用于半雙工狀態)
管理配置
◇ MDC——配置接口時鐘
◇ MDIO——配置接口I/O
管理配置接口控制PHY的特性。該接口有32個寄存器地址,每個地址16位。其中前16個已經在“IEEE 802.3,2000-22.2.4 Management Functions”中規定了用途,其余的則由各器件自己指定。
RMII簡介:
RMII: Reduced Media Independant Interface 即簡化媒體獨立接口;是標準的以太網接口之一,比MII有更少的I/O傳輸。
關于RMII口和MII口的問題
RMII口是用兩根線來傳輸數據的,
MII口是用4根線來傳輸數據的,
GMII是用8根線來傳輸數據的。
MII/RMII只是一種接口,對于10M線速,MII的速率是2.5M,RMII則是5M;對于100M線速,MII的速率是25M,RMII則是50M。
MII/RMII 用于傳輸以太網包,在MII/RMII接口是4/2bit的,在以太網的PHY里需要做串并轉換、編解碼等才能在雙絞線和光纖上進行傳輸,其幀格式遵循IEEE 802.3(10M)/IEEE 802.3u(100M)/IEEE 802.1q(VLAN)。
以太網幀的格式為:前導符+開始位+目的Mac地址+源Mac地址+類型/長度+數據+Padding(Optional)+32bitCRC
如果有Vlan,則要在類型/長度后面加上2個字節的Vlan Tag,其中12bit來表示Vlan Id,另外4bit表示數據的優先級!
評論
查看更多