You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Objective: run a 3D-FDTD simulation for a KLayout component to generate the S-Parameters; automatically import them into INTERCONNECT to enable circuit simulations.
Concept based on 2014 UBC-Mentor Graphics project by Shiyu Stephen Liang, Trammy Nguyen, and Phuong Tran.
Approach:
User defines a cell in KLayout (fixed or parameterized PCell), including DevRec and PinRec
Lumerical_INTERCONNECT_component=gds2fdtd: KLayout will treat this as regular component, with a Spice command that will ask INTERCONNECT to load the simulated S-parameters
Configuration for the FDTD simulation in KLayout (text label within the cell; alternatives: a global GUI - how do you save settings?, hardcoded):
wavelength range
polarization
FDTD mesh accuracy
PCell parameters
example: Spice_param:"load from file"=true "s parameters filename"="wraparoundDC_1550nm_100nm_TE_mesh3_PCellParam1_1e-6_PCellParam2_50e-9.dat" (for an example component called "wraparoundDC") (no equal signs allowed in the Spice file parameters)
Menu for SiEPIC - Simulation - Simulate component using FDTD:
if one component selected, simulate only that one; if none selected, find all gds2fdtd components which don't have an S-Param file on disk and simulate them all.
determine a cell name from the cell text (including simulation parameters and PCell parameters); use this for the GDS export, the S-parameter file to be created, and for INTERCONNECT to load the S-param file.
export the cell as a GDS, saved in the project folder
FDTD script (.lsf) embedded within KLayout Python macro. Call FDTD with LSF script to: load GDS, solver configuration, Ports (using Lumerical's new S-param ports), save S-Param file in the same project folder using the above filename
SiEPIC - Verification:
extra functionality to error-check that the S-Param file for the gds2fdtd component exists.
KLayout-INTERCONNECT: run circuit simulations.
create netlist as usual, with a special function to deal with the gds2fdtd component. (unless we can just use the component name = SPAR, and the Spice_param parameters used to pass the filename to load)
Implement as an N-port SPAR import with a specified file
Double-check if this will work / figure out:
check that a netlist can include an N-port SPAR import with a specified file.
doesn't work on the SPAR built-in, but created a component gds2fdtd which is a copy of the SPAR. Successfully loads S-Params and changes the number of ports via the syntax: spar N100 N101 gds2fdtd library="Custom/ebeam_v1.2" sch_x=50 sch_y=10 "load from file"=true "s parameters filename"="/Users/lukasc/SiEPIC_EBeam_PDK/Lumerical_EBeam_CML/ebeam_v1.2/source_data/bdc_TE_source/EBeam_1550_TE_BDC.sparam"
maybe just do what already do for the other components: sort the KLayout pins in alphabetical order, and export these into FDTD in order where FDTD/INTERCONNECT will use the default "port 1", "port 2" and so on. Then they will be correctly connected.
FDTD settings:
material model: configure to fit Silicon - Palik over a range of 1.2 to 1.7 (hard coded)
use PMLs with reduced reflections (say -50 dB)
use metal for z-min z-max
Also, stop using /tmp for the spice & ICP files? Instead, put the in the folder where the GDS is saved, which will make it easier to keep track of all the project files (including the new S-parameters, which should be permanently saved for future simulations).
The text was updated successfully, but these errors were encountered:
Objective: run a 3D-FDTD simulation for a KLayout component to generate the S-Parameters; automatically import them into INTERCONNECT to enable circuit simulations.
Concept based on 2014 UBC-Mentor Graphics project by Shiyu Stephen Liang, Trammy Nguyen, and Phuong Tran.
Approach:
Spice_param:"load from file"=true "s parameters filename"="wraparoundDC_1550nm_100nm_TE_mesh3_PCellParam1_1e-6_PCellParam2_50e-9.dat"
(for an example component called "wraparoundDC") (no equal signs allowed in the Spice file parameters)Double-check if this will work / figure out:
check that a netlist can include an N-port SPAR import with a specified file.
spar N100 N101 gds2fdtd library="Custom/ebeam_v1.2" sch_x=50 sch_y=10 "load from file"=true "s parameters filename"="/Users/lukasc/SiEPIC_EBeam_PDK/Lumerical_EBeam_CML/ebeam_v1.2/source_data/bdc_TE_source/EBeam_1550_TE_BDC.sparam"
Figure out the port ordering, and make sure KLayout/FDTD/INTERCONNECT are consistent.
FDTD settings:
Also, stop using /tmp for the spice & ICP files? Instead, put the in the folder where the GDS is saved, which will make it easier to keep track of all the project files (including the new S-parameters, which should be permanently saved for future simulations).
The text was updated successfully, but these errors were encountered: