Installation instructions - SiEPIC/SiEPIC_EBeam_PDK GitHub Wiki

SiEPIC-EBeam-PDK Installation

There are three parts: 1) installation of KLayout, 2) installation of SiEPIC-Tools + SiEPIC-EBeam-PDK, and 3) installation of the SiEPIC-EBeam compact model library in Lumerical Interconnect.

Part 1 - Install KLayout: version 0.27.5 or greater (0.28.x recommended)

Part 2 - Install SiEPIC-Tools + SiEPIC-EBeam-PDK using KLayout's Package Manager

Open KLayout, then menu item Tools | Manage Packages

  • Install the 'SiEPIC-Tools' package (install this one first)

  • Install the 'SiEPIC-EBeam-PDK' package

    • Note: If you receive an error "Error downloading file", please report it to the KLayout developer, and install the package using GitHub (instructions below).
  • Windows users: Install the 'Windows_Python_packages_for_KLayout' pakage

  • Restart KLayout

  • You should see a new menu item, "SiEPIC" with the version number

  • Check back periodically in the Package Manager for updates

Part 3 - Verify KLayout + SiEPIC, using an example layout

  • Purpose: verify that all these tools (KLayout, SiEPIC-Tools, the EBeam PDK) are working together with an example
  • Open KLayout
  • menu SiEPIC > Example Layouts > Mach-Zehnder Interferometer (EBeam)
    • you should see a layout consisting of a test structure with grating coupers and an interferometer
  • menu SiEPIC > Simulation, Circuits > Circuit Simulation: OPICS
    • You may see a dialog window that asks if you want to install plotly, and other Python packages. Choose “yes”. It may take several minutes for it to download and install the package.
    • Choose one of the circuits (opt_in labels) to simulate; default is ok.
    • The OPICS circuit simulator should run, and you should see an optical transmission spectrum appear in your web browser

Part 4 - Install the SiPIC-EBeam Compact Model Library (CML) in Lumerical INTERCONNECT via KLayout

  • Requirements:

    • You need Lumerical INTERCONNECT installed, and you need a license feature called "INTERCONNECT and Automation API" available.
  • Create a new layout (File | New), and choose EBeam as the technology, top cell = test.

  • then menu item, SiEPIC | Simulation, Circuits | Setup Lumerical INTERCONNECT Compact Model Library

    • INTERCONNECT should open, and you should get a confirmation that the library is loaded
    • If this step fails, please try the manual installation procedure, described below in "Alternative installation instructions"
  • Disable expression checking

    • The EBeam CML uses variables and expression for Monte Carlo simulations. The variables are only defined when KLayout calls INTERCONNECT to run the simulations. The new version of INTERCONNECT checks for undefined variables. When creating simulations in INTERCONNECT alone, there may be errors preventing the simulation (e.g. Unable to evaluate expression '%MC_uniformity_width%'). The solution is to disable expression checking, which can be done by turning off the "Validate expressions prior to running simulation" in the Options window.
    • Or, type in "expressioncheckoff;" in the Script Prompt window.
    • image002

Part 5 - Verify KLayout + SiEPIC + Lumerical integration, using an example layout

  • Purpose: verify that all these tools (KLayout, SiEPIC-Tools, the EBeam PDK, and Lumerical INTERCONNECT) are working together with an example
  • Open KLayout
  • menu SiEPIC > Example Layouts > Double-bus ring resonator sweep (EBeam)
    • you should see a layout consisting of many test structures of grating coupers and ring resonators
  • Save the layout
  • menu SiEPIC > Simulation, Circuits > Circuit Simulation: Lumerical INTERCONNECT
    • Choose one of the circuits (opt_in labels) to simulate; default is ok.
    • Lumerical INTERCONNECT should load, and you should see an optical transmission spectrum

Alternative installation instructions:

Alternative to Part 2 - Install SiEPIC-EBeam-PDK using GitHub

  • This method allows you to fetch the latest version of the package by fetching it directory from the repository. This alternate installation method downloads the files from GitHub, and makes them available to KLayout either by telling KLayout where to find them, or by creating symbolic links from your local GitHub folder to the KLayout folder.

  • Install GitHub Desktop https://desktop.github.com/ (for Windows and Mac OSX users; Linux users need to use git)

  • Install this repo using GitHub Desktop: click on the green button Code > Open in GitHub Desktop

PDK Updates via GitHub:

  • Subscribe to PDK updates by clicking on the Watch button at the top
  • To update the PDK, open GitHub Desktop, and click on "Pull Origin"
    • Restart KLayout

Option a: Install SiEPIC-EBeam-PDK using GitHub and KLayout > Add Technology

  • Start KLayout
  • Menu Tools > Manage Technologies
  • In the window on the left (Technologies), right click, then Import Technology
  • Navigate to your GitHub folder and select GitHub / SiEPIC_EBeam_PDK / klayout / EBeam / EBeam.lyt.
  • Create a new layout, menu File > New Layout, Technology = EBeam

Option b: Install SiEPIC-EBeam-PDK using GitHub and symbolic links

Alternative to Part 4 - Install the SiPIC-EBeam Compact Model Library (CML) in Lumerical INTERCONNECT

  • You need Lumerical INTERCONNECT installed, and you need a license feature called "INTERCONNECT and Automation API" available.

  • Open Lumerical INTERCONNECT

  • Open the window "Element Library"

  • Scroll down to "Design Kits", and right-click, then "Install"

  • Compact Model Library Package: find the latest EBeam_vxxxx.CML files in the PDK, which can be downloaded from GitHub.

  • Destination Folder: can be anywhere (not temporary) on your computer.

  • Disable expression checking (see above, "expressioncheckoff;" in the Script Prompt window).

  • Close INTERCONNECT so that the library information and settings are saved.