Skip to main content

codecov Documentation Status

🧱 physdes-py

Physical Design Python Code

✨ Features

  • Rectilinear Polygon support

🚀 Recent Developments

  • Deferred Merge Embedding (DME) Algorithm: Implemented the DME algorithm for clock tree synthesis, featuring a strategy pattern for delay calculation. This allows for flexible delay modeling, with both LinearDelayCalculator and ElmoreDelayCalculator provided as options. The algorithm is designed to build a prescribed-skew (not necessarily zero) clock tree and includes functionalities for analyzing clock skew, total wirelength, and other tree statistics.
  • Global Router Enhancements: The global router now offers multiple routing strategies to accommodate different design needs:
    • route_simple(): Connects terminals directly to the nearest node in the tree for quick and straightforward routing.
    • route_with_steiners(): Inserts Steiner points to optimize wire length, resulting in more efficient routing.
    • route_with_constraints(): A performance-driven approach that also uses Steiner points to reduce wire length.

Dependencies

👀 See also

👉 Note

This project has been set up using PyScaffold 3.2.1. For details and usage information on PyScaffold see https://pyscaffold.org/

🤖 For AI Agents

If you're an AI agent working on this repository, please see AGENTS.md for comprehensive guidelines on:

  • Build/lint/test commands
  • Code style and conventions
  • Testing practices
  • Development workflow

Output Examples

Clock Tree Synthesis Examples

Elmore Delay Model Clock Tree

Elmore Delay Model Clock Tree

Linear Delay Model Clock Tree

Linear Delay Model Clock Tree

Delay Model Comparison

Delay Model Comparison

3D Elmore Model Clock Tree

3D Elmore Model Clock Tree

3D Linear Model Clock Tree

3D Linear Model Clock Tree

Global Routing Examples

Routing with Steiner Points

Routing with Steiner Points

Routing with Constraints

Routing with Constraints

Routing with Keepouts

Routing with Keepouts

Routing with Steiner Points and Keepouts

Routing with Steiner Points and Keepouts

3D Routing with Steiner Points

3D Routing with Steiner Points

3D Routing with Constraints and Keepouts

3D Routing with Constraints and Keepouts

Rectilinear Polygon Examples

Rectilinear Polygon Convex Hull

Rectilinear Polygon Convex Hull

Rectilinear Polygon Convex Cut

Rectilinear Polygon Convex Cut

X-Monotone Hull

X-Monotone Hull

Y-Monotone Hull

Y-Monotone Hull

Steiner Forest

Steiner Forest

Steiner Forest

Metadata

Release files for physdes-py 0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for physdes-py 0.8
File Size Uploaded
physdes_py-0.8.tar.gz 972.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for physdes-py 0.8
File Interpreter ABI Platform
physdes_py-0.8-py3-none-any.whl Python 3 none any Details

Total release size: 1.1 MB

Release files / physdes_py-0.8.tar.gz

Download URL physdes_py-0.8.tar.gz
Size 972.9 kB
Tags Source
SHA-256 checksum
How to use checksums
d9483be051e232514071a654531d6267f5570d3d810fb7071d2aaf4224e20d50
BLAKE2b-256 checksum
How to use checksums
6b0f36cde8a56498abea7fc220c0cedca8aa81fdfa661b389118b1265ed1e576
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / physdes_py-0.8-py3-none-any.whl

Download URL physdes_py-0.8-py3-none-any.whl
Size 101.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6dac5b092a6a94718cb9942619774488a31c49df825f14765159556d19adec29
BLAKE2b-256 checksum
How to use checksums
33a27a1e30fc3cb4003fa9817e8fb0fd1716978454509ff422789407196404b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release history Release notifications | RSS feed

0.9

2 release files

This release

0.8 This release

2 release files

0.7

2 release files

0.6

2 release files

0.5

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page