Please enable JavaScript to view this site.

Application Gallery

Navigation: » No topics above this level «

Travelling Wave Mach-Zehnder Modulator

Scroll Prev Top Next More

cover_picture_tw-modulator_zoom33This example describes a complete multiphysics (electrical, optical, RF) simulation of a travelling wave Mach-Zehnder modulator, ending with a compact model circuit simulation in INTERCONNECT. Key results such as relative phase shift, optical transmission, transmission line bandwidth, and eye diagram are calculated.

Related: Mach-Zehnder Modulator, Ring Modulator

Files and Required Products






Minimum product version: 2019a r1



Run and results

Important model settings

Updating the model with your parameters

Taking the model further

Additional resources


Understand the simulation workflow and key results


This example is taken from the following publication, where a 5 mm long Si waveguide is phase modulated by a reversed bias pn junction driven by a 5mm long Al coplanar transmission line:


Tom Baehr-Jones et al., “Ultralow drive voltage silicon traveling-wave modulator”, Optics Express, Vol. 20, No. 11 (2012)


The CHARGE solver provides charge density change in the pn-junction due to changing reverse bias, along with the series slab resistance and the pn junction capacitance. The change in charge density is imported into MODE solver to calculate optical index modulation of the waveguide, while the slab resistance and junction capacitance are imported into MODE solver to calculate the RF properties of the transmission line. The optical and RF parameters, as well as the junction capacitance, are then imported into INTERCONNECT compact models to perform circuit simulation and calculate optical transmission and eye diagram.


Step 1:

The CHARGE solver is first used to calculate a 2D charge density profile of the pn junction for different reverse biases. 2D simulations are much less time consuming than full 3D and in this case they are justified since the waveguide length is much larger that its thickness and width and the charge profile is relatively uniform along the waveguide. The charge density profile calculated in this step will be used in step 3 to obtain the optical refractive index modulation.


Step 2:

In this step the CHARGE solver is used again to calculate the slab resistance and pn junction capacitance. The slab resistance is due to, mostly uniform, semiconductor regions that connect the transmission lines with the pn junction. As far as the pn junction itself, it can be represented just by a DC capacitance, since in reverse bias the resistance is infinite, while the capacitance is independent of the frequency. The R and C values are later imported into steps 4 (RF transmission line calculation with MODE) and 5 (circuit simulation with INTERCONNECT).


Step 3:

The MODE solver is used next to calculate the optical properties of the waveguide. Based on the imported charge density vs. bias from step 1, first the change in the refractive index of the waveguide material is calculated. Then, after calculating the modes, the effective and group indices, as well as the loss, of the fundamental mode are found. These parameters are later imported into INTERCONNECT compact models. More details about the conversion of the change in charge density to the change in refractive index can be found in Additional resources.


Step 4:

To calculate the RF properties of the transmission line the MODE solver is used again. In addition to defining the metallic RF co-planar transmission lines immersed in the oxide, we import the R and C values calculated in step 2, which represent a compact model of the slab and pn junction between the transmission lines. After that and similar to step 3 we find the effective and group indices and, in addition, the impedance of the fundamental mode. The parameters are found as a function of frequency, taking the voltage dependent capacitance at zero bias. These parameters will later be imported into the INTERCONNECT simulation.


Step 5:

Using simulation results from previous steps, we import compact model parameters for the waveguide, optical modulator, and travelling wave electrode that make up a complete modulator circuit in INTERCONNECT. It is then possible to perform circuit simulations in both steady state and time domain to obtain an optical transmission vs. bias and frequency and an eye diagram.

Run and results

Instructions for running the model and discussion of key results

Step 1: Waveguide charge density vs. bias

1.Open tw_modulator_DEVICE.ldev using CHARGE.

2.Run the simulation. Charge monitor "monitor_charge" is set up to save charge density in tw_modulator_charge.mat, which will later be imported into the MODE solver.

3.Charge density can be visualized by selecting the CHARGE object in the objects tree, right clicking on the desired result (charge) in the result view window and visualizing it on a log scale.


The figures below show the change in charge density in the waveguide for different reverse voltages:


Step 2: Slab resistance and pn junction capacitance

1.Open tw_modulator_DEVICE_Rslab.lsf using CHARGE and run it. This script file will load tw_modulator_DEVICE.ldev and replace the waveguide region by a ground contact. It will then calculate the resistances of both the left and the right semiconductor regions that connect the waveguide to the transmission lines. The R values will be saved to text files tw_modulator_Rslab_N.dat, tw_modulator_Rslab_P.dat, and tw_modulator_Rslab_tot.dat for N (right), P (left) regions and the total resistance, respectively. The values in the files will later be used for MODE and INTERCONNECT simulations.

2.Next open tw_modulator_DEVICE_Cdc.lsf using CHARGE and run it. This script file will load tw_modulator_DEVICE.ldev and calculate the DC capacitance of the pn junction using the final difference method. It will visualize the result and compare it against the publication. It will also save the voltage vs capacitance table in tw_modulator_Cdc.mat to be imported into MODE and INTERCONNECT solvers in steps 4 and 5.

3.Finally, open tw_modulator_DEVICE_Cac.lsf using CHARGE and run it. This script will will load tw_modulator_DEVICE.ldev and calculate the AC capacitance with small signal simulation and compare it with the already calculated DC capacitance, confirming that the capacitance is insensitive to the frequency in reverse bias.


The figures below show the DC capacitance and compare it to the AC capacitance and to the published result. The DC capacitance is accurate and similar to the AC capacitance as expected in the reverse bias regime. The third image is a Smith chart of the series RC circuit.

tw_modulator_cdc_zoom40 tw_modulator_cac_zoom40 tw_modulator_z_smith_zoom40

Step 3: Optical waveguide properties

1.Open tw_modulator_optical_MODE.lms using MODE.

2.Open script tw_modulator_optical_MODE.lsf and run it. This script will load file tw_modulator_charge.mat from step 1 into the NPDensityGridAttribute object in the object tree and calculate the optical effective and group indices of the waveguide's fundamental mode for each of the imported charge densities. It will also extract the change in the effective index with respect to the zero bias, which is the reference (middle) bias for amplitude modulation of the transmission line in INTERCONNECT. The script will also visualize the quantities of interest as shown in the figures below. The data from this step is saved into tw_modulator_optical_data.mat to be later imported into INTERCONNECT in step 5.


The figures below show the optical effective and group indices (real parts), the relative phase shift with respect to 0 V, and the loss (related to the imaginary part of the effective index).


Step 4: RF transmission line properties

1.Open tw_modulator_RF_MODE.lms using MODE.

2.Open script tw_modulator_RF_MODE.lsf and run it. The values of the slab resistances and pn junction capacitance (at zero bias) are copied from step 2 and set from the script. This script will run mode analysis for frequencies between 10-100 GHz, with steps of 10 GHz, and calculate the group index, as well as the characteristic impedance and loss for the fundamental mode. It will save these parameters in tw_modulator_RF_data.mat to be imported into INTERCONNECT simulation in step 5. It will also visualize the quantities of interest as shown below.


The figures below show the RF loss (related to the imaginary part of the RF effective index), the RF group index, and the real and imaginary parts of the characteristic impedance (resistance and reactance)


Step 5: Compact model and circuit simulation

1.Optical transmission with optical network analyzer (ONA):

a)Open file tw_modulator_INTERCONNECT_ONA.icp with INTERCONNECT, which represents the modulator photonic circuit along with an ONA measurement device. The modulator itself consists of an input waveguide Y branch followed by a waveguide and optical modulators on each branch and the output Y branch that brings the 2 modulator arms back together. The upper modulator arm has in addition a travelling wave electrode (TWE) and the phase shift is applied to this arm, while the bottom arm is kept at zero reference bias. An optical network analyzer provides the optical input to the input Y branch and receives the output optical signal from the output Y branch, while the upper arm TWE is biased with a DC signal.

b)Open script tw_modulator_INTERCONNECT.lsf and run it. This script will import and set the compact model parameters obtained in steps 2-4. The waveguide elements will be set to the central frequency of 1.55 um, and the effective and group index and the loss parameters will be set at zero bias. The length of the upper arm waveguide will be set to 5 mm, while the bottom arm waveguide to 5.1 mm. The optical modulator elements will be set to the same central frequency, while the length will be set to 4.5 mm (effective phase modulation length). The change in the complex effective index vs. bias (with respect to zero bias) will also be set as a table. For the TWE, the length will be set to 5 mm and the frequency dependent tables for the loss, characteristic impedance, and group index (all at zero bias as calculated in step 4) will be loaded.The voltage dependent capacitance table will also be loaded, and the optical group index will be set to the value at zero bias. The source impedance and terminating impedance of the TWE are kept at the default value of 50 Ohm.

c)Set the input parameter of ONA to "start and stop," "start frequency" to 1565 nm, "stop frequency" to 1550 nm, "number of points" to 1000, and "plot kind" to wavelength.

d)Run 3 simulations, setting the DC output value of the DC source connected to the TWE to the values of -0.5 V, 0 V, and 0.5 V. After each simulation visualize the optical transmission from the result view of the optical network element, all on the same plot. In doing that, plot the abs^2 value of the transmission on a log plot. You can also include legend and edit the labels in the legend directly in the visualizer. The total shift in transmission is determined to be around 0.9 nm for 1 Vp-p at 0 V bias (approximately 0.8 nm in the shift of the notch can be observed in the measured data, although ripple in the data makes an accurate estimate difficult).

2.Eye diagram:

a)Open file tw_modulator_INTERCONNECT_eye.icp with INTERCONNECT, which represents the modulator photonic circuit along with an eye diagram measurement device. The modulator circuit is the same as in step 5.1. Now, a CW laser source provides the optical input, while the upper modulator arm is driven by a pulse generator in time domain.

b)Open and run script tw_modulator_INTERCONNECT.lsf to set compact model parameters (same as in step 5.1).

c)In this simulation set the bit rate in the root element to 20 Gbits/s (this will apply to the PRBS generator and all other elements that need this information), the modulation amplitude to 1 V with the reference bias of -0.5 V in the NRZ pulse generator (signal range is then between -0.5 and 0.5 V), the laser source power to 10 mW, and the laser source wavelength to 1552.5 nm. The choice of laser power and wavelength is relatively arbitrary and in this case we chose values that give acceptable signal-to-noise ratio in the eye diagram and the eye crossing close to 50 %.

d)Run the simulation. Select the eye diagram element and from the result view window visualize the eye diagram. From the same view, the extinction ratio in the eye diagram is 4.25 dB.

3.TWE bandwidth with electrical network analyzer (ENA):

a)Open file tw_modulator_INTERCONNECT_ENA.icp with INTERCONNECT. This circuit consists of just the TWE and ENA elements. The TWE element is the same as used in previous steps.

b)To set the compact model parameters of the TWE element you can run the portion of the script in tw_modulator_INTERCONNECT.lsf that applies to the TWE element (TW_1).

c)Set the frequency range in the electrical network analyzer to 30 GHz.

d)Run the simulation, and plot the gain from the ENA element. The 3 dB bandwidth is around 15 GHz.


The figures below show the optical transmission vs reverse bias and optical frequency (step 5.1), the eye diagram (step 5.2), and the TWE RF bandwidth (step 5.3).


Important model settings

Description of important objects and settings used in this model

Step 1: CHARGE simulation of charge density

Doping profile: The doping profile has to be modeled accurately to match the real device in order to be able to reproduce correct charge density. The user may need to fit this profile to get accurate results. One way to perform fitting is to modify doping parameters, like position and concentration, depending on which doping object was selected, until there is a good match for the pn junction capacitance. In this case the user may want to change the order of steps 1 and 2, so that step 2 is done first.


Mesh resolution: Since the waveguide may be just a small part of the total structure (including the resistive slabs connecting the transmission lines) the mesh should be fine enough in the waveguide region to resolve the doping profile and geometry contours. Mesh size can be controlled globally in the Mesh tab of the CHARGE edit window, or by a local mesh constraint objects, in order to make the grid fine locally, while keeping it rough away from fine features to reduce simulation time.

Step 2: CHARGE simulation of slab resistance and pn junction capacitance

Doping profile: Same comments as in step 1.


Mesh resolution: Same comments as in step 1.


DC capacitance: When calculating DC capacitance a finite difference equation is used to find the derivative of charge density with respect to voltage. The perturbation used in finite difference should be reasonably small to get an accurate approximation of the true derivative.


AC capacitance: For AC capacitance the ssac solver mode is used, which calculates a small signal solution on top of the DC solution at every operating point. Since the pn junction is biased in reverse mode the DC capacitance should be approximately equal to the AC capacitance. When calculating the ac capacitance, in general, first subtract the series slab resistance from the total impedance and then find the capacitance from the reactance (although this can be simplified in reverse mode since the parallel junction resistance is practically infinite).

Step 3: MODE (FDE) simulation of the optical waveguide

Complex refractive index: Since the refractive index depends on the charge density, the charge density is imported from step 1 as a function of voltage. The theory that explains the effect of charge density on the refractive index is given at the link in Additional resources section. The charge density vs bias is imported into the 'np' object as a table and then the optical properties of the waveguide (effective and group indices) are calculated at each bias.


Fundamental mode: Only the properties of the fundamental mode are saved and later imported into INTERCONNECT in step 5. This can be done by specifying 'mode1' string in getdata commands. To be sure the fundamental mode will be calculated set enough trial modes and set search near max index:

setanalysis('number of trial modes',10);

setanalysis('search','near n');

setanalysis('use max index',true);


Relative change in effective index: Relative change in effective index is calculated with respect to 0 V reference bias since, in subsequent circuit simulations, the pulse generator will be centered around 0 V and the reference waveguide arm will be set to 0 V.


Wavelength: Wavelength in optical mode simulations is set to 1.55 um.


Group index: This index, which depends on the derivative of the effective index can be calculated simply by enabling an advanced option in the mode analysis with the following command

setanalysis('calculate group index',true)

Step 4: MODE (FDE) simulation of the RF transmission line

RF material properties: RF parameters are usually not available in the database, so it may be required from the users to define their own. In this example Si is represented with a 3D conductive material with parameters: permittivity (the standard DC value taken) and conductivity (taken from the cited publication). Al transmission lines are also represented with a conductive 3D material with some reasonable values of the parameters. Since the waveguide (where the pn junction is situated) and the Si resistive slabs are much thinner than the rest of the device that comprises the co-planar transmission lines, these elements are represented with 2D rectangles with RLC material, where R values are defined for the 2 resistive slabs on both sides of the waveguide, and the waveguide is represented with a C value.


pn junction capacitance: This capacitance, found in step 2, is taken at 0 V, since that is the reference voltage in the circuit simulations. It is assumed that the pulse generator has a small enough amplitude so that the RF impedance and index will not change much during one cycle for a given reference bias.


Fundamental mode: Since it is expected that the RF transmission line and the optical waveguide will have a similar propagation speed, in order to ensure the RF fundamental mode will be calculated set enough trial modes and set search near n = 4, using the following script commands:

setanalysis('number of trial modes',10);

setanalysis('search','near n');

setanalysis('use max index',false);



Frequency range: The quantities of interest, that is, loss, group index, and characteristic impedance will be calculated at the fundamental mode as a function of frequency at the reference bias 0 V. The frequency range is set from 10-100 GHz, as it is not expected that the pulse generator rates will be less than 10 Gbits/s.


Group index: Same as in step 3.

Step 5: INTERCONNECT simulation of the complete modulator circuit

Bit rate: Random sequence of bits drives the amplitude modulation of the CW laser source. This quantity should be set at the root element, so that it can be reused in all the elements that need to know about it, which are in this case the PRBS generator and the eye diagram analyzer. To set the bit rate at these lower level elements, set their bitrate expression field to %bitrate%.


Effective modulation length: In the publication, not the entire length of the waveguide is doped, but only around 90%, in order to prevent current flow along the waveguide. Therefore the effective phase shift length is 4500 nm, instead of full 5000 nm. This length is used for the optical modulator elements in the two branches of the waveguide.


Waveguide and optical modulator: The waveguide loss and index are set at 0 V, while the relative complex index change loaded into the optical modulator is with respect to 0 V. This makes the phase shift and absorption consistent across these two connected elements.


Transmission wave electrode: Since only the capacitance loaded into this element can be voltage dependent, while other elements (loss, index, characteristic impedance) are just frequency dependent, they need to be calculated at a certain voltage value in step 4 and then loaded into this element. This voltage value should correspond to the reference value of 0 V as explained in the previous steps. It is assumed that these values will not change much with the changing pulse generator signal, considering relative linearity of the pn junction and Vp-p not greater than 1 V.


NRZ pulse generator: To make sure that the pulse generator signal is symmetric around 0 V, set the bias parameter to -0.5 V for an amplitude of 1 V. This will make sure the signal range is between -0.5 V to 0.5 V.


CW laser frequency and power: These parameters are somewhat arbitrary. The power is not mentioned in the publication, nor the precise wavelength. In addition, there is a slight shift in the optical transmission curves between the simulation and publication, so the same wavelength will not work in the same way. Our choice of 10 mW and 1552.5 nm was based on having an acceptable signal-to-noise ratio in the eye diagram and an eye crossing close to 50%. This gave the extinction ratio of 4.25 dB, which is close to the value reported in the publication for 20 Gbits/s signal and 1V Vp-p.

Updating the model with your parameters

Instructions for updating the model based on your device parameters

When updating the model to match your parameters, it is important to remember that multiple solvers and simulation files are involved. Changes must be made consistently in all the files. Some key parameters are listed below:


Modulator geometry:

Length: Set new lengths of waveguide, optical modulator, and travelling wave electrode elements in step 5. Rerun step 5. Optical modulator length should be changed only if the effective phase shift length changed (doped length).

Cross-section: Change the cross-section geometry in steps 1-4. Rerun steps 1-4 following the same instructions as the original example. Import new parameters in step 5 and rerun step 5.


Optical source frequency: Change the source frequency (or wavelength) in step 3 and rerun. Import new optical parameters in step 5 and set the new value of the CW laser source wavelength. Rerun step 5.



Transmission line metal: Change the transmission line material in step 4 and rerun it. Import new RF parameters into step 5 and rerun it.

Waveguide semiconductor: Change the semiconductor material in steps 1-4. Rerun steps 1-4 following the same instructions as the original example. Import new parameters in step 5 and rerun step 5.


Doping profile:

Shape/concentration: Change the doping profile in steps 1-2 and rerun them. Rerun steps 3-4. Import new parameters into step 5 and rerun it.

Effective doped length: Change the length of the optical modulator elements in step 5 to correspond to the doped length. Rerun step 5.


Reference bias: Reference bias is the bias of the lower arm of the modulator and also the mid-range value of the pulse generator output voltage. This bias was 0 V in the original example. If it is changed, but is already calculated in steps 1-2, set new capacitance in step 4 for that bias and rerun step 4. Import new RF parameters into step 5. Set new optical parameters in waveguide and TWE (just optical group index) elements in step 5. Calculate relative effective index change from step 3 with respect to the new reference voltage and load into the optical modulator elements. Rerun step 5.

Taking the model further

Information and tips for users that want to further customize the model

The user may want to apply a differential drive on the upper and lower arm transmission lines in order to make the circuit more power efficient. To do this another TWE should be added to the lower arm of the modulator, which will be driven by another PRBS sequence generator followed by NRZ pulse generator. To generate a synchronized differential signal the user should set both PRBS generators to use the same seed value (non-automatic), include a digital NOT element between the PRBS and NRZ generators in the lower arm, set the bias in the NRZ generators to the same value, and the amplitudes A in the NRZ generators to the same absolute value with either the same or opposite signs, depending on what kind of differential signal is needed (e.g. (0,A,0) in the upper arm and (-A,0,-A) in the lower, or (0,A,0) in the upper and (A,0,A) in the lower). Correspondingly, when calculating the optical transmission with ONA, the appropriate voltages should be set to the upper and lower arms instead of fixing the lower arm to a constant reference value.


If a differential drive is applied the user may want to increase the model accuracy by splitting the lower arm waveguide into a 100 um waveguide and a 5000 um waveguide and apply the modulation only to the longer waveguide.


A more realistic model of the Y branch can be implemented by replacing it with the optical N-port S-parameter element whose parameters will be set from a separate component level simulation. More details in the Y Branch example.

Additional resources

Additional documentation, examples and training material

Theory behind the charge density to refractive index conversion based on the model by Soref et al. can be found in our Knowledge Base (KB) under FDTD > Simulation Objects > Attributes.

More information about the travelling wave modulators (and TWE specifically) can be found in modulators.

More examples of RF modelling can be found in RF examples.


Lumerical University courses:

Course_FDTD100 Course_FDE100 Course_CT100 Course_INT100 Course_SCRIPTING_v1

Copyright Lumerical Inc. | Privacy | Site Map