1 /**CFile**************************************************************** 2 3 FileName [sbd.h] 4 5 SystemName [ABC: Logic synthesis and verification system.] 6 7 PackageName [SAT-based optimization using internal don't-cares.] 8 9 Synopsis [External declarations.] 10 11 Author [Alan Mishchenko] 12 13 Affiliation [UC Berkeley] 14 15 Date [Ver. 1.0. Started - June 20, 2005.] 16 17 Revision [$Id: sbd.h,v 1.00 2005/06/20 00:00:00 alanmi Exp $] 18 19 ***********************************************************************/ 20 21 #ifndef ABC__opt_sbd__h 22 #define ABC__opt_sbd__h 23 24 //////////////////////////////////////////////////////////////////////// 25 /// INCLUDES /// 26 //////////////////////////////////////////////////////////////////////// 27 28 //////////////////////////////////////////////////////////////////////// 29 /// PARAMETERS /// 30 //////////////////////////////////////////////////////////////////////// 31 32 ABC_NAMESPACE_HEADER_START 33 34 //////////////////////////////////////////////////////////////////////// 35 /// BASIC TYPES /// 36 //////////////////////////////////////////////////////////////////////// 37 38 typedef struct Sbd_Par_t_ Sbd_Par_t; 39 struct Sbd_Par_t_ 40 { 41 int nLutSize; // target LUT size 42 int nLutNum; // target LUT count 43 int nCutSize; // target cut size 44 int nCutNum; // target cut count 45 int nTfoLevels; // the number of TFO levels (windowing) 46 int nTfoFanMax; // the max number of fanouts (windowing) 47 int nWinSizeMax; // maximum window size (windowing) 48 int nBTLimit; // maximum number of SAT conflicts 49 int nWords; // simulation word count 50 int fMapping; // generate mapping 51 int fMoreCuts; // use several cuts 52 int fFindDivs; // perform divisor search 53 int fUsePath; // optimize only critical path 54 int fArea; // area-oriented optimization 55 int fCover; // use complete cover procedure 56 int fVerbose; // verbose flag 57 int fVeryVerbose; // verbose flag 58 }; 59 60 61 //////////////////////////////////////////////////////////////////////// 62 /// MACRO DEFINITIONS /// 63 //////////////////////////////////////////////////////////////////////// 64 65 //////////////////////////////////////////////////////////////////////// 66 /// FUNCTION DECLARATIONS /// 67 //////////////////////////////////////////////////////////////////////// 68 69 /*=== sbdCnf.c ==========================================================*/ 70 /*=== sbdCore.c ==========================================================*/ 71 extern void Sbd_ParSetDefault( Sbd_Par_t * pPars ); 72 extern Gia_Man_t * Sbd_NtkPerform( Gia_Man_t * p, Sbd_Par_t * pPars ); 73 74 75 ABC_NAMESPACE_HEADER_END 76 77 #endif 78 79 //////////////////////////////////////////////////////////////////////// 80 /// END OF FILE /// 81 //////////////////////////////////////////////////////////////////////// 82 83