comm.MSKTimingSynchronizer

Восстановите фазу синхронизации символов с помощью метода нелинейности четвертого порядка

Описание

The MSKTimingSynchronizer объект восстанавливает фазу символа синхронизации входного сигнала с помощью способа нелинейности четвертого порядка. Этот объект реализует общий метод обратной связи без использования данных, который не зависит от восстановления фазы несущей. Этот способ требует предварительной компенсации смещения частоты несущей. Этот объект подходит для систем, которые используют модуляцию минимального сдвига полосы частот (MSK).

Для восстановления фазы символа синхронизации входного сигнала:

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

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

Примечание

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

Конструкция

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

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

Свойства

SamplesPerSymbol

Количество выборок, представляющих каждый символ

Задайте количество выборок, которые представляют каждый символ в входном сигнале как целочисленный скаляр, больше 1. Значение по умолчанию является 4.

ErrorUpdateGain

Ошибка при обновлении размера шага

Задайте размер шага для обновления последовательных оценок фазы синхронизации как положительное, действительное скалярное значение. Значение по умолчанию является 0.05. Обычно это число меньше 1/ SamplesPerSymbol, что соответствует медленно изменяющейся фазе синхронизации. Это свойство настраивается.

ResetInputPort

Включите вход сброса синхронизации

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

Когда вы устанавливаете это свойство на trueнеобходимо задать вход сброса на step способ.

Когда вход сброса является ненулевым значением, объект перезапускает процесс восстановления фазы синхронизации. Когда вы устанавливаете это свойство на falseобъект не перезапускается.

ResetCondition

Условие восстановления фазы синхронизации сброса

Задайте условия, чтобы сбросить процесс восстановления фазы синхронизации как один из Never | Every frame. Значение по умолчанию является Never.

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

Когда вы устанавливаете это свойство на Every frameвосстановление фазы синхронизации перезапускается в начале каждой системы координат данных. Таким образом, каждый раз, когда объект вызывает метод step. Это свойство применяется, когда вы устанавливаете ResetInputPort свойство к false.

Методы

шагВосстановите фазу синхронизации символов с помощью метода нелинейности четвертого порядка
Общий для всех системных объектов
release

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

reset

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

Примеры

свернуть все

Создайте модулятор MSK, переменную дробную задержку и Системные объекты синхронизатора MSK.

mskMod = comm.MSKModulator('BitInput',true,'SamplesPerSymbol',14);
timingOffset = 0.2;
varDelay = dsp.VariableFractionalDelay;
mskTimingSync = comm.MSKTimingSynchronizer('SamplesPerSymbol',14,'ErrorUpdateGain', 0.05);

Основной цикл обработки.

phEst = zeros(50,1);
for i = 1:50
    data = randi([0 1],100,1);    % Generate data
    modData = mskMod(data);       % Modulate data
    
    % Apply timing offset error.
    impairedData = varDelay(modData,timingOffset*14);
    % Perform timing phase recovery.
    [~,phase] = mskTimingSync(impairedData);
    phEst(i) = phase(1)/14;
end

Постройте график результатов.

plot(1:50,[0.2*ones(50,1) phEst]);
legend( 'Original','Estimated')
title('Original and Estimated timing phases');

Figure contains an axes. The axes with title Original and Estimated timing phases contains 2 objects of type line. These objects represent Original, Estimated.

Алгоритмы

Этот объект реализует алгоритм, входы и выходы, описанные на MSK-Type Signal Timing Recovery блочных страниц с описанием. Свойства объекта соответствуют параметрам блоков, кроме:

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

.

См. также

Введенный в R2012a