From 7c27309e68c44890c31f7e33a0c42d16945c2cb6 Mon Sep 17 00:00:00 2001 From: Keith Rothman <537074+litghost@users.noreply.github.com> Date: Fri, 12 Feb 2021 15:50:46 -0800 Subject: Add LUT definitions to DeviceResources. Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com> --- interchange/DeviceResources.capnp | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'interchange') 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); + } } -- cgit v1.2.3