Overview
Loading effect of electro-optical (EO) components might have strong impacts on electrical driver/receiver designs. For accurate electro-optical integrated circuit designs, it is critical to add electrical loads to EO component models. This documentation describes the implementation for EO component electrical load.
Component Hierarchies
An EO component should include the following Virtuoso library cells and views:
Cell Name | View Name | Description |
<ComponentName>_O |
symbol |
A symbol view for schematic design |
INTERCONNECT | a stop view for INTERCONNECT netlister, for ONA/OTRAN analysis | |
<ComponentName>_EO | symbol | A symbol view for schematic design |
INTERCONNECT | a stop view for INTERCONNECT netlister, for electro-optical co-simulation | |
schematic | It consists of <ComponentName>_O cell and its electrical load circuit, with proper connections between the two. |
where <ComponentName> is the name of the EO component.
As an example, we show the implementation for a photonic PN-depletion phase shifter. As shown in below, the device’s electrical model can be simplified as a RC low-pass filter, where resistors R0 and R1 correspond to the waveguide slab resistance and capacitor C0 corresponds to the reverse biased PN junction capacitance. The voltage change across C0 perturbs the carrier concentration in the waveguide core, and therefore, it modulates the phase of light propagating through the phase shifter.
The Virtuoso library for such a device include the following cells and views:
The figure in below shows the schematic view for phase_shifter_EO, where the RC circuit is the electrical load model for the device; while the phase_shifter_O component contains the INTERCONNECT optical model for the device. For more information on the INTERCONNECT optical model, please refer to PN depletion phase shifter.
In electro-optical co-simulations, Spectre simulates the RC circuit to capture the device’s electrical loading effect, while INTERCONNECT simulates the phase_shifter_O component for the device’s optical response.
Netlist partition rules and setup
User should use phase_shifter_EO element for circuit schematic design and setup netlist config for simulation. The config setups for ONA, OTRAN, and electro-optical co-simulation are different, which is described in below.
Cell bindings for ONA/OTRAN simulation
For INTERCONNECT ONA or OTRAN analysis, electrical load should not be instantiated in INTERCONNECT netlist because it can’t be simulated by INTERCONNECT. Therefore, in the config setup, phase_shifter_EO should be bonded to “INTERCONNECT” view so that INTERCONNECT netlist expansion can stop by the phase_shifter_EO level. This can be done either by manually set “View To Use” to “INTERCONNECT” or by the following HED setup for View List and Stop List, as shown in below
Here is the generated INTERCONNECT netlist in this case:
Inst0 net1 net2 net3 net4 phase_shifter_model temperature=300 wg_length=0.0005
where "phase_shifter_model" refers to the INTERCONNECT CML model of the device.
Cell bindings for electro-optical co-simulation
For electro-optical co-simulation using Spectre-INTERCONNECT interop, phase_shifter_EO component should be bonded to “schematic” view; electrical load components should be bonded to their electrical view type, such as “spectre”; phase_shifter_O component should be bonded to “INTERCONNECT” view. This can be done either by manually set “View To Use” option for each individual component or by the global setup for View List and Stop List:
Here are the generated Spectre netlist and INTERCONNECT netlist, respectively:
// Spectre netlist
subckt phase_shifter_EO ele_an ele_cat opt_1 opt_2
R1 (net1 ele_an) resistor r=1K
R0 (net5 ele_cat) resistor r=1K
C0 (net1 net5) capacitor c=1p
ends phase_shifter_EO
Inst0 net010 net09 net018 net017 phase_shifter_EO
* INTERCONNECT netlist
.subckt phase_shifter_EO ele_an ele_cat opt_1 opt_2
Inst1 net1 net5 opt_1 opt_2 phase_shifter_model temperature={temperature} wg_length={wg_length} sch_x=1.000000 sch_y=1.000000
.ends phase_shifter_EO
Inst0 net010 net09 net018 net017 phase_shifter_EO temperature=300 wg_length=0.0005 sch_x=1.875000 sch_y=2.062500
.ocosim Inst0/net1 Inst0/net5
where "phase_shifter_model" refers to the INTERCONNECT CML model of the device.
Setup for CML internal electrical equivalent model
Electrical low-pass filter (LPF) is widely used in INTERCONNECT CML models for simulating EO component electrical bandwidth. The LPF can be enabled/disabled through INTERCONNECT Root Element property “internal electrical equivalent”. Note that this is a global setup that applies to all the EO components.
In the case of OTRAN analysis, user can set “internal electrical equivalent” to “true” so that electrical bandwidth is properly captured by the CML model. This can be done through the OTRAN analysis setup.
In the case of electro-optical co-simulation analysis, EO component electrical bandwidth can be simulated by either its electrical load model or the electrical LPF inside its CML model, rather than both. To avoid double counting the electrical bandwidth, user should set “internal electrical equivalent” to “false” through the Co-simulation Setup.