summaryrefslogtreecommitdiffstats
path: root/src/base/abci/abcIf.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2015-03-24 19:24:52 +0700
committerAlan Mishchenko <alanmi@berkeley.edu>2015-03-24 19:24:52 +0700
commit53e4946c4383acabefa8e9070cbaae445005b312 (patch)
tree92719120dd7ff37efebefa0dc2756be49c5d440e /src/base/abci/abcIf.c
parentefdd26f86d3dbbde1626fe6a84304bc700b97479 (diff)
downloadabc-53e4946c4383acabefa8e9070cbaae445005b312.tar.gz
abc-53e4946c4383acabefa8e9070cbaae445005b312.tar.bz2
abc-53e4946c4383acabefa8e9070cbaae445005b312.zip
Trying to reduce delay degradation afer 'map' with user timing.
Diffstat (limited to 'src/base/abci/abcIf.c')
-rw-r--r--src/base/abci/abcIf.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/base/abci/abcIf.c b/src/base/abci/abcIf.c
index 06c290f9..1ffb9581 100644
--- a/src/base/abci/abcIf.c
+++ b/src/base/abci/abcIf.c
@@ -114,6 +114,16 @@ Abc_Ntk_t * Abc_NtkIf( Abc_Ntk_t * pNtk, If_Par_t * pPars )
pPars->pTimesArr = Abc_NtkGetCiArrivalFloats(pNtk);
pPars->pTimesReq = Abc_NtkGetCoRequiredFloats(pNtk);
+ // update timing info to reflect logic level
+ if ( (pPars->fDelayOpt || pPars->fDsdBalance || pPars->fUserRecLib) && pNtk->AndGateDelay != 0.0 )
+ {
+ int c;
+ for ( c = 0; c < Abc_NtkCiNum(pNtk); c++ )
+ pPars->pTimesArr[c] /= pNtk->AndGateDelay;
+ for ( c = 0; c < Abc_NtkCoNum(pNtk); c++ )
+ pPars->pTimesReq[c] /= pNtk->AndGateDelay;
+ }
+
// set the latch paths
if ( pPars->fLatchPaths && pPars->pTimesArr )
{