ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
abcapis.h
Go to the documentation of this file.
1
20
21#ifndef MINI_AIG__abc_apis_h
22#define MINI_AIG__abc_apis_h
23
27
31
35
37
39
43
44#ifdef WIN32
45 #ifdef WIN32_NO_DLL
46 #define ABC_DLLEXPORT
47 #define ABC_DLLIMPORT
48 #else
49 #define ABC_DLLEXPORT __declspec(dllexport)
50 #define ABC_DLLIMPORT __declspec(dllimport)
51 #endif
52#else /* defined(WIN32) */
53#define ABC_DLLIMPORT
54#endif /* defined(WIN32) */
55
56#ifndef ABC_DLL
57#define ABC_DLL ABC_DLLIMPORT
58#endif
59
63
64// procedures to start and stop the ABC framework
65extern ABC_DLL void Abc_Start();
66extern ABC_DLL void Abc_Stop();
67
68// procedures to get the ABC framework (pAbc) and execute commands in it
70extern ABC_DLL int Cmd_CommandExecute( Abc_Frame_t * pAbc, const char * pCommandLine );
71
72// procedures to input/output 'mini AIG'
73extern ABC_DLL void Abc_NtkInputMiniAig( Abc_Frame_t * pAbc, void * pMiniAig );
74extern ABC_DLL void * Abc_NtkOutputMiniAig( Abc_Frame_t * pAbc );
75extern ABC_DLL void Abc_FrameGiaInputMiniAig( Abc_Frame_t * pAbc, void * p );
76extern ABC_DLL void * Abc_FrameGiaOutputMiniAig( Abc_Frame_t * pAbc );
77extern ABC_DLL void Abc_NtkSetFlopNum( Abc_Frame_t * pAbc, int nFlops );
78
79// procedures to input/output 'mini LUT'
80extern ABC_DLL void Abc_FrameGiaInputMiniLut( Abc_Frame_t * pAbc, void * pMiniLut );
81extern ABC_DLL void Abc_FrameGiaInputMiniLut2( Abc_Frame_t * pAbc, void * pMiniLut );
82extern ABC_DLL void * Abc_FrameGiaOutputMiniLut( Abc_Frame_t * pAbc );
83extern ABC_DLL char * Abc_FrameGiaOutputMiniLutAttr( Abc_Frame_t * pAbc, void * pMiniLut );
85extern ABC_DLL void Abc_FrameSetObjDelays( Abc_Frame_t * pAbc, int * pDelays, int nDelays );
87extern ABC_DLL int * Abc_FrameReadMiniLutSwitching2( Abc_Frame_t * pAbc, int nRandPiFactor );
89
90// procedures to input/output NDR data-structure
91extern ABC_DLL void Abc_FrameInputNdr( Abc_Frame_t * pAbc, void * pData );
92extern ABC_DLL void * Abc_FrameOutputNdr( Abc_Frame_t * pAbc );
93extern ABC_DLL int * Abc_FrameOutputNdrArray( Abc_Frame_t * pAbc );
94
95// procedures to set CI/CO arrival/required times
96extern ABC_DLL void Abc_NtkSetCiArrivalTime( Abc_Frame_t * pAbc, int iCi, float Rise, float Fall );
97extern ABC_DLL void Abc_NtkSetCoRequiredTime( Abc_Frame_t * pAbc, int iCo, float Rise, float Fall );
98
99// procedure to set AND-gate delay to tech-independent synthesis and mapping
100extern ABC_DLL void Abc_NtkSetAndGateDelay( Abc_Frame_t * pAbc, float Delay );
101
102// procedures to return the mapped network
103extern ABC_DLL int * Abc_NtkOutputMiniMapping( Abc_Frame_t * pAbc );
104extern ABC_DLL void Abc_NtkPrintMiniMapping( int * pArray );
105extern ABC_DLL int * Abc_FrameReadArrayMapping( Abc_Frame_t * pAbc );
106extern ABC_DLL int * Abc_FrameReadBoxes( Abc_Frame_t * pAbc );
107
108// procedures to access verifization status and a counter-example
109extern ABC_DLL int Abc_FrameReadProbStatus( Abc_Frame_t * pAbc );
110extern ABC_DLL void * Abc_FrameReadCex( Abc_Frame_t * pAbc );
111
112// procedure to set retiming data
113extern ABC_DLL void Abc_FrameSetRetimingData( Abc_Frame_t * pAbc, int * pRst, int * pSet, int * pEna, int nRegs );
114
115// procedure to return sequential equivalences
117
119
120#endif
121
125
#define ABC_NAMESPACE_HEADER_END
#define ABC_NAMESPACE_HEADER_START
NAMESPACES ///.
ABC_DLL int * Abc_FrameReadMiniLutSwitching(Abc_Frame_t *pAbc)
Definition giaMini.c:727
ABC_DLL int * Abc_FrameGiaOutputMiniLutObj(Abc_Frame_t *pAbc)
Definition giaMini.c:558
ABC_DLL void Abc_NtkInputMiniAig(Abc_Frame_t *pAbc, void *pMiniAig)
Definition abcMini.c:175
ABC_DLL int Abc_FrameReadProbStatus(Abc_Frame_t *pAbc)
Definition mainFrame.c:74
ABC_DLL void * Abc_FrameGiaOutputMiniLut(Abc_Frame_t *pAbc)
Definition giaMini.c:533
ABC_DLL void Abc_NtkSetCiArrivalTime(Abc_Frame_t *pAbc, int iCi, float Rise, float Fall)
Definition abcMap.c:1157
ABC_DLL void Abc_NtkSetAndGateDelay(Abc_Frame_t *pAbc, float Delay)
Definition abcMap.c:1217
ABC_DLL void * Abc_FrameGiaOutputMiniAig(Abc_Frame_t *pAbc)
Definition giaMini.c:163
ABC_DLL int * Abc_FrameReadMiniLutSwitchingPo(Abc_Frame_t *pAbc)
Definition giaMini.c:761
ABC_DLL int * Abc_FrameOutputNdrArray(Abc_Frame_t *pAbc)
Definition mainFrame.c:91
typedefABC_NAMESPACE_HEADER_START struct Abc_Frame_t_ Abc_Frame_t
INCLUDES ///.
Definition abcapis.h:38
ABC_DLL int * Abc_FrameReadMiniLutSwitching2(Abc_Frame_t *pAbc, int nRandPiFactor)
Definition giaMini.c:744
ABC_DLL void Abc_NtkPrintMiniMapping(int *pArray)
Definition abcMap.c:1030
#define ABC_DLL
Definition abcapis.h:57
ABC_DLL char * Abc_FrameGiaOutputMiniLutAttr(Abc_Frame_t *pAbc, void *pMiniLut)
Definition giaMini.c:548
ABC_DLL void Abc_NtkSetCoRequiredTime(Abc_Frame_t *pAbc, int iCo, float Rise, float Fall)
Definition abcMap.c:1181
ABC_DLL void * Abc_FrameOutputNdr(Abc_Frame_t *pAbc)
Definition mainFrame.c:90
ABC_DLL void Abc_FrameGiaInputMiniAig(Abc_Frame_t *pAbc, void *p)
Definition giaMini.c:151
ABC_DLL int * Abc_FrameReadMiniAigEquivClasses(Abc_Frame_t *pAbc)
Definition giaMini.c:835
ABC_DLL void Abc_Start()
FUNCTION DECLARATIONS ///.
Definition mainLib.c:52
ABC_DLL void Abc_NtkSetFlopNum(Abc_Frame_t *pAbc, int nFlops)
Definition abcMini.c:194
ABC_DLL int * Abc_FrameReadBoxes(Abc_Frame_t *pAbc)
Definition mainFrame.c:124
ABC_DLL void * Abc_FrameReadCex(Abc_Frame_t *pAbc)
Definition mainFrame.c:75
ABC_DLL void Abc_FrameInputNdr(Abc_Frame_t *pAbc, void *pData)
Definition mainFrame.c:89
ABC_DLL void Abc_FrameGiaInputMiniLut(Abc_Frame_t *pAbc, void *pMiniLut)
Definition giaMini.c:515
ABC_DLL void Abc_Stop()
Definition mainLib.c:76
ABC_DLL void * Abc_NtkOutputMiniAig(Abc_Frame_t *pAbc)
Definition abcMini.c:184
ABC_DLL void Abc_FrameSetObjDelays(Abc_Frame_t *pAbc, int *pDelays, int nDelays)
Definition giaMini.c:569
ABC_DLL void Abc_FrameGiaInputMiniLut2(Abc_Frame_t *pAbc, void *pMiniLut)
Definition giaMini.c:524
ABC_DLL Abc_Frame_t * Abc_FrameGetGlobalFrame()
Definition mainFrame.c:643
ABC_DLL int * Abc_NtkOutputMiniMapping(Abc_Frame_t *pAbc)
Definition abcMap.c:1103
ABC_DLL int * Abc_FrameReadArrayMapping(Abc_Frame_t *pAbc)
Definition mainFrame.c:121
ABC_DLL int Cmd_CommandExecute(Abc_Frame_t *pAbc, const char *pCommandLine)
Definition cmdApi.c:193
ABC_DLL void Abc_FrameSetRetimingData(Abc_Frame_t *pAbc, int *pRst, int *pSet, int *pEna, int nRegs)
Definition giaMini.c:1353
Cube * p
Definition exorList.c:222
int * pArray
Definition mainInt.h:165