Merge branch 'main' of cau-git.rz.uni-kiel.de:nt/mitarbeiter/silas/imdd_simulation

# Conflicts:
#	Classes/01_transmit/ChannelFreqResp.m
#	projects/400G_FTN_setups/imdd_mpi_dsp.m
This commit is contained in:
sioe
2024-11-04 09:09:57 +01:00
225 changed files with 30011 additions and 155 deletions

View File

@@ -77,9 +77,42 @@ classdef PAMsource
bitpattern=[];
if obj.useprbs
for i = 1:log2(obj.M)
[bitpattern(:,i),seed] = prbs(O,N,seed);
% for i = 1:log2(obj.M)
% [bitpattern(:,i),seed] = prbs(O,N,seed);
% end
%%%%% MOVE-IT PRMS %%%%
state = struct();
para = struct();
if obj.M == 6
para.bl = 2^(obj.order-2);
para.dimension = 5;
else
para.bl = 2^(obj.order-1);
para.dimension = log2(obj.M); %2.5bits/sym -> 2 bit/sym
end
para.rand = 0;
para.order = floor(obj.order / log2(obj.M));
para.skip =0;
para.bruijn = 0;
para.reset_prms = 0;
para.method = 1;
data_in = [];
global loop;
loop = 0;
[data_out,state_] = prms(data_in, state, para);
loop = 1;
[data_out,state_out] = prms(data_in, state_, para);
bitpattern = data_out';
%%%%% END MOVE-IT %%%%%%%
else
s = RandStream('twister','Seed',obj.randkey);
for i = 1:log2(obj.M)
@@ -88,7 +121,7 @@ classdef PAMsource
end
if obj.M == 6
bitpattern = reshape(bitpattern,[],1);
bitpattern = reshape(bitpattern',[],1);
bitpattern = bitpattern(1:end-mod(length(bitpattern),5));
end
@@ -108,7 +141,7 @@ classdef PAMsource
end
% figure(12);hold on;histogram(symbols.signal,'Normalization','probability');
if obj.mrds_code
symbols = MRDS_coding("blocklength",obj.mrds_blocklength).encode(symbols);
end
@@ -128,7 +161,7 @@ classdef PAMsource
%%%%% Re-sample to f DAC %%%%%%
digi_sig = digi_sig.resample("fs_in",digi_sig.fs,"fs_out",obj.fs_out,"n",10,"beta",5);
% digi_sig.spectrum("fignum",111,"displayname","after pulseforming");
% digi_sig.spectrum("fignum",111,"displayname","after pulseforming");
%%%%% Hard clip digital signal to PAM range before DAC %%%%%%
if obj.applyclipping