comm.DPSKDemodulator

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

Описание

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

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

  1. Определите и настройте объект модулятора DPSK. См. «Конструкция».

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

Примечание

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

Конструкция

H = comm.DPSKDemodulator создает демодулятор Системного объекта, H. Этот объект демодулирует входной сигнал с помощью M-арного метода дифференциальной фазовой манипуляции (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 свойство true, logical тип данных становится допустимой опцией.

Методы

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

Разрешить изменение значения свойства системного объекта

reset

Сброс внутренних состояний Системного объекта

Примеры

свернуть все

Создайте пару модулятора и демодулятора 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