summaryrefslogtreecommitdiffstats
path: root/src/opt/sbd/sbd.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/opt/sbd/sbd.h')
-rw-r--r--src/opt/sbd/sbd.h52
1 files changed, 11 insertions, 41 deletions
diff --git a/src/opt/sbd/sbd.h b/src/opt/sbd/sbd.h
index 946a2ee4..e1e39a3b 100644
--- a/src/opt/sbd/sbd.h
+++ b/src/opt/sbd/sbd.h
@@ -35,42 +35,21 @@ ABC_NAMESPACE_HEADER_START
/// BASIC TYPES ///
////////////////////////////////////////////////////////////////////////
-typedef struct Sbd_Ntk_t_ Sbd_Ntk_t;
typedef struct Sbd_Par_t_ Sbd_Par_t;
struct Sbd_Par_t_
{
- int nTfoLevMax; // the maximum fanout levels
- int nTfiLevMax; // the maximum fanin levels
- int nFanoutMax; // the maximum number of fanouts
- int nDepthMax; // the maximum depth to try
- int nVarMax; // the maximum variable count
- int nMffcMin; // the minimum MFFC size
- int nMffcMax; // the maximum MFFC size
- int nDecMax; // the maximum number of decompositions
- int nWinSizeMax; // the maximum window size
- int nGrowthLevel; // the maximum allowed growth in level
- int nBTLimit; // the maximum number of conflicts in one SAT run
- int nNodesMax; // the maximum number of nodes to try
- int iNodeOne; // one particular node to try
- int nFirstFixed; // the number of first nodes to be treated as fixed
- int nTimeWin; // the size of timing window in percents
- int DeltaCrit; // delay delta in picoseconds
- int DelAreaRatio; // delay/area tradeoff (how many ps we trade for a unit of area)
- int fRrOnly; // perform redundance removal
- int fArea; // performs optimization for area
- int fAreaRev; // performs optimization for area in reverse order
- int fMoreEffort; // performs high-affort minimization
- int fUseAndOr; // enable internal detection of AND/OR gates
- int fZeroCost; // enable zero-cost replacement
- int fUseSim; // enable simulation
- int fPrintDecs; // enable printing decompositions
- int fAllBoxes; // enable preserving all boxes
- int fLibVerbose; // enable library stats
- int fDelayVerbose; // enable delay stats
- int fVerbose; // enable basic stats
- int fVeryVerbose; // enable detailed stats
+ int nLutSize; // target LUT size
+ int nTfoLevels; // the number of TFO levels (windowing)
+ int nTfoFanMax; // the max number of fanouts (windowing)
+ int nWinSizeMax; // maximum window size (windowing)
+ int nBTLimit; // maximum number of SAT conflicts
+ int nWords; // simulation word count
+ int fArea; // area-oriented optimization
+ int fVerbose; // verbose flag
+ int fVeryVerbose; // verbose flag
};
+
////////////////////////////////////////////////////////////////////////
/// MACRO DEFINITIONS ///
////////////////////////////////////////////////////////////////////////
@@ -82,16 +61,7 @@ struct Sbd_Par_t_
/*=== sbdCnf.c ==========================================================*/
/*=== sbdCore.c ==========================================================*/
extern void Sbd_ParSetDefault( Sbd_Par_t * pPars );
-extern int Sbd_NtkPerform( Sbd_Ntk_t * p, Sbd_Par_t * pPars );
-/*=== sbdNtk.c ==========================================================*/
-extern Sbd_Ntk_t * Sbd_NtkConstruct( Vec_Wec_t * vFanins, int nPis, int nPos, Vec_Str_t * vFixed, Vec_Str_t * vEmpty, Vec_Wrd_t * vTruths );
-extern void Sbd_NtkFree( Sbd_Ntk_t * p );
-extern Vec_Int_t * Sbd_NodeReadFanins( Sbd_Ntk_t * p, int i );
-extern word * Sbd_NodeReadTruth( Sbd_Ntk_t * p, int i );
-extern int Sbd_NodeReadFixed( Sbd_Ntk_t * p, int i );
-extern int Sbd_NodeReadUsed( Sbd_Ntk_t * p, int i );
-/*=== sbdWin.c ==========================================================*/
-extern Vec_Int_t * Sbd_NtkDfs( Sbd_Ntk_t * p, Vec_Wec_t * vGroups, Vec_Int_t * vGroupMap, Vec_Int_t * vBoxesLeft, int fAllBoxes );
+extern Gia_Man_t * Sbd_NtkPerform( Gia_Man_t * p, Sbd_Par_t * pPars );
ABC_NAMESPACE_HEADER_END