exponenta event banner

Сверточный кодер

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

  • Библиотека:
  • Беспроводная панель инструментов HDL/обнаружение и исправление ошибок

  • Convolutional Encoder block

Описание

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

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

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

Эта форма сигнала показывает закодированный выходной сигнал блока в Terminated режим, если параметру блока «Длина ограничения» присвоено значение 7, Генератор кода для [133 171]и соединение обратной связи с 0. Входные и выходные шины ctrl расширяются для отображения их управляющих сигналов.

Задержка блока составляет три тактовых цикла, поэтому блок возвращает первые закодированные выходные данные после трех тактовых циклов. В Terminated после окончания кадра блок сбрасывает кодированные состояния во все нулевые состояния путем добавления битов (длина ограничения - 1). Таким образом, форма сигнала показывает зазор между кадрами шести (Длина ограничения - 1) тактовых циклов между концом кадра (startIn.endIn) и началом следующего кадра ctrlln.startIn.

Порты

Вход

развернуть все

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

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

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

Зависимости

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

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

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

Зависимости

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

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

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

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

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

  • valid - Указывает, что данные на порте входных данных являются допустимыми.

Зависимости

Чтобы включить этот порт, установите для параметра 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 на n, если кодовая скорость равна 1/n. Значение n находится в диапазоне от 2 до 7.

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

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

Зависимости

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

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

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

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

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

  • valid - Указывает, что данные порта выходных данных являются допустимыми.

Зависимости

Чтобы включить этот порт, установите для параметра 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 - длина ограничения. Дополнительные сведения о построении полинома обратной связи см. в разделе Сверточные коды.

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

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

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

    Примечание

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

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

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

Выберите этот параметр для активизации порта сброса. При сбросе 1 (true), блок сбрасывает состояние кодера в следующем такте.

Зависимости

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

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

Зависимости

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

Выберите этот параметр для активизации порта FSt.

Зависимости

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

Алгоритмы

развернуть все

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

b (n) представляет входной битовый поток данных, и b (n-1) и b (n-2) представляют 2-битный сдвиговый регистр кодера. Out1 (n) и Out2 (n) представляют 2-битный выход. На этом рисунке можно рассчитать параметры маски блока на основе понятий сверточных кодов. Дополнительные сведения о понятиях кодов свертки см. в разделе Коды свертки. Таким образом, на основе соединений, представленных на рисунке, длина ограничения равна3, значение генератора кода: [5 7]. Значение соединения обратной связи: 0 для кодера без обратной связи и 6 для кодера с соединением обратной связи.

Ссылки

[1] Лин, Шу и Дэниел Дж. Костелло. Код управления ошибками Шу Лин, Дэниел Дж. Костелло, второе издание. Река Верхнее Седло, Нью-Джерси: Прентис Холл, 2004.

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

.

См. также

Блоки

Представлен в R2019b