summaryrefslogtreecommitdiffstats
path: root/src/map/scl/sclUpsize.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2014-12-21 22:22:31 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2014-12-21 22:22:31 -0800
commit58d28539a7bfaa4edfa6a549c0802cb4a2aabe41 (patch)
tree3dbf8ad3467a7e468993f6cf42a1648c21f91b72 /src/map/scl/sclUpsize.c
parentfa32acde61bed1ce9bfaaeb98b95e4ad6144da2c (diff)
downloadabc-58d28539a7bfaa4edfa6a549c0802cb4a2aabe41.tar.gz
abc-58d28539a7bfaa4edfa6a549c0802cb4a2aabe41.tar.bz2
abc-58d28539a7bfaa4edfa6a549c0802cb4a2aabe41.zip
Gate sizing with barrier buffers.
Diffstat (limited to 'src/map/scl/sclUpsize.c')
-rw-r--r--src/map/scl/sclUpsize.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/map/scl/sclUpsize.c b/src/map/scl/sclUpsize.c
index d5d405d3..5c630735 100644
--- a/src/map/scl/sclUpsize.c
+++ b/src/map/scl/sclUpsize.c
@@ -865,7 +865,7 @@ void Abc_SclUpsizeRemoveDangling( SC_Man * p, Abc_Ntk_t * pNtk )
SeeAlso []
***********************************************************************/
-void Abc_SclUpsizePerform( SC_Lib * pLib, Abc_Ntk_t * pNtk, SC_SizePars * pPars )
+void Abc_SclUpsizePerformInt( SC_Lib * pLib, Abc_Ntk_t * pNtk, SC_SizePars * pPars )
{
SC_Man * p;
Vec_Int_t * vPathPos = NULL; // critical POs
@@ -1013,6 +1013,29 @@ void Abc_SclUpsizePerform( SC_Lib * pLib, Abc_Ntk_t * pNtk, SC_SizePars * pPars
// Abc_NtkCleanMarkAB( pNtk );
}
+/**Function*************************************************************
+
+ Synopsis []
+
+ Description []
+
+ SideEffects []
+
+ SeeAlso []
+
+***********************************************************************/
+void Abc_SclUpsizePerform( SC_Lib * pLib, Abc_Ntk_t * pNtk, SC_SizePars * pPars )
+{
+ Abc_Ntk_t * pNtkNew = pNtk;
+ if ( pNtk->nBarBufs2 > 0 )
+ pNtkNew = Abc_NtkDupDfsNoBarBufs( pNtk );
+ Abc_SclUpsizePerformInt( pLib, pNtkNew, pPars );
+ if ( pNtk->nBarBufs2 > 0 )
+ Abc_SclTransferGates( pNtk, pNtkNew );
+ if ( pNtk->nBarBufs2 > 0 )
+ Abc_NtkDelete( pNtkNew );
+}
+
////////////////////////////////////////////////////////////////////////
/// END OF FILE ///
////////////////////////////////////////////////////////////////////////