comm.PAMDemodulator

(Не рекомендуемый), Демодулируют использующий M-арный метод PAM

comm.PAMDemodulator не рекомендуется. Используйте pamdemod вместо этого.

Описание

PAMDemodulator объект демодулирует сигнал, который модулировался с помощью M-арной импульсной амплитудной модуляции. Вход представляет собой репрезентацию модулированного сигнала.

Чтобы демодулировать сигнал, который модулировался с помощью M-арной импульсной амплитудной модуляции:

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

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

Примечание

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

Конструкция

H = comm.PAMDemodulator создает Системный объект демодулятора, H. Этот объект демодулирует входной сигнал с помощью M-арной импульсной амплитудной модуляции (M-PAM) метод.

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

H = comm.PAMDemodulator(M,Name,Value) создает объект демодулятора M-PAM, H. Этот объект имеет ModulationOrder набор свойств к M, и другой заданный набор свойств к заданным значениям.

Свойства

ModulationOrder

Число точек в сигнальном созвездии

Задайте число точек в сигнальном созвездии как положительное, значение целочисленного скаляра. Значением по умолчанию является 4. Когда вы устанавливаете BitOutput свойство к false, это значение должно быть ровным. Когда вы устанавливаете BitOutput свойство к true, это значение требует целочисленной степени двойки.

BitOutput

Выходные данные как биты

Задайте, состоит ли выход из групп битов или целочисленных значений символа. Значением по умолчанию является false.

Когда вы устанавливаете это свойство на true step метод выводит вектор-столбец битных значений с длиной, равной log2 (ModulationOrder) времена количество демодулируемых символов.

Когда вы устанавливаете это свойство на false, step метод выводит вектор-столбец с длиной, равной вектору входных данных. Это значение содержит целочисленные значения символа между 0 и ModulationOrder–1.

SymbolMapping

Кодирование созвездия

Задайте, как объект сопоставляет целое число или группу log2 (ModulationOrder) биты к соответствующему символу как один из Binary | Gray. Значением по умолчанию является Gray.

Когда вы устанавливаете это свойство на Gray, объект использует серо-закодированное сигнальное созвездие.

Когда вы устанавливаете это свойство на Binary, целочисленный m, между 0m(ModulationOrder– 1) карты к комплексному числу 2m-ModulationOrder+1.

NormalizationMethod

Метод нормализации созвездия

Укажите, что метод раньше нормировал сигнальное созвездие как один из Minimum distance between symbols | Average power | Peak power. Значением по умолчанию является Minimum distance between symbols.

MinimumDistance

Минимальное расстояние между символами

Задайте расстояние между двумя самыми близкими точками созвездия как положительное, действительное значение числового скаляра. Значением по умолчанию является 2. Это свойство применяется, когда вы устанавливаете NormalizationMethod свойство к Minimum distance between symbols.

AveragePower

Средняя степень созвездия

Задайте среднюю степень символов в созвездии как положительное, действительное значение числового скаляра. Значением по умолчанию является 1. Это свойство применяется, когда вы устанавливаете NormalizationMethod свойство к Average power.

PeakPower

Пиковая мощность созвездия

Задайте максимальную мощность символов в созвездии как положительное, действительное значение числового скаляра. Значением по умолчанию является 1. Это свойство применяется, когда вы устанавливаете NormalizationMethod свойство к Peak power.

OutputDataType

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

Задайте тип выходных данных как один из Full precision | Smallest unsigned integer | double | single | int8 | uint8 | int16 | uint16 | int32 | uint32. Значением по умолчанию является Full precision.

Когда вы устанавливаете это свойство на Full precision, и тип входных данных одинарный, или двойная точность, выходные данные имеют совпадающий тип данных тот из входа.

Когда входной сигнал является целочисленным типом данных, у вас должна быть пользовательская лицензия Fixed-Point Designer™, чтобы использовать это свойство в Smallest unsigned integer или Full precision режим.

Когда входные данные имеют фиксированную точку, тип выходных данных ведет себя, как будто вы установили OutputDataType свойство к Smallest unsigned integer.

Когда вы устанавливаете BitOutput свойство к true, затем logical тип данных становится допустимой опцией.

 Свойства фиксированной точки

Методы

созвездие(Не рекомендуемый), Вычисляют или строят идеальное сигнальное созвездие
шаг(Не рекомендуемый), Демодулируют использующий M-арный метод PAM
Характерный для всех системных объектов
release

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

Примеры

Модулируйте и демодулируйте сигнал с помощью модуляции с 16 PAM.

    hMod = comm.PAMModulator(16);
    hAWGN = comm.AWGNChannel('NoiseMethod', ...
                    'Signal to noise ratio (SNR)', ...
                    'SNR',20, 'SignalPower', 85);
    hDemod = comm.PAMDemodulator(16);
    %Create an error rate calculator
    hError = comm.ErrorRate;
    for counter = 1:100
      % Transmit a 50-symbol frame
      data = randi([0 hMod.ModulationOrder-1],50,1);
      modSignal = step(hMod, data);
      noisySignal = step(hAWGN, modSignal);
      receivedData = step(hDemod, noisySignal);
      errorStats = step(hError, data, receivedData);
    end
    fprintf('Error rate = %f\nNumber of errors = %d\n', ...
      errorStats(1), errorStats(2))

Вопросы совместимости

comm.PAMDemodulator не рекомендуется

comm.PAMDEmodulator не рекомендуется. Используйте pamdemod вместо этого.

n = 10000; % Number of symbols to process
M = 8; % Modulation order
x = randi([0 M-1],n,1); % Create message signal.

%% Using PAM modulation and demodulation system objects
pammodObj = comm.PAMModulator(M);
pamdemodObj = comm.PAMDemodulator(M);
yOld = pammodObj(x); % Modulate.
% ... channel filtering ...
zOld = pamdemodObj(complex(y)); % Demodulate.

%% Using PAM modulation and demodulation functions
yNew = pammod(x,M); % Modulate.
% ... channel filtering ...
zNew = pamdemod(y,M); % Demodulate.

Больше о

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

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока M-PAM Demodulator Baseband. Свойства объектов соответствуют параметрам блоков.

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

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

|

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