16
Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad А.А. Шевченко 1, 2 , Р.О. Масленников 2 , А.А. Мальцев 1 , М.В. Пантелеев 1, 2 , А.Ф. Клюев 1, 2 , А.Г. Ветчинкин 1, 2 1 Нижегородский государственный университет им. Н.И.Лобачевского 2 ООО «Радио Гигабит»

Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

Embed Size (px)

DESCRIPTION

Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad. А.А. Шевченко 1, 2 , Р.О. Масленников 2 , А.А. Мальцев 1 , М.В. Пантелеев 1, 2 , А.Ф. Клюев 1, 2 , А.Г. Ветчинкин 1, 2. 1 Нижегородский государственный университет им. Н.И.Лобачевского. - PowerPoint PPT Presentation

Citation preview

Page 1: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

А.А. Шевченко1, 2, Р.О. Масленников 2, А.А. Мальцев1, М.В. Пантелеев1, 2, А.Ф. Клюев1, 2, А.Г. Ветчинкин1, 2

1 Нижегородский государственный университетим. Н.И.Лобачевского

2 ООО «Радио Гигабит»

Page 2: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

Содержание

[2]

• Вступление• Спецификация рассматриваемого LPDC кода• Описание алгоритмов декодирования• Обзор аппаратных архитектур декодера• Анализ аппаратной эффективности

рассматриваемых архитектур декодера• Заключение

Page 3: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

Вступление

[3]

• Коды с малой плотностью проверок на четность (Low Density Parity Check - LDPC) широко распространены в современных беспроводных системах связи - IEEE 802.11ad, 2nd Gen. DVB, IEEE 802.3an

• Преимущество – высокая корректирующая способность кода и доступность высокопроизводительной аппаратной реализации с пропускной способность несколько Гбит/с

• Относительный недостаток – в общем для кода в общем случае ограниченное число доступных вариантов аппаратных архитектур декодера

• Решение – структурированные LDPC коды имеющие промежуточные решения аппаратных архитектур декодера

Page 4: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[4]

Введение в LDPC коды

• Определяются проверочной матрицей H размером M×N обладающей свойством разреженности

• Структура LDPC кода представляется в виде графа Таннераo Биты кодового слова - кодовые вершины (узлы) (VNm)o Проверочные уравнения – проверочные вершины (узлы)

(CNm)o Ненулевые элементы матрицы Н – ребра между

вершинами VN0 VN1 VN2 VN3 VN4 VN5 VN6 VN7

CN0 CN1 CN2 CN3

01011001

11100100

00100111

10011010

H

Page 5: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[5]

Спецификация LDPC кода стандарта IEEE 802.11ad

• Квази-циклический LDPC код• Макроматрица 8×16 с размером элементарной

матрицы 42×42• Результирующий размер матрицы H – 336 × 672• Длина кодового слова - 672 бита• Скорость кода - ½• Слоистая структура проверочной матрицы - 4 слоя

40 38

34 35

36 31

27 18

35 41

29 0

31 23

22 34

13 5

27 30

7 34

12 20

40 39

4

21 20

31 14

22

18

2

10 41

15 6

1

28 3

27

12

4

28

28

0 13

13 22 24

23

Слой 1

Слой 3

Слой 2

Слой 4

Page 6: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[6]

Алгоритм декодирования Belief Propagation

• Наиболее распространенный алгоритм декодирования - Belief-Propagation (BP) Использует логарифмические метрик отношения

правдоподобия для каждого бита (LLR) кодового слова Каждый узел графа Таннера рассматривается как

независимый процессор LLR бит итеративно обновляются каждым Кодовым

узлом на основе информации от других Кодовых узлов Возможность раннего завершения декодирования на

основе проверки синдромов В этом случае выполнение всех Nmax итераций не

требуется

Page 7: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[7]

Модифицированный алгоритм декодирования

• Рассматриваемый код может быть декодирован модификацией BP алгоритма называемой Layered Belief-Propagation (LBP) Требуется свойство слоистости H матрицы Одна итерация BP алгоритма разбивается на

несколько подитераций Обновление LLR бит производится каждую

подитерацию – в 4 раза чаще Быстрее сходимость алгоритма декодирования

Улучшается корректирующая способность и уменьшается среднее число итераций декодирования для заданного кода

Page 8: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[8]

Полностью параллельная архитектура декодера

• Доступен для любого LDPC кода

• Напрямую реализует BP алгоритм – каждый узел соответствует аппаратному блоку

• Одна итерация алгоритма выполняется за один такт

• Преимущества Наибольшая пропускная

способность и наименьшая задержка на декодирование

• Недостатки Наибольшее количество ресурсов

и затруднительность трассировки

Check Node 1

Check Node 2

Check Node MZ

...

VariableNode 1

VariableNode 2

VariableNode NZ

VariableNode NZ-1

...

q1,1

q2,2

qNZ-1,1

qNZ,1

qNZ,MZ

r2,2

r1,1

rNZ,MZ

r1,NZ-1

...

672 аппаратных кодовых узла 336 аппаратных проверочных узлов

4368 соединений

Page 9: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[9]

Слоистая архитектура декодера

Check Node 1

VariableNode 1

VariableNode 2

VariableNode NZ

VariableNode NZ-1

...

q1,1

q2,2

rZ,NZ

Inte

rcon

necti

on

Check Node Z

Inve

rse

Inte

rcon

necti

on

R-FIFO

R-FIFO

R-FIFO

R-FIFO

... ...

Messages Delay Registers

qNZ-1,Z-1

qNZ,1

rZ,NZ-1

rZ,2

rZ,1

Variable to CheckNode

Check to Variable

Node

• Реализует LBP алгоритм – требует свойства слоистости

• Переиспользует аппаратные проверочные узлы между подитерациями

• Упрощается аппаратная архитектура кодовых узлов

• Одна подитерация выполняется за один такт – требуется 4 такта для выполнения одной итерации

672 упрощенных кодовых узлов

84 битовых узлов 2 переконфигурируемых

672-на-672 коммутатора

672 линии задержки

Page 10: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[10]

Последовательно-параллельная архитектура

Perm

utat

or

...

Check Node 1

Check Node Z

Non

-Per

mut

ator

Variable to Check Node Permutatior

Check to Variable Node

Inverse Permutatior

q1,m(k) qn,1(k) r1,n(k)

...

R-Message RAM

Variable Node 1

Variable Node Z

Lambda RAM

rz,m(k)

r1,m(k)

r1,m(k-1)

rz,m(k-1)

)(1p

)( pz)1( p

z

)1(1

p

qz,m(k) qn,z(k) rz,n(k)

• Использует квазициклическое свойство кода

• Разбивает одну итерацию LBP алгоритма на Nne подитераций – 52 такта на выполнение одной итерации

• Последовательно одновременно обновляются Z кодовых и проверочных узлов

• Сообщения распределяются с помощью Z-на-Z коммутатора, управляемого значением циклического сдвига

42 кодовых узла 42 проверочных узла

2 переконфигурируемых 42-на-42 коммутатора

сообщений

Page 11: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[11]

Сравнительный анализ архитектур декодера 1/2

• Пропускная способность аппаратного LDPC декодера:

• Niter выбирается как среднее число итераций для рабочего значения отношения сигнал-шум

• Используемая аппаратная платформа – ПЛИС Xilinx Kintex7 XC7K325T (speed grade -2)

• Единицы измерения аппаратных ресурсов - Slice LUTs и Slice registers

• Аппаратная эффективность декодера – отношение пропускной способности декодера к числу задействованных Slice LUT (1 Мбит/с к 1000 LUT)

SN iter

LRfT

f - частота тактирования блока,

L – длина кодового слова в битах, R – скорость кода, Niter – число итераций декодирования

S – число тактов выполнения одной итерации

Page 12: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[12]

Сравнительный анализ архитектур декодера 1/2

Полностью параллельная Наибольшая пропускная способность - 6.5 Гбит/с Лучшая аппаратная эффективность на 1 Мбит/с пропускной способности

Слоистая архитектура2.08 Гбит/с пропускной способности – результат переиспользования проверочных узлов и лучшей сходимостиНа 42% ниже аппаратная эффективность

Последовательно-параллельная архитектура Самая компактная аппаратная реализация -11% используемых ресурсов от полностью параллельного случаяРезультирующая пропускная способность - 159 Мбит/с

Fully parallel Layered Serial-

ParallelЧисло тактов одной

итерации декодирования, S

1 4 52

Число итераций декодирования, Niter

5.1 4.1 4.1

Пропускная способность, Мбит/с 6588 2064 159

LUTs, абсолютное 116779 63424 12814LUTs, относительное

% 57.3 31.1 5.7

Число регистров, абсолютное 16412 18975 3394

Число регистров, относительное % 4 4 0.8

Аппаратная эффективность,

Mbit/s/1K LUT56.4 32.5 12.4

Частота тактирования цифрового блока декодера единая для всех архитектур и равна

100 МГц

Page 13: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[13]

Заключение

• Представлены результаты для трех аппаратных реализаций декодера LDPC кода стандарта IEEE 802.11ad

• Полностью параллельная архитектура – рекомендуется для задач требующих максимальную пропускную способность и минимальную задержку на декодирование

• Слоистая архитектура – является промежуточным решением между последовательно-параллельным и полностью параллельным вариантами

• Последовательно-параллельная архитектура – является платформой LDPC декодера для систем с относительно низкой пропускной способностью, но значительными аппаратными ограничениями

• Использование малого числа ресурсов позволяет увеличить пропускную способность за счет параллельного использования нескольких декодеров

Page 14: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[14]

Спасибо за внимание!

Page 15: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[15]

Описание алгоритма Belief Propagation1/2

• В рамках одной итерации алгоритма последовательно обновляются проверочные и кодовые узлыo Обновление проверочных узлов

o Обновление кодовых узлов

r1,n(k)

VN1 VN2 VN3 VN4 VN5

CN1 CN2 CN3 CN4

q1,m(k)

VN1 VN2 VN3 VN4 VN5

CN1 CN2 CN3 CN4

mMjnj

prnm

n

krnxLkq\,, )()()(

Проверочный узел CNm формирует сообщение rm,n(k) каждому смежному с ним n-ому кодовому узлу VNn согласно:

qj,m(k-1) – сообщение от кодового узла j к проверочному узлу m на (k-1)-ой итерации, Nm –множество индексов кодовых узлов смежных с проверочным CNm

Кодовый узел VNn обрабатывает входные сообщения от смежных проверочных узлов, вычисляя сообщение для проверочного узла CNm

Mn – множество индексов проверочных узлов смежных с кодовым VNn

nNjmjmj

nNjnm

mm

kqsignkqkr\

,,\

, )1()1(min)(

Page 16: Сравнительный анализ аппаратных архитектур декодера LDPC кодов для систем радиосвязи IEEE 802.11ad

[16]

Описание алгоритма Belief Propagation2/2

• Пересчет LLR бит кодового слова производится на каждой итерации на основе сообщений от проверочных узлов

• Обновленные метрики бит используются для получения «жесткого» решения для каждого бита кодового слова, используемого для вычисления синдрома ошибок

• Алгоритм завершает работу, если значение синдрома ошибки s равно нулевому вектору или при выполнении алгоритмом максимального количества итераций Kmax

mNm

nmnpr

n krxLk )()()( ,Λn(k) - LLR of n-th bit of the decoded codeword at k-th iteration

cHs ˆ

0,1

0,0ˆ

n

nn если

еслиc