aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/trellis_import.py
diff options
context:
space:
mode:
authorDavid Shah <davey1576@gmail.com>2018-11-16 09:58:34 +0000
committerGitHub <noreply@github.com>2018-11-16 09:58:34 +0000
commitfe4f98f26fb295b3b8d09c3303f1172c91698407 (patch)
tree706e1b76f81861b7cb7917b404b29b8d805ddfb5 /ecp5/trellis_import.py
parent9472b6d78f68544d430feeae6d75dbd2dc43019d (diff)
parentf07bd98d59765f2c565815d1a6483db04c57a9d1 (diff)
downloadnextpnr-fe4f98f26fb295b3b8d09c3303f1172c91698407.tar.gz
nextpnr-fe4f98f26fb295b3b8d09c3303f1172c91698407.tar.bz2
nextpnr-fe4f98f26fb295b3b8d09c3303f1172c91698407.zip
Merge pull request #118 from daveshah1/dcu
Adding ECP5 DCU support
Diffstat (limited to 'ecp5/trellis_import.py')
-rwxr-xr-xecp5/trellis_import.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/ecp5/trellis_import.py b/ecp5/trellis_import.py
index 9a26b605..99fe7ba9 100755
--- a/ecp5/trellis_import.py
+++ b/ecp5/trellis_import.py
@@ -200,9 +200,14 @@ def write_database(dev_name, chip, ddrg, endianness):
write_loc(arc.sinkWire.rel, "dst")
bba.u32(arc.srcWire.id, "src_idx")
bba.u32(arc.sinkWire.id, "dst_idx")
- bba.u32(get_pip_delay(get_wire_name(idx, arc.srcWire.rel, arc.srcWire.id), get_wire_name(idx, arc.sinkWire.rel, arc.sinkWire.id)), "delay") # TODO:delay
+ src_name = get_wire_name(idx, arc.srcWire.rel, arc.srcWire.id)
+ snk_name = get_wire_name(idx, arc.sinkWire.rel, arc.sinkWire.id)
+ bba.u32(get_pip_delay(src_name, snk_name), "delay") # TODO:delay
bba.u16(get_tiletype_index(ddrg.to_str(arc.tiletype)), "tile_type")
- bba.u8(int(arc.cls), "pip_type")
+ cls = arc.cls
+ if cls == 1 and "PCS" in snk_name or "DCU" in snk_name or "DCU" in src_name:
+ cls = 2
+ bba.u8(cls, "pip_type")
bba.u8(0, "padding")
if len(loctype.wires) > 0:
for wire_idx in range(len(loctype.wires)):
@@ -340,7 +345,7 @@ def write_database(dev_name, chip, ddrg, endianness):
bba.pop()
return bba
-dev_names = {"25k": "LFE5U-25F", "45k": "LFE5U-45F", "85k": "LFE5U-85F"}
+dev_names = {"25k": "LFE5UM5G-25F", "45k": "LFE5UM5G-45F", "85k": "LFE5UM5G-85F"}
def main():
global max_row, max_col