comm.DPSKDemodulator

Демодулируйте использующий M-арный метод DPSK

Описание

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

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

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

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

Примечание

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

Конструкция

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

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

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

Свойства

ModulationOrder

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

Задайте число точек в сигнальном созвездии как положительное, значение целочисленного скаляра. Значением по умолчанию является 8.

PhaseRotation

Дополнительный сдвиг фазы

Задайте дополнительную разность фаз между предыдущими и текущими модулируемыми символами в радианах как действительное скалярное значение. Значением по умолчанию является pi/8. Это значение соответствует разности фаз между предыдущими и текущими модулируемыми символами, когда вход является нулем.

BitOutput

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

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

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

SymbolMapping

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

Задайте, как объект сопоставляет целое число или группу log2 (ModulationOrder) биты к соответствующему символу как один из Binary | Gray. Значением по умолчанию является Gray. Когда вы устанавливаете это свойство на Gray, объект использует серо-закодированное сигнальное созвездие. Когда вы устанавливаете это свойство на Binary, входное целое число m, между (0m ModulationOrder– 1) карты к текущему символу. Это отображение использует exp (j×PhaseRotation + j×2×π×m/ModulationOrder)×(ранее модулируемый символ).

OutputDataType

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

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

Методы

сбросСбросьте состояния объекта демодулятора M-DPSK
шагДемодулируйте использующий M-арный метод DPSK
Характерный для всех системных объектов
release

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

Примеры

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

Создайте модулятор DPSK и пару демодулятора. Создайте объект канала AWGN, имеющий три бита за символ.

dpskmod = comm.DPSKModulator(8,pi/8,'BitInput',true);
dpskdemod = comm.DPSKDemodulator(8,pi/8,'BitOutput',true);
channel = comm.AWGNChannel('EbNo',10,'BitsPerSymbol',3);

Создайте калькулятор коэффициента ошибок. Установите ComputationDelay свойство к 1 составлять переходный процесс на один бит, вызванный дифференциальной модуляцией

errorRate = comm.ErrorRate('ComputationDelay',1);

Основные шаги цикла обработки:

  • Сгенерируйте 50 3-битных систем координат

  • 8-DPSK модулирует

  • Пройдите через канал AWGN

  • 8-DPSK демодулирует

  • Соберите ошибочные статистические данные

for counter = 1:100
    txData = randi([0 1],150,1);
    modSig = dpskmod(txData);
    rxSig = channel(modSig);
    rxData = dpskdemod(rxSig);
    errorStats = errorRate(txData,rxData);
end

Отобразите ошибочную статистику.

ber = errorStats(1)
ber = 0.0098
numErrors = errorStats(2)
numErrors = 147
numBits = errorStats(3)
numBits = 14999

Алгоритмы

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

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

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