Skip to main content

A tool to automatically generate schematics from SPICE netlists

Project description

An Automatic Schematic Generation Tool

This tool generates schematics from a SPICE netlist, usually of output from qflow. It was initially developed during Summer 2020 under the mentorship of Tim Edwards. The schematic entry tools currently supported are Xschem and EESchema.

Usage

asg can be installed using PIP by running pip install asg.

Once installed, it can be run with asg [netlist] [library]

Full usage:

usage: asg [-h] [-f FORMAT] [-d DEPTH] [--vcc VCC] [--vss VSS] [-l] [-e] [-D] input library

positional arguments:
  input
  library

optional arguments:
  -h, --help            show this help message and exit
  -f FORMAT, --format FORMAT
                        output format - one of xschem, eeschema
  -d DEPTH, --depth DEPTH
                        depth to unpack subcircuits
  --vcc VCC             vcc net name
  --vss VSS             vss net name
  -l, --include-library-name
                        include the library name in xschem output. should be used if xschem library env var is a directory instead of a list
  -e, --no-embed-symbols
                        don't embed symbols in xschem schematic output
  -D, --debug           output intermediate steps of the ASG to ./out/

Contributing

To run in a development environment, run python -m asg.main, with appropriate arguments as seen above

The program is organized into a few different submodules under asg/:

  • generation: Constraint classes and the algorithm which optimizes them
  • grammar: Generic classes for parsing and writing files (currently only used for s-expressions for EESchema)
  • input: Reading a netlist from qflow or other synthesis tool
  • library_source: Reads symbols and parses out metadata and pin locations
  • output: Writes a schematic from an internal representation to a schematic file
  • entities.py: A collection of geometry classes and representations of schematic components
  • intermediate_lang.py: Representations of schematics and netlists as collections of components and connections

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

asg-1.1.0.linux-x86_64.tar.gz (48.0 kB view hashes)

Uploaded Source

Built Distribution

asg-1.1.0-py3-none-any.whl (26.6 kB view hashes)

Uploaded Python 3

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