WIP
This commit is contained in:
@@ -63,7 +63,7 @@ classdef AWG
|
||||
% obj.fdac = 256e9;
|
||||
obj.dac_max = 0.5;
|
||||
obj.dac_min = -.5;
|
||||
obj.f_cutoff = 800e9;
|
||||
obj.f_cutoff = 80e9;
|
||||
|
||||
end
|
||||
|
||||
|
||||
@@ -211,7 +211,7 @@ classdef EQ
|
||||
epsilon_ = diag([ones(1,obj.Ne(1))*obj.epsilon(1) ones(1,N2)*obj.epsilon(2) ones(1,N3)*obj.epsilon(3)]);
|
||||
end
|
||||
|
||||
obj.k0 = obj.delay; % input delay compared to training sequence
|
||||
obj.k0 = obj.delay; % input delay compared to training sequence<
|
||||
|
||||
if 1 % obj.active
|
||||
%% Calculation of the filter coefficients in training based LMS mode
|
||||
|
||||
@@ -9,7 +9,7 @@ M = 4; %PAM-M
|
||||
bitpattern = zeros(N,log2(M));
|
||||
|
||||
% Symbol Rate
|
||||
fsym = 112e9;
|
||||
fsym = 64e9;
|
||||
% DAC Rate
|
||||
fdac = 160e9;
|
||||
% Simulation oversampling rate "k";
|
||||
@@ -23,13 +23,13 @@ fsimu = kover * fdac ;
|
||||
|
||||
pam_mapper = PAMmapper(M,0);
|
||||
|
||||
awg = AWG('preset','M8199B','fdac',fdac,'kover',kover,'lpf_active',0,'f_cutoff',80e9,'lpf_type',filtertypes.gaussian);
|
||||
awg = AWG('preset','M8199B','fdac',fdac,'kover',kover,'lpf_active',1,'f_cutoff',80e9,'lpf_type',filtertypes.gaussian);
|
||||
|
||||
fil_50 = Filter('filtdegree',1,"f_cutoff",50e9,"fsamp",fdac,"filterType",filtertypes.bessel_inp);
|
||||
|
||||
u_pi = 3.5;
|
||||
vbias = (0.5*u_pi)-u_pi;
|
||||
extmodlaser = EML("mode",emlmodes.im_cosinus,"power",5,"fsimu",fsimu,"lambda",1550,"bias",vbias,"u_pi",u_pi,"linewidth",0);
|
||||
extmodlaser = EML("mode",emlmodes.im_cosinus,"power",5,"fsimu",fsimu,"lambda",1550,"bias",vbias,"u_pi",u_pi,"linewidth",10000);
|
||||
|
||||
amp = Amplifier("amp_mode","ideal_no_noise","amplification_db",0,"gain_mode","output_power");
|
||||
|
||||
@@ -79,7 +79,7 @@ mod_out.signal = applyPulseShaping(mod_out.signal,fsym,fdac);
|
||||
|
||||
% ELECTRICAL DOMAIN
|
||||
X = awg.process(mod_out);
|
||||
|
||||
X = fil_50.process(X);
|
||||
X = X.normalize;
|
||||
|
||||
% OPTICAL DOMAIN
|
||||
@@ -94,9 +94,9 @@ X = phdiode.process(X);
|
||||
X = fil_diode.process(X);
|
||||
|
||||
% ELECTRICAL DOMAIN
|
||||
% X = scp.process(X);
|
||||
X = scp.process(X);
|
||||
|
||||
X = X.resample("fs_out",2*fsym,"fs_in",fsimu);
|
||||
X = X.resample("fs_out",2*fsym,"fs_in",fadc);
|
||||
|
||||
% INFORMATION SIGNAL
|
||||
X = X.normalize;
|
||||
@@ -136,7 +136,7 @@ sgtitle('Laser Linewidth = 10 MHz; SIR = 24 dB ; $N_{1,2}$ = 100')
|
||||
subplot(1,4,1:2)
|
||||
scatter(xax,eq_out.signal,4,'.','MarkerEdgeColor',col(1,:),'DisplayName','No MPI Mitigation');
|
||||
xlim([1, xax(end)]);
|
||||
ylim([-2 2]);
|
||||
%ylim([-2 2]);
|
||||
xlabel('Sampling Index')
|
||||
ylabel('Amplitude')
|
||||
legend
|
||||
@@ -144,7 +144,7 @@ legend
|
||||
subplot(1,4,3:4)
|
||||
scatter(1:X.length,X.signal,4,'.','MarkerEdgeColor',col(2,:),'DisplayName','A1');
|
||||
xlim([1, xax(end)]);
|
||||
ylim([-2 2]);
|
||||
%ylim([-2 2]);
|
||||
xlabel('Sampling Index')
|
||||
ylabel('Amplitude')
|
||||
legend
|
||||
|
||||
Reference in New Issue
Block a user