The power transmission, power crossing, insertion loss and S-parameters of a waveguide crossing are calculated using FDTD. The S-parameters are used to create an INTERCONNECT compact model.
Understand the simulation workflow and key results
The waveguide crossing is characterized with a series of FDTD simulations. Each simulation measures the power transmission to the through port and crossing ports, insertion loss and S-parameters. Four simulations are typically required to get the full S-parameter matrix; one for each port of the device. The number of simulations also scales up with the number of modes in the measurement. The S-parameters are used to build a compact model in INTERCONNECT.
Step 1: Optimize device
Run an initial simulation to ensure the simulation is setup properly and obtain preliminary results. Find the optimal crossing geometry for the TE mode using the optimization feature.
Step 2: S-parameter sweep
Extract the device S-parameters, to create a compact model in INTERCONNECT.
Step 3: Compact model
Import the S-parameters to create a compact model in INTERCONNECT
The sample crossing used in this example has four-fold symmetry, which reduces the number of simulations required to characterize the crossing. It is straightforward to extend the example for crossings without such symmetry.
Run and results
Instructions for running the model and discussion of key results
Step 1: Optimization
- Open the waveguide_crossing.fsp file in FDTD and click the Run button.
- Results can be explored manually by right-clicking the monitors and visualizing the quantity of interest.
- Optionally, make the following changes to speed up the simulation:
- Disable the mesh override (“mesh”)
- Use “Anti-Symmetric” boundary for “y min bc”
- Disable “port 4”;
- Set “mesh accuracy” to 2.
- Run the optimization “optimization” to optimize the crossing structure based on the figure of merit (FoM) defined in “model”.
- Plug in the optimized parameters to the “crossing” structure group to build the structure.
The Frequency-domain field profile monitor (monitor) shows the steady state field profile in the device. Ripples in the field around the input port are due to interference between forward and backward propagating fields.
The crossing consists of four identical arms and each arm is drawn using a 13-segment polygon. We optimize the crossing arm section widths for the maximum FOM. The FOM is defined in “model” as the average transmission (over wavelength) to the crossing through port minus the transmission to the crossing ports and the reflection.
FOM = transmission(port 3) – transmission (port 2) – transmission(port 4) – reflection(port 1)
To speed up the optimization process, we can disable the mesh override and use coarse mesh; this can still give us the correct trend of the FOM. Symmetry boundary conditions are also used to further speed up the simulation.
Step 2: S-parameter matrix sweep
- Optionally, if step 3 of above step is performed:
- Set “mesh accuracy” to 3
- Set all boundary conditions to “PML”
- Enable “port 4”
- Enable mesh override (“mesh”).
- Run the “s-parameter sweep” in the file to get the S-parameter of the device for each port and mode of interest.
- S-parameter sweep results can be explored manually by right-clicking the sweep and visualizing the quantity of interest.
- Export the S-parameters to file by right-clicking on the sweep and selecting the “Export to INTERCONNECT” option.
- Optionally, if group delay is critical, use the add_group_delay_FDTD_Spar.lsf script file to add the group delay specification in the S-parameter file that is generated in step 4.
- Run the script waveguide_crossing_plot.lsf to generate the power transmission and insertion loss plots.
S-parameters are complex amplitude reflection and transmission coefficients that characterize the input/output behavior of the device. See the appendix for more information. The following figure plots the normalized power transmission (abs^2 of s-parameters) from port 1 to port 2, 3 and 4 in TE mode. The plot indicates that the majority of the light goes to port 3 of the waveguide crossing.
The insertion loss for the waveguide crossing measures the loss of signal power from the insertion of the crossing from the input port (port 1) to each output port (port 2, port 3 and port 4). The insertion loss is generally measured in dB. With the optimized junction for the waveguide crossing, we see very small insertion loss for the through port (port 3) and large insertion loss for the crossing ports (port 2 & port 4) for a broad operating bandwidth (1500 nm – 1600 nm), as indicated in the next plot. This means that majority of the signal goes to the through port of the crossing.
Step 3: INTERCONNECT compact model
- Open the waveguide_crossing.icp file in INTERCONNECT.
- Import the S-parameter file generated in Step 1 to the Optical N Port S-Parameter element (WGD Crossing).
- Run the simulation and results can be explored manually in the Result View window of the analyzers by
- right-clicking the result entry and selecting "Visualize" or "Add to visualizer..."
- double-clicking the result entry
The power transmission measured in INTERCONNECT is the same as the s-parameter power transmission measured in FDTD, as expected.
Important model settings
Description of important objects and settings used in this model
Ports act as a combination of mode source, field monitor and mode expansion monitor. It is important to ensure Port object span is large enough to contain the modes of interest. The purple arrow of the port objects indicates the active port that will inject light into the simulation. The source injection axis and direction can be set in the “Modal Properties” tab of the individual port object. When selecting the mode profile, use the ‘fundamental TE’ or ‘fundamental TM’ option to select the appropriate mode. Visualize the mode data to confirm the correct mode was found.
S-parameter matrix sweep
By default, the S-parameter matrix sweep includes all selected modes for all ports. For symmetrical structures, users have the choice to not excite all the ports and map some of the results from other ports. This can be done by unchecking the “Excite all ports” option and selecting the “Active” ports then Mapping from the active ports for inactive ports or using the "Auto symmetry" button for automatic mapping.
In this example, we take advantage of the symmetric structure of the waveguide crossing and map the s-parameter sweep result of port 3 from port1, and port 4 from port 2 to reduce the sweep time. The s-parameter sweep with this mapping runs 2 simulations instead of 4 (when all ports are simulated) so the sweeping time will be reduced by half.
S-parameter export: Mode ID and location
Use the “Custom define” option for the “INTERCONNECT Export Setup” to define the Mode ID and port location properties for the exported data.
The file export automatically assigns a “Mode ID” to each mode. It is often necessary to manually set the “Mode ID” so they are consistent with the “orthogonal identifier” conventions used by INTERCONNECT (see next point). For example, the fundamental TE mode in INTERCONNECT is always “orthogonal identifier = 1”.
Set the “Port location” field based on the geometry of the device so the port terminals in INTERCONNECT are displayed on the correct side of the element.
The geometry of the waveguide crossing consists of four identical arms and each arm is generated using a polygon with 13 vertices. There are other options to generate the geometry such as using GDS import and so on.
Symmetry and S-parameter sweeps
Symmetry boundaries in the X and Y dimensions cannot be used when doing the s-parameter matrix sweep, as the symmetry boundary causes the port object to be disabled. Users can still take advantage of the symmetry of the structure by using the port mapping feature in the s-parameter matrix sweep.
Optical Network Analyzer (ONA) excited mode
The ONA in INTERCONNECT can only excite one polarization of light at a time and it can measure all the polarization/mode combinations as results. The setting for the excitation mode is the “orthogonal identifier” property in the “Waveguide” section. “orthogonal identifier” = 1 indicates TE0 mode and “orthogonal identifier” = 2 indicates TM0 mode and so on.
Updating the model with your parameters
Instructions for updating the model based on your device parameters
- Set the source wavelength range of interest.
- Replace or update the waveguide crossing structure to match your device. The object geometry can be defined using primitive elements, or imported from a file.
- Select the modes of interest in the port objects.
- Update the port position and size. Ports should be centered on each waveguide. The span should be large enough to cover the entire extent of the modes of interest.
- For users interested in optimizing the device, ensure the object is parameterized. Update the Optimization task with the appropriate parameters to vary. Similarly, update the script in the “model” object that calculates the Figure of Merit to optimize.
Taking the model further
Information and tips for users that want to further customize the model
This example is for TE mode only. Users can select all the mode(s) of interest in the ports and generate the s-parameter of the waveguide crossing for multi-modes.
This example uses the symmetric waveguide crossing structure and takes advantage of symmetrical boundary conditions and port mapping in the simulation. For non-symmetric structures, users need to disable the symmetrical boundaries and the port mapping in the s-parameter matrix sweep.
Additional documentation, examples and training material
- Ma, Yangjin, et al. "Ultralow loss single layer submicron silicon waveguide crossing for SOI optical interconnect." Optics express 21.24 (2013): 29374-29382.
Related Ansys Innovation Courses
Additional background information and theory
S-parameter extraction from component level simulations of passive photonic devices
The S-parameter matrix formalism is a common approach to build compact models of photonic devices to be used in circuit-level simulations . Assuming the response of the device to optical signals is linear, it can be modeled by a network (black box) with multiple network ports, where each of them receives an incoming signal and scatters or reflects an outgoing signal.
We assume the device has N physical ports (which typically are input/output waveguide channels) and each of these supports a certain number of modes of interest. Each element of the S-parameter matrix is the ratio between the complex envelopes of the optical modes in two physical ports. For example, to model the behavior of the fundamental TE and TM modes at the input/output waveguide channels of a 1x2 MMI we need a 6x6 S-parameter matrix, given that there are two modes at each of the three physical ports. Each column of the S-parameter matrix corresponds to a fixed input physical port and mode and each row corresponds to a fixed output physical port and mode.
The approach to extract the S-parameter matrix of a photonic device depends on the solver being used. In both FDTD and EME solvers, port objects can be setup at each of the physical ports. The main differences between the solvers for the S-parameter extraction are:
- FDTD injects one mode in one input port object per simulation, while EME can solve for all the elements of the S-matrix in one simulation;
- FDTD is broadband so many frequency points can be calculated in one simulation, while results from EME are for a single frequency per simulation.
Therefore, in both solvers it is necessary to run sweeps to obtain the full S-parameter matrix at multiple frequency values, either by sweeping over the input physical ports and modes or over the frequency points.
Use the examples in the Application Gallery to determine the appropriate solver for your component. This section describes the recommended approach for S-parameter extraction and export to INTERCONNECT once you have determined the appropriate solver.
In this section we describe how to:
- For FDTD, calculate the S-parameter matrix and save it to a file with the appropriate format to be imported in an Optical N-port S-parameter primitive element in INTERCONNECT.
- For EME, calculate the S-parameter matrix and save it to a file with the appropriate format to be imported in an Optical N-port S-parameter primitive element in INTERCONNECT.
- Optionally, more accurately account for group delay of the device. This is important in elements that will be part of phase-sensitive circuits (for example, cavities, resonating structures and interferometric devices). We will use the group delay specification in the S-parameter file , required for the group delay option in the digital filter of the Optical N-port S-parameter element in INTERCONNECT.
How to extract S-parameters (FDTD)
- Check that the port objects in the simulation have been set up correctly to collect all the data required for the S-parameter matrix. In particular, make sure that all the desired modes are selected at the ports; the “user select” option in the Modal Properties allows you to pick multiple modes (for example, fundamental TE and TM modes) when necessary for the full S-parameter matrix.
- Create a S-parameter matrix sweep item in the “Optimizations and Sweeps” window with the following settings:
- S-Matrix Setup tab:
- The modes selected at each port are displayed in this tab. Make sure the list is consistent with the physical ports and modes you want to include in the S-parameter matrix (see step 1).
- The option “Excite all ports” is enabled by default, which means that a simulation will be run for every port and mode in the list to calculate each column of the S-parameter matrix. To reduce the number of simulations you can map between columns taking advantage of symmetries in the structure. If that is the case, disable the “Excite all ports” option and click on the “Auto symmetry” button to let the solver determine the appropriate mapping based on the port locations. In some cases adjustments to the mapping are required so it is always recommended to review the settings after applying auto symmetry.
- INTERCONNECT Export Setup tab:
- Select the “Custom define” option to define the mode ID and port location properties.
- The file export automatically assigns a mode ID to each mode. It is often necessary to manually set the mode ID so they are consistent with the orthogonal identifier convention to be used in INTERCONNECT. This is important, for example ,when connecting the Optical N-port S-parameter element to an Optical Network Analyzer (ONA) in INTERCONNECT. The setting for the excitation mode in the ONA is the “orthogonal identifier” property in the “Waveguide” section. The typical convention is to use “orthogonal identifier” = 1 for the fundamental TE mode and “orthogonal identifier” = 2 for the fundamental TM mode.
- S-Matrix Setup tab:
- After running the S-parameter sweep, the “Visualize” and “Export to INTERCONNECT” options become available in the context menu of the S-parameter sweep item. The “Export to INTERCONNECT” option allows you to generate a text file with the S-parameters. This file has the format required by the Optical N-port S-parameter primitive in INTERCONNECT without group delay specification, which is appropriate when the phase or group delay of the device are not critical for the compact model.
- If phase and group delay are critical, the group delay can be estimated by calculating the slope of the phase as a function of frequency at the center frequency/wavelength. The script add_group_delay_FDTD_Spar.lsf takes as input the S-parameter text file created in step 3 and modifies it to include the group delay. For more information see the section S-parameter extraction for group delay option in INTERCONNECT below.
How to extract S-parameters (EME)
- Create a parameter sweep in the “Optimizations and Sweeps” window with “model::EME::wavelength” as a parameter and “::model::EME::user s matrix” as a result; this sweep will run multiple simulations with different wavelengths. An alternative is to use the “Wavelength sweep” feature in the EME Analysis window , which will use only one simulation to quickly estimate the S-parameters over a given wavelength range; however, this feature should not be used to obtain final results as the accuracy of the calculation depends on the type of simulated structure.
- Examples that use EME include a script that exports S-parameters in the format required by the Optical N-port S-parameter primitive. In the script you need to provide the INTERCONNECT port definitions (names and locations) and the S-parameter file name. The following actions are performed by the script:
- Run the parameter sweep for wavelength, collect the results and write them in the text file with the appropriate format.
- In situations where the phase and group delay are critical, the script will also run the simulation and the EME propagation for the center wavelength with the option “calculate group delays” enabled. The group delay is added to the text file and the S-parameter phase is corrected as explained below in the section S-parameter extraction for group delay option in INTERCONNECT .
- The output of the script is the S-parameter text file in the correct format ready to be imported in INTERCONNECT.
S-parameter extraction for group delay option in INTERCONNECT
Some photonic circuits rely on controlling the phase of the optical signal traveling through the different components; therefore, the phase of the S-parameters can be very important. There are a couple of challenges to capture the phase correctly in the Optical N-port S-parameter primitive in INTERCONNECT:
- Spectral sampling of the phase in the S-parameter data: Typically, the variation of the phase as a function of frequency is mostly linear with a slope that is proportional to the group delay (the delay of the optical signal between two ports). Therefore, in long devices the phase can change very quickly with frequency, and a fine sampling in frequency would be necessary to avoid phase changes greater than \( 2 \pi \) so that the phase has the correct slope after unwrapping it. This is important for both frequency- and time-domain simulations in INTERCONNECT.
- Capturing the correct group delay and frequency dependence of the S-parameters in INTERCONNECT time-domain simulations: For time-domain simulations the most common type of filter used in the Optical N-port S-parameter primitive is the finite impulse response (FIR) one, which has multiple options for the estimation of taps. The choice depends on what is the most significant aspect of the element response to be captured in the circuit simulations. In elements where the phase is important, typically it is necessary to capture both the group delay and the frequency dependence of the S-parameters correctly.
The “group delay” option for the “number of taps estimation” in the digital filter settings of the Optical N-port S-parameter primitive provides solutions to both challenges:
- The group delay is captured correctly without requiring a fine spectral sampling of the S-parameters by using group delay estimates provided by the user for each S-parameter matrix element at the center frequency/wavelength.
- In most cases, the FIR filter in time-domain simulations can capture the group delay and frequency dependence of the element response more accurately with the "group delay" option, compared to other options for tap estimation. With the "group delay" option, the number of taps available to the filter depends on the sample rate of the INTERCONNECT simulation and the group delay estimate provided by the user: for a given sample rate, there are more taps available for larger group delays. Since most photonic devices are long compared to the wavelength of the signal, typically the number of available taps is not a concern. Only in cases where the device is relatively short, it might be necessary to increase the sample rate.
Compared to the regular file format for S-parameter files in INTERCONNECT, the group delay option requires a slightly different format , which includes the group delay estimate in the header of each S-parameter data block; furthermore, the phase provided in the file needs to be adjusted to remove the linear contribution associated with the group delay estimate. The previous section describes how this type of file can be generated when using FDTD or EME for the S-parameter extraction. For more information on the group delay option see the discussion here .