SGMII, 1000BASE-X, QSGMII, USXGMII: antarmuka serial ke PHY dan SFP
Setiap cage SFP 1G membawa satu lane serial 1,25 GBd, dan lane itu dapat berbicara dalam dua dialek yang tampak identik pada osiloskop: 1000BASE-X, antarmuka IEEE yang diharapkan oleh modul serat optik, dan SGMII, varian Cisco yang menambahkan 10/100 Mb/s dan autonegosiasi yang berbeda. SFP tembaga hidup di perbatasan antara keduanya, dan kebanyakan tiket “SFP tembaga link pada 1G tetapi kamera 100 Mb/s saya tidak” adalah ketidakcocokan dialek. Halaman ini membahas kedua dialek gigabit tersebut, autonegosiasinya, 2500BASE-X, QSGMII multi-port, USXGMII untuk multigig dan SFP+ 10GBASE-T, serta bagaimana Linux dan switch memilih mode.
1000BASE-X: antarmuka native SFP (Klausul 36/37)
| Item | Nilai |
|---|---|
| Rate | 1,25 GBd, 8b/10b → payload 1000 Mb/s |
| Lane | 1 pasang diferensial per arah (CML, AC-coupled) |
| Pengkodean | 8b/10b dengan comma /K28.5/, ordered set /C1/ /C2/ (konfigurasi), /I1/ /I2/ (idle) |
| Autonegosiasi | Klausul 37: config word 16-bit dipertukarkan dalam ordered set /C/ — dupleks penuh/setengah, pause (simetris/asimetris), remote fault, acknowledge. Tanpa field kecepatan: 1000BASE-X hanya 1G |
| Di mana | SerDes switch/NIC → cage SFP; SFP serat optik (SX/LX/ZX/BiDi/CWDM) meneruskannya langsung ke laser; PCS berada di host |
SFP serat optik bersifat transparan: apa pun yang dikodekan host keluar sebagai cahaya. Itulah sebabnya modul serat optik 1G tidak memiliki “mode” — tetapi port-nya memiliki, dan port itu harus 1000BASE-X (sering ditampilkan sebagai mode “SerDes” atau “fiber”, speed nonegotiate pada Cisco ketika sisi seberang tidak memiliki AN).
SGMII: gigabit plus 10/100 (spesifikasi Cisco SGMII v1.8)
| Item | Nilai |
|---|---|
| Rate | sama, 1,25 GBd, 8b/10b |
| Dukungan 10/100 | setiap byte data direplikasi 100× (10 Mb/s) atau 10× (100 Mb/s) sehingga line tetap pada 1,25 GBd |
| Lane | 2 pasang; pasangan clock DDR 625 MHz opsional (TX_CLK/RX_CLK) — kebanyakan implementasi SerDes berjalan clockless |
| Autonegosiasi | SGMII control word (juga dibawa dalam ordered set /C/, 16 bit): bit 15 link, bit 11–10 kecepatan (10/100/1000), bit 12 dupleks, bit 14 ack — dikirim PHY → MAC untuk memberi tahu MAC apa yang dinegosiasikan sisi tembaga. Tidak kompatibel dengan konten Klausul 37 |
| Di mana | MAC ↔ PHY tembaga (Marvell 88E15xx, TI DP83867, Broadcom), SoC ↔ cage SFP pada papan yang menginginkan dukungan SFP tembaga, bagian dalam SFP tembaga 1000BASE-T |
SGMII adalah antarmuka MAC–PHY; “autonegosiasi” terjadi dua kali — Klausul 28 pada pasangan berpilin antara PHY dan link partner, lalu SGMII control word melaporkan hasilnya ke MAC. Ketika host mengharapkan Klausul 37 tetapi menerima SGMII control word (atau sebaliknya), link tidak pernah menyelesaikan AN; menonaktifkan AN pada port (speed nonegotiate, no negotiation auto, autoneg off) adalah solusi sementara yang umum — hanya pada 1G.
SFP tembaga di antara keduanya
| Mode port host | Perilaku SFP tembaga | Klien 10/100 |
|---|---|---|
| 1000BASE-X, AN on | PHY modul harus menjawab Klausul 37 — banyak yang bisa (emulasi), sebagian tidak → tidak ada link sampai AN dimatikan | tidak (tanpa field kecepatan) |
| 1000BASE-X, AN off | link pada 1G ketika sisi tembaga menegosiasikan 1G | tidak |
| SGMII, AN on | PHY melaporkan 10/100/1000 lewat control word | ya |
| SGMII, AN off | tetap 1G | tidak |
Modul SFP tembaga berbasis Marvell 88E1111 secara default berada pada SGMII atau 1000BASE-X tergantung pada EEPROM konfigurasi/strap yang diatur saat pembuatan; vendor menjual varian “SGMII” dan “SerDes” dari modul yang sama, dan sebagian dapat dialihkan lewat register PHY yang dapat dijangkau melalui I²C modul. Port switch yang mencantumkan “1000BASE-T SFP supported” mengimplementasikan SGMII pada cage tersebut (Ethernet tembaga & DAC).
SFP 100BASE-FX
SFP serat optik 100 Mb/s (100BASE-FX, 1310 nm, 2 km) membutuhkan host untuk menjalankan lane pada 125 MBd dengan 4b/5b — PCS yang sama sekali berbeda. Hanya port yang secara eksplisit mendukung “100M SFP” (banyak switch kampus pada port tertentu, kebanyakan router; sedikit switch pusat data) yang berfungsi; pada port lain modul terdeteksi tetapi tidak pernah link. Sebagian host mengimplementasikan 100BASE-FX lewat replikasi SGMII dengan PHY eksternal di dalam modul (SFP “100M over SGMII”).
2500BASE-X
| Item | Nilai |
|---|---|
| Rate | 3,125 GBd, 8b/10b → 2,5 Gb/s |
| Standar | tidak ada dari IEEE (de facto, 2,5 × 1000BASE-X); Linux phy-interface-type = "2500base-x" |
| AN | gaya Klausul 37, sering dinonaktifkan |
| Di mana | modul SFP 2,5G (tembaga 2.5GBASE-T, serat optik 2,5G), stick ONU GPON/EPON menuju host (downstream 2,5G), uplink AP Wi-Fi 6, sebagian cage SFP switch 2,5G |
Padanan IEEE untuk multigig adalah 2.5GBASE-X/5GBASE-R (802.3bz), tetapi kebanyakan silikon berbicara 2500BASE-X atau USXGMII.
QSGMII: empat port pada satu lane
| Item | Nilai |
|---|---|
| Rate | 5 GBd, 8b/10b; 4 kanal SGMII di-time-multiplex |
| Lane | 2 pasang untuk empat port |
| Di mana | ASIC switch ↔ PHY tembaga quad (switch akses 48-port: 12 lane QSGMII, bukan 48 SGMII), sebagian desain cage SFP quad-port lewat SerDes eksternal |
| Varian | QSGMII (Cisco), juga “PSGMII” (5 port) pada sebagian SoC Qualcomm/Realtek |
Tidak terlihat pada cage dalam desain normal; menjadi penting ketika sebuah papan quad-PHY mengekspos port combo SFP yang mode-nya diwarisi dari kanal PHY.
USXGMII: 10 Mb/s hingga 10 Gb/s pada satu lane 10G
| Item | Nilai |
|---|---|
| Rate | 10,3125 GBd, 64b/66b (elektrik 10GBASE-R) |
| Kecepatan | 10M, 100M, 1G, 2,5G, 5G, 10G lewat replikasi simbol (seperti SGMII yang diskalakan) |
| Spek | Cisco USXGMII (v1.2), diadopsi luas; Linux usxgmii |
| Multi-port | USXGMII-M: 4 × 2,5G, 2 × 5G, 4 × 1G+… pada satu lane 10G (seperti QSGMII) |
| AN | USXGMII AN word dalam idle 64b/66b, melaporkan kecepatan/duplex/link |
| Di mana | ASIC ↔ PHY multigig (port 2,5/5/10GBASE-T), modul SFP+ 10GBASE-T (PHY internal, misalnya Marvell AQR/Broadcom) |
Modul SFP+ 10GBASE-T menghadirkan 10GBASE-R (SFI) ke port SFP+ normal dan link pada 10G; apakah modul itu juga dapat melayani klien 1G/2,5G/5G bergantung pada dukungan host terhadap adaptasi rate USXGMII pada cage tersebut — kebanyakan switch tidak mendukungnya, sehingga modul hanya bekerja pada 10G, atau melakukan adaptasi secara internal dan melaporkan 10G ke host sementara sisi tembaga berjalan lebih lambat (Kecepatan & rate).
Bagaimana host memilih mode
| Host | Mekanisme |
|---|---|
| Linux phylink/SFP | membaca A0h byte 3–10 (kepatuhan), 12 (rate nominal), 36 (extended), dan 6 bit 3 (1000BASE-T): 1000BASE-T → SGMII (atau 1000BASE-X jika SoC tidak memiliki SGMII); 1000BASE-SX/LX → 1000BASE-X; BR 3,1 GBd → 2500BASE-X; kode 10G → 10GBASE-R; PHY tembaga di dalam modul diperiksa lewat I²C (address 0x56/0xAC) dan digerakkan oleh phylib |
| NOS switch | default port dari platform (kebanyakan cage SFP 1G = mampu SGMII; SFP+/SFP28 pada 1G sering hanya 1000BASE-X), perintah speed 1000, speed nonegotiate, media-type sfp, negotiation auto, port-mode |
| Driver NIC | Intel: port SFP+ mendukung 1G hanya dalam 1000BASE-X (tanpa SFP tembaga 10/100); Mellanox: 1G lewat 1000BASE-X pada sebagian model; Broadcom: tergantung firmware (NIC ports) |
| SFP tembaga | strap/EEPROM mode PHY (varian SGMII vs SerDes), perilaku AN diatur oleh firmware vendor |
Tabel ketidakcocokan
| Gejala | Penyebab | Solusi |
|---|---|---|
| SFP tembaga: klien 1G baik, 10/100 tidak pernah link | port dalam 1000BASE-X | pindah ke port yang mampu SGMII, atau gunakan modul yang menyembunyikan 10/100 di balik adaptasi 1G-ke-host |
| SFP serat optik hanya link dengan AN dimatikan | sisi seberang tanpa Klausul 37 (media converter, sebagian ONU) atau SGMII control word dari modul tembaga | speed nonegotiate / autoneg off |
| SFP 100BASE-FX terdeteksi, tidak ada link | host tidak memiliki mode SerDes 100M | gunakan port yang mendukung 100M SFP, atau modul 100BASE-FX-over-SGMII |
| SFP 2,5G link pada 1G atau tidak sama sekali | host tidak memiliki 2500BASE-X | pilih cage yang mampu 2,5G atau modul dengan rate fallback |
| Stick ONU link, lalu terputus | ekspektasi 2500BASE-X vs 1000BASE-X, AN | atur host ke 2500BASE-X, AN dimatikan (PON optics) |
| SFP+ 10GBASE-T hanya link pada 10G | tidak ada USXGMII pada host | terima hanya-10G, atau gunakan modul dengan adaptasi rate internal |
| Linux: modul berfungsi pada satu papan, tidak pada papan lain | phylink memilih antarmuka berbeda dari EEPROM; SoC tidak memiliki mode tersebut | periksa dmesg untuk sfp: module … interface; perbaiki byte kepatuhan atau device tree |
Di CodingBox
Byte yang mengarahkan pilihan host semuanya berada di A0h: kode kepatuhan 3–10 (1000BASE-T, SX, LX, kode 10G), laju bit nominal 12, pengkodean 11 (8b/10b vs 64b/66b), kepatuhan extended 36. Modul tembaga yang dikodekan sebagai 1000BASE-SX akan diperlakukan sebagai serat optik dan kehilangan jalur 10/100-nya; modul serat optik dengan bit 1000BASE-T yang salah akan digerakkan sebagai SGMII. CodingBox menampilkan dan mengedit field-field ini (Check transceiver, Kode kepatuhan).