Kontrolör ve ürün yazılımı: DDM, APC, bellek, koruma · Modülün içi: lazerler ve alıcılar · Optik alıcı-vericiler ve kablolar · Belgeler · CodingBox
CodingBox Belgeler

Kontrolör ve ürün yazılımı: DDM, APC, bellek, koruma

Her yönetilebilir alıcı-vericinin içinde küçük bir bilgisayar bulunur. Mikrodenetleyici (MCU) ölçer, düzenler, raporlar ve — programcı açısından en önemlisi — okuyup yazdığınız bellek odur. Bir modülde sıradan bir EEPROM mu yoksa EEPROM’muş gibi davranan bir MCU mu bulunduğu, modülün nasıl kodlanabileceğini, bazı yazmaların neden bir güç döngüsünden sonra kaybolduğunu ve parolaların neden var olduğunu belirler. Bu sayfa denetleyicinin ne yaptığını ve tasarımının tezgâhta nasıl karşınıza çıktığını anlatır.

MCU ne yapar

GörevAyrıntılarNasıl görünür
Ölçümsıcaklığı (termistör veya yonga üzeri sensör), Vcc’yi, lazer bias’ını, monitör PD akımını (Tx) ve alıcı foto akımını (Rx) saniyede birkaç kez 10–12 bit bir ADC üzerinden örnekler; fabrika kalibrasyonunu uygularDDM değerleri — Parametreler
APC — otomatik güç kontrolümonitör PD akımını fabrika hedefiyle karşılaştırır ve sürücünün bias DAC’ını ayarlarsabit Tx gücü, yükselen bias — Tx bias ve yaşlanma
Sıcaklık kompanzasyonuarama tabloları modülasyon akımını ve PAM4’te DSP ayarlarını sıcaklığa göre ayarlarkararlı sönüm oranı
TEC kontrolüsoğutmalı modüllerde lazer sıcaklığını tutan bir PID döngüsü; DWDM’de dalga boyu kilitleyici geri beslemesilazer sıcaklığı, TEC akımı monitörleri
Eşikler ve bayraklarher monitörü alarm/uyarı eşikleriyle karşılaştırır, mandallanmış bayraklar ayarlar, IntL’yi sürerEşikler ve alarmlar
Düşük hızlı pinlerTX_DISABLE, RS0/RS1, LPMode, ResetL’i okur; TX_FAULT, RX_LOS’u sürer (veya donanım sinyallerini geçirir)pin davranışı
İki telli slaveA0h/A2h’de (SFP) veya sayfalar/bankalarla A0h’de (QSFP, CMIS) yanıt verirbellek haritası — İki telli arayüz
Durum makineleriCMIS modül ve veri yolu durumları; uygulama seçimi; susturmaCMIS
Koruma ve satıcı işlevleriparolalar, yazma korumalı bölgeler, kaydetme komutları, satıcı kilidi açma, kimlik doğrulama imzalarıYazma koruması türleri
CDB / ürün yazılımı güncellemeCMIS modüllerinde yeni ürün yazılımı görüntülerini alır ve yazarürün yazılımı sürüm baytları

Tipik parçalar: düşük maliyetli SFP/SFP+’ta birkaç kB flaşlı 8 bit MCU’lar (8051 sınıfı); 100G+ ve CMIS modüllerinde 32 bit Cortex-M sınıfı; bazı satıcılar ADC’leri, DAC’leri ve iki telli slave’i tümleştiren özel bir alıcı-verici denetleyici ASIC’i kullanır.

Belleği kurmanın iki yolu

TasarımHarita nasıl saklanırProgramlama açısından sonuçları
A0h için ayrık EEPROM (örn. AT24C02 sınıfı), A2h için MCUA0h kimlik bilgileri, hostun ve programlayıcının doğrudan konuştuğu gerçek bir seri EEPROM’dur; MCU yalnızca tanılamayı yönetirA0h yazmaları sıradan EEPROM yazmalarıdır — t_WR’ye ve sayfa boyutuna uyun; donanımsal bir WP pini bunları engelleyebilir (Yazma koruması türleri 1–3)
MCU emülasyonlu haritaMCU her iki telli isteği RAM’den yanıtlar ve değişiklikleri dahili flaşına/EEPROM’una yansıtır — ya da yansıtmazyazmalar ürün yazılımının kararına göre gider: kabul edilir, yok sayılır, parola korumalıdır, yalnızca bir kaydetme komutundan sonra saklanır veya bir sonraki önyüklemede ürün yazılımının kendi kopyasından üzerine yazılır (türler 4–5)
Hibritsatıcı bloğu için EEPROM, sayfalar ve parolalar için MCUbayt aralığına göre karışık kurallar

Emülasyonlu bir harita, tezgâhtaki çoğu gizemi açıklar: ürün yazılımının uygulamadığı bir sayfadan gelen FFh, “başarılı” olup geri dönen yazmalar, bir aralıkta salt okunur olup bir sonrakinde serbest olan baytlar, MCU örnekleme ile meşgulken saat germe (EEPROM okuma ve yazma hataları).

Önyükleme ve t_init penceresi

Güç verildiğinde MCU, kalibrasyon ve kimlik bilgilerini kalıcı belleğinden yükler, ADC’yi başlatır, APC’yi hedefine ulaşana kadar çalıştırır ve ancak o zaman iki telli slave’i etkinleştirip data-not-ready bayrağını temizler. Spesifikasyonların bir hostun yanıt beklemesine izin vermeden önce tanıdığı süre budur — SFP’de 300 ms, QSFP/CMIS’te 2 sn — ve takmadan hemen sonra yapılan bir okumanın anlamsız veri döndürmesinin nedeni de budur (Host ne yapar).

Kalibrasyon burada yaşar

Ham ADC sayımları, fabrikanın bir test istasyonunda ölçtüğü sabitler olmadan hiçbir anlam taşımaz: gerçek gönderim gücüne göre monitör PD akımı, modülün dalga boyunda giriş gücüne göre alıcı foto akımı, termistör eğrisi, bias DAC ölçeği. Dahili kalibrasyonlu modüllerde ürün yazılımı bunları uygular ve fiziksel birimler raporlar; harici kalibrasyonlu modüllerde sabitler, hostun uygulaması için A2h 56–91’e yazılır (Kalibrasyon). Bazı ürün yazılımlarının bu sabitleri tuttuğu satıcı alanının üzerine yazmak, anlamsız DDM’ye veya ölü bir APC döngüsüne yol açar — dikkatsiz bir yazmanın bir modülü “tuğlaya” çevirmesinin klasik yoludur (Üretim ve test).

Koruma nasıl uygulanır

MekanizmaUygulamaTezgâhtaki görünüm
Parolaürün yazılımı, parola alanına (SFP A2h 123–126, QSFP 123–126, CMIS 122–125) yazılan 4 baytı saklanan bir değerle karşılaştırır; oturum için yazmaların kilidini açardoğru değer girilene kadar WRITE FAIL — Parolalar
Yazma korumalı bölgelerürün yazılımı, salt okunur saydığı aralıklara (sağlama toplamları, eşikler, kalibrasyon, satıcı alanı) yapılan yazmaları yok sayarbaytlar değişmeden geri okunur, hata yok
Ayrık bir EEPROM üzerinde donanımsal WP pinipin, modülün içinde yükseğe bağlanmıştır veya MCU tarafından sürülürprogramlayıcı kartının onu sürmesi gerekir
Kaydetme komutuyazmalar RAM’e düşer; satıcıya özgü bir dizi bunları flaşa işlerdizi gönderilmedikçe güç döngüsünden sonra geri döner
Ürün yazılımı yansımasıönyüklemede ürün yazılımı haritayı kendi görüntüsünden yeniden yazardeğişiklikler her güç döngüsünde kaybolur — görüntüyü yalnızca satıcının aracı değiştirebilir
Kimlik doğrulamaürün yazılımı, satıcı baytlarına bir imza (seri numarasının, satıcı verisinin ve bir gizli anahtarın özeti) hesaplar; host bunu doğrularkimlik düzenlemeleri sağlama toplamlarını geçer, ama host yine de reddeder — Satıcı kilidi

Her türün nasıl tanındığı ve programlandığı: Yazma koruması türleri, EEPROM yeniden kodlama.

Ürün yazılımı güncellemeleri

CMIS modülleri, iki telli veri yolu üzerinden CDB komutlarıyla (indirmeyi başlat, blokları yaz, tamamla, çalıştır, işle) ürün yazılımı alabilir; başarısız bir güncellemenin geri dönebilmesi için genellikle iki görüntü bankası bulunur. SFF-8472/8636 modüllerinde standart bir mekanizma yoktur; satıcılar satıcı baytları üzerinden kendilerine özgü diziler kullanır. Satıcıların CMIS birlikte çalışabilirlik sorunlarını çözme yolu ürün yazılımı düzeltmeleridir (CMIS sorunları), ve ürün yazılımı sürüm baytlarını (CMIS alt sayfa 39–40, sayfa 01h 128–129) kimlik bilgileriyle birlikte kaydetmeye değer.

Denetleyicinin arıza türleri

BelirtiOlası neden
Modül veri yolunda görünmüyor, optik aksi hâlde sorunsuzMCU önyüklenmiyor: bozuk ürün yazılımı, gerilim düşmesi, hasarlı kristal
DDM değerleri donmuş veya anlamsızADC veya kalibrasyon bozulması; ürün yazılımı kilitlenmesi
APC tutması gerekirken Tx gücü kayıyormonitör PD veya ADC arızası, APC devre dışı
Rastgele NACK’ler, yavaş okumalarMCU aşırı yüklü (örnekleme), hızlı bir programlayıcının saat germe sınırlarını aşması
Çalışıyor, ama her yazma geri dönüyortasarım gereği ürün yazılımı yansıması — arıza değil
Bir yazmadan sonra modül ölüürün yazılımı yapılandırması veya kalibrasyon alanının üzerine yazılmış

CodingBox’ta

CodingBox, modülü ürün yazılımının sunduğu şekilde ele alır: harita türünü tespit eder, kaydetme komutlu ve yansımalı tasarımlar için bilinen parolaları ve programlama betiklerini uygular, sağlama toplamlarını yeniden hesaplar, her yazmadan önce bir yedek tutar ve bir denetleyici kötü tepki verirse onu code database üzerinden geri yüklemenize olanak tanır. EEPROM editor, spesifikasyonun salt okunur veya satıcıya özgü olarak tanımladığı aralıkları işaretler, böylece ürün yazılımının özel bölgesine ne zaman yazdığınızı bilirsiniz.


Bu materyalde bir yanlışlık veya hata bulursanız ilgili bölümü seçin ve Ctrl+Enter tuşlarına basarak .