Skip to main content

PDKMaster based FreePDK45 PDK

This is an example implementation of the non-manufacturable FreePDK45 as a PDKMaster based PDK under the Chips4Makers umbrella. One of it's functions is to be a guide for making new PDKMaster PDKs for manufacturable processes.

Releases

This packages is released in two different formats. First is a release on PyPI with only the python package included. Second is a tarball release on github. Next to the installable python package also contains the generated setup files for other tools and examples of how the PDKMaster FreePDK45 can be used.

Current release is v0.0.1:

Source repository overview

Currently this repo lacks documentation. So, as an introduction to the package here an overview is given of the several parts in the repo with a short description:

  • c4m/pdk/freepdk/: The PDKMaster Technology python module, including c4m-flexcell based standard cell library.
  • Makefile, scripts/: generate several release files:
    • copy of python module
    • views of the standard cells using the PDKMaster export functionalities:
      • spice netlist
      • verilog behavioral model
      • vhdl behavioral model
      • gds layouts
      • liberty file for library
  • make_in_docker.py: Will run the building of everything from the Makefile in a docker prepared docker container. Currently the the docker image to download is 2.3GB in size.
  • design/:
    • portfolio.ipynb: Python notebook show (part of) the FreePDK45 content
    • arlet6502/*: Directory with Arlet's 6502 implementation and example flow of how to do synthesis and P&R using the FreePDK45 FlexLib standard cells library. When using it from a git checkout first the coriolis files will need to be built in the top directory. In the release package this will be included and not be needed.
      • make_in_docker.sh: you can also here run the flow inside a docker container of not all tools are installed locally. The same 2.3GB docker image is used for the make_in_docker.sh from the top directory.
    • inverter/inverter.ipynb: Python notebook showing how the PDKMaster framework can be used to design a balanced inverter. It combines several design aspects in one integrated flow:
      • spice simulation to compute the width of the inverter's NMOS and PMOS transistors to be balanced, e.g the same on current.
      • generate minimal area layout based on the design rules
      • Verify functionality using Spice simulation.

Status

This repository is currently using PDKMaster and c4m-flexcell which currently have unstable APIs. Heavy non-backwards compatible changes are still be expected. If interested head over to gitter for further discussion.

The PyPi release only contains the PDKMaster Technology definition; the gitlab release also contains all the generated views and example design files.

Metadata

Release files for c4m-pdk-freepdk45 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for c4m-pdk-freepdk45 0.0.1
File Size Uploaded
c4m_pdk_freepdk45-0.0.1.tar.gz 140.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for c4m-pdk-freepdk45 0.0.1
File Interpreter ABI Platform
c4m_pdk_freepdk45-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 159.8 kB

Release files / c4m_pdk_freepdk45-0.0.1.tar.gz

Download URL c4m_pdk_freepdk45-0.0.1.tar.gz
Size 140.4 kB
Tags Source
SHA-256 checksum
How to use checksums
5d720a0575b8584fadc568e28f62b168feab6ccad09ea364ffc0183eab668275
BLAKE2b-256 checksum
How to use checksums
884eab1c2339b64544e5d63b0c9c7de9fb1d2ac6d9e99a802aaf3ac2956541dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.10

Release files / c4m_pdk_freepdk45-0.0.1-py3-none-any.whl

Download URL c4m_pdk_freepdk45-0.0.1-py3-none-any.whl
Size 19.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9e21ab6b57b95be63ecd044a031085a7975dc6b9515a4f77d27c36ca7c59e4f4
BLAKE2b-256 checksum
How to use checksums
95ff875c788ce3a3f65f2c97fa8ffe93009455b7b6e38925b38f40bb8c3312c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0.post20210125 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.10

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page