#include <oagTimerTPoint.h>
Public Member Functions | |
std::string | getBlockName (oaOccObject *block) |
void | invalidateFanout (oaOccObject *oPtr) |
void | invalidateFanin (oaOccObject *oPtr) |
void | invalidateClockFanout (oaOccObject *oPtr) |
void | invalidateClockFanin (oaOccObject *oPtr) |
Constructors and desctructor | |
TPoint () | |
~TPoint () | |
Clear data | |
void | clear () |
void | clearSlew () |
Query functions | |
TimeType | getRiseArr () const |
TimeType | getRiseArr (int i) const |
TimeType | getFallArr () const |
TimeType | getFallArr (int i) const |
TimeType | getRiseReq () const |
TimeType | getRiseReq (int i) const |
TimeType | getFallReq () const |
TimeType | getFallReq (int i) const |
DelayType | getRiseSlack () const |
DelayType | getRiseSlack (int i) const |
DelayType | getFallSlack () const |
DelayType | getFallSlack (int i) const |
DelayType | getSlack () const |
DelayType | getStartingPointSlack () const |
DelayType | getEndingPointSlack (DelayType clkPeriod) const |
double | getLoad () const |
DelayType | getRiseSlew () const |
DelayType | getRiseSlew (int i) const |
DelayType | getFallSlew () const |
DelayType | getFallSlew (int i) const |
Type functions | |
bool | isClock () const |
bool | isPI () const |
bool | isPO () const |
Primary inputs timing information | |
void | piDriverForward (TPointMaster *tm, DelayType defaultSlew) |
Static Public Member Functions | |
TPoint * | create (oaOccObject *oPtr) |
TPoint * | create (oaOccInstTerm *oPtr) |
TPoint * | create (oaOccTerm *oPtr) |
TPoint * | get (oaOccObject *oPtr) |
TPoint * | getClock (oaOccObject *oPtr) |
void | destroy (oaOccObject *oPtr) |
Public Attributes | |
int | multiCycleConstraint |
std::vector< timingData * > | multiClockData |
std::vector< DPData * > | pinDPData |
std::map< oaOccInstTerm *, oaString > | DPSolutions |
double | dpArr |
int | dpIndex |
std::vector< lrData > | lrDataVec |
int | lrDataIndex |
oaString | lrSolution |
bool | revTopValid |
bool | ratValid |
bool | atValid |
bool | netValid |
bool | isFromPI |
bool | isToPO |
bool | isFromFF |
bool | isToFF |
bool | flag |
bool | swapFlag |
bool | slewValid |
bool | riseSlewValid |
bool | fallSlewValid |
bool | inverting |
DelayType | delay1 |
DelayType | delay2 |
DelayType | riseDelay |
DelayType | fallDelay |
DelayType | oldRiseSlew |
DelayType | oldFallSlew |
double | lm |
double | lm_old |
int | lmIndex |
timingPointType | type |
int | counter |
Static Private Member Functions | |
void | initAppDefs () |
Initialize the appDefs associated with TPoints. | |
Private Attributes | |
double | load |
double | netLoad |
double | res |
TimeType | riseArr |
TimeType | riseReq |
TimeType | fallArr |
TimeType | fallReq |
DelayType | riseSlew |
DelayType | fallSlew |
DelayType | netDelay |
int | index |
Static Private Attributes | |
oaVoidPointerAppDef< oaOccInstTerm > * | _instTermAppDef = 0 |
oaVoidPointerAppDef< oaOccTerm > * | _termAppDef = 0 |
oaVoidPointerAppDef< oaOccInstTerm > * | _clockInstTermAppDef = 0 |
oaVoidPointerAppDef< oaOccTerm > * | _clockTermAppDef = 0 |
Friends | |
class | Timer |
class | DuetSensitivity |
class | Opt |
class | Util |
class | TimerUtil |
class | lpSA |
class | LR |
class | DP |
class | SubTimer |
|
The constructor of an TPoint associated with an oaTerm or an oaInstTerm. |
|
The destructor. |
|
This function clears all the data in the current timing point. |
|
|
|
Create a TPoint for the given OccTerm. 0 is returned if the OccTerm does not support a TPoint (i.e. is a power/ground term). It is a fatal error to create a TPoint for an OccTerm which already has a TPoint.
|
|
Create a TPoint for the given OccInstTerm. 0 is returned if the OccInstTerm does not support a TPoint (i.e. is a power/ground term). It is an error to create a TPoint for an OccInstTerm which already has a TPoint.
|
|
Create a TPoint for the given OccTerm/OccInstTerm. 0 is returned if the OccTerm/OccInstTerm does not support a TPoint (i.e. is a power/ground term). It is a fatal error to create a TPoint for an OccTerm/OccInstTerm which already has a TPoint.
|
|
Destroys the TPoint and clock TPoint for the given OccTerm/OccInstTerm.
|
|
Get the TPoint for the given OccTerm/OccInstTerm. It is a fatal error to try to get a TPoint for an OccTerm/OccInstTerm which does not have a TPoint.
|
|
returns the name of block object FIXME should move out of the timer class
|
|
Get the clock TPoint for the given OccTerm/OccInstTerm. If the OccTerm/OccInstTerm does not have a clock TPoint, create a new clock TPoint and return it. Note that this behavior differs from the TPoint::get() method.
|
Here is the call graph for this function:
|
This function returns the slack value at the clock pin, here the clock pin is the ending point of a path. |
|
|
|
This function returns the fall arrival time at this timing point. |
|
|
|
This function returns the required fall arrival time at this timing point. |
|
|
|
This function returns the fall slack at this timing point. |
|
|
|
This function returns the fall slew rate at this timing point. |
|
This function returns the load value at this timing point. |
|
|
|
This function returns the rise arrival time at this timing point. |
|
|
|
This function returns the required rise arrival time at this timing point. |
|
|
|
This function returns the rise slack at this timing point. |
|
|
|
This function returns the rise slew rate at this timing point. |
|
This function returns the slack at this timing point. |
|
This function returns the slack value at the clock pin, here the clock pin is the starting point of a path. |
|
Initialize the appDefs associated with TPoints.
|
|
Invalidate the fanin cone associated with this Clock TPoint.
|
Here is the call graph for this function:
|
Invalidate the fanout cone associated with this Clock TPoint.
|
Here is the call graph for this function:
|
Invalidate the fanin cone associated with this TPoint.
|
Here is the call graph for this function:
|
Invalidate the fanout cone associated with this TPoint.
|
Here is the call graph for this function:
|
This function returns true if the pin is a clock pin type. |
|
This function returns true if it's a PI. |
|
This function returns true if it's a PO. |
|
This function propagates the slew rate and delay at the PI, here the slew rate and the delay come from the driving cell.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This flag indicates if the arrival time is valid. |
|
|
|
|
|
|
|
|
|
|
|
|
|
The fall arrival time at this timing point. |
|
|
|
The required fall arrival time at this timing point. |
|
The fall slew rate at this timing point. |
|
|
|
This flag indicates if slew is valid, for used in incremental timing only |
|
Used in lpSA to assign gate index in the circuit |
|
|
|
This flag indicate whether this input pin is connected from FF |
|
This flag indicate whether this input pin is connected from PI |
|
This flag indicate whether this output pin is connected to FF |
|
This flag indicate whether this output pin is connected to PO |
|
Lagrange Multiplier: used only for LR optimization |
|
|
|
|
|
The load value at this timing point. |
|
|
|
|
|
|
|
|
|
|
The net delay value of this timing point. For a SIGNAL_OUT pin this is the worst net delay seen at the fanouts |
|
|
|
This flag indicates if NetLoad, and NetDelay are valid |
|
|
|
|
|
For use in DP |
|
This flag indicates if the required arrival time is valid. |
|
|
|
This flag indicates input arc valid used for getting reverse topological in DesignTool. |
|
The rise arrival time at this timing point. |
|
|
|
The required rise arrival time at this timing point. |
|
The rise slew rate at this timing point. |
|
|
|
|
|
|
|
The type of this timing point. |