function [eq_package] = duobinary_signaling(eq_, mlse_,M ,rx_signal, tx_symbols, tx_bits) %Duobinary Signaling [eq_signal, eq_noise] = eq_.process(rx_signal,tx_symbols); eq_signal = mlse_.process(eq_signal); eq_signal = Duobinary().encode(eq_signal); eq_signal = Duobinary().decode(eq_signal); % M = numel(unique(eq_signal.signal)); rx_bits = PAMmapper(M,0).demap(eq_signal); [~,numErrors,ber,~] = calc_ber(rx_bits.signal,tx_bits.signal,"skip_front",100,"skip_end",150,"returnErrorLocation",1); eq_package.ber = ber; end