diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2014-06-12 11:08:54 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2014-06-12 11:08:54 -0700 |
commit | 082e5dc1b0d42f575c88dfc7550394a715222b53 (patch) | |
tree | 31a806507015d7320663223338d1fea707aed463 /src/aig | |
parent | 0d1a1c462459fd2be96caa027ad619376b66d658 (diff) | |
download | abc-082e5dc1b0d42f575c88dfc7550394a715222b53.tar.gz abc-082e5dc1b0d42f575c88dfc7550394a715222b53.tar.bz2 abc-082e5dc1b0d42f575c88dfc7550394a715222b53.zip |
Integrating recent changes.
Diffstat (limited to 'src/aig')
-rw-r--r-- | src/aig/gia/gia.h | 4 | ||||
-rw-r--r-- | src/aig/gia/giaBalance.c | 20 | ||||
-rw-r--r-- | src/aig/gia/giaLf.c | 3 |
3 files changed, 18 insertions, 9 deletions
diff --git a/src/aig/gia/gia.h b/src/aig/gia/gia.h index 65eca4ff..5a840e20 100644 --- a/src/aig/gia/gia.h +++ b/src/aig/gia/gia.h @@ -250,6 +250,7 @@ struct Jf_Par_t_ int nCutNum; int nProcNum; int nRounds; + int nRelaxRatio; int nVerbLimit; int DelayTarget; int fAreaOnly; @@ -1131,6 +1132,9 @@ extern Gia_Man_t * Jf_ManDeriveCnf( Gia_Man_t * p, int fCnfObjIds ); extern Gia_Man_t * Gia_ManIsoCanonicize( Gia_Man_t * p, int fVerbose ); extern Gia_Man_t * Gia_ManIsoReduce( Gia_Man_t * p, Vec_Ptr_t ** pvPosEquivs, Vec_Ptr_t ** pvPiPerms, int fEstimate, int fDualOut, int fVerbose, int fVeryVerbose ); extern Gia_Man_t * Gia_ManIsoReduce2( Gia_Man_t * p, Vec_Ptr_t ** pvPosEquivs, Vec_Ptr_t ** pvPiPerms, int fEstimate, int fBetterQual, int fDualOut, int fVerbose, int fVeryVerbose ); +/*=== giaLf.c ===========================================================*/ +extern void Lf_ManSetDefaultPars( Jf_Par_t * pPars ); +extern Gia_Man_t * Lf_ManPerformMapping( Gia_Man_t * pGia, Jf_Par_t * pPars ); /*=== giaLogic.c ===========================================================*/ extern void Gia_ManTestDistance( Gia_Man_t * p ); extern void Gia_ManSolveProblem( Gia_Man_t * pGia, Emb_Par_t * pPars ); diff --git a/src/aig/gia/giaBalance.c b/src/aig/gia/giaBalance.c index 0f3a9406..77b85b48 100644 --- a/src/aig/gia/giaBalance.c +++ b/src/aig/gia/giaBalance.c @@ -1021,7 +1021,9 @@ Gia_Man_t * Gia_ManAigSyn2( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) { Gia_Man_t * pNew, * pTemp; Jf_Par_t Pars, * pPars = &Pars; - Jf_ManSetDefaultPars( pPars ); + Lf_ManSetDefaultPars( pPars ); +// pPars->fVerbose = 1; + pPars->nRelaxRatio = 40; if ( fVerbose ) Gia_ManPrintStats( p, NULL ); if ( Gia_ManAndNum(p) == 0 ) return Gia_ManDup(p); @@ -1030,7 +1032,7 @@ Gia_Man_t * Gia_ManAigSyn2( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); Gia_ManAigTransferPiLevels( pNew, p ); // perform mapping - pNew = Jf_ManPerformMapping( pTemp = pNew, pPars ); + pNew = Lf_ManPerformMapping( pTemp = pNew, pPars ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); // Gia_ManStop( pTemp ); // perform balancing @@ -1044,7 +1046,8 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) { Gia_Man_t * pNew, * pTemp; Jf_Par_t Pars, * pPars = &Pars; - Jf_ManSetDefaultPars( pPars ); + Lf_ManSetDefaultPars( pPars ); + pPars->nRelaxRatio = 40; if ( fVerbose ) Gia_ManPrintStats( p, NULL ); if ( Gia_ManAndNum(p) == 0 ) return Gia_ManDup(p); @@ -1054,7 +1057,7 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Gia_ManAigTransferPiLevels( pNew, p ); // perform mapping pPars->nLutSize = 6; - pNew = Jf_ManPerformMapping( pTemp = pNew, pPars ); + pNew = Lf_ManPerformMapping( pTemp = pNew, pPars ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); // Gia_ManStop( pTemp ); // perform balancing @@ -1064,7 +1067,7 @@ Gia_Man_t * Gia_ManAigSyn3( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Gia_ManStop( pTemp ); // perform mapping pPars->nLutSize = 4; - pNew = Jf_ManPerformMapping( pTemp = pNew, pPars ); + pNew = Lf_ManPerformMapping( pTemp = pNew, pPars ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); // Gia_ManStop( pTemp ); // perform balancing @@ -1078,7 +1081,8 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) { Gia_Man_t * pNew, * pTemp; Jf_Par_t Pars, * pPars = &Pars; - Jf_ManSetDefaultPars( pPars ); + Lf_ManSetDefaultPars( pPars ); + pPars->nRelaxRatio = 40; if ( fVerbose ) Gia_ManPrintStats( p, NULL ); if ( Gia_ManAndNum(p) == 0 ) return Gia_ManDup(p); @@ -1089,7 +1093,7 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Gia_ManAigTransferPiLevels( pNew, p ); // perform mapping pPars->nLutSize = 7; - pNew = Jf_ManPerformMapping( pTemp = pNew, pPars ); + pNew = Lf_ManPerformMapping( pTemp = pNew, pPars ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); // Gia_ManStop( pTemp ); // perform extraction @@ -1104,7 +1108,7 @@ Gia_Man_t * Gia_ManAigSyn4( Gia_Man_t * p, int fVerbose, int fVeryVerbose ) Gia_ManStop( pTemp ); // perform mapping pPars->nLutSize = 5; - pNew = Jf_ManPerformMapping( pTemp = pNew, pPars ); + pNew = Lf_ManPerformMapping( pTemp = pNew, pPars ); if ( fVerbose ) Gia_ManPrintStats( pNew, NULL ); // Gia_ManStop( pTemp ); // perform extraction diff --git a/src/aig/gia/giaLf.c b/src/aig/gia/giaLf.c index 99f585d2..96a633f4 100644 --- a/src/aig/gia/giaLf.c +++ b/src/aig/gia/giaLf.c @@ -46,10 +46,11 @@ ABC_NAMESPACE_IMPL_START ***********************************************************************/ void Lf_ManSetDefaultPars( Jf_Par_t * pPars ) { + Jf_ManSetDefaultPars( pPars ); } Gia_Man_t * Lf_ManPerformMapping( Gia_Man_t * pGia, Jf_Par_t * pPars ) { - return NULL; + return Jf_ManPerformMapping( pGia, pPars ); } //////////////////////////////////////////////////////////////////////// |