ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
timTrav.c File Reference
#include "timInt.h"
Include dependency graph for timTrav.c:

Go to the source code of this file.

Functions

ABC_NAMESPACE_IMPL_START void Tim_ManIncrementTravId (Tim_Man_t *p)
 DECLARATIONS ///.
 
void Tim_ManSetCurrentTravIdBoxInputs (Tim_Man_t *p, int iBox)
 
void Tim_ManSetCurrentTravIdBoxOutputs (Tim_Man_t *p, int iBox)
 
void Tim_ManSetPreviousTravIdBoxInputs (Tim_Man_t *p, int iBox)
 
void Tim_ManSetPreviousTravIdBoxOutputs (Tim_Man_t *p, int iBox)
 
int Tim_ManIsCiTravIdCurrent (Tim_Man_t *p, int iCi)
 
int Tim_ManIsCoTravIdCurrent (Tim_Man_t *p, int iCo)
 

Function Documentation

◆ Tim_ManIncrementTravId()

ABC_NAMESPACE_IMPL_START void Tim_ManIncrementTravId ( Tim_Man_t * p)

DECLARATIONS ///.

CFile****************************************************************

FileName [timTrav.c]

SystemName [ABC: Logic synthesis and verification system.]

PackageName [Hierarchy/timing manager.]

Synopsis [Manipulation of traversal IDs.]

Author [Alan Mishchenko]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - April 28, 2007.]

Revision [

Id
timTrav.c,v 1.00 2007/04/28 00:00:00 alanmi Exp

] FUNCTION DEFINITIONS /// Function*************************************************************

Synopsis [Increments the trav ID of the manager.]

Description []

SideEffects []

SeeAlso []

Definition at line 44 of file timTrav.c.

45{
46 int i;
47 if ( p->nTravIds >= (1<<30)-1 )
48 {
49 p->nTravIds = 0;
50 for ( i = 0; i < p->nCis; i++ )
51 p->pCis[i].TravId = 0;
52 for ( i = 0; i < p->nCos; i++ )
53 p->pCos[i].TravId = 0;
54 }
55 assert( p->nTravIds < (1<<30)-1 );
56 p->nTravIds++;
57}
Cube * p
Definition exorList.c:222
#define assert(ex)
Definition util_old.h:213
Here is the caller graph for this function:

◆ Tim_ManIsCiTravIdCurrent()

int Tim_ManIsCiTravIdCurrent ( Tim_Man_t * p,
int iCi )

Function*************************************************************

Synopsis [Updates required time of the CI.]

Description []

SideEffects []

SeeAlso []

Definition at line 154 of file timTrav.c.

155{
156 assert( iCi < p->nCis );
157 assert( p->fUseTravId );
158 return p->pCis[iCi].TravId == p->nTravIds;
159}
Here is the caller graph for this function:

◆ Tim_ManIsCoTravIdCurrent()

int Tim_ManIsCoTravIdCurrent ( Tim_Man_t * p,
int iCo )

Function*************************************************************

Synopsis [Updates required time of the CO.]

Description []

SideEffects []

SeeAlso []

Definition at line 172 of file timTrav.c.

173{
174 assert( iCo < p->nCos );
175 assert( p->fUseTravId );
176 return p->pCos[iCo].TravId == p->nTravIds;
177}
Here is the caller graph for this function:

◆ Tim_ManSetCurrentTravIdBoxInputs()

void Tim_ManSetCurrentTravIdBoxInputs ( Tim_Man_t * p,
int iBox )

Function*************************************************************

Synopsis [Label box inputs.]

Description []

SideEffects []

SeeAlso []

Definition at line 70 of file timTrav.c.

71{
72 Tim_Box_t * pBox;
73 Tim_Obj_t * pObj;
74 int i;
75 pBox = Tim_ManBox( p, iBox );
76 Tim_ManBoxForEachInput( p, pBox, pObj, i )
77 pObj->TravId = p->nTravIds;
78}
int TravId
Definition timInt.h:82
#define Tim_ManBoxForEachInput(p, pBox, pObj, i)
Definition timInt.h:120
struct Tim_Obj_t_ Tim_Obj_t
Definition timInt.h:49
typedefABC_NAMESPACE_HEADER_START struct Tim_Box_t_ Tim_Box_t
INCLUDES ///.
Definition timInt.h:48
Here is the caller graph for this function:

◆ Tim_ManSetCurrentTravIdBoxOutputs()

void Tim_ManSetCurrentTravIdBoxOutputs ( Tim_Man_t * p,
int iBox )

Function*************************************************************

Synopsis [Label box outputs.]

Description []

SideEffects []

SeeAlso []

Definition at line 91 of file timTrav.c.

92{
93 Tim_Box_t * pBox;
94 Tim_Obj_t * pObj;
95 int i;
96 pBox = Tim_ManBox( p, iBox );
97 Tim_ManBoxForEachOutput( p, pBox, pObj, i )
98 pObj->TravId = p->nTravIds;
99}
#define Tim_ManBoxForEachOutput(p, pBox, pObj, i)
Definition timInt.h:122
Here is the caller graph for this function:

◆ Tim_ManSetPreviousTravIdBoxInputs()

void Tim_ManSetPreviousTravIdBoxInputs ( Tim_Man_t * p,
int iBox )

Function*************************************************************

Synopsis [Label box inputs.]

Description []

SideEffects []

SeeAlso []

Definition at line 112 of file timTrav.c.

113{
114 Tim_Box_t * pBox;
115 Tim_Obj_t * pObj;
116 int i;
117 pBox = Tim_ManBox( p, iBox );
118 Tim_ManBoxForEachInput( p, pBox, pObj, i )
119 pObj->TravId = p->nTravIds - 1;
120}
Here is the caller graph for this function:

◆ Tim_ManSetPreviousTravIdBoxOutputs()

void Tim_ManSetPreviousTravIdBoxOutputs ( Tim_Man_t * p,
int iBox )

Function*************************************************************

Synopsis [Label box outputs.]

Description []

SideEffects []

SeeAlso []

Definition at line 133 of file timTrav.c.

134{
135 Tim_Box_t * pBox;
136 Tim_Obj_t * pObj;
137 int i;
138 pBox = Tim_ManBox( p, iBox );
139 Tim_ManBoxForEachOutput( p, pBox, pObj, i )
140 pObj->TravId = p->nTravIds - 1;
141}
Here is the caller graph for this function: