УДК 621.3.049.77
ОПТИМИЗАЦИЯ АППАРАТНОЙ АРХИТЕКТУРЫ LDPC-ДЕКОДЕРА, ПРИМЕНЯЕМОГО В СТАНДАРТЕ РАДИОСВЯЗИ IEEE 802.11n
А.В. Башкиров, А.В. Ситников, М.В. Хорошайлова
В статье рассмотрена структурная схема декодера систематического LDPC-кода, представлены классы архитектур, приведены их описание и сравнение. Проводятся анализ и выбор оптимального алгоритма с точки зрения его аппаратной реализации
Ключевые слова: архитектура, кодирование LDPC-код, стандарт IEEE 802.11n, Sum-product алгоритм, Min-sum алгоритм
Введение в LDPC коды. Коды, контролирующие ошибки (ККО), обнаруживают и исправляют возникающие ошибки при передаче информации через канал с шумом. ККО улучшают исправление битовой ошибки путем добавления избыточности в передаваемое сообщение, позволяя приемному устройству обнаруживать и исправлять битовые ошибки, таким образом, исключая необходимость повторной передачи сообщения. ККО применяются вместе с общей моделью связи, как показано на рис. 1.
Источник _
информации Передатчик Приемник Получатель
Источник шума
Рис. 1. Общая модель связи Область применения ККО изменяется от космической и спутниковой связей передачи сообщения, хранения информации, до беспроводных мобильных связей [1]. Образец ККО модели связи представлен на рис. 2.
Рис. 2. Модель связи с кодом, корректирующим ошибки
В качестве ККО в стандарте связи IEEE 802.11n используются современные коды с малой плотностью проверок на четность, которые получили распространение в беспроводной связи - IEEE
Башкиров Алексей Викторович - ВГТУ, канд. техн. наук, доцент, тел. 8-952-543-99-88, e-mail: [email protected] Ситников Александр Викторович - ВГТУ, д-р физ.-мат. наук, профессор, тел. 8-908-245-68-23, e-mail: [email protected]
Хорошайлова Марина Владимировна - ВГТУ, аспирант, тел. 8-920-415-15-65, e-mail: [email protected]
802.11ad, 2nd Gen. DVB, IEEE 802.3an. Преимущества данных кодов - надежная корректирующая способность, доступность высокопроизводительной аппаратной реализации таких кодов с пропускной способность до нескольких Гбит/с. Декодирование может выполняться параллельно, что повышает быстродействие декодера и упрощает его [2].
Таким образом, необходимо произвести анализ эффективности базовых архитектур, которые позволяют достигнуть различных соотношений между пропускной способностью и величиной требуемых аппаратных ресурсов при реализации декодера на ПЛИС.
Для определения разряда, в котором возникла ошибка, в процессе кодирования и декодирования LDPC кодов, применяют проверочные матрицы, позволяющие найти ошибки в любом разряде кодового сообщения.
Особенность: малая плотность элементов проверочной матрицы, благодаря чему достигается простота реализации аппаратной реализации.
Для декодирования этих кодов широко применяются алгоритмы, построенный на основе графа Таннера [3]. В основе работы методов декодирования - обмен цифровыми сообщениями между битовыми и проверочными вершинами графа Таннера. LDPC код - линейный код, исправляющий ошибки, построенный на основе разряженной матрицы проверки на четность. Для данной матрицы проверки на четность HMxN, где номера строк М представлены проверочными узлами {с1, с2, ... , сМ} и номера столбцов N представлены переменными узлами {v1, v2, ... , vN}. Проверочный узел ст соединяется с переменным узлом vn, только если H(m,n) не ноль.
Сообщения, которые передаются i-м битовым узлом к j-му проверочному узлу, определяются как:
qui = Li + Z ,
где qy - сообщение от i-го битового узла к j-му проверочному узлу; Li - мягкое решение демодулятора относительно всех битов канала; Q - множество номеров проверочных узлов, связанное с i-м битовым узлом; rki - сообщение от k-го проверочного к i-му битовому узлу.
Сообщения, посылаемые j-м проверочным узлом к i-му битовому, вычисляются:
r = 2 tanh 1
( q ^
П tanh q-f
уkeRj ,k2
переменным
проверочных
проверочны»
где RJ - множество номеров битовых узлов, связанное с _|-м проверочным узлом; tanh(x) - гиперболический тангенс.
Проверочные умы
Переменные узлы
'1С! I 0 1 1 0 1 5'
а 1 I о I 1 о ] о )
I О 0 1 1 1 I 0 1 о 110 0 0 0)111 0)11100101
Рис. 3. Двусторонний граф Таннера для (3,6)-регулярного LDPC кода
LDPC код стандарта IEEE 802.11n и используемые алгоритмы декодирования. Sum-product алгоритм (SPA)
Sum-product алгоритм - это обычная реализация алгоритма MP. Рисунок итерационного процесса декодирования приведен на рис. 1б)
L(qtJ) = У Lj + Lpr (xt),
j 'eCol[t ]\ j
L(r, j) = Ф"
eRow[ j ]\t
Ф( L(qn ))
П sgn(L(qt. j))
'e Row\j ]\t
Ф(x) = - log| tanhf-1 x
x > 0.
Сообщения q1J и Гц относятся к переменным-проверкам и проверкам-переменным сообщения соответственно, которые проходят между 1-ым переменным узлом и _|-ым проверочным узлом. Со1[1] относится к совокупности всех проверочных узлов, примыкающих к 1-ому проверочному узлу, и Row[j] относится к совокупности всех переменных узлов, примыкающих к _|-ому проверочному узлу.
Min-sum алгоритм
В данном алгоритме формирование сообщений идет от проверочных узлов к битовым. Упрощенный рисунок итерационного процесса декодирования приведен на рис. 1в)
В алгоритме т1п^ит для вычисления сообщений от проверочных используется выражение.
ги) =П и) • ^)=)1.
узлов к битовым
jA qk j l),
П sgn(L(qt, j)).
Рис. 4. а) Фактор-граф; б) sum-product message-passing декодер для одного переменного узла и одного проверочного узла; B)min-sum message-passing декодер для одного переменного узла и одного проверочного узла
Проигрыш от применения подобного упрощения составляет порядка 0,5 дБ. Однако наряду с меньшей сложностью реализации данный алгоритм не чувствителен к неточности информации о состоянии канала.
Стандарт IEEE 802.11n разработан для работы в диапазоне частот 5 ГГц, что обеспечивает совместимость со всем оборудованием IEEE 802.11а. Данный, современный стандарт позволяет значительно повысить пропускную способность канала в локальных беспроводных сетях, а именно до скоростей 100 Мбит/с и даже выше.
Матрица проверки на четность LDPC кода определяет соотношение ошибок по битам (BER -bit error ratio), пропускную способность и сложность декодера LDPC. Матрицы контроля четности, используемые в стандарте IEEE 802.11n, имеют многоуровневые структуры и состоят из сдвинутых вариантов матриц, удовлетворяющих идентичной, объединены для формирования 12 различных матриц для 648, 1296 и 1944 длин блоков и 1/2, 2/3, 3/4, 5/6 кодовых скоростей [3]. Проверочная матрица 324 х 648 четности используется в стандарте IEEE 802.11n для блока длиной 648.
Размер суб-матрица контроля по четности матриц 27x27, использовали 27 каналов передачи данных проверки узлов для реализации алгоритма декодирования Min-sum для одного слоя параллельно. После обновления переменной узел завершается для одного слоя, следующий слой из матрицы проверки на четность обрабатывается в результате реализации гибридного LDPC-декодер.
Аппаратная архитектура состоит из 24x162 переменного узла памяти, 2 сдвигателя (блок чтения, блок записи), 27 проверочных узлов линий данных и 27 12x38 блоков памяти проверочных узлов (CN). Бит памяти 24x162 используется для хранения 648 узлов различных сообщений, каждый из которых 6-разрядный, в том числе 1 бит знака.
Рис. 5. Аппаратная архитектура LDPC декодера
Критерии оптимальности.
Главным критерием оптимальности LDPC декодера является его корректирующая способность. При анализе вышеприведенной информации, можно сделать однозначный вывод о том, что лучшей помехоустойчивостью обладают коды большей длины, так как для передачи одного и того же объема информации потребуется меньше вспомогательных операций (по обработке и хранению промежуточной информации), а следовательно и меньше архитектурных блоков.
Как подробно описано в [4], главной задачей, которую необходимо решить при реализации декодеров, это значительное задействование объемов физической памяти, загрузка канала при обращении к ней.
Последующий анализ [4] показал, что для LDPC декодеров, для двоичного декодирования является процедура упрощения операций, производимых с использованием GPU. То есть, более простой алгоритм, который состоит только из операций сложения, обладает сложностью порядка O(q2). За счет этого, удается значительно упростить аппаратную реализацию, которую можно сравнить по числу операций, которые требуются для проведения одной элементарной вычислительной активности в битовом узле (таблица).
Число операций на элементарное вычисление в битовом узле
Алгор. Умножений Делений Max* Max Сложений
BP q - - - q-1
FFT-BP q - - - q -1
log-BP - - q-1 - q
EMS - - - nm(2n m) nm
Заключение. Из составленной таблицы можно сделать однозначный вывод о том, что с точки зрения оптимальной аппаратной реализации LDPC декодера, алгоритм Extended Min-Sum является лучшим, не смотря на то, что уступает другим по своей корректирующей способности.
Литература
1. Smolyakov V. A Multi-Standard LDPC Decoder/ V. Smolyakov, University of Toronto, 2010.
2. Башкиров, А.В. Преимущество параллельных алгоритмов цифровой обработки сигналов над последовательными алгоритмами при реализации на ПЛИС [Текст] / А.В. Башкиров, А.В. Муратов // Вестник Воронежского государственного технического университета. -
2012. -Т. 8. - № 1. - С. 89-92.
3. "IEEE 802.11n Wireless LAN Medium Access Control MAC and Physical Layer PHY specifications", IEEE 802.11n-D2.0, 2007.
4. Башкиров А.В. Перспективы моделирования параметров алгоритмов помехоустойчивого кодирования с высокой степенью параллелизма при помощи аппаратной платформы на базе GPU / А.В. Башкиров, А.И. Климов, А.В. Муратов, Ю.С. Науменко, В.С. Цымбалюк // Журнал «Радиотехника», - М.: Радиотехника Номер 12,
2013. - С. 26-29.
Воронежский государственный технический университет
BASED ON OPTIMIZATION OF HARDWARE ARCHITECTURES LDPC- DECODER USED IN THE STANDARD RADIO IEEE 802.11N
A.V. Baschkirov, A.V. Sitnikov, M.V. Horoshaylova
In the article the block diagram of a decoder systematic LDPC code presented classes Architech tour, given their description and comparison. The analysis and selection of the optimal algorithm in terms of hardware implementation
Key words: architecture LDPC coding code standard IEEE 802.11n, algorithm Sum-product, algorithm Min-sum