Декодер Хэмминга

Декодируйте Код Хемминга, чтобы восстановить бинарные векторные данные

Библиотека

Блокируйте подбиблиотеку Выявления ошибок и Исправления

Описание

Блок Hamming Decoder восстанавливает вектор двоичного сообщения с двоичного файла вектор кодовой комбинации Хэмминга. Для соответствующего декодирования значения параметров в этом блоке должны совпадать с теми в соответствующем блоке Encoder Хэмминга.

Если Код Хемминга имеет длину сообщения K и длина кодовой комбинации N, то N должен иметь форму 2M-1 для некоторого целочисленного M, больше, чем или равный 3. Кроме того, K должен равняться N-M.

Этот блок принимает на вход сигнал в виде вектора - столбца или скалярной величины длины N. Выходной сигнал является вектор-столбцом длины K.

Схема кодирования использует элементы конечного поля GF (2M). Можно или задать примитивный полином, который должен использовать алгоритм, или можно полагаться на настройку по умолчанию:

  • Чтобы использовать примитивный полином по умолчанию, просто введите N и K как первые и вторые диалоговые параметры, соответственно. Алгоритм использует gfprimdf(M) в качестве примитивного полинома для GF (2M).

  • Чтобы задать примитивный полином, введите N как первый параметр и бинарный вектор как второй параметр. Вектор представляет примитивный полином путем листинга его коэффициентов в порядке возрастающих экспонент. Можно создать примитивные полиномы с помощью функции gfprimfd Communications Toolbox™.

  • Кроме того, можно задать примитивный полином как вектор символов, например, 'D^3 + D + 1'.

Для получения информации о типах данных, которые поддерживает каждый порт блока см. таблицу Supported Data Type на этой странице.

Параметры

Codeword length N

N длины кодовой комбинации, который является также длиной входного вектора.

Message length K, or M-degree primitive polynomial

Длина сообщения, которая является также длиной входного вектора или бинарным вектором, который представляет примитивный полином для GF (2M) или полиномиальный вектор символов.

Поддерживаемый тип данных

ПортПоддерживаемые типы данных
\in
  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Булевская переменная

  • 8-, 16-, и 32-битные целые числа со знаком

  • 8-, 16-, и 32-битное беззнаковое целое

  • Фиксированная точка

  • Плавающая точка двойной точности

  • Плавающая точка с одинарной точностью

  • Булевская переменная

  • 8-, 16-, и 32-битные целые числа со знаком

  • 8-, 16-, и 32-битное беззнаковое целое

  • Фиксированная точка

Парный блок

Энкодер Хэмминга

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

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

Смотрите также

Блоки

Функции

Представлено до R2006a