SGMII و1000BASE-X وQSGMII وUSXGMII: واجهات تسلسلية إلى PHY وSFP
يحمل كل قفص SFP بسرعة 1G مسارًا تسلسليًا بمعدل 1.25 GBd، ويمكن لهذا المسار أن يتحدث بلهجتين تبدوان متطابقتين على الراسم: 1000BASE-X، وهي واجهة IEEE التي تتوقعها الوحدة الضوئية، وSGMII، وهي صيغة Cisco التي تضيف سرعة 10/100 Mb/s وتفاوضًا تلقائيًا مختلفًا. وتعيش SFP النحاسية على الحد الفاصل بينهما، ومعظم تذاكر الدعم من نوع «SFP النحاسية تعمل بسرعة 1G لكن كاميرتي بسرعة 100 Mb/s لا تعمل» سببها عدم تطابق اللهجتين. وتغطي هذه الصفحة لهجتي الجيجابت، وتفاوضهما التلقائي، و2500BASE-X، وQSGMII متعددة المنافذ، وUSXGMII لسرعات multigig وSFP+ من نوع 10GBASE-T، وكيف يختار Linux والمبدّلات الوضع.
1000BASE-X: الواجهة الأصلية لـSFP (البند Clause 36/37)
| العنصر | القيمة |
|---|---|
| المعدل | 1.25 GBd، و8b/10b → حمولة 1000 Mb/s |
| المسارات | زوج تفاضلي واحد في كل اتجاه (CML، ومقترن بالتيار المتردد AC) |
| الترميز | 8b/10b بفواصل /K28.5/، ومجموعات مرتّبة /C1/ /C2/ (الضبط)، و/I1/ /I2/ (الخمول) |
| التفاوض التلقائي | البند Clause 37: تبادل كلمة ضبط بطول 16 بت ضمن مجموعات /C/ المرتّبة — ازدواج كامل/نصفي، وإيقاف مؤقت (متماثل/غير متماثل)، وعطل بعيد، وإقرار. بلا حقل سرعة: فـ1000BASE-X بسرعة 1G فقط |
| أين | SerDes الخاص بالمبدّل/NIC → قفص SFP؛ وتمرره SFP الضوئية (SX/LX/ZX/BiDi/CWDM) مباشرة إلى الليزر؛ ويقيم PCS في المضيف |
SFP الضوئية شفافة: كل ما يرمّزه المضيف يخرج ضوءًا. ولهذا لا تملك وحدة ضوئية بسرعة 1G «وضعًا» — لكن المنفذ يملكه، ويجب أن يكون 1000BASE-X (يظهر غالبًا بوضع «SerDes» أو «fiber»، أو بالأمر speed nonegotiate على Cisco حين لا يملك الطرف البعيد تفاوضًا تلقائيًا).
SGMII: الجيجابت زائد 10/100 (مواصفة Cisco SGMII، الإصدار 1.8)
| العنصر | القيمة |
|---|---|
| المعدل | المعدل نفسه 1.25 GBd، و8b/10b |
| دعم 10/100 | يُكرَّر كل بايت بيانات 100 مرة (10 Mb/s) أو 10 مرات (100 Mb/s) بحيث يبقى الخط عند 1.25 GBd |
| المسارات | زوجان؛ وأزواج ساعة اختيارية من نوع DDR بتردد 625 MHz (TX_CLK/RX_CLK) — وتعمل معظم تطبيقات SerDes دون ساعة |
| التفاوض التلقائي | كلمة تحكم SGMII (تُحمل أيضًا ضمن مجموعات /C/ المرتّبة، بطول 16 بت): البت 15 الوصلة، والبتان 11–10 السرعة (10/100/1000)، والبت 12 الازدواج، والبت 14 الإقرار — تُرسَل PHY → MAC لإخبار MAC بما تفاوض عليه الجانب النحاسي. وغير متوافقة مع محتوى البند Clause 37 |
| أين | MAC ↔ PHY نحاسي (Marvell 88E15xx، وTI DP83867، وBroadcom)، وSoC ↔ قفص SFP في اللوحات التي تريد دعم SFP نحاسية، وداخل SFP نحاسية من نوع 1000BASE-T |
SGMII واجهة MAC–PHY؛ ويحدث «التفاوض التلقائي» مرتين — البند Clause 28 على الزوج المجدول بين PHY وشريك الوصلة، ثم تُبلغ كلمة تحكم SGMII MAC بالنتيجة. وحين يتوقع المضيف البند Clause 37 ويستقبل كلمة SGMII (أو العكس)، لا يكتمل التفاوض التلقائي أبدًا للوصلة؛ وتعطيل التفاوض التلقائي على المنفذ (speed nonegotiate، أو no negotiation auto، أو autoneg off) هو الحل الشائع — عند 1G فقط.
SFP النحاسية بين اللهجتين
| وضع منفذ المضيف | سلوك SFP النحاسية | عملاء 10/100 |
|---|---|---|
| 1000BASE-X، والتفاوض التلقائي مفعَّل | يجب أن يستجيب PHY الوحدة للبند Clause 37 — تفعل كثير من الوحدات ذلك (محاكاة)، ولا تفعله بعضها → لا وصلة حتى يُعطَّل التفاوض التلقائي | لا (بلا حقل سرعة) |
| 1000BASE-X، والتفاوض التلقائي معطَّل | الوصلة عند 1G حين يتفاوض الجانب النحاسي على 1G | لا |
| SGMII، والتفاوض التلقائي مفعَّل | يبلغ PHY عن 10/100/1000 عبر كلمة التحكم | نعم |
| SGMII، والتفاوض التلقائي معطَّل | 1G ثابتة | لا |
تنتقل وحدات SFP النحاسية المبنية على Marvell 88E1111 افتراضيًا إلى SGMII أو 1000BASE-X تبعًا لإعداد EEPROM/تهيئة يُضبط عند التصنيع؛ ويبيع الموردون صيغتي «SGMII» و«SerDes» من الوحدة نفسها، ويمكن تبديل بعضها عبر سجلات PHY التي يمكن الوصول إليها عبر I²C الخاص بالوحدة. وتنفّذ منافذ المبدّل التي تُدرَج ضمنها عبارة «SFP من نوع 1000BASE-T مدعومة» SGMII على تلك الأقفاص (النحاس وDAC في إيثرنت).
SFP من نوع 100BASE-FX
تحتاج SFP ضوئية بسرعة 100 Mb/s (100BASE-FX، بطول موجي 1310 nm، ومدى 2 km) إلى أن يشغّل المضيف المسار عند 125 MBd بترميز 4b/5b — وهو PCS مختلف تمامًا. ولا تعمل إلا المنافذ التي تدعم صراحة «SFP بسرعة 100M» (كثير من مبدّلات الحرم الجامعي على منافذ مختارة، ومعظم الموجّهات؛ وقلة من مبدّلات مراكز البيانات)؛ أما على غيرها فتُكتشف الوحدة ولا تقيم الوصلة أبدًا. وتنفّذ بعض المضيفات 100BASE-FX عبر تكرار SGMII مع PHY خارجي داخل الوحدة (SFP من نوع «100M عبر SGMII»).
2500BASE-X
| العنصر | القيمة |
|---|---|
| المعدل | 3.125 GBd، و8b/10b → 2.5 Gb/s |
| المعيار | لا يوجد معيار من IEEE (بحكم الواقع، 2.5 × 1000BASE-X)؛ وLinux: phy-interface-type = "2500base-x" |
| التفاوض التلقائي | بأسلوب البند Clause 37، ويُعطَّل غالبًا |
| أين | وحدات SFP بسرعة 2.5G (نحاس 2.5GBASE-T، وألياف 2.5G)، وعصي ONU من نوع GPON/EPON نحو المضيف (تنازلي بسرعة 2.5G)، والوصلات الصاعدة لنقاط وصول Wi-Fi 6، وبعض أقفاص SFP لمبدّلات 2.5G |
مكافئات IEEE لـmultigig هي 2.5GBASE-X/5GBASE-R (802.3bz)، لكن معظم الشرائح تتحدث 2500BASE-X أو USXGMII.
QSGMII: أربعة منافذ على مسار واحد
| العنصر | القيمة |
|---|---|
| المعدل | 5 GBd، و8b/10b؛ 4 قنوات SGMII بتعديد زمني |
| المسارات | زوجان لأربعة منافذ |
| أين | ASIC الخاص بالمبدّل ↔ PHY نحاسي رباعي (مبدّلات وصول بـ48 منفذًا: 12 مسار QSGMII بدل 48 مسار SGMII)، وبعض تصاميم أقفاص SFP الرباعية المنافذ عبر SerDes خارجي |
| الصيغ | QSGMII (من Cisco)، وأيضًا «PSGMII» (5 منافذ) على بعض SoC من Qualcomm/Realtek |
غير ظاهرة عند القفص في التصاميم العادية؛ وتهم حين تعرض لوحة PHY رباعية منافذ SFP مركّبة يُورَّث وضعها من قناة PHY.
USXGMII: من 10 Mb/s إلى 10 Gb/s على مسار واحد بسرعة 10G
| العنصر | القيمة |
|---|---|
| المعدل | 10.3125 GBd، و64b/66b (كهربائيًا 10GBASE-R) |
| السرعات | 10M، و100M، و1G، و2.5G، و5G، و10G عبر تكرار الرموز (مثل SGMII لكن بمقياس أكبر) |
| المواصفة | Cisco USXGMII (الإصدار 1.2)، معتمَد على نطاق واسع؛ وLinux: usxgmii |
| متعدد المنافذ | USXGMII-M: 4 × 2.5G، و2 × 5G، و4 × 1G+... على مسار واحد بسرعة 10G (مثل QSGMII) |
| التفاوض التلقائي | كلمة التفاوض التلقائي لـUSXGMII ضمن خمول 64b/66b، وتبلغ عن السرعة/الازدواج/الوصلة |
| أين | ASIC ↔ PHY من نوع multigig (منافذ 2.5/5/10GBASE-T)، ووحدات SFP+ من نوع 10GBASE-T (بـPHY داخلي، مثل Marvell AQR/Broadcom) |
تقدّم وحدة SFP+ من نوع 10GBASE-T واجهة 10GBASE-R (SFI) لمنفذ SFP+ عادي وتقيم الوصلة عند 10G؛ وقدرتها أيضًا على خدمة عملاء 1G/2.5G/5G تتوقف على دعم المضيف تكيّف معدل USXGMII على ذلك القفص — ولا تدعمه معظم المبدّلات، فتعمل الوحدة عند 10G فقط، أو تؤدي التكيّف داخليًا وتبلغ المضيف بسرعة 10G بينما يعمل الجانب النحاسي بسرعة أبطأ (السرعة والمعدل).
كيف يختار المضيف الوضع
| المضيف | الآلية |
|---|---|
| Linux phylink/SFP | يقرأ بايتات A0h: 3–10 (التوافق)، و12 (المعدل الاسمي)، و36 (الممتد)، والبت 3 من البايت 6 (1000BASE-T): 1000BASE-T → SGMII (أو 1000BASE-X إذا كان SoC يفتقر إلى SGMII)؛ و1000BASE-SX/LX → 1000BASE-X؛ وBR بمعدل 3.1 GBd → 2500BASE-X؛ ورموز 10G → 10GBASE-R؛ ويُفحص PHY النحاسي داخل الوحدة عبر I²C (العنوان 0x56/0xAC) وتشغّله phylib |
| نظام تشغيل المبدّل | الافتراضي للمنفذ حسب المنصة (معظم أقفاص SFP بسرعة 1G قادرة على SGMII؛ وSFP+/SFP28 عند 1G غالبًا 1000BASE-X فقط)، والأوامر speed 1000، وspeed nonegotiate، وmedia-type sfp، وnegotiation auto، وport-mode |
| برامج تشغيل NIC | Intel: تدعم منافذ SFP+ سرعة 1G بوضع 1000BASE-X فقط (بلا SFP نحاسية بسرعة 10/100)؛ وMellanox: 1G عبر 1000BASE-X في بعض الطرازات؛ وBroadcom: حسب البرنامج الثابت (منافذ NIC) |
| SFP نحاسية | تهيئة/EEPROM وضع PHY (صيغة SGMII مقابل SerDes)، وسلوك التفاوض التلقائي يضبطه البرنامج الثابت للمورّد |
جدول عدم التطابق
| العَرَض | السبب | الإصلاح |
|---|---|---|
| SFP نحاسية: عملاء 1G يعملون بلا مشاكل، وعملاء 10/100 لا يقيمون الوصلة أبدًا | المنفذ في وضع 1000BASE-X | انتقل إلى منفذ قادر على SGMII أو استخدم وحدة تخفي 10/100 خلف تكيّف 1G نحو المضيف |
| SFP ضوئية تقيم الوصلة فقط مع تعطيل التفاوض التلقائي | الطرف البعيد بلا البند Clause 37 (محوّل وسائط، وبعض ONU) أو كلمة SGMII من وحدة نحاسية | speed nonegotiate / autoneg off |
| SFP من نوع 100BASE-FX تُكتشف، بلا وصلة | يفتقر المضيف إلى وضع SerDes بسرعة 100M | استخدم منفذًا يدعم SFP بسرعة 100M، أو وحدة 100BASE-FX عبر SGMII |
| SFP بسرعة 2.5G تقيم الوصلة عند 1G أو لا تقيمها إطلاقًا | لا يملك المضيف 2500BASE-X | اختر قفصًا قادرًا على 2.5G أو وحدة بتراجع في المعدل |
| عصا ONU تقيم الوصلة ثم تسقط | توقّع 2500BASE-X مقابل 1000BASE-X، والتفاوض التلقائي | اضبط المضيف على 2500BASE-X، وعطِّل التفاوض التلقائي (ضوئيات PON) |
| SFP+ من نوع 10GBASE-T تقيم الوصلة عند 10G فقط | لا USXGMII على المضيف | اقبل الاقتصار على 10G، أو استخدم وحدة بتكيّف معدل داخلي |
| Linux: الوحدة تعمل على لوحة ولا تعمل على أخرى | اختارت phylink واجهة مختلفة من EEPROM؛ ويفتقر SoC إلى ذلك الوضع | تحقق من dmesg بحثًا عن sfp: module … interface؛ وأصلح بايتات التوافق أو شجرة الجهاز |
في CodingBox
كل البايتات التي توجّه اختيار المضيف موجودة في A0h: رموز التوافق 3–10 (1000BASE-T، وSX، وLX، ورموز 10G)، ومعدل البت الاسمي 12، والترميز 11 (8b/10b مقابل 64b/66b)، والتوافق الممتد 36. وستُعامَل وحدة نحاسية مُرمَّزة كـ1000BASE-SX بصفتها ضوئية وتفقد مسار 10/100 الخاص بها؛ وستُشغَّل وحدة ضوئية ببت 1000BASE-T ضال بصفتها SGMII. ويعرض CodingBox هذه الحقول ويحرّرها (Check transceiver، رموز التوافق).