19 #ifndef ABC__map__mapper__mapper_h
20 #define ABC__map__mapper__mapper_h
67 #define Map_IsComplement(p) (((int)((ABC_PTRUINT_T) (p) & 01)))
68 #define Map_Regular(p) ((Map_Node_t *)((ABC_PTRUINT_T)(p) & ~01))
69 #define Map_Not(p) ((Map_Node_t *)((ABC_PTRUINT_T)(p) ^ 01))
70 #define Map_NotCond(p,c) ((Map_Node_t *)((ABC_PTRUINT_T)(p) ^ (c)))
161 extern int Map_CanonComputeSlow(
unsigned uTruths[][2],
int nVarsMax,
int nVarsReal,
unsigned uTruth[],
unsigned char * puPhases,
unsigned uTruthRes[] );
167 int * pLeaves,
int nLeaves,
unsigned uPhaseLeaves );
float Map_SuperLibReadAreaInv(Map_SuperLib_t *p)
Map_Node_t * Map_ManReadConst1(Map_Man_t *p)
void Map_SuperLibFree(Map_SuperLib_t *p)
Map_Node_t ** Map_ManReadBufs(Map_Man_t *p)
Mio_Library_t * Map_ManReadGenLib(Map_Man_t *p)
Map_Man_t * Map_ManCreate(int nInputs, int nOutputs, int fVerbose)
FUNCTION DEFINITIONS ///.
int Map_NodeIsAnd(Map_Node_t *p)
int Map_NodeReadNum(Map_Node_t *p)
void Map_ManSetNumIterations(Map_Man_t *p, int nNumIterations)
Map_Cut_t * Map_NodeReadCuts(Map_Node_t *p)
Map_Cut_t * Map_CutAlloc(Map_Man_t *p)
DECLARATIONS ///.
int Map_NodeReadLevel(Map_Node_t *p)
int Map_SuperReadNumPhases(Map_Super_t *p)
void Map_ManSetOutputNames(Map_Man_t *p, char **ppNames)
Map_Super_t ** Map_SuperReadFanins(Map_Super_t *p)
void Map_NetworkSweep(Abc_Ntk_t *pNet)
unsigned Map_CutReadPhase0(Map_Cut_t *p)
Map_Cut_t * Map_CutReadNext(Map_Cut_t *p)
char * Map_LibraryReadFormulaStep(char *pFormula, char *pStrings[], int *pnStrings)
int Map_ManReadPass(Map_Man_t *p)
void Map_NodeSetData(Map_Node_t *p, int fPhase, char *pData)
int Map_NodeIsBuf(Map_Node_t *p)
int Map_NodeComparePhase(Map_Node_t *p1, Map_Node_t *p2)
void Map_ManSetObeyFanoutLimits(Map_Man_t *p, int fObeyFanoutLimits)
void Map_ManSetInputArrivals(Map_Man_t *p, Map_Time_t *pArrivals)
Map_Man_t * Map_NodeReadMan(Map_Node_t *p)
int Map_SuperReadFanoutLimit(Map_Super_t *p)
int Map_NodeIsConst(Map_Node_t *p)
void Map_ManPrintTimeStats(Map_Man_t *p)
void Map_ManSetVerbose(Map_Man_t *p, int fVerbose)
void Map_CutCreateFromNode(Map_Man_t *p, Map_Super_t *pSuper, int iRoot, unsigned uPhaseRoot, int *pLeaves, int nLeaves, unsigned uPhaseLeaves)
unsigned Map_CutReadPhase1(Map_Cut_t *p)
Map_Super_t * Map_CutReadSuperBest(Map_Cut_t *p, int fPhase)
void Map_NodeSetRepr(Map_Node_t *p, Map_Node_t *pRepr)
void Map_ManSetDelayTarget(Map_Man_t *p, float DelayTarget)
int Map_ManReadFanoutViolations(Map_Man_t *p)
Map_Time_t * Map_ManReadInputArrivals(Map_Man_t *p)
Map_Super_t * Map_SuperTableLookupC(Map_SuperLib_t *pLib, unsigned uTruth[])
Map_Node_t ** Map_ManReadInputs(Map_Man_t *p)
int Map_ManCheckConsistency(Map_Man_t *p)
void Map_ManPrintStatsToFile(char *pName, float Area, float Delay, abctime Time)
void Map_ManSetOutputRequireds(Map_Man_t *p, Map_Time_t *pArrivals)
int Map_ManReadBufNum(Map_Man_t *p)
int Map_NodeIsVar(Map_Node_t *p)
int Map_ManReadOutputNum(Map_Man_t *p)
int Map_SuperLibDeriveFromGenlib(Mio_Library_t *pLib, int fVerbose)
int Map_ManReadInputNum(Map_Man_t *p)
FUNCTION DEFINITIONS ///.
STRUCTURE DEFINITIONS ///.
int Map_CutReadLeavesNum(Map_Cut_t *p)
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
Mio_Library_t * Map_SuperLibReadGenLib(Map_SuperLib_t *p)
Map_Node_t ** Map_CutReadLeaves(Map_Cut_t *p)
void Map_ManSetPass(Map_Man_t *p, int nPass)
st__table * Map_CreateTableGate2Super(Map_Man_t *p)
void Map_ManSetSwitching(Map_Man_t *p, int fSwitching)
#define ABC_NAMESPACE_HEADER_END
char * Map_NodeReadData(Map_Node_t *p, int fPhase)
int Map_ManReadVerbose(Map_Man_t *p)
Map_Node_t * Map_NodeReadOne(Map_Node_t *p)
Map_Node_t * Map_NodeCreate(Map_Man_t *p, Map_Node_t *p1, Map_Node_t *p2)
typedefABC_NAMESPACE_HEADER_START struct Map_ManStruct_t_ Map_Man_t
INCLUDES ///.
unsigned char * Map_SuperReadPhases(Map_Super_t *p)
float Map_ManReadAreaFinal(Map_Man_t *p)
Map_Node_t ** Map_ManReadOutputs(Map_Man_t *p)
int Map_CanonComputeSlow(unsigned uTruths[][2], int nVarsMax, int nVarsReal, unsigned uTruth[], unsigned char *puPhases, unsigned uTruthRes[])
FUNCTION DEFINITIONS ///.
void Map_ManCreateNodeDelays(Map_Man_t *p, int LogFan)
char * Map_SuperReadFormula(Map_Super_t *p)
Map_Node_t * Map_NodeAnd(Map_Man_t *p, Map_Node_t *p1, Map_Node_t *p2)
void Map_ManSetAreaRecovery(Map_Man_t *p, int fAreaRecovery)
Map_Super_t * Map_CutReadSuper1(Map_Cut_t *p)
float Map_ManReadRequiredGlo(Map_Man_t *p)
void Map_ManFree(Map_Man_t *pMan)
Map_Node_t * Map_NodeBuf(Map_Man_t *p, Map_Node_t *p1)
int Map_SuperReadFaninNum(Map_Super_t *p)
int Map_Mapping(Map_Man_t *p)
DECLARATIONS ///.
Map_Time_t Map_SuperLibReadDelayInv(Map_SuperLib_t *p)
Mio_Gate_t * Map_SuperReadRoot(Map_Super_t *p)
Map_Node_t * Map_NodeReadTwo(Map_Node_t *p)
void Map_ManSetFanoutViolations(Map_Man_t *p, int nVio)
void Map_MappingSetupTruthTablesLarge(unsigned uTruths[][32])
Map_Super_t * Map_SuperReadNext(Map_Super_t *p)
void Map_NodeSetSwitching(Map_Node_t *p, float Switching)
Map_Node_t * Map_ManReadBufDriver(Map_Man_t *p, int i)
STRUCTURE DEFINITIONS ///.
int Map_SuperReadNum(Map_Super_t *p)
void Map_ManCleanData(Map_Man_t *p)
int Map_SuperLibReadVarsMax(Map_SuperLib_t *p)
void Map_NodeSetChoice(Map_Man_t *pMan, Map_Node_t *pNodeOld, Map_Node_t *pNodeNew)
void Map_ManSetChoiceNum(Map_Man_t *p, int nChoices)
Map_Super_t * Map_CutReadSuper0(Map_Cut_t *p)
unsigned Map_CutReadPhaseBest(Map_Cut_t *p, int fPhase)
void Map_NodeSetNextE(Map_Node_t *p, Map_Node_t *pNextE)
Map_Cut_t * Map_NodeReadCutBest(Map_Node_t *p, int fPhase)
void Map_ManSetChoiceNodeNum(Map_Man_t *p, int nChoiceNodes)
void Map_MappingSetupTruthTables(unsigned uTruths[][2])
int Map_CanonComputeFast(Map_Man_t *p, int nVarsMax, int nVarsReal, unsigned uTruth[], unsigned char *puPhases, unsigned uTruthRes[])