small flower buds at the head of a piece of broccoli.
Floret is an automated custom cell generator. The underlying algorithms are built from the following papers:
Install all dependencies
sudo apt install libqhull-dev zlib1g-dev python3.10-dev
git submodule update --init --recursive
There are two build systems supported. Tup is preferred, placing floret-linux into the build-linux directory
tup init
tup
However, we also a Makefile set up, placing floret-linux into the root directory
make
See Releases for example generated layouts.
This will generate a GDS library with a nand gate in test.gds
called test
using the sky130 tech file provided in the tech directory.
build-linux/floret-linux --gds test test.gds tech/sky130.py test/nand.spi
This will generate directory called cells
and create a .rect
file with a nand gate layout using the ACT layout.conf and prs2net.conf files in the specified directory.
build-linux/floret-linux --rect cells /opt/cad/conf/sky130 "tech/actconf.py /opt/cad/conf/sky130" test/nand.spi
Floret is being tested on Skywater's 130nm process technology node. It is not yet producing DRC clean layouts, but the layouts are often workable with minor manual alterations.