mirror of https://github.com/YosysHQ/icestorm.git
51 lines
1.7 KiB
Bash
51 lines
1.7 KiB
Bash
#!/bin/bash
|
|
|
|
set -ex
|
|
|
|
mkdir -p colbuf_io_8k.work
|
|
cd colbuf_io_8k.work
|
|
|
|
glb_pins="C8 F7 G1 H11 H16 J3 K9 R9"
|
|
|
|
pins="
|
|
A1 A2 A5 A6 A7 A9 A10 A11 A15 A16
|
|
B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 B11 B12 B13 B14 B15 B16
|
|
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C12 C13 C14 C16
|
|
D1 D2 D3 D4 D5 D6 D7 D8 D9 D10 D11 D13 D14 D15 D16
|
|
E2 E3 E4 E5 E6 E9 E10 E11 E13 E14 E16
|
|
F1 F2 F3 F4 F5 F7 F9 F11 F12 F13 F14 F15 F16
|
|
G1 G2 G3 G4 G5 G10 G11 G12 G13 G14 G15 G16
|
|
H1 H2 H3 H4 H5 H6 H11 H12 H13 H14 H16
|
|
J1 J2 J3 J4 J5 J10 J11 J12 J13 J14 J15 J16
|
|
K1 K3 K4 K5 K9 K11 K12 K13 K14 K15 K16
|
|
L1 L3 L4 L5 L6 L7 L9 L10 L11 L12 L13 L14 L16
|
|
M1 M2 M3 M4 M5 M6 M7 M8 M9 M11 M12 M13 M14 M15 M16
|
|
N2 N3 N4 N5 N6 N7 N9 N10 N12 N16
|
|
P1 P2 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16
|
|
R1 R2 R3 R4 R5 R6 R9 R10 R11 R12 R14 R15 R16
|
|
T1 T2 T3 T5 T6 T7 T8 T9 T10 T11 T13 T14 T15 T16
|
|
"
|
|
pins="$( echo $pins )"
|
|
|
|
for pin in $pins; do
|
|
pf="colbuf_io_8k_$pin"
|
|
gpin=$( echo $glb_pins | tr ' ' '\n' | grep -v $pin | sort -R | head -n1; )
|
|
cat > ${pf}.v <<- EOT
|
|
module top (input clk, data, output pin);
|
|
SB_IO #(
|
|
.PIN_TYPE(6'b 0101_00)
|
|
) pin_obuf (
|
|
.PACKAGE_PIN(pin),
|
|
.OUTPUT_CLK(clk),
|
|
.D_OUT_0(data)
|
|
);
|
|
endmodule
|
|
EOT
|
|
echo "set_io pin $pin" > ${pf}.pcf
|
|
echo "set_io clk $gpin" >> ${pf}.pcf
|
|
ICEDEV=hx8k-ct256 bash ../../icecube.sh ${pf}.v > ${pf}.log 2>&1
|
|
../../../icebox/icebox_explain.py ${pf}.asc > ${pf}.exp
|
|
rm -rf ${pf}.tmp
|
|
done
|
|
|