коммуникация. 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