0
votes

I would like to export BER data from a simple system using LDPC encoder and decoder into the Communication Toolbox's BER Tool and plot a BER curve.

I have modified the example system using LDPC, commdvbs2.mdl, which is available in the Help menu at Demos > Simulink Demos > Application-Specific Examples > DVB-S.2 Link, Including LDPC Coding.

To simplify it, I removed the General Block Interleaver and General Block Deinterleaver. I also removed the BCH Encoder and BCH Decoder. To compensate for the lack of the BCH Encoder, I changed the Zero Pad within the BBFRAME buffering block to have a column size of dvb.BCHCodewordLength instead of dvb.BCHMessageLength.

I changed the AWGN block to have the following parameters: Mode: Signal to noise ratio (Eb/No) Eb/No (db): dvb.EsNodB / log2(dvb.BitsPerSymbol) Number of bits per symbol: dvb.BitsPerSymbol Symbol period (s): dvb.BitPeriod * dvb.BitsPerSymbol

So far, this all works. If I change the model parameters to have an Es/No of 1 dB, I still get a 0 BER and 0 PER.

But now I'm having a problem getting the BER out of the model and plotted in the BER Tool.I added a "To Workspace" block and connected the output of the BER Error Rate calculator to that. I named the variable ber_out and set the limit data point to last 1.

Then I change the Eb/No of the AWGN block to be: EbNo, which is the vector that the BER Tool steps through to plot BER. (Saved these changes to the model under a new name.)

In the BER Tool, I go to the Monte Carlo tab. I set the Eb/No range to be: 0:0.2:2. Set BER variable name to be: ber_out.

After I run the simulation, I get a plot of nothing. The Diagnostics Tool pops up with these two messages:

Source: commdvbs2_noBCH_noInterleave_EbNo_BERTool. Error evaluating 'StopFcn' callback of block_diagram 'commdvbs2_noBCH_noInterleave_EbNo_BERTool'. Source: unknown. Vectors must be the same lengths.

What am I doing wrong?

(MATLAB version is 2012a.)

1
Please verify that the BER variable name "ber_out" is the same both in Bertool and simulation model.user2972051

1 Answers

0
votes

Double click on the sink 'To workspace', there change save format to Array.