Наименьшее среднее значение для выравнивания оптоволоконного канала
Я использовал Matlab-код LMS (алгоритм наименьших средних квадратов), чтобы выровнять эффект канала, он работает для канала с повернутой задержкой, сгенерированного в MATLAB, но для оптоволоконного канала, использующего программу optisystem, он не работает хорошо, я думаю проблема заключается в импульсной характеристике оптического волокна, так как она не является конечной импульсной характеристикой, а алгоритм нуждается в конечной импульсной характеристике, но как решить эту проблему?
Созвездие канала MATLAB и оптоволоконного канала, ясно, что второе созвездие не было хорошо выровнено.
созвездие:
Вот пример шумного канала, где алгоритм LMS не может компенсировать его эффект, есть ли способ улучшить его производительность при этом SNR:
% // Set up parameters and signals.
M = 4; % // Alphabet size for modulation
msg = randint(15000,1,M); % // Random message
modmsg = pskmod(msg,M); % // Modulate using QPSK.
trainlen = 5000; % // Length of training sequence
chan = [.986; .845; .237; .123+.31i]; % // Channel coefficients
filtmsg = filter(chan,1,modmsg); % // Introduce channel distortion.
filtmsg=awgn(filtmsg,10,'measured');
% // Equalize the received signal.
eq1 = lineareq(8, lms(0.01)); % // Create an equalizer object.
eq1.SigConst = pskmod([0:M-1],M); % // Set signal constellation.
[symbolest,yd] = equalize(eq1,filtmsg,modmsg(1:trainlen)); % // Equalize.
% // Plot signals.
h = scatterplot(filtmsg,1,trainlen,'bx'); hold on;
scatterplot(symbolest,1,trainlen,'g.',h);
1 ответ
Может быть, у вас должно быть больше образцов. Эффект "усреднения" LMS не работает, когда спектр близок к критерию Найквиста.
Другая проблема может заключаться в том, что шум недостаточно белый (широкополосный). Таким образом, образцы шума являются связными.