Creating custom waveguides in KLayout with SiEPIC
Once installed over KLayout the AIM PDK with SiEPIC tools includes the most frequently used waveguide materials and widths for the AIM MPW foundry. However, sometimes other widths may be desired for custom designs. In order to take advantage of the SiEPIC tools additional waveguides need to be defined in the WAVEGUIDES.xml file, as outlined below.
PLEASE NOTE: if or when you upgrade to a newer version of the AIM PDK these these updates would be overwritten. Therefore, you would need to make these changes again, or save a copy of your WAVEGUIDES.xml file and merge it after upgrading.
-
Navigate to the AIM Photonics KLayout “tech”
folder, typically installed here:
C:/Users/[username]/KLayout/tech/AIMPhotonics_PDK
-
In the tech folder, open the WAVEGUIDES.xml file
using a text editor (e.g., Notepad++)
-
The WAVEGUIDES.xml file contains the
specifications for each waveguide. To create a new custom waveguide, select the
code for an existing waveguide. This will be from the <waveguide> tag to
the </waveguide> tag, as in Figure 1.
Figure 1. The code
for the 1.2um FNAM waveguide has been selected.
-
Copy and paste the code on new lines.
-
Edit the code as desired (see Figure 2). The
parameters in this code refer to the following:
-
wg_width: The width of the waveguide
-
CML: The library from which the model will be
drawn (if a model exists, otherwise this line can be removed)
-
Model: The specific model to use (if a model
exists, otherwise this line can be removed)
-
Component
-
Layer: The layer within the component that you
are going to be specifying parameters for, where the layers are:
-
REAM, SEAM, FNAM, or SNAM: This is the actual
GDS layer that will be used for the waveguide
-
Waveguide: This is the SiEPIC layer that lets
SiEPIC know this is a waveguide component
-
DevRec: This is the “Device Recognition” layer
used by SiEPIC for pin snapping
-
Width: The width of the layer
-
For the Si/SiN layer and the Waveguide layer,
this parameter should equal the waveguide width
-
For the DevRec layer, this parameter should be a
few microns larger than the waveguide width
-
Offset: The offset of the layer from the center
of the waveguide (should be 0 except for when making a rib waveguide with REAM
at a nonzero offset)
Figure 2. The code
from Figure 1 has been copied, pasted, and edited to create a 1.0um-wide FNAM
waveguide.
-
Save the file.
-
Test the file by opening a layout, drawing a
path, selecting the path, and pressing hotkey “2” (Path to Waveguide, GUI) to
verify that the new waveguide option appears in the configuration list, as in
Figure 3.
Figure 3. Verifying
that the new 1.0um-wide FNAM waveguide appears in the Configuration drop-down.
Related Articles
PDK Installation for KLayout/SiEPIC
Please confirm the following steps are executed before using the KLayout /SiEPIC flow: Install KLayout version 0.25 and above: https://www.klayout.de/build.html Install SiEPIC-Tools: Details on how to install SiEPIC-Tools can be found at ...
KLayout for AIM Photonics - Training Videos
Please see below the tutorials and tips on using KLayout with the AIM Photonics PDK created by Spark Photonics. Introduction Overview and Layout of a MZM Creating Custom Components Running DRC in KLayout Tips, Tricks and Best Practices
KLayout DRC
Usage: 1. The KLayout DRC decks are included in the KLayout EPDA package. To run KLayout DRC, open your layout file in KLayout. You may need to update your KLayout to version 0.25 and above. 2. Go to Tools->DRC and select the desired ...
Design Best Practices and Common Errors
This checklist is provided to help AIM's users ensure that their layouts will be fabricated as intended and to avoid the most common errors or issues encountered when submitted a design for fabrication on the MPW. This article was created with the ...
Installing AIM Photonics PDK on MacOS
In order for the PDK to operate correctly on Mac OS, please install the PDK into: ~/.klayout/tech Alternatively you could also try the instructions for the publicly available EBeam PDK: ...