CMIS — ortak yönetim arayüzü
CMIS, yani Common Management Interface Specification, her yeni yüksek hızlı form faktörü için yönetim modelidir: QSFP-DD, OSFP, OSFP-XD, QSFP112, SFP-DD ve SFP112 (CMIS’li SFP+ olarak), DSFP, COBO ve CMIS destekli QSFP. QSFP-DD MSA’sında başlamış (CMIS 3.0, 2018), OSFP ve COBO grupları tarafından benimsenmiş ve 5.0 sürümünden (2021) beri OIF’te sürdürülmektedir. SFF-8636 ile karşılaştırıldığında daha büyük bir bellek haritası değil, farklı bir modeldir: 32 şeride kadar bankalı sayfalar, modül ve her veri yolu için açık durum makineleri, uyumluluk bit alanları yerine uygulamalar, çok yönlü tanılama (VDM) ve ürün yazılımı ile genişletilmiş işlevler için bir komut kanalı (CDB). Sürüm baytı ve geçmişi: Spesifikasyon revizyonları.
Bellek modeli
| Bölge | Adresleme | İçerik |
|---|---|---|
| Alt sayfa (bayt 0–127) | her zaman görünür | tanımlayıcı, revizyon, modül durumu, bayraklar, modül ölçülen değerleri, genel kontroller, medya türü, uygulama tanımlayıcıları 1–8, parola, banka seçimi 126, sayfa seçimi 127 |
| Üst sayfa 00h (128–255) | sayfa 127 = 00h | satıcı bloğu, güç sınıfı, konektör, kablo uzunlukları, medya teknolojisi, sağlama toplamı |
| 01h | yetenekler | ürün yazılımı/donanım revizyonları, bağlantı uzunlukları, dalga boyu, desteklenen sayfalar ve bankalar, süreler, sinyal bütünlüğü kontrolleri, tanımlayıcılar 9–15 |
| 02h | eşikler | modül ve şerit alarm/uyarı eşikleri |
| 04h | lazer yetenekleri | ayarlanabilir lazer gridleri ve aralıkları (SFF-TA-1004 kökeni) |
| 10h (bankalı) | şerit kontrolü | veri yolu deinit, Tx devre dışı bırakma, polarite, squelch, eşitleme, kademeli kontrol setleri |
| 11h (bankalı) | şerit durumu | veri yolu durumları, şerit başına bayraklar, şerit ölçülen değerleri, yapılandırma durumu, etkin kontrol seti |
| 12h (bankalı) | ayarlanabilir lazer kontrolü | şerit başına kanal/dalga boyu |
| 13h–14h (bankalı) | tanılama | loopback’ler, PRBS üreteçleri ve denetleyicileri |
| 20h–2Fh (bankalı) | VDM | tanımlayıcılar, örnekler, eşikler, bayraklar |
| 9Fh | CDB | komut bloğu: komut kimliği, uzunluklar, sağlama toplamı, yerel yük |
| A0h–AFh | CDB EPL | büyük aktarımlar için genişletilmiş yük (ürün yazılımı görüntüleri) |
| 80h–FFh (diğer) | satıcı | özel sayfalar |
Bir banka 8 şeridi adresler: banka 0 şerit 1–8, banka 1 şerit 9–16 ve böyle devam eder; kaç tanesinin uygulandığı sayfa 01h’de bildirilir. Yalnızca sayfa 00h’ye sahip modüller düz bellek bitini (bayt 2 bit 7) ayarlar. Veri yolu: tek adres A0h, 400 kHz’e kadar, slot başına ModSelL — iki telli arayüz.
Alt sayfa — hostun dayandığı baytlar
| Bayt | Alan | Notlar |
|---|---|---|
| 0 | Tanımlayıcı | 18h QSFP-DD, 19h OSFP, 1Eh CMIS’li QSFP… (SFF-8024) |
| 1 | CMIS revizyonu | major.minor nibble’ları: 50h = 5.0, 40h = 4.0, 30h = 3.0 |
| 2 | Bellek özellikleri | bit 7 düz bellek, artı yalnızca kademeli yapılandırma ve diğer yetenek bitleri |
| 3 | Modül durumu | bit 3–1: 1 LowPwr, 2 PwrUp, 3 Ready, 4 PwrDn, 5 Fault; bit 0 kesme devre dışı |
| 8–11 | Modül bayrakları | durum değişti, sıcaklık/Vcc alarmları, aux alarmları, custom; kilitlenir, okumada temizlenir |
| 14–25 | Modül ölçülen değerleri | sıcaklık, Vcc, Aux1–Aux3 (TEC akımı, lazer sıcaklığı, ek besleme), custom |
| 26 | Genel kontroller | 5.x: bit 6 LowPwrAllowRequestHW, bit 5 squelch yöntemi, bit 4 LowPwrRequestSW, bit 3 yazılım sıfırlaması (4.x: bit 6 LowPwr, bit 4 ForceLowPwr) |
| 37–38 | CDB durumu | komut blokları 1 ve 2 için meşgul / başarılı / başarısız |
| 39–40 | Etkin ürün yazılımı | çalışan görüntünün major.minor’u |
| 85 | Medya türü | 01h MMF, 02h SMF, 03h pasif bakır, 04h aktif kablo, 05h BASE-T |
| 86–117 | Uygulama tanımlayıcıları 1–8 | her biri 4 bayt: host arayüzü kimliği, medya arayüzü kimliği, host/medya şerit sayıları, host şeridi atama seçenekleri |
| 118–121 | Parola değişikliği | satıcı tanımlı |
| 122–125 | Parola girişi | satıcı tanımlı — yazma koruması parolalarının bulunduğu yer |
| 126 | Banka seçimi | — |
| 127 | Sayfa seçimi | — |
Modül durum makinesi
Reset ──► MgmtInit ──► ModuleLowPwr ──► ModulePwrUp ──► ModuleReady
▲ │
└──────── ModulePwrDn ◄────────┘
(ModuleFault from any state on a fatal error)
- MgmtInit — modül denetleyicisini önyükler; kimlik henüz okunabilir değildir (donanım spesifikasyonlarına göre 2 saniyeye kadar).
- ModuleLowPwr — kimlik, yetenekler ve eşikler okunabilir; güç sınıf 1 ile sınırlıdır; host modülü burada doğrular.
- ModulePwrUp → ModuleReady — host, LPMode pinini devre dışı bırakır (veya LowPwrRequestSW’yi temizler) ve modül optiklerine güç verir; veri yolları artık ilklendirilebilir.
- ModulePwrDn — bir LPMode etkinleştirmesinde bunun tersi.
LowPwr’dan hiç çıkmayan bir modül, klasik CMIS arıza kaydıdır: CMIS sorunları, Güç ve termal.
Uygulamalar ve veri yolu
CMIS modülü, uyumluluk bitleri yerine uygulamaları bildirir — şerit sayılarıyla birlikte host elektriksel arayüzü ve medya arayüzü çiftleri:
| Tanımlayıcı | Host arayüzü | Medya arayüzü | Host şeritleri / medya şeritleri | Örnek |
|---|---|---|---|---|
| Uygulama 1 | 12h 400GAUI-8 C2M | 1Ch 400GBASE-DR4 | 8 / 4 | bir 400G bağlantı |
| Uygulama 2 | 0Eh 100GAUI-2 C2M | 14h 100GBASE-DR | 2 / 1 | 4 × 100G breakout |
Host, her şerit için bir uygulamayı AppSel’i (bit 7–4), bir DataPathID’yi (bit 3–1) ve explicit-control bitini Staged Control Set 0’a (sayfa 10h bayt 145–152) yazarak seçer, ardından ApplyDPInit’i (sayfa 10h bayt 143) etkinleştirir. Modül, ConfigStatus’ta (sayfa 11h bayt 202–205: kabul edildi, reddedildi, geçersiz AppSel, geçersiz şerit kombinasyonu…) yanıt verir ve kabul edilen değerleri Active Control Set’e (sayfa 11h 206–221) kopyalar. Her veri yolu daha sonra kendi durum makinesinde ilerler:
DPDeactivated ──► DPInit ──► DPInitialized ──► DPTxTurnOn ──► DPActivated
▲ │
└────────── DPDeinit ◄───────── DPTxTurnOff ◄──────────────┘
Durumlar, şerit başına sayfa 11h bayt 128–131’de bildirilir (şerit başına bir nibble) ve her adımın maksimum süresi, host ne kadar bekleyeceğini bilsin diye sayfa 01h’de bildirilir. Şerit başına Tx devre dışı bırakma, sayfa 10h bayt 130’dadır. Modülün bir uygulama olarak listelemediği breakout basitçe kullanılamaz — Hız ve oran.
İzleme: bayraklar, ölçülen değerler, VDM
- Modül ölçülen değerleri (alt sayfa 14–25) ve şerit ölçülen değerleri (sayfa 11h: Tx gücü 154–169, Tx bias 170–185, Rx gücü 186–201, şerit başına 2 bayt), SFP/QSFP ile aynı 16 bit biçimlerini kullanır (birimler).
- Eşikler sayfa 02h’dedir; bayraklar kilitlenir ve okumada temizlenir, bayrak başına maskelerle birlikte; IntL, maskelenmemiş herhangi bir bayrağı sinyaller.
- VDM (sayfa 20h–2Fh), eski spesifikasyonların hiçbir zaman sahip olmadığı gözlemlenebilir değerler ekler: FEC öncesi BER, düzeltilemeyen FEC çerçeveleri, şerit başına SNR, lazer sıcaklığı ve yaşı, eSNR, PAM4 seviye geçiş parametreleri — her biri kendi tanımlayıcısı, eşikleri ve bayraklarıyla birlikte. Bir 400G modülün bağlantı kalitesini, hatalar hosta ulaşmadan önce bildirmesinin yolu budur (İzleme).
CDB — Komut Veri Bloğu
Sayfa 9Fh bir posta kutusudur: host bir komut kimliği (bayt 128–129), yük uzunlukları (130–132), bir sağlama toplamı (133) ve 120 bayta kadar yerel yük (136–255) yazar, isteğe bağlı olarak EPL sayfaları A0h–AFh’de daha fazlası; modül bunu yürütür ve durum baytları 37–38 ile bir yanıt yükünde bildirir. Standart komutlar şunları içerir:
| Komut | Amaç |
|---|---|
| 0000h | durumu sorgula |
| 0040h / 0041h | modül özellikleri / ürün yazılımı yönetimi özellikleri |
| 0100h | ürün yazılımı bilgisini al (çalışan ve etkin olmayan görüntüler) |
| 0101h | ürün yazılımı indirmeyi başlat |
| 0103h / 0104h | LPL / EPL üzerinden ürün yazılımı bloğu yaz |
| 0107h | indirmeyi tamamla |
| 0109h / 010Ah | görüntüyü çalıştır / görüntüyü onayla |
| 0102h | iptal et |
CDB, satıcı araçlarının sahada modül ürün yazılımını güncellemesinin ve bazı satıcıların yapılandırma ile kilit açma işlevlerini uygulamasının yoludur. Destek ve özellikler sayfa 01h’de bildirilir.
Sağlama toplamları ve parolalar
Sayfa 00h bayt 222, bayt 128–221’in sağlama toplamını alır; sayfa 01h, 02h ve 04h, bayt 255’te bir sayfa sağlama toplamı taşır (Sağlama toplamları). Parolalar (122–125) ve satıcı kilit açma şemaları spesifikasyonun dışındadır — EEPROM yeniden kodlama.
Host desteği
Ağ işletim sistemleri, CMIS 4.0 ve 5.x’i değişen derinliklerde uygular: bazıları uygulama/veri yolu akışının tamamını yönetir, bazıları ise LPMode’u serbest bırakır ve modülün kendi kendine devreye girmesini bekler. Bu fark, çoğu “tanındı ama asla hazır olmadı” arıza kaydının arkasındadır — CMIS sorunları, Host ne yapar.
CodingBox’ta
CodingBox, CMIS’i tanımlayıcı ve revizyon baytına göre saptar, alt belleği, sayfa 00h, 01h, 02h’yi ve bankalı şerit sayfalarını okur, uygulama tanımlayıcılarını SFF-8024’e göre çözümler, modül ve veri yolu durumlarını ve şerit başına ölçülen değerleri DDM üzerinde gösterir ve kimliği, sayfa sağlama toplamları yeniden hesaplanmış olarak EEPROM editor içinde düzenler. CDB üzerinden ürün yazılımı işlemleri satıcıya özgüdür ve editörün kapsamı dışındadır.
Yazmaç düzeyinde tablolar: Alt sayfa haritası, Üst sayfalar haritası 00h/01h/02h, Şerit sayfaları haritası 10h/11h, VDM, CDB.