Я никогда не понимал, как достигаются новые рекордные скорости передачи данных с точки зрения преобразования из / в электрические и оптические сигналы.
Предположим, у нас есть 255 Тбит данных, и мы хотим передать их за одну секунду. (Это реальное достижение.) Вы получили 255 Тбит, скажем, в 255 триллионах конденсаторов (это ОЗУ). Теперь ожидается, что мы сможем читать каждый из них последовательно, запрашивая каждый бит, чтобы через секунду мы прочитали все 255 триллионов из них. Это явно не организовано процессором с частотой 3 ГГц.
Как насчет принимающей стороны? Импульсы поступают с частотой 255 ТГц, но частота обновления электроники, пытающейся считывать входящий сигнал, далеко не равна 255 ТГц. Единственное, что я могу себе представить, - это тысячи процессоров с мультиплексированием (задержкой) с синхронизацией по времени для тактовых сигналов менее чем на 0,000000000001 сек. Хотя то, как добиться такого мультиплексирования, также возвращает меня к моей проблеме с этой тысячекратной разницей в частотах.
Ответы:
Вместо того, чтобы беспокоиться об исследовательской работе, которая доводит дело до предела, сначала начните с понимания того, что находится перед вами.
Как жесткий диск SATA 3 в домашнем компьютере обеспечивает последовательную связь 6 Гбит / с? Основной процессор не 6 ГГц, а тот, который находится на жестком диске, конечно, не настолько, по вашей логике, это не должно быть возможным.
Ответ заключается в том, что процессоры не работают, выкладывая один бит за раз, есть специальное оборудование, называемое SERDES (сериализатор / десериализатор), которое преобразует параллельный поток данных с более низкой скоростью в высокоскоростной последовательный поток данных, а затем снова возвращается в другой конец. Если это работает в блоках по 32 бита, то частота ниже 200 МГц. И эти данные затем обрабатываются системой DMA, которая автоматически перемещает данные между SERDES и памятью без участия процессора. Все, что нужно сделать процессору, - это указать контроллеру DMA, где находятся данные, сколько отправлять и куда отправлять любой ответ. После этого процессор может отключиться и сделать что-то еще, контроллер DMA прервет работу после завершения работы.
И если процессор тратит большую часть своего простоя, он может использовать это время для запуска второго DMA & SERDES, работающего на второй передаче. Фактически, один ЦП может выполнять несколько таких параллельных передач, обеспечивая достаточно высокую скорость передачи данных.
Хорошо, это скорее электрический, чем оптический сигнал, и он в 50 000 раз медленнее, чем та система, о которой вы спрашивали, но применяются те же основные понятия. Процессор всегда обрабатывает данные большими порциями, выделенное оборудование обрабатывает их небольшими порциями, и только некоторые очень специализированные устройства работают с ними по 1 биту за раз. Затем вы помещаете множество этих ссылок параллельно.
Одним из поздних дополнений к этому, на которое намекают другие ответы, но которые нигде не объяснены, является разница между скоростью передачи и скоростью передачи. Скорость передачи - это скорость, с которой передаются данные, скорость передачи - это скорость, с которой передаются символы. Во многих системах символы, передаваемые в двоичных битах, и, таким образом, эти два числа фактически одинаковы, поэтому между ними может быть много путаницы.
Однако в некоторых системах используется многоразрядная система кодирования. Если вместо передачи 0 В или 3 В по проводам каждый тактовый период вы посылаете 0 В, 1 В, 2 В или 3 В для каждого тактового генератора, тогда ваша скорость передачи символов будет одинаковой, 1 символ на тактовые импульсы. Но каждый символ имеет 4 возможных состояния и может содержать 2 бита данных. Это означает, что ваша битрейт удвоился без увеличения тактовой частоты.
Ни в одной реальной системе, о которой я знаю, не использовался бы такой простой многоразрядный символ стиля уровня напряжения, математика, стоящая за системами реального мира, может стать очень неприятной, но основной принцип остается тем же; если у вас есть более двух возможных состояний, вы можете получить больше битов за такт. Ethernet и ADSL являются двумя наиболее распространенными электрическими системами, которые используют этот тип кодирования, как и практически любая современная радиосистема. Как сказал @ alex.forencich в своем превосходном ответе, система, которую вы спрашивали об используемом формате сигнала 32-QAM (квадратурная амплитудная модуляция), 32 различных возможных символа, означающих 5 бит на передаваемый символ.
источник
Похоже, вы обращаетесь именно к http://www.nature.com/nphoton/journal/v8/n11/full/nphoton.2014.243.html . Это можно прочитать здесь: https://www.researchgate.net/publication/269099858_Ultra-high-density_spatial_division_multiplexing_with_a_few-mode_multicore_fibre .
В этом случае это немного сложнее, чем «оптический сигнал». Рассматриваемая ссылка использует несколько форм параллелизма для достижения этой цифры 255 Тбит / с:
Плотное мультиплексирование с разделением по длине волны используется для встраивания 50 различных длин волн в волокно с интервалами 50 ГГц (~ 0,8 нм в полосе C 1550 нм), каждый из которых несет 1/50 данных.
Используемое волокно представляет собой специально изготовленное 7-ядерное волокно с несколькими модами, по 3 моды на сердечник, каждая с 2 поляризациями, для 7 * 3 * 2 = 42 независимых (более или менее) каналов. Похоже, что смысл их волокна в том, что изоляция между ядрами довольно хорошая, поэтому приемник должен только выравнивать перекрестные помехи между модами и поляризацией каждого ядра в отдельности (7 параллелей 6x6 вместо 42x42).
Затем они использовали формат сигнала 32-QAM 24,3 ГБод (5 бит на символ, 24,3 * 5 = 121,5 Гбит / с) для всех каналов 42 * 50, для общей полосы пропускания 0,1215 * 42 * 50 = 255,15 Тбит / с.
Теперь эти парни на самом деле немного обманывают: они берут 50 лазеров, мультиплексируют их вместе, модулируют это с помощью одного модулятора IQ, затем декоррелируют поляризации и соседние каналы с фиксированными задержками для эмуляции, используя независимые передатчики. Так что на самом деле это всего один сигнал со скоростью 121,5 Гбит / с, повторяемый 2100 раз параллельно. И передаваемый сигнал, вероятно, является просто псевдослучайной двоичной последовательностью (PRBS), которая генерируется на лету и не считывается из памяти. Или это может быть считано из быстрой SRAM или массива DRAM в высокопроизводительном генераторе сигналов произвольной формы.
На приемной стороне требуется цифровая обработка сигналов для восстановления исходных данных путем компенсации перекрестных помех между модами и поляризациями в каждом ядре и применения коррекции ошибок. В документе упоминается цифра 200 Тбит / с, которая будет скоростью передачи данных перед кодированием для передачи (аналогично тому, как гигабитный Ethernet 1000BASE-X составляет 1 Гбит / с до кодирования и 1,25 Гбит / с после, или PCIe составляет 2/4 / 7,877 Гбит / с до кодирование и 2,5 / 5/8 Гбит / с после), но неясно, какую схему кодирования и прямого исправления ошибок они предполагают.
Также похоже, что они не построили реальный приемник, но вместо этого они используют два высокоскоростных осциллографа с когерентными детекторами для захвата необработанных данных, а затем выполняют обработку сигнала и выравнивание в автономном режиме. Они также должны были сделать необычный захват с чередованием времени, потому что они должны были запустить когерентное обнаружение на всех 3 модах от каждого оптоволоконного сердечника одновременно, но у них было только 2 быстрых осциллографа. И даже эта установка позволяет им получать только 1 длину волны на одном оптоволоконном кабеле за раз - 729 Гбит / с и только короткими пакетами.
Но все это хорошо, потому что статья о волокне, а не фактическая связь.
TL; DR: цифра 255 Tbps немного вводит в заблуждение - они не создали трансивер, способный на это, но они оценили многоядерное волокно, которое они сделали, с 2100 копиями сигнала 121,5 Гбит / с и одним приемником.
источник
Игнорируя детали конкретной передачи, о которой идет речь (о которой @ alex.forencich уже подробно обсуждал), кажется, что, вероятно, полезно рассмотреть более общий случай.
Хотя эта конкретная передача достигает 255 Тбит / с через оптоволокно, чрезвычайно быстрые оптоволоконные линии уже используются в обычном режиме. Я не уверен точно, сколько развертываний там (вероятно, не очень много), но есть коммерческие спецификации для OC-1920 / STM-640 и OC-3840 / STM-1280, со скоростями передачи 100 и 200 Гбит / с соответственно , Это примерно на три порядка медленнее, чем этот тест, но по-прежнему довольно быстро по большинству обычных мер.
Итак, как это сделать? Многие из тех же методов используются. В частности, почти все, что делает «быструю» оптоволоконную передачу, использует мультиплексирование с плотным волновым разделением (DWDM). По сути, это означает, что вы начинаете с (довольно) большого количества лазеров, каждый из которых излучает свет разной длины. Вы модулируете биты на них, а затем передаете их все вместе по одному и тому же волокну - но с электрической точки зрения вы подаете в модулятор несколько совершенно отдельных потоков битов, затем оптически микшируете выходные сигналы, поэтому все эти разные цвета света проходят через одно и то же волокно одновременно.
На приемном конце оптические фильтры снова используются для разделения цветов, а затем фототранзистор используется для считывания отдельного потока битов.
Хотя я показал только 7 входов / выходов, в реальных системах используются десятки длин волн.
Что касается того, что нужно для передачи и приема: ну, есть причина, почему магистральные маршрутизаторы дороги. Несмотря на то, что одной памяти требуется только небольшая часть общей полосы пропускания, обычно требуется достаточно быстрая оперативная память - довольно быстрые части маршрутизаторов используют SRAM довольно высокого уровня, поэтому в этот момент данные поступают из ворота, а не конденсаторы.
Вероятно, стоит отметить, что даже на более низких скоростях (и независимо от физической реализации, такой как DWDM) традиционно принято выделять части схемы с самой высокой скоростью на несколько небольших частей. Например, XGMII определяет связь между 10 гигабит / с Ethernet MAC и PHY. Хотя передача по физической среде является битовым потоком (в каждом направлении), передающим 10 гигабит в секунду, XGMII определяет 32-битную шину шириной между MAC и PHY, поэтому тактовая частота на этой шине составляет приблизительно 10 ГГц / 32 = 312,5 МГц (ну, технически тактовые частоты составляют половину от этого - он использует сигнализацию DDR, поэтому есть данные как о нарастающем, так и о падающем фронте тактового сигнала). Только внутри PHY кому-то приходится иметь дело с тактовой частотой в несколько ГГц. Конечно, XGMII - не единственный интерфейс MAC / PHY,
источник