Puncturer

Проколы данных в соответствии с вектором прокола

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

  • Puncturer block

Описание

Блок Puncturer пунктирует входные данные на основе заданного вектора прокола. Блок принимает вектор прокола либо от Input port или из Property блока и поддерживает скорости энкодера от 1/2 до 1/7. Он обеспечивает архитектуру, подходящую для генерации HDL-кода и оборудования развертывания.

Блок поддерживает Continuous и Frame mode операций и принимает как скаляр, так и вектор данные. В Continuous В режиме блок принимает входные данные и вектор прокола, наряду с управляющими сигналами, действительными и syncPunc, и выводит проколотые данные с действительным сигналом. В Frame mode, блок принимает входные данные и вектор прокола, наряду со samplecontrol шина и выходы проколотых данных с samplecontrol шина.

Блок поддерживает стандарты связи, такие как Wi-Fi (802 .11a/b/g/n/ac), цифровая спутниковая связь, цифровая видеотрансляция (DVB), Wi-Fi (IEEE 802 .11a/b/g/n/ac), WiMax (IEEE 802,16), IEEE 802,16,

Порты

Вход

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

Выборка входных данных, заданная в виде скаляра или вектора.

Если вход имеет тип вектора, размер входных данных должен совпадать с выбранным Encoder rate значения параметров.

Для примера, если Encoder rate 1/2размер входных данных должен быть 2 на 1.

Типы данных: Boolean | fixdt(0,1,0)

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

Зависимости

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

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

Вектор прокола, заданный как вектор-столбец двоичных значений. Длина вектора прокола должна быть интегралом, кратным n, где Encoder rate 1/n. Для скоростей энкодера 1/2, 1/3, 1/5 и 1/6 максимальная длина puncVector составляет 30, а для скоростей энкодера 1/4 и 1/7 максимальная длина puncVector составляет 28.

Можно изменить шаблон puncVector, но его длина должна оставаться постоянной. Если максимальная длина вектора прокола равна 10, блок поддерживает все длины вектора ниже 10.

Пример: Для скорости энкодера 1/2 и скорости его прокола 2/3, 3/4 и 5/6, соответствующие длины вектора 4, 6 и 10. Чтобы достичь этих нескольких скоростей, установите параметр Puncture vector source равным Input port. Чтобы поддержать самый большой размер вектора, длина вектора должна быть 10 для всех скоростей. Для скоростей 2/3 и 3/4 дополните puncVector вход нулями, чтобы создать вектор с 10 элементами. Вектор прокола для скорости 3/4 [1 1 0 1 1 0]'. Для длины вектора 10 используйте [0 0 0 0 1 1 0 1 1 0]' как входной puncVector.

Когда параметр Operation mode установлен в Continuousблок захватывает значение puncVector, когда и syncPunc, и входной valid сигналы порта 1 Правда.

Когда параметр Operation mode установлен в Frameблок захватывает значение puncVector, когда оба ctrl.start и ctrl.valid сигналы 1 Правда.

Зависимости

Чтобы включить этот порт, установите параметр Puncture vector source равным Input port.

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

Сигнал пунктирной синхронизации, заданный как Boolean скалярное значение. Этот вход является управляющим сигналом, который синхронизирует вход вектора прокола с входной выборкой. Когда и syncPunc, и valid 1 (true), блок выравнивает вектор прокола, чтобы начать проколы. Блок захватывает вектор из puncVector входного порта или из параметра Puncture vector.

Блок игнорирует значения puncVector сигнала syncPunc когда значение сигнала 0 (false).

Зависимости

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

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

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

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

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

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

Зависимости

Чтобы включить этот порт, установите параметр Operation mode равным Frame. В этом режиме блок синхронизирует вектор прокола, используя сигналы управления на входе samplecontrol шина.

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

Выход

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

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

Типы данных: Boolean | fixdt(0,1,0)

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

Зависимости

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

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

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

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

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

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

Зависимости

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

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

Параметры

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

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

  • Continuous - Позволяет вносить изменения в puncVector в любое время. Чтобы заставить блок захватить новый вектор прокола, установите параметр syncPunc на 1 Правда.

  • Frame - Позволяет изменять puncVector только в начале системы координат, обозначенного ctrl.start.

Выберите скорость энкодера для прокалывания данных.

Источник вектора прокола, заданный как:

  • Input port - Задайте вектор прокола, используя puncVector порт.

  • Property - Задайте вектор прокола, используя параметр Puncture vector.

Длина вектора прокола должна быть интегралом, кратным n, где Encoder rate 1/n. Для частот энкодера 1/2, 1/3, 1/5 и 1/6 максимальная длина вектора прокола составляет 30, а для частот энкодера 1/4 и 1/7 максимальная длина вектора прокола составляет 28.

Зависимости

Чтобы включить этот порт, установите параметр Puncture vector source равным Property.

Алгоритмы

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

Алгоритм прокола проверяет все n элементы массива вектора прокола с помощью Encoder rate 1/n, пока он не достигает ненулевой комбинации. Затем он прокалывает входные данные и предоставляет проколотые выходные данные.

Для примера, если Encoder rate 1/3 и вектор пункции следующий [0;0;0;1;0;1]блок проверяет каждые 3 элемента, пока не достигает ненулевой комбинации в векторе прокола, и затем прокалывает входные данные на основе типа входов (скаляр или вектор) и режимов работы (Continuous или Frame).

Ссылки

[1] Спецификации управления доступом к среде беспроводной локальной сети (MAC) и физического слоя (PHY). IEEE Стд 802.11™ - 2016 Часть 11.

[2] EN 300 421 V1.1.2 цифрового видеовещания (DVB); Структура системы координат, кодирование в канале и модуляция для спутниковых услуг 11/12 ГГц.

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

.

См. также

Блоки

Введенный в R2019b