summaryrefslogtreecommitdiffstats
path: root/src/base/abci/abcIf.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2015-04-06 10:56:14 +0700
committerAlan Mishchenko <alanmi@berkeley.edu>2015-04-06 10:56:14 +0700
commitb3e5ccd25609c1d38411de86551a2309ca190027 (patch)
tree62a86fd419bfc36406719473e0b9d300d33cf271 /src/base/abci/abcIf.c
parentc0c7723f1da0436935dff848caf012e467e055df (diff)
downloadabc-b3e5ccd25609c1d38411de86551a2309ca190027.tar.gz
abc-b3e5ccd25609c1d38411de86551a2309ca190027.tar.bz2
abc-b3e5ccd25609c1d38411de86551a2309ca190027.zip
Getting default AND-node delay from Genlib library.
Diffstat (limited to 'src/base/abci/abcIf.c')
-rw-r--r--src/base/abci/abcIf.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/base/abci/abcIf.c b/src/base/abci/abcIf.c
index 1ffb9581..9ad5e41e 100644
--- a/src/base/abci/abcIf.c
+++ b/src/base/abci/abcIf.c
@@ -23,6 +23,7 @@
#include "map/if/if.h"
#include "bool/kit/kit.h"
#include "aig/aig/aig.h"
+#include "map/mio/mio.h"
ABC_NAMESPACE_IMPL_START
@@ -115,9 +116,19 @@ Abc_Ntk_t * Abc_NtkIf( Abc_Ntk_t * pNtk, If_Par_t * pPars )
pPars->pTimesReq = Abc_NtkGetCoRequiredFloats(pNtk);
// update timing info to reflect logic level
- if ( (pPars->fDelayOpt || pPars->fDsdBalance || pPars->fUserRecLib) && pNtk->AndGateDelay != 0.0 )
+ if ( (pPars->fDelayOpt || pPars->fDsdBalance || pPars->fUserRecLib) && pNtk->pManTime )
{
int c;
+ if ( pNtk->AndGateDelay == 0.0 )
+ {
+ if ( Abc_FrameReadLibGen() )
+ pNtk->AndGateDelay = Mio_LibraryReadDelayAigNode((Mio_Library_t *)Abc_FrameReadLibGen());
+ if ( pNtk->AndGateDelay == 0.0 )
+ {
+ pNtk->AndGateDelay = 1.0;
+ printf( "The AIG-node delay is not set. Assuming unit-delay.\n" );
+ }
+ }
for ( c = 0; c < Abc_NtkCiNum(pNtk); c++ )
pPars->pTimesArr[c] /= pNtk->AndGateDelay;
for ( c = 0; c < Abc_NtkCoNum(pNtk); c++ )