mirror of https://github.com/YosysHQ/icestorm.git
Fix IeRen database for up5k
This commit is contained in:
parent
5afdeee0e0
commit
bf21b64498
137
icebox/icebox.py
137
icebox/icebox.py
|
|
@ -2069,103 +2069,46 @@ ieren_db = {
|
||||||
( 7, 6, 0, 7, 6, 1),
|
( 7, 6, 0, 7, 6, 1),
|
||||||
( 7, 6, 1, 7, 6, 0),
|
( 7, 6, 1, 7, 6, 0),
|
||||||
],
|
],
|
||||||
"5k": [ #TODO: is this correct?
|
"5k": [
|
||||||
(1 , 0, 0, 1 , 0, 0),
|
( 8, 0, 0, 8, 0, 1),
|
||||||
(1 , 0, 1, 1 , 0, 1),
|
( 9, 0, 1, 9, 0, 0),
|
||||||
(1 , 31, 0, 1 , 31, 0),
|
( 9, 0, 0, 9, 0, 1),
|
||||||
(1 , 31, 1, 1 , 31, 1),
|
(13, 0, 1, 13, 0, 0),
|
||||||
(2 , 0, 0, 2 , 0, 0),
|
(15, 0, 0, 15, 0, 1),
|
||||||
(2 , 0, 1, 2 , 0, 1),
|
(16, 0, 0, 16, 0, 1),
|
||||||
(2 , 31, 0, 2 , 31, 0),
|
(17, 0, 0, 17, 0, 1),
|
||||||
(2 , 31, 1, 2 , 31, 1),
|
(18, 0, 0, 18, 0, 1),
|
||||||
(3 , 0, 0, 3 , 0, 0),
|
(19, 0, 0, 19, 0, 1),
|
||||||
(3 , 0, 1, 3 , 0, 1),
|
(23, 0, 0, 23, 0, 1),
|
||||||
(3 , 31, 0, 3 , 31, 0),
|
(24, 0, 0, 24, 0, 1),
|
||||||
(3 , 31, 1, 3 , 31, 1),
|
(24, 0, 1, 24, 0, 0),
|
||||||
(4 , 0, 0, 4 , 0, 0),
|
(23, 0, 1, 23, 0, 0),
|
||||||
(4 , 0, 1, 4 , 0, 1),
|
(22, 0, 1, 22, 0, 0),
|
||||||
(4 , 31, 0, 4 , 31, 0),
|
(21, 0, 1, 21, 0, 0),
|
||||||
(4 , 31, 1, 4 , 31, 1),
|
(19, 0, 1, 19, 0, 0),
|
||||||
(5 , 0, 0, 5 , 0, 0),
|
(18, 0, 1, 18, 0, 0),
|
||||||
(5 , 0, 1, 5 , 0, 1),
|
(19, 31, 0, 19, 31, 1),
|
||||||
(5 , 31, 0, 5 , 31, 0),
|
(19, 31, 1, 19, 31, 0),
|
||||||
(5 , 31, 1, 5 , 31, 1),
|
(18, 31, 0, 18, 31, 1),
|
||||||
(6 , 0, 0, 6 , 0, 0),
|
(18, 31, 1, 18, 31, 0),
|
||||||
(6 , 0, 1, 6 , 0, 1),
|
(17, 31, 0, 17, 31, 1),
|
||||||
(6 , 31, 0, 6 , 31, 0),
|
(16, 31, 1, 16, 31, 0),
|
||||||
(6 , 31, 1, 6 , 31, 1),
|
(16, 31, 0, 16, 31, 1),
|
||||||
(7 , 0, 0, 7 , 0, 0),
|
(13, 31, 1, 13, 31, 0),
|
||||||
(7 , 0, 1, 7 , 0, 1),
|
(12, 31, 1, 12, 31, 0),
|
||||||
(7 , 31, 0, 7 , 31, 0),
|
( 9, 31, 1, 9, 31, 0),
|
||||||
(7 , 31, 1, 7 , 31, 1),
|
(13, 31, 0, 13, 31, 1),
|
||||||
(8 , 0, 0, 8 , 0, 0),
|
( 4, 31, 0, 4, 31, 1),
|
||||||
(8 , 0, 1, 8 , 0, 1),
|
( 5, 31, 0, 5, 31, 1),
|
||||||
(8 , 31, 0, 8 , 31, 0),
|
( 6, 31, 0, 6, 31, 1),
|
||||||
(8 , 31, 1, 8 , 31, 1),
|
( 8, 31, 1, 8, 31, 0),
|
||||||
(9 , 0, 0, 9 , 0, 0),
|
( 8, 31, 0, 8, 31, 1),
|
||||||
(9 , 0, 1, 9 , 0, 1),
|
( 9, 31, 0, 9, 31, 1),
|
||||||
(9 , 31, 0, 9 , 31, 0),
|
( 6, 0, 1, 6, 0, 0),
|
||||||
(9 , 31, 1, 9 , 31, 1),
|
( 7, 0, 1, 7, 0, 0),
|
||||||
(10, 0, 0, 10, 0, 0),
|
( 5, 0, 0, 5, 0, 1),
|
||||||
(10, 0, 1, 10, 0, 1),
|
( 6, 0, 0, 6, 0, 1),
|
||||||
(10, 31, 0, 10, 31, 0),
|
( 7, 0, 0, 7, 0, 1)
|
||||||
(10, 31, 1, 10, 31, 1),
|
|
||||||
(11, 0, 0, 11, 0, 0),
|
|
||||||
(11, 0, 1, 11, 0, 1),
|
|
||||||
(11, 31, 0, 11, 31, 0),
|
|
||||||
(11, 31, 1, 11, 31, 1),
|
|
||||||
(12, 0, 0, 12, 0, 0),
|
|
||||||
(12, 0, 1, 12, 0, 1),
|
|
||||||
(12, 31, 0, 12, 31, 0),
|
|
||||||
(12, 31, 1, 12, 31, 1),
|
|
||||||
(13, 0, 0, 13, 0, 0),
|
|
||||||
(13, 0, 1, 13, 0, 1),
|
|
||||||
(13, 31, 0, 13, 31, 0),
|
|
||||||
(13, 31, 1, 13, 31, 1),
|
|
||||||
(14, 0, 0, 14, 0, 0),
|
|
||||||
(14, 0, 1, 14, 0, 1),
|
|
||||||
(14, 31, 0, 14, 31, 0),
|
|
||||||
(14, 31, 1, 14, 31, 1),
|
|
||||||
(15, 0, 0, 15, 0, 0),
|
|
||||||
(15, 0, 1, 15, 0, 1),
|
|
||||||
(15, 31, 0, 15, 31, 0),
|
|
||||||
(15, 31, 1, 15, 31, 1),
|
|
||||||
(16, 0, 0, 16, 0, 0),
|
|
||||||
(16, 0, 1, 16, 0, 1),
|
|
||||||
(16, 31, 0, 16, 31, 0),
|
|
||||||
(16, 31, 1, 16, 31, 1),
|
|
||||||
(17, 0, 0, 17, 0, 0),
|
|
||||||
(17, 0, 1, 17, 0, 1),
|
|
||||||
(17, 31, 0, 17, 31, 0),
|
|
||||||
(17, 31, 1, 17, 31, 1),
|
|
||||||
(18, 0, 0, 18, 0, 0),
|
|
||||||
(18, 0, 1, 18, 0, 1),
|
|
||||||
(18, 31, 0, 18, 31, 1),
|
|
||||||
(18, 31, 1, 18, 31, 0),
|
|
||||||
(19, 0, 0, 19, 0, 0),
|
|
||||||
(19, 0, 1, 19, 0, 1),
|
|
||||||
(19, 31, 0, 19, 31, 0),
|
|
||||||
(19, 31, 1, 19, 31, 1),
|
|
||||||
(20, 0, 0, 20, 0, 0),
|
|
||||||
(20, 0, 1, 20, 0, 1),
|
|
||||||
(20, 31, 0, 20, 31, 0),
|
|
||||||
(20, 31, 1, 20, 31, 1),
|
|
||||||
(21, 0, 0, 21, 0, 0),
|
|
||||||
(21, 0, 1, 21, 0, 1),
|
|
||||||
(21, 31, 0, 21, 31, 0),
|
|
||||||
(21, 31, 1, 21, 31, 1),
|
|
||||||
(22, 0, 0, 22, 0, 0),
|
|
||||||
(22, 0, 1, 22, 0, 1),
|
|
||||||
(22, 31, 0, 22, 31, 0),
|
|
||||||
(22, 31, 1, 22, 31, 1),
|
|
||||||
(23, 0, 0, 23, 0, 0),
|
|
||||||
(23, 0, 1, 23, 0, 1),
|
|
||||||
(23, 31, 0, 23, 31, 0),
|
|
||||||
(23, 31, 1, 23, 31, 1),
|
|
||||||
(24, 0, 0, 24, 0, 0),
|
|
||||||
(24, 0, 1, 24, 0, 1),
|
|
||||||
(24, 31, 0, 24, 31, 0),
|
|
||||||
(24, 31, 1, 24, 31, 1)
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
ioctrl.work
|
||||||
|
intosc.work
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import fileinput
|
||||||
|
|
||||||
|
for line in fileinput.input():
|
||||||
|
line = line.split()
|
||||||
|
if len(line) == 0:
|
||||||
|
continue
|
||||||
|
if line[0] == ".io_tile":
|
||||||
|
current_tile = (int(line[1]), int(line[2]))
|
||||||
|
if line[0] == "IoCtrl" and line[1] == "REN_0":
|
||||||
|
ren = (current_tile[0], current_tile[1], 0)
|
||||||
|
if line[0] == "IoCtrl" and line[1] == "REN_1":
|
||||||
|
ren = (current_tile[0], current_tile[1], 1)
|
||||||
|
if line[0] == "IOB_0":
|
||||||
|
iob = (current_tile[0], current_tile[1], 0)
|
||||||
|
if line[0] == "IOB_1":
|
||||||
|
iob = (current_tile[0], current_tile[1], 1)
|
||||||
|
|
||||||
|
print("(%2d, %2d, %2d, %2d, %2d, %2d)," % (iob[0], iob[1], iob[2], ren[0], ren[1], ren[2]))
|
||||||
|
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
mkdir -p ioctrl.work
|
||||||
|
cd ioctrl.work
|
||||||
|
|
||||||
|
pins="2 3 4 6 9 10 11 12
|
||||||
|
13 14 15 16 17 18 19 20 21 23
|
||||||
|
25 26 27 28 31 32 34 35 36
|
||||||
|
37 38 42 43 44 45 46 47 48
|
||||||
|
"
|
||||||
|
pins="$( echo $pins )"
|
||||||
|
|
||||||
|
for pin in $pins; do
|
||||||
|
pf="ioctrl_$pin"
|
||||||
|
echo "module top (output pin); assign pin = 1; endmodule" > ${pf}.v
|
||||||
|
echo "set_io pin $pin" > ${pf}.pcf
|
||||||
|
bash ../../icecube.sh -up5k ${pf}.v > ${pf}.log 2>&1
|
||||||
|
../../../icebox/icebox_explain.py ${pf}.asc > ${pf}.exp
|
||||||
|
done
|
||||||
|
|
||||||
|
set +x
|
||||||
|
echo "--snip--"
|
||||||
|
for pin in $pins; do
|
||||||
|
python3 ../ioctrl_5k.py ioctrl_${pin}.exp
|
||||||
|
done | tee ioctrl_db.txt
|
||||||
|
echo "--snap--"
|
||||||
Loading…
Reference in New Issue