Skip to content

Releases: SiEPIC/SiEPIC-Tools

v0.5.5

11 Feb 09:37
Compare
Choose a tag to compare

Unit Testing, Continuous Integration

  • GitHub Actions to test the code

Scripting:

  • connect_pins_with_waveguide: option to put the waveguide (and error Paths) in a specific parent cell
  • update y_splitter_tree: use sbends if available for the waveguide, as defined in WAVEGUIDES.XML. adjust the origin to be the left side input waveguide.
  • connect_pins_with_waveguides: error handling. raise Exception rather than just a Message window: in case there are many errors, it will stop at the first one.

v0.5.4

11 Dec 01:43
Compare
Choose a tag to compare
  • improvements to Docker build for testing
  • support for DFT.xml file when running verification using PyPI
  • area calculation function update, using all layers

v0.5.3

20 Nov 09:50
Compare
Choose a tag to compare
  • Functional Verification ('v' hotkey) is working in external Python, SiEPIC.utils.verify_layout

v0.5.0

18 Nov 09:51
Compare
Choose a tag to compare

SiEPIC-Tools is now available on PyPI.

You can now create PCells and layouts using one of three approaches:

  • KLayout Application: GUI graphical mode, with the KLayout IDE
  • KLayout batch mode: run using klayout -zz -r, without any graphics
  • Python "import SiEPIC", using VSCode, Spyder, Jupiter notebooks, etc.

The SiEPIC-EBeam-PDK has been made compatible with the external Python environment approach.

The following example will create a layout with all the EBeam PDK cells on a layout. Change the path to point to your local GitHub copy of the EBeam PDK, then run this file: https://github.com/SiEPIC/SiEPIC_EBeam_PDK/blob/master/klayout/EBeam/pymacros/Example_scripted_layouts/UnitTest_All_Library_Cells.py
You can run it in VScode.

image

Several additional functions have been added:

  • SiEPIC.scripts.instantiate_all_library_cells
  • SiEPIC.scripts.load_klayout_technology
  • SiEPIC.utils.new_layout

Some performance improvements and bug fixes have been made.

v0.4.6

11 Nov 09:25
Compare
Choose a tag to compare
  • SiEPIC-Tools now functions in headless mode
    • running using klayout -zz -r script.py
    • updated functions to work without Qt libraries and the GUI
    • to be compatible with unit testing script in the EBeam PDK
  • Make SiEPIC component from cell
  • bug fix: snap components in the GUI. was introduced after making change to find_pins()

v0.4.5

08 Nov 08:09
Compare
Choose a tag to compare
  • fix Lumerical CML installation, via SiEPIC > Simulation, Circuit > Setup Lumerical INTERCONNECT Compact Model Library

v0.4.4

08 Nov 07:29
Compare
Choose a tag to compare
  • bug fixes in undo
  • bug fixes in path to waveguide, in the order in which snapping, crossings, and waveguide generation, is performed
  • moved Verification to separate Python file
  • new verification rule: identify pin errors in components
  • new verification rule: shapes need to be inside a component

v0.4.3

27 Oct 20:24
Compare
Choose a tag to compare

bug fix:

  • sometimes a KLayout crash occurred after an Undo operation, after having done "Shift-W" Waveguide to Path.

improvement:

  • Schematic Driven Layout [work in progress] now uses the Instantiate utility when pulling from INTERCONNECT

function improvement:

  • delete_extra_top_cells: argument is now either a cell or text

v0.4.2

29 Sep 23:42
Compare
Choose a tag to compare
  • bug fix, opics simulation error, utils.py

v0.4.1

21 Sep 06:41
Compare
Choose a tag to compare
  • automated crossing instantiation
  • minor updates and fixes
  • Salt package manger installation issue
  • cell replacement function update
  • opt_in label updates, addition of PWB