MATLAB "bertool" : Bit Error Analysis Tool in MATLAB Communication System Toolbox

You might be a communication system designer, or a newbie in communication. While designing or applying any of the modulation scheme with or without modulation for any type of channel you need to have the information of the Bit Error Rate for a particular SNR, so that you can decide on the various parameters of your system (for e.g., transmit power). Or sometime you just want to compare your developed system or scheme with the currently available theoretical references  of the BER values. For that need MATLAB's communication system toolbox has been bundled with a tool, in which you just need to select a few options & there you will get the result you want for the BERs.

So assuming you did already installed MATLAB's Communication System Toolbox, for starting the Bit Error Analysis Tool you just need to type & enter the command in the MATLAB's command window as "bertool".

That will popup a window like this,
The Bit Error Analysis Tool in MATLAB's Communication System Toolbox: BERTOOL
The Bit Error Analysis Tool in MATLAB's Communication System Toolbox: BERTOOL
The file menu has some options for the user. 
fILE MENU OF BERTOOL MATLAB
That is, New Session, Open Session, Save Session, Import Data & Export Data. The Export Data, will be enabled when you have already did a simulation, which you can later on import, through, Import Data option.

In the tabs below, the Theoretical Tab, you may be seeing various options, one of them is the Eb/No range setting.
Eb/No Range Set in BERTOOL:  Bit Error Analysis Tool in MATLAB Communication System Toolbox
Eb/No Range Set in BERTOOL:  Bit Error Analysis Tool in MATLAB Communication System Toolbox
If you want it to be in the range -6 to 20 dB you just need to specify it as, -6:20 in the above input box. This will serve as your x-axis while the BER plot has been generated.

Below that, there is also an option to select the channel type, it provides us with three options,
AWGN, Rayleigh, & Rician. After the selection you will get various other options related to these channel that you can tweak in to further control your channel.
Channel Type AWGN in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Channel Type AWGN in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox

Channel Type Rayleigh in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Channel Type Rayleigh in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox

Channel Type Rician in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Channel Type Rician in BERTOOL : Bit Error Analysis Tool in MATLAB Communication System Toolbox

It provides Various options in Modulation Schemes even.
Namely, PSK, DPSK, OQPSK, PAM, QAM, FSK, MSK, & CPFSK.
Modulation Type in BERTOOL:  Bit Error Analysis Tool in MATLAB Communication System Toolbox
Modulation Type in BERTOOL:  Bit Error Analysis Tool in MATLAB Communication System Toolbox
Selection of Modulation Order, in BERTOOL
Selection of Modulation Order, in BERTOOL
So, for a M-Ary modulation scene you got various options, i.e., from 2 to 64.
Select & browse through various modulation schemes & you will be seeing various options enabling & disabling with them.
Like while selecting the PSK & OQPSK, you will see an option to enable Differential Encoding to appear & demodulation type option is disabled. And while selecting PAM, QAM,  FSK you will not see any option of Differential Encoding.
Like wise you need to select what your communication system requires.

For Channel Coding part, You need to select Either, None, Convolutional or Block type of Coding.

While selecting the Convolutional coding, you need to specify the trellis polynomial & what decision method you will use while decoding it.

Channel Coding Methods in MATLAB "bertool" : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Channel Coding Methods in MATLAB "bertool" : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Another coding type will be the Block Code. Below are the various options available with it.
Block Coding Option in MATLAB "bertool" : Bit Error Analysis Tool in MATLAB Communication System Toolbox
Block Coding Option in MATLAB "bertool" : Bit Error Analysis Tool in MATLAB Communication System Toolbox

At last to generate a MATLAB BER vs SNR plot just press the button, "Plot".

I have selected, to plot from 0 to 18 dB SNR, AWGN Channel. 4-QAM modulation, with convolutional code, hard decision & the Trellis polynomial is represented by, poly2trellis(7, [171 133]). The result is,

BER Plot, MATLAB 4-QAM, AWGN Channel, With Convolutional Coding/Decoding.
BER Plot, MATLAB 4-QAM, AWGN Channel, With Convolutional Coding/Decoding.
So when you run a simulation you get to see something new at the top, which is the data associated with the simulation that you can save, & reload for the next time if you want.
The data after the simulation has completed. MATLAB bertool.
The data after the simulation has completed. MATLAB bertool.
 The semianalytic mode of MATLAB BERtool, has the same functionality, but it gives more flexibility in terms of deciding the bits/symbols to get an analysis of. And additionally the receiver filter coefficient has been added.
The Semianalytic Mode for the BERTOOL MATLAB.
The Semianalytic Mode for the BERTOOL MATLAB.
You at last can do, Monte Carlo simulation also in MATLAB's BERTOOL. With various options.
Option of Monte Carlo Simulation in bertool, in MATLAB
Option of Monte Carlo Simulation in bertool, in MATLAB
So, have a happy day with the BERTOOL of MATLAB. I am sure that this tool will be handy for you, if you need a serious wireless system design.


0 comments: