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 themgrammar: Generic classes for parsing and writing files (currently only used for s-expressions for EESchema)input: Reading a netlist from qflow or other synthesis toollibrary_source: Reads symbols and parses out metadata and pin locationsoutput: Writes a schematic from an internal representation to a schematic fileentities.py: A collection of geometry classes and representations of schematic componentsintermediate_lang.py: Representations of schematics and netlists as collections of components and connections
Metadata
Release files for asg 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| asg-1.1.0.linux-x86_64.tar.gz | 48.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| asg-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 74.7 kB
Release files / asg-1.1.0.linux-x86_64.tar.gz
| Download URL | asg-1.1.0.linux-x86_64.tar.gz |
|---|---|
| Size | 48.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f9a99002410f130a9588e9bd52de28a89dbb0df9b161539b3613f76efba1a2a2
|
|
BLAKE2b-256 checksum How to use checksums |
ca9b534b803f2412ffe69b6320eb5e1d70abc02c2b645393ca8b8f80df38190f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6
|
Release files / asg-1.1.0-py3-none-any.whl
| Download URL | asg-1.1.0-py3-none-any.whl |
|---|---|
| Size | 26.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d374e6a081b25dcdb2148b6abee6f51721974e0a437b9967080ea3c90200d1ab
|
|
BLAKE2b-256 checksum How to use checksums |
7a59eae371cb1a8b11f16468fd45c9ac8322ada1e73b522282c0ab93c3a8bac7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6
|