ЦОС. Лабораторная работа №1
2
Лабораторная работа №1 “Синтез и фильтрация ШПС-сигналов типа М-последовательностей
кодов Уолша-Адамара”
Синтез и фильтрация М-последовательностей
Ниже приведена схема формирования М-последовательности последовательности.
здесь А это фаза «М-последовательности», а С – это характеристический многочлен последовательности. Если Характеристический многочлен длины m то «М- последовательности» будет длины 2m 1.
Для генерации «М-последовательности» а MATLAB’е воспользуйтесь функцией
Mfun(A,C).
Для построения в MATLAB’е графиков можно воспользоваться функцией plot.
Выполнение работы.
1.Сформируйте две последовательности М1 и М2. Например если фаза равна
А= [1 0 0 1 0 0 0 0], а характеристические многочлены C1 = [0 0 1 0 1 1 0 1] и
C2 = [0 0 1 0 1 0 1 1].
M1 = Mfun([1 0 0 1 0 0 0 0],[0 0 1 0 1 1 0 1]);
M2 = Mfun([1 0 0 1 0 0 0 0],[0 0 1 0 1 0 1 1]);
3
2.Сформировать M = М1 + М2 (со сдвигом и с инверсией М2). Сдвиг выбрать на cвоё усмотрению но не более половины длины последовательностей М1 и М2. Например сдвиг равен Nshift = 100. Получим:
M = [zeros(1,Nshift) M1] + [M2*(-1) zeros(1,Nshift)];
3.Построить Автокорреляционную функцию – АКФ для М1, т.е. М1 – сигнал, и М1 – опорная функция. В MATLAB’е АКФ можно построить функцией xcorr(А,В) , где А – это сигнал, а В – опорная функция. Например:
AKF = xcorr(M1,M1);
4.Построить Взаимнокорреляционную функцию – ВКФ, т.е. М2 – сигнал, а М1 – опорная функция. Например:
BKF = xcorr(M2,M1);
4
5. Из M отфильтровать М1, т.е. . M – сигнал, а М1 – опорная функция.
Mx = xcorr(M,M1);
6. Из M отфильтровать М2, т.е. . M – сигнал, а М2 – опорная функция.
Mx = xcorr(M,M2);
5
7.Исследовать «М-последовательности» на шумоподавление. В MATLAB’е шум можно сформировать функцией rand. Например для амплитуды Amp = 4 сгенерируем шум длиной 255 (длина шума должна равняться длине «М- последовательности»):
Noise = Amp - 2*Amp*rand(1,255);
Затем сложим шум с последовательностью М1: M3 = M1 + Noise;