You'll need 2 windows:
- A text editor or IDE (Visual Studio Code, Pycharm, Spyder, neovim, Atom, Jupyterlab ...)
- Klayout to Visualize the GDS files. With the
klive
klayout package for showing GDS files when you run. Tools -> Manage PackagesComponent.show()
- You write your PCells in python.
- You execute the python code.
- You visualize the GDS Layout in Klayout, or run simulations using the plugin extensions directly from the layout (for devices) or netlist (from circuits).
For building large components can use a file-watcher and see your updates in KLayout every time you save.
- You execute the file watcher run this command on your terminal
gf watch --path /home/jmatres/my_chips
for watchingmy_chips
folder or run it in the current working directorygf watch --path .
- The file-watcher re-runs any python file
.py
or YAML.pic.yml
. For testing it you can go togdsfactory/samples/demo/circuits
, modify any of the files and take a look how klayout updates every time you save a file. - Thanks to the
cell
cache you can see your new component changes live updating the layout in Klayout.
The file watcher works with python or pic.yml
or YAML
- You can use any Schematic capture tool. Lumerical interconnect, QUCS or Xschem. Save the netlist into SPICE format.
- Convert SPICE to YAML. As the schematic didn't have placements you can infer the rought initial placements from the relative position of the schematic blocks.
- Modify YAML with file watcher until you are happy with the placements.