Skip to content

stfns-s/genesispy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

genesispy

Python port of the Genesis2 Chip Generator (see https://github.com/StanfordVLSI/Genesis2). Replaces the Perl runtime with a pure-Python implementation while preserving the hierarchical template schema (now .vpy / .svpy). Configuration is JSON; legacy Genesis2 .xml configs convert via the bundled genesispy-xml2json helper.

Install

Without pip (recommended -- bin/ launchers)

The repo ships shell launchers in bin/ (bin/genesispy, bin/gvpy) that set PYTHONPATH to the sibling src/ and exec python3 -m genesispy.cli. No build step, no pip -- just run from a checkout:

./bin/genesispy --input top.vpy --top top --json config.json

To "install" to a destination, copy bin/ and src/ together (the launchers resolve src/ as ../src relative to their own directory):

DEST=/path/to/install-dir
mkdir -p "$DEST"
cp -a bin src "$DEST/"
export PATH="$DEST/bin:$PATH"

With pip

pip install -e .
# or
pip install --target /path/to/install-dir .

Tests

After pip install -e .:

pytest tests/

Without installing -- use the in-tree source via PYTHONPATH:

PYTHONPATH=src pytest tests/

Documentation