aboutsummaryrefslogtreecommitdiffstats
path: root/fpga_interchange
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-05-06 12:30:58 +0100
committergatecat <gatecat@ds0.me>2021-05-06 13:12:52 +0100
commit0d6be6f4749174f4a6938a675456cb663edc47cb (patch)
treefcd843131002f8986decf8dcd9352cf3ebd54290 /fpga_interchange
parentc6fa1a179aa8c79d335ba03814ea71d871c87577 (diff)
downloadnextpnr-0d6be6f4749174f4a6938a675456cb663edc47cb.tar.gz
nextpnr-0d6be6f4749174f4a6938a675456cb663edc47cb.tar.bz2
nextpnr-0d6be6f4749174f4a6938a675456cb663edc47cb.zip
Add stub cluster API impl for remaining arches
Signed-off-by: gatecat <gatecat@ds0.me>
Diffstat (limited to 'fpga_interchange')
-rw-r--r--fpga_interchange/arch.h13
-rw-r--r--fpga_interchange/archdefs.h2
2 files changed, 15 insertions, 0 deletions
diff --git a/fpga_interchange/arch.h b/fpga_interchange/arch.h
index da620699..c7d2544f 100644
--- a/fpga_interchange/arch.h
+++ b/fpga_interchange/arch.h
@@ -835,6 +835,19 @@ struct Arch : ArchAPI<ArchRanges>
return get_site_status(tile_status, bel_data).checkSiteRouting(getCtx(), tile_status);
}
+ // -------------------------------------------------
+
+ // TODO
+ CellInfo *getClusterRootCell(ClusterId cluster) const override { NPNR_ASSERT_FALSE("unimplemented"); }
+ ArcBounds getClusterBounds(ClusterId cluster) const override { NPNR_ASSERT_FALSE("unimplemented"); }
+ Loc getClusterOffset(const CellInfo *cell) const override { NPNR_ASSERT_FALSE("unimplemented"); }
+ bool isClusterStrict(const CellInfo *cell) const override { NPNR_ASSERT_FALSE("unimplemented"); }
+ bool getClusterPlacement(ClusterId cluster, BelId root_bel,
+ std::vector<std::pair<CellInfo *, BelId>> &placement) const override
+ {
+ NPNR_ASSERT_FALSE("unimplemented");
+ }
+
IdString get_bel_tiletype(BelId bel) const { return IdString(loc_info(chip_info, bel).name); }
std::unordered_map<WireId, Loc> sink_locs, source_locs;
diff --git a/fpga_interchange/archdefs.h b/fpga_interchange/archdefs.h
index 23bff4f3..c145b893 100644
--- a/fpga_interchange/archdefs.h
+++ b/fpga_interchange/archdefs.h
@@ -98,6 +98,8 @@ struct BelBucketId
bool operator<(const BelBucketId &other) const { return name < other.name; }
};
+typedef IdString ClusterId;
+
struct SiteExpansionLoop;
struct ArchNetInfo