diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2012-01-16 12:21:53 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2012-01-16 12:21:53 -0800 |
commit | ca28f77f3ac995ca5834b7ceef99ac0363f6ce8c (patch) | |
tree | dcbeb92b82e3b8243cbe85482028eafa3d778210 /src/aig/gia/gia.h | |
parent | 10478a9cbf37432cb70e8b1ae58d79375d72c5c8 (diff) | |
download | abc-ca28f77f3ac995ca5834b7ceef99ac0363f6ce8c.tar.gz abc-ca28f77f3ac995ca5834b7ceef99ac0363f6ce8c.tar.bz2 abc-ca28f77f3ac995ca5834b7ceef99ac0363f6ce8c.zip |
Variable timeframe abstraction.
Diffstat (limited to 'src/aig/gia/gia.h')
-rw-r--r-- | src/aig/gia/gia.h | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index 98766396..d80c0963 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -196,9 +196,17 @@ struct Gia_ParSim_t_ int iOutFail; // index of the failed output }; -extern void Gia_ManSimSetDefaultParams( Gia_ParSim_t * p ); -extern int Gia_ManSimSimulate( Gia_Man_t * pAig, Gia_ParSim_t * pPars ); - +// abstraction parameters +typedef struct Gia_ParVta_t_ Gia_ParVta_t; +struct Gia_ParVta_t_ +{ + int nFramesStart; // starting frame + int nFramesMax; // maximum frames + int nConfLimit; // conflict limit + int nTimeOut; // timeout in seconds + int fVerbose; // verbose flag + int iFrame; // the number of frames covered +}; static inline int Gia_IntAbs( int n ) { return (n < 0)? -n : n; } static inline int Gia_Float2Int( float Val ) { union { int x; float y; } v; v.y = Val; return v.x; } @@ -611,6 +619,12 @@ extern int Gia_ManPbaPerform( Gia_Man_t * pGia, int nStart, int extern int Gia_ManCbaPerform( Gia_Man_t * pGia, void * pPars ); extern int Gia_ManGlaCbaPerform( Gia_Man_t * pGia, void * pPars, int fNaiveCnf ); extern int Gia_ManGlaPbaPerform( Gia_Man_t * pGia, void * pPars, int fNewSolver ); +/*=== giaAbsVta.c ===========================================================*/ +extern void Gia_VtaSetDefaultParams( Gia_ParVta_t * p ); +extern Vec_Ptr_t * Gia_VtaAbsToFrames( Vec_Int_t * vAbs ); +extern Vec_Int_t * Gia_VtaFramesToAbs( Vec_Vec_t * vFrames ); +extern Vec_Int_t * Gia_VtaConvertToGla( Gia_Man_t * p, Vec_Int_t * vAbs ); +extern int Gia_VtaPerform( Gia_Man_t * pAig, Gia_ParVta_t * pPars ); /*=== giaAiger.c ===========================================================*/ extern int Gia_FileSize( char * pFileName ); extern Gia_Man_t * Gia_ReadAigerFromMemory( char * pContents, int nFileSize, int fCheck ); @@ -783,6 +797,7 @@ extern Gia_Man_t * Gia_ManPerformMapShrink( Gia_Man_t * p, int fKeepLeve /*=== giaSort.c ============================================================*/ extern int * Gia_SortFloats( float * pArray, int * pPerm, int nSize ); /*=== giaSim.c ============================================================*/ +extern void Gia_ManSimSetDefaultParams( Gia_ParSim_t * p ); extern int Gia_ManSimSimulate( Gia_Man_t * pAig, Gia_ParSim_t * pPars ); /*=== giaSpeedup.c ============================================================*/ extern float Gia_ManDelayTraceLut( Gia_Man_t * p ); |