ecoc measurements
This commit is contained in:
@@ -11,6 +11,7 @@ classdef PAMsource
|
||||
|
||||
db_precode
|
||||
db_encode
|
||||
duobinary_mode
|
||||
|
||||
mrds_code
|
||||
mrds_blocklength
|
||||
@@ -38,6 +39,7 @@ classdef PAMsource
|
||||
|
||||
options.db_precode = 0;
|
||||
options.db_encode = 0;
|
||||
options.duobinary_mode = db_mode.no_db;
|
||||
|
||||
options.mrds_code = 0;
|
||||
options.mrds_blocklength = 512;
|
||||
@@ -102,8 +104,7 @@ classdef PAMsource
|
||||
para.reset_prms = 0;
|
||||
para.method = 1;
|
||||
|
||||
|
||||
|
||||
|
||||
data_in = [];
|
||||
global loop;
|
||||
loop = 0;
|
||||
@@ -134,43 +135,52 @@ classdef PAMsource
|
||||
symbols.fs = obj.fsym;
|
||||
|
||||
%%%%%% Duobinary %%%%%%%%%%%
|
||||
if obj.db_precode
|
||||
symbols = Duobinary().precode(symbols);
|
||||
|
||||
switch obj.duobinary_mode
|
||||
|
||||
case db_mode.no_db
|
||||
|
||||
case db_mode.db_precoded
|
||||
symbols = Duobinary().precode(symbols);
|
||||
case db_mode.db_encoded
|
||||
symbols = Duobinary().precode(symbols);
|
||||
symbols = Duobinary().encode(symbols);
|
||||
end
|
||||
|
||||
if obj.db_encode
|
||||
symbols = Duobinary().encode(symbols);
|
||||
end
|
||||
|
||||
% figure(12);hold on;histogram(symbols.signal,'Normalization','probability');
|
||||
%%%%%% MRDS %%%%%%%%%%%
|
||||
|
||||
if obj.mrds_code
|
||||
symbols = MRDS_coding("blocklength",obj.mrds_blocklength).encode(symbols);
|
||||
end
|
||||
|
||||
%%%%%% SAVE MIN-MAX FOR CLIP %%%%%%%%%%%
|
||||
|
||||
if obj.applyclipping
|
||||
sym_min = min(symbols.signal);
|
||||
sym_max = max(symbols.signal);
|
||||
end
|
||||
|
||||
|
||||
|
||||
%%%%% Pulse-forming %%%%%%
|
||||
if obj.applypulseform
|
||||
%%% MY CODE
|
||||
digi_sig = obj.pulseformer.process(symbols);
|
||||
if 0
|
||||
digi_sig = obj.pulseformer.process(symbols);
|
||||
|
||||
%%% MOVEIT WRAPPER BETA
|
||||
% symbols.spectrum("fignum",111,"displayname","1) RAW SIGNAL");
|
||||
%
|
||||
% pulsf = Moveit_wrapper('pulsef');
|
||||
% pulsf.para.alpharacos = obj.pulseformer.alpha;
|
||||
% pulsf.para.f_sym = obj.fsym;
|
||||
% pulsf.para.fs = obj.fsym;
|
||||
% pulsf.para.pulse = 2;
|
||||
%
|
||||
% digi_sig = pulsf.process(symbols);
|
||||
else
|
||||
%%% MOVEIT WRAPPER BETA
|
||||
% symbols.spectrum("fignum",111,"displayname","1) RAW SIGNAL");
|
||||
|
||||
pulsf = Moveit_wrapper('pulsef');
|
||||
pulsf.para.alpharacos = obj.pulseformer.alpha;
|
||||
pulsf.para.f_sym = obj.pulseformer.fsym;
|
||||
pulsf.para.fs = obj.pulseformer.fdac;
|
||||
pulsf.para.pulse = 1;
|
||||
|
||||
digi_sig = pulsf.process(symbols);
|
||||
digi_sig.fs = obj.pulseformer.fdac;
|
||||
|
||||
end
|
||||
% Design raised cosine filter with given order in symbols
|
||||
% digi_sig = symbols;
|
||||
% sps = 4;
|
||||
|
||||
Reference in New Issue
Block a user