Decision Feedback Equalizer Crashes Matlab with InputSamplesPerSymbol option

2 Ansichten (letzte 30 Tage)
I make use of Decision Feedback Equalizer from Communications Toolbox with PAM-2 (OOK) signal. In my setup each symbol has 10 samples and I used "InputSamplesPerSymbol" parameter in the equalizer initializaiton.
DFE compiles succesfully however when I call the DFE with data, MATLAB crashes without any warnings/errors/output.
I have tried this on another setup as well and the result is no different. What can be a potential cause and what would be a possible workaround or a solution?
%% Generate Samples
numTrainSymbols = 200;
numDataSymbols = 1800;
numSamples = 10;
trainingSymbols = real(pammod(randi([0 1],numTrainSymbols,1),2));
dataSymbols = real(pammod(randi([0 1],numDataSymbols,1),2));
stream = repelem([trainingSymbols; dataSymbols], numSamples);
SNR = 20;
ch_out = awgn(stream, 20);
%% Input Data
dfeq = comm.DecisionFeedbackEqualizer('Algorithm','LMS', ...
'NumForwardTaps',5,...
'NumFeedbackTaps',4,...
'ReferenceTap',5,...
"Constellation", [-1 1], ...
'StepSize',0.001, ...
"InputSamplesPerSymbol", numSamples);
[y, err, weights] = dfeq(ch_out, trainingSymbols);

Akzeptierte Antwort

Sindhu Karri
Sindhu Karri am 13 Mai 2021
Hii,
I tried to run the code in MATLAB R2021a and it gave the following error message.
numTrainSymbols = 200;
numDataSymbols = 1800;
numSamples = 10;
trainingSymbols = real(pammod(randi([0 1],numTrainSymbols,1),2));
dataSymbols = real(pammod(randi([0 1],numDataSymbols,1),2));
stream = repelem([trainingSymbols; dataSymbols], numSamples);
SNR = 20;
ch_out = awgn(stream, 20);
%% Input Data
dfeq = comm.DecisionFeedbackEqualizer('Algorithm','LMS', ...
'NumForwardTaps',5,...
'NumFeedbackTaps',4,...
'ReferenceTap',5,...
"Constellation", [-1 1], ...
'StepSize',0.001, ...
"InputSamplesPerSymbol", numSamples);
[y, err, weights] = dfeq(ch_out, trainingSymbols);
Error using comm.DecisionFeedbackEqualizer/validatePropertiesImpl (line 166)
NumForwardTaps must be greater than or equal to InputSamplesPerSymbol.
Changing the value of 'NumForwardTaps' property to some value like 15 which is greater that numSamples helps to resolve the issue.
When I executed the same code in R2020a MATLAB crashes.So,I recommend you to update the MATLAB since this issue fixed in later releases.
Refer to below link to update the MATLAB
Hope this helps!!
  1 Kommentar
Arda Karaca
Arda Karaca am 16 Mai 2021
Exactly. I later contacted MATLAB technical support. They let me know that 2020a does not check for inputs properly and this issue is later fixed in the new version. Thank you for your reply!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Signal Processing finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by