Skip to main content

Library of open source Process Design Kits

Project description

Lambdapdk

CI Tests Wheels PyPI Downloads GitHub stars GitHub issues License

Lambdapdk is a collection of open-source Process Design Kits (PDKs) that enable chip design across multiple technology nodes. Each PDK includes standard cell libraries, I/O libraries, and memory compilers with full integration into the SiliconCompiler build system and Lambdalib Verilog hardware abstraction library.

Why Lambdapdk?

Challenges

  • PDK setup is complex and error-prone
  • Technology-specific designs limit portability
  • Commercial PDKs have restrictive licenses
  • Scattered PDK sources with inconsistent interfaces

Solution

  • Pre-configured PDKs ready for immediate use
  • Lambdalib mapping enables design portability
  • Fully open-source PDKs for research and education
  • Unified API across all supported technologies

Supported PDKs

PDK Node Libraries Source
ASAP7 7nm FinFET Standard cells (RVT/LVT/SLVT), I/O, SRAM Arizona State University
FreePDK45 45nm Nangate standard cells, SRAM NC State / Nangate
Sky130 130nm Standard cells (HD/HDLL), I/O, SRAM Google / Skywater
GF180 180nm Standard cells (7T/9T), I/O, SRAM Google / GlobalFoundries
IHP130 130nm SiGe Standard cells, I/O, SRAM IHP GmbH
Interposer Multi-layer Bump cells for chiplet integration ZeroASIC

Quick Start

Installation

pip install lambdapdk

Basic Usage

from siliconcompiler import ASIC, Design
from siliconcompiler.targets import skywater130_demo

# Create design and add source files
design = Design("mydesign")
design.set_topmodule("mydesign", fileset="rtl")
design.add_file("mydesign.v", fileset="rtl")
design.add_file("mydesign.sdc", fileset="sdc")

# Create ASIC project and load target
project = ASIC(design)
project.add_fileset(["rtl", "sdc"])
skywater130_demo(project)

# Run the flow
project.run()
project.summary()

Available targets: asap7_demo, freepdk45_demo, skywater130_demo, gf180_demo, ihp130_demo, interposer_demo

Cell Library Inventory

ASAP7 (7nm)

Standard cell libraries with three threshold voltage variants:

Library Type Cells Verilog
asap7sc7p5t_rvt Regular Vt ~200 verilog
asap7sc7p5t_lvt Low Vt ~200 verilog
asap7sc7p5t_slvt Super Low Vt ~200 verilog

Cell categories: AND, OR, NAND, NOR, XOR, INV, BUF, MUX, DFF, Latch, Adder, Tie, Filler, Decap, Tap

Memory macros (fakeram7):

Configuration Verilog
Single-port 64x32 to 8192x64 verilog
Dual-port 64x32 to 8192x64 verilog
True dual-port 64x32 to 8192x64 verilog

FreePDK45 (45nm)

Library Type Verilog
nangate45 Standard cells lambda

Cell categories: AND, OR, NAND, NOR, XOR, INV, BUF, MUX, DFF, Latch, AOI, OAI, Tie, Filler, Tap

Memory macros (fakeram45):

Configuration Verilog
64x32 to 512x64 verilog

Sky130 (130nm)

Library Type Cells Verilog
sky130hd High Density ~430 unique verilog
sky130hdll High Density Low Leakage ~140 unique verilog
sky130io I/O cells Various verilog

Cell categories: AND, OR, NAND, NOR, XOR, INV, BUF, MUX, DFF, Latch, AOI, OAI, Delay, Tie, Filler, Decap, Tap, Antenna

Memory macros (sky130sram):

Configuration Verilog
1RW1R 64x256 verilog

GF180 (180nm)

Library Type Cells Verilog
gf180mcu_fd_sc_mcu7t5v0 7-track ~230 verilog
gf180mcu_fd_sc_mcu9t5v0 9-track ~230 verilog
gf180mcu_fd_io I/O cells Various verilog

Cell categories: AND, OR, NAND, NOR, XOR, INV, BUF, MUX, DFF, Latch, AOI, OAI, Tristate, Delay, Tie, Filler, Decap, Tap, Antenna

Memory macros (gf180sram):

Configuration Verilog
64x8 to 512x8 verilog

IHP130 (130nm SiGe)

Library Type Verilog
sg13g2_stdcell Standard cells lambda
sg13g2_io I/O cells blackbox

Note: IHP130 cell views are provided by the IHP Open PDK.

Interposer

Library Type Description
bumps Bump cells Micro-bump cells for chiplet integration

Stackup variants: 3ML, 4ML, 5ML with 400um, 800um, and 2000um bump pitches.

Architecture

lambdapdk/
├── asap7/           # 7nm FinFET PDK
│   ├── base/        # Technology files, DRC rules
│   └── libs/        # Standard cells, I/O, memory
├── freepdk45/       # 45nm PDK
│   ├── base/
│   └── libs/
├── sky130/          # 130nm PDK
│   ├── base/
│   └── libs/
├── gf180/           # 180nm PDK
│   ├── base/
│   └── libs/
├── ihp130/          # 130nm SiGe PDK
│   ├── base/
│   └── libs/
└── interposer/      # Passive interposer
    ├── base/
    └── libs/

Contributing

We welcome contributions! Please report issues and submit pull requests at: https://github.com/siliconcompiler/lambdapdk/issues

License

This project is licensed under the Apache License 2.0.

Individual PDKs may have additional license terms:

PDK License Details
ASAP7 BSD 3-Clause LICENSE
Nangate45 Nangate Open Cell Library License LICENSE (non-commercial use)
Sky130 Apache 2.0 Via open_pdks
GF180 Apache 2.0 Via gf180mcu-pdk
IHP130 Apache 2.0 Via IHP-Open-PDK
Interposer Apache 2.0 Copyright 2024 ZeroASIC Corp

Copyright 2023 Zero ASIC Corporation

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

lambdapdk-0.2.11.tar.gz (44.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lambdapdk-0.2.11-py3-none-any.whl (51.9 kB view details)

Uploaded Python 3

File details

Details for the file lambdapdk-0.2.11.tar.gz.

File metadata

  • Download URL: lambdapdk-0.2.11.tar.gz
  • Upload date:
  • Size: 44.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lambdapdk-0.2.11.tar.gz
Algorithm Hash digest
SHA256 3790d2a283dd6d7b798077708ee104e2fe5e2e5e7154f4650578b11cebd167c2
MD5 c89c6f472c854b885ddeac099b8914bd
BLAKE2b-256 1ed9dafa7c645ccd312da6475d2f47ac93bb838f79aa19f3f05a8c581f4198fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for lambdapdk-0.2.11.tar.gz:

Publisher: wheels.yml on siliconcompiler/lambdapdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lambdapdk-0.2.11-py3-none-any.whl.

File metadata

  • Download URL: lambdapdk-0.2.11-py3-none-any.whl
  • Upload date:
  • Size: 51.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for lambdapdk-0.2.11-py3-none-any.whl
Algorithm Hash digest
SHA256 bca4ffe12eebed92762e0b4b832a80c7d4edf33cfe9ee93b612604cfa07abe23
MD5 1402ef368a591472deb2727893df9fe2
BLAKE2b-256 647abdd5f9fc6056f0d4248ee09b9a753cf79f60038b8d1abffa5d0941523c36

See more details on using hashes here.

Provenance

The following attestation bundles were made for lambdapdk-0.2.11-py3-none-any.whl:

Publisher: wheels.yml on siliconcompiler/lambdapdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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