10M/100M/1000M自協(xié)商基理
10M/100M/1000M自協(xié)商,主要協(xié)商的內(nèi)容為“速度雙工”、“流控”和“主從”三大類,下面先介紹10M/100M/1000M自協(xié)商的BasePage和NextPage的bits分配,然后就這三大類內(nèi)容進行闡述。
10M/100M/1000M自協(xié)商交互方式
1000BASE-T PHY(無EEE能力時)按順尋地不間斷地交換一個自動協(xié)商基本頁、一個1000BASE-T格式的下一頁,和兩個1000BASE-T未格式化的下一頁;1000BASE-T PHY(有EEE能力時)按順尋地不間斷地交換一個自動協(xié)商基本頁、一個1000BASE-T格式的下一頁,兩個1000BASE-T未格式化的下一頁,一個1000BASE-T格式的下一頁,和一個1000BASE-T未格式化的下一頁;
1000BASE-T BasePage和NextPage編碼格式分別如下圖:
速度雙工協(xié)商
速度雙工協(xié)商主要靠設(shè)置“本地廣告能力寄存器Auto-NegotiationAdvertisement Register Register 4”的bit9:5和“本地控制寄存器1000BASE-T Control Register Page 0, Register 9”的bit9:8實現(xiàn)的。下面為描述問題方便,把Reg 9.bit9:8+Reg 4.bit9:5合并為T[11:5].本端和遠端選擇彼此都有的能力(T[11:5]中的置1的相關(guān)bit)中優(yōu)先級高的那種能力作為本端PHY和遠端PHY的實際工作的速度雙工狀態(tài)。
PHY能力優(yōu)先級由高到低排序如下:
1000BASE-Tfull duplex
1000BASE-T half duplex[沒有芯片支持]
100BASE-T2 full duplex[已淘汰]
100BASE-TX full duplex
100BASE-T2[已淘汰]
100BASE-T4[已淘汰]
100BASE-TX half duplex
10BASE-T full duplex
10BASE-T half duplex
下面分為“本端遠端均為千兆PHY”和“一端為千兆PHY,另一端均為百兆PHY”兩種情況討論。
“本端遠端均為千兆PHY”:
例子1:本端PHY的T[11:5]=2b1001111;雙絞線另一側(cè)的遠端PHY的T[11:5]=2b0000101。此時他倆的彼此能力的交集為PHY的T[11:5]=2b0000101,即雙絞線鏈路雙方都支持的PHY能力為T[5]=1(10BASE-T half duplex)和T[7]=1(100BASE-TX half duplex),并且因為優(yōu)先級順序為100BASE-TX half duplex>10BASE-T half duplex,故此時本端和遠端速度雙工自協(xié)商的結(jié)果為“100BASE-TX half duplex”;
例子2:本端PHY的T[11:5]=2b1001111;雙絞線另一側(cè)的遠端PHY的T[11:5]=2b1001010。此時他倆的彼此能力的交集為PHY的T[11:5]=2b1001010,即雙絞線鏈路雙方都支持的PHY能力為T[6]=1(10BASE-T full duplex)、 T[8]=1(100BASE-TX full duplex)和T[11]=1(1000BASE-T full duplex),并且因為優(yōu)先級順序為1000BASE-Tfull duplex >100BASE-TX full duplex>10BASE-T full duplex,故此時本端和遠端速度雙工自協(xié)商的結(jié)果為“1000BASE-T full duplex”;
例子3:本端PHY的T[11:5]=2b1000000;雙絞線另一側(cè)的遠端PHY的T[11:5]=2b0001111。此時他倆的彼此能力的交集為PHY的T[11:5]=2b0000000,即雙絞線鏈路雙方?jīng)]有PHY能力交集,故此時本端和遠端永遠無法建立正確鏈接。
寫到這里,可能有小伙伴感覺到疑惑,既然88e1111 PHY的“本地控制寄存器1000BASE-T Control Register Page 0, Register 9”的bit8(1000BASE-T half duplex)可設(shè)置為1,為什么說芯片均不支持1000BASE-T half duplex呢?筆者曾經(jīng)實踐多款不同廠家的PHY(broadcom,marvell,vitesse,realtek,micrel等),發(fā)現(xiàn)即使本端和遠端的該能力bit均置1,但是實測效果是1000BASE-Thalf duplex模式實際并未生效,為避免產(chǎn)生不必要的混淆,建議驅(qū)動工程師將此bit永遠初始化0。其實芯片廠家普遍選擇不實現(xiàn)1000BASE-T half duplex是合乎情理的。我們知道以太網(wǎng)PHY半雙工的技術(shù)需求主要是20年前,因為當年LAN主要是基于集線器組網(wǎng)(集線器基于總線廣播模式而非地址表交換模式),并且當年的計算機的CPU能力普遍孱弱,硬件無環(huán)境無法支持全雙工的應(yīng)用。
而在進入1000BASE-T時代(大概是2007年)后,集線器已經(jīng)被性能優(yōu)越的交換機(基于SRAM地址表架構(gòu)的交換機天生支持全雙工能力)完全取代,同時計算機的CPU的處理性能極大飛躍,故此時此刻半雙工的需求不復(fù)存在。所有廠家就沒有花額外的成本去支持1000BASE-T half duplex必要。(還有另外一個原因,理論上如果支持基于CSMA/CD的1000BASE-T半雙工200米的沖突域的需求,以太網(wǎng)的最小幀長要從64Byte提高到512Byte,這樣的變動的歷史代價太大)。
“一端為千兆PHY,另一端均為百兆PHY”:
千兆PHY通過“LinkPartner Ability Register - Base Page, Copper Page 0, Register 5”的bit15獲知雙絞線的另一端為百兆PHY(bit15 NextPage=0),故千兆PHY也只支持BasePage發(fā)送(此時NextPage永遠不對外發(fā)送)。那當前的情況就完全等同于10M/100M自協(xié)商了,該部分在“10M/100M自協(xié)商基理”章節(jié)已闡述過,故這里就不再贅述了。
流控協(xié)商
流控主要靠設(shè)置“本地廣告能力寄存器Auto-Negotiation Advertisement Register Register 4”的bit11:10實現(xiàn)的。軟件通過本端和遠端的bit11:10的各種組合進行對本端MAC的tx和rx方向的802.3流控進行設(shè)置,具體規(guī)則如下表:
“MAC-PCS控制寄存器”需要軟件根據(jù)“PHY-AN廣告寄存器”和“PHY-AN LP廣告狀態(tài)寄存器”的內(nèi)容進行動態(tài)更新配置,交換芯片硬件并不會自動聯(lián)動。 流控設(shè)置之所以有上表的規(guī)則要求,是需要保證雙絞線鏈路雙方的流控狀態(tài)匹配(雙方都“tx 使能rx使能”,雙方都“tx關(guān)閉rx關(guān)閉”和一方“tx關(guān)閉rx使能”另一方“tx使能rx關(guān)閉”)。如果出現(xiàn)雙絞線鏈路雙方流控失配,在鏈路擁塞時不但不能享受流控的優(yōu)點,反而會引起鏈路中出現(xiàn)大量Pause流控幀使已經(jīng)擁塞的鏈路更加擁塞。
主從協(xié)商
在1000BASE-T模式中,鏈路的兩端執(zhí)行環(huán)路定時(loop timing)。鏈接的一端協(xié)商配置為主設(shè)備,另一個協(xié)商配置為從設(shè)備。主設(shè)備發(fā)送和接收時鐘鎖定在本地晶振輸入。從設(shè)備發(fā)送和接收時鐘被鎖定到傳入的接收數(shù)據(jù)流。環(huán)路定時(loop timing)通過確保發(fā)射機和接收機在鏈路的每一端都以相同的頻率工作。
主從協(xié)商主要靠設(shè)置 “本地控制寄存器1000BASE-T ControlRegister Page 0, Register 9”的bit12:10實現(xiàn)的。具體規(guī)則如下表:
網(wǎng)絡(luò)管理員因避免出現(xiàn)上述表格的最后兩種情況,一旦出現(xiàn)此情況10M/100M/1000M自協(xié)商將永遠無法完成,故此時本端和遠端永遠無法建立正確鏈接。 好的小伙伴們,這期10M/100M/1000M自協(xié)商就講完啦,下一課會開始“10M/100M/1000M/2.5G/5G/10G/25G/40G自協(xié)商”相關(guān)內(nèi)容。
審核編輯:劉清
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5543瀏覽量
174079 -
集線器
+關(guān)注
關(guān)注
0文章
395瀏覽量
39904 -
雙絞線
+關(guān)注
關(guān)注
2文章
256瀏覽量
23970 -
PHY
+關(guān)注
關(guān)注
2文章
310瀏覽量
52355 -
控制寄存器
+關(guān)注
關(guān)注
0文章
34瀏覽量
11586
原文標題:以太網(wǎng)自協(xié)商機制--雙絞線自協(xié)商(四)
文章出處:【微信號:FPGA開源工坊,微信公眾號:FPGA開源工坊】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
以太網(wǎng)自協(xié)商機制-雙絞線自協(xié)商案例設(shè)計(三)

DP83822I工業(yè)以太網(wǎng)PHY自協(xié)商功能與其Strap電阻配置
為什么以太網(wǎng)+柔性板與電腦無法協(xié)商為100M?
基于DP83822I工業(yè)以太網(wǎng)PHY自協(xié)商功能與其Strap電阻配置
FPGA光纖以太網(wǎng)自協(xié)商的設(shè)計
基于語義網(wǎng)技術(shù)的SLA協(xié)商機制
如何調(diào)試10G/25G以太網(wǎng)IP自協(xié)商/Link Training

10G/25G以太網(wǎng)IP自協(xié)商調(diào)試方案

以太網(wǎng)網(wǎng)口自協(xié)商功能現(xiàn)象

DP83822I工業(yè)以太網(wǎng)PHY自協(xié)商功能與其Strap電阻配置

DP83822I工業(yè)以太網(wǎng)PHY自協(xié)商功能與其Strap電阻配置

一文解析以太網(wǎng)自動協(xié)商技術(shù)

基于IEEE Clause 28雙絞線的以太網(wǎng)自協(xié)商機制

基于IEEE Clause 28雙絞線的以太網(wǎng)自協(xié)商機制解析(一)

評論