Mappa dei registri CMIS: pagine lane (10h, 11h, VDM, CDB) · Specifiche e standard · Ricetrasmettitori ottici e cavi · Documentazione · CodingBox
CodingBox Documentazione

Mappa dei registri CMIS: pagine lane (10h, 11h, VDM, CDB)

Tutto ciò che è per lane in un modulo CMIS vive in pagine a banchi: il banco b (byte inferiore 126) copre le lane 8b+1 … 8b+8. La pagina 10h è dove l’host scrive — inizializzazione del data path, Tx disable, polarità, squelch, equalizzazione e gli Staged Control Set che selezionano le applicazioni; la pagina 11h è dove l’host rilegge — stati del data path, flag per lane, monitor, stato di configurazione e l’Active Control Set. Le pagine 20h–2Fh contengono il VDM e la 9Fh la mailbox CDB. Questa pagina elenca i byte chiave, redatta sulla base di CMIS 5.x (le posizioni di byte di alcuni campi di integrità del segnale differiscono tra 4.x e 5.x; sono indicate come intervalli). Descrizione narrativa: CMIS.

Legenda: i byte per lane usano il bit n−1 per la lane n (bit 0 = lane 1 … bit 7 = lane 8); i campi a nibble usano i bit 7–4 per la lane dispari e 3–0 per la lane pari di ogni coppia, salvo indicazione contraria · rsvd = riservato.

Pagina 10h — controllo di lane (l’host scrive)

ByteCampoBit / contenuto
128DPDeinitLanebit per lane: 1 = deinizializza (porta il data path della lane a DPDeactivated)
129rsvd—
130OutputDisableTxbit per lane: 1 = uscita Tx (laser) spenta
131PolarityFlipTxbit per lane: inverte l’ingresso elettrico Tx
132SquelchDisableTxbit per lane: 1 = disabilita lo squelch automatico Tx
133ForceSquelchTxbit per lane: 1 = forza lo squelch Tx
134rsvd—
135AdaptiveInputEqEnableTxbit per lane: 1 = equalizzazione adattiva dell’ingresso lato host
136AdaptiveInputEqRecallTxbit per lane: richiama l’impostazione EQ memorizzata (4.x: freeze)
137rsvd—
138–141FixedInputEqTargetTxnibble per lane (138: lane 1–2 … 141: lane 7–8): codice EQ di ingresso fisso 0–15
142rsvd—
143ApplyDPInitLanebit per lane: 1 = applica lo Staged Control Set 0 ed esegue DPInit
144ApplyImmediateLanebit per lane: applica SCS0 senza reinizializzare il data path
145–152Staged Control Set 0 — configurazione del data pathun byte per lane (145 = lane 1 … 152 = lane 8): bit 7–4 AppSelCode (1–15 = indice del descrittore, 0 = nessuno) · 3–1 DataPathID (prima lane host del data path − 1) · 0 ExplicitControl (1 = usa le impostazioni SI sotto invece dei valori predefiniti dell’applicazione)
153SCS0 AdaptiveInputEqEnableTxbit per lane
154SCS0 AdaptiveInputEqRecallTxbit per lane
155rsvd—
156–159SCS0 FixedInputEqTargetTxnibble per lane
160SCS0 CDREnableTxbit per lane: 1 = CDR Tx attivo, 0 = bypass
161SCS0 CDREnableRxbit per lane
162–165SCS0 OutputEqPreCursorTargetRxnibble per lane
166–169SCS0 OutputEqPostCursorTargetRxnibble per lane
170–173SCS0 OutputAmplitudeTargetRxnibble per lane
174–177rsvd—
178–210Staged Control Set 1stesso layout di 145–177 (178–185 configurazione del data path, 186–210 target SI)
211–255Controlli e maschere dell’uscita RxOutputDisableRx, PolarityFlipRx, SquelchDisableRx per lane; maschere dei flag per la pagina 11h (posizioni di byte secondo la revisione)

Flusso di selezione: scrivere 145–152 → impostare 143 per le lane → interrogare la pagina 11h 202–205 per ConfigStatus → leggere 128–131 per lo stato del data path — CMIS, Velocità e rate.

Pagina 11h — stato di lane (l’host legge)

ByteCampoBit / contenuto
128DPStateHostLane 1–23–0 stato lane 1 · 7–4 stato lane 2 (tabella dei codici sotto)
129DPStateHostLane 3–4come sopra
130DPStateHostLane 5–6—
131DPStateHostLane 7–8—
132–133rsvd—
134DPStateChangedFlagbit per lane; con latch
135TxFaultFlagbit per lane
136TxLOSFlagbit per lane (LOS in ingresso lato host)
137TxCDRLOLFlagbit per lane
138TxAdaptiveInputEqFailFlagbit per lane
139Allarme alto di potenza Txbit per lane
140Allarme basso di potenza Tx—
141Avviso alto di potenza Tx—
142Avviso basso di potenza Tx—
143Allarme alto di bias Tx—
144Allarme basso di bias Tx—
145Avviso alto di bias Tx—
146Avviso basso di bias Tx—
147RxLOSFlagbit per lane (LOS lato media)
148RxCDRLOLFlagbit per lane
149Allarme alto di potenza Rx—
150Allarme basso di potenza Rx—
151Avviso alto di potenza Rx—
152Avviso basso di potenza Rx—
153OutputStatusRxbit per lane: 1 = uscita Rx abilitata/valida
154–169Monitor di potenza Tx2 byte per lane (154–155 lane 1 … 168–169 lane 8), senza segno, 0,1 µW
170–185Monitor di bias Tx2 byte per lane, 2 µA × moltiplicatore
186–201Monitor di potenza Rx2 byte per lane, 0,1 µW
202ConfigStatus lane 1–23–0 lane 1 · 7–4 lane 2 (tabella dei codici sotto)
203ConfigStatus lane 3–4—
204ConfigStatus lane 5–6—
205ConfigStatus lane 7–8—
206–213Active Control Set — configurazione del data pathun byte per lane, stesso layout della pagina 10h 145–152: la configurazione effettivamente in vigore
214–234Active Control Set — impostazioni SIabilitazione/richiamo EQ adattiva, EQ fissa, CDR Tx/Rx, pre/post-cursore Rx, ampiezza Rx — rispecchia il layout SCS
235DPInitPendingbit per lane: 1 = una configurazione scaglionata attende ApplyDPInit
236–255rsvd / flag secondo la revisione—

Codici di stato del data path (byte 128–131)

CodiceStatoSignificato
1hDPDeactivatedlane inattiva; Tx spento
2hDPInitinizializzazione con la configurazione applicata
3hDPDeinitdisattivazione in corso
4hDPActivatedTx acceso, dati in transito
5hDPTxTurnOnlaser in accensione
6hDPTxTurnOfflaser in spegnimento
7hDPInitializedconfigurata, in attesa dell’abilitazione Tx
0h, 8h–Fhrsvd—

Codici ConfigStatus (byte 202–205)

CodiceStatoSignificato
0hConfigUndefinednessuna configurazione ancora applicata
1hConfigSuccessset scaglionato accettato e in vigore
2hConfigRejectedrifiuto generico
3hConfigRejectedInvalidAppSelcodice AppSel non dichiarato
4hConfigRejectedInvalidDataPathDataPathID non consentito per quell’applicazione
5hConfigRejectedInvalidSItarget di integrità del segnale fuori intervallo
6hConfigRejectedLaneInUselane già parte di un altro data path attivo
7hConfigRejectedPartialDataPathnon tutte le lane del data path sono state configurate
8h–Bhrsvd—
ChConfigInProgressapplicazione in corso
Dh–Fhcustomdel produttore

Pagina 12h — controllo del laser sintonizzabile (per lane)

Impostazione del numero di canale, impostazione di lunghezza d’onda/frequenza, offset di sintonia fine, stato di sintonia e flag per lane, con le capacità sulla pagina 04h — Mappe sintonizzabili.

Pagine 20h–2Fh — VDM (Versatile Diagnostics Monitoring)

PagineContenutoLayout
20h–23hDescrittori2 byte per osservabile (128–255 → 64 per pagina, 256 in totale): byte 0 bit 7–4 ID del set di soglie, 3–0 lane (0 = a livello di modulo); byte 1 tipo di osservabile (1 età del laser · 2 corrente TEC · 3 errore di frequenza del laser · 4 temperatura del laser · 5/6 eSNR media/host · 7/8 transizione di livello PAM4 media/host · 9–16 BER pre-FEC min/max/avg/corrente media/host · 17–24 FERC min/max/avg/corrente media/host · 128+ set coerente)
24h–27hCampioni2 byte per osservabile, stesso indice del proprio descrittore; formati U16 / S16 / F16
28h–2BhSoglie8 byte per set di soglie: allarme alto, allarme basso, avviso alto, avviso basso
2Ch–2FhFlag e maschereflag di allarme/avviso per osservabile (2Ch–2Dh) e maschere (2Eh–2Fh)

Formato di rapporto F16: bit 15–11 esponente e, bit 10–0 mantissa m; valore = m × 10^(e − 24). Dettagli: VDM e metriche FEC.

Pagina 9Fh — blocco comandi CDB

ByteCampoContenuto
128–129CMD IDidentificatore del comando, MSB per primo (0000h interroga stato · 0040h funzionalità del modulo · 0041h funzionalità di gestione del firmware · 0100h ottieni informazioni firmware · 0101h avvia il download del firmware · 0102h interrompi · 0103h scrivi blocco firmware LPL · 0104h scrivi blocco firmware EPL · 0107h completa il download · 0109h esegui l’immagine · 010Ah conferma l’immagine)
130–131Lunghezza EPLbyte di payload esteso nelle pagine A0h–AFh
132Lunghezza LPLbyte di payload locale (0–120)
133CdbChkCodechecksum su 128–132 e sull’LPL: complemento a uno di (Σ) mod 256
134Lunghezza RPLlunghezza del payload di risposta scritta dal modulo
135RplChkCodechecksum di risposta
136–255LPLpayload locale (parametri del comando / risposta)
A0h–AFh 128–255EPLfino a 2048 byte di payload esteso

Scrivere per ultimo il byte 129 (l’LSB del CMD ID) avvia l’esecuzione; l’host poi interroga i byte inferiori 37–38 (CdbStatus) finché CdbIsBusy non si azzera.

Mappe correlate


Se trovi un’imprecisione o un errore in questo articolo, seleziona il passaggio corrispondente e premi Ctrl+Enter per .