коммуникация. MSKTimingSynchronizer

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

Описание

Объект 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, восстановление фазы синхронизации перезапускает в начале каждого кадра данных. Таким образом, каждый раз вызовы объектов метод шага. Это свойство применяется, когда вы устанавливаете свойство ResetInputPort на false.

Методы

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

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

Примеры

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

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

Алгоритмы

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

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

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

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