Ring Modulator - Frequency Domain with forward bias PIN junction

Simulation of ring and racetrack resonators and modulators is best achieved by breaking the device into a series of sub-components (e.g. straight and bent waveguides, directional coupler, etc.), characterized separately using component-level simulations. These building blocks can then be combined in into a circuit in INTERCONNECT to simulate the complete device. This approach provides accurate models while minimizing overall simulation time. Direct simulation of large rings using 3D FDTD is not practical due to the large memory and time requirements, although it may be possible for some small rings.

Related: Ring Modulator, Travelling Wave Modulator, Mach-Zehnder Modulator
Minimum product version: 2019a r1
Licenses: FDTD Solutions, MODE Solutions, DEVICE Charge, INTERCONNECT

Simulation files:

ring-forward-bias.zip (8.0 MB)


  1. Overview
  2. Run and results
  3. Important model settings
  4. Updating the model with your parameters
  5. Taking the model further
  6. Additional resources

1. Overview

The essential building blocks of ring and racetrack modulators are: (1) a waveguide coupler, (2) passive waveguides, and (3) active waveguides.

Step 1:
The basic characterization of the waveguide coupler can be done with a single 3D FDTD simulation by calculating the power coupling coefficient as a function of frequency for the mode of interest. In this example we focus on fundamental TE mode, and we neglect back reflections and backward coupling, which would require multiple FDTD simulations.

Step 2:
Straight and bent waveguide sections are best characterized using the FDE solver in MODE Solutions. Effective index, group index and dispersion as a function of frequency for the band of interest are the key results needed to describe these sub-components. For the passive waveguide sections, two frequency sweeps are required to obtain this data; one for the straight waveguide and one for the bent waveguide. These quantities can be obtained without running the CHARGE simulation (STEP 3).

Step 3:
For the active waveguide section, the perturbation of the effective index with applied voltage can be characterized using the CHARGE and FDE solvers. A 2D CHARGE simulation is used to obtain the spatial distribution of charge carriers as a function of bias voltage. With this data, the FDE solver calculates the change in effective index as a function of bias voltage.

Step 4:
The spatial distribution of charge carriers from STEP 3 will be loaded into the FDE solver. Two simulations are required to characterize the active waveguides:
The bias voltage is set to zero and the effective index, group index and dispersion as a function of frequency is calculated similar to passive components explained in step 2.
A sweep is performed to calculate the change in effective index as a function of bias voltage. The wavelength is fixed at center wavelength as the change in effective index as a function of wavelength is negligible.

Step 5:
After each sub-component is characterized, the ring modulator can be assembled with primitive elements in INTERCONNECT. The results from the component-level simulations must be loaded into the corresponding elements in the INTERCONNECT circuit, and an optical network analyzer can be used to calculate the frequency-domain response. For simplicity we focus on DC bias only, and we extract the modulation efficiency as a key result for a ring modulator.

Passive ring resonators:
For passive ring resonators, simply skip any steps associated with the CHARGE solver (Step 3 and 4). An alternate INTERCONNECT model, without the modulator sub-components, is included in the associated example files.

Including thermal tuning:
For rings with thermal tuning, additional component level simulations with the HEAT solver are required, but the overall simulation workflow is very similar. See the section Taking the model further for more information.

Time domain compact model
The INTERCONNECT compact model of the ring modulator created in this example is suitable for frequency domain simulations. Creating a model that works in time domain simulations is beyond the scope of this example.

2. Run and results

Step 1: Coupler:

  1. Open the coupler_region.fsp simulation using FDTD Solutions.
  2. Run the simulation.
  3. Run the coupling_coefficient_step1.lsf script file to calculate and export the coupling coefficients as a function of frequency. The coefficients will be saved to coupling_coefficient.txt file. The coupling coefficient is the fraction of power that couples from the fundamental TE-mode in the straight waveguide to the fundamental TE-mode of the curved waveguide. Its value can be controlled by the coupling length or the gap distance between bus waveguide and the ring resonator. The quality factor is a key parameter in different applications and is inversely proportional to the coupling coefficient.


Step 2: Passive straight and bent waveguides

  1. Open the rib_waveguide.lms simulation using MODE Solutions
  2. Ensure the ‘bent waveguide’ setting is disabled.
  3. Ensure the ‘charge_distribution’ object is disabled.
  4. Run the mode solver.
  5. Select the fundamental mode and click ‘Frequency Sweep’ from the ‘Frequency analysis’ tab. Once the sweep is done, click the ‘Export for INTERCONNECT’ button. The waveguide parameters will be saved to straight_wg.ldf.
  6. Enable the bent waveguide setting. Specify the bend radius of your device.
  7. Re-run the mode solver.
  8. Select the fundamental mode and click ‘Frequency Sweep’ from the ‘Frequency analysis’ tab. Once the sweep is done, click the ‘Export for INTERCONNECT’ button. The waveguide parameters will be saved to passive_bent_wg.ldf.
    ring_modulator_passive_straight_EffectiveIndex ring_modulator_passive_straight_ModeProfile

Step 3: Charge distribution

  1. Open the waveguide_modulator.ldev simulation file using DEVICE.
  2. Run the simulations.

The simulation will calculate charge distribution for different applied voltages. The results will be saved to wg_charge.mat and will be used in the FDE solver to determine delta_n. The plot below shows the log plot of charge distribution for a 0.5V bias voltage.

Step 4: Active bent waveguide

  1. Return to layout mode and enable the ‘charge_distribution’ object.
  2. Edit the ‘charge distribution’ object and load ‘wg_charge.mat’ spatial charge distribution data. Select the voltage of 0 for ‘V_anode’.
  3. Ensure the ‘bent waveguide’ setting is enabled.
  4. Re-run the mode solver.
  5. Select the fundamental mode and click ‘Frequency Sweep’ from the ‘Frequency analysis’ tab. Once the sweep is done, click the ‘Export for INTERCONNECT’ button. The waveguide parameters will be saved to active_bent_wg.ldf.
  6. Load “voltage_neff_sweep_step4.lsf” into the simulation file and run it. The script will sweep over voltage values to calculate the effective index for fundamental mode. Then it will save complex dneff results as a function of voltage in Delta_neff.txt.

ring_modulator_active_bent_dneff ring_modulator_active_bent

Step 5: INTERCONNECT compact model
Open the ring_modulator.icp simulation using INTERCONNECT.
Import FDTD and FDE results into corresponding elements. Setting the ring resonator parameters from root element will automatically update the length or components accordingly.
Set the voltage of interest in DC source and Run the simulation.
View the results.


The following frequency domain results are provided by the Optical Network Analyzer as function of voltage bias:

  • Through channel transmission
  • Drop channel transmission
  • FSR
  • Quality factor

Run the post processing ring_modulator_analysis_step5.lsf script file to calculate:

  • Free spectral range
  • Extinction ratio
  • Insertion loss
  • Quality factor
  • Modulation efficiency

3. Important model settings

Model setup script: A setup script in the model object of FDTD is used to set the waveguide geometry, ring geometry, material, gap between ring and waveguide, and port angle. Similar scripts are used under the model object of MODE and structure group under geometry object of DEVICE to set the waveguide geometry. The script is a convenient way to ensure the waveguide and ring geometries, gap between them, and port angle are correct. The geometry of these objects must be set via the setup script. Other properties, such as the simulation time or simulation region, can be modified directly in the objects.

Coupler with FDTD (Step 1)
Mesh override region: The distance between the input waveguide and ring waveguide is a critical parameter. A mesh override region is used to ensure the mesh is an integer multiple of the gap size in the Y-direction or waveguide thickness in the Z-direction.

Bent waveguide and mode rotation settings: For ports located on the ring, it is important to configure the modal properties to include the effect of the bend. The angle theta for the rotation is the same as the angle from the coupling region of the ring to the position of the port. This angle should be large enough to ensure the ports in the two waveguides do not overlap with each other. Before running the simulations, the mode profile on each port must be checked to make sure that fundamental TE mode is injected.

Multifrequency mode injection: The waveguide coupling is sensitive to the change of the mode profile with frequency. Use the multifrequency mode injection option (under the Modal Properties tab of the port settings) to more accurately inject a broadband mode. The number of frequency points depends on how much the mode profile changes with frequency; in this example we use 3 points since the change of the profile is small.

Waveguide with FDE (Steps 2, 4)
Mesh override region: The FDE mesh size should be similar to the CHARGE mesh size, to ensure that rapid variations in charge distribution are included in the mode calculation. A mesh override region over the waveguide core is used to enforce this condition.

Bent waveguide option: This simulation file is used for both straight and bent waveguide simulations. It is important to ensure the ‘bent waveguide’ option is in the correct state (enabled or disabled).

np density grid attribute: This simulation file is used for both passive and active waveguide simulations. It is important to ensure the ‘Charge distribution’ object option is in the correct state (enabled or disabled).

Active region with CHARGE (Step 3)
Mesh override region: For accurate calculation, a fine enough mesh is necessary to capture the small changes in size of the depletion region with voltage for the active waveguides.

Ring modulator circuit with INTERCONNECT (Step 5)

Sample rate: When an element is connected to both an Optical Network Analyzer (ONA) and an electrical source (e.g. a DC source), the frequency range of the ONA must be the same as the sample rate of the electrical source. Set the expression for “frequency range” of the ONA to “%sample rate%” to make it the same as the sample rate of the Root Element. This ensures that the sampling rates (frequency ranges) of the electrical and optical sources are consistent with each other. To change the frequency range of the ONA, use the sample rate property of the Root Element such that a wavelength range of 1500nm – 1600nm (matching the FDTD and MODE results) is chosen for ONA.

Voltage range: The INTERCONNECT circuit is based on component level simulations using CHARGE, FDTD and MODE. The circuit may not function properly for parameter outside the range of what was characterized in the component simulations. For example, if the modulator voltage is outside the range simulated in CHARGE, linear interpolation will be used to extrapolate the data. This can introduce errors. It is recommended to run the component simulations to cover the full parameter space of interest.

4. Updating the model with your parameters

When updating the model to be match your component parameters, it is important to remember that multiple solvers and simulation files are involved. Changes must be made consistently in all the files. For example, changes to the waveguide width must be made in the FDTD, FDE and CHARGE simulation files. Updated results from the component simulations must then be reloaded into INTERCONNECT.

Frequently changed component parameters:

  • Ring radius (FDTD, FDE, INTERCONNECT)
    • When updating the ring radius in FDTD, simulation objects such as port angle, FDTD simulation region, mesh position, and monitors have to be updated accordingly. Particularly, the port angle must be set such that it collects only the power inside the ring section. If a larger port angle is required, increase the simulation span.
  • Source bandwidth (FDTD, FDE, INTERCONNECT)
  • Waveguide geometry cross section (FDTD, FDE, CHARGE)
  • Coupling gap distance (FDTD)
  • Coupling length (FDTD, INTERCONNECT)
    • Length of racetrack straight section, zero for circular rings.
  • Material properties (FDTD, FDE, CHARGE)
  • Bias voltage (CHARGE, INTERCONNECT)
  • Doping profile (CHARGE)
  • Modulation fraction (INTERCONNECT)
    • Portion of the ring resonator that is modulated.

5. Taking the model further

S-parameters of directional coupler: S-parameters, rather than the coupling coefficient, can be used to better characterize the directional coupler by accounting for back reflections and cross coupling.

Thermal tuning of modulator: Thermal tuning effects can be included in the model. The HEAT solver can be used to calculate the temperature profile in the waveguide. Load the temperature distribution into the FDE solver using the temperature grid attribute to calculate the perturbation in effective index.

Time domain compact model: Additional configuration is required to create a compact model suitable for time domain simulations in INTERCONNECT.

6. Additional resources

Ring modulator - Time Domain
INTERCONNECT Ring Modulator Model
PIN Mach-Zehnder
Lumerical University courses