PDKMaster v0.2.0 and Demo Packages on Pypi

Posted on wo 24 augustus 2022 in NLnet

PDKMaster v0.2.0

In previous post on first results for analog/mixed-signal I already mentioned I would update on the status of PDKMaster development. This has taken me a few weeks more than planned but here it is.

One of the targets in the NGI Zero PET funded Analog/Mixed-Signal Library project is to develop PDKMaster up to a state it can be used externally and is ready for external contributions. The v0.2.0 release of PDKMaster is a step in this direction. (v0.2.1 release is a small bug fix release fixing a dependency issue)

First part was focused on documentation. Sphinx has been set up to extract autodoc strings from the code and a first set of documentation is provided by adding some autodoc strings to the PDKMaster code base. Currently the documentation is not hosted on a public web site yet. This will be done once the code is deemed ready for external usage. For now you can checkout the code, setting up the environment as said in the README.md file and the running 'doit docs' and then you will find the docs in the 'docs/html' directory.

Second part was to work on QA. For this a first set of unit tests have been written and CI has been set up to run these unit tests. This is common development practice to avoid regressions with new commits.

Demo Packages on Pypi

For demo purposes also packages of the different Chips4Makers repos including the PDKMaster based version of sky130 PDK have been released on pypi. As said the code base is currently not considered to fit for external usage. All this is released as-is and no support whatsoever can currently be provided. This is planned onwards from release v0.9.0 of PDKMaster.

The list of related packages is:

One should be able to install everything with the command 'pip install c4m-pdk-sky130'

PDKMaster v0.3.0

Although this release and announcement has taken some in the mean time work has already been done on PDKMaster v0.3.0.

The target for that release:

  • 100% code coverage for the unit tests
  • autodoc strings for all classes and non-trivial functions and methods
  • features needed for other tasks in the Analog/Mixed-Signal Library