SiEPIC-Tools icon indicating copy to clipboard operation
SiEPIC-Tools copied to clipboard

Simulation: component, create compact model using FDTD

Open lukasc-ubc opened this issue 7 years ago • 6 comments

We have already done this before a few years ago (gds2fdtd); it needs to be integrated / redone.

Create a compact model using 3D-FDTD:

  • auto export the GDS for the selected device.
  • configure FDTD using GDS, and DevRec and PinRec.
  • run single simulation using from selection: user can verify it is working
  • run sparam simulation plus corners
  • save data into a Lumerical CML as a custom device

lukasc-ubc avatar Dec 28 '17 21:12 lukasc-ubc

Mostly working:

  • auto export the GDS (as polygons without a GDS file) for the selected device.
  • FDTD.xml file to configure the fabrication process and simulation parameters: one for each technology.
  • configure FDTD using Component & Pin class info; FDTD Ports with correct direction, polarization.
  • run single simulation using from selection: user can verify it is working
  • perform convergence testing on Z-span
  • run sparam simulation, save dat file
  • create an INTC element, import S-param data, create an SVG icon from polygon, save the element into the Custom CML

to do:

  • run sparam corners
  • support for dual-polarization simulation & s-parameters
  • add script to INTC element to interpolate S-parameters for MC siulations

lukasc-ubc avatar Jan 10 '18 22:01 lukasc-ubc

FDTD geometries presently have vertical sidewall angles. How to get these with an angle?

One possibility is to create an STP 3D CAD file (e.g., Solidworks) and FDTD can import these. There are python modules for creating STP files: e.g., http://www.pythonocc.org/page/2/

lukasc-ubc avatar Jan 10 '18 23:01 lukasc-ubc

When doing a dual polarization (TE, TM) simulation, the results for TM aren't correct, especially the intermediate plots in FDTD:

image

lukasc-ubc avatar Jan 24 '18 08:01 lukasc-ubc

If the wrong technology is selected, no pins are found, and the simulation doesn't work.

add a pin check before proceeding.

lukasc-ubc avatar Jan 24 '18 19:01 lukasc-ubc

To do:

  • FDTD simulations for PCells: method of allowing for multiple parameters. Use Spice_param variable. Automatically add spice_parameters to the component in INTC.

lukasc-ubc avatar Jan 28 '18 01:01 lukasc-ubc

to do:

  • corners for Monte Carlo

lukasc-ubc avatar Feb 26 '18 06:02 lukasc-ubc