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
GT2N 2nm GAAFET Standard cells (HVT/SVT/LVT/ULVT/ELVT) Georgia Institute of Technology
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.13.tar.gz (46.5 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.13-py3-none-any.whl (56.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for lambdapdk-0.2.13.tar.gz
Algorithm Hash digest
SHA256 225200ba854c80b346eace844bf6df12fccc52fb9d43c8f1e195c28ba418853c
MD5 a952b5d919c5631c6d9c8af5c1a9d6d6
BLAKE2b-256 22a4c0ebc7ef3dd6adb775c29d1456f70629867bcd41a778c717055c706b54f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for lambdapdk-0.2.13.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.13-py3-none-any.whl.

File metadata

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

File hashes

Hashes for lambdapdk-0.2.13-py3-none-any.whl
Algorithm Hash digest
SHA256 5808bc488333ffbd4403de96e90ef5543577599433eb2818e6ccd6d9f6ee4652
MD5 cca91f65dbba78102acaa6dccd453299
BLAKE2b-256 edb71b195caa1dc26ba0b43fc79c04f15dfc7d5f072ca8bf632958ba8ec3b1e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for lambdapdk-0.2.13-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