MII接口介紹(轉)


 

1、簡介

  MII (Media Independent Interface(介質無關接口)或稱為媒體獨立接口,它是IEEE-802.3定義的以太網行業標准。它包括一個數據接口和一個MAC和PHY之間的管理接口。“媒體獨立”表明在不對MAC硬件重新設計或替換的情況下,任何類型的PHY設備都可以正常工作。MII接口的類型有很多,常用的有MII、RMII、SMII、SSMII、SSSMII、GMII、RGMII、SGMII,下面對它們進行一一介紹。

2、MII接口介紹

  這里寫圖片描述   
  MII接口一共有16根線。 
  RXD(Receive Data)[3:0]:數據接收信號,共4根信號線; 
  TX_ER(Transmit Error):發送數據錯誤提示信號,同步於TX_CLK,高電平有效,表示TX_ER有效期內傳輸的數據無效。對於10Mbps速率下,TX_ER不起作用; 
  RX_ER(Receive Error): 接收數據錯誤提示信號,同步於RX_CLK,高電平有效,表示RX_ER有效期內傳輸的數據無效。對於10Mbps速率下,RX_ER不起作用; 
  TX_EN(Transmit Enable): 發送使能信號,只有在TX_EN有效期內傳的數據才有效; 
  RX_DV(Reveive Data Valid): 接收數據有效信號,作用類型於發送通道的TX_EN; 
  TX_CLK:發送參考時鍾,100Mbps速率下,時鍾頻率為25MHz,10Mbps速率下,時鍾頻率為2.5MHz。注意,TX_CLK時鍾的方向是從PHY側指向MAC側的,因此此時鍾是由PHY提供的。 
  RX_CLK:接收數據參考時鍾,100Mbps速率下,時鍾頻率為25MHz,10Mbps速率下,時鍾頻率為2.5MHz。RX_CLK也是由PHY側提供的。 
  CRS:Carrier Sense,載波偵測信號,不需要同步於參考時鍾,只要有數據傳輸,CRS就有效,另外,CRS只有PHY在半雙工模式下有效; 
  COL:Collision Detectd,沖突檢測信號,不需要同步於參考時鍾,只有PHY在半雙工模式下有效。

3、RMII接口介紹

  這里寫圖片描述 
  RMII即Reduced MII,是MII的簡化板,連線數量由MII的16根減少為8根。 
  TXD[1:0]:數據發送信號線,數據位寬為2,是MII接口的一半; 
  RXD[1:0]:數據接收信號線,數據位寬為2,是MII接口的一半; 
  TX_EN(Transmit Enable):數據發送使能信號,與MII接口中的該信號線功能一樣; 
  RX_ER(Receive Error):數據接收錯誤提示信號,與MII接口中的該信號線功能一樣; 
  CLK_REF:是由外部時鍾源提供的50MHz參考時鍾,與MII接口不同,MII接口中的接收時鍾和發送時鍾是分開的,而且都是由PHY芯片提供給MAC芯片的。這里需要注意的是,由於數據接收時鍾是由外部晶振提供而不是由載波信號提取的,所以在PHY層芯片內的數據接收部分需要設計一個FIFO,用來協調兩個不同的時鍾,在發送接收的數據時提供緩沖。PHY層芯片的發送部分則不需要FIFO,它直接將接收到的數據發送到MAC就可以了。 
  CRS_DV:此信號是由MII接口中的RX_DV和CRS兩個信號合並而成。當介質不空閑時,CRS_DV和RE_CLK相異步的方式給出。當CRS比RX_DV早結束時(即載波消失而隊列中還有數據要傳輸時),就會出現CRS_DV在半位元組的邊界以25MHz/2.5MHz的頻率在0、1之間的來回切換。因此,MAC能夠從 CRS_DV中精確的恢復出RX_DV和CRS。 
  在100Mbps速率時,TX/RX每個時鍾周期采樣一個數據;在10Mbps速率時,TX/RX每隔10個周期采樣一個數據,因而TX/RX數據需要在數據線上保留10個周期,相當於一個數據發送10次。 
  當PHY層芯片收到有效的載波信號后,CRS_DV信號變為有效,此時如果FIFO中還沒有數據,則它會發送出全0的數據給MAC,然后當FIFO中填入有效的數據幀,數據幀的開頭是“101010—”交叉的前導碼,當數據中出現“01”的比特時,代表正式數據傳輸開始,MAC芯片檢測到這一變化,從而開始接收數據。 
  當外部載波信號消失后,CRS_DV會變為無效,但如果FIFO中還有數據要發送時,CRS_DV在下一周期又會變為有效,然后再無效再有效,直到FIFO中數據發送完為止。在接收過程中如果出現無效的載波信號或者無效的數據編碼,則RX_ER會變為有效,表示物理層芯片接收出錯。

4、SMII接口介紹

  這里寫圖片描述 
  SMII即Serial MII,串行MII的意思,跟RMII相比,連線進一步減少到4根。 
  TXD:發送數據信號,位寬為1; 
  RXD:接收數據信號,位寬為1; 
  SYNC:收發數據同步信號,每10個時鍾周期置1次高電平,指示同步。 
  CLK_REF:所有端口共用的一個參考時鍾,頻率為125MHz,為什么100Mbps速率要用125MHz時鍾?因為在每8位數據中會插入2位控制信號,請看下面介紹。 
  TXD/RXD以10比特為一組,以SYNC為高電平來指示一組數據的開始,在SYNC變高后的10個時鍾周期內,TXD上依次輸出的數據是:TXD[7:0]、TX_EN、TX_ER,控制信號的含義與MII接口中的相同;RXD上依次輸出的數據是:RXD[7:0]、RX_DV、CRS,RXD[7:0]的含義與RX_DV有關,當RX_DV為有效時(高電平),RXD[7:0]上傳輸的是物理層接收的數據。當RX_DV為無效時(低電平),RXD[7:0]上傳輸的是物理層的狀態信息數據。見下表: 
  這里寫圖片描述 
  當速率為10Mbps時,每一組數據要重復10次,MAC/PHY芯片每10個周期采樣一次。MAC/PHY芯片在接收到數據后會進行串/並轉換。

5、SSMII接口介紹

  這里寫圖片描述 
  SSMII即Serial Sync MII,叫串行同步接口,跟SMII接口很類似,只是收發使用獨立的參考時鍾和同步時鍾,不再像SMII那樣收發共用參考時鍾和同步時鍾,傳輸距離比SMII更遠。

6、SSSMII接口介紹  

  這里寫圖片描述 
  SSSMII即Source Sync Serial MII,叫源同步串行MII接口,SSSMII與SSMII的區別在於參考時鍾和同步時鍾的方向,SSMII的TX/RX參考時鍾和同步時鍾都是由PHY芯片提供的,而SSSMII的TX參考時鍾和同步時鍾是由MAC芯片提供的,RX參考時鍾和同步時鍾是由PHY芯片提供的,所以顧名思義叫源同步串行。

7、GMII接口介紹

  這里寫圖片描述 
  與MII接口相比,GMII的數據寬度由4位變為8位,GMII接口中的控制信號如TX_ER、TX_EN、RX_ER、RX_DV、CRS和COL的作用同MII接口中的一樣,發送參考時鍾GTX_CLK和接收參考時鍾RX_CLK的頻率均為125MHz(1000Mbps/8=125MHz)。 
  在這里有一點需要特別說明下,那就是發送參考時鍾GTX_CLK,它和MII接口中的TX_CLK是不同的,MII接口中的TX_CLK是由PHY芯片提供給MAC芯片的,而GMII接口中的GTX_CLK是由MAC芯片提供給PHY芯片的。兩者方向不一樣。 
  在實際應用中,絕大多數GMII接口都是兼容MII接口的,所以,一般的GMII接口都有兩個發送參考時鍾:TX_CLK和GTX_CLK(兩者的方向是不一樣的,前面已經說過了),在用作MII模式時,使用TX_CLK和8根數據線中的4根。

8、RGMII接口介紹

  這里寫圖片描述 
  RGMII即Reduced GMII,是RGMII的簡化版本,將接口信號線數量從24根減少到14根(COL/CRS端口狀態指示信號,這里沒有畫出),時鍾頻率仍舊為125MHz,TX/RX數據寬度從8為變為4位,為了保持1000Mbps的傳輸速率不變,RGMII接口在時鍾的上升沿和下降沿都采樣數據。在參考時鍾的上升沿發送GMII接口中的TXD[3:0]/RXD[3:0],在參考時鍾的下降沿發送GMII接口中的TXD[7:4]/RXD[7:4]。RGMI同時也兼容100Mbps和10Mbps兩種速率,此時參考時鍾速率分別為25MHz和2.5MHz。 
  TX_EN信號線上傳送TX_EN和TX_ER兩種信息,在TX_CLK的上升沿發送TX_EN,下降沿發送TX_ER;同樣的,RX_DV信號線上也傳送RX_DV和RX_ER兩種信息,在RX_CLK的上升沿發送RX_DV,下降沿發送RX_ER。 
  這里寫圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM