diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2006-06-11 08:01:00 -0700 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2006-06-11 08:01:00 -0700 |
commit | 3db1557f45b03875a0a0b8adddcc15c4565895d2 (patch) | |
tree | 2896d20ddcb85ae4aa7245ca28bc585f567fea54 /src/base/seq | |
parent | 7d0921330b1f4e789901b4c2450920e7c412f95f (diff) | |
download | abc-3db1557f45b03875a0a0b8adddcc15c4565895d2.tar.gz abc-3db1557f45b03875a0a0b8adddcc15c4565895d2.tar.bz2 abc-3db1557f45b03875a0a0b8adddcc15c4565895d2.zip |
Version abc60611
Diffstat (limited to 'src/base/seq')
-rw-r--r-- | src/base/seq/seqAigCore.c | 3 | ||||
-rw-r--r-- | src/base/seq/seqCreate.c | 26 | ||||
-rw-r--r-- | src/base/seq/seqFpgaCore.c | 8 | ||||
-rw-r--r-- | src/base/seq/seqMapCore.c | 8 | ||||
-rw-r--r-- | src/base/seq/seqRetCore.c | 8 |
5 files changed, 20 insertions, 33 deletions
diff --git a/src/base/seq/seqAigCore.c b/src/base/seq/seqAigCore.c index 813b1ed8..358d306c 100644 --- a/src/base/seq/seqAigCore.c +++ b/src/base/seq/seqAigCore.c @@ -319,6 +319,7 @@ int Seq_NtkImplementRetimingBackward( Abc_Ntk_t * pNtk, Vec_Ptr_t * vMoves, int // add the PI/PO names Abc_NtkAddDummyPiNames( pNtkProb ); Abc_NtkAddDummyPoNames( pNtkProb ); + Abc_NtkAddDummyAssertNames( pNtkProb ); // make sure everything is okay with the network structure if ( !Abc_NtkDoCheck( pNtkProb ) ) @@ -358,7 +359,7 @@ int Seq_NtkImplementRetimingBackward( Abc_Ntk_t * pNtk, Vec_Ptr_t * vMoves, int // solve the miter clk = clock(); // RetValue = Abc_NtkMiterSat_OldAndRusty( pNtkCnf, 30, 0 ); - RetValue = Abc_NtkMiterSat( pNtkCnf, 500000, 50000000, 0, 0 ); + RetValue = Abc_NtkMiterSat( pNtkCnf, (sint64)500000, (sint64)50000000, 0, 0, NULL, NULL ); if ( fVerbose ) if ( clock() - clk > 100 ) { diff --git a/src/base/seq/seqCreate.c b/src/base/seq/seqCreate.c index b0c2e084..a553e06f 100644 --- a/src/base/seq/seqCreate.c +++ b/src/base/seq/seqCreate.c @@ -110,17 +110,23 @@ Abc_Ntk_t * Abc_NtkAigToSeq( Abc_Ntk_t * pNtk ) pNtkNew->nObjs++; } pNtkNew->nNodes = pNtk->nNodes; - pNtkNew->nPis = pNtk->nPis; - pNtkNew->nPos = pNtk->nPos; // create PI/PO and their names Abc_NtkForEachPi( pNtk, pObj, i ) { + Vec_PtrPush( pNtkNew->vPis, pObj->pCopy ); Vec_PtrPush( pNtkNew->vCis, pObj->pCopy ); Abc_NtkLogicStoreName( pObj->pCopy, Abc_ObjName(pObj) ); } Abc_NtkForEachPo( pNtk, pObj, i ) { + Vec_PtrPush( pNtkNew->vPos, pObj->pCopy ); + Vec_PtrPush( pNtkNew->vCos, pObj->pCopy ); + Abc_NtkLogicStoreName( pObj->pCopy, Abc_ObjName(pObj) ); + } + Abc_NtkForEachAssert( pNtk, pObj, i ) + { + Vec_PtrPush( pNtkNew->vAsserts, pObj->pCopy ); Vec_PtrPush( pNtkNew->vCos, pObj->pCopy ); Abc_NtkLogicStoreName( pObj->pCopy, Abc_ObjName(pObj) ); } @@ -252,7 +258,7 @@ void Abc_NtkAigCutsetCopy( Abc_Ntk_t * pNtk ) Abc_Ntk_t * Abc_NtkSeqToLogicSop( Abc_Ntk_t * pNtk ) { Abc_Ntk_t * pNtkNew; - Abc_Obj_t * pObj, * pObjNew, * pFaninNew; + Abc_Obj_t * pObj, * pFaninNew; Seq_Lat_t * pRing; int i; @@ -297,11 +303,7 @@ Abc_Ntk_t * Abc_NtkSeqToLogicSop( Abc_Ntk_t * pNtk ) // add the latches and their names Abc_NtkAddDummyLatchNames( pNtkNew ); - Abc_NtkForEachLatch( pNtkNew, pObjNew, i ) - { - Vec_PtrPush( pNtkNew->vCis, pObjNew ); - Vec_PtrPush( pNtkNew->vCos, pObjNew ); - } + Abc_NtkOrderCisCos( pNtkNew ); // fix the problem with complemented and duplicated CO edges Abc_NtkLogicMakeSimpleCos( pNtkNew, 0 ); if ( !Abc_NtkCheck( pNtkNew ) ) @@ -324,7 +326,7 @@ Abc_Ntk_t * Abc_NtkSeqToLogicSop( Abc_Ntk_t * pNtk ) Abc_Ntk_t * Abc_NtkSeqToLogicSop_old( Abc_Ntk_t * pNtk ) { Abc_Ntk_t * pNtkNew; - Abc_Obj_t * pObj, * pObjNew, * pFaninNew; + Abc_Obj_t * pObj, * pFaninNew; int i; assert( Abc_NtkIsSeq(pNtk) ); @@ -371,11 +373,7 @@ Abc_Ntk_t * Abc_NtkSeqToLogicSop_old( Abc_Ntk_t * pNtk ) } // add the latches and their names Abc_NtkAddDummyLatchNames( pNtkNew ); - Abc_NtkForEachLatch( pNtkNew, pObjNew, i ) - { - Vec_PtrPush( pNtkNew->vCis, pObjNew ); - Vec_PtrPush( pNtkNew->vCos, pObjNew ); - } + Abc_NtkOrderCisCos( pNtkNew ); // fix the problem with complemented and duplicated CO edges Abc_NtkLogicMakeSimpleCos( pNtkNew, 0 ); if ( !Abc_NtkCheck( pNtkNew ) ) diff --git a/src/base/seq/seqFpgaCore.c b/src/base/seq/seqFpgaCore.c index 6d0c8c97..79e44caf 100644 --- a/src/base/seq/seqFpgaCore.c +++ b/src/base/seq/seqFpgaCore.c @@ -280,7 +280,7 @@ Abc_Ntk_t * Seq_NtkSeqFpgaMapped( Abc_Ntk_t * pNtk ) Abc_Seq_t * p = pNtk->pManFunc; Abc_Ntk_t * pNtkMap; Vec_Ptr_t * vLeaves; - Abc_Obj_t * pObj, * pLatch, * pFaninNew; + Abc_Obj_t * pObj, * pFaninNew; Seq_Lat_t * pRing; int i; @@ -322,11 +322,7 @@ Abc_Ntk_t * Seq_NtkSeqFpgaMapped( Abc_Ntk_t * pNtk ) // add the latches and their names Abc_NtkAddDummyLatchNames( pNtkMap ); - Abc_NtkForEachLatch( pNtkMap, pLatch, i ) - { - Vec_PtrPush( pNtkMap->vCis, pLatch ); - Vec_PtrPush( pNtkMap->vCos, pLatch ); - } + Abc_NtkOrderCisCos( pNtkMap ); // fix the problem with complemented and duplicated CO edges Abc_NtkLogicMakeSimpleCos( pNtkMap, 1 ); // make the network minimum base diff --git a/src/base/seq/seqMapCore.c b/src/base/seq/seqMapCore.c index b1d4871e..a444ec58 100644 --- a/src/base/seq/seqMapCore.c +++ b/src/base/seq/seqMapCore.c @@ -370,7 +370,7 @@ Abc_Ntk_t * Seq_NtkSeqMapMapped( Abc_Ntk_t * pNtk ) Seq_Match_t * pMatch; Abc_Ntk_t * pNtkMap; Vec_Ptr_t * vLeaves; - Abc_Obj_t * pObj, * pLatch, * pFaninNew; + Abc_Obj_t * pObj, * pFaninNew; Seq_Lat_t * pRing; int i; @@ -413,11 +413,7 @@ Abc_Ntk_t * Seq_NtkSeqMapMapped( Abc_Ntk_t * pNtk ) // add the latches and their names Abc_NtkAddDummyLatchNames( pNtkMap ); - Abc_NtkForEachLatch( pNtkMap, pLatch, i ) - { - Vec_PtrPush( pNtkMap->vCis, pLatch ); - Vec_PtrPush( pNtkMap->vCos, pLatch ); - } + Abc_NtkOrderCisCos( pNtkMap ); // fix the problem with complemented and duplicated CO edges Abc_NtkLogicMakeSimpleCos( pNtkMap, 1 ); // make the network minimum base diff --git a/src/base/seq/seqRetCore.c b/src/base/seq/seqRetCore.c index 38915bf4..ba66a881 100644 --- a/src/base/seq/seqRetCore.c +++ b/src/base/seq/seqRetCore.c @@ -327,7 +327,7 @@ Abc_Ntk_t * Seq_NtkRetimeReconstruct( Abc_Ntk_t * pNtkOld, Abc_Ntk_t * pNtkSeq ) Abc_Seq_t * p = pNtkSeq->pManFunc; Seq_Lat_t * pRing0, * pRing1; Abc_Ntk_t * pNtkNew; - Abc_Obj_t * pObj, * pObjNew, * pFanin, * pFaninNew, * pMirror; + Abc_Obj_t * pObj, * pFanin, * pFaninNew, * pMirror; Vec_Ptr_t * vMirrors; int i, k; @@ -408,11 +408,7 @@ Abc_Ntk_t * Seq_NtkRetimeReconstruct( Abc_Ntk_t * pNtkOld, Abc_Ntk_t * pNtkSeq ) // add the latches and their names Abc_NtkAddDummyLatchNames( pNtkNew ); - Abc_NtkForEachLatch( pNtkNew, pObjNew, i ) - { - Vec_PtrPush( pNtkNew->vCis, pObjNew ); - Vec_PtrPush( pNtkNew->vCos, pObjNew ); - } + Abc_NtkOrderCisCos( pNtkNew ); // fix the problem with complemented and duplicated CO edges Abc_NtkLogicMakeSimpleCos( pNtkNew, 1 ); if ( !Abc_NtkCheck( pNtkNew ) ) |