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

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.7
File Size Uploaded
physdes_py-0.7.tar.gz 972.8 kB Details

Built distribution (wheel)

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

Total release size: 1.1 MB

Release files / physdes_py-0.7.tar.gz

Download URL physdes_py-0.7.tar.gz
Size 972.8 kB
Tags Source
SHA-256 checksum
How to use checksums
3421ee0309126118fd1ad30c08543d663cccc1460a3e40e3c284204a804fb6a2
BLAKE2b-256 checksum
How to use checksums
105fbe0b1a2443d44a7669eaf561e8f492dbfe52a2ebeb698204e40bb71d9ade
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 16, 2026.

Transparency log

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

Download URL physdes_py-0.7-py3-none-any.whl
Size 104.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c2845d506114ebccae90136ae67d31b2a5b0c0f0c6c2556f43a27452555611d2
BLAKE2b-256 checksum
How to use checksums
51b6284fb2784dc0aed417a4b80e498115f050f798f47c7506f11006801ae41e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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 Jul 16, 2026.

Transparency log

Release history Release notifications | RSS feed

0.9

2 release files

0.8

2 release files

This release

0.7 This release

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