Модифицированный алгоритм итеративного декодирования низкоплотностных кодов, учитывающий свойства и структуру кода и обеспечивающий сокращение временной и вычислительной сложности
Бесплатно
Основная коллекция
Тематика:
Цифровая связь. Телекоммуникации
Издательство:
Науковедение
Год издания: 2014
Кол-во страниц: 18
Дополнительно
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 1 http://naukovedenie.ru 84TVN214 УДК 621.391 Проскурин Александр Александрович ГКОУ ВПО «Академия Федеральной службы охраны Российской Федерации» Россия, Орёл1 Преподаватель E-Mail: sansan73@yandex.ru Модифицированный алгоритм итеративного декодирования низкоплотностных кодов, учитывающий свойства и структуру кода и обеспечивающий сокращение временной и вычислительной сложности Аннотация: В настоящее время наблюдается активный переход производителей телекоммуникационного оборудования магистральных волоконно-оптических линий связи на использование низкоплотностных кодов (НПК) для исправления ошибок в каналах связи. Данная тенденция связана с тем, что низкоплотностные коды обладают наилучшей помехоустойчивостью по сравнению со всеми используемыми ранее на практике помехоустойчивыми кодами (Рида-Соломона, БЧХ, блочными турбокодами). Для декодирования НПКв спутниковых системах связи широкое применение получил алгоритм итеративного распространения доверия и различные его модификации. Однако, использование данных алгоритмов декодирования низкоплотностных кодов при реализации декодеров на скоростях 10, 40 и 100 Гбит/с приводит к значительному увеличению ресурсоемкости, либо времени декодирования. Современные программируемые логические интегральные схемы максимальной степени интеграции не могут обеспечить требуемую ресурсоемкость для реализации декодеров в реальном масштабе времени. В статье предлагается модифицированный алгоритм декодирования низкоплотностных кодов, позволяющий значительно сократить ресурсоемкость разрабатываемых декодеров. Ключевые слова: Помехоустойчивое кодирование; низкоплотностные коды; алгоритм итеративного распространения доверия; магистральные волоконно-оптические линии связи (ВОЛС); программируемые логические интегральные схемы (ПЛИС). Идентификационный номер статьи в журнале 84TVN214 1 302034, г. Орел, ул. Приборостроительная, д. 35
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 2 http://naukovedenie.ru 84TVN214 Основные тенденции использования помехоустойчивого кодирования в магистральных волоконно-оптических линиях связи Волоконно-оптические системы передачи информации (ВОСП) являются важным элементом правительственных, коммерческих, образовательных и потребительских коммуникаций. Многие тенденции в области стационарных и мобильных IP-сетей в значительной степени определяются комбинацией приложений для работы с видео, социальных сетей и совместной работы, которые объединяются под названием «визуальные сетевые технологии». Мировой лидер по производству сетевого и телекоммуникационного оборудования и разработки программного обеспечения для управления компьютерными сетями американская компания Cisco Systems огласила в октябре 2013 года результаты ежегодного прогноза Cisco Visual Networking Index (VNI) («Индекс развития сетевых технологий в период с 2012 по 2017 гг.») [11]. Согласно опубликованному прогнозу, к 2017 году ежегодный объем глобального IP-трафика превысит 1,4 зеттабайт (или 120,6 экзабайт в месяц на конец 2017 года). На рисунке 1 и представлен прогнозируемый ежегодный прирост трафика по типу нагрузкиии по сегменту пользователей IP-трафика. Рис. 1. Прогнозируемый рост IP-трафика в период с 2012 по 2017 гг. Растущий с арифметической прогрессией трафик данных передается между удаленными пользователями ВОСП по магистральным волоконно-оптическим линиям связи (ВОЛС). Протяженность магистральных ВОЛС на сегодняшний день составляет десятки тысяч километров, они образуют несколько замкнутых колец вокруг земного шара, соединяя материки по дну океанов. Современным магистральным ВОЛС свойственны следующие основные особенности: ● широкое использование технологий спектрального мультиплексирования (WDM – WavelengthDivisionMultiplexing); ● скоростью передачи в каждом спектральном канале 10-100 Гбит/c; ● применение в магистральных кабелях связи одномодовых оптических волокон; ● большая протяженность безрегенерационных участков; 31,339 39,295 47,987 57,609 68,878 81,818 11,346 14,679 18,107 21,523 24,74 27,668 0,885 1,578 2,798 4,704 7,437 11,157 0 20 40 60 80 100 120 140 2012 2013 2014 2015 2016 2017 Фиксированный интернет (экзабайт в месяц) Управляемый IP (экзабайт в месяц) Мобильные данные (экзабайт в месяц)
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 3 http://naukovedenie.ru 84TVN214 ● использование эрбиевых (романовских) усилительных элементов. В настоящее время в ВОСП завершается переход от построения сетей на базе синхронной транспортной иерархии (SDH – Synchronous Digital Hierarchy) к архитектуре оптических транспортных сетей (OTN – Optical Transport Network). В соответствии с прогнозом экспертов компании Cisco, технология OTN становится де-факто стандартом организации магистральных оптических сетей связи. Это обусловлено множеством ограничений возникающих при передаче IP-трафика и Ethernet-сервисов с использованием классической технологии SDH в основном имеющей ориентацию на передачу речевого трафика. Транспортный канальный модуль OTU (Optical channel Transport Unit) используется для поддержки транспортировки цифрового потока через один или более оптических каналов. Модуль обеспечивает кадровую синхронизацию и адаптацию цифрового потока к особенностям оптического канала связи, а также требуемую достоверность передаваемых по каналам связи сообщений. Кадр OTU состоит из заголовка, области полезной нагрузки и блока проверочных символов для прямого исправления ошибок (FEC – Forward Error Correction). Кодирование с исправлением ошибок уменьшает вероятность появления ошибки в передаваемых данных при одном и том же уровне отношения сигнал/шум (ОСШ), что позволяет значительно уменьшить требования к величине принимаемого оптического сигнала и тем самым увеличить длину участка ВОЛС при одинаковой вероятности появления ошибки. Использование помехоустойчивого кодирования вмагистральных ВОЛС за последние пятнадцать лет претерпело бурное развитие. В настоящее время можно выделить четыре поколения помехоустойчивых кодов, используемых для исправления ошибок в передаваемых высокоскоростных цифровых потоках (рис.2) [7]. Рис. 2. Поколения помехоустойчивых кодов, используемых в магистральных ВОЛС
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 4 http://naukovedenie.ru 84TVN214 К первому поколению помехоустойчивых кодов относятся коды Рида-Соломона (РС), описанные в рекомендации G.709 [9]. Для обеспечения большего энергетического выигрыша от кодирования при той же избыточности были разработаны каскадные схемы кодирования в соответствии с рекомендацией G.975.1 [10], относящиеся ко второму поколению. Переход к третьему и четвертому поколению помехоустойчивых кодов вызван увеличением скорости передачи данных в магистральных ВОЛС свыше 10 Гбит/с и применением различных видов модуляции и волнового уплотнения. Данный этап характеризуется применением низкоплотностных кодов с различными параметрами и использованием мягких решений демодулятора, что позволяет существенно повысить энергетическую эффективность волоконно-оптической системы передачи информации [3]. Использование алгоритма итеративного распространения правдоподобия для декодирования низкоплотностных кодов Низкоплотностный код является классом двоичных линейных систематических блочных кодов [1], характеристики и параметры которого полностью описываются проверочной матрицей H размерности . Также НПК код может быть описан с помощью двудольного графа Таннера [4], состоящего из проверочных вершин (узлов) и кодовых вершин (узлов). Регулярный НПК представляет собой код, в котором каждая кодовая вершина связана с проверочными вершинами ( – степень кодовых вершин), а каждая проверочная вершина связана с кодовыми вершинами ( – степень проверочных вершин). На рисунке 3 представлен граф Таннера для регулярного НПК с параметрами ( =12, =4, = 2, = 3). Рис. 3. Пример графа Таннера регулярного НПК Наиболее общим алгоритмом декодирования НПК является алгоритм итеративного распространения доверия (IBP – IterativeBelievePropagation) [6], представленный на рисунке 4. В процессе итеративного декодирования НПК, происходит обновление сообщений от проверочных вершин графа Таннера к кодовым вершинам и наоборот. По мере достижения заданного количества итераций или срабатывания критерия остановки декодирования производится оценка канального символа и вычисление жесткого решения. ) , ( K N N K N ) ( ) ( K N N ) , ( c w d d w d w d c d c d N K w d c d
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 5 http://naukovedenie.ru 84TVN214 Рис. 4. Обобщенная структурная схема алгоритма IBP На рис. 5 промежуточные решения представляют собой мягкий выход демодулятора, окончательные решения – мягкий выход декодера, последовательность – жесткое решение , функции и определяют решения уравнений по кодовым вершинам и проверочным вершинам соответственно. Рис. 5. Процесс обновления сообщений между вершинами графа Таннера в алгоритме IBP Для практической реализации декодера НПК на ПЛИС наибольший интерес представляет модификация алгоритма IBP – алгоритм минимума суммы (MinSum) [2]. Промежуточная функция вычисляется по сумме всех проверок, входящих в состояние , за исключением вершины : (1) Функция вычисляется по всем кодовым вершинам, связанным с проверочной вершиной , за исключением кодовой вершины : (2) Окончательные решения равны: (3) (4) Общее решение алгоритма минимума суммы: (5) канал w C x s алгоритм минимума суммы или суммы произведений метрик s E, E s, промеж. решения оконч. решения оценка s xˆ s s xˆ s s E, E s, s E S S S1 S2 E E1 E2 s E ,1 s E ,2 s E, E s, E s ,1 E s ,2 E s, s E E E E s s E s E s a a a , , , ) ( ) ( ) ( s E, E s s s E s s E s E E a x s E x x a s , , , ) ( ) ( min ) ( E s s E s s a a a ) ( ) ( ) ( , E s s E s E E a a a ) ( ) ( ) ( , E s s s E E x x x G ) ( ) ( ) (
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 6 http://naukovedenie.ru 84TVN214 Далее будут рассмотрены различные методы аппаратной реализации описанного алгоритма на базе программируемых логических интегральных схем (ПЛИС). Архитектура декодеров низкоплотностных кодов Процесс декодирования НПК состоит из двух основных этапов, реализация которых осуществляется последовательно функционально различными элементами, количество которых определяет архитектуру декодера и, следовательно, его производительность и ресурсоемкость [8]. К первому типу элементов относится модуль, реализующий вычисление сообщений от кодовых узлов к проверочным узлам (МКП). Данный модуль реализует для каждого проверочного узла операцию алгебраического сложения входных значений LLR и вычисленных ранее 𝑊𝑐 − 1 сообщений от проверочных узлов к кодовым узлам. Ресурсоемкость и быстродействие модуля зависят от разрядности входных и выходных значений, а также от метода их хранения и передачи (последовательный или параллельный). При реализации данной операции возникает необходимость нормировать, либо ограничить выходные значения модуля, а также исключить возможность переполнения сумматора. На рис. 6 представлена реализация полностью параллельного (a) и последовательного (b) модуля вычисления сообщений от кодовых узлов к проверочным узлам, а в таблице 1приведена производительность и ресурсоемкость соответствующей схемной реализации. Последовательный МКП работает в два этапа: на первом этапе последовательно суммируются 𝑊𝑐 значений кодовых узлов с входным значением LLR, а на втором этапе происходит вычитание 𝑊𝑐 значений кодовых узлов из полученной суммы. (a) (b) Рис. 6. Реализация модуля вычисления сообщений от кодовых узлов к проверочным узлам Ко второму типу элементов относится модуль, реализующий вычисление сообщений от проверочных узлов к кодовым узлам (МПК). Данный модуль реализует для каждого кодового узла операцию нахождения минимального значения среди вычисленных ранее 𝑊𝑟 − 1 сообщений от кодовых узлов к проверочным узлам. Ресурсоемкость и быстродействие модуля зависят от разрядности входных значений, а также от метода их приема и выдачи (последовательный или параллельный). Общий алгоритм вычисления остается, как правило, неизменным: производится поиск двух минимумов из входного набора значений, первый минимум выдается на выход для всех кодовых узлов, кроме одного, для которого выдается второй минимум. На рисунке 7 представлена реализация последовательного (a) и полностью параллельного (b) модуля вычисления сообщений от проверочных узлов к кодовым узлам, а в таблице 1 приведена производительность и ресурсоемкость соответствующей схемной реализации. + r[Q-1..0] LLRi[Q-1..0] q0[Q-1..0] q1[Q-1..0] qk[Q-1..0] . . . + rk[Q-1..0] LLRi[Q-1..0] qj[Q-1..0]
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 7 http://naukovedenie.ru 84TVN214 (a) (b) Рис. 7. Реализация модуля вычисления сообщений от проверочных узлов к кодовым узлам Таблица 1 Производительность и ресурсоемкость модулей вычисления сообщений Тип модуля Способ реализации Ресурсоемкость Производительность Кол-во лог.элементов Кол-во триггеров Кол-во тактов Макс. частота (МГц) МКП паралл. (𝑊𝑐 + 1) × 𝑄 (𝑊𝑐 + 1)𝑄 ÷ 𝑑 1 136 послед. 2 × 𝑄 2 × 𝑄 ÷ 𝑑 (𝑊𝑐 + 1)𝑄 324 МПК паралл. 12 × (𝑊𝑟) × 𝑄 12 × (𝑊𝑟) × 𝑄 ÷ 𝑑 𝑊𝑟 112 послед. 12 × 𝑄 12 × 𝑄 ÷ 𝑑 2 × (𝑊𝑟) 287 Параметр d в приведенной таблице обозначает разрядность элемента LUT (Look-up Table) и зависит от типа используемой ПЛИС, а параметр Q – разрядность мягкого решения, используемого при вычислениях. Как видно из представленной таблицы, ресурсоемкость и производительность модулей вычисления сообщений от проверочных узлов к кодовым узлам и модулей вычисления сообщений от кодовых узлов к проверочным узлам существенно зависят от выбранного способа реализации модуля, разрядности вычисляемых сообщений, а также от свойств декодируемого низкоплотностного кода. По принципу построения и организации процессов вычисления сообщений от кодовых узлов к проверочным узлам и обратно, можно выделить три основные архитектуры декодеров НПК кодов: полностью параллельная архитектура (ППА); частично параллельная архитектура (ЧПА); последовательная архитектура (ПА). Использование ППА (рис. 8) позволяет обеспечить максимальное потенциально возможное быстродействие и, следовательно, теоретически максимальную производительность декодера. <= r0[Q-1..0] r1[Q-1..0] rk[Q-1..0] . . . min1 <= r1[Q-1..0] <= qj[Q-1..0] <= <= qj[Q-1..0] min2 MUX ri[Q-1..0]
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 8 http://naukovedenie.ru 84TVN214 Рис. 8. Полностью параллельная архитектура декодера НПК При такой структуре декодера необходимо использовать 𝑊с × (𝑁 − 𝐾) полностью параллельных МПК и 𝑊𝑟 × (𝑁) полностью параллельных МКП. При использовании ППА нет необходимости хранить промежуточные значения вычисляемых сообщений, что обеспечивает минимальный ресурс необходимой памяти для реализации декодера. Реализация ППА возможна для всех существующих типов НПК, независимо от свойств их проверочной матрицы (регулярные, нерегулярные, квазициклические и т.д.). Однако, количество логических элементов, необходимых для реализации МКП и МПК и количество связей между ними значительно превосходит все остальные типы архитектурных решений, что приводит к практически невозможному применению данной архитектуры для реализации декодеров на современной элементной базе для декодирования реально используемых в различных системах связи НПК. Наличие огромного количества многократно связанных между собой МКП и МПК в ППА приводит к тому, что протяженность связывающих линий значительно возрастает, следовательно, увеличивается задержка распространения передаваемых по ним сообщений от кодовых узлов к проверочным и обратно. Для компенсации задержки распространения приходится значительно снижать рабочую частоту декодера, что приводит к снижению его производительности. Существуют различные методы компенсации снижения рабочей тактовой частоты, за счет конвейеризации процессов передачи сообщений между МКП и МПК, однако они приводят к значительному усложнению устройства управления процессом декодирования и требуют дополнительного ресурса памяти, что нивелирует все преимущества ППА и приближает ее к ЧПА. Использование последовательной архитектуры (рис.9) позволяет задействовать всего по одному МКП и МПК для обмена соответствующими сообщениями, которые после вычисления записываются в промежуточные массивы памяти. LLR0 Sign(∑LLR0) МКП 0 LLR1 Sign(∑LLR1) МКП 1 LLR2 Sign(∑LLR2) МКП 2 LLR3 Sign(∑LLR3) МКП 3 LLRn-2 Sign(∑LLRn-2) МКП n-2 LLRn-1 Sign(∑LLRn-1) МКП n-1 МПК 0 МПК 1 МПК 2 МПК n-k-1 . . . . . .
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 9 http://naukovedenie.ru 84TVN214 Рис. 9. Полностью последовательная архитектура декодера НПК Количество необходимого ресурса логики для реализации декодеров с ПА минимально, однако объем необходимой памяти максимальный в сравнении с другими возможными архитектурами. Также появляется необходимость хранения всех адресов «единиц» проверочной матрицы НПК, которые определяют связи между кодовыми и проверочными узлами, а соответственно и адреса чтения и записи в промежуточную память. Данная архитектура предполагает максимальное количество операций для одной итерации декодирования, а следовательно самую низкую производительность декодера. Следует отметить, что также как ППА, последовательная архитектура может быть использована для декодирования НПК любых типов. Перечисленные выше недостатки приводят к тому, что ПА может использоваться только лишь для построения декодеров на базе процессорных систем и применима для низкоскоростных цифровых потоков. Скомпенсировать недостатки ППА и ПА, используя их достоинства, возможно за счет применения гибридного метода построения декодеров НПК с частично параллельной архитектурой. ЧПА (рис.10) содержит некоторое количество 𝑀𝑐 = 𝑁 ÷ 𝑍𝑐 (как правило, десятки или сотни) МКП, где параметр 𝑍𝑐 представляет собой количество столбцов в базовой матрице и некоторое количество 𝑀𝑟 = 𝑁 ÷ 𝑍𝑟 (также как правило, десятки или сотни) МКП, где параметр 𝑍𝑟 представляет собой количество строк в базовой матрице. Использование данной архитектуры возможно только для квазициклических кодов, которые позволяют, вопервых разбить проверочную матрицу НПК на M базовых подматриц с параметрами (𝑍с, 𝑍𝑟), а во-вторых, производить одновременный процесс чтения и записи сообщений от кодовых к проверочным узлам и обратно. LLRn ADR[M...0] Память сообщений от кодовых к проверочным узлам МКП МПК Память сообщений от проверочных к кодовым узлам Sign(∑LLRn) ПЗУ адресов КП ADR[M...0] ПЗУ адресов ПК
Интернет-журнал «НАУКОВЕДЕНИЕ» Выпуск 2, март – апрель 2014 Опубликовать статью в журнале - http://publ.naukovedenie.ru Институт Государственного управления, права и инновационных технологий (ИГУПИТ) Связаться с редакцией: publishing@naukovedenie.ru 10 http://naukovedenie.ru 84TVN214 Рисунок 10 – Частично параллельная архитектура декодера НПК Таблица 2 Сравнительная производительность и ресурсоемкость различных архитектур декодеров НПК Тип архитектуры Ресурсоемкость Производительность Кол-во лог. элементов Кол-во триггеров Объем памяти (бит) Кол-во тактов Макс. частота (МГц) ОЗУ ПЗУ ППА ℎ2 × 𝑄 (𝑊𝑐 + 1)𝑄 ÷ 𝑑 0 0 1 236 ПА 12 × (𝑊𝑟) × 𝑄 12 × (𝑊𝑟) × 𝑄 ÷ 𝑑 × (𝑊с) × × (𝑊𝑟) × 𝑄 (𝑊𝑟) × 𝑄 × (𝑊с) × × (𝑊𝑟) 212 ЧПА ℎ2 × 𝑄 ÷ 𝑧 12 × 𝑄 ÷ 𝑑 × (𝑊с) × × (𝑊𝑟) × 𝑄 ÷ 𝑑 (𝑊𝑟) × 𝑄 ÷ 𝑑 × (𝑊с) × × (𝑊𝑟) ÷ 𝑑 287 В таблице 2 приведена сравнительная характеристика требуемых ресурсов и производительности декодеров НПК, реализованных с использованием различных архитектур построения. Параметр h обозначает количество единиц в проверочной матрице кода, а параметр z–количество ветвей распараллеливания при декодировании квазициклических кодов. qij ADR[M...0] Память сообщений от кодовых к проверочным узлам МКП 0 МПК (n-k-1)/M Память сообщений от проверочных к кодовым узлам Sign(∑LLRn) ПЗУ адресов КП ADR[M...0] ПЗУ адресов ПК МКП 1 МКП n-1/M Регистр сдвига . . . МПK 1 МПK 0 . . . rji LLRn