Xilinx提供了一個1G/10G/25G Switching以太網(wǎng)IP,該IP可以動態(tài)切換為1G以太網(wǎng)或者10G/25G以太網(wǎng),它們共享同一個GT/SERDES端口。
這個IP目前僅支持比較新的器件,如UltraScale/UltraScale+,Versal;如果需要使用7系列器件,可以到Xilinx主頁搜索參考設(shè)計XAPP1243;又或者,如果想有更大的設(shè)計修改余地,而不想用IP,那UltraScale/UltraScale+也有參考設(shè)計XAPP1307
1G/10G/25G Switching以太網(wǎng)IP的結(jié)構(gòu):
實際上,這個Switching IP內(nèi)部,直接調(diào)用了,另外兩個Xilinx以太網(wǎng)IP core,分別是10G/25G Ethernet Subsystem IP和1G/2.5G Ethernet PCS/PMA or SGMII IP,然后共享了用戶側(cè)數(shù)據(jù)接口,和物理層GT端口。當需要切換速率的時候,IP只需要用選擇器選擇,走的是10G/25G IP還是1G IP,同時通過GT的DRP端口,動態(tài)切換GT的線速。
也正因為是這樣的結(jié)構(gòu)設(shè)計,對于一些更細致具體的信息,如1588功能或者寄存器定義,可以在10G/25G IP文檔PG210,以及1G IP文檔PG138或PG047里面找到。
如何手動切換IP的速率:
手動模式下,Switching IP通過信號“ctl_core_speed_sel”來配置你所期望的速率,通過信號“stat_core_speed”來觀察當前IP的速率。
實際上,產(chǎn)生一個Switching IP的例子工程,例子提供了手動切換速率的示例,直接跑功能仿真就能看到。例子工程手動切換速率的流程為:
1. 首先拉高代碼里的“mode_change”信號,開始切換
2. 接著例子代碼就會寫IP的寄存器,修改“ctl_core_speed_sel”為需要的速率
3. 并且自動通過GT的DRP接口,修改GT的參數(shù),動態(tài)切換端口線速率
4. 最后等待以太網(wǎng)IP的link up
對應(yīng)例子工程代碼如下:
對應(yīng)仿真截屏:
如何使用以太網(wǎng)的自協(xié)商功能,自動切換IP的速率:
首先,需要使能IP的自協(xié)商功能,以10G/25G以太網(wǎng)IP為例,拉高信號“ctl_autoneg_enable”,拉低信號“ctl_autoneg_bypass”,并且兩端的以太網(wǎng)要設(shè)置不同的AN Nonce Seed的值,這樣10G的自協(xié)商就可以自動成功完成。
要注意的是,無論是10G/25G還是1G的以太網(wǎng)協(xié)議,都要求兩端同時打開自協(xié)商,或者同時關(guān)閉自協(xié)商,兩端才能link up;一端開一端關(guān)的話,自協(xié)商是無法成功的。
接下來,如果10G/25G的自協(xié)商失敗了,例如對端其實是一個1G的以太網(wǎng)器件,那么自協(xié)商狀態(tài)機會走到Parallel Detection狀態(tài),Switching IP就會自動切換速率到1G,再進行下一步操作。PG292對自協(xié)商速率的流程有如下描述:
A block diagram of the 1G/10G/25G Ethernet Subsystem with Auto-Negotiation (AN) with Parallel Detection (PD) is shown in the following figure. The Parallel Detection is done inside the AN RTL, which is encrypted. As a result of PD, only the AN is resolved to 1G speed.
這里提到的Parallel Detection就是源自IEEE802.3協(xié)議關(guān)于10G以太網(wǎng)自協(xié)商定義的那部分,狀態(tài)機跳轉(zhuǎn)里的一個狀態(tài);當10G自協(xié)商不能成功,狀態(tài)機就會跳到這個PD狀態(tài)。有興趣的可以打開IEEE802.3的Clause 73章節(jié)了解進一步的詳情。
整個流程,從仿真里看,如下截屏:
由于以太網(wǎng)自協(xié)商的過程中,里頭的狀態(tài)都有計數(shù)器時間定義需要等待,所以在仿真里需要很長很長時間才能完成,因此并不建議自協(xié)商做功能仿真。
以上就是1G/10G/25G Switching以太網(wǎng)IP的手動和自動兩種切換速率的原理和方法。
審核編輯:湯梓紅
-
以太網(wǎng)
+關(guān)注
關(guān)注
40文章
5343瀏覽量
170799 -
寄存器
+關(guān)注
關(guān)注
31文章
5294瀏覽量
119814 -
仿真
+關(guān)注
關(guān)注
50文章
4023瀏覽量
133336 -
端口
+關(guān)注
關(guān)注
4文章
948瀏覽量
31984
發(fā)布評論請先 登錄
相關(guān)推薦
評論