aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md42
1 files changed, 42 insertions, 0 deletions
diff --git a/README.md b/README.md
index 59ef622..4ef0883 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,44 @@
# ghdlsynth-beta
VHDL synthesis (based on ghdl)
+
+This is awfully experimental and work in progress!
+
+## How to build
+
+FIXME: should provide an easy way to build as a module!
+
+Get ghdl from github,
+build and install
+build and install libghdlsynth.a:
+```sh
+$ make libghdlsynth.a
+$ make install.libghdlsynth
+```
+
+Get yosys.
+
+From ghdlsynth-beta:
+Patch yosys sources using yosys.diff
+Copy the ghdl/ directory in yosys/frontends
+
+Configure yosys.
+In Makefile.conf, add:
+```makefile
+ENABLE_GHDL := 1
+GHDL_DIR := <ghdl install dir>
+```
+
+Build yosys.
+
+## How to use
+
+Example for icestick:
+
+```sh
+ghdl -a leds.vhdl
+ghdl -a spin1.vhdl
+yosys -p 'ghdl leds; synth_ice40 -blif leds.blif'
+arachne-pnr -d 1k -o leds.asc -p leds.pcf leds.blif
+icepack leds.asc leds.bin
+ceprog leds.bin
+```