public class SmallDelayModel extends Object implements DelayModel
Constructor and Description |
---|
SmallDelayModel(com.xilinx.rapidwright.timing.DelayModelSource src)
constructor for SmallDelayModel class
|
Modifier and Type | Method and Description |
---|---|
short |
getBELIndex(String belName)
TODO - Revisit this is part of the DelayModel
Gets the equivalent timing model index for this BEL
|
int |
getEncodedConfigCode(String value)
TODO - Revisit this as part of the DelayModel
Gets the encoded config code for the value (belname:paramsetting)
|
Short |
getIntraSiteDelay(SiteTypeEnum siteTypeName,
String frBelPin,
String toBelPin)
Implement the method with the same signature defined in DelayModel interface.
|
short |
getLogicDelay(short belIdx,
String frBelPin,
String toBelPin)
Implement the method with the same signature defined in DelayModel interface.
|
short |
getLogicDelay(short belIdx,
String frBelPin,
String toBelPin,
int encodedConfig)
Implement the method with the same signature defined in DelayModel interface.
|
public SmallDelayModel(com.xilinx.rapidwright.timing.DelayModelSource src)
src
- specify the source for the delay modelpublic int getEncodedConfigCode(String value)
DelayModel
getEncodedConfigCode
in interface DelayModel
public short getBELIndex(String belName)
DelayModel
getBELIndex
in interface DelayModel
belName
- Name of the BELpublic Short getIntraSiteDelay(SiteTypeEnum siteTypeName, String frBelPin, String toBelPin)
getIntraSiteDelay
in interface DelayModel
siteTypeName
- The name of the site type, such as SLICEL and SLICEM.frBelPin
- The bel pin which is the driver of the connection. Thus, it must be a bel output pin.
The bel name must be included, ie., AFF2/D. An input site pin is considered a valid frBelPin.toBelPin
- The bel pin which is the sink of the connection (a bel input pin, or an output site pin).public short getLogicDelay(short belIdx, String frBelPin, String toBelPin)
getLogicDelay
in interface DelayModel
belIdx
- The unique BEL timing model index, see DelayModel.getBELIndex(String)
.frBelPin
- An input bel pin. It must NOT include bel name.toBelPin
- An output bel pin. It must NOT include bel name.public short getLogicDelay(short belIdx, String frBelPin, String toBelPin, int encodedConfig)
getLogicDelay
in interface DelayModel
belIdx
- The unique BEL timing model index, see DelayModel.getBELIndex(String)
.frBelPin
- An input bel pin. It must NOT include bel name.toBelPin
- An output bel pin. It must NOT include bel name.encodedConfig
- A list of config_name:value of the bel, ie., {CYINIT_BOT:GND, CARRY_TYPE:SINGLE_CY8}.
What is the possible config_name and its value?
Ones need to look at the logic delay files used for DelayModelSource_text to find that out.
Where to get the config's value from the design?
There is no uniform way to find the value. It is to determined per case.
For example, some configs of carry8 is from bel, while some from cell.