Skip to main content

SymbiFlow RR Graph libraries

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rr-graph-0.0.1.post22.tar.gz (78.2 kB view details)

Uploaded Source

Built Distributions

rr_graph-0.0.1.post22-py3-none-any.whl (77.3 kB view details)

Uploaded Python 3

rr_graph-0.0.1.post22-py2-none-any.whl (77.3 kB view details)

Uploaded Python 2

File details

Details for the file rr-graph-0.0.1.post22.tar.gz.

File metadata

  • Download URL: rr-graph-0.0.1.post22.tar.gz
  • Upload date:
  • Size: 78.2 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for rr-graph-0.0.1.post22.tar.gz
Algorithm Hash digest
SHA256 e94f9f9f643c0af6158f9ed778246002b4480e90df1c3829143f03a8851b1fe4
MD5 81cd4ecaad59409f5e0198d126ddad9a
BLAKE2b-256 fdc6d7768a27c0d5b83c42d3ed61f12ff3cf52a3e09305fcf43f696a33bb9232

See more details on using hashes here.

File details

Details for the file rr_graph-0.0.1.post22-py3-none-any.whl.

File metadata

  • Download URL: rr_graph-0.0.1.post22-py3-none-any.whl
  • Upload date:
  • Size: 77.3 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for rr_graph-0.0.1.post22-py3-none-any.whl
Algorithm Hash digest
SHA256 e083d4053eb93c825eb7a66d3cd4847e0e475b568f77bfd1ca1be94f6bd1cc92
MD5 6c3f059e0ff7d2f3bb56608f0768507a
BLAKE2b-256 8f13f5c9e1de53e3933a90e712af3a8d8ea72f00bdc5848a770e7aa19ebd12b3

See more details on using hashes here.

File details

Details for the file rr_graph-0.0.1.post22-py2-none-any.whl.

File metadata

  • Download URL: rr_graph-0.0.1.post22-py2-none-any.whl
  • Upload date:
  • Size: 77.3 kB
  • Tags: Python 2
  • Uploaded using 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

File hashes

Hashes for rr_graph-0.0.1.post22-py2-none-any.whl
Algorithm Hash digest
SHA256 1a53d0f03bcd6bb797cc31be2f3185b111cb4eeaf209d7dd1a3db33ef1612011
MD5 956469e8373b2e376d57cb62d024bb8a
BLAKE2b-256 4ea28edd742444aa8e983a6a2273829e657e6869d31759e317f00f5b53913b11

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page