7 Capella Court
Nepean, ON, Canada
K2E 7X1+1 (613) 224-4700
www.optiwave.com© 2009 Optiwave Systems, Inc.

OptiSystem applications:
SER & BER analysis of QAM-PSK-PAMsystems

and BER analysis of QAM-PSKIntroduction SER
PAM systems
The most effective way to assess the performance of a higher order modulation system is to measure
the symbol error rate (SER) or bit error rate (BER) over a range of background noise (loading)conditions. By applying additive white Gaussian noise (AWGN), which has well defined mathematicalproperties, comparative analysis of different types of higher order modulation systems can be reliably
performed (*).

The typical output of an SER/BER analysis is a set of waterfall curves that map a system’s SER orBER results against gradually increasing background noise levels, defined as Eb/No (the ratio ofenergy per bit to noise density) or Es/No (the ratio of energy per symbol to noise density).

Three OptiSystem projects have been built to allow for the automatic creation of SER/BER waterfall
curves for either pulse amplitude modulation (PAM), phase shift keying (PSK) or quadrature amplitude
modulation (QAM) systems of varying order M (symbols per bit). The simulation curves are also
mapped against the theoretical expected results to show how well the simulation results match totheory.

Each project folder includes three files as follows:

The OptiSystem project for the specific modulation format (for example SER_BER_Calculation_PAM.osd)
The Excel output file where the results are exported and plotted (for example SER_BER Analysis PAM - ExportExcel.xlsx)
The data tracking file which provides more detailed information on the simulation results (for example
SER_BER_Analysis_Tracking.txt)

The following slides provide an overview on how to run simulations and review results for QAM
modulation systems (the same instructions can be used for the PAM and PSK analysis tool kits)* “Confidence in Waterfall Curves guides noise analysis in wireless system test”, Scott Siclari, Senior Systems Engineer,
Aeroflex Inc. (Plainview, N.Y.) http://www.eetimes.com/document.asp?doc_id=1226059 (Retrieved 2 Feb 2017)2

How to run a QAM SER-BER analysis (1)
1.
2.
3.
4.

QAM analysis

Open the OptiSystem project SER_BER Calculation QAM.osd (under the folder QAM Analysis)
Select the tab “Script” (see GREEN box below)
Within the VBScripting code, go to the parameter “SymPerBit” and set the value to 4 (see RED box below). This will set
up our simulation to run the analysis of a 16-QAM system
Got to the line “Set objWorkbook = objExcel.Workbooks.Open(…)” (see BLUE box below) and make sure that the file
path name matches the location of the Excel export file on your computer. The format should be as follows:"C:¥YourFilepath¥SER and BER Analysis of QAM-PSK-PAM systems¥QAM Analysis¥SER_BER Analysis QAM Export Excel.xlsx")

The parameter SymPerBit sets the QAM modulation
order as follows:
4 = 16QAM, 5 = 32QAM, 6 = 64QAM, 7=128QAM

File path for Excel spreadsheet

OptiSystem Script tab

3How to run a QAM SER-BER analysis (2)5.

6.

QAM analysis

Go to the line “Set objFileToWrite = CreateObject("Scripting.FileSystemObject").OpenTextFile(…)” (see BLUE boxbelow) and make sure that the file path name matches the location of the data export file on your computer. The format
should be as follows:"C:¥Yourfilepath¥SER and BER Analysis of QAM-PSK-PAM systems¥QAMAnalysis¥SER_BER_Analysis_Tracking.txt",2,true)“On the upper right menu bar, left-click select the “Run Script” action button (see GREEN box below). The simulation willstart.

Run script action button

File path for data file4

How to run a QAM SER-BER analysis (3)7.

8.

QAM analysis

The Excel spreadsheet will automatically open. After the end of each BER iteration, the simulation data for the 16-QAM
system will be exported to the associated data columns in the spreadsheet (including Es/No, Es/No (dB) and, for thissimulation run, 16QAM – Sim) (see RED box)
During the simulation a progress box will appear to provide information on the status of the simulation sweeps. Oncethe message “Simulation complete!” is posted, this dialog box can be closed
Progress window for the simulation(Performing 5th iteration of 30)

Progress window for the simulation(Complete)

SER vs Es/No simulation results are automaticallyplotted for the specified modulation format. Also theassociated SER theoretical limit is calculated (obtainedfrom column 16QAM – Th)
The data for each row is updated after asimulation run of the OptiSystem script

5How to run a QAM SER-BER analysis (4)9.

QAM analysis

In addition to the SER vs Es/No waterfall data, an analysis curve for BER vs Eb/No will also be automatically built(these curves are located just below the SER vs Es/No curves) – see example plot below
NOTE: After completion of the simulation the Excel spreadsheet data is automatically saved. If you change any settingsplease make sure to save the file before closing the Excel spreadsheet. If you wish to run another simulation it isrecommended to first close any Excel spreadsheets that have been opened (when the simulation starts a new instanceof the Excel analysis spreadsheet will be opened)

BER vs Eb/No simulation results are automaticallyplotted for the specified modulation format. Also theassociated BER theoretical limit is calculated (obtainedfrom column 16QAM – Th)

The data for each row is updated after asimulation run of the OptiSystem script

6How to run a QAM SER-BER analysis (5)QAM analysis

10. In addition to the Excel spreadsheet analysis tool kit, a data file is also created during the simulation. An example viewof the data file content (from SER_BER_Analysis_Tracking.txt) is shown below. The content of this file can be modified
as required by using the objFileToWrite.WriteLine(“…") command in the simulation script

Sample view of SER_BER_Analysis_Tracking.txt

7Notes on the QAM SER-BER analysis (1)QAM analysis

To create a waterfall curve for a specified modulation format, the VBScripting feature of OptiSystem is used to set up
the test conditions, create an instance of OptiSystem, run the simulation and retrieve results from the components andvisualizers (thus all simulation runs must start from the Scripts tab). If you wish to run a standalone simulation, to verify
for example the system setup, start the simulation from the Layout tab (in this case the script will be ignored)
For each simulation run, the parameters Es/No and Eb/No are configured based on settings in the script and in turnapplied to white noise sources in the project layout (specifically the Noise power setting for the AWGN I and AWGN Qnoise components)
To set the number of iterations in your simulation, the start value for Es/No, and the level of change of Es/No periteration use the parameters IterSNRPerSym, SNRPerSymStart and SNRPerSymStep (see below)
Set the total number of iterations with IterSNRPerSym

When set to a value greater than 1, multiple runs (equal to thisvalue) will be performed for each Es/No setting and averaged

Set the start value of Es/No with SNRPerSymStart
NOTE: This value is assumed to be in dB!
Set the incremental value of Es/No with SNRPerSymStep
NOTE: This value is assumed to be in dB!

Increase this parameter if you would like to improve the accuracyof SER and BER results at lower noise levels

TIP: To improve the accuracy of SER and BER results under low noise conditions (where the symbol/bit error counts may bequite low) it is recommended to increase the Sequence length setting. Also you can increase the parameter IterSER to a value
greater than 1 (when this is done, the simulation will perform extra runs for each noise level and take the average of the results)
8Notes on the QAM SER-BER analysis (2)QAM analysis

To verify that the noise settings are being properly applied to the I and Q channels, the Es/No and Eb/No parameters
are re-calculated in OptiSystem through a Component script procedure written in the Oscilloscope Visualizer (thisVisualizer includes a calculation result for Noise (Variance) which is applied to the calculation for Es/No)
The results for Es/No and Eb/No (calculated from Es/No) are in turn exported to the Excel analysis spreadsheet andused for the plotting of the SER and BER waterfall curves
The SER and BER results are obtained from the Decision and BER Test Set components
For each iteration, the Noise power is updated via thesimulation script (based on the Es/No setting)Component script for Oscilloscope Visualizer

Example of white Gaussian noise applied to I and Q
channels of QAM signal . The time-domain noise
variance is calculated based on the sampling bandwidthof the simulation

9

Notes on the QAM SER-BER analysis (3)QAM analysis

To change the modulation order use the parameter SymPerBit (see RED box below)
IMPORTANT: When changing the modulation order please make sure to update the script commands for exporting theBER vs Eb/No results to Excel. As shown below, the script commands for 32QAM/64QAM/128QAM have beencommented out, leaving only the results for 16QAM to be exported. If you want to change the modulation order to, forexample, 32QAM: add comment symbols to the 16QAM lines (using an apostrophe) and remove the comment symbols
for the 32QAM lines

Only the BER vs Eb/No results for16QAM are exported.
If you want to change the modulation order , make sureto add comment symbols to these lines and uncomment the other set of lines associated with themodulation order10