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.9

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.9
File Size Uploaded
physdes_py-0.9.tar.gz 975.8 kB Details

Built distribution (wheel)

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

Total release size: 1.1 MB

Release files / physdes_py-0.9.tar.gz

Download URL physdes_py-0.9.tar.gz
Size 975.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ed77fdca8c96115d6b4fe0a4dcf4b3330da3d9e2156655b36fe4bdd766282fa5
BLAKE2b-256 checksum
How to use checksums
3c0b387d75b878fd71ca39cd038e0f6de7b92b64d7029a9baf9fb75ee280e29d
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 Oct 9, 2026.

Transparency log

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

Download URL physdes_py-0.9-py3-none-any.whl
Size 102.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c21da97b021df1a53a8be7ab6430bc053324b67729088142616e898ea877dca8
BLAKE2b-256 checksum
How to use checksums
4b3791a598b577851742ed51be099b1a14cdadf0c02e1a386a0d0d4ba4695854
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 Oct 9, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.9 This release

2 release files

0.8

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