摘要
物理層器件PHY(Physical Layer Interface Devices)是將各網元連接到物理介質上的關鍵部件。負責完成互連參考模型(OSI)第1層中的功能,即為鏈路層實體之間進行bit傳輸提供物理連接所需的機械、電氣、光電轉換和規程手段。其功能包括建立、維護和拆除物理電路,實現物理層比特bit流的透明傳輸等。通常物理層的功能均被集成在一個芯片之中,本文主要介紹了物理層的主要功能和主要接口以及以太網PHY芯片是如何實現這些功能的。
物理層(PHY)的結構
為了更好的闡述以太網物理層PHY芯片的主要功能,我們首先介紹一下物理層的結構。物理層是OSI的第一層,它雖然處于最底層,卻是整個開放系統的基礎。物理層為設備之間的數據通信提供傳輸媒體及互連設備,為數據傳輸提供可靠的環境。其功能:透明的傳送比特流;如圖1所示,物理層包括四個功能層和兩個層接口,四個功能層為:物理編碼子層、物理介質連接子層、物理介質相關子層和自動協商子層;兩個層接口為物理介質無關層接口(MII)和物理介質相關層接口(MDI),在MII的上層是邏輯數據鏈路層(DLL),而MDI的下層則直接與傳輸介質相連,以太網物理層PHY芯片實現的功能就是上面所提到的四層和兩個接口的功能。
圖1 物理層結構
以太網PHY芯片主要功能
以太網中PHY芯片的種類繁多,芯片支持的物理層規范標準也是多種多樣,數據單板上使用PHY芯片是BROADCOM公司的BCM5248和MARVELL公司的88E1111,BCM5248支持的10Base-T、100Base-TX和100Base-FX規范標準,88E1111支持10Base-T、100Base-TX和1000Base-T規范標準。
這里主要介紹了常用的10Base-T、100Base-TX和100Base-FX標準下PHY芯片主要完成的功能,如圖2所示。在10Base-T的標準下,發送數據的過程為由MAC層的數據首先經過Manchester編碼,然后經過串并轉換,轉換后的串行碼流經過NRZ編碼,最后經過DAC轉換后送到5類雙絞線上去進行傳輸,接受數據過程相反。
在100Base-TX的標準下,發送數據的過程為由MAC層的數據首先經過4B/5B編碼,然后經過串并轉換,轉換后的串行碼流經過NRZI編碼,NRZI編碼后的數據還需要經過擾碼和MLT-3編碼,最后經過DAC轉換后送到5類雙絞線或者更高的電纜上去進行傳輸,接受數據過程相反。在10Base-T的標準,發送數據的過程為由MAC層的數據首先經過串并轉換,轉換后的串行碼流經過NRZ編碼,再經過Manchester編碼,最后經過DAC轉換后送到5類雙絞線上去進行傳輸,接受數據過程相反。在100Base-FX的標準下,發送數據的過程為由MAC層的數據首先經過4B/5B編碼,然后經過串并轉換,轉換后的串行碼流經過NRZI編碼,直接送到光纖上進行傳輸,接受數據過程相反。下面將詳細講述各個子層和接口的功能。
圖2 在10Base-T/100Base-TX/100Base-FX標準下PHY芯片主要完成的功能
物理介質無關層接口(MII)
MII滿足ISO/IEC8802-3和IEEE802.3標準的要求,支持以太網數據傳輸速率為10Mbit/s、100Mbit/s、1000Mbit/s或10Gbit/s。MII接口主要由與鏈路層之間的端口(MAC-PHY)和與站管理實體(STA: Station Management Entity)之間的端口(STA-PHY)兩部分組成。
3.1 MAC-PHY端口
這是MAC與PHY器件之間的接口,包括同步收發接口和介質狀態控制接口。在介質狀態控制接口中有載波讀出信號(CRS: Carrier Sense Signal)和碰撞檢測信號(COL: Collision Detection Signal)等。
3.2 STA-PHY端口
STA-PHY作為MII接口的一部分,用于在STA和PHY器件之間交換有關控制、狀態和配置方面的信息。為此,ISO/IEC、IEEE規范了這個雙線串行管理接口的相關協議及管理信息幀的結構和管理寄存器的標準。
(1) 管理寄存器
按標準,管理寄存器集(Management Register set)包括強制性“基本控制”寄存器(Mandatory “Basic Control” Registers)、狀態寄存器(Status Registers)和專用擴展寄存器ICS(Specific Extended Registers)幾部分。
(2) 管理信號幀結構
管理接口是一個雙向串行接口,用于交換PHY與STA之間的配置、控制和狀態數據,利用定義的寄存器集來實現PHY和STA的數據交換。STA可以啟動所有的處理功能。ISO/IEC、IEEE對串行管理數據流定義了相關管理幀結構和協議。
3.3 常用PHY芯片的MII接口
常用PHY芯片的物理介質無關層接口包括:媒質無關接口(MII: Medium Independent Interface)、簡化媒質無關接口(RMII: Reduced Media Independent Interface)、串行媒質無關接口(SMII: Serial Media Independent Interface)、源同步串行媒質無關接口(SS-SMII: Source Synchronous-Serial Media Independent Interface)、千兆媒質無關接口(GMII: Gigabit Media Independent Interface)、簡化千兆媒質無關接口(RGMII: Reduced Gigabit Media Independent Interface)和串行千兆媒質無關接口(SGMII: Serial Gigabit Media Independent Interface)。具體每種接口的信號定義和數據發送時序在此就不多講,實際工作過程中遇到某種接口查閱相關文檔即可。
物理編碼子層(PCS)
物理編碼子層PCS有兩個對外接口,一是與MII的接口,二是與物理介質連接子層(PMA: Physical Medium Attachment Sublayer)的接口。PCS子層遵循ISO/IEC8802.3和IEEE802.3標準,物理編碼子層的主要功能包括對信號的編碼譯碼、收發處理、管理和控制等。這里可用100Base-TX速率來討論PCS子層要完成的功能。
4.1 PCS在100Mbit/s與10Mbit/s 下的工作模式
一般稱10Base-T為以太網,100Base-TX為快速以太網,兩者信號的速率,執行的協議以及采用的傳輸介質均有所不同。PCS子層對于100Base-TX信號進行4B/5B編譯碼、擾碼(Scrambled)和MLT-3編碼,將信號交換為62.5MHz的三元數據,然后通過隔離變壓器送入5類雙絞線電纜或者比5類雙絞線電纜更好地電纜線路中傳輸。對于10Base-T信號則需進行曼切斯特(Manchester)編譯碼和相關的處理。對100Base-TX信號和10Base-T信號處理的功能比較如表1所示。
表1 100Base-TX和10Base-T信號處理功能的比較
信號 | 名稱 | 速率 | 協議 | 傳輸介質 | 信號主要處理過程 |
10Base-T | 以太網信號 | 10 | IEEE 802.3 | 3類UTP、STP | Manchester編碼 |
100Base-TX | 快速以太網信號 | 62.5 | IEEE 802.3u | 5類UTP、STP | 4B/5B->擾碼->MLT-3 |
4.2 PCS發送子層
這里討論10Mbit/s和100Mbit/s兩種情況。PCS發送子層的功能是編碼、碰撞檢測與并/串變換等。
4.2.1 100Mbit/s PCS發送子層
PCS發送10Base-TX的數據需要進行4B/5B編碼,即是將4bit數據組成的奈培(nib)變換成由5bit數據組成的碼字。4B/5B編碼的目的就是將數據包的起始符、幀結束、空載與控制功能等符號都編成碼組進行傳輸。將4B碼的nib映射入5B碼字的過程是按IEEE 802.3標準規范進行的。
每個MAC/Repeater幀的前16nib(16×4=64bit)表示幀前序(Frame Preamble)。PCS將前二個奈培用數據流起始標幟符/J/K/代替,并在幀結束時加入數據流結束標幟符/T/R/,用于表示包的結束(ESD: End-of-Stream Delimiter)。4B/5B編碼器同樣在包之間填充間隔空信號(Idle Period)。用間隔空(Idle)符號實現數據流的連續性。表2即是4B/5B編碼表,編碼后的符號送入后面的擾碼器。
表2 4B/5B編碼表
PCS發送的子層4B/5B編碼,有32種5bit的編碼組合,其中16種5bit組合用于表示原16捉nib(4bit)的組合;另16種5bit組合,IEEE標準定義了6種用于控制使用的組合,還有10種認為非法的組合。IEEE定義的6種控制碼組是:
1. /H/表示一個發送差錯;
2. /I/表示一個IDLE空載;
3. 兩個碼組表示數據流起始標識符(SSD);
4. /J/和/K/;
5. 兩個碼組表示數據流結束標幟符(ESD);
6. /T/和/R/;
4.2.2 10Mbit/s的PCS發送子層
按ISO/IEC、IEEE標準的要求,10Mbit/s的PCS發送子層采用Manchester編碼,即利用數據與時鐘相“異或”,使數據每bit的前一半CLK取數據的補碼,后一半CLK取數據的原碼,從而保證躍變沿總是發生在每bit的中央處。Manchester編碼器在數據包結束后加入一個起始空脈沖(SOI: Start of Idle Pulse)。在編碼過程中包與包之間的間隔則不進行編碼,由鏈路脈沖填充。Manchester編碼過程的時間關系如圖3所示。
圖3 Manchester編碼過程的時間關系圖
從MAC/Repeater接口來的4bit的nib流或串行bit流,利用Manchester編碼進行編碼。編碼的邏輯是:
1、二進制NRZ數據“1”
當碼元(bit)周期前半周期時取負值;
當碼元(bit)周期后半周期時取正值。
2、二進制NRZ數據“0”
當碼元(bit)周期前半周期時取正值;
當碼元(bit)周期后半周期時取負值。
使用Manchester編碼的優點,一是每個bit周期可有一編碼時鐘;二是不必考慮數據本身是“0”還是“1”,增加了數據的躍變沿。但它的缺點是編碼后的數據率增加了一倍。
PCS子層還可完成碰撞檢測,即在數據傳輸和接收同時發生時,需按標準規范和根據工作模式進行處理。在半雙工工作模式下,發生碰撞時產生檢測信號(COL: Collision Detection Signal),而在全雙工工作模式下,不產生COL。
4.3 PCS接收子層
4.3.1 PCS接收子層的功能
PCS接收子層主要完成以下功能:
串/并變換;載波檢測;4B/5B或Manchester譯碼;碼組成幀。
即PCS接收子層狀態機連續接收從PMA來的數據,將其由串行變換為并行,以及成幀和譯碼,之后送到MAC/Repeater接口。接收狀態機則在接收和數據狀態判斷之間進行轉換并連續這個過程,直到發生下述情況之一時為止:
數據流結束標幟符(ESD,即/T/R/符號);
有差錯發生;
過早結束(空號)。
依據ESD,接收狀態機返回到Idle狀態時,ESD并沒有被送入MAC/Repeater接口,因此檢測出的差錯將迫使接收狀態機宣告接收錯,并等待后面符號。若接收狀態機檢出“過早結束信號(Premature end)”,同樣也要宣告接收錯,而返回Idle狀態。
4.3.2 100Mbit/s的PCS接收子層4B/5B譯碼
由于從雙絞線對輸入的數據在發端進行了4B/5B編碼,因此在接收端必須利用4B/5B譯碼器進行譯碼,即將5B碼組映射成4B碼。4B/5B譯碼器的輸入來自解擾器(Descrambler)。按表3所示,將5bit碼組變換為4bit的nib。4B/5B譯碼器應首先將SSD幀符(/J/K/符號)拆除并用兩個4B數據“5”nb(/5/符號)來代替,對ESD幀符(/T/R/符號)也需要被拆除并用兩個4B數據“0”nib(/I/符號)代替。
表3 4B/5B符號譯碼表
10Mbit/s PCS接收子層Manchester譯碼
Manchester譯碼器將從雙絞線對接收到的Manchester編碼信號變換為原NRZ信號,并將空載開始脈沖(SOI: Start of Idle)拆除。在發送端,NRZ數據被Manchester編碼,即數據和時鐘相異或。在接收端,數據再次和時鐘相異或,就可以恢復出原始數據。圖4、圖5即為ML2653型10Base-T物理接口芯片發收Manchester信號編譯碼的定時圖。
圖4 發送系統定時圖
圖5 接收系統定時圖
PCS子層提供CRS載波檢測信號(Carrier Sense Signal)和碰撞檢出信號(Collision Detection Signal),用這兩個控制信號實現對MII接口的控制與管理。
物理介質連接子層(PMA)
PMA與PCS及PMD子層相連,因此必須有兩個接口:一個是到上邊PCS子層的接口,另一個是到下邊PMD子層的接口。PMA子層主要功能是:
(1) 鏈路監測(Link Monitoring);
(2) 載波檢測(Carrier Detecting);
(3) NRZI編/譯碼(NRZI En-coding/Decoding);
(4) 發送時鐘合成(Transmit Clock Synthesis);
(5) 接收時鐘恢復(Receive Clock Recovery);
5.1 PMA發送子層
PMA發送子層(PMA Transmit Sublayer)從PCS子層接收串行比特流并且將其變換為NRZI格式(10Mbit/s不用),然后將其送入物理介質相關子層(PMD)。
PMA使用數字鎖相環(PLL)合成技術,從時鐘標準接口得到需要發送的時鐘脈沖,并根據標準時鐘接口的安排,得到不同的發送時鐘值。
在PMA發送子層需進行NRZI(Non Return to Zero Inverter)編碼,這是一種兩電平的單極性(O和V)編碼。用兩電平之間的躍變表示數據“1”,無躍變表示“0”。在這里NRZI編碼為將數據變換成MLT-3編碼作了準備。具體實例如圖6所示。
圖6 NRZI和MLT-3編碼波形實例
5.2 PMA接收子層
PMA接收子層主要完成下面兩個功能:
(1) NRZI譯碼(NRZI Decoding/10Mbit/s不用): 即將從PMD子層接收的串行bit流進行NRZI譯碼,并將其變換成單極性的二進進PCS子層。
(2)接收時鐘恢復(Receive Clock Recovery): 即接收時鐘恢復是由PLL完成的,此PLL鎖定于從PMD子層接收據串行數據流上。PLL自動同步于串行數據流并從中提取時鐘,最后將恢復時鐘和NRZI譯碼后的數據流送到PCS子層。
當PMA接收子層沒有檢出任何接收信號時,PMA利用發送時鐘作為PLL的參考標準時鐘。在100Base-TX信號情況下,恢復出25MHz的時鐘。而在10Base-T信號時時鐘信號則是2.5MHz。
PMA接收子層的鏈路監視功能(Link Monitoring Function)可以來監視接收時鐘PLL。若接收時鐘PLL沒有捕獲鎖定的串行數據流,則產生一個差錯信號。在一般情況下,PMA鏈路監視功能塊是連續統計與其連接的鏈路狀態。若沒有檢出接收信號或者PLL誤幀,則宣告接收通道差錯。
物理介質相關子層(PMD)
這里主要介紹100Base-TX速率下的雙絞線對物理介質相關天的子層(TP-PMD:Twisted-Pair Physical Media Dependent)。按照ISO/IEC IEEE的標準,100Base-TX TP-PMD具有對數據流擾碼、解憂碼、三電平、多躍變沿MLT-3編譯碼功能及對接收信號進行直流恢復和自血壓計勻衡。
6.1 數據流的擾碼器/解擾器
在通常情況下,數字傳輸系統的魯棒性(Robustness)依賴于數字信號源的統計特性。例如,接收時鐘是從接收數據提取得來的,長串“0”和“1”可能引起同步的丟失。為了使定時恢復電路處于同步狀態,數據信號必須包含足夠的躍變沿。
IEEE 802.3u協議允許出現一些重復的數據圖形,這些重復的數據圖形在線路信號的功率頻譜密度分布中出現能量峰值,其不連續的頻譜分量是有害的,必須將其抑制掉。利用擾碼(Scrambling)技術擴展這些圖形從而抑制掉這些不連續峰值分量達20dB~25dB。這是因為在一定周期時間內信號數據的隨機性使得數據信號有均勻功率輸出。這樣,峰值能量被消除,從而改善了發送性能。
在發端TP-PMD子層對4B/5B編碼信號進行擾碼。擾碼器(Scrambler)將普通的NRZ bit流利用鍵控、模2加的方法產生一個被擾碼的數據流。其工作過程是:一個11bit的線性反饋移位寄存器(LFSR: Linear Feedback Shift Register)的輸入是第11bit和第9bit的模2加(Exclusive-OR),移位寄存器中至少包含有一個非零bit,其產生的偽隨機序列可以與需要擾碼的信號相加,最后得到已擾碼的信號(10Mbit/s不用擾碼)。
解擾器(Descrambler)的作用是將被擾碼的數據進行解擾,恢復成原NRZI數據信號。在數據解擾前,應首先實現解擾器同步,一旦建立了解擾器同步,在給定的期間內,只要檢出足夠擾碼空載圖形“1”的個數,即在1ms時間內至少應檢出25個連續解擾空信號“1”,就能保持同步狀態。若在1ms時間內沒有檢出25個連續解擾空信號“1”,則解擾將失步,而需要重新建立同步過程。
6.2 100Base-TX MLT-3編碼器/譯碼器
MLT-3線路編碼(MLT-3 Line Code)用于使用電纜介質的快速以太網。MLT-3是一種三電平雙極性編碼(+V、0和-V),用兩電平之間的躍變沿來表示“1”,而無躍變沿表示“0”。這里,MLT-3的最高基頻是NRZI的一半。使用MLT-3編碼可使高頻頻譜能量移向低于30MHz的邊緣區。與NRZI比較,MLT-3編碼90%以上的頻譜能量在40MHz以下,而NRZI則在70MHz以下。這樣,在相同數據率下,不要求有更高帶寬的傳輸介質。
MLT-3編碼器將從擾碼器來的NRZI擾碼信號(NRZ)變換為三電平MLT-3編碼信號;MLT-3譯碼器則作反變換恢復原NRZI擾碼信號。在這里從中提取了時鐘,并利用此時鐘進行譯碼。
6.3 直流恢復(DC Restoration)
在100Base-TX數據流的擾碼和MLT-3的編碼中,可能存在一定長度的連“1”或連“0”序列,使得數據流中產生直流分量,變壓器的隔直也會引起信號“基線”的漂移,即“基線”信號從其正常額定直流值移動或漂移,而不利于接收機對于噪聲的抑制特性,因此需要恢復信號原直流分量。
6.4 自適應均衡器(Adaptive Equalizer)
當數據在電纜中傳輸時,由于色散特性,將會導致信號失真和碼間干擾(ISI: Inter Symbol Interference),因此在接收機中必需采取措施將進來的失真和碼間干擾信號恢復成原信號。失真的產生依賴于信號的頻譜和介質環路的長度。由于在多數情況下,雙絞線對(TP)端口的特性是未知的,并且每個端口要求均衡的特性也不相同,因此,在TP-PMD標準中,提出了使用自適應均衡器恢復原信號的要求,以保證對接收信號進行適當的補償。自動均衡的方法之一是監視接收信號的能量,用以確定傳輸介質的長度,并據此調整均衡器的性能。因為,接收信號的幅度與傳輸的纜長是成正比的,所以若信號電平降低,則會增加均衡的總量,而便于補償信號在線路中的損失。
6.5 雙絞線對發射機
一般的雙絞線對發射機(Twittered-Pair Transmitter)編碼器、波形發生器以及傳輸介質線路驅動器所組成。波形發生器接受MLT-3編碼波形,并使用一個電流源交換陣列來控制輸出信號上升/下降沿的時間和信號的幅度電平。為了平滑此電流型信號輸出和除去高頻分量,需通過一個低通濾波器,使發送的輸出波形滿足有關脈沖樣板的標準。電流驅動型差動驅動器將平滑后符合要求的波形變換為可以驅動10m、100歐姆的5類非屏蔽雙絞線電纜或100m、150歐姆屏蔽雙絞線電纜的電流輸出。最后與傳輸介質的接口是一個隔離變壓器。
6.6 雙絞線對接射機
一般雙絞線對接收機被制作成通用模塊,通過一個隔離變壓器與傳輸介質連接。從雙絞線對(TP)輸入的信號首先進入自適應均衡器,在這里對于纜的低通特性進行補償,接著進入“基線漂移校正電路”恢復由變壓器隔去的波形直流分量。比較器將均衡后的信號變換回原數字電平供“鎮噪電路(Squelch Circuit)”使用。MLT-3譯碼器接收從比較器來的三電平MLT-3信號并且將其變換為常規數字數據,用來恢復時鐘和數據。其全過程如圖7 所示。
6.7 自動極性校正與隔離變壓器
一般的100Base-TX沒有極性問題,但是自動協商(FLP)對于極性是比較靈敏的。自動極性校正(Auto Polarity Correction)功能主要是應用于10Base-T工作方式,通常利用規范鏈路脈沖(NLP: Normal Link Pulses)檢驗信號極性,從而校正反向的信號極性。
ISO/IEC8802-3、IEEE802.3標準要求要通過隔離變壓器(Isolation Transformer)與電纜傳輸介質連接。而典型的磁性器件模塊包含兩個隔離變壓器,一個用于雙絞線對發射機,另一個用于接收機。通過這兩個隔離變壓器與傳輸介質物理隔離和交流耦合。
7 自動協商子層(AUTONEG)
7.1 自動協商子層功能
自動協商子層(AN: Auto-Negotiation Sublayer)通常有以下功能:
1、確定在鏈路段介質或電纜連接的另一端設備所具有的能力;
2、宣布遠端鏈路設備中上述能力;
3、與鏈路遠端設備交換彼此表征技術能力的數據參數,并且與遠端鏈路設備建立協議,自動選擇共有的最高性能工作模式。包括工作速率(10/100/1000Mbit/s)、傳輸介質和半/全雙工模式。
自動協商功能是在建立鏈路兩端設備中選擇共有的最高性能工作的模式,其算法和鏈路完整性算法的區別在于:標準鏈路完整性算法僅用于建立來往遠端設備的活動鏈路,而自動協商算法則是在選擇兩端共有的最高性能后,還要建立來往遠端設備的激活鏈路。
7.2 自動協商子層的啟動
在以下事件之一發生時,需啟動自動協商功能算法:
1、設備選通自動協商功能;
2、設備進入鏈路故障(Fail)狀態;
3、自動協商復位。
在ISO/IEC 8802-3標準的附錄28B中,列出了各種技術的優先權順序,如下所示:
100Base-TX全雙工(最高優先權);
100Base-T4;
100Base-TX半雙工;
10Baed-T全雙工;
10Base-T半雙工(最低優先權)。
一般地說,自動協商執行的過程要小于500ms,這與對端完成自動協商鏈路的能力無關。自動協商過程的監視器可以監視自動協商過程和鏈路是否建立。
總結
PHY物理層器件應滿足CSMA/CD以太網ISO/IEC 8802-3的標準要求。前面分別詳細描述了MII接口、物理編碼子層(PCS)、物理介質連接子層(PMA)、物理介質相關子層(PMD)以及自動協商(Auto-Negotiation)功能和原理。現將各部分功能概括于表1之中,以進行比較。
表4 以太網物理層PHY芯片功能表
MII | PCS | PMA | TP-PMD | AUTONEG | MDI |
接MAC/PHY端口;接STA/PHY管理端口 |
4B/5B編譯碼 (100Mbit/s); 碰撞檢測; 串并轉換; Manchester編譯碼(10Mbit/s); MAC/Repeater接口控制 |
鏈路監測; 載波監測; NRZI/NRZ編譯碼(100Mbit/s); 時鐘合成/恢復 |
擾碼/解擾(100Mbit/s); NRZI/MLT-3編譯碼(100Mbit/s); 直流恢復; 自動極性校正; 發送/接收變壓器隔離 |
NLP鏈路完整性(主要用于10Mbit/s); FLP自動協商 |
與傳輸介質相 |
審核編輯:劉清
-
編碼器
+關注
關注
45文章
3738瀏覽量
136322 -
寄存器
+關注
關注
31文章
5396瀏覽量
122462 -
PHY
+關注
關注
2文章
310瀏覽量
52325 -
以太網技術
+關注
關注
0文章
17瀏覽量
8126 -
DLL函數
+關注
關注
0文章
5瀏覽量
1652
發布評論請先 登錄
相關推薦
一文詳解以太網MAC芯片與PHY芯片

以太網MAC芯片與PHY芯片的關系是什么
以太網芯片MAC和PHY的關系 精選資料分享
請問如何更換以太網PHY芯片?
車載以太網MAC和PHY的問題詳解

評論