| #!/bin/bash | |
| set -ex | |
| mkdir -p colbuf_logic_384.work | |
| cd colbuf_logic_384.work | |
| glb_pins="B4 C4 D2 D6 D7 E2 F3 F4" | |
| for x in 1 2 3 4 5 6; do | |
| for y in 1 2 3 4 5 6 7 8; do | |
| pf="colbuf_logic_384_${x}_${y}" | |
| gpin=$( echo $glb_pins | tr ' ' '\n' | sort -R | head -n1; ) | |
| cat > ${pf}.v <<- EOT | |
| module top (input c, d, output q); | |
| SB_DFF dff ( | |
| .C(c), | |
| .D(d), | |
| .Q(q) | |
| ); | |
| endmodule | |
| EOT | |
| echo "set_location dff $x $y 0" > ${pf}.pcf | |
| echo "set_io c $gpin" >> ${pf}.pcf | |
| ICEDEV=lp384-cm49 bash ../../icecube.sh ${pf}.v > ${pf}.log 2>&1 | |
| ../../../icebox/icebox_explain.py ${pf}.asc > ${pf}.exp | |
| rm -rf ${pf}.tmp | |
| done; done | |