From 1692c1a57a74938a396812375f29f0065b5337b7 Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Sun, 13 Oct 2013 23:08:52 -0700 Subject: Improvements to buffering and sizing. --- src/map/scl/scl.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'src/map/scl/scl.c') diff --git a/src/map/scl/scl.c b/src/map/scl/scl.c index 1c5e3354..36bec7b4 100644 --- a/src/map/scl/scl.c +++ b/src/map/scl/scl.c @@ -308,7 +308,7 @@ usage: ***********************************************************************/ int Scl_CommandPrintLib( Abc_Frame_t * pAbc, int argc, char **argv ) { - float Slew = 200; + float Slew = 0; // use library float Gain = 100; int fInvOnly = 0; int fShort = 0; @@ -512,8 +512,8 @@ usage: int Scl_CommandDumpGen( Abc_Frame_t * pAbc, int argc, char **argv ) { char * pFileName = NULL; - float Slew = 200; - float Gain = 100; + float Slew = 0; // use the library + float Gain = 200; int nGatesMin = 4; int c, fVerbose = 0; Extra_UtilGetoptReset(); @@ -871,8 +871,8 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) Abc_Ntk_t * pNtkRes, * pNtk = Abc_FrameReadNtk(pAbc); int c; memset( pPars, 0, sizeof(SC_BusPars) ); - pPars->GainRatio = 1000; - pPars->Slew = 100; + pPars->GainRatio = 250; + pPars->Slew = pAbc->pLibScl ? Abc_SclComputeAverageSlew((SC_Lib *)pAbc->pLibScl) : 100; pPars->nDegree = 10; pPars->fSizeOnly = 0; pPars->fAddBufs = 1; @@ -881,7 +881,7 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) pPars->fVerbose = 0; pPars->fVeryVerbose = 0; Extra_UtilGetoptReset(); - while ( ( c = Extra_UtilGetopt( argc, argv, "GSDsbpcvwh" ) ) != EOF ) + while ( ( c = Extra_UtilGetopt( argc, argv, "GSNsbpcvwh" ) ) != EOF ) { switch ( c ) { @@ -907,7 +907,7 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) if ( pPars->Slew < 0 ) goto usage; break; - case 'D': + case 'N': if ( globalUtilOptind >= argc ) { Abc_Print( -1, "Command line switch \"-N\" should be followed by a positive integer.\n" ); @@ -959,7 +959,7 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) return 1; } // modify the current network - pNtkRes = Abc_SclBufSizePerform( pNtk, (SC_Lib *)pAbc->pLibScl, pPars ); + pNtkRes = Abc_SclBufferingPerform( pNtk, (SC_Lib *)pAbc->pLibScl, pPars ); if ( pNtkRes == NULL ) { Abc_Print( -1, "The command has failed.\n" ); @@ -970,11 +970,11 @@ int Scl_CommandBuffer( Abc_Frame_t * pAbc, int argc, char ** argv ) return 0; usage: - fprintf( pAbc->Err, "usage: buffer [-GSD num] [-sbpcvwh]\n" ); + fprintf( pAbc->Err, "usage: buffer [-GSN num] [-sbpcvwh]\n" ); fprintf( pAbc->Err, "\t performs buffering and sizing and mapped network\n" ); fprintf( pAbc->Err, "\t-G : target gain percentage [default = %d]\n", pPars->GainRatio ); fprintf( pAbc->Err, "\t-S : target slew in pisoseconds [default = %d]\n", pPars->Slew ); - fprintf( pAbc->Err, "\t-D : the maximum fanout degree [default = %d]\n", pPars->nDegree ); + fprintf( pAbc->Err, "\t-N : the maximum fanout count [default = %d]\n", pPars->nDegree ); fprintf( pAbc->Err, "\t-s : toggle performing only sizing [default = %s]\n", pPars->fSizeOnly? "yes": "no" ); fprintf( pAbc->Err, "\t-b : toggle using buffers instead of inverters [default = %s]\n", pPars->fAddBufs? "yes": "no" ); fprintf( pAbc->Err, "\t-p : toggle buffering primary inputs [default = %s]\n", pPars->fBufPis? "yes": "no" ); -- cgit v1.2.3