mskmod

Минимальная модуляция манипулирования сдвига

Синтаксис

y = mskmod(x,nsamp)
y = mskmod(x,nsamp,dataenc)
y = mskmod(x,nsamp,dataenc,ini_phase)
[y,phaseout] = mskmod(...)

Описание

y = mskmod(x,nsamp) выводит комплексный конверт, y модуляции сообщения сигнализирует о x, использующем дифференцированно закодированную модуляцию минимального манипулирования сдвига (MSK). Элементы x должны быть 0 или 1. nsamp обозначает количество выборок на символ в y и должен быть положительным целым числом. Начальная фаза модулятора MSK 0. Если x является матрицей с несколькими строками и столбцами, функция обрабатывает столбцы как независимые каналы и обрабатывает их независимо.

y = mskmod(x,nsamp,dataenc) задает метод кодирования данных для MSK. dataenc может быть или 'diff' для дифференцированно закодированного MSK или 'nondiff' для недифференцированно закодированного MSK.

y = mskmod(x,nsamp,dataenc,ini_phase) задает начальную фазу модулятора MSK. ini_phase является вектором - строкой, длина которого является количеством каналов в y и чьи значения являются целочисленными множителями pi/2. Чтобы постараться не заменять значение по умолчанию dataenc, установите dataenc на [].

[y,phaseout] = mskmod(...) возвращает итоговую фазу y. Это полезно для поддержания непрерывности фазы, когда вы модулируете будущий поток битов с дифференцированно закодированным MSK. phaseout имеет те же размерности как вход ini_phase и принимает значения 0, pi/2, pi и 3*pi/2.

Примеры

свернуть все

Сгенерируйте случайный двоичный сигнал.

x = randi([0 1],100,1);

MSK модулирует данные.

y = mskmod(x,8,[],pi/2);

Передайте сигнал через канал AWGN. Отобразите индикаторную диаграмму.

z = awgn(y,30,'measured');
eyediagram(z,16);

Ссылки

[1] Pasupathy, Subbarayan, “Минимальное Манипулирование Сдвига: Спектрально Эффективная Модуляция”, Коммуникационный Журнал IEEE, июль 1979, стр 14–22.

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

| | |

Представлено до R2006a