To reuse a gds as Lib:
1. You need to specify a lib name for that particular gds while saving (like image below)
2. You 'll need to place the gds into ~/.klayout/libraries folder (sub folders might not work)
Thank you. It works well. I can able to use the reference libraries, but i couldn't see the Array Instance details where used in the reference library. Is there way to find the array information(rows/columns & row steps/column steps)?
You can use $KLAYOUT_PATH. This path lists the package folders that KLayout looks for components.
"Package folders" means there is a predefined substructure, so there is one path for different components. "Components" can be technologies, scripts, libraries and future extensions.
Each directory that is listed in $KLAYOUT_PATH is searched for components in
tech for technologies
macros, pymacros, ruby and python for script code
drc, lvs and d25 for these respective components
And finally libraries for the library layouts
So bottom line is that if you keep layouts in "libraries" subfolders, you can use $KLAYOUT_PATH like the proposed $KLAYOUT_LIBS. Of course, $KLAYOUT_LIBS could be added too, but then there need to be other library paths for the other components.
Comments
HI Newbeer,
Please refer to this post
Create a Custom Library
https://www.klayout.de/forum/discussion/comment/10074#Comment_10074
To reuse a gds as Lib:
1. You need to specify a lib name for that particular gds while saving (like image below)
2. You 'll need to place the gds into
~/.klayout/libraries
folder (sub folders might not work)Hi RawrRanger,
Thank you. It works well. I can able to use the reference libraries, but i couldn't see the Array Instance details where used in the reference library. Is there way to find the array information(rows/columns & row steps/column steps)?
HI Newbeer,
The Instance icon will bring up an side panel which allows you to choose the
cell that you previously placed in lib folder
the bottom half of the same panel provides a array property adjustment window
this allows you to place aa array of selected cell instance.
if you've missed this step during cell placement, you can always double click
on the cell instance to get access to the property window, Array instance adjustment function is also provided there.
I have a question about this:
This would seem to preclude a central reference library, or users
would have to copy local (not happy-making for those who manage).
So...
can a symbolic link in ~/.klayout/libraries work? See remark about
subfolders.
couldn't there be a KLAYOUT_LIBS path variable that could be more
flexible and similar to many other tools' approach?
Hi @dick_freebird,
You can use
$KLAYOUT_PATH
. This path lists the package folders that KLayout looks for components."Package folders" means there is a predefined substructure, so there is one path for different components. "Components" can be technologies, scripts, libraries and future extensions.
Each directory that is listed in
$KLAYOUT_PATH
is searched for components intech
for technologiesmacros
,pymacros
,ruby
andpython
for script codedrc
,lvs
andd25
for these respective componentslibraries
for the library layoutsSo bottom line is that if you keep layouts in "libraries" subfolders, you can use
$KLAYOUT_PATH
like the proposed$KLAYOUT_LIBS
. Of course,$KLAYOUT_LIBS
could be added too, but then there need to be other library paths for the other components.Matthias