summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgatecat <gatecat@ds0.me>2021-05-26 07:54:05 +0100
committerGitHub <noreply@github.com>2021-05-26 07:54:05 +0100
commit6b2973788692be86c4a8b2cff1353e603e5857a3 (patch)
tree6f8c3fb6a2617788e0ed77b9d135f4006697016d
parenteb8ca042ba4d0a3768713ef733d7a85ffad59a94 (diff)
parent79e884d085aa1a369eaf20793be3a2c82b61bde0 (diff)
downloadfpga-interchange-schema-6b2973788692be86c4a8b2cff1353e603e5857a3.tar.gz
fpga-interchange-schema-6b2973788692be86c4a8b2cff1353e603e5857a3.tar.bz2
fpga-interchange-schema-6b2973788692be86c4a8b2cff1353e603e5857a3.zip
Merge pull request #57 from gatecat/subtilesmain
interchange: Add sub-tiles, needed for Nexus FASM generation
-rw-r--r--interchange/DeviceResources.capnp10
1 files changed, 10 insertions, 0 deletions
diff --git a/interchange/DeviceResources.capnp b/interchange/DeviceResources.capnp
index e39f844..8c4136e 100644
--- a/interchange/DeviceResources.capnp
+++ b/interchange/DeviceResources.capnp
@@ -78,6 +78,7 @@ annotation tileTypeRef(*) :TileTypeRef;
using TileTypeIdx = UInt32;
using TileTypeSiteTypeIdx = UInt32;
+using TileTypeSubTileIdx = UInt16;
struct Device {
@@ -185,6 +186,14 @@ struct Device {
# Field ordinal 5 was deleted.
deleted @5 : UInt32;
+
+ # Sub-tiles enable PIPs inside a tile to use different FASM prefices
+ # This is needed for the Nexus, where there can be multiple tiles from a
+ # bitstream perspective at the same (row, col) grid location. PIP.subTile
+ # indexes into this list to get a prefix for FASM purposes.
+ # If sub-tiles are not used; then this list is empty and an implicit
+ # sub-tile index 0 has the same prefix as the tile name.
+ subTilesPrefices @6 : List(StringIdx) $stringRef();
}
######################################
@@ -254,6 +263,7 @@ struct Device {
conventional @5 : Void;
pseudoCells @6 : List(PseudoCell);
}
+ subTile @7 : TileTypeSubTileIdx; # Index into Tile.subTilesPrefices
}
struct PseudoCell {