47 p->pCis[iPi].timeArr = Delay;
64 p->pCos[iPo].timeReq = Delay;
119 assert( !
p->fUseTravId ||
p->pCos[iCo].TravId !=
p->nTravIds );
120 p->pCos[iCo].timeArr = Delay;
121 p->pCos[iCo].TravId =
p->nTravIds;
138 assert( !
p->fUseTravId ||
p->pCis[iCi].TravId !=
p->nTravIds );
139 p->pCis[iCi].timeReq = Delay;
140 p->pCis[iCi].TravId =
p->nTravIds;
157 assert( !
p->fUseTravId || !
p->nTravIds ||
p->pCos[iCo].TravId !=
p->nTravIds );
158 p->pCos[iCo].timeReq = Delay;
159 p->pCos[iCo].TravId =
p->nTravIds;
178 float * pTable, * pDelays, DelayBest;
181 pObjThis = Tim_ManCi(
p, iCi );
182 if (
p->fUseTravId && pObjThis->
TravId ==
p->nTravIds )
184 pObjThis->
TravId =
p->nTravIds;
186 pBox = Tim_ManCiBox(
p, iCi );
190 pBox->TravId =
p->nTravIds;
194 if ( pObj->
TravId !=
p->nTravIds )
195 printf(
"Tim_ManGetCiArrival(): Input arrival times of the box are not up to date!\n" );
200 pDelays = pTable + 3 + i * pBox->nInputs;
204 DelayBest = Abc_MaxInt( DelayBest, pObj->
timeArr + pDelays[k] );
226 float * pTable, * pDelays, DelayBest;
229 pObjThis = Tim_ManCo(
p, iCo );
230 if (
p->fUseTravId && pObjThis->
TravId ==
p->nTravIds )
232 pObjThis->
TravId =
p->nTravIds;
234 pBox = Tim_ManCoBox(
p, iCo );
238 pBox->TravId =
p->nTravIds;
242 if ( pObj->
TravId !=
p->nTravIds )
243 printf(
"Tim_ManGetCoRequired(): Output required times of output %d the box %d are not up to date!\n", i, pBox->iBox );
251 pDelays = pTable + 3 + k * pBox->nInputs;
253 DelayBest = Abc_MinFloat( DelayBest, pObj->
timeReq - pDelays[i] );
#define ABC_INFINITY
MACRO DEFINITIONS ///.
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
#define Tim_ManForEachPo(p, pObj, i)
#define Tim_ManBoxForEachInput(p, pBox, pObj, i)
struct Tim_Obj_t_ Tim_Obj_t
#define Tim_ManForEachPi(p, pObj, i)
typedefABC_NAMESPACE_HEADER_START struct Tim_Box_t_ Tim_Box_t
INCLUDES ///.
#define Tim_ManBoxForEachOutput(p, pBox, pObj, i)
void Tim_ManSetCoArrival(Tim_Man_t *p, int iCo, float Delay)
void Tim_ManInitPiArrivalAll(Tim_Man_t *p, float Delay)
ABC_NAMESPACE_IMPL_START void Tim_ManInitPiArrival(Tim_Man_t *p, int iPi, float Delay)
DECLARATIONS ///.
void Tim_ManSetCiRequired(Tim_Man_t *p, int iCi, float Delay)
void Tim_ManInitPoRequiredAll(Tim_Man_t *p, float Delay)
void Tim_ManSetCoRequired(Tim_Man_t *p, int iCo, float Delay)
float Tim_ManGetCiArrival(Tim_Man_t *p, int iCi)
void Tim_ManInitPoRequired(Tim_Man_t *p, int iPo, float Delay)
float Tim_ManGetCoRequired(Tim_Man_t *p, int iCo)
typedefABC_NAMESPACE_HEADER_START struct Tim_Man_t_ Tim_Man_t
INCLUDES ///.
#define TIM_ETERNITY
MACRO DEFINITIONS ///.
float * Tim_ManBoxDelayTable(Tim_Man_t *p, int iBox)