MLSE has some more class settings
DSP auswertung weiter geschrieben
This commit is contained in:
@@ -6,6 +6,10 @@ classdef MLSE < handle
|
||||
DIR
|
||||
trellis_states
|
||||
duobinary_output
|
||||
trellis_state_mode
|
||||
trellis_exclusion
|
||||
debug
|
||||
scale_mode
|
||||
end
|
||||
|
||||
methods (Access=public)
|
||||
@@ -19,7 +23,10 @@ classdef MLSE < handle
|
||||
options.DIR double = [1];
|
||||
options.trellis_states double = [-3 -1 1 3];
|
||||
options.duobinary_output logical = false;
|
||||
|
||||
options.trellis_state_mode = 2;
|
||||
options.trellis_exclusion = 0;
|
||||
options.scale_mode = 2;
|
||||
options.debug = 0;
|
||||
end
|
||||
|
||||
%
|
||||
@@ -33,6 +40,12 @@ classdef MLSE < handle
|
||||
|
||||
function [signalclass_hd,LLR,GMI] = process(obj,signalclass,ref_symbolclass)
|
||||
|
||||
arguments
|
||||
obj
|
||||
signalclass
|
||||
ref_symbolclass
|
||||
end
|
||||
|
||||
data_in = signalclass.signal;
|
||||
shape_in = size(data_in);
|
||||
data_ref = ref_symbolclass.signal;
|
||||
@@ -54,18 +67,25 @@ classdef MLSE < handle
|
||||
|
||||
function [VITERBI_ESTIMATION_SYMBOLS,LLR_maxlogmap,GMI] = process_(obj,data_in,data_ref)
|
||||
|
||||
debug = 1;
|
||||
|
||||
arguments
|
||||
obj
|
||||
data_in
|
||||
data_ref
|
||||
end
|
||||
|
||||
trellis_state_mode = 0; % General: States should match the target states of the prev. EQ (EQ's job was to reduce the error between signal and the target)
|
||||
debug = obj.debug;
|
||||
|
||||
trellis_state_mode = obj.trellis_state_mode; % General: States should match the target states of the prev. EQ (EQ's job was to reduce the error between signal and the target)
|
||||
% 0 = use provided states (MUST provide the correct states);
|
||||
% 1 = normalize to = 1 rms;
|
||||
% 2 = use target symbols;
|
||||
% 3 = use statistical levels
|
||||
% 3 analyzes avg of rx signal levels - can help with nonlinear impairments
|
||||
|
||||
trellis_exclusion = 0; % PAM-6 only (only if data is NOT precoded!)
|
||||
trellis_exclusion = obj.trellis_exclusion; % PAM-6 only (only if data is NOT precoded!)
|
||||
|
||||
scale_mode = 0; % scale_mode:
|
||||
scale_mode = obj.scale_mode; % scale_mode:
|
||||
% 0 = no scaling,
|
||||
% 1 = RMS→scale MODEL,
|
||||
% 2 = MMSE/time-corr→scale MODEL,
|
||||
|
||||
Reference in New Issue
Block a user