Инженеры MIT представили чип, способный работать с любым типом данных, передаваемых по сети. Под катом обсуждаем возможности и перспективы разработки, а также альтернативные решения для квантовых компьютеров.
О чем, собственно, речь
Коды коррекции ошибок при передаче данных используют с 1940-х годов. Каждый такой код разрабатывают в паре с уникальным алгоритмом декодирования и аппаратным обеспечением для его реализации. Но в начале сентября инженеры из Массачусетского технического института (MIT), Бостонского университета и Университета Мейнут в Ирландии предложили альтернативный подход.
Они представили кремниевый чип, способный исправить ошибки при передаче данных любого типа. В основу технологии положили универсальный алгоритм под названием GRAND — Guessing Random Additive Noise Decoding. Классические алгоритмы декодирования работают с кодовой книгой и хэшами, чтобы восстановить исходные данные. В GRAND применен иной механизм — система пытается угадать природу и структуру шума. Так, чип генерирует серию шумовых последовательностей и вычитает их из полученного сигнала. Алгоритм сверяет результат с кодовой книгой — процесс повторяют до тех пор, пока сообщение не будет восстановлено.
Что касается аппаратной части, то чип имеет трёхуровневую структуру. Уровни работают независимо и анализируют шумовые паттерны (от простых к сложным). Чип содержит две микросхемы статической памяти с произвольным доступом (SRAM). Одна отвечает за поиск кодовых слов, а другая — за загрузку кодовых книг.
Каковы перспективы
Новое устройство способно обработать избыточный код длиной до 128 бит с задержкой в одну микросекунду. Авторы говорят, что их решение найдет применение в сетях 5G, IoT-устройствах и системах дополненной и виртуальной реальности — там, где необходима обработка больших объемов данных. Однако все имеет свою цену — платформа потребляет достаточно много энергии, что в перспективе может ограничить её применимость. Хотя инженеры MIT планируют переработать структуру кремниевого чипа, чтобы повысить энергоэффективность (стр.19).
Можно предположить, что GRAND откроет новые возможности в сфере сетевого кодирования и увеличит пропускную способность каналов за счет комбинирования передаваемых пакетов. Авторы также отмечают, что их решение можно использовать для развития других алгоритмов декодирования — например, превратить циклические избыточные коды (CRC) в инструмент коррекции ошибок [обычно CRC используют только для нахождения контрольных сумм и проверки целостности данных].
Аналогичные разработки для кубитов
Механизмы коррекции ошибок разрабатывают и для квантовых компьютеров. Такие алгоритмы необходимы, поскольку базовые элементы квантовых вычислительных машин — кубиты — не идеальны сами по себе. Они крайне хрупкие, могут разрушаться и переходить в неправильное состояние.
Летом этого года новое решение для коррекции ошибок предложили в Google — его реализовали за счет избыточных кубитов, не участвующих в вычислениях. Инженеры соединили кубиты с четырьмя соседними и разместили их в форме решетки. Примерно пятая часть элементов — контрольные. С их помощью оценивают состояние связанных элементов и корректируют данные.
Подобные технологии играют важную роль в создании квантового интернета. Разработками в этой области уже занимаются специалисты из США, Швейцарии, Китая и России. Можно ожидать, что спектр проектов в этой области будет увеличиваться, а инновации вроде GRAND станут источником свежих идей.
Свежие материалы в нашем блоге на Хабре:
Компиляция без предупреждений — что случилось в Linux-сообществе
QUIC стал RFC, но как дела с перспективами — обсуждаем мнения
Больше о протоколах и алгоритмах — в корпоративном блоге VAS Experts: