Como são processados ​​255 Tbit / s na comunicação por fibra óptica?

25

Eu nunca entendi como as novas velocidades de transferência de dados recorde são alcançadas em termos de conversão de / para sinais elétricos e ópticos.

Suponha que temos 255 Tbits de dados e queremos transferi-los em um segundo. (Esta é uma conquista do mundo real.) Você tem 255 Tbits armazenados, digamos, 255 trilhões de capacitores (que é RAM). Agora, espera-se que possamos ler cada um sucessivamente, perguntando cada bit, para que, um segundo depois, tenhamos lido todos os 255 trilhões deles. Obviamente, isso não é orquestrado por um processador de 3 GHz.

E o fim do recebimento? Os pulsos estão chegando a 255 THz, mas a taxa de atualização dos eletrônicos que tentam ler um sinal de entrada não é de 255 THz. A única coisa que posso imaginar são milhares de processadores com sua divisão de tempo de sinais de relógio multiplexada (atrasada) por menos de 0,000000000001 segundos. Embora como atingir essa multiplexação também me leve de volta ao meu problema com essa diferença de mil vezes nas frequências.

Stevie
fonte
4
"Isso obviamente não é orquestrado por um processador de 3GHz" por que não? Ele só precisa dizer a todos os componentes para enviar dados, DMA e tecnologias similares existem desde basicamente para sempre. Obviamente, também não são atingidos 255Tbit no hardware do consumidor.
PlasmaHH
22
Você supõe que esse sistema funcione de certa maneira, por exemplo, com pulsos. Duvido que funcione assim, pois existem maneiras mais inteligentes e eficientes de transferir dados. Usar pulsos para mim parece uma maneira muito ineficiente de usar a largura de banda da fibra. Eu esperaria que alguma forma de modulação OFDMA fosse usada. Em seguida, faça muitos canais em modulação paralela em diferentes frequências portadoras e usando diferentes comprimentos de onda da luz. Antes de assumir que algo funciona de uma certa maneira, pesquise-o porque suposições erradas levam a conclusões erradas!
Bimpelrekkie 17/07/19
2
@Bimpelrekkie: um dos fatos mais interessantes dessa tecnologia (que tem 3 anos de idade) é que eles usam uma fibra multimodo de 7 núcleos para essas coisas.
PlasmaHH
12
Novamente, você está apenas fazendo suposições e, em seguida, questionando você mesmo!?!? Por que não pesquisar o tópico para que você saiba e entenda como é feito, em vez de apenas assumir algo (o que provavelmente está errado de qualquer maneira). É melhor dizer: eu não sei disso , apenas assumir que algo funciona de uma certa maneira e expandir essa suposição (errada).
Bimpelrekkie 17/07/19
3
Acesse o link para onde você leu sobre essa conquista do mundo real. Além disso, por que você acha que os dados foram enviados em série?
O Photon

Respostas:

43

Em vez de se preocupar com um trabalho de pesquisa que está levando as coisas ao limite, comece por entender as coisas que estão à sua frente.

Como um disco rígido SATA 3 em um computador doméstico coloca 6 Gbits / s em um link serial? O processador principal não é de 6 GHz e o do disco rígido certamente não é assim, pela sua lógica, não deveria ser possível.

A resposta é que os processadores não estão sentados lá um pouco de cada vez, existe um hardware dedicado chamado SERDES (serializador / desserializador) que converte um fluxo de dados paralelo de velocidade mais baixa em serial de alta velocidade e depois volta novamente para O outro fim. Se isso funcionar em blocos de 32 bits, a taxa estará abaixo de 200 MHz. E esses dados são tratados por um sistema DMA que move automaticamente os dados entre o SERDES e a memória sem que o processador se envolva. Tudo o que o processador precisa fazer é instruir o controlador DMA onde estão os dados, quanto enviar e onde colocar qualquer resposta. Depois que o processador puder desligar e fazer outra coisa, o controlador DMA interromperá quando terminar o trabalho.

E se a CPU estiver gastando a maior parte do tempo ociosa, poderá usar esse tempo para iniciar um segundo DMA & SERDES em execução em uma segunda transferência. De fato, uma CPU pode executar algumas dessas transferências em paralelo, proporcionando uma taxa de dados bastante saudável.

OK, isso é elétrico e não óptico e é 50.000 vezes mais lento que o sistema que você perguntou, mas os mesmos conceitos básicos se aplicam. O processador só lida com os dados em grandes blocos, o hardware dedicado lida com ele em partes menores e apenas alguns hardwares muito especializados lida com ele 1 bit de cada vez. Você coloca muitos desses links em paralelo.


Uma adição tardia a isso, sugerida nas outras respostas, mas que não é explicada explicitamente em nenhum lugar, é a diferença entre taxa de bits e taxa de transmissão. Taxa de bits é a taxa na qual os dados são transmitidos, taxa de transmissão é a taxa na qual os símbolos são transmitidos. Em muitos sistemas, os símbolos transmitidos em bits binários e, portanto, os dois números são efetivamente os mesmos, e é por isso que pode haver muita confusão entre os dois.

No entanto, em alguns sistemas, é usado um sistema de codificação multi-bit. Se, em vez de enviar 0 V ou 3 V pelo fio a cada período do relógio, você enviar 0 V, 1 V, 2 V ou 3 V para cada relógio, sua taxa de símbolos será a mesma, 1 símbolo por relógio. Mas cada símbolo tem 4 estados possíveis e, portanto, pode conter 2 bits de dados. Isso significa que sua taxa de bits dobrou sem aumentar a taxa de clock.

Nenhum sistema do mundo real que eu conheça usar um símbolo multibit de estilo de nível de tensão tão simples, a matemática por trás dos sistemas do mundo real pode ficar muito desagradável, mas o princípio básico permanece o mesmo; se você tiver mais de dois estados possíveis, poderá obter mais bits por relógio. Ethernet e ADSL são os dois sistemas elétricos mais comuns que usam esse tipo de codificação, assim como qualquer sistema de rádio moderno. Como @ alex.forencich disse em sua excelente resposta ao sistema que você perguntou sobre o formato de sinal usado 32-QAM (modulação em amplitude em quadratura), 32 símbolos possíveis diferentes, significando 5 bits por símbolo transmitido.

Andrew
fonte
11
Obrigado, Andrew, de fato, depois de pensar que meu problema não está considerando o processamento serial e paralelo. E foi bom ler como exatamente o DMA teve um papel aqui. Ótimo, obrigado!
Stevie
11
"Em muitos sistemas, os símbolos transmitidos em bits binários e, portanto, os dois números são efetivamente os mesmos" , acho que isso precisa de algum tipo de citação. Parece-me mais comum para quaisquer taxas de dados não triviais que cada símbolo codifique vários bits e, portanto, a taxa de transmissão é muito menor do que a taxa de bits. Embora hoje em dia tenhamos uma boa idéia de como lidar com sinais multi-GHz, ainda é mais fácil lidar com sinais na faixa de centenas de MHz, o que implica que, se você puder se contentar com uma taxa de símbolos mais baixa por um determinado bit taxa, que simplifica muitos dos dispositivos envolvidos.
um CVn
Eu concordo que símbolos de vários bits são mais comuns para taxas de dados não triviais. No entanto, quando as pessoas aprendem pela primeira vez sobre sinalização digital, elas tendem a aprender coisas mais antigas e com menor velocidade e geralmente são 1 bit por símbolo. Portanto, suponho que algo como "na maioria dos sistemas, que uma pessoa que fizesse esse tipo de pergunta tivesse analisado anteriormente em qualquer nível de detalhe" fosse mais preciso. E para ser sincero, existem muito mais links triviais de taxa de dados do que os não triviais.
18717 Andrew
2
@PaulUszak Eles estarão executando vários ADCs em paralelo, para que ninguém ADC esteja executando em qualquer lugar próximo dessa velocidade, mas seus relógios de amostra serão escalonados para fornecer uma taxa de amostragem efetiva. Depois que nada precisa ser executado muito rápido, isso é um pouco diferente da situação do link de dados, porque um escopo possui apenas uma pequena memória de amostra. Uma vez que a memória está cheia, para de amostrar e aguarda até que o processador tenha a chance de copiar os dados na memória principal, esse processo pode ser muito mais lento.
18717 Andrew
2
Esse escopo de 100 GHz BW Lecroy usa várias técnicas (diplexer + conversão descendente e amostragem intercalada no tempo) para dividir o sinal em um número muito grande de ADCs mais lentos, que alimentam ASICs personalizados de alta velocidade que despejam os dados em grandes bancos de DRAM. A forma de onda original é então reconstruída com DSP em uma CPU de uso geral. Somente pequenos segmentos podem ser reconstruídos, até o tamanho da memória de amostra. Acho que o escopo Lecroy de 100 GHz (e provavelmente a maioria dos outros escopos de alta velocidade) usa o PCIe para conectar o computador de controle aos ADCs e à amostra de RAM.
18717 alex_forencich
60

Parece que você está se referindo especificamente a http://www.nature.com/nphoton/journal/v8/n11/full/nphoton.2014.243.html . Pode ser lido aqui: https://www.researchgate.net/publication/269099858_Ultra-high-density_spatial_division_multiplexing_with_a_few-mode_multicore_fibre .

Nesse caso, é um pouco mais complicado que "um sinal óptico". O link em questão usa várias formas de paralelismo para atingir essa figura de 255 Tbps:

  • A multiplexação por divisão de comprimento de onda densa é usada para enfiar 50 comprimentos de onda diferentes na fibra em intervalos de 50 GHz (~ 0,8 nm na banda C de 1550 nm), cada um carregando 1/50 dos dados.

  • A fibra usada é uma fibra de 7 modos e poucos modos sob medida, com 3 modos por núcleo, cada um com 2 polarizações, para 7 * 3 * 2 = 42 canais independentes (mais ou menos). Parece que o ponto de venda de sua fibra é que o isolamento entre os núcleos é muito bom; portanto, o receptor só precisa equalizar a diafonia entre os modos e as polarizações de cada núcleo separadamente (7 paralelos 6x6 em vez de 42x42).

Em seguida, eles usaram um formato de sinal de 24,3 Gbaud 32-QAM (5 bits por símbolo, 24,3 * 5 = 121,5 Gbps) para todos os 42 * 50 canais, para uma largura de banda geral de 0,1215 * 42 * 50 = 255,15 Tbps.

Agora, esses caras trapacearam um pouco aqui: eles pegam 50 lasers, multiplexam-nos juntos, modulam isso com um único modulador de QI, depois correlacionam as polarizações e canais adjacentes com atrasos fixos para emular usando transmissores independentes. Portanto, é realmente apenas um sinal a 121,5 Gbps, repetido 2100 vezes em paralelo. E o sinal transmitido é provavelmente apenas uma sequência binária pseudo-aleatória (PRBS) gerada em tempo real e não lida fora da memória. Ou pode ser lido em SRAM rápido ou em uma matriz de DRAM em um gerador de forma de onda arbitrária de alto desempenho.

No lado da recepção, é necessário o processamento do sinal digital para recuperar os dados originais, compensando a diafonia entre os modos e polarizações em cada núcleo e aplicando a correção de erros. O documento menciona uma figura de 200 Tbps líquidos, que seria a taxa de dados antes da codificação para transmissão (semelhante a como a Ethernet 1000BASE-X gigabit é de 1 Gbps antes da codificação e 1,25 Gbps depois, ou o PCIe é 2/4 / 7.877 Gbps antes codificação e 2,5 / 5/8 Gbps depois), mas não está claro qual esquema de correção de erro de codificação e encaminhamento eles estão assumindo.

Também parece que eles não construíram um receptor real, mas estão usando dois osciloscópios de alta velocidade com detectores coerentes para capturar dados brutos e, em seguida, processando e equalizando o sinal offline. Eles também tiveram que fazer uma captura intercalada no tempo de fantasia porque precisavam executar uma detecção coerente nos 3 modos de cada núcleo de fibra ao mesmo tempo, mas tinham apenas dois osciloscópios rápidos disponíveis. E mesmo essa configuração permite que eles recebam 1 comprimento de onda em um núcleo de fibra por vez - 729 Gbps, e apenas em rajadas curtas.

Mas tudo isso é bom, porque o papel é sobre a fibra e não o link real.

TL; DR: a figura de 255 Tbps é um pouco enganadora - eles não construíram um transceptor capaz disso, mas avaliaram a fibra multicore que fizeram com 2100 cópias de um sinal de 121,5 Gpbs e um único receptor.

alex.forencich
fonte
15

Ignorando os detalhes da transmissão específica em questão (que o @ alex.forencich já discutiu em detalhes consideráveis), parece que provavelmente é útil considerar o caso mais geral.

Embora essa transmissão específica atinja 255 Tbps através da fibra, links de fibra extremamente rápidos já estão em uso regular. Não sei exatamente quantas implantações existem (provavelmente não muitas), mas existem especificações comerciais para OC-1920 / STM-640 e OC-3840 / STM-1280, com taxas de transmissão de 100 e 200 Gbps, respectivamente . São aproximadamente três ordens de magnitude mais lentas do que este teste demonstrou, mas ainda é bastante rápido pela maioria das medidas comuns.

Então, como isso é feito? Muitas das mesmas técnicas são usadas. Em particular, praticamente tudo o que faz transmissão de fibra "rápida" usa a multiplexagem por divisão de ondas densa (DWDM). Isso significa, em essência, que você começa com um número (razoavelmente) grande de lasers, cada um transmitindo um comprimento de onda de luz diferente. Você modula bits neles e depois os transmite todos juntos pela mesma fibra - mas, do ponto de vista elétrico, você está alimentando uma série de fluxos de bits completamente separados nos moduladores, depois misturando as saídas ópticas, para que todos essas cores diferentes de luz passam pela mesma fibra ao mesmo tempo.

Na extremidade receptora, filtros ópticos são usados ​​para separar as cores novamente e, em seguida, um fototransistor é usado para ler um fluxo de bits individual.

insira a descrição da imagem aqui

Embora eu tenha mostrado apenas 7 entradas / saídas, os sistemas reais usam dezenas de comprimentos de onda.

Quanto ao que é preciso nas extremidades de transmissão e recepção: bem, há uma razão pela qual os roteadores back-bone são caros. Mesmo que uma única memória precise apenas alimentar uma fração da largura de banda geral, você ainda precisa de uma RAM bastante rápida - um pouco das partes mais rápidas dos roteadores usam SRAM de ponta, portanto, nesse ponto, os dados são provenientes de portões, não capacitores.

Provavelmente vale a pena notar que, mesmo em velocidades mais baixas (e independentemente da implementação física, como o DWDM), é tradicional isolar as partes de maior velocidade do circuito em algumas partes pequenas. Por exemplo, XGMII especifica a comunicação entre 10 gigabit / segundo Ethernet MAC e PHY. Embora a transmissão pelo meio físico seja um fluxo de bits (em cada direção) com 10 gigabits por segundo, o XGMII especifica um barramento de 32 bits entre o MAC e o PHY, portanto a taxa de clock nesse barramento é de aproximadamente 10 GHz / 32 = 312,5 MHz (bem, tecnicamente, o próprio relógio é metade disso - ele usa sinalização DDR, para que haja dados nas bordas crescente e decrescente do relógio). Somente dentro do PHY alguém precisa lidar com uma freqüência de clock de vários GHz. Obviamente, XGMII não é a única interface MAC / PHY,

Jerry Coffin
fonte
Obrigado por elaborar, esta é uma parte importante de todo o quebra-cabeça.
Stevie