Skip to main content

example implementation of FreePDK45 as PDKMaster based PDK

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

c4m_pdk_freepdk45-0.0.1.tar.gz (140.4 kB view details)

Uploaded Source

Built Distribution

c4m_pdk_freepdk45-0.0.1-py3-none-any.whl (19.4 kB view details)

Uploaded Python 3

File details

Details for the file c4m_pdk_freepdk45-0.0.1.tar.gz.

File metadata

  • Download URL: c4m_pdk_freepdk45-0.0.1.tar.gz
  • Upload date:
  • Size: 140.4 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for c4m_pdk_freepdk45-0.0.1.tar.gz
Algorithm Hash digest
SHA256 5d720a0575b8584fadc568e28f62b168feab6ccad09ea364ffc0183eab668275
MD5 711f68aab25c276bcaa627122f7d6817
BLAKE2b-256 884eab1c2339b64544e5d63b0c9c7de9fb1d2ac6d9e99a802aaf3ac2956541dc

See more details on using hashes here.

File details

Details for the file c4m_pdk_freepdk45-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: c4m_pdk_freepdk45-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 19.4 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for c4m_pdk_freepdk45-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9e21ab6b57b95be63ecd044a031085a7975dc6b9515a4f77d27c36ca7c59e4f4
MD5 9cc55b96bda574e40dae4fe99d2ddf88
BLAKE2b-256 95ff875c788ce3a3f65f2c97fa8ffe93009455b7b6e38925b38f40bb8c3312c7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page