Scattered stuff from Silas during Dissertation
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
|
||||
if 0
|
||||
if 1
|
||||
% A) RUN FULL LOOP
|
||||
M_format = [2,4,6,8];
|
||||
snr = 10:25;
|
||||
|
||||
@@ -210,8 +210,8 @@ classdef ml_mlse_pam < handle
|
||||
% ==============================================================
|
||||
% ML-Based Branch Metric Estimation + Viterbi
|
||||
% ==============================================================
|
||||
debug = 1;
|
||||
showPlots = 1;
|
||||
% debug = 1;
|
||||
% showPlots = 1;
|
||||
|
||||
nSymbols = ceil(N/obj.sps);
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ for b = 1:numel(baudrates)
|
||||
|
||||
[Rx_sig_2sps_v1, Symbols_v1, Tx_bits_v1] = standard_link_model( ...
|
||||
"M",M,"fsym",baudrate,"rop",rop,"laser_linewidth",1310, ...
|
||||
"link_length_m",0,"random_key",1);
|
||||
"link_length_km",0,"random_key",1);
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -3,19 +3,24 @@ M = 4;
|
||||
order = 18;
|
||||
randkey = 1;
|
||||
|
||||
bitpattern = [];
|
||||
s = RandStream('twister','Seed',randkey);
|
||||
for i = 1:log2(M)
|
||||
N = 2^(order-1); %length of prbs
|
||||
bitpattern(:,i) = randi(s,[0 1], N, 1);
|
||||
end
|
||||
% bitpattern = [];
|
||||
% s = RandStream('twister','Seed',randkey);
|
||||
% for i = 1:log2(M)
|
||||
% N = 2^(order-1); %length of prbs
|
||||
% bitpattern(:,i) = randi(s,[0 1], N, 1);
|
||||
% end
|
||||
%
|
||||
% if M == 6
|
||||
% bitpattern = reshape(bitpattern',[],1);
|
||||
% bitpattern = bitpattern(1:end-mod(length(bitpattern),5));
|
||||
% end
|
||||
%
|
||||
% Bits = Informationsignal(bitpattern);
|
||||
|
||||
if M == 6
|
||||
bitpattern = reshape(bitpattern',[],1);
|
||||
bitpattern = bitpattern(1:end-mod(length(bitpattern),5));
|
||||
end
|
||||
|
||||
Bits = Informationsignal(bitpattern);
|
||||
Bits = Signalgenerator( ...
|
||||
"form", signalform.prms, ...
|
||||
"M", M, ...
|
||||
"order", order).process();
|
||||
|
||||
Symbols = PAMmapper(M,0).map(Bits);
|
||||
Symbols.fs = 200e9;
|
||||
@@ -31,8 +36,7 @@ symbols_filt = Symbols.filter(h,1);
|
||||
|
||||
%% SHOW FIG 3 in Paper: "ML Base Pre-Eq"
|
||||
|
||||
SNR_dB = [20:1:25];
|
||||
SNR_db = linspace(12,25,12);
|
||||
SNR_dB = [15:2:25];
|
||||
|
||||
ber_ffe = zeros(size(SNR_dB));
|
||||
ber_mlse_l5 = zeros(size(SNR_dB));
|
||||
@@ -43,7 +47,7 @@ ber_ml_mlse_l4 = zeros(size(SNR_dB));
|
||||
|
||||
epochs_training = 100;
|
||||
|
||||
for i = 1:numel(SNR_dB)
|
||||
parfor i = 1:numel(SNR_dB)
|
||||
|
||||
symbols_noi = symbols_filt;
|
||||
symbols_noi.signal = awgn(symbols_filt.signal, SNR_dB(i), 'measured'); % AWGN with given SNR
|
||||
|
||||
Reference in New Issue
Block a user