Convolutional Encoder

Закодируйте биты данных, используя свертку кодирования - оптимизировано для генерации HDL-кода

  • Библиотека:
  • Беспроводной HDL Toolbox/Обнаружение и коррекция ошибок

  • Convolutional Encoder block

Описание

Блок Convolutional Encoder кодирует биты данных, используя свертку кодирования. Блок поддерживает скорости кода от 1/2 до 1/7 и длины ограничений от 3 до 9, включая как рекурсивные, так и нерекурсивные полиномы. Блок обеспечивает архитектуру, подходящую для генерации HDL-кода и аппаратного развертывания.

Блок работает в трех режимах: непрерывный с опциональным портом сброса, завершенный и усеченный с опциональными портами начального состояния и конечного состояния. В Continuous блок принимает биты данных вместе с действительным сигналом и выводит закодированные биты с действительным сигналом. В Terminated и Truncated modes, блок принимает биты данных, наряду со samplecontrol шина и выводит закодированные биты с samplecontrol шина.

Блок поддерживает стандарты связи, такие как Wi-Fi (802.11a/b/g/n/ac), цифровая спутниковая связь, цифровая видеотрансляция (DVB), 3GPP2, IEEE 802.16, HIPERLAN и другие технологии. Можно использовать этот блок для реализации других кодов каналов, таких как турбокоды, которые используются в стандартах LTE.

Эта форма волны показывает закодированный выход блока в Terminated mode, когда Constraint length параметров блоков установлено в 7, Code generator к [133 171], и Feedback connection к 0. Входная и выходная шины ctrl расширены, чтобы показать свои сигналы управления.

Задержка блока - три такта, поэтому блок возвращает первые закодированные выходные данные после трех тактов. В Terminated mode, после окончания системы координат, блок сбрасывает закодированные состояния во все состояния нулей путем добавления (Constraint length - 1) бит. Таким образом, форма волны показывает зазор системы координат шести (Constraint length - 1) тактовых циклов между концом системы координат (ctrlIn.endIn) и началом следующего < reservedrangesplaceholder0 > системы координат.

Порты

Вход

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

Входные данные, заданные как Boolean или ufix1.

Типы данных: Boolean | fixed point

Управляющий сигнал, который указывает, действительны ли входные данные. Когда это значение 1 (true), блок принимает значения на data входном порте. Когда это значение 0 (false), блок игнорирует значения на data входном порте.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Continuous.

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

Удаление внутренних состояний, заданное как Boolean скаляр. Когда это значение 1 (true), блок останавливает текущее вычисление и очищает все состояния энкодера.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Continuous и выберите параметр Enable reset input port.

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

Сигналы управления, сопровождающие поток дискретизации, заданные как samplecontrol bus. Шина включает в себя start, end, и valid управляющие сигналы, которые указывают контуры системы координат и валидность входных выборок.

  • start - Указывает начало входного кадра.

  • end - Указывает конец входного кадра.

  • valid - Указывает, что данные входного data порта действительны.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Truncated или Terminated.

Типы данных: bus

Начальное состояние блока в каждом начале системы координат, заданное как fixdt(0,constraint length -1,0). Вход состояние - это количество двоичных битов в регистре сдвига в систему координат начале блока, которое считывается с большинства значащих бит (MSB) на наименее значащий бит (LSB).

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Truncated и выберите параметр Enable initial state input port.

Типы данных: single | double | fixed point

Выход

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

Выходные данные, возвращенные как 1-by n вектор-столбец, если скорость кода 1/n. Значение n находится в областях значений от 2 до 7.

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

Управляющий сигнал, который указывает, действительны ли данные от data выходного порта. Когда это значение 1 (true), блок возвращает действительные данные по data выходному порту. Когда valid false (0), значения data выходного порта недопустимы.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Continuous.

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

Управляющие сигналы, сопровождающие поток дискретизации, возвращаются как samplecontrol bus. Шина включает в себя start, end, и valid управляющие сигналы, которые указывают контуры системы координат и валидность выборок.

  • start - Указывает на начало выходной системы координат.

  • end - Указывает конец выходной системы координат.

  • valid - Указывает, что данные порта выхода data действительны.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Truncated или Terminated.

Типы данных: bus

Окончательное состояние системы координат на каждом конце системы координат, возвращаемое следующим fixdt(0,constraint length -1,0). Конечное состояние - это количество двоичных битов в сдвиг регистре на систему координат конце блока, которое считывается с наиболее значимого бита (MSB) на наименее значимый бит (LSB).

Блок возвращает то же, что и ISt тип данных.

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Truncated и выберите параметр Enable final state output port.

Типы данных: single | double | fixed point

Параметры

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

Главный

Длина ограничения блока, заданная в виде целого числа в области значений [3, 9].

Полином генерации кода, заданный как 1-бай- n вектор октальных значений, где n - длина полинома в диапазоне от 2 до 7.

Полином обратной связи, заданный как скалярное октальное число. Если соединение обратной связи 0, подключение обратной связи не включено.

Чтобы включить подключение с обратной связью, задайте восьмеричное значение, двоичное представление которого должно быть K-битным числом с MSB 1, где K является Constraint length. Для получения дополнительной информации о том, как создать полином обратной связи, см. «Сверточные коды».

Режим работы, заданный как один из следующих режимов:

  • Continuous - В этом режиме блок начинается со всех состояний нулей и сохраняет состояния энкодера в конце каждого входа для использования со следующим входом.

  • Terminated - В этом режиме блок рассматривает каждый входной кадр независимо. Состояния энкодера блока сбрасываются в состояние «все нули» в конце каждой системы координат путем добавления бит.

    Примечание

    Этот режим требует минимальной погрешности системы координат Constraint length-1 циклов между системами координат. Если достаточный зазор системы координат не предусмотрен, блок останавливает обработку старой системы координат и начинает обработку новой системы координат.

  • Truncated - В этом режиме блок рассматривает каждый входной кадр независимо. Состояния энкодера сбрасываются в состояние «все нули» в начале каждого входа.

Порты управления

Выберите этот параметр, чтобы включить reset порт. Когда reset 1 (true), блок сбрасывает состояние энкодера в следующем такте.

Зависимости

Чтобы включить этот параметр, установите параметр Operation mode равным Continuous.

Выберите этот параметр, чтобы включить ISt порт.

Зависимости

Чтобы включить этот параметр, установите параметр Operation mode равным Truncated.

Выберите этот параметр, чтобы включить FSt порт.

Зависимости

Чтобы включить этот параметр, установите параметр Operation mode равным Truncated.

Алгоритмы

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

Полиномиальное описание блока Convolutional Encoder описывает связи среди регистров сдвига и сумматоров по модулю 2. Этот рисунок показывает две операции кодирования выборки, одна без обратной связи, которая имеет один вход, два выхода и два регистра сдвига, а другая с обратной связью, которая имеет один вход, два выхода и два регистра сдвига.

b(n) представляет поток битов входных данных и b(n-1) и b(n-2) представлять 2-битный регистр сдвига энкодера. Out1(n) и Out2(n) представляют 2-битный выход. Из этого рисунка можно вычислить параметры маски блоков на основе концепций сверточных кодов. Для получения дополнительной информации о концепциях кодов свертки см. «Сверточные коды». Итак, исходя из соединений, представленных на рисунке, Constraint length 3, Code generator значение [5 7]. Значение Feedback connection 0 для энкодера без обратной связи и 6 для энкодера с обратной связью.

Ссылки

[1] Лин, Шу и Дэниел Дж. Костелло. Error Control Coding By Shu Lin, Daniel J. Costello, Second Edition. Верхняя Седл-Ривер, Нью-Джерси: Prentice Hall, 2004.

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

.

См. также

Блоки

Введенный в R2019b
Для просмотра документации необходимо авторизоваться на сайте