| #!/bin/bash |
| |
| mkdir -p pinloc-1k-cm121 |
| cd pinloc-1k-cm121 |
| |
| pins=" |
| A1 A2 A3 A5 A7 A8 A9 A10 A11 |
| B1 B2 B3 B4 B5 B7 B8 B9 B10 B11 |
| C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 |
| D1 D2 D3 D4 D5 D6 D10 D11 |
| E2 E3 E4 E6 E7 E8 E9 E10 |
| F2 F3 F4 F5 F6 F8 F9 F11 |
| G2 G4 G8 G9 G11 |
| H1 H2 H4 H5 H6 H7 H8 H9 H10 H11 |
| J1 J2 J5 J6 J8 J10 J11 |
| K1 K2 K3 K4 K5 K7 K8 K9 K10 K11 |
| L1 L2 L3 L4 L5 L7 L9 L10 L11 |
| " |
| |
| if [ $(echo $pins | wc -w) -ne 95 ]; then |
| echo "Incorrect number of pins:" $(echo $pins | wc -w) |
| exit 1 |
| fi |
| |
| { |
| echo -n "all:" |
| for pin in $pins; do |
| id="pinloc-1k-cm121_${pin}" |
| echo -n " ${id}.exp" |
| done |
| echo |
| |
| for pin in $pins; do |
| id="pinloc-1k-cm121_${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-cm121 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-1k-cm121.mk |
| |
| set -ex |
| make -f pinloc-1k-cm121.mk -j4 |
| python3 ../pinlocdb.py pinloc-1k-cm121_*.exp > ../pinloc-1k-cm121.txt |
| |