Photonic Integrated ELectronics#

PyPI Name PyPI Version Documentation Status Coverage MIT Black

Warning

piel < 0.1 is still in active development. The API is starting to stabilize, but use it currently at your own risk.

Note this documentation is for the next 0.1.0 unreleased version of piel. To see documentation for 0.0.56 use the stable tab.

Microservices to codesign photonics, electronics, communications, quantum, and more.

Target functionality#

  • Co-simulation and optimisation between integrated photonic and electronic chip design.

  • System interconnection modelling in multiple domains.

  • Experimental and simulation metadata/data management & integration.

  • Chip and interposer design integration.

  • Co-design components to circuits flow.

  • Maintain a multi-tool dependency design environment.

piel aims to provide an integrated workflow to co-design photonics and electronics, classically and quantum. It does not aim to replace the individual functionality of each design tool, but rather provide a glue to easily connect them all together and extract the system performance.

Examples#

Follow the many examples in the documentation.

Microservices Toolset#

This package provides interconnection functions to easily co-design microelectronics through the functionality of the IIC-OSIC-TOOLS and photonics via GDSFactory.

`piel` microservices structure.

Some existing microservice dependency integrations are:

  • amaranth - A modern hardware definition language and toolchain based on Python.

  • cocotb - a coroutine based cosimulation library for writing VHDL and Verilog testbenches in Python.

  • hdl21 - Analog Hardware Description Library in Python

  • GDSFactory - An open source platform for end to-end photonic chip design and validation

  • OpenLane v1 - an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen and custom methodology scripts for design exploration and optimization

  • OpenLane v2 - The next generation of OpenLane, rewritten from scratch in Python with a modular architecture

  • sax - S-parameter based frequency domain circuit simulations and optimizations using JAX.

  • thewalrus -A library for the calculation of hafnians, Hermite polynomials and Gaussian boson sampling.

  • qutip - QuTiP: Quantum Toolbox in Python

piel also provides a common dependency-resolved environment for all these tools, so that you just get started with designing rather than manage dependencies (which is a massive pain). Full flow environment toolsets can use nix, docker, and some local installations following the existing open-source design flows.

Contribution#

If you feel dedicated enough to become a project maintainer, or just want to do a single contribution, let’s do this together!

Contents#

Indices and tables#