Corrected an error in the GF library where an incorrect entry in the custom digital bidirectional I/O cell caused the liberty file for both the original GF library and the custom extension to be incorrect. Also: Updated the README file with more complete information, including information and instructions on GF180MCU, which had never been added; and comments about the IHP open PDK and about the "ciel" PDK package manager.
diff --git a/README.md b/README.md index 25feb5c..eca50c1 100644 --- a/README.md +++ b/README.md
@@ -6,11 +6,11 @@ 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 open source format (started by Efabless), with the 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 @@ -23,9 +23,17 @@ ----------------------------------------- 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. +130nm process and the GlobalFoundries GF180MCU process. Sources for the +foundry process data are cloned automatically from repository services +(primarily github). + +Other non-free processes (such as X-Fab XH035 or XH018) can be obtained +as "plug-ins" for open_pdks. Sources for non-free foundry process data +must be obtained separately. + +Read the README file in subdirectory sky130/ for instructions on building +the SkyWater sky130A PDK, or in the directory gf180mcu/ for instructions +on building the GlobalFoundries gf180MCU PDK. ----------------------------------------- @@ -36,6 +44,51 @@ ----------------------------------------- +"Ciel" package manager: + +An important consideration for anyone wishing to obtain one of the open +source PDKs is that "open_pdks" is a PDK builder, and running it is like +running a compiler to build a complex software application. Doing so +can be difficult, time consuming, and resource-intensive. The software +world came up with the idea of a "package manager" application that +handles pre-built software. Likewise, there is a "PDK package manager" +for handling pre-built PDKs, called "ciel" (formerly called "volare"), +which can be found at https://github.com/fossi-foundation/ciel; +However, "ciel" can be installed simply by doing: + + pip install ciel + +Most PDK end-users are likely to want this option. The "pip install" +command will put "ciel" in ~/.local/bin/ciel where it may be necessary +to either call it with the full path on the command line, or you may +need to add "~/.local/bin" to your PATH environment variable. Assuming +it is in PATH, use the following commands: + + ciel ls-pdks + +returns a list of processes supported by ciel. To get a list of +pre-built PDKs, use, e.g., + + ciel ls-remote --pdk-family=sky130 + +which lists PDKs by commit hash number. Then to install the PDK, use, e.g., + + ciel enable --pdk-family=sky130 <commit_hash> + +The PDK will be installed into directory ~/.ciel/. Most open source +EDA tools will be able to find the PDK if the environment variable +"PDK_ROOT" is set to point to this location: + + export PDK_ROOT=~/.ciel + +for bash/sh environments, and + + setenv PDK_ROOT ~/.ciel + +for csh/tcsh environments. + +----------------------------------------- + Instructions: git clone https://github.com/RTimothyEdwards/open_pdks.git @@ -70,3 +123,47 @@ Also see the website at http://opencircuitdesign.com/open_pdks/. The "Install" page has full instructions for configuring and installing open_pdks. +----------------------------------------- + +Example usage: + + SkyWater sky130 PDK: + + ./configure --prefix=/usr --enable-sky130-pdk --enable-sram-sky130 \ + --enable-sram-space-sky130 --enable-reram-sky130 + make + sudo make install + + GlobalFoundries GF180MCU PDK: + + ./configure --prefix=/usr --enable-gf180mcu-pdk + make + sudo make install + + Both of these examples install into the directory /usr/share/pdk/. + The first one builds PDKs sky130A (standard) and sky130B (with the + ReRAM option). The second one builds PDKs gf180mcuA (3 metal stack), + gf180mcuB (4 metal stack), gf180mcuC (5 metal stack with 0.9um thick + top metal), and gf180mcuD (5 metal stack with 1.1um thick top metal). + + Existing shuttle services as of this writing (September 2025) use + sky130A, sky130B (Cadence, Chip Foundry), and gf180mcuD + (Wafer.Space). + + Given the configurations above with prefix "/usr", most open source + tools will expect + + export PDK_ROOT=/usr/share/pdk (sh, bash) + or + setenv PDK_ROOT /usr/share/pdk (csh, tcsh) + +----------------------------------------- + +A note about IHP SG13G2: + + IHP GmbH released their open PDK for the SG13G2 process using + the format described in open_pdks. For this reason, there is + no need to use open_pdks to build the IHP open PDK, because it + already comes pre-built, with full support for open source EDA + tools. Also for this reason, the SG13G2 open PDK is supported + by the "ciel" PDK package manager (see above).
diff --git a/VERSION b/VERSION index 2cc2aa0..c313ca4 100644 --- a/VERSION +++ b/VERSION
@@ -1 +1 @@ -1.0.540 +1.0.541
diff --git a/docs.txt b/docs.txt index f463899..775c185 100644 --- a/docs.txt +++ b/docs.txt
@@ -3,7 +3,7 @@ ---------------------------------------------------------------------------------- -Written by Tim Edwards 2019 - 2022 for efabless (efabless.com) +Written by Tim Edwards 2019 - 2025 for efabless (efabless.com) and Open Circuit Design (opencircuitdesign.com) URL: http://opencircuitdesign.com/open_pdks @@ -15,9 +15,10 @@ Quick Install: - Looking to install the Google/SkyWater SKY130 PDK libraries and setup - files for open source EDA tools? Read the README file in the sky130/ - directory. + Looking to install the Google/SkyWater SKY130 PDK or the + Google/GlobalFoundries GF180MCU PDK libraries and setup + files for open source EDA tools? Read the README.md file or the + README file in the sky130/ or gf180mcu/ directories. The rest of this README file is general information about open_pdks and is not specific to any single PDK.
diff --git a/gf180mcu/custom/gf180mcu_fd_io/lib/gf180mcu_ef_io__bi_t__ff_125C_2v75.lib b/gf180mcu/custom/gf180mcu_fd_io/lib/gf180mcu_ef_io__bi_t__ff_125C_2v75.lib index 9a3416f..bb9c616 100644 --- a/gf180mcu/custom/gf180mcu_fd_io/lib/gf180mcu_ef_io__bi_t__ff_125C_2v75.lib +++ b/gf180mcu/custom/gf180mcu_fd_io/lib/gf180mcu_ef_io__bi_t__ff_125C_2v75.lib
@@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - cell ("gf180mcu_fd_io__bi_t") { + cell ("gf180mcu_ef_io__bi_t") { scaling_factors : "gf_factors"; area : 26250.000000; pad_cell : true;