Long Haul WDM Polarization Multiplexed Fiber Optic Systems with Optical Back Propagation

OCSim Modules

Modern Fiber Optic Communication Systems Simulations with Advanced Level Matlab Modules


Module 18

Long Haul – WDM – Polarization Multiplexed Fiber Optic Systems with Optical Back Propagation


Company Researchers & Developers

Integrate the Modules with your in-house and Commercial Software & Hardware Products


(1) Use the Existing Modules / Components for Your Research & Development.
(2) Modify the Modules / Components to the Next Level for Your Research & Development.
(3) Integrate Different Modules / Components in the OCSim Package to Realize Your Own Fiber Optic Communication Systems.
(4) Modify the Modules for Co-Simulations with the Third Party Commercial Optical Communication Systems Softwares


Main Module


This module simulates Long Haul WDM Polarization Multiplexed Fiber Optic communication systems with Optical Back Propagation. The fiber optic link is followed by the OBP module which consists of OPC and M pairs of FBGs and HNLFs (in the code, M=3). The OBP is followed by a phase noise compensator which mitigates the residual nonlinear effects resulting from the non-idealities of OBP owing due to large step size of backpropagation. There are two flags – (i) OBP_flag and (ii) CD_comp_flag. If OBP_flag is true, the output of the fiber optic link passes through the OBP module. If CD_comp_flag is true, the output of the fiber optic link passes through the CD compensation module. Both flags can be independently turned on or off.

Monte-Carlo simulation is carried out by transmitting a large number of symbols. The function ‘ber_calc_qam.m’ calculates the BER by comparing the received symbol pattern with the transmitted symbol pattern. The number of bits in the simulation should be chosen properly. As a rule of thumb, to have a reliable estimate of BER around 10-x, the number of bits should be > 10x+2. In addition, as a sanity check, one should verify that the BER does not change (or changes a little) as the number of bits is doubled.


This Module calls the following Sub Modules and Components:

(1) init_parameter_file.m: This is not a function. All the system and signal parameters are specified here.

(2) Transmitter_realization.m: This is not a function. This code realizes the WDM transmitter. The computational time to realize the WDM transmitter increases with the number of channels. Sometimes, it is a good idea to generate the transmitter data only once and save it so that multiple fiber optic link runs can be done using the stored data. Use tx_realization_flag to turn on/off the transmitter realization part.

(3) fiber_optic_link.m: This function realizes the fiber optic link consisting of N fiber spans and N amplifiers. This function calls fiber_prop_vec_no_rot.m to realize fiber propagation and amp_vec.m to realize inline amplifier. Fiber propagation can be turned on/off using the fiber_prop_flag.

(4) OBP.m: This function realizes OBP. OBP can be turned on/off using OBP_flag in the main code. This function calls two functions, fiber_prop_vec_no_rot() and nlc():

(5) fiber_prop_vec_no_rot.m: This code solves the Manakov equations using a split-step Fourier scheme. This code is used for the transmission fiber optic link as well to simulate the dispersion in FBG.

(6) nlc.m: This function simulates the signal propagation in HNLF.

(7) DBP.m: This function realizes DBP. In this module, DBP is called by setting the nonlinear coefficient to zero (for the case of CD compensation only).

(8) Power_meter_vec.m: Calculates the average power in dBm of the polarization multiplexed signal.

(9) Constellation_diagram.m: Plots the constellations.

(10) QAM_modulator_nyquist.m: This code generates the QAM data. Arbitrary QAM-M can be generated. For example, when XX=4 and YY=4, we get QAM-16. When XX=8 and YY=8, we get QAM-64. This code can also generate QPSK data by setting XX=2 and YY=2. Nyquist pulses are generated with arbitrary roll-off factors.

(11) amp_vec.m: Inline amplifier is realized using this function. This amplifies the polarization multiplexed signal.

(12) gauss.m: A Gaussian bandpass filter is introduced. The half-bandwidth (‘bw’) should be specified. This could also be used as a low pass filter and in this case, ‘bw’ is the 3-dB bandwidth.

(13) opt_rect_filt.m: Rectangular filter is introduced to demultiplex the central channel. The half-bandwidth (f_0) should be specified.

(14) down_sample_CD.m: The number of samples per symbol for modeling the fiber optic system may be different from that used in DSP. This code provides down-sampling of the received signal by a factor that is suitable for DSP processing.

(15) ber_calc_qam.m: calculates the BER by comparing the received bit pattern with the transmitted bit pattern.

(16) norm_spectrum.m: This function plots the normalized spectrum of the signal.

(17) Q_dB-calc.m: This function calculates Q-factor (dB). This code assumes that the noise is Gaussian and projects the Q-factor based on BER.

(18) coherent_rx.m: This function realizes a balanced IQ receiver. An optical 90-degree hybrid with in-phase and quadrature outputs is implemented. The output of 90-degree hybrid passes through the array of photo-detectors [2]. Shot noise and thermal noise are introduced.


Explore Further this Module:

18.1. Pick XX=4 and YY=4 so that the QAM-16 data is generated. Symbol rate = 56 GSym/s and no. channels = 1. The range of launch power is -2 dBm to 6 dBm with an increment of 1 dBm. Let the transmission distance be 40X80 km. Plot the launch power vs Q-factor (dB) after the OBP and CD compensation only. Calculate the transmission performance improvement (in terms of improvement in Q(dB) due to OBP (Hint: find the peak Q-factors for the cases with OBP and CD compensation only and calculate the difference in peak Q-factors (dB))

18.2. Repeat experiment 18.1 by changing the data rate to 28 GSym/s. Increase the distance such that the BER is in the range of 1e-3 to 1e-1 for the system with OBP.

18.3. Pick XX=8 and YY=8 so that the QAM-64 data is generated. Repeat Experiment 18.1 and 18.2. Adjust the total transmission distance so that the BER is in the range of 1e-3 to 1e-1 for the system with OBP.



Selected Simulated Results Using this Module 



Schematic of a Fiber Optic Link with OBP


Simulation Setup



Constellation Diagram at Tx




Normalized Signal Spectrum at Tx




Normalized Spectrum at Rx before OBP or CD Compensation




Constellation Diagram at Rx before OBP or CD Compensation




.Constellation Diagram after OBP




k-factor vs BER




Constellation Diagram after OBP and Phase Optimization




Normalized Spectrum at Rx after Demux




Constellation Diagram after CD Compensation




k-factor vs BER, CD Compensation




Constellation Diagram after CD Compensation and Phase Optimization




OCSim Modules details can be seen by clicking the pages below:

OCSim Modules Overview OCSim Modules (1-18) in the Package

Module (1a) | Module (1b) | Module (1c) | Module (2a) | Module (2b) | Module (2c) | Module (3a) | Module (3b) | Module (4a) | Module (4b) | Module (4c) | Module (4d) | Module (5) | Module (6a) | Module (6b) | Module (7) | Module (8a) | Module (8b) | Module (8c) | Module (9a) | Module (9b) | Module (10) | Module (11a) | Module (11b) | Module (12) | Module (13) | Module (14) | Module (15) Module (16) Module (17) Module (18)

OCSim Modules Brochure | OCSim Modules Selected Publication References | OCSim Modules Application Examples |

OCSim Modules Selected Simulated Results | OCSim Modules Videos


Contact Us: Headquarter: Ottawa, Canada covering USA and EuropeDistributors: South AmericaJapanIndiaAustraliaChina