91 lines
2.2 KiB
Matlab
91 lines
2.2 KiB
Matlab
|
|
precomp_path = "C:\Users\Silas\Documents\MATLAB\Datensätze\sioe_labor\precomp";
|
|
precomp_fn = "lab_high_speed";
|
|
precomp_mode = 2; %0=do nothing ; 1= measure; 2=precomp active
|
|
db_precode = 0;
|
|
db_coding_approach = 0;
|
|
|
|
fsym = 160e9;
|
|
fdac = 256e9;
|
|
random_key = 0;
|
|
M = 4;
|
|
|
|
if (db_precode==1)&&(db_coding_approach==0)
|
|
|
|
if M == 4
|
|
pulsef=1;
|
|
precomp_amp_max = -50;
|
|
elseif M == 6
|
|
pulsef=0;
|
|
precomp_amp_max = -50;
|
|
elseif M == 8
|
|
pulsef=0;
|
|
precomp_amp_max = -50;
|
|
end
|
|
|
|
elseif (db_precode==1)&&(db_coding_approach==1)
|
|
|
|
if M == 4
|
|
pulsef=1;
|
|
precomp_amp_max = -38;
|
|
pulsef = 1;
|
|
elseif M == 6
|
|
pulsef=0;
|
|
precomp_amp_max = -38;
|
|
pulsef = 1;
|
|
elseif M == 8
|
|
pulsef=0;
|
|
precomp_amp_max = -38;
|
|
pulsef = 1;
|
|
end
|
|
|
|
elseif (db_precode==0)&&(db_coding_approach==0)
|
|
|
|
if M == 4
|
|
pulsef=1;
|
|
precomp_amp_max = -37;
|
|
pulsef = 1;
|
|
elseif M == 6
|
|
pulsef=0;
|
|
precomp_amp_max = -34;
|
|
pulsef = 1;
|
|
elseif M == 8
|
|
pulsef=0;
|
|
precomp_amp_max = -34;
|
|
pulsef = 0;
|
|
end
|
|
end
|
|
|
|
|
|
rcalpha = 0.05;
|
|
Pform = Pulseformer("fsym",fsym,"fdac",4*fsym,"pulse","rrc","pulselength",16,"alpha",rcalpha);
|
|
|
|
Pamsource = PAMsource(...
|
|
"fsym",fsym,"M",M,"order",19,"useprbs",0,...
|
|
"fs_out",fdac,...
|
|
"applyclipping",0,"clipfactor",1.2,...
|
|
"applypulseform",pulsef,"pulseformer",Pform,...
|
|
"randkey",random_key,...
|
|
"db_precode",db_precode,"db_encode",db_coding_approach,...
|
|
"mrds_code",0,"mrds_blocklength",512);
|
|
|
|
[Digi_sig,Symbols,Bits] = Pamsource.process();
|
|
|
|
Digi_sig = Digi_sig.normalize("mode","rms");
|
|
|
|
Digi_sig.spectrum("displayname","No Precomp","fignum",2223,"normalizeToNyquist",0,"normalizeTo0dB",0);
|
|
|
|
precomp_est = ChannelFreqResp("Nacq",2048,"Navg",100,"Ncp",63,'f_ref',Digi_sig.fs);
|
|
|
|
Digi_sig = precomp_est.precomp(Digi_sig,'maxampdb',precomp_amp_max,'loadPath',precomp_path,'fileName',precomp_fn);
|
|
|
|
Digi_sig = Digi_sig.normalize("mode","rms");
|
|
|
|
Digi_sig = Digi_sig.resample("fs_out",fdac);
|
|
|
|
Digi_sig= Digi_sig.normalize("mode","rms");
|
|
|
|
Digi_sig.spectrum("displayname","Strong Precomp","fignum",2223,"normalizeToNyquist",0,"normalizeTo0dB",0);
|
|
|
|
ylim([-30,3]);
|
|
xlim([-5,100]); |