коммуникация. GeneralQAMTCMModulator

Convolutionally кодируют двоичные данные и карту с помощью произвольной совокупности QAM

Описание

Объект GeneralQAMTCMModulator реализует закодированную решеткой модуляцию (TCM) путем фактического кодирования сообщения двоичного входа. Объект затем сопоставляет результат с произвольным сигнальным созвездием. Списки свойств Сигнального созвездия сигнальное созвездие указывают в разделенном набором порядке.

Модулировать сигнал с помощью закодированного решеткой, общего квадратурного амплитудного модулятора:

  1. Задайте и настройте свой общий объект модулятора QAM TCM. Смотрите Конструкцию.

  2. Вызовите step, чтобы модулировать сигнал согласно свойствам comm.GeneralQAMTCMModulator. Поведение step характерно для каждого объекта в тулбоксе.

Примечание

При запуске в R2016b, вместо того, чтобы использовать метод step, чтобы выполнить операцию, заданную Системой object™, можно вызвать объект с аргументами, как будто это была функция. Например, y = step(obj,x) и y = obj(x) выполняют эквивалентные операции.

Конструкция

H = comm.GeneralQAMTCMModulator создает закодированную решеткой, общую квадратурную амплитуду (QAM TCM) Системный объект модулятора, H. Этот объект convolutionally кодирует сообщение двоичного входа и сопоставляет результат с помощью модуляции QAM с сигнальным созвездием, заданным в свойстве Constellation.

H = comm.GeneralQAMTCMModulator(Name,Value) создает общий Системный объект модулятора QAM TCM, H, с каждым заданным набором свойств к заданному значению. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

H = comm.GeneralQAMTCMModulator(TRELLIS,Name,Value) создает общий Системный объект модулятора QAM TCM, H. Этот объект имеет набор свойств TrellisStructure к TRELLIS и другой заданный набор свойств к заданным значениям.

Свойства

TrellisStructure

Структура решетки сверточного кода

Задайте решетку как структуру MATLAB®, которая содержит описание решетки сверточного кода. Используйте функцию istrellis, чтобы проверять, является ли структура допустимой структурой решетки. Значением по умолчанию является результат poly2trellis ([1 3], [1 0 0; 0 5 2]).

TerminationMethod

Метод завершения закодированного кадра

Задайте метод завершения как один из Continuous | Truncated | Terminated. Значением по умолчанию является Continuous.

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

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

Когда вы устанавливаете это свойство на Terminated, объект обрабатывает каждый входной вектор независимо. Для каждого входного вектора объект использует дополнительные биты, чтобы установить энкодер на все-нулевое состояние в конце вектора. Для уровня K/N код, метод step выводит вектор с длиной y=N×(L+S)K, где S = constraintLength –1. В случае нескольких продолжительностей ограничения, S = сумма (constraintLength (i) –1)). L представляет длину входа к методу step.

ResetInputPort

Включите вход сброса модулятора

Установите это свойство на true включать дополнительный вход к методу step. Значением по умолчанию является false. Когда этот дополнительный вход сброса является ненулевым значением, внутренними состояниями сброса энкодера к их начальным условиям. Это свойство применяется, когда вы устанавливаете свойство TerminationMethod на Continuous.

Constellation

Сигнальное созвездие

Задайте двойное - или комплексный вектор с одинарной точностью, который перечисляет точки в сигнальном созвездии, которые использовались, чтобы сопоставить convolutionally закодированные данные. Необходимо задать совокупность в разделенном набором порядке. См. документацию для блока General TCM Encoder для получения дополнительной информации о разделенном набором порядке. Длина вектора совокупности должна равняться количеству возможных вводимых символов к сверточному декодеру общего объекта демодулятора QAM TCM. Это соответствует 2N for уровень K/N сверточный код. Значение по умолчанию соответствует разделенному набором порядку для точек сигнального созвездия 8-PSK. Это значение выражается exp (2×π×j×[04261537]8).

OutputDataType

Тип данных вывода

Задайте тип выходных данных как один из double | single. Значением по умолчанию является double.

Методы

сбросСбросьте состояния общего объекта модулятора QAM TCM
шагConvolutionally кодируют двоичные данные и карту с помощью произвольной совокупности QAM
Характерный для всех системных объектов
release

Позвольте изменения значения свойства Системного объекта

Примеры

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

Модулируйте использование данных модуляция QAM TCM с произвольной совокупностью с 4 точками. Отобразите график рассеивания модулируемых данных.

Создайте двоичные данные.

data = randi([0 1],1000,1);

Используйте структуру решетки с генерацией полинома [171 133] и произвольная совокупность с 4 точками { ejπ/4, ejπ/2, ej3π/4, ej3π/2 }, чтобы выполнить модуляцию QAM TCM.

t = poly2trellis(7,[171 133]);
hMod = comm.GeneralQAMTCMModulator(t,...
    'Constellation',exp(pi*1i*[1 2 3 6]/4));

Модулируйте и отобразите данные на графике.

modData = step(hMod,data);
scatterplot(modData);

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока General TCM Encoder. Свойства объектов соответствуют параметрам блоков.

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

Представленный в R2012a