aboutsummaryrefslogtreecommitdiffstats
path: root/machxo2/examples/demo-vhdl.sh
diff options
context:
space:
mode:
Diffstat (limited to 'machxo2/examples/demo-vhdl.sh')
-rw-r--r--machxo2/examples/demo-vhdl.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/machxo2/examples/demo-vhdl.sh b/machxo2/examples/demo-vhdl.sh
new file mode 100644
index 00000000..4bdab54a
--- /dev/null
+++ b/machxo2/examples/demo-vhdl.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+if [ $# -lt 1 ]; then
+ echo "Usage: $0 prefix"
+ exit -1
+fi
+
+if ! grep -q "LOC" $1.vhd; then
+ echo "$1.vhd does not have LOC constraints for tinyfpga_a."
+ exit -2
+fi
+
+if [ ! -z ${TRELLIS_DB+x} ]; then
+ DB_ARG="--db $TRELLIS_DB"
+fi
+
+set -ex
+
+${YOSYS:-yosys} -p "ghdl --std=08 prims.vhd ${1}.vhd -e;
+ attrmap -tocase LOC
+ synth_machxo2 -json ${1}-vhdl.json"
+${NEXTPNR:-../../nextpnr-machxo2} --1200 --package QFN32 --no-iobs --json $1-vhdl.json --textcfg $1-vhdl.txt
+ecppack --compress $DB_ARG $1-vhdl.txt $1-vhdl.bit
+tinyproga -b $1-vhdl.bit