目錄(?)
[+]千兆網口光口除錯總結
配置6096端
arm端
pcs層所處位置極其意義
除錯過程
iperf效能測試
工作模式的配置方式:
1、 硬體配置,通過電阻上下拉確定;6096的硬體配置不可以錯,其在port status暫存器狀態中有相應的暫存器位體現硬體配置的工作模式。
2、 軟體配置,主要是配置鏈路層的工作模式。主要是設定pcs(physical coding sublayer)暫存器。
3、 marvell的phy晶元有個特性,叫ppu(phy polling unit),ppu會和外部連線的phy交換其自身的link、speed、duplex、pause的資訊,這樣就可以發現phy,直觀的表現是如果外接了link的led,那麼led會被點亮,只有在傳輸資料時link才會是閃爍的狀態。如果沒有連線上。不過有點奇怪的是,6096的port10配置成rgmii模式時,其led並不能指示port10的工作狀態,在1000base-x方式下,該led才起作用。
配置mac工作模式,通常:
1、 硬體部分通過電阻上下拉實現控制,mii、gmii、rgmii等介面方式是否由外接電阻上下拉某些管腳確定需要注意。
2、 軟體部分對暫存器設定,這個配置方式可能能夠代替上述1中的配置,也可能硬體必須配置,對mac工作模式的配置方式依賴於晶元手冊。
1000base-x模式下pcs所在的osi七層模型
pcs是物理編碼子層,通過將8bit的資料編碼成10bit傳送給pma(physical media attach)層,千兆編碼方式是8b/10b,每個傳送碼元表示5符號
-2、-1、
0、1、
2中的乙個符號,故每個碼元代表
2位元資訊(
4電平中每個電平代表
2位,還有乙個前向糾錯碼
fec),這比二電平編碼提高了頻寬利用率,並能把波特率和所需訊號頻寬減為原來的一半,但多電平編碼需要用多位
a/d,d/a
轉換,採用更高的傳輸訊雜比和更好的接受均衡效能。
下圖是mac和phy連線的圖,通常mac整合在arm核內,phy是整合在switch中的。下面這張圖是sgmii的連線方式和這裡的rgmii方式還有區別。不過這張圖展現了mac,phy以及pcs的關係。上面的6096的ppu用來發現其對等的phy,通常是網線的另一頭,但是也有phy級聯的情況,6096就可以級聯88e1111使用。
sgmii下mac和phy連線方式--摘自思科文件
rgmii收發資料線各四根,其在時鐘的上公升沿和下降沿都會鎖存資料,rgmii傳送側在時鐘的上公升沿鎖存[0:3]低四位,在時鐘的下降沿,鎖存[4:7]高四位,速率計算125mbps*(4+4)=1000mbps,有效載荷會小於該值。接收類似,mac和phy側都有接收和傳送這樣的概念存在。時序調節,就是調節這裡的上下沿和資料的關係,只有正確的資料配合適當時序,傳輸時校驗和才會正確。
1、確認環境,光端機需要使用千兆的,而不是百兆的,百兆光纖可以比百兆網路傳輸的距離要遠很多,單模下可以達到20km~120km。光纖線線頭保持潔淨,不要讓灰塵阻塞。
光模組分為,多模;對於多模注意收發的波長要對應,一般光模組上有藍色和黃色,收發使用兩種不同的顏色,即藍色配黃色才行。多模光纖使用一根光纖線,光纖線上的光波長為1.31um和1.55um居多。
2、單板加電看6096的led燈是否亮,如果有對等的pcs層(phy晶元、switch晶元會包括pcs),燈會亮,port8/9工作在1000base-x等也會亮。
3、uboot下通過mii命令讀取和適當調節6096上電初始pcs暫存器的引數。如果設定引數包括速率、雙工模式、link狀態以及時序調節,需要根據不同的模式進行不同的設定。
4、uboot下使用ping命令測試網路是否通。注意觀察ping時光端機和6096上的led指示燈,如果ping不通,但是6096的燈有閃爍,則不同轉入5,調節6096的時序,如果等無反應也請轉入無調節時序試試。如果ping時通時不通,請轉入5.
5、uboot下使用mii命令,調節6096時序調節暫存器,包括收、發及其組合的四種可能,再次轉入4,當各種可能均試過後,依然不行,轉入6.
6、示波器測試在ubootping時6096收發埠有無訊號,測量時鐘訊號和資料線訊號。百兆時,時鐘是25mhz,千兆時是125mhz。資料線上的訊號對於千兆時五電平通道編碼、對於百兆是三電平通道編碼。三電平和五電平通道編碼看它們的電平表現還是挺有意思的,一些示波器能夠誘導外屆裝置傳送測試訊號。這裡指的測試只需要看看匯流排上是否有電平跳變就可以了。如果有訊號,重複步驟3讀取6096的狀態暫存器,以確認6096pcs暫存器設定是否正確。如果沒有訊號,檢查6096設計原理圖和pcb以及器件的焊接。如果沒有問題轉入7。
7、使用mr、mw命令修改arm端gmac相關配置暫存器。檢視dma和emac相關資訊、統計收發資料報暫存器。重複4下的ping過程。如果還是不行。
8、檢查arm端的原理圖、pcb、硬體上拉、下拉的配置。
9、linux下該晶元驅動**新增在drivers/net/phy/目錄。修改相關makefile和配置指令碼,編譯。
另外:如果光口熱插拔出問題,即光模組在上電完成後拔下再插上出現網路不通,此時埠設定成自協商模式,可以解決此問題。
不同的網路測試環境結果可能有所差異。
# ./iperf -c 10.12.39.18 -b 1000m -t 120 -i1 u
[ 5]112.0-113.0 sec 41.4 mbytes 347 mbits/sec
[ 5]113.0-114.0 sec 41.4 mbytes 348 mbits/sec
[ 5]114.0-115.0 sec 41.4 mbytes 348 mbits/sec
[ 5]115.0-116.0 sec 42.1 mbytes 353 mbits/sec
[ 5]116.0-117.0 sec 42.5 mbytes 356 mbits/sec
[ 5]117.0-118.0 sec 42.3 mbytes 355 mbits/sec
[ 5]118.0-119.0 sec 42.3 mbytes 355 mbits/sec
[ 5] 0.0-120.0 sec 4.94 gbytes 354 mbits/sec
[ 5]sent 3608196 datagrams
[ 5]server report:
[ 5] 0.0-120.0 sec 4.65 gbytes 333 mbits/sec 0.069 ms 212912/3608194(5.9%)
ping包延遲
# ping 10.12.39.18
ping 10.12.39.18 (10.12.39.18): 56 databytes
64 bytes from 10.12.39.18: icmp_seq=0ttl=128 time=0.7 ms
某百兆phy測試結果:
tcp網速
後pc端 iperf先client端# ./iperf -c 10.12.39.18 –w nk –t 20 –i-s -
i 1 -
w 1m
[id] interval transfer bandwidth
[ 5] 0.0-20.0 sec 225 mbytes 94.1 mbits/sec
udp網速
pc端先 iperf.exe先client端# ./iperf -c 10.12.39.18 -b 100m -t 20 -i 1-u-s -
i 10
-u
[id] interval transfer bandwidth
[ 5] 0.0- 1.0 sec 11.6 mbytes 97.3 mbits/sec
[ 5] 1.0- 2.0 sec 11.4 mbytes 95.7 mbits/sec
[ 5] 2.0- 3.0 sec 11.3 mbytes 94.8 mbits/sec
[ 5] 3.0- 4.0 sec 11.4 mbytes 95.7 mbits/sec
[ 5] 4.0- 5.0 sec 11.4 mbytes 95.8 mbits/sec
[ 5]sent 162892 datagrams
[ 5]server report:
[ 5] 0.0-20.0 sec 223 mbytes 93.4 mbits/sec 0.602 ms 3887/162891(2.4%)
[ 5] 0.0-20.0 sec 1 datagrams received out-of-order
千兆網口 光口除錯總結
工作模式的配置方式 1 硬體配置,通過電阻上下拉確定 6096的硬體配置不可以錯,其在port status暫存器狀態中有相應的暫存器位體現硬體配置的工作模式。2 軟體配置,主要是配置鏈路層的工作模式。主要是設定pcs physical coding sublayer 暫存器。3 marvell的p...
rj45 千兆介面定義 千兆網口電路應用
失蹤人口回歸 大家有沒有想小可愛 最近工作上出了一些問題,以至於都在加班加點趕工,今天剛好接近尾聲。發一篇相關電路的分析。網路已經是現代生活中必不可少的基礎設施了。對於一般人來講,在家裡可能很少會用到有線網路,但對於在公司工作的時候,大多數還是都在用的網線介面,因此,很多網路類產品也相應佔據著一定的...
電口與光口的區別
光纖介面是用來連線光纖線纜的物理介面。其原理是利用了光從光密介質進入光疏介質從而發生了全反射。通常有sc st fc等幾種型別,它們由日本ntt公司開發。fc是ferrule connector的縮寫,其外部加強方式是採用金屬套,緊固方式為螺絲扣。st介面通常用於10base f,sc介面通常用於1...