Modified the foundry_install.py script (again) to remove the
alternative version string parsing routine (which is in the
module "packaging" which is not, apparently, found in all standard
python distributions) and replace it once and for all with a
couple of simple subroutines based on regular expressions.
Also:  Updated the references to capture the new commit numbers
for the sky130_fd_io library (non-mask-level modifications to
I/O cell layouts for improved circuit extraction) and the
sky130_fd_pr library (expansion of the list of corner types
defined in sky130.lib.spice to include all combinations of
transistor corners (t, s, f) and resistor/capacitor corners
(l, h, and nominal), submitted by Ahmed Reda).
3 files changed
tree: 91f1b4041dd0e824745ef440efe7d819f9b53c3c
  1. .github/
  2. common/
  3. gf180mcu/
  4. runtime/
  5. scripts/
  6. sky130/
  7. .gitignore
  8. configure
  9. docs.txt
  10. LICENSE
  11. Makefile.in
  12. README.md
  13. VERSION
README.md

Open-PDKs (open_pdks)

Summary:

Automatic setup of PDKs for open-source tools from foundry sources.

Builds out and populates a new set of directories and subdirectories in the efabless format, with the efabless name for the PDK at the top, followed by categories “libs.ref” (IP) and “libs.tech” (EDA tool setup), each with subcategories corresponding to layout, abstract views, netlists, etc. for the IP; and magic, netgen, qflow, etc., for the EDA tool setup.

The populated PDK directories can contain either copies of files from the foundry sources, links to the foundry sources, or links back to another PDK.

Generates magic layout views for all vendor IP for which either a GDS view or a LEF view exists. Annotates the views as needed to handle ports, bounding boxes, etc.


This distribution contains sources for building out the SkyWater SKY130 130nm process. Sources for the foundry process data must be obtained separately. Read the README file in subdirectory sky130/ for instructions on obtaining and building the SkyWater sky130A PDK.


License:

Open_PDKs is open-source software distributed under the Apache-2.0 license. See file LICENSE for the complete license text.


Instructions:

git clone https://github.com/RTimothyEdwards/open_pdks.git
cd open_pdks
./configure [options]
make
[sudo] make install

where the configure [options] are specific to each foundry PDK supported by open_pdks and can be queried using

./configure --help

At a minimum you will want to pass a configure option to declare the PDK that you want to build. It is possible to build multiple PDKs at once, but not recommended due to the large memory and disk space overhead required by each one.

./configure --enable-[PDK_name]-pdk

The open_pdks version of the PDK can be built locally within open_pdks without the need to declare an install target or run “make install”. However, it is highly recommended to declare a target location and install there, using

./configure --prefix=[path] --enable-[PDK_name]-pdk

followed by “make” and “make install”. The default install location is /usr/local/share/pdk ([path] above is /usr/local). The install location should be a read-only filesystem area for regular users, since the PDK contents should not be altered.

Also see the website at http://opencircuitdesign.com/open_pdks/. The “Install” page has full instructions for configuring and installing open_pdks.