Skip to main content

SymbiFlow Routing Resources Graph (rr-graph) Python Libraries

License GitHub issues PyPI PyPI - Python Version PyPI - Downloads

This repository contains a Python library and utilities for working with "Routing Resource Graph" (rr-graph) files used by SymbiFlow and Verilog to Routing.

It supports both the XML and Cap'n'Proto formats of rr-graph files. The Cap'n'Proto schema is generated from the XML schema @ vtr-verilog-to-routing/vpr/src/route/rr_graph.xsd using the uxsdcxx tool.

For information on the schema generation can be found in the SCHEMA_GENERATOR.md file in Verilog to Routing.

Contributing

A full contribution guide can be found in docs/contributing.md.

A few important points;

License

All software (code, associated documentation, support files, etc) in this repository is licensed under the very permissive ISC Licence.

A copy can be found in the LICENSE file.

All new contributions must also be released under this license.

Installing

From PyPI

pip install rr-graph

FYI: Builds are automatically published to GitHub on every push to this repository.

Direct from GitHub

pip install git+https://github.com/SymbiFlow/symbiflow-rr-graph.git#egg=rr-graph

Direct from checkout

python setup.py install or python setup.py develop

Developing

To setup a local development environment use the make venv target which will build you a Python virtualenv (in the venv directory) with the needed packages and tools.

The make version target will output the current version of the rr-graph library.

Running tests

To run the tests, run make test.

If you have an issue with the CI disagreeing with the output of your local make test output, you can also try the make test-like-ci target to closer match how the CI system runs the tests.

Formatting

To run automated formatting over the repository, use make format.

Updating GitHub Actions

The make format-gha target will update the GitHub Actions under .github/workflows with the latest version of the included tasks.

It is recommended that you commit these updates separately from your other changes.

Metadata

Release files for rr-graph 0.0.1.post22

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

Source distribution (sdist)

Source distribution for rr-graph 0.0.1.post22
File Size Uploaded
rr-graph-0.0.1.post22.tar.gz 78.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for rr-graph 0.0.1.post22
File Interpreter ABI Platform
rr_graph-0.0.1.post22-py3-none-any.whl Python 3 none any Details
rr_graph-0.0.1.post22-py2-none-any.whl Python 2 none any Details

Total release size: 232.9 kB

Release files / rr-graph-0.0.1.post22.tar.gz

Download URL rr-graph-0.0.1.post22.tar.gz
Size 78.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e94f9f9f643c0af6158f9ed778246002b4480e90df1c3829143f03a8851b1fe4
BLAKE2b-256 checksum
How to use checksums
fdc6d7768a27c0d5b83c42d3ed61f12ff3cf52a3e09305fcf43f696a33bb9232
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

Release files / rr_graph-0.0.1.post22-py3-none-any.whl

Download URL rr_graph-0.0.1.post22-py3-none-any.whl
Size 77.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e083d4053eb93c825eb7a66d3cd4847e0e475b568f77bfd1ca1be94f6bd1cc92
BLAKE2b-256 checksum
How to use checksums
8f13f5c9e1de53e3933a90e712af3a8d8ea72f00bdc5848a770e7aa19ebd12b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

Release files / rr_graph-0.0.1.post22-py2-none-any.whl

Download URL rr_graph-0.0.1.post22-py2-none-any.whl
Size 77.3 kB
Tags Python 2
SHA-256 checksum
How to use checksums
1a53d0f03bcd6bb797cc31be2f3185b111cb4eeaf209d7dd1a3db33ef1612011
BLAKE2b-256 checksum
How to use checksums
4ea28edd742444aa8e983a6a2273829e657e6869d31759e317f00f5b53913b11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/2.7.18
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