LDPC Encoder

Закодируйте двоичный код с низкой плотностью проверки четности (LDPC)

  • Библиотека:
  • Communications Toolbox/Обнаружение и исправление ошибок/Блокировка

  • LDPC Encoder block

Описание

Блок Энкодер применяет кодирование LDPC к двоичному входному сообщению. Коды LDPC являются линейными кодами системы управления ошибками с разреженными матрицами проверки четности и длинными длинами блоков, которые могут достичь эффективности около предела Шеннона.

Входные и выходные сигналы являются сигналами дискретного времени. Отношение времени выходной выборки ко времени входной выборки K/N, где:

  • N - длина принимаемого сигнала и должна находиться в области значений (0, 231).

  • K - длина незакодированного сообщения и должна быть меньше N.

Порты

Вход

расширить все

Входное сообщение, заданное как вектор-на-1 K, содержащий двоичные элементы. K - длина незакодированного сообщения.

Типы данных: double | Boolean

Выход

расширить все

Кодовое слово LDPC, возвращаемое как вектор-столбец N -by-1. N - количество бит в кодовом слове LDPC. Сигнал выхода наследует свой тип данных от входного сигнала. Выход кодового слова LDPC является решением уравнения проверки четности. Входное сообщение содержит первые K бита выходного кодового слова LDPC, и проверка четности содержит оставшиеся (N- K) биты.

Типы данных: double | Boolean

Параметры

расширить все

Матрица проверки четности, заданная как разреженная (N - K) -by N двоичная матрица. N - длина выходного кодового слова LDPC и должна находиться в области значений (0, 231). K - длина незакодированного сообщения и должна быть меньше N. Последние (N - K) столбцы в матрице проверки четности должны быть обратимой матрицей в поле порядка 2 Галуа, gf(2).

Можно также задать матрицу проверки четности как двухколоночную нештатную индексную матрицу, I, который определяет индексы строка и столбец 1s в матрице проверки четности таким образом, что sparse(I(:,1),I(:,2),1).

Этот параметр принимает типы числовых данных. Когда вы устанавливаете этот параметр в разреженную двоичную матрицу, этот параметр также принимает Boolean тип данных.

Значение по умолчанию использует dvbs2ldpc функция для конфигурирования разреженной матрицы проверки четности для кодирования LDPC с половинной скоростью, как указано в DVB-S.2 стандарте.

Примечание

  • Когда последние (N - K) столбцы матрицы проверки четности образуют треугольную матрицу, выполняется прямая или обратная подстановка, чтобы решить уравнение проверки четности.

  • Когда последние (N - K) столбцы матрицы проверки четности не образуют треугольную матрицу, выполняется инверсия матрицы, чтобы решить уравнение проверки четности. Если большая матрица должна быть инвертирована, инициализация или обновление занимает больше времени.

Пример: dvbs2ldpc(R,'indices') конфигурирует матрицу индексов для стандарта DVB-S.2, где R - скорость кода, и 'indices' задает выход dvbs2ldpc как двухколоночная матрица двойной точности, которая задает индексы строка и столбец 1s в матрице проверки четности.

Типы данных: double | Boolean

Характеристики блоков

Типы данных

Boolean | double | integer | single

Многомерные сигналы

no

Сигналы переменного размера

no

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.

См. также

Блоки

Объекты

Функции