summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeith Rothman <537074+litghost@users.noreply.github.com>2021-02-12 15:50:46 -0800
committerKeith Rothman <537074+litghost@users.noreply.github.com>2021-02-12 15:50:46 -0800
commit7c27309e68c44890c31f7e33a0c42d16945c2cb6 (patch)
tree994f7284141375dcc8e08e8c1cd55c5da8e87478
parentedd4aac92717543f1819e98d61f9318e3b18267b (diff)
downloadfpga-interchange-schema-7c27309e68c44890c31f7e33a0c42d16945c2cb6.tar.gz
fpga-interchange-schema-7c27309e68c44890c31f7e33a0c42d16945c2cb6.tar.bz2
fpga-interchange-schema-7c27309e68c44890c31f7e33a0c42d16945c2cb6.zip
Add LUT definitions to DeviceResources.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
-rw-r--r--interchange/DeviceResources.capnp32
1 files changed, 32 insertions, 0 deletions
diff --git a/interchange/DeviceResources.capnp b/interchange/DeviceResources.capnp
index 3184bb2..70c1f20 100644
--- a/interchange/DeviceResources.capnp
+++ b/interchange/DeviceResources.capnp
@@ -84,6 +84,7 @@ struct Device {
packages @11 : List(Package);
constants @12 : Constants;
constraints @13 : Constraints;
+ lutDefinitions @14 : LutDefinitions;
#######################################
# Placement definition objects
@@ -510,4 +511,35 @@ struct Device {
routedTags @1 :List(RoutedTag);
cellConstraints @2 :List(CellConstraint);
}
+
+ ######################################
+ # LUT definitions
+ ######################################
+ struct LutDefinitions {
+ struct LutCell {
+ cell @0 : Text;
+ inputPins @1 : List(Text);
+ }
+
+ struct LutBel {
+ name @0 : Text;
+ inputPins @1 : List(Text);
+ outputPin @2 : Text;
+ lowBit @3 : Int8;
+ highBit @4 : Int8;
+ }
+
+ struct LutElement {
+ width @0 : Int8;
+ bels @1 : List(LutBel);
+ }
+
+ struct LutElements {
+ site @0 : Text;
+ luts @1 : List(LutElement);
+ }
+
+ lutCells @0 : List(LutCell);
+ lutElements @1 : List(LutElements);
+ }
}