| #!/bin/bash |
| |
| mkdir -p pinloc-4k-tq144 |
| cd pinloc-4k-tq144 |
| |
| pins=" |
| 1 2 3 4 7 8 9 10 11 12 15 16 17 18 19 20 21 22 23 24 25 26 28 29 31 32 33 34 |
| 37 38 39 41 42 43 44 45 47 48 49 52 55 56 60 61 62 63 64 67 68 70 71 |
| 73 74 75 76 78 79 80 81 82 83 84 85 87 88 90 91 93 94 95 96 97 98 99 101 102 104 105 106 107 |
| 110 112 113 114 115 116 117 118 119 120 121 122 124 125 128 129 130 134 135 136 137 138 139 141 142 143 144 |
| " |
| |
| if [ $(echo $pins | wc -w) -ne 107 ]; then |
| echo "Incorrect number of pins:" $(echo $pins | wc -w) |
| exit 1 |
| fi |
| |
| { |
| echo -n "all:" |
| for pin in $pins; do |
| id="pinloc-4k-tq144_${pin}" |
| echo -n " ${id}.exp" |
| done |
| echo |
| |
| for pin in $pins; do |
| id="pinloc-4k-tq144_${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=hx4k-tq144 bash ../../icecube.sh ${id} > ${id}.log 2>&1" |
| echo " ../../../icebox/icebox_explain.py ${id}.asc > ${id}.exp.new" |
| echo " ! grep '^Warning: pin' ${id}.log" |
| echo " rm -rf ${id}.tmp" |
| echo " mv ${id}.exp.new ${id}.exp" |
| done |
| } > pinloc-4k-tq144.mk |
| |
| set -ex |
| make -f pinloc-4k-tq144.mk -j4 |
| python3 ../pinlocdb.py pinloc-4k-tq144_*.exp > ../pinloc-4k-tq144.txt |
| |