Достижения в архитектуре параллельного оборудования для ускорения кодирования Ldpc
Введение в коды LDPC и ускоренный императив декодирования
Коды низкой плотности Parity-Check (LDPC) (FLT: 1) (первоначально введенные Робертом Галлагером в его основополагающей докторской диссертации 1963 года) представляют собой краеугольный камень современной теории информации. Отнесенные к академической безвестности в течение десятилетий из-за вычислительной сложности эпохи, они были независимо заново открыты в середине 1990-х годов Маккеем и Нилом, которые продемонстрировали свою почти ограниченную производительность Шеннона. Сегодня коды LDPC являются обязательной схемой коррекции ошибок по полосе высоких стандартов связи, включая 5G New Radio (NR) для каналов передачи данных и управления, Wi-Fi 6 (IEEE 802.11ax), цифровое видеовещание (DVB-S2X), DOCSIS 3.1 и новые оптические транспортные сети, нацеленные на 800 Гбит / с и за его пределами.
Фундаментальная проблема заключается в процессе декодирования. LDPC декодирование по своей сути итеративно, опираясь на алгоритмы передачи сообщений, такие как Распространение убеждений (BP) , которые требуют десятков операций на бит на итерацию. , поскольку шкала скорости связи к 1 Тбит/с и далее, традиционные последовательные цифровые процессоры сигналов схлопываются под вычислительной нагрузкой. Это узкое место привело к интенсивному инженерному фокусу на параллельных аппаратных архитектур , которые могут использовать присущую параллель алгоритмов декодирования LDPC. Результатом является увлекательный ландшафт специализированных аппаратных средств - от массивно параллельных графических процессоров (GPU) до пользовательских специализированных интегральных схем (ASIC) - каждый предлагает различные компромиссы в пропускной способности, задержке, энергоэффективности и гибкости. Эта статья обеспечивает всестороннее техническое изучение этих параллельных архитектур, алгоритмические достижения, которые позволяют им, и будущая траектория
Основные алгоритмические рамки для итеративного декодирования
Понимание аппаратных архитектур требует четкого понимания основных алгоритмов декодирования, поскольку сопоставление алгоритма с аппаратным ресурсом определяет эффективность окончательного проектирования.
Алгоритм Sum-Product (SPA) и лог-подобие
Алгоритм канонического декодирования — это алгоритм Sum-Product Algorithm, обычно реализуемый в логарифмическом домене (Log-SPA) для преобразования операций умножения в дополнения. Алгоритм работает на двухстороннем Tanner graph, состоящем из ] Переменных узлов (VN), представляющем закодированные биты, и Check Nodes (CNs), представляющем ограничения чётности. Сообщения, отформатированные как Log-Likelihood Ratios (LLRs), обмениваются итеративно по краям графа. VN собирает внутреннюю информацию канала и внешние сообщения из своих связанных CN, затем отправляет обновленные LLR обратно на граф. И наоборот, CN обрабатывает
Алгоритм Мин-Суммы и его аппаратно-оптимизированные варианты
Вычислительное ядро CN в Log-SPA включает в себя гиперболическую тангенсную функцию, которая является интенсивным и медленным в аппаратном обеспечении. Min-Sum Algorithm (MSA) обеспечивает надежное приближение, заменяя сложную суммировку «танх» простым поиском минимальной величины среди всех входящих сообщений. Это резко упрощает аппаратную реализацию, требуя только логики сравнения и вычисления знаков в CN. Однако, приближение мин-суммы переоценивает величину выходных сообщений, приводя к незначительному ухудшению в получении кода. Для исправления этого, две первичные оптимизации стали стандартными в параллельном аппаратном обеспечении: Нормализованная Min-Sum (NMS), которая умножает выход CN на масштабирующий фактор (менее 1) и Offset Min-Sum (OMS), которая вычит
Основные аппаратные платформы для параллельного декодирования
Выбор аппаратной платформы для декодера LDPC обусловлен конкретными системными требованиями: скоростью моделирования, бюджетом мощности, объемом производства и требуемой гибкостью.Появились три доминирующие платформы, каждая из которых использует параллелизм принципиально по-разному.
Графические процессоры (GPU)
GPU, такие как NVIDIA и AMD, обеспечивают доступную и очень параллельную платформу для декодирования LDPC, в основном используемую в программно-определяемой радиосвязи (SDR) и академических исследованиях. Архитектура GPU SIMT (Single Instruction, Multiple Threads) естественным образом отображает независимую обработку переменных и контрольных узлов. Типичная реализация будет назначать поток (или деформацию потоков) одному VN или CN, позволяя одновременно обрабатывать тысячи узлов в графике затопления.
Стратегии оптимизации: Эффективное декодирование графического процессора в значительной степени зависит от управления памятью. Внешние LLR, которые должны быть прочитаны и обновлены несколькими потоками, хранятся в глобальной памяти. Достижение высокой пропускной способности требует согласованных шаблонов доступа к памяти и стратегического использования быстрой совместно используемой памяти на чипе для снижения глобального трафика памяти. Варп-дивергенция — где потоки в пределах варпа принимают различные пути выполнения на основе структуры кода — является значительным ингибитором производительности, что делает реализацию нерегулярных кодов LDPC особенно сложной. Недавние библиотеки, такие как cuLDPC, демонстрируют, что при тщательном проектировании ядра, многопроцессорные установки могут достигать скорости пропускания, превышающей несколько Gbps, что делает их жизнеспособными для прототипирования в реальном времени стандартов следующего поколения, хотя энергопотребление обычно предотвращает их использование во встроенных или мобильных приложениях.
Полевые программируемые воротные массивы (FPGA)
FPGA занимают критическую промежуточную позицию между гибкостью графических процессоров и эффективностью ASIC. Их основным преимуществом является возможность реализации глубоко трубопроводных пространственных вычислительных архитектур , где выделенные арифметические единицы расположены так, чтобы соответствовать точному потоку данных алгоритма декодирования. Это позволяет создать высокоспецифический параллелизм, который непосредственно отражает структуру графа Таннера.
Архитектурная гибкость: FPGA исключительно хорошо подходят для обработки структурированных матриц проверки четности, найденных в современных стандартах, таких как Quasi-Cyclic LDPC (QC-LDPC) коды, используемые в 5G NR и Wi-Fi 6. коды, которые могут быть эффективно реализованы с использованием регистров сдвига и параллельных процессоров. Современные семейства FPGA (например, Xilinx RFSoC, Intel Agilex) интегрируют мощные блоки DSP, оптимизированные для арифметики с фиксированной точкой, которые идеально подходят для квантованного передачи сообщений (например, 6-битные или 8-битные LLR), используемые в практических декодерах. Инструменты High-Level Synthesis (HLS), дополнительно ускорили разработку FPGA, позволяя дизайнерам описывать алгоритм декод
Специальные интегральные схемы (ASIC)
Для коммерческого развертывания большого объема, такого как мобильные телефоны, базовые станции и коммутаторы центров обработки данных, ASIC являются бесспорным золотым стандартом. Они предлагают самую высокую производительность, измеренную в Гбит/с на Ватт, путем устранения всех накладных расходов, связанных с извлечением инструкций и общей маршрутизацией. ASIC декодеры построены вдоль спектра параллелизма, от полностью параллельного до частично параллельного.
Полностью параллельная по сравнению с частично параллельной:] Полностью параллельная архитектура инстанцирует выделенный процессор для каждого VN и CN в графике Таннера, позволяя полностью итерацию в одном тактовом цикле. В то время как фантастический для задержки, этот подход приводит к массивной перегрузке межсоединений и высокому энергопотреблению, ограничивая его использование короткими и средними длинами блоков. Доминирующим подходом в современных ASIC является частично параллельная многослойная архитектура , частично параллельная многослойная архитектура . Этот дизайн обрабатывает большое подмножество (слой) матрицы проверки четности за раз, повторно используя то же самое оборудование для последующих слоев. Этот компромисс позволяет получить небольшую площадь передач и низкую мощность, при этом все еще достигая высокой пропускной способности через трубопроводы и тактовое зазорное устройство. Такие компании, как Broadcom, Marvell и Qualcomm, развертывают многослойные декодеры в своих процессорах 800G
Пограничные архитектурные методы и векторы исследований
Помимо стандартных платформ, несколько передовых архитектурных методов расширяют границы производительности и эффективности декодирования LDPC.
Слоеное декодирование (Turbo-Decoding Message Passing)
Слое декодирование, также известное как Turbo-Decoding Message Passing (TDMP), реструктурирует планирование обновлений сообщений., вместо обновления всех VN и затем всех CNs (наводнение), TDMP обновляет полосу матрицы проверки четности (слоя) путем обработки CNs, немедленного обновления VNs и использования этих свежих LLR для следующего слоя. Это немедленное распространение информации ускоряет сходимость почти в два раза, то есть декодер требует меньше итераций для достижения той же скорости ошибок. Для аппаратного обеспечения это напрямую переводится либо на более высокую пропускную способность (запустив меньше итераций), либо на меньшую мощность (запустив меньше итераций) или на меньшую мощность (запустив логику питания в параллельном аппаратном обеспечении управляет зависимостью данных между слоями, что может создавать заторы для трубопроводов. Расширенные схемы вне порядка планирования часто используются для смягчения этого.
Стохастические вычисления для сверхвысокой пропускной способности
Стохастическое декодирование выделяется как радикальный отход от обычных цифровых декодеров LDPC. Оно представляет LLR как поток случайных битов Бернулли, где вероятность «1» соответствует значению сообщения. Сложная арифметика алгоритма BP затем заменяется простой булевой логикой: AND-шлюз для умножения и OR-шлюз для сложения. Это приводит к чрезвычайно малым и высокоскоростным вычислительным узлам. Основная задача имеет дело с стохастической корреляцией, где битовые потоки теряют свою независимую случайность, заставляя декодер останавливаться или колебаться. Для облегчения этого используются методы, подобные Tracking Forecast Memories (TFMs) и Edge Memorization, но они вводят накладные расходы. В то время как все еще исследовательская тема
Аналоговые подпороговые декодеры
Подталкивая принцип эффективности к его логической крайности, аналоговые декодеры реализуют алгоритм Sum-Product непосредственно в элементах схемы непрерывного времени.В этих конструкциях напряжения и токи представляют вероятности, а VN и CNs построены из усилителей транспроводимости (например, ячеек множителя Гилберта), работающих в субпороговой области. Эти декодеры потребляют мощность субмилливатта и могут сходиться в наносекундах, предлагая теоретически лучшую энергоэффективность. Однако они страдают от серьезных практических недостатков: восприимчивости к изменениям обработки, напряжения и температуры (PVT), отсутствия инструментов автоматизации проектирования и трудности масштабирования до более крупных кодов.Несмотря на эти препятствия, аналоговые декодеры остаются увлекательной областью исследований для сетей датчиков сверхнизкой мощности.
Интеграция машинного обучения и выученные декодеры
Конвергенция машинного обучения и кодирования каналов породила яркую область исследований. Ключевое понимание заключается в том, что параметры стандартного декодера (например, факторы нормализации в NMS) могут быть оптимизированы с использованием глубокого обучения. Нейронные нормализованные / Оффсетные мин-суммы (NMS / OMS) декодеры рассматривают график передачи сообщений как глубокую сеть передачи данных. Обратно распространяясь через «незавершенные» итерации, сеть может изучать оптимальные факторы масштабирования для каждого края или итерации, значительно улучшая компромисс между производительностью и сложностью. Кроме того, исследование полностью Нейронные правила распространения убеждений ] Нейронные правила обновления направлены на замену ручных правил обновления небольшими нейронными сетями на каждом узле. В то время как вычислительно дорогие для текущего оборудования, эти методы указывают на будущее, где декодеры не просто ускоряются, но и фундаментально оптимизированы ИИ. Недавний обзор этих методов можно найти в [[FLT:
Постоянные проблемы в дизайне декодера с высокой конкурентностью
Несмотря на значительные успехи, разработка параллельных декодеров LDPC сопряжена с техническими проблемами, которые требуют тщательного архитектурного компромисса.
Стена памяти и движение данных:] Основное узкое место в современных декодерах — это уже не вычисления, а движение данных. Внешняя память LLR велика (часто сотни килобитов) и должна быть доступна с чрезвычайно высокой скоростью. В ASIC маршрутизация этих широких шины данных по матрице потребляет значительную мощность и площадь. В GPU это приводит к насыщению полосы пропускания памяти. Эффективный дизайн требует глубоких, многоуровневых иерархий памяти и умных стратегий повторного использования данных.
Межсоединительная структура:] В полностью параллельных архитектурах «провод» — это машина. Подключение каждого VN к соответствующим CN создает сложный график маршрутизации. Для обычного кода (1008, 504) полностью параллельный декодер требует миллионов проводов. Проектирование межсоединительного соединения без перегрузки и с низким перекосом является значительной физической проблемой проектирования. Частично параллельные архитектуры смягчают это за счет умножения времени на меньший, структурированный межсоединительный канал (например, переключатель ствола для QC-LDPC), но это ограничивает пиковую пропускную способность.
Феномены напольного покрытия ошибок: Высокоструктурированная природа параллельного оборудования может вводить коррелированные ошибки, которые ухудшают производительность декодера при высоких соотношениях сигнал/шум. Полы ошибок часто вызваны небольшими подграфами в графе Таннера, называемыми наборами захвата или поглощающими наборами.
Гибкость против эффективности: Декодер, предназначенный для одной длины кода и скорости, может быть сильно оптимизирован, но устаревает по мере развития стандартов. Современные протоколы (например, 5G NR) требуют поддержки широкого диапазона скоростей кода и длины блоков. Проектирование гибкой параллельной архитектуры, которая может эффективно обрабатывать эту изменчивость — без огромных накладных расходов на оборудование для реконфигурации — остается огромной задачей.
Новые стандарты и путь к 6G
Следующее десятилетие обещает продолжение эволюции. Толчок к 6G, с целевыми пиковыми скоростями передачи данных 1 Тбит/с и субмиллисекундной задержкой, потребует принципиально новых архитектур декодера. Гибридные оптические/электрические межсоединения могут потребоваться для решения стенки памяти. Вычисления в памяти, где LLR обрабатываются непосредственно в массиве памяти с использованием аналоговых ядер обработки в памяти (PIM), является активной областью исследования. Кроме того, взрыв спутниковых мега-созвездий (например, Starlink) в значительной степени зависит от кодов LDPC для надежной связи нисходящей линии связи/подъемной линии связи в суровых шумовых средах, требующих надежных, радиационно-толерантных высокоскоростных декодеров. Продолжающиеся исследования в схемах кодирования каналов 6G предполагает, что LDPC останется базовым уровнем, дополненным новыми кодами для конкретных вариантов использования.
Путь от теоретической конструкции Галлагера к терабит-пер-секундным декодерам ASIC является свидетельством мощи параллельной аппаратной архитектуры. Понимая глубокое взаимодействие между алгоритмом итеративного декодирования и базовым оборудованием - будь то графический процессор, FPGA или пользовательский кремний - инженеры продолжают раздвигать границы того, что возможно в системах связи. Будущее заключается в гетерогенной интеграции, совместном проектировании машинного обучения и все более специализированных путях передачи данных, которые сделают связь терабит в реальном времени повсеместной реальностью.