19 #ifndef ABC__map__fpga__fpga_h
20 #define ABC__map__fpga__fpga_h
37 #define FPGA_MAX_LUTSIZE 32
57 #define Fpga_IsComplement(p) (((int)((ABC_PTRUINT_T) (p) & 01)))
58 #define Fpga_Regular(p) ((Fpga_Node_t *)((ABC_PTRUINT_T)(p) & ~01))
59 #define Fpga_Not(p) ((Fpga_Node_t *)((ABC_PTRUINT_T)(p) ^ 01))
60 #define Fpga_NotCond(p,c) ((Fpga_Node_t *)((ABC_PTRUINT_T)(p) ^ (c)))
64 #define Fpga_RecursiveDeref(p,c)
void Fpga_ManSetAreaRecovery(Fpga_Man_t *p, int fAreaRecovery)
int Fpga_ManReadVarMax(Fpga_Man_t *p)
Fpga_Node_t ** Fpga_ManReadInputs(Fpga_Man_t *p)
Fpga_Node_t * Fpga_NodeMux(Fpga_Man_t *p, Fpga_Node_t *pNode, Fpga_Node_t *pNodeT, Fpga_Node_t *pNodeE)
void Fpga_CutsCleanSign(Fpga_Man_t *pMan)
void Fpga_ManSetName(Fpga_Man_t *p, char *pFileName)
Fpga_Node_t * Fpga_NodeCreate(Fpga_Man_t *p, Fpga_Node_t *p1, Fpga_Node_t *p2)
void Fpga_NodeSetData0(Fpga_Node_t *p, char *pData)
int Fpga_CutVolume(Fpga_Cut_t *pCut)
void Fpga_ManSetLatchNum(Fpga_Man_t *p, int nLatches)
void Fpga_NodeSetNextE(Fpga_Node_t *p, Fpga_Node_t *pNextE)
void Fpga_ManSetAreaLimit(Fpga_Man_t *p, float AreaLimit)
int Fpga_LibReadLutMax(Fpga_LutLib_t *pLib)
void Fpga_MappingCreatePiCuts(Fpga_Man_t *p)
void Fpga_ManCleanData0(Fpga_Man_t *pMan)
Fpga_Node_t * Fpga_NodeReadOne(Fpga_Node_t *p)
int Fpga_NodeReadRefs(Fpga_Node_t *p)
Fpga_LutLib_t * Fpga_LutLibDup(Fpga_LutLib_t *p)
void Fpga_CutsCleanRoot(Fpga_Man_t *pMan)
int Fpga_NodeComparePhase(Fpga_Node_t *p1, Fpga_Node_t *p2)
void Fpga_NodeSetData1(Fpga_Node_t *p, Fpga_Node_t *pNode)
Fpga_Node_t * Fpga_ManReadConst1(Fpga_Man_t *p)
void Fpga_ManSetNumIterations(Fpga_Man_t *p, int nNumIterations)
Fpga_Node_t * Fpga_NodeReadData1(Fpga_Node_t *p)
void Fpga_NodeSetSwitching(Fpga_Node_t *p, float Switching)
void Fpga_ManSetDelayLimit(Fpga_Man_t *p, float DelayLimit)
int Fpga_ManReadInputNum(Fpga_Man_t *p)
FUNCTION DEFINITIONS ///.
void Fpga_ManSetLatchPaths(Fpga_Man_t *p, int fLatchPaths)
void Fpga_MappingSetUsedCuts(Fpga_Man_t *p)
void Fpga_ManSetObeyFanoutLimits(Fpga_Man_t *p, int fObeyFanoutLimits)
float * Fpga_ManReadInputArrivals(Fpga_Man_t *p)
Fpga_Node_t * Fpga_NodeReadTwo(Fpga_Node_t *p)
float * Fpga_ManReadLutAreas(Fpga_Man_t *p)
void Fpga_NodeSetRepr(Fpga_Node_t *p, Fpga_Node_t *pRepr)
float * Fpga_LutLibReadLutAreas(Fpga_LutLib_t *p)
void Fpga_ManSetInputArrivals(Fpga_Man_t *p, float *pArrivals)
Fpga_Cut_t * Fpga_NodeReadCutBest(Fpga_Node_t *p)
int Fpga_ManReadVerbose(Fpga_Man_t *p)
int Fpga_ManReadOutputNum(Fpga_Man_t *p)
void Fpga_CutCreateFromNode(Fpga_Man_t *p, int iRoot, int *pLeaves, int nLeaves)
int Fpga_ManReadFanoutViolations(Fpga_Man_t *p)
Fpga_NodeVec_t * Fpga_CollectNodeTfo(Fpga_Man_t *pMan, Fpga_Node_t *pNode)
Fpga_Cut_t * Fpga_NodeReadCuts(Fpga_Node_t *p)
float * Fpga_LutLibReadLutDelays(Fpga_LutLib_t *p)
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
int Fpga_Mapping(Fpga_Man_t *p)
FUNCTION DEFINITIONS ///.
Fpga_Node_t ** Fpga_ManReadOutputs(Fpga_Man_t *p)
int Fpga_NodeIsConst(Fpga_Node_t *p)
#define ABC_NAMESPACE_HEADER_END
int Fpga_NodeReadLevel(Fpga_Node_t *p)
void Fpga_ManSetFanoutViolations(Fpga_Man_t *p, int nVio)
void Fpga_ManFree(Fpga_Man_t *pMan)
int Fpga_NodeIsAnd(Fpga_Node_t *p)
Fpga_Node_t * Fpga_NodeAnd(Fpga_Man_t *p, Fpga_Node_t *p1, Fpga_Node_t *p2)
Fpga_Node_t ** Fpga_CutReadLeaves(Fpga_Cut_t *p)
char * Fpga_NodeReadData0(Fpga_Node_t *p)
float Fpga_LutLibReadLutArea(Fpga_LutLib_t *p, int Size)
void Fpga_ManSetDelayTarget(Fpga_Man_t *p, float DelayTarget)
int Fpga_NodeIsVar(Fpga_Node_t *p)
void Fpga_ManSetVerbose(Fpga_Man_t *p, int fVerbose)
STRUCTURE DEFINITIONS ///.
void Fpga_ManSetOutputNames(Fpga_Man_t *p, char **ppNames)
int Fpga_CutReadLeavesNum(Fpga_Cut_t *p)
Fpga_Node_t * Fpga_NodeExor(Fpga_Man_t *p, Fpga_Node_t *p1, Fpga_Node_t *p2)
void Fpga_ManSetChoiceNum(Fpga_Man_t *p, int nChoices)
Fpga_Man_t * Fpga_ManCreate(int nInputs, int nOutputs, int fVerbose)
FUNCTION DEFINITIONS ///.
void Fpga_SetSimpleLutLib(int nLutSize)
void Fpga_NodeSetChoice(Fpga_Man_t *pMan, Fpga_Node_t *pNodeOld, Fpga_Node_t *pNodeNew)
void * Fpga_TruthsCutBdd(void *dd, Fpga_Cut_t *pCut)
Fpga_Node_t * Fpga_NodeOr(Fpga_Man_t *p, Fpga_Node_t *p1, Fpga_Node_t *p2)
int Fpga_LutLibReadVarMax(Fpga_LutLib_t *p)
DECLARATIONS ///.
void Fpga_ManSetChoiceNodeNum(Fpga_Man_t *p, int nChoiceNodes)
void Fpga_ManSetSwitching(Fpga_Man_t *p, int fSwitching)
float Fpga_LutLibReadLutDelay(Fpga_LutLib_t *p, int Size)
void Fpga_NodeSetArrival(Fpga_Node_t *p, float Time)
Fpga_NodeVec_t * Fpga_ManReadMapping(Fpga_Man_t *p)
void Fpga_ManPrintTimeStats(Fpga_Man_t *p)
int Fpga_NodeReadNum(Fpga_Node_t *p)
void Fpga_ManStats(Fpga_Man_t *p)
void Fpga_NodeSetLevel(Fpga_Node_t *p, Fpga_Node_t *pNode)
int Fpga_ManCheckConsistency(Fpga_Man_t *p)