aboutsummaryrefslogtreecommitdiffstats
path: root/generic/viaduct_helpers.h
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2022-05-02 09:56:36 +0100
committerLofty <dan.ravensloft@gmail.com>2022-05-02 11:02:09 +0100
commitf0d4e4fbc3847635e0f6151a9eda52b7fb952c19 (patch)
tree18da2e8b06550c0db562d123923ea9142351c158 /generic/viaduct_helpers.h
parent20cfafa109c15ef8f12307cf23f595c893f5a2e1 (diff)
downloadnextpnr-f0d4e4fbc3847635e0f6151a9eda52b7fb952c19.tar.gz
nextpnr-f0d4e4fbc3847635e0f6151a9eda52b7fb952c19.tar.bz2
nextpnr-f0d4e4fbc3847635e0f6151a9eda52b7fb952c19.zip
generic: Add some extra helpers for viaduct uarches
Signed-off-by: gatecat <gatecat@ds0.me>
Diffstat (limited to 'generic/viaduct_helpers.h')
-rw-r--r--generic/viaduct_helpers.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/generic/viaduct_helpers.h b/generic/viaduct_helpers.h
index cac22304..213995db 100644
--- a/generic/viaduct_helpers.h
+++ b/generic/viaduct_helpers.h
@@ -58,13 +58,15 @@ struct ViaductHelpers
Context *ctx;
void init(Context *ctx) { this->ctx = ctx; }
// IdStringList components for x and y locations
- std::vector<IdString> x_ids, y_ids;
- void resize_ids(int x, int y);
+ std::vector<IdString> x_ids, y_ids, z_ids;
+ void resize_ids(int x, int y, int z = 0);
// Get an IdStringList for a hierarchical ID
// Because this uses an IdStringList with seperate X and Y components; this will be much more efficient than
// creating unique strings for each object in each X and Y position
IdStringList xy_id(int x, int y, IdString base);
IdStringList xy_id(int x, int y, IdStringList base);
+ IdStringList xyz_id(int x, int y, int z, IdString base);
+ IdStringList xyz_id(int x, int y, int z, IdStringList base);
// Common packing functions
// Remove nextpnr-inserted IO buffers; where IO buffer insertion is done in synthesis
// expects a set of top-level port types