aboutsummaryrefslogtreecommitdiffstats
path: root/fpga_interchange/dedicated_interconnect.cc
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-06-30 11:48:51 +0100
committergatecat <gatecat@ds0.me>2021-06-30 11:48:51 +0100
commitb3882f8324507ed503ff481abda3dffded0d0b67 (patch)
tree2b866747915cc0a43ddfdc39293e5fc35e090f55 /fpga_interchange/dedicated_interconnect.cc
parentef1859004352a51031c304f305f01f892736ba30 (diff)
downloadnextpnr-b3882f8324507ed503ff481abda3dffded0d0b67.tar.gz
nextpnr-b3882f8324507ed503ff481abda3dffded0d0b67.tar.bz2
nextpnr-b3882f8324507ed503ff481abda3dffded0d0b67.zip
interchange: Fix dedicated interconnect check when site is the same
Signed-off-by: gatecat <gatecat@ds0.me>
Diffstat (limited to 'fpga_interchange/dedicated_interconnect.cc')
-rw-r--r--fpga_interchange/dedicated_interconnect.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/fpga_interchange/dedicated_interconnect.cc b/fpga_interchange/dedicated_interconnect.cc
index d78743ac..6a2d16bb 100644
--- a/fpga_interchange/dedicated_interconnect.cc
+++ b/fpga_interchange/dedicated_interconnect.cc
@@ -87,7 +87,10 @@ bool DedicatedInterconnect::check_routing(BelId src_bel, IdString src_bel_pin, B
WireNode wire_node;
wire_node.wire = src_wire;
- wire_node.state = IN_SOURCE_SITE;
+ if (src_wire.tile == dst_wire.tile && src_wire_data.site == dst_wire_data.site)
+ wire_node.state = IN_SINK_SITE;
+ else
+ wire_node.state = IN_SOURCE_SITE;
wire_node.depth = 0;
nodes_to_expand.push_back(wire_node);