整車的EEA(Electrical/Electronic Architecture,電子電器架構)中,以太網常用的通信速率有100MHz和1000MHz(1G)。 本文聚焦100M Ethernet的討論。 100MHz的Ethernet也稱為FE(Fast Ethernet,快速以太網),對于100MHz的以太網,汽車中,常用的又包括100BASE-T1和100BASE-TX,以太網的使用中,不知大家是否產生過這樣的疑問:
FE的100MHz通信速率如何產生?
FE的100MHz通信速率與通信接口關系?
FE(100Base-TX)的編碼規則?
帶著這些疑問,本文基于100BASE-TX,展開聊聊。
1、MAC與PHY接口
uC的MAC(Media Access Control) Controller發送/接口Ethernet Frame需要依賴PHY芯片**(Phy**sical Layer,物理接口層)。 項目中,使用不同的速率的Ethernet,對應的PHY接口不同,如下所示:
如上圖(TC3xx),PHY接口主要包括MII(Media Independent Interface)、RGMII(Reduced GMII)、RMII(Reduced MII)。 一般來說,uC大都會支持1000M Ethernet,但是,出于成本考慮,結合項目實際,會選用不同的PHY芯片,不同的PHY芯片型號,可能支持的Ethernet速率會不同。 比如:Realtek RTL8211F(I)/RTL8211FD(I) 可以兼容10Base-T, 100Base-TX,1000Base-TIEEE 802.3,而DP83825I只兼容10Base-T, 100Base-TX IEEE 802.3。 所以,在使用Ethernet的MAC接口時,需要先確認PHY能兼容的接口有哪些。
(一)DP83825I與MAC之間的信號線
PHY(DP83825)與MAC、RJ45之間的物理連接關系如下所示:
本文主要討論100M Ethernet,而DP83825I兼容的PHY接口為RMII。 RMII接口由7根信號線外加一個時鐘參考線。
TXD[1:0]:數據發送信號,共2根信號線;;
RXD[1:0]:數據接收信號,共2根信號線;
TX_EN(TransmitEnable):數據發送使能信號;
RX_ER(ReceiveError):數據接收錯誤指示信號(可選);
CLK_REF:外部時鐘源提供50MHz參考時鐘,由PHY芯片提供給MAC。
CRS_DV:此信號是由MII接口中的RX_DV和CRS兩個信號合并而成。
以DP83825I為例,PHY、MAC的接口連接如下所示:
如上圖,TC3xx的GETH MAC如果與DP83825I PHY能正常通信,不使用Rx_CLK、RX_DV,RX_ER可以選用。
DP83825I PHY中使用的通信信號線示意如下:
2、FE(100Base-TX)的100MHz通信速率如何產生?
兩個ECU使用100Base-TX的以太網通信連接示意如下所示:
對于RMII接口,參考時鐘為外部時鐘,時鐘頻率50MHz,收/發過程中,均使用兩條數據線,因此,傳輸速率100MHz(2 * 50MHz)就是這么來的,即:一個Clock可以傳輸2個bit。 這里的100是指PHY從MAC接收/發送的速率,實際總線上傳輸的模擬信號(差分信號)帶寬并不是100MHz。 模擬信號帶寬不是100MHz,是多少呢?答:模擬信號的速率與以太網的編碼格式有關。
3、FE(100Base-TX)的編碼規則
100BASE-TX使用4B5B、NRZI(Non Return Zero Inverted Code,反向不歸零編碼)、MLT-3(Multi Level Transmit,多電平傳輸)方法進行編碼和解碼,進而生成差分電壓。
(一)4B5B編碼
MAC會通過多條發送數據線(Tx_D[n])將要發送的信息并行發送給PHY,PHY收到數據以后,先進行串行序列化處理,之后進行4B5B編碼。
4B5B編碼就是使用5Bit表示4Bit(實際要發送的數據),即:在4bit待發送數據中插入0或者1構成5bit。 4Bit數據,可以構成2^4 = 16種組合,而5bit,可以構成2^5 = 32種組合,所以會有一部分5bit組合用于控制。
4B5B對應編碼、解碼表如下所示:
示例:PHY收到MAC發送的數據0000 0001,經過4B5B編碼后,變成11110 01001,如下所示:
經過4B5B編碼以后,編碼效率降低,因為插入了一個無效bit,編碼率 = 4/5 =80%。
PHY從MAC端接收數據時,速率是100Mbps,經過4B5B編碼后,數據帶寬變成125MHz,如果使用5類非屏蔽雙絞線(UTP)傳輸,不可行,因為5類非屏蔽雙絞線最高支持 100MHz 的數據帶寬。 所以,數據經過4B5B編碼后,需要使用其他方式降低帶寬,以便于使用5類非屏蔽雙絞線(UTP)傳輸數據。 100Base-TX常用降低帶寬的方法有哪些呢?答:本文討論NRZI和 MLT-3組合的方式。 即:先用NRZI,將帶寬降低一半(62.5MHz),再經過MLT-3編碼,帶寬進一步降低一半(31.25MHz)。
(2)NRZI編碼
理解NRZI之前,我們需要先理解RZ(Return to Zone,歸零編碼)。
RZ編碼規則:正電平表示邏輯1,負電平表示0,每次傳輸一個邏輯電平后需要返回零電平。
eg:RZ方式傳輸1011數據時,電平變化如下所示:
對于RZ,每次操作都需要歸零處理,增加了帶寬,因此,又提出了NRZ(No Return to Zone,非歸零編碼),即:高電平表示1,低電平表示0。
eg:NRZ方式傳輸1011數據時,電平變化如下所示:
但是,使用NRZ方式,雖然不浪費帶寬,但是,當傳輸的數據中,出現連續1或者0時,接收端會因識別不到電平變化可能采樣錯誤,即:無法與發送端進行時鐘同步。 所以,又進一步的引入了NRZI編碼方式,你可能會說:NRZI也沒有同步的能力。 如果發送端先發送一個同步包,接收端即可進行同步,而100Base-TX采用雙絞線差分傳輸,適合使用此方式。
NRZI的編碼規則是什么呢?答:0表示電平有反轉,1表示電平沒有反轉。
eg:NRZ、NRZI方式傳輸1011數據時,電平變化對比如下所示:
(三)MLT-3編碼
MLT-3編碼使用3個電平(正電平、負電平、零電平)編碼要傳輸的數據,MLT-3的編碼規則:
1、如果下一輸入為“0”,則電平保持不變;
2、如果下一輸入為“1”,則產生跳變,此時又分兩種情況。
如果前一輸出是“+1”或“-1”,則下一輸出為“0”;
如果前一輸出是“0”,其信號極性和最近一個非“0”相反。
eg:MLT-3方式傳輸1011數據時,電平變化對比如下所示:
審核編輯:湯梓紅
-
以太網
+關注
關注
40文章
5543瀏覽量
174044 -
接口
+關注
關注
33文章
8868瀏覽量
152910 -
編碼
+關注
關注
6文章
963瀏覽量
55309 -
Mac
+關注
關注
0文章
1114瀏覽量
52390 -
PHY
+關注
關注
2文章
310瀏覽量
52351
原文標題:以太網筆記:快速以太網100Base-TX接口及編碼
文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
用以太網提供車載連接,BroadR-Reach以太網勢不可擋
集成的3端口10BASE-T/100BASE-TX/FX管理型以太網交換機
布線技巧五:100Base-(T) TX/T4/FX-以太網
常見的以太網接口類型
裕太微電子推出兩款自主研發的國產以太網PHY芯片
工業以太網協議結構_工業以太網協議種類
100/1000BASE-T1千兆車載以太網轉換器

智嵌物聯100/1000BASE-T1千兆車載以太網交換機

評論