Skip to main content

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

Project description

Python-Skill Bridge

PyPI version build

Prerequisites

  • Python 3.8 or higher[^1]
  • pip
  • IC 6.1.7 or ICADV/M or higher

[^1]: For Python 3.6 and Python 3.7 please install version 1.5.1 (pip install skillbridge==1.5.1)

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 skillbridge path 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")

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

  • Type skillbridge generate 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]]
Call any SKILL function
>>> ws['plus'](3, 4)
7

equivalent to:

(plus 3 4)

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.8.0.tar.gz (39.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skillbridge-1.8.0-py3-none-any.whl (32.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: skillbridge-1.8.0.tar.gz
  • Upload date:
  • Size: 39.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for skillbridge-1.8.0.tar.gz
Algorithm Hash digest
SHA256 d1c1972bc03725ffed32914cc33b7a9d715b76db9bdbbcff18ac1f15fc38dcca
MD5 f032b209ab21928fe10c79a0f8449b7a
BLAKE2b-256 644173cbdb86bd3b779e81d5bcc70baed20b85010585e4a63ff077beb9fe9fbc

See more details on using hashes here.

File details

Details for the file skillbridge-1.8.0-py3-none-any.whl.

File metadata

  • Download URL: skillbridge-1.8.0-py3-none-any.whl
  • Upload date:
  • Size: 32.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for skillbridge-1.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3a63fde15f0da369669d2ccb3d80a2546b4c29557afd7f3abdf4c3321b5d5588
MD5 5986e4943965e5c92a5fbdbc14db74f6
BLAKE2b-256 d7138e4bccfa52d4ac05c8cb9ab8808a564fbebca0fb5f8a4608c48fe1e785fc

See more details on using hashes here.

Supported by

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