RTimothyEdwards / open_pdks

PDK installer for open-source EDA tools and toolchains. Distributed with setups for the SkyWater 130nm and Global Foundries 180nm open processes.
http://opencircuitdesign.com/open_pdks
Apache License 2.0
267 stars 85 forks source link

fixes for gdsfactory name-change "import gdsfactory.typings" & broken XML file :: changes are as .ZiP at the end... #405

Open olisnr opened 9 months ago

olisnr commented 9 months ago

if i try to start klayout using the sky130a PDK i get an error:

$ KLAYOUT_HOME='/ALL/pdk/sky130A/libs.tech/klayout'  klayout -e
ERROR: /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/via_generator.py:23: ModuleNotFoundError: No module named '**gdsfactory.types**'
  /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/via_generator.py:23
  /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/vias.py:20
  /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/__init__.py:21
  /ALL/pdk/sky130A/libs.tech/klayout/pymacros/sky130.lym:9 (class ModuleNotFoundError)

i can get this error also if i try to run the python code form /ALL/pdk/sky130A/libs.tech/klayout/tech/sky130A.lyp

it then gives:

`Output exceeds the size limit. Open the full output data in a text editor

ModuleNotFoundError Traceback (most recent call last) Cell In[1], line 9 6 technology_macros_path = os.path.dirname(os.path.abspath(file)) 7 sys.path.insert(0, technology_macros_path) ----> 9 from cells import sky130 11 # Instantiate and register the library 12 sky130()

File /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/init.py:21 2 # Copyright 2022 Mabrains LLC 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); (...) 17 # ---------------- Pcells Generators for Klayout of sky ---------------- 18 #============================================================================ 20 import pya ---> 21 from cells.vias import vias_gen 23 from .fet import 24 from .diode import

File /ALL/pdk/sky130A/libs.tech/klayout/pymacros/cells/vias.py:20 1 # Copyright 2022 Mabrains LLC 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); ... (...) 35 36 ) -> gf.Component():

ModuleNotFoundError: No module named 'gdsfactory.types'`

olisnr commented 9 months ago

the problem is gdsfactory.types are changed to gdsfactory.typings... we have to change this in the python code

olisnr commented 9 months ago

klayout.zip

this fixes this python module name change & the XML-error in sky130A/libs.tech/klayout/pymacros/sky130.lym