21 #ifndef ABC__map__scl__sclTime_h
22 #define ABC__map__scl__sclTime_h
97 static inline int Scl_ObjLegal(
SC_Time *
p,
int i,
float D ) {
return Scl_ObjTime(p, i)->
rise <=
Scl_ObjTime2(p, i)->
rise +
Scl_ObjGetSlackR(p, i, D) &&
Scl_ObjTime(p, i)->
fall <=
Scl_ObjTime2(p, i)->
fall +
Scl_ObjGetSlackF(p, i, D); }
static float Scl_ObjGetSlack(SC_Time *p, int i, float D)
static float Scl_ObjSlack(SC_Time *p, int i)
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
static double Scl_ObjTimePs(SC_Time *p, int i, int fRise)
static SC_Pair * Scl_ObjTime2(SC_Time *p, int i)
static SC_Time * Scl_ManAlloc(SC_Lib *pLib, Vec_Int_t *vCis, Vec_Int_t *vCos, int nObjs)
FUNCTION DEFINITIONS ///.
static void Scl_ConeStore(SC_Time *p, Vec_Int_t *vCone)
static void Scl_LibPinDeparture(SC_Timing *pTime, SC_Pair *pDepIn, SC_Pair *pSlewIn, SC_Pair *pLoad, SC_Pair *pDepOut)
static SC_Pair * Scl_ObjLoad(SC_Time *p, int i)
static double Scl_ObjSlewPs(SC_Time *p, int i, int fRise)
static float Abc_MaxFloat(float a, float b)
static void Scl_ManCleanTime(SC_Time *p)
static SC_Pair * Scl_ObjDept(SC_Time *p, int i)
static void Scl_ManFree(SC_Time *p)
static double Scl_ObjLoadFf(SC_Time *p, int i, int fRise)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static SC_Pair * Scl_ObjSlew(SC_Time *p, int i)
static SC_Pair * Scl_ObjLoad2(SC_Time *p, int i)
typedefABC_NAMESPACE_HEADER_START struct SC_Time_ SC_Time
INCLUDES ///.
static float Scl_ObjGain(SC_Time *p, int i)
static int Vec_IntEntry(Vec_Int_t *p, int i)
static SC_Cell * Scl_ObjCell(SC_Time *p, int i)
GLOBAL VARIABLES ///.
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
static void Vec_IntFreeP(Vec_Int_t **p)
static SC_Cell * SC_LibCell(SC_Lib *p, int i)
#define ABC_NAMESPACE_HEADER_END
static void Scl_ObjSetCell(SC_Time *p, int i, SC_Cell *pCell)
static void Scl_PinTimeDeparture(SC_Time *p, SC_Timing *pTime, int iObj, int iFanin)
static float Scl_ObjDepthMax(SC_Time *p, int i)
static int Scl_ObjLegal(SC_Time *p, int i, float D)
static void Scl_PinTimeArrival(SC_Time *p, SC_Timing *pTime, int iObj, int iFanin)
static float Scl_ObjGetSlackR(SC_Time *p, int i, float D)
static void Scl_LibPinArrival(SC_Timing *pTime, SC_Pair *pArrIn, SC_Pair *pSlewIn, SC_Pair *pLoad, SC_Pair *pArrOut, SC_Pair *pSlewOut)
#define ABC_CALLOC(type, num)
static SC_Pair * Scl_ObjSlew2(SC_Time *p, int i)
static SC_Pair * Scl_ObjTime(SC_Time *p, int i)
static float Scl_ObjGetSlackF(SC_Time *p, int i, float D)
static float Scl_ObjTimeMax(SC_Time *p, int i)
static void Scl_ConeClear(SC_Time *p, Vec_Int_t *vCone)
static void Scl_ConeRestore(SC_Time *p, Vec_Int_t *vCone)
#define Vec_IntForEachEntry(vVec, Entry, i)
MACRO DEFINITIONS ///.
#define ABC_FALLOC(type, num)
static void Scl_ObjDupFanin(SC_Time *p, int i, int iFanin)