Минимальная демодуляция манипулирования сдвига
z = mskdemod(y,nsamp)
z = mskdemod(y,nsamp,dataenc
)
z = mskdemod(y,nsamp,dataenc
,ini_phase)
z = mskdemod(y,nsamp,dataenc
,ini_phase,ini_state)
[z,phaseout] = mskdemod(...)
[z,phaseout,stateout] = mskdemod(...)
z = mskdemod(y,nsamp)
демодулирует комплексный конверт y
сигнала с помощью дифференцированно закодированного метода минимального манипулирования сдвига (MSK). nsamp
обозначает количество выборок на символ и должен быть положительным целым числом. Начальная фаза демодулятора 0. Если y
является матрицей с несколькими строками и столбцами, функция обрабатывает столбцы как независимые каналы и обрабатывает их независимо.
z = mskdemod(y,nsamp,
задает метод кодирования данных для MSK. dataenc
)dataenc
может быть или 'diff'
для дифференцированно закодированного MSK или 'nondiff'
для недифференцированно закодированного MSK.
z = mskdemod(y,nsamp,
задает начальную фазу демодулятора. dataenc
,ini_phase)ini_phase
является вектором - строкой, длина которого является количеством каналов в y
и чьи значения являются целочисленными множителями pi/2
. Чтобы постараться не заменять значение по умолчанию dataenc
, установите dataenc
на []
.
z = mskdemod(y,nsamp,
задает начальное состояние демодулятора. dataenc
,ini_phase,ini_state)ini_state
содержит последнюю половину символа ранее полученного сигнала. ini_state
является nsamp
-by-C матрица, где C является количеством каналов в y
.
[z,phaseout] = mskdemod(...)
возвращает итоговую фазу y
, который важен для демодуляции будущего сигнала. Вывод phaseout
имеет те же размерности как вход ini_phase
и принимает значения 0
, pi/2
, pi
и 3*pi/2
.
[z,phaseout,stateout] = mskdemod(...)
возвращает итоговые значения nsamp
y
, который полезен для демодуляции первого символа будущего сигнала. stateout
имеет те же размерности как вход ini_state
.
[1] Pasupathy, Subbarayan, “Минимальное Манипулирование Сдвига: Спектрально Эффективная Модуляция”, Коммуникационный Журнал IEEE, июль 1979, стр 14–22.