aboutsummaryrefslogtreecommitdiffstats
path: root/ecp5/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'ecp5/config.h')
-rw-r--r--ecp5/config.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/ecp5/config.h b/ecp5/config.h
index 3d2ef971..8b38de5d 100644
--- a/ecp5/config.h
+++ b/ecp5/config.h
@@ -98,6 +98,14 @@ std::ostream &operator<<(std::ostream &out, const TileConfig &tc);
std::istream &operator>>(std::istream &in, TileConfig &ce);
+// A group of tiles to configure at once for a particular feature that is split across tiles
+// TileGroups are currently for non-routing configuration only
+struct TileGroup
+{
+ std::vector<std::string> tiles;
+ TileConfig config;
+};
+
// This represents the configuration of a chip at a high level
class ChipConfig
{
@@ -105,6 +113,8 @@ class ChipConfig
std::string chip_name;
std::vector<std::string> metadata;
std::map<std::string, TileConfig> tiles;
+ std::vector<TileGroup> tilegroups;
+ std::map<uint16_t, std::vector<uint16_t>> bram_data;
};
std::ostream &operator<<(std::ostream &out, const ChipConfig &cc);