aboutsummaryrefslogtreecommitdiffstats
path: root/icefuzz
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2015-12-31 10:38:00 +0100
committerClifford Wolf <clifford@clifford.at>2015-12-31 10:38:00 +0100
commit2f2abe0afc9a5638c5a376a190540362ac101edb (patch)
tree435c2389dbc88aa2128ecadc51b3a492e8c42ad9 /icefuzz
parent745d81d1d82dd9adab1a187e22ae3d25c16237ec (diff)
parent6aeb515c0090a365c221b4837c0fc7632f5b3809 (diff)
downloadicestorm-2f2abe0afc9a5638c5a376a190540362ac101edb.tar.gz
icestorm-2f2abe0afc9a5638c5a376a190540362ac101edb.tar.bz2
icestorm-2f2abe0afc9a5638c5a376a190540362ac101edb.zip
Merge pull request #22 from juan-micuss/master
Add support for a iCEblink40-LP1k ( QN84 package )
Diffstat (limited to 'icefuzz')
-rw-r--r--icefuzz/icecube.sh14
-rw-r--r--icefuzz/pinloc/pinloc-1k-qn84.sh34
2 files changed, 45 insertions, 3 deletions
diff --git a/icefuzz/icecube.sh b/icefuzz/icecube.sh
index f3dabc6..55fb9bc 100644
--- a/icefuzz/icecube.sh
+++ b/icefuzz/icecube.sh
@@ -1,8 +1,8 @@
#!/bin/bash
#
# Installing iCEcube2:
-# - Install iCEcube2.2014.08 in /opt/lscc/iCEcube2.2014.08
-# - Install License in /opt/lscc/iCEcube2.2014.08/license.dat
+# - Install iCEcube2.2014.08 in /opt/lscc/iCEcube2.2015.08
+# - Install License in /opt/lscc/iCEcube2.2015.08/license.dat
#
# Creating a project:
# - <project_name>.v ## HDL sources (use "top" as name for the top module)
@@ -33,7 +33,7 @@ if [ -z "$scriptdir" ]; then scriptdir="."; fi
set -ex
set -- ${1%.v}
-icecubedir="${ICECUBEDIR:-/opt/lscc/iCEcube2.2014.08}"
+icecubedir="${ICECUBEDIR:-/opt/lscc/iCEcube2.2015.08}"
export SBT_DIR="$icecubedir/sbt_backend"
export SYNPLIFY_PATH="$icecubedir/synpbase"
export LM_LICENSE_FILE="$icecubedir/license.dat"
@@ -68,6 +68,10 @@ case "${ICEDEV:-hx1k-tq144}" in
iCEPACKAGE="CB132"
iCE40DEV="iCE40HX8K"
;;
+ lp1k-qn84)
+ iCEPACKAGE="QN84"
+ iCE40DEV="iCE40LP1K"
+ ;;
*)
echo "ERROR: Invalid \$ICEDEV device config '$ICEDEV'."
exit 1
@@ -82,6 +86,10 @@ case "$iCE40DEV" in
libfile="ice40HX8K.lib"
devfile="ICE40P08.dev"
;;
+ iCE40LP1K)
+ libfile="ice40LP1K.lib"
+ devfile="ICE40P01.dev"
+ ;;
esac
(
diff --git a/icefuzz/pinloc/pinloc-1k-qn84.sh b/icefuzz/pinloc/pinloc-1k-qn84.sh
new file mode 100644
index 0000000..e46743c
--- /dev/null
+++ b/icefuzz/pinloc/pinloc-1k-qn84.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+pins="
+ A1 B1 A2 B2 A3 B3 A4 B4 A5 B5 A8 A9 B7 A10 B8 A11 B9 A12
+ A13 B10 B11 A14 B12 A16 B13 B14 A19 B15 A20 B17 A22 A23 B18 B19 A25 A26
+ B20 B21 A27 A29 B22 B23 A31 B24 A32 A33 A34 B26 A35 B27 A38 B29 A39 B30
+ A40 B31 A41 A43 B32 A44 A45 B34 A46 B35 A47 B36 A48
+
+"
+
+{
+ echo -n "all:"
+ for pin in $pins; do
+ id="pinloc-1k-qn84_${pin}"
+ echo -n " ${id}.exp"
+ done
+ echo
+
+ for pin in $pins; do
+ id="pinloc-1k-qn84_${pin}"
+ echo "module top(output y); assign y = 0; endmodule" > ${id}.v
+ echo "set_io y ${pin}" >> ${id}.pcf
+ echo; echo "${id}.exp:"
+ echo " ICEDEV=lp1k-qn84 bash ../icecube.sh ${id} > ${id}.log 2>&1"
+ echo " ../../icebox/icebox_explain.py ${id}.txt > ${id}.exp.new"
+ echo " rm -rf ${id}.tmp"
+ echo " mv ${id}.exp.new ${id}.exp"
+ done
+} > pinloc-1k-qn84.mk
+
+set -ex
+make -f pinloc-1k-qn84.mk -j4
+python3 pinlocdb.py pinloc-1k-qn84_*.exp > pinloc-1k-qn84.txt
+