In this layout-driven flow example, we calculate the optical spectrum of the imbalanced Mach-Zehnder Modulator (MZM) previous designed in Tanner L-Edit Photonics, as a function of the bias voltage. The transmission at the operating wavelength is also studied as a function of the bias voltage. Then move on to a time do main simulation with the imbalanced MZM, the eye diagram result is studied. Finally, we perform Monte Carlo simulations to study how the fabrication variations will affect the output. This example requires the GPIC CML to be installed.
Overview
Understand the simulation workflow and key results
We are considering a layout-driven workflow where the circuit layout is designed in Tanner L-Edit Photonics and the circuit is simulated in INTERCONNECT.
The circuit is an imbalanced MZM, composed of waveguides, bend waveguides, directional couplers, edge couplers, tapers, phase shifters, terminators and bond pad elements (electrical contact).
Note: The GPIC compact model library (CML) used here is intended for demonstration purpose only. The models are intended to be representative of typical component behaviour, however they are not calibrated to a foundry process. Lumerical cannot provide any guarantee with respect to the model accuracy and completeness. |
Step 1: Layout design and netlist extraction (Tanner L-Edit Photonics)
The circuit layout is designed in Tanner L-Edit Photonics using the GPIC iPDK, a generic photonic PDK. The netlist is then extracted.
The example files (layout, GPIC iPDK, etc.) are provided with the Tanner install package.
Step 2: Circuit simulation frequency domain test bench (INTERCONNECT)
We import the netlist in an INTERCONNECT test bench simulation file. The test bench is composed of an Optical Network Analyzer (ONA) that is used to obtain the gain spectrum of the imbalanced MZM under varied bias voltages.
Step 3: Circuit simulation time domain (INTERCONNECT)
We then conduct a time domain simulation with the imbalanced MZM cathode1 driven by a non-return to zero signal based on a pseudo-random bit sequence. An Eye Diagram Analyzer is used to obtain the eye diagram of the received time signal.
Step 4: Statistical analysis (INTERCONNECT)
We then use the Monte Carlo Analysis tool to analyze the distribution of extinction ratio and free spectral range due to variations in the fabrication process.
Run and results
Instructions for running the model and discussion of key results
Step 1: Layout and netlist extraction (Tanner L-Edit Photonics)
- Open the MZM_imbalanced example (…/TannerEDA/TannerTools_vxxxx.x/Designs/MZM_imbalanced/lib.defs)
- Open the desired layout cell, MZM_imbalanced
- Export the netlists using the Lumerical header file (GPIC/models/lumerical/headerFile.spi)
This example is part of the Siemens EDA Tanner installation package. In the “Taking the model further” section, we cover how to extract the netlist with the Ansys macro. We will not cover here the layout design or netlist extraction directly with the L-Edit Photonic Tools . Please refer to the documentation provided with Siemens EDA Tanner for more information.
Step 2: Circuit simulation frequency domain test bench (INTERCONNECT)
-
Open the simulation file Mentor_Interoperability_MZM_ONA.icp
Note: U sers will get the "Error loading reference" errors if the GPIC CML is not installed at this point. Users can manually install this CML or run the script in the next step to get it installed automatically. - Open the script file Mentor_Interoperability_MZM_ONA.lsf
- Click the run script button. This will load the extracted netlist of Step 1, run analysis, and plot results.
- Results are plotted automatically and can be accessed from the result view and the script workspace.
This Application Gallery example is provided with the netlist (Mentor_Interoperability_MZM_imbalanced.spi)
Gain spectrum
We use an Optical Network Analyzer (ONA) to calculate the gain spectrum (transmission in dB) for the MZM under different bias voltages (0V to 5V):
Transmission vs. bias voltage
As the bias voltage “DC_1” is swept from 0V to 5V, the optical spectrum red shifts. Then we track the transmission at the 3dB operating wavelength (1550.62 nm) as we sweep through the bias voltage from 0V to 5V and generate the following plot. From this plot, we are able to set the electrical bias point for the high-speed modulation in Step 3.
Step 3: Circuit simulation time domain (INTERCONNECT)
- Open the simulation file Mentor_Interoperability_MZM_EYE.icp
- Open the script file Mentor_Interoperability_MZM_EYE.lsf
- Click the run script button
- Results are plotted automatically and can be accessed from the result view and the script workspace.
This Application Gallery example is also provided with the netlist (Mentor_Interoperability_MZM_imbalanced.spi)
Eye diagram
The eye diagram result will be generated by the above example files. The eye diagram resulting from the time domain simulation is quite open. This is because 1) a low bit rate is used (5 Gbits/s) and 2) because the phase shifter GPIC CML model implements a high speed model that is representative of behaviour with travelling-wave electrodes, instead of a low speed model that is representative of the lumped electrode implementation used here. As mentioned above, the GPIC is intended for demonstration purposes only. In a foundry CML, the phase shifter model would be calibrated to the intended implementation.
Step 4: Monte Carlo Analysis (INTERCONNECT)
- In the simulation file "Mentor_Interoperability_MZM_EYE.icp", go to the Optimization and Sweeps tab, and select the “ER analysis” sweep
- In the "Libraries" tab, click "Add". Then under "Library", double click on "select library" and select the "GPIC.lib.x" file contained within the CML. Under “Variant”, choose “statistical”
- Under the "Correlations" tab, make sure the "Enable spatial correlations" settings is selected
- Click the Run button. This will take several minutes
- In the Results View tab, double click on the results>histogram>ER. The histogram of the extinction ratio (ER) will be plotted.
The extinction ratio is the ratio of power from one level to the next, calculated in dB as :
ER( dB)=10log 10 (P 1 /P 0 )
where P 1 and P 0 are the mean power levels.
The following plot displays the histogram of the extinction ratio between the two signal levels in the eye diagram:
Ideally we want the ER to be high to give us an open eye. In this case, however, we see that the ER distribution is skewed heavily towards low ERs due to the statistical variations introduce d between the MZM paths. A thermal tuner should be included in this case, which would compensate for any variations in the fabrication process, and still allow the circuit to produce expected results.
- In the simulation file "Mentor_Interoperability_MZM_ONA.icp", go to the Optimization and Sweeps tab, and select the “FSR analysis” sweep
- In the "Libraries" tab, click "Add". Then under "Library", double click on "select library" and select the "GPIC.lib.x" file contained within the CML. Under “Variant”, choose “statistical”
- Under the "Correlations" tab, make sure the "Enable spatial correlations" settings is selected
- Click the Run button. This will take several minutes
- In the Results View tab, double click on the results>histogram>FSR. The histogram of the FSR will be plotted.
Free Spectral Range (FSR) represents the spacing between each peak of the transmission spectrum. For a Mach-Zehnder interferometer, the FSR is given by:
$$ FSR =\frac{\lambda^2}{\Delta L n_g} $$
where \(\Delta L\) is the path length difference, and \(n_g\) is the group index of the waveguide.
The following plot displays the FSR histogram of the circuit:
Here the FSR is normally distributed, with relatively small variations, reflecting the group index distribution.
Important model settings
Description of important objects and settings used in this model
CML
This example requires the GPIC Compact Model Library (CML) to be installed before running the example files. This example is provided with the CML file “GPIC_v2.0.cml”.
See the Install Compact Model Library page on the Knowledge Base for more information on how to install the CML.
Statistical models
The GPIC CML contains statistical models for the straight waveguides and the PN-junction phase shifters (PNPS). These models include statistical variations of the component properties that are likely to occur during fabrication. Additionally, correlation length information contained in these models will determine how correlated these variations will be between components. In this example , we imported the netlist from Siemens EDA to create our INTERCONNECT model. The netlist contains the xy -coordinates of each component in the layout, which can be used to determine spatial correlations between statistical components. As the distance between components increases, the statistical correlations will diminish.
For more information on how to set up a Monte Carlo analysis, see Monte Carlo analysis utility .
For more information on spatial correlations, see Monte Carlo analysis with spatial correlations
For more information on the distributed waveguide element, see Spatial correlations for distributed waveguide element
Updating the model with your parameters
Instructions for updating the model based on your device parameters
Optical Network Analyzer (ONA) settings
The ONA settings allow you to control:
- Input power (0dBm)
- Number of points (10000)
- Plot kind (frequency or wavelength)
Note: This circuit is designed to operate in the C-band (1546nm to 1559nm), TE mode. Care should be taken if you modify the ONA settings, to make sure you stay in the operating domain of the components. |
The ONA simulation bandwidth (frequency range) need to match the time domain sample rate setting. In this case, we set the ONA “frequency range” to inherit the “sample rate” property to link the property values.
Some models of the GPIC CML include temperature sensitivity. The simulation temperature (300K) is set in the “Root Element” properties.
Time domain simulation settings
User can update the time domain simulation with the following parameters:
- Set the wavelength of interest in the Laser Source.
- Set the bit rate.
- Set the electrical signal level (amplitude) of the non-return to zero Pulse Generator (NRZ).
Taking the model further
Information and tips for users that want to further customize the model
Use updated/new netlist
You can modify the circuit layout in Siemens EDA Tanner L-Edit Photonics, export the new netlist and import it back to your INTERCONNECT test-bench circuit to verify how the modifications affect the behavior of the circuit.
Import netlist from user interface :
- Select the compound element
- Import the netlist (*.spi) from File-Import-Import SPICE netlist
Import netlist from script :
Use the " importnetlist " command
importnetlist(COMPOUND_NAME, "Mentor_Interoperability_Interferometer_50u.spi");
Where COMPOUND_NAME is the name of the compound element hosting the circuit.
Note: The same methodology can be applied to other circuits designed in Siemens EDA Tanner L-Edit Photonics.
Use other test-bench circuits
In this example, the imbalanced MZM is studied using a frequency domain and a time domain test bench. You can create different test-bench simulation files that you can use depending on the results you want to extract.
Automated netlist extraction and test bench simulation with Ansys Lumerical macro for Tanner L-Edit Photonics
The Ansys Lumerical macro automates the following process:
- Exporting netlist from Tanner
- Opening INTERCONNECT testbench
- Importing netlist into INTERCONNECT compound
- Running simulation
To install and run the macro:
- Open a single Tanner L-Edit session
- In your file explorer, navigate to ...\TannerEDA\TannerTools_vxxxx.x\ThirdParty\lumerical\installLumericalMacros.tbc"
- Run the file by dragging and dropping into the Command Line
- Close your Tanner session
- Open a new session
- Open a layout file
- Go to “Ansys” tool bar menu item and select “Run INTERCONNECT Test”
- Fill in the fields and then hit “Run”. Alternatively, hit “Export” to extract the netlist, without opening a test bench.
Macro fields:
- PDK headerfile: Locate this file within the PDK. For GPIC it is found at: ...\TannerEDA\TannerTools_vxxxx.x\Process\GPIC\Production\GPIC\models\lumerical\headerFile.spi
- Netlist location: Choose a location/name to save the netlist file.
-
Project file: You can do one of the following:
- Select an existing testbench project file (.icp). For this example choose ……\TannerEDA\TannerTools_v2021.2\Designs\MZM_imbalanced\simulations\lumerical\Lumerical_INTERCONNECT_MZM_EYE.icp
- Define new project file. The project file will be automatically generated and the netlist will be imported into a compound element. You can then build your test bench around this and save the file for future use.
- Select a script file (.lsf). A variable “netlistPath” will be added to the INTERCONNECT workspace, which can be used in the script file to load the netlist.
- Compound name: Name of the compound in the test bench. Typically this should be the same as the circuit layout name.
Additional resources
Additional documentation, examples and training material
See also
- Siemens EDA Interoperability - Interferometer
- Install a Compact Model Library
- Optical Network Analyzer (ONA)
- Mentor and Lumerical partner with Towerjazz to advance Photonic IC design
- INTERCONNECT Statistical Simulation - PAM4 Transceiver