<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

以太網自協商機制—雙絞線自協商案例(四)

FPGA開源工坊 ? 來源:追宇星空 ? 2024-03-20 15:11 ? 次閱讀

10M/100M/1000M自協商基理

10M/100M/1000M自協商,主要協商的內容為“速度雙工”、“流控”和“主從”三大類,下面先介紹10M/100M/1000M自協商的BasePage和NextPage的bits分配,然后就這三大類內容進行闡述。

10M/100M/1000M自協商交互方式

1000BASE-T PHY(無EEE能力時)按順尋地不間斷地交換一個自動協商基本頁、一個1000BASE-T格式的下一頁,和兩個1000BASE-T未格式化的下一頁;1000BASE-T PHY(有EEE能力時)按順尋地不間斷地交換一個自動協商基本頁、一個1000BASE-T格式的下一頁,兩個1000BASE-T未格式化的下一頁,一個1000BASE-T格式的下一頁,和一個1000BASE-T未格式化的下一頁;

1000BASE-T BasePage和NextPage編碼格式分別如下圖:

ef18d054-e688-11ee-a297-92fbcf53809c.png

ef30fe86-e688-11ee-a297-92fbcf53809c.png

ef3abcdc-e688-11ee-a297-92fbcf53809c.png

速度雙工協商

速度雙工協商主要靠設置“本地廣告能力寄存器Auto-NegotiationAdvertisement Register Register 4”的bit9:5和“本地控制寄存器1000BASE-T Control Register Page 0, Register 9”的bit9:8實現的。下面為描述問題方便,把Reg 9.bit9:8+Reg 4.bit9:5合并為T[11:5].本端和遠端選擇彼此都有的能力(T[11:5]中的置1的相關bit)中優先級高的那種能力作為本端PHY和遠端PHY的實際工作的速度雙工狀態。

PHY能力優先級由高到低排序如下:

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;雙絞線另一側的遠端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),并且因為優先級順序為100BASE-TX half duplex>10BASE-T half duplex,故此時本端和遠端速度雙工自協商的結果為“100BASE-TX half duplex”;

例子2:本端PHY的T[11:5]=2b1001111;雙絞線另一側的遠端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),并且因為優先級順序為1000BASE-Tfull duplex >100BASE-TX full duplex>10BASE-T full duplex,故此時本端和遠端速度雙工自協商的結果為“1000BASE-T full duplex”;

例子3:本端PHY的T[11:5]=2b1000000;雙絞線另一側的遠端PHY的T[11:5]=2b0001111。此時他倆的彼此能力的交集為PHY的T[11:5]=2b0000000,即雙絞線鏈路雙方沒有PHY能力交集,故此時本端和遠端永遠無法建立正確鏈接。

寫到這里,可能有小伙伴感覺到疑惑,既然88e1111 PHY的“本地控制寄存器1000BASE-T Control Register Page 0, Register 9”的bit8(1000BASE-T half duplex)可設置為1,為什么說芯片均不支持1000BASE-T half duplex呢?筆者曾經實踐多款不同廠家的PHY(broadcom,marvell,vitesse,realtek,micrel等),發現即使本端和遠端的該能力bit均置1,但是實測效果是1000BASE-Thalf duplex模式實際并未生效,為避免產生不必要的混淆,建議驅動工程師將此bit永遠初始化0。其實芯片廠家普遍選擇不實現1000BASE-T half duplex是合乎情理的。我們知道以太網PHY半雙工的技術需求主要是20年前,因為當年LAN主要是基于集線器組網(集線器基于總線廣播模式而非地址表交換模式),并且當年的計算機的CPU能力普遍孱弱,硬件無環境無法支持全雙工的應用。

而在進入1000BASE-T時代(大概是2007年)后,集線器已經被性能優越的交換機(基于SRAM地址表架構的交換機天生支持全雙工能力)完全取代,同時計算機的CPU的處理性能極大飛躍,故此時此刻半雙工的需求不復存在。所有廠家就沒有花額外的成本去支持1000BASE-T half duplex必要。(還有另外一個原因,理論上如果支持基于CSMA/CD的1000BASE-T半雙工200米的沖突域的需求,以太網的最小幀長要從64Byte提高到512Byte,這樣的變動的歷史代價太大)。

“一端為千兆PHY,另一端均為百兆PHY”:

千兆PHY通過“LinkPartner Ability Register - Base Page, Copper Page 0, Register 5”的bit15獲知雙絞線的另一端為百兆PHY(bit15 NextPage=0),故千兆PHY也只支持BasePage發送(此時NextPage永遠不對外發送)。那當前的情況就完全等同于10M/100M自協商了,該部分在“10M/100M自協商基理”章節已闡述過,故這里就不再贅述了。

流控協商

流控主要靠設置“本地廣告能力寄存器Auto-Negotiation Advertisement Register Register 4”的bit11:10實現的。軟件通過本端和遠端的bit11:10的各種組合進行對本端MAC的tx和rx方向的802.3流控進行設置,具體規則如下表:

ef546916-e688-11ee-a297-92fbcf53809c.png

“MAC-PCS控制寄存器”需要軟件根據“PHY-AN廣告寄存器”和“PHY-AN LP廣告狀態寄存器”的內容進行動態更新配置,交換芯片硬件并不會自動聯動。 流控設置之所以有上表的規則要求,是需要保證雙絞線鏈路雙方的流控狀態匹配(雙方都“tx 使能rx使能”,雙方都“tx關閉rx關閉”和一方“tx關閉rx使能”另一方“tx使能rx關閉”)。如果出現雙絞線鏈路雙方流控失配,在鏈路擁塞時不但不能享受流控的優點,反而會引起鏈路中出現大量Pause流控幀使已經擁塞的鏈路更加擁塞。

主從協商

在1000BASE-T模式中,鏈路的兩端執行環路定時(loop timing)。鏈接的一端協商配置為主設備,另一個協商配置為從設備。主設備發送和接收時鐘鎖定在本地晶振輸入。從設備發送和接收時鐘被鎖定到傳入的接收數據流。環路定時(loop timing)通過確保發射機和接收機在鏈路的每一端都以相同的頻率工作。

主從協商主要靠設置 “本地控制寄存器1000BASE-T ControlRegister Page 0, Register 9”的bit12:10實現的。具體規則如下表:

ef6f2e36-e688-11ee-a297-92fbcf53809c.png

網絡管理員因避免出現上述表格的最后兩種情況,一旦出現此情況10M/100M/1000M自協商將永遠無法完成,故此時本端和遠端永遠無法建立正確鏈接。 好的小伙伴們,這期10M/100M/1000M自協商就講完啦,下一課會開始“10M/100M/1000M/2.5G/5G/10G/25G/40G自協商”相關內容。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 以太網
    +關注

    關注

    40

    文章

    5135

    瀏覽量

    166798
  • 集線器
    +關注

    關注

    0

    文章

    339

    瀏覽量

    39176
  • 雙絞線
    +關注

    關注

    2

    文章

    211

    瀏覽量

    23512
  • PHY
    PHY
    +關注

    關注

    2

    文章

    270

    瀏覽量

    51307
  • 控制寄存器
    +關注

    關注

    0

    文章

    34

    瀏覽量

    11444

原文標題:以太網自協商機制--雙絞線自協商(四)

文章出處:【微信號:FPGA開源工坊,微信公眾號:FPGA開源工坊】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    以太網協商機制-雙絞線協商案例設計(二)

    在FLP突發中,D0應是傳輸的第一個比特。
    的頭像 發表于 03-17 09:19 ?559次閱讀
    <b class='flag-5'>以太網</b>自<b class='flag-5'>協商機制</b>-<b class='flag-5'>雙絞線</b>自<b class='flag-5'>協商</b>案例設計(二)

    以太網協商機制-雙絞線協商案例設計(三)

    NextPage有兩大類(D13=1時為Messgage Page; D13=0時為Unformatted Page;),編碼格式分別如下圖
    的頭像 發表于 03-18 09:33 ?531次閱讀
    <b class='flag-5'>以太網</b>自<b class='flag-5'>協商機制</b>-<b class='flag-5'>雙絞線</b>自<b class='flag-5'>協商</b>案例設計(三)

    RTL8201協商超時可能是什么原因造成的呢?

    RTL8201芯片,讀8201ID,復位均無問題,協商時一直超時,用示波器查8201的MDI 3、4角結果發現其一直沒有電平變化,(我用的RMII模式,REF時鐘輸出為50M未發現問題),
    發表于 05-21 08:18

    AM335X以太網問題,請問需要在linux里面修改什么嗎,比如把PHY芯片的協商關閉,固定在100full模式之類的?

    以太網相互ping。設置相同的網段,但是ping不同,打印信息是100hulf up100hulf down交替出現,一會連上,一會掉了。感覺好像一直在查找外部以太網設備似的。請問需要在linux里面修改什么嗎,比如把PHY芯片的
    發表于 06-21 03:42

    DP83822I工業以太網PHY協商功能與其Strap電阻配置

    物理層鏈接。所以本文檔的內容基于TI以太網PHY產品DP83822,介紹以太網網口協商(Auto-Negotiation)功能現象,正確的測試波形與Strap電阻設置。 ?? 1.
    發表于 03-14 06:45

    為什么lwip不能夠開啟協商模式?

    lwip 不能夠開啟協商模式 ??static void low_level_init(struct netif *netif){ uint32_t regvalue = 0
    發表于 08-20 04:35

    為什么以太網+柔性板與電腦無法協商為100M?

    硬件:基于STM32F4單片機+LAN8720A(PHY)芯片,移植LWIP輕型以太網協議棧,硬件參考發燒友探索者開發板。連接方式:1.板子通過剛柔結合板與PC機進行連接,系統上電后,PC端5s后
    發表于 09-11 02:53

    基于DP83822I工業以太網PHY協商功能與其Strap電阻配置

    以太網PHY產品DP83822,介紹以太網網口協商(Auto-Negotiation)功能現象,正確的測試波形與Strap電阻設置…
    發表于 11-11 07:26

    STM32以太網驅動程序配置中的自動協商、速度設置和交換機自動協商、速度配置有什么區別?

    我在 stm32f4 中使用以太網交換機而不是 PHY。當 RMII 引腳連接到 STM32 時,我使用 SPI 管理 MDIO 引腳。有一些基本的東西我不明白。STM32 以太網驅動程序配置中的自動協商、速度設置和交換機自動
    發表于 02-08 06:35

    FPGA光纖以太網協商的設計

    摘要:本文在分析了千兆以太網的自協商基本過程,提出了一種基于Virtex-5 XC5VFX70T 中高速串行收發器GTX Transceiver 的千兆以太網協商實現方案。該方案通過
    發表于 03-26 15:56 ?45次下載

    面向云聯網的云服務協商機制

    的方式為用戶提供服務,以便更好地滿足用戶的服務需求。針對上述情況,提出了面向云聯網的云服務協商機制,該機制利用云聯網和改進的經典合同網模型來實現云服務提供商的交互協商。為了有效地選出合作伙伴以提高合作效率,
    發表于 11-27 15:48 ?0次下載
    面向云聯網的云服務<b class='flag-5'>協商機制</b>

    基于語義網技術的SLA協商機制

    針對服務等級協議(SLA)的自動協商中用于協商的SLA元素及協商過程缺乏語義描述的問題,提出了一種基于語義網技術的SLA協商機制。首先提出一種協商
    發表于 01-02 17:17 ?0次下載

    一文解析以太網自動協商技術

    這對于有少量這種問題的網絡也許是個小問題,但是對于存在大量這種問題的網絡而言就是一個頭疼的問題。幸好,以太網的標準制定者推出了自動協商(Auto-Negotiation)這種機制,來解決這個問題。
    的頭像 發表于 02-22 14:44 ?1698次閱讀
    一文解析<b class='flag-5'>以太網</b>自動<b class='flag-5'>協商</b>技術

    基于IEEE Clause 28雙絞線以太網協商機制

    雙絞線以太網協商通過鏈路雙方互相周期發送自協商脈沖群(通過脈沖群攜帶自己的物理層信息),從而到達彼此互相理解的目的,最終建立正確連接。
    發表于 03-15 09:53 ?140次閱讀
    基于IEEE Clause 28<b class='flag-5'>雙絞線</b>的<b class='flag-5'>以太網</b>自<b class='flag-5'>協商機制</b>

    基于IEEE Clause 28雙絞線以太網協商機制解析(一)

    協商機制以太網技術物理層重要的一種機制。它可以使得不同底層技術網絡設備(計算機終端,網橋,交換機,路由器,網關等)的鏈路雙方協商成互相兼容的模式,從而建立起正確的鏈接。
    的頭像 發表于 03-15 09:55 ?412次閱讀
    基于IEEE Clause 28<b class='flag-5'>雙絞線</b>的<b class='flag-5'>以太網</b>自<b class='flag-5'>協商機制</b>解析(一)
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>