Come vengono elaborati 255 Tbit / s nella comunicazione in fibra ottica?


25

Non ho mai capito come si ottengono le nuove velocità di trasferimento dei dati da record in termini di conversione da / a segnali elettrici e ottici.

Supponiamo di avere 255 Tbit di dati e vogliamo trasferirli in un secondo. (Questo è un risultato reale.) Hai 255 Tbit memorizzati in, diciamo, 255 trilioni di condensatori (che è RAM). Ora dovremmo essere in grado di leggere ognuno in successione, indagando ogni bit in modo che un secondo dopo ne abbiamo letti tutti i 255 trilioni. Questo ovviamente non è orchestrato da un processore a 3 GHz.

Che dire dell'estremità ricevente? Gli impulsi arrivano a 255 THz, ma la frequenza di aggiornamento dell'elettronica che prova a leggere un segnale in entrata non è di gran lunga 255 THz. L'unica cosa che posso immaginare sono migliaia di processori con i loro segnali di orologio suddivisi del tempo moltiplicati (ritardati) di meno di 0,000000000001 secondi. Anche se il modo di ottenere tale multiplexing mi riporta al mio problema con questa triplice differenza di frequenze.


4
"Questo ovviamente non è orchestrato da un processore 3GHz" perché no? Deve solo dire a ogni componente di inviare dati, DMA e tecnologie simili sono in circolazione da praticamente da sempre. Inoltre, ovviamente, 255Tbit non vengono raggiunti su hardware di consumo.
PlasmaHH,

22
Supponi che un tale sistema funzioni in un certo modo, ad esempio con gli impulsi. Dubito che funzioni così dato che esistono modi più intelligenti ed efficienti per trasferire i dati. L'uso degli impulsi per me sembra un modo molto inefficiente di usare la larghezza di banda della fibra. Mi aspetterei che sarebbe usata una qualche forma di modulazione OFDMA. Quindi crea molti canali in parallelo modulando a frequenze portanti diverse e usando diverse lunghezze d'onda della luce. Prima di dare per scontato che qualcosa funzioni in un certo modo, cerca perché ipotesi errate portano a conclusioni errate!
Bimpelrekkie,

2
@Bimpelrekkie: uno dei fatti più interessanti di quella tecnologia (che ha 3 anni tra il.) È che usano una fibra multimodale a 7 core per quella roba.
PlasmaHH,

12
Ancora una volta, stai solo facendo ipotesi e poi ponendole in discussione tu stesso!?!? Perché non ricercare l'argomento in modo che tu sappia e capisca come viene fatto invece di assumere semplicemente qualcosa (che probabilmente è sbagliato comunque). È meglio dire: non lo so, quindi presumere che qualcosa funzioni in un certo modo ed espandersi su quell'assunto (sbagliato).
Bimpelrekkie,

3
Si prega di collegarsi a dove leggi su questo risultato del mondo reale. Inoltre, perché pensi che i dati siano stati inviati in serie?
The Photon,

Risposte:


43

Piuttosto che preoccuparsi di un documento di ricerca che sta spingendo le cose al limite, iniziare innanzitutto capendo le cose che si trovano di fronte a te.

In che modo un disco rigido SATA 3 in un computer di casa inserisce 6 Gbit / s in un collegamento seriale? Il processore principale non è 6 GHz e quello nel disco rigido non lo è certamente, secondo la tua logica non dovrebbe essere possibile.

La risposta è che i processori non stanno seduti lì a mettere un po 'alla volta, c'è un hardware dedicato chiamato SERDES (serializzatore / deserializzatore) che converte un flusso di dati paralleli a velocità inferiore in uno seriale ad alta velocità e poi di nuovo a l'altra estremità. Se funziona in blocchi di 32 bit, la velocità è inferiore a 200 MHz. E quei dati vengono quindi gestiti da un sistema DMA che sposta automaticamente i dati tra il SERDES e la memoria senza che il processore venga coinvolto. Tutto ciò che il processore deve fare è indicare al controller DMA dove sono i dati, quanto inviare e dove inviare una risposta. Dopo che il processore può spegnersi e fare qualcos'altro, il controller DMA si interromperà al termine del lavoro.

E se la CPU trascorre la maggior parte del tempo inattiva, potrebbe utilizzare quel tempo per avviare un secondo DMA e SERDES in esecuzione su un secondo trasferimento. In effetti una CPU potrebbe eseguire parecchi di questi trasferimenti in parallelo, offrendoti una velocità dei dati piuttosto buona.

OK, questo è elettrico piuttosto che ottico ed è 50.000 volte più lento del sistema richiesto ma si applicano gli stessi concetti di base. Il processore gestisce i dati solo in grossi pezzi, l'hardware dedicato lo gestisce in pezzi più piccoli e solo alcuni hardware molto specializzati lo gestiscono 1 bit alla volta. Quindi metti molti di questi link in parallelo.


Un'ultima aggiunta a questo che è accennato nelle altre risposte ma che non è esplicitamente spiegato da nessuna parte è la differenza tra bit rate e baud rate. La velocità in bit è la velocità di trasmissione dei dati, la velocità di trasmissione è la velocità di trasmissione dei simboli. Su molti sistemi i simboli trasmessi ai bit binari e quindi i due numeri sono effettivamente gli stessi, motivo per cui può esserci molta confusione tra i due.

Tuttavia su alcuni sistemi viene utilizzato un sistema di codifica multi-bit. Se invece di inviare 0 V o 3 V lungo il filo per ogni periodo di clock, invii 0 V, 1 V, 2 V o 3 V per ciascun orologio, la frequenza dei simboli è la stessa, 1 simbolo per orologio. Ma ogni simbolo ha 4 possibili stati e quindi può contenere 2 bit di dati. Ciò significa che la velocità in bit è raddoppiata senza aumentare la frequenza di clock.

Nessun sistema del mondo reale di cui sono a conoscenza utilizza un simbolo multi-bit in stile livello di tensione così semplice, la matematica dietro i sistemi del mondo reale può diventare molto cattiva, ma il principio di base rimane lo stesso; se hai più di due possibili stati, puoi ottenere più bit per clock. Ethernet e ADSL sono i due sistemi elettrici più comuni che utilizzano questo tipo di codifica come qualsiasi altro sistema radio moderno. Come ha detto @ alex.forencich nella sua eccellente risposta il sistema che hai chiesto sul formato del segnale utilizzato 32-QAM (modulazione di ampiezza in quadratura), 32 diversi possibili simboli che significano 5 bit per simbolo trasmessi.


1
Grazie, @Andrew, in effetti dopo alcuni ho pensato che il mio problema non riguardasse l'elaborazione seriale e parallela. Ed è stato bello leggere come esattamente DMA abbia svolto un ruolo qui. Grazie mille!
Stevie,

1
"Su molti sistemi i simboli trasmessi ai bit binari e quindi i due numeri sono effettivamente gli stessi" Penso che questo abbia bisogno di una sorta di citazione. Mi sembra più comune per qualsiasi velocità di dati non banale che ogni simbolo codifichi diversi bit, e quindi la velocità di trasmissione è molto più bassa della velocità di bit. Mentre in questi giorni abbiamo una buona idea di come gestire i segnali multi-GHz, è ancora più semplice gestire i segnali nella gamma di centinaia di MHz, il che implica che se riesci ad accontentarti di un symbol rate più basso per un dato bit tasso, ciò semplifica gran parte dei dispositivi coinvolti.
un CVn

Concordo sul fatto che i simboli multi-bit sono più comuni per le velocità dei dati non banali. Tuttavia, quando le persone apprendono per la prima volta sulla segnalazione digitale, tendono ad apprendere prima cose più vecchie e a bassa velocità, e generalmente sono tutte a 1 bit per simbolo. Quindi suppongo che qualcosa come "sulla maggior parte dei sistemi che una persona che poneva questo tipo di domande avrebbe esaminato in precedenza in qualsiasi livello di dettaglio" sarebbe più preciso. E ad essere onesti ci sono molti più banali collegamenti alla velocità dei dati rispetto a quelli non banali.
Andrew,

2
@PaulUszak Eseguiranno più ADC in parallelo in modo che nessun ADC stia funzionando da nessuna parte vicino a quella velocità ma i loro clock di campionamento saranno scaglionati per fornire una frequenza di campionamento effettiva. Dopo di che nulla deve essere eseguito molto velocemente, questo è un po 'diverso dalla situazione del collegamento dati perché un ambito ha solo una piccola memoria di esempio. Quando la memoria è piena, il campionamento si interrompe e attende che il processore abbia avuto la possibilità di copiare i dati nella memoria principale, tale processo può essere molto più lento.
Andrew,

2
L'oscilloscopio Lecroy da 100 GHz BW utilizza più tecniche (diplexer + downconversion, quindi campionamento a intervalli di tempo) per dividere il segnale su un numero molto elevato di ADC più lenti, che quindi alimentano ASIC personalizzati ad alta velocità che scaricano i dati in grandi banchi di DRAM. La forma d'onda originale viene quindi ricostruita con DSP su una CPU generica. È possibile ricostruire solo piccoli segmenti, fino alla dimensione della memoria di campionamento. Penso che l'ambito Lecroy a 100 GHz (e probabilmente la maggior parte degli altri ambiti ad alta velocità) utilizzi PCIe per collegare il computer di controllo agli ADC e campionare la RAM.
alex.forencich,

60

Sembra che ti riferisca specificamente a http://www.nature.com/nphoton/journal/v8/n11/full/nphoton.2014.243.html . Può essere letto qui: https://www.researchgate.net/publication/269099858_Ultra-high-density_spatial_division_multiplexing_with_a_few-mode_multicore_fibre .

In questo caso, è leggermente più complicato di "un segnale ottico". Il collegamento in questione utilizza molteplici forme di parallelismo per raggiungere quella cifra di 255 Tbps:

  • Il multiplexing a divisione di lunghezza d'onda densa viene utilizzato per stipare 50 diverse lunghezze d'onda nella fibra a intervalli di 50 GHz (~ 0,8 nm nella banda C di 1550 nm), ciascuno con 1 / 50esimo dei dati.

  • La fibra utilizzata è una fibra a 7 core, poche modalità su misura, con 3 modalità per nucleo, ciascuna con 2 polarizzazioni, per 7 * 3 * 2 = 42 canali indipendenti (più o meno). Sembra che il punto di forza della loro fibra sia che l'isolamento tra i nuclei sia abbastanza buono, quindi il ricevitore deve solo equalizzare la diafonia tra le modalità e le polarizzazioni di ciascun nucleo separatamente (7 parallele 6x6 invece di 42x42).

Quindi, hanno usato un formato di segnale 32.3 QAM da 24,3 Gbaud (5 bit per simbolo, 24,3 * 5 = 121,5 Gbps) per tutti i canali 42 * 50, per una larghezza di banda complessiva di 0,1215 * 42 * 50 = 255,15 Tbps.

Ora, questi ragazzi in realtà hanno tradito un po 'qui: prendono 50 laser, li multiplexano insieme, lo modulano con un singolo modulatore IQ, quindi decorrelano le polarizzazioni e i canali adiacenti con ritardi fissi da emulare usando trasmettitori indipendenti. Quindi è davvero solo un segnale a 121,5 Gbps, ripetuto 2100 volte in parallelo. E il segnale trasmesso è probabilmente solo una sequenza binaria pseudocasuale (PRBS) generata al volo e non letta dalla memoria. Oppure potrebbe essere letto dalla SRAM veloce o da una matrice di DRAM in un generatore di forme d'onda arbitrarie ad alte prestazioni.

Per quanto riguarda la ricezione, è necessario l'elaborazione del segnale digitale per recuperare i dati originali compensando il crosstalk tra le modalità e le polarizzazioni in ciascun core e applicando la correzione degli errori. Il documento menziona una cifra di 200 Tbps netti, che sarebbe la velocità dei dati prima della codifica per la trasmissione (simile a come Ethernet gigabit 1000BASE-X è 1 Gbps prima della codifica e 1,25 Gbps dopo, oppure PCIe è 2/4 / 7,877 Gbps prima codifica e 2,5 / 5/8 Gbps dopo) ma non è chiaro quale codifica e inoltra lo schema di correzione degli errori che stanno assumendo.

Sembra anche che non abbiano costruito un ricevitore reale, ma stanno invece utilizzando due oscilloscopi ad alta velocità con rilevatori coerenti per acquisire dati grezzi e quindi eseguire l'elaborazione del segnale e l'equalizzazione offline. Hanno anche dovuto eseguire un'acquisizione intercalata nel tempo, perché dovevano eseguire il rilevamento coerente su tutte e 3 le modalità da ciascun nucleo di fibra contemporaneamente, ma avevano solo 2 oscilloscopi veloci disponibili. E anche quella configurazione consente loro di ricevere solo 1 lunghezza d'onda su 1 core di fibra alla volta - 729 Gbps, e solo in brevi raffiche.

Ma tutto questo va bene, perché la carta riguarda la fibra e non il collegamento reale.

TL; DR: la cifra di 255 Tbps è un po 'fuorviante: non hanno costruito un ricetrasmettitore in grado di farlo, ma hanno valutato la fibra multicore che hanno realizzato con 2100 copie di un segnale 121,5 Gpbs e un singolo ricevitore.


15

Ignorando i dettagli dello specifico trasmissione in questione (di cui @ alex.forencich ha già discusso in modo molto dettagliato), sembra che sia probabilmente utile considerare il caso più generale.

Sebbene questa particolare trasmissione abbia raggiunto 255 Tbps attraverso la fibra, i collegamenti in fibra estremamente veloci sono già in uso regolare. Non sono sicuro di quante implementazioni ci siano (probabilmente non molte) ma ci sono specifiche commerciali per OC-1920 / STM-640 e OC-3840 / STM-1280, con velocità di trasmissione rispettivamente di 100 e 200 Gbps . Questo è circa tre ordini di grandezza più lento di quanto dimostrato da questo test, ma è ancora abbastanza veloce dalla maggior parte delle misure ordinarie.

Quindi, come si fa? Vengono utilizzate molte delle stesse tecniche. In particolare, praticamente tutto ciò che fa una trasmissione in fibra "veloce" utilizza il multiplexing a divisione d'onda densa (DWDM). Ciò significa, in sostanza, che si inizia con un numero (abbastanza) grande di laser, ciascuno dei quali trasmette una diversa lunghezza d'onda della luce. Moduli i bit su quelli e poi li trasmetti tutti insieme attraverso la stessa fibra - ma da un punto di vista elettrico, stai alimentando un numero di flussi di bit completamente separati nei modulatori, quindi mescoli le uscite otticamente, quindi tutti quei diversi colori della luce attraversano la stessa fibra allo stesso tempo.

All'estremità ricevente, i filtri ottici vengono utilizzati per separare nuovamente i colori, quindi un fototransistor viene utilizzato per leggere un singolo flusso di bit.

inserisci qui la descrizione dell'immagine

Anche se ho mostrato solo 7 ingressi / uscite, i sistemi reali usano decine di lunghezze d'onda.

Quanto a ciò che serve per le estremità di trasmissione e ricezione: beh, c'è una ragione per cui i router back-bone sono costosi. Anche se una singola memoria deve solo alimentare una frazione della larghezza di banda complessiva, in genere è comunque necessaria una RAM abbastanza veloce - un po 'delle parti più veloci dei router usano SRAM piuttosto di fascia alta, quindi a quel punto i dati provengono da cancelli, non condensatori.

Probabilmente vale la pena notare che anche a basse velocità (e indipendentemente dall'implementazione fisica come DWDM) è tradizionale isolare le parti della velocità più alta del circuito in poche, piccole parti. Ad esempio, XGMII specifica la comunicazione tra 10 gigabit / secondo Ethernet MAC e PHY. Sebbene la trasmissione sul supporto fisico sia un bitstream (in ciascuna direzione) che trasporta 10 gigabit al secondo, XGMII specifica un bus largo a 32 bit tra MAC e PHY, quindi la frequenza di clock su quel bus è di circa 10 GHz / 32 = 312,5 MHz (beh, tecnicamente l'orologio stesso è la metà - usa la segnalazione DDR, quindi ci sono dati sia sul fronte ascendente che discendente dell'orologio). Solo all'interno del PHY qualcuno ha a che fare con una frequenza di clock multi-GHz. Naturalmente, XGMII non è l'unica interfaccia MAC / PHY,


Grazie per l'elaborazione, questa è una parte importante dell'intero puzzle.
Stevie,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.