Skip to main content

A seamless Python remote bridge to Cadence's Skill in Virtuoso

Project description

Python-Skill Bridge build codecov

Prerequisites

  • Python 3.6 or higher
  • pip
  • IC 6.1.7 or ICADV/M or higher

Features

  • Run Virtuoso's Skill functions from Python
  • Automatically translate all Skill objects to Python
  • Automatically translate Python numbers, booleans, strings, lists and dictionaries to Skill
  • Retrieve Skill function documentation in Python
  • Convenient tab-completion (+ jupyter support)
    • object attributes
    • global function list
    • methods

Read more in the full documentation.

Installation

pip install skillbridge

Add the --user option if you don't want to install it systemwide.

Before you can use the Skill bridge you must generate the function definitions from Virtuoso via the Skill console.

  1. Type python -m skillbridge into your shell to acquire the correct PATH-TO-IPC-SERVER
  2. Open Virtuoso
  3. Type these commands into the Skill console
    • load("PATH-TO-IPC-SERVER")
    • pyDumpFunctionDefinitions "<install>" ("<install>" is not a placeholder, type it as is)

Note: Generating the function definitions may take several seconds to complete.

After that you can also generate the static completion stub files. This is useful for code completion in certain IDEs (e.g. PyCharm)

  • Type python -m skillbridge -g into your shell.

Updating

In order to update the python package type this

pip install skillbridge --upgrade

Examples

Note: All these examples assume that the Skill server is running. You can start it by typing the following command into the Skill console.

load("PATH-TO-IPC-SERVER")
pyStartServer
Connecting to the server
from skillbridge import Workspace

ws = Workspace.open()
Accessing the currently open edit cell view
cell_view = ws.ge.get_edit_cell_view()
Inspecting available properties
>>> dir(cell_view)
['DBUPerUU', 'any_inst_count', 'area_boundaries', 'assoc_text_displays', 'b_box', ...]

or type cell_view.<TAB> in jupyter/ipython

Reading properties
>>> print(cell_view.b_box)
[[0, 10], [2, 8]]

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

skillbridge-1.0.4.tar.gz (21.3 kB view details)

Uploaded Source

File details

Details for the file skillbridge-1.0.4.tar.gz.

File metadata

  • Download URL: skillbridge-1.0.4.tar.gz
  • Upload date:
  • Size: 21.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.1

File hashes

Hashes for skillbridge-1.0.4.tar.gz
Algorithm Hash digest
SHA256 49b2f12c31cb3addff396e5ef1f23b1a36e203eb4e9c60f572fbf939a4293860
MD5 45bee2f604a6b64a0c7f08083bc6f953
BLAKE2b-256 2c87a6c947024793190f0023ea1e9ab716ecda6efa63cc9ccde1ad8079c5488f

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