comm.GMSKTimingSynchronizer

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

Описание

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

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

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

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

Примечание

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

Конструкция

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

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

Свойства

SamplesPerSymbol

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

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

ErrorUpdateGain

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

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

ResetInputPort

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

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

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

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

ResetCondition

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

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

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

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

Методы

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

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

reset

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

Примеры

свернуть все

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

gmskMod = comm.GMSKModulator('BitInput', true, ...
    'SamplesPerSymbol', 14);
timingOffset = 0.2;
varDelay = dsp.VariableFractionalDelay;
gmskTimingSync = comm.GMSKTimingSynchronizer('SamplesPerSymbol', 14, ...
    'ErrorUpdateGain', 0.05);

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

phEst = zeros(50,1);
for i = 1:50
    data = randi([0 1],100,1); % Generate data
    modData = gmskMod(data);   % Modulate data
    
    % Apply timing offset error
    impairedData = varDelay(modData,timingOffset*14);
    % Perform timing phase recovery
    [~,phase] = gmskTimingSync(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